diff options
Diffstat (limited to 'README.txt')
-rw-r--r-- | README.txt | 20 |
1 files changed, 4 insertions, 16 deletions
@@ -223,11 +223,7 @@ $00 40 - code_init High byte relocation table: -$02 $40 ; hi byte of JSR $4007 operand -$05 $40 ; hi byte of JSR $400E operand -$09 $40 ; hi byte of LDA $4015 operand -$10 $40 ; hi byte of LDA $4016 -$00 $00 ; terminator +TODO: finish and fix. Program loads from $4000 to $4016. If MEMLO was $1CFC, the relocator will move the program to $1D00 - $1D16 and set MEMLO to $1D17. The @@ -243,18 +239,10 @@ However, the relocator and tables are only used once, and can be overwritten afterwards (so they count as free memory). Relocation Table Format +----------------------- -Current implementation: - -A list of addresses that need to be adjusted (high bytes of absolute -addresses), 2 bytes each, terminated with $00 $00. - -Possible future implementation: - -Bitmap. One bit per byte in the file. 1 if the address needs -adjusting, 0 if not. This *probably* will actually be smaller than -the list of addresses. Also has the advantage of being a fixed size, -easily calculated/predicted. +Bitmap. One bit per byte in the file, read from high bit to low. 1 if +the address needs adjusting, 0 if not. The relocator is 256 bytes long or less. The GR.0 display list with a 16K cart in is at $7C20. |