RWAP wrote:The Manual has now been updated - the issue with the ResiDOS firmware was due to an error in the manual! According to Tygrys, the correct command to launch ResiDOS is:
- Code: Select all
OUT 23,72: POKE 18455,237:POKE 18456,65:POKE 18457,199
PRINT USR 18455
Can someone please confirm?
The updated version of the firmware selector will reflect this correction.
Rich
18455 = 4817h 48h=72, 17h=23
Code : 237 (ED) 65 (41) --- OUT (C),B 199 (C7) --- RST 0
when you use USR xxx under basic, basic load the address in BC, push it then do a RET. So, on entry, BC holds 4817h
OUT(C),B will output 48h (=72) to port 17h (23), RST 0 is similar to Print USR 0 and resets the computer.
Basically, the 3 pokes + te print USR do an "Out 23,72, Print USR 0" so the OUT 23,72 before the pokes is not needed.
From Machine Language, you don't need to do the poke/calling the subroutine, only to do the out then jump to address 0. It can be done using
"01 17 48 ED 41 C7" (LD BC,4817 OUT(C),B, RST 0)
I hope this will help.