Skip to content

Tardis DOS v0.2.00

Choose a tag to compare

@mathiasm74 mathiasm74 released this 11 Sep 18:49
· 88 commits to main since this release

Tardis DOS v0.2.00 — the ROM-expansion release.

The 16KB ROM had ~770 free bytes and every new command made it worse. This
release changes that: commands now live in banks — 8KB images the One ROM
serves at $A000 in place of the shell's own BASIC half — so they run from ROM
without spending the 16KB budget.

Free ROM: 771 → 5504 bytes, and with data-driven dispatch a new bank command
costs a 4-byte table row instead of a 20–170 byte resident thunk.

What moved into banks

  • disk bank — dir ls pwd load fload and the Epyx fast-load protocol
  • util bank — filename TAB completion
  • files bank — cat less cp mv rm cd status border bg text
    peek poke help device devices and the colour picker

Banks run from ROM, so unlike the old RAM overlays they never occupy user RAM,
and they share one small RAM window — adding a bank costs no further program
space.

Fixes

  • fload/load then a bare run said "nothing loaded"; load then basic
    cold-swapped instead of handing the program over
  • a disk command could corrupt the cached file commands, making cd fail while
    bg/text/help still worked
  • any command reverted font B (Swedish) to font A, leaving the keyboard Swedish
    but the glyphs English
  • TAB completion now quotes as soon as a spaced name is among the candidates, so
    typing on past the space keeps completing; and it closes the quote on a
    fully-typed name
  • a program larger than the loadable area is refused with "program too large"
    rather than corrupting the loader mid-transfer
  • help now advertises TAB completion (tap CTRL) and command history

Images

file machine One ROM board
c64-tardis-dos-…-fire-24-e.bin C64 breadbin Fire 24-E
c64-tardis-dos-…-fire-24-f.bin C64 breadbin Fire 24-F
c64c-tardis-dos-…-fire-28-a.bin C64C Fire 28-A
c64c-tardis-dos-…-fire-28-c.bin C64C Fire 28-C
tardis-c128-…-fire-28-c.bin C128 (C64 mode, U32) Fire 28-C

The breadbin images are hardware-validated. The C64C and C128 images are built
but not hardware-validated with the new bank architecture
— their firmware
layout was repaired by inspection this release, so try them with that in mind.