CAPUTE!:
Corrections And Amplifications
- "Using Textplot for Animated Games," April, 1982, #23, pg. 146: Because the character set is not located on a 1K boundary, any error messages will not make sense. The program will work as printed, but mistakes made during typing will not be easily understood because of the nonsense "error messages." To avoid this, you can relocate the address of the character set by these changes: Line 20 POKE 756, PEEK(106) and change line 32000 START = PEEK (106)*256.
- "Micromon," January, 1982, #20, pg. 160: The following helpful relocating information and an associated modification to Micromon came from R. Lewsey of the Cossor Computer Club, Harlow, Essex, England.
We initially used the N command parameters in the published example but subsequently found that the code cannot relocate itself in situ – only a copy of itself made using the transfer command. The commands we eventually succeeded with after fixing the bug (see below) were:
.T 1000, 1FFF, 2000 Copy Micromon to $2000-$2FFF .N 2000, 2FFF, 1000, 1000, 1FFF Relocate code Relocation stops on an unrecognized code .N 2FB0, 2FFF, 1000, 1000, 1FFFW Relocate word tables
[To test the relocated version, first Kill the Micromon you're in (at $1000) then .G 2000 will initialize the relocated version – Ed.]
The following changes were made which correct the N command, but slightly change the syntax of the command for word table relocation. The W at the end of the command should immediately follow the fifth address parameter; there must be no intervening space.
1770 A9 00 LDA #0 1772 8D 8C 02 STA $028C 1775 20 06 10 JSR $1006 1778 EA NOP 1779 EA NOP
It may not be obvious to some readers that downward relocation may also be achieved by using a suitable value for the third parameter. Subtract the required offset from $10000 (yes, four zeroes) to give the necessary parameter value (e.g. $E000 moves the code down by $2000).
I hope this information will be helpful to other Micromon enthusiasts and would like to thank Ron Cason for his assistance in sorting it all out.