The new ROM is crashing do to incorrect code being created for the CHARGET code in ROM.
I forced it to create the correct LDAA instruction using FCB.
Some testing will be required before I know everything works, but I can enter and run a simple hello world program.
The assembler is is optimizing all calls to CHARGET as direct addressing, where the ROM uses extended addressing calls. This saves a byte and clock cycle for every JSR call to the routine, so rather than force extended addressing with FCB, if tests don't reveal any issues, I'll call the first milestone met. There are a lot of calls to this routine and my time would be better spent on something other than removing an easy optimization.
There are already 71 bytes free with the existing IF handler in place. There should already be enough space for the new code to handle ELSE, and hopefully, to implement some more radical speed optimizations to the code.
No comments:
Post a Comment