In applesoft_basic:
authorNick Downing <nick@ndcode.org>
Sun, 22 May 2022 12:02:28 +0000 (22:02 +1000)
committerNick Downing <nick@ndcode.org>
Sun, 22 May 2022 12:02:28 +0000 (22:02 +1000)
commit4e444bdae6b50d6e6528340aec135e71e5cc6b2c
tree88205cc1a877b716f3a29b87fca168437f3abf90
parent7280323857737e7749a22290c13d005a149c6148
In applesoft_basic:
* Lo-res graphics sort of working (needs some modifications to LEMONADE source)
* Rename tokenizer to bas_to_tok, detokenizer to tok_to_bas, improve Makefile
* Add bin_to_tok and tok_to_bin for applesoft native format (via dos33 utility)
* Improve interpreter and I/O slightly for lemonade, add lemonade.sh source patch
* Implement ALSA PCM audio sounds for console beep and lemonade (via pyalsaaudio)
* Update the lemonade patch to avoid an out-of-data error after weather report
* Move lemonade files to /lemonade, create Makefiles for /lemonade and /orig
* Implement a better way of creating a bootable disk, via new linapple batch mode
* Remove comments in lemonade patch to fix out-of-memory error, improve slightly
* Improve cursor handling, improve tracebacks, improve lemonade game instructions
* Add some reverse engineering of lemonade assembly language routines
* Add edasm assembly for lemonade assembly language routines, make the patched version load them with BLOAD which frees up space to reinstate the header comments, also back out some problematic changes about RESTORE and the 40-column width
* Remove dead code and redundant operations, fix corrupt byte in lemonade flash
* Remove the RESTORE line-number syntax, which turns out not to be in applesoft
* Build linapple directly rather than building Applewin and moving it (the move was problematic for make since it caused it to be rebuilt on every make cycle)
* Improve console handling, fixes 40 column width issue, implements scroll window
* Improve the lemonade_tone disassembly slightly, improve the analysis procedure in /test to create a correct and reversible model of lemonade_tone and rom_wait
* In patched lemonade, change call 770 to call 784 everywhere, to fix an audible artifact in which the first cycle has the wrong length (heard as leading click)
* Add a new assembly language tone generator, analyze and convert lemonade music
* Tune sunny music a bit, add cup filling music
* Change all music to my tone routine (some differences, but not too noticeable)
* Implement the new music in /apple_io.py as well, for running under emulation
* Calibrate FOR/NEXT delay loops, change delay loops to CALLRE in patched version
* Make GR graphics single width by default, use --gr-width=2 for old behaviour
* Improve terminal emulation (window left/right etc), allow selectable beep style
* Improve PCM audio by reducing framesize (so that latency is 0.01s) and adding a call to snd_pcm_drain(), we can only do this by opening/closing PCM each time
* Implement simulated LOMEM and HIMEM, add memory size check in patched lemonade
* Further improvement to terminal emulation, makes scrolling window work properly
* Improve VAL() backend and handling of invalid numbers in INPUT/READ statements
* Implement lightning flash in apple_io.py
applesoft_basic