![]() |
Routines |
Prev: 25012 | Up: Map |
|
|||||||
25026 | LD B,8 | 8 columns will be scrolled on | |||||
25028 | PUSH BC | Save the column counter | |||||
25029 | LD HL,22529 | First shift the attributes one place to the left | |||||
25032 | LD DE,22528 | ||||||
25035 | LD BC,671 | ||||||
25038 | LDIR | ||||||
25040 | CALL 63553 | Scroll the display file one character square to the left | |||||
25043 | INC A | Adjust the leftmost column of the play area now on screen (held at 32767) | |||||
25044 | LD (32767),A | ||||||
25047 | LD HL,5151 | H=20 (bottom row of the screen), L=31 (column at the far right) | |||||
25050 | PUSH HL | ||||||
25051 | CALL 24684 | Print the play area character square at row H, column L=31 | |||||
25054 | POP HL | ||||||
25055 | DEC H | Next row up | |||||
25056 | JP P,25050 | Jump back until all 21 squares in the column have been printed | |||||
25059 | POP BC | Restore the column counter to B | |||||
25060 | DJNZ 25028 | Jump back until 8 columns have been scrolled on | |||||
The screen has been scrolled left 8 columns. Check whether any of the minor characters may be teleported without us noticing.
|
|||||||
25062 | LD A,(32767) | A=leftmost column of the play area on screen | |||||
25065 | LD B,5 | 5 little boys, starting with 193=little boy no. 4 | |||||
25067 | LD H,193 | ||||||
25069 | CP 120 | Is the skool gate in the middle of the screen? | |||||
25071 | JR Z,25134 | Jump if so (to consider teleporting little boys 4-8) | |||||
25073 | CP 80 | Is the boys' skool door in the middle of the screen? | |||||
25075 | RET NZ | Return if not | |||||
25076 | LD H,190 | 190=little boy no. 1 | |||||
25078 | JR 25132 | Consider teleporting little boys 1-3 |
Prev: 25012 | Up: Map |