![]() |
Routines |
Prev: 61823 | Up: Map | Next: 61882 |
Used by the routines at 30822 and 60539. Cycles one of the character buffer groups in pages 215-221 forwards depending on the current leftmost column of the play area that is on screen (X=(32766)):
|
||||||||||||||||||
61838 | LD A,(32766) | 32766 holds X, the x-coordinate of the leftmost column of the play area on screen | ||||||||||||||||
61841 | SUB 8 | A=0, 8, 16, 24, 32, 40 or 48 (depending on the value of X) | ||||||||||||||||
61843 | SUB 56 | |||||||||||||||||
61845 | JR NC,61843 | |||||||||||||||||
61847 | ADD A,56 | |||||||||||||||||
61849 | RRCA | A=215-221 | ||||||||||||||||
61850 | RRCA | |||||||||||||||||
61851 | RRCA | |||||||||||||||||
61852 | ADD A,215 | |||||||||||||||||
61854 | LD H,A | Point HL at the last byte of the last buffer in the group | ||||||||||||||||
61855 | LD L,124 | |||||||||||||||||
61857 | LD DE,32632 | Copy the last buffer in the group (buffer 5) to 32608 temporarily | ||||||||||||||||
61860 | LD BC,25 | |||||||||||||||||
61863 | LDDR | |||||||||||||||||
61865 | LD E,124 | Point DE at the last byte of the last buffer in the group | ||||||||||||||||
61867 | LD D,H | |||||||||||||||||
61868 | LD C,100 | Move buffers 1-4 up into slots 2-5 (thus overwriting buffer 5) | ||||||||||||||||
61870 | LDDR | |||||||||||||||||
61872 | LD HL,32632 | Copy buffer 5 from its temporary storage location into slot 1 | ||||||||||||||||
61875 | LD C,25 | |||||||||||||||||
61877 | LDDR | |||||||||||||||||
61879 | JP 59461 | Scroll the screen right 8 columns (the routine at 30822 replaces this instruction with a RET) |
Prev: 61823 | Up: Map | Next: 61882 |