Skip to content

ez80asm - Mac OS Version 1.2

Latest
Compare
Choose a tag to compare

ez80asm macOS Version v1.2

Increased performance, is the main purpose of this release.

The code was ported to the AgDev compiler suite and numerous parts where rewritten for optimal performance. The assembler makes heavy use of the underlying filesystem, where IO calls to the MOS are costly. Additional steps have been taken to make the absolute minimum number of IO calls. Pearson hash tables are now in use, which are optimized for 8/16bit systems and parts of old ZDSII code, which were necessary before the AgDev standard library came into existence, have been removed completely.
The mosloader (the ez80asm.bin file) that loads the ez80asm.ldr payload to 0x40000 from the /mos moslet area has been rewritten (in ez80asm assembly) to allow it to be easily adaptable to other payloads.

Overall, this release shows a 30% performance increase compared to v1.0 (on actual hardware)

Additional features:

  • The '-x' commandline option shows job statistics

Additionally, the following bugs were fixed:

  • Labels aren't case sensitive (issue envenomator#55)
  • MACROs fail to understand EQU (issue envenomator#49) - in some cases where a - replacement argument is larger than the target, the assembler failed to recognize the defined EQU statement or crashed
  • Number literals containing operator symbols, like '+', '-' were not correctly parsed in all cases
  • String format error in release v1.1 (issue envenomator#56)