kz80_calc

Crates.iokz80_calc
lib.rskz80_calc
version0.2.2
created_at2025-12-19 01:17:15.26346+00
updated_at2025-12-19 20:02:21.488289+00
descriptionVisiCalc-style spreadsheet for Z80 - Retro computing on the RetroShield
homepagehttps://github.com/ajokela/kz80_calc
repositoryhttps://github.com/ajokela/kz80_calc
max_upload_size
id1993960
size180,823
Alex Jokela (ajokela)

documentation

README

kz80_calc

A VisiCalc-style spreadsheet for the Z80 processor, targeting the RetroShield platform.

Features

  • 16×64 cell grid (columns A-P, rows 1-64)
  • 16-bit integer values
  • Formula support: =A1+B2, =C3*5, =SUM(A1:A10)
  • Arrow key navigation
  • Automatic recalculation
  • Fits in 8KB ROM / 6KB RAM

Building

cargo build --release
./target/release/kz80_calc -o spreadsheet.bin

Usage

Run with the RetroShield emulator:

retroshield spreadsheet.bin

Keys

  • Arrow keys: Navigate cells
  • Enter: Edit cell
  • Escape: Cancel edit
  • Letters/numbers: Enter values or formulas
  • =: Start formula entry

Formulas

=A1+B2      Addition
=A1-B2      Subtraction
=A1*B2      Multiplication
=A1/B2      Division
=SUM(A1:A5) Sum of range

Memory Layout

ROM (8KB):
  0x0000-0x00FF  Startup, vectors
  0x0100-0x1FFF  Spreadsheet engine

RAM (6KB):
  0x2000-0x2FFF  Cell data (4KB = 1024 cells)
  0x3000-0x35FF  Formula buffer, parse state
  0x3600-0x37FF  Display buffer, stack

Inspiration

Inspired by VisiCalc (1979), the original "killer app" that launched the personal computer revolution.

License

BSD 3-Clause License

Commit count: 0

cargo fmt