I present myself with a brief bio with future updates on me and what I'm creating inspired by the collapses OS and a retro post-apocalyptic life scene with the passion of old cyberpunk technology and old arcade games ...
I thank all the boys and girls who will follow me along this path, hoping to succeed in attracting the people's help.
this is a merit-based and not-for-profit ideal despite the fact that I would like to give birth to Zdos.
know ... in life I know many things ... but certainly not in this sector!
look for me and ask me friendship in instagram, my nick is 13override
all good to everyone
thanks
* Fix for tools/zasm.sh being dependent on readlink -f (an issue on macOS, preventing builds)
* Wrap zasm.sh shebang in /usr/bin/env ; remove comment about BSDs
* Optimised intoXX functions
Rewrote intoXX functions to mainly rely on intoHL, as the HL instructions are smaller and faster. Also removed some redundant push and pop instructions. I edited the given unit tests to test these, and they seem to work as expected.
* Doesn't use self-modifying code
The number of bytes is the same as my previous attempt, with 11 more cycles in intoHL, so although I don't feel as clever this time it's still a good optimisation. I found an equivalent method for intoDE, however relying on intoHL still allows for `ex (sp), hl` to be used in intoIX, which is smaller and faster.
* Update core.asm
* Tried harder to follow coding convention
Added tabs between mnemonics and operands, and replaced a new line I accidentally removed.
I've tested RAM usage when self-assembling and there weren't as high
as I thought. zasm's defaults now use less than 0x1800 bytes of RAM,
making it possible, theoretically for now, for a Sega Master System
to assemble Collapse OS from within itself.