![]() |
Routines |
| Prev: 61838 | Up: Map | Next: 61923 |
|
Used by the routines at 30822 and 60539. Cycles one of the character buffer groups in pages 215-221 backwards depending on the current leftmost column of the play area that is on screen (X=(32766)):
|
||||||||||||||||||
| 61882 | LD A,(32766) | 32766 holds X, the x-coordinate of the leftmost column of the play area on screen | ||||||||||||||||
| 61885 | SUB 56 | A=0, 8, 16, 24, 32, 40 or 48 (depending on the value of X) | ||||||||||||||||
| 61887 | JR NC,61885 | |||||||||||||||||
| 61889 | ADD A,56 | |||||||||||||||||
| 61891 | RRCA | A=215-221 | ||||||||||||||||
| 61892 | RRCA | |||||||||||||||||
| 61893 | RRCA | |||||||||||||||||
| 61894 | ADD A,215 | |||||||||||||||||
| 61896 | LD H,A | Point HL at the first byte of the first buffer in the group | ||||||||||||||||
| 61897 | LD L,0 | |||||||||||||||||
| 61899 | LD DE,32608 | Copy the first buffer in the group (buffer 1) to 32608 temporarily | ||||||||||||||||
| 61902 | LD BC,25 | |||||||||||||||||
| 61905 | LDIR | |||||||||||||||||
| 61907 | LD E,B | Point DE at the first byte of the first buffer in the group | ||||||||||||||||
| 61908 | LD D,H | |||||||||||||||||
| 61909 | LD C,100 | Move buffers 2-5 down into slots 1-4 (thus overwriting buffer 1) | ||||||||||||||||
| 61911 | LDIR | |||||||||||||||||
| 61913 | LD HL,32608 | Copy buffer 1 from its temporary storage location into slot 5 | ||||||||||||||||
| 61916 | LD C,25 | |||||||||||||||||
| 61918 | LDIR | |||||||||||||||||
| 61920 | JP 59406 | Scroll the screen left 8 columns (the routine at 30822 replaces this instruction with a RET) | ||||||||||||||||
| Prev: 61838 | Up: Map | Next: 61923 |