Release 5: C128 and Plus/4 targets, Beyond Zork mode, preload updates and bug fixes
New/changed features:
- C128 support (both 40 and 80 column screens)
- Plus/4 support (also C16 expanded to 64 KB RAM)
- New build mode -71, producing 1571 disk images. Can only be used for target C128.
- Disk drives with device# 8-15 can now be used.
- All produced disk images get names starting with the platform name
- Added a progress bar when loading data into REU or memory at game start.
- Added re-use of game data in REU after a restart.
- Question to use REU can now only be answered by Y or N (any other key would work like N before, making it easy to accidentally answer no).
- Interpreter number can now be customized with -in:N in make.rb
- Changed so C128 interpreter uses interpreter# 7 by default.
- Changed format of output from preload optimization slightly to make more data fit on screen. This means old preload optimization files need to be modified to be used again.
- Data to be read from disk when game starts in a game using preload optimization will now be read in the order it appears on disk, making load time shorter and causing less drive noise.
- make.rb can optionally fill up with more vmem blocks to load when using preload optimization (commandline switch -cf).
- Added option -b to not preload virtual memory blocks from disk when the game starts. This makes the interpreter a little smaller. Option is automatically enabled if make.rb is certain no preloading from disk will be needed anyway.
- Cursor colour now defaults to special value 1, meaning "same as current foreground colour".
- Cursor blink rate is now 1-99 where 1 is the fastest
- New option -u to do less checks for runtime errors, making the interpreter a little smaller and faster
- Commandline flag -r for make.rb to use reduced memory has been removed.
- When game restarts, it now loads the file "story". This means restart won't work if you rename the file.
- make.rb now prints a lot less, unless you use option -v (verbose).
- make.rb detects if Beyond Zork is built and changes the interpreter number to say it's the Apple IIe interpreter, since this gives the best results on Ozmoo.
- make.rb will now patch Beyond Zork story file before writing it to disk image(s) to make it work better on 40 column screen. Original story file is left untouched.
- Darkmode support is automatically removed when building Beyond Zork, since it gets in the way of a built-in keyboard shortcut in the game, and the game restores the colours even if you change them.
Optimizations:
- Increased vmem block age resolution by 1 bit, which should lead to better paging, espescially for z8 games which only had a five bit resolution.
- Centralized code to pick a free vmem buffer.
Fixed bugs:
- @Tokenise could use arbitrary value for parameter "flag" if it wasn't supplied.
- @Tokenise didn't skip words the way it should if parameter "flag" was set (which stopped Beyond Zork from recognizing any commands).
- Added support for terminating character array ($2e/$2f in the header)
- Fixed bug with creating .d81 partition, which made it impossible to use build mode 81 for small games ( non-dynamic memory < ~10KB).
- Cursor timing code was broken
- Some characters could get a weird colour in the save slot listing.
- Fixed line breaks in the wrong place in games which started buffering in window 0 while window 1 was selected, like AMFV.