![]() |
Routines |
| Prev: 21494 | Up: Map | Next: 21746 |
|
Continues from 21425.
|
||||
| 21664 | CALL 29154 | Wait for a keypress, and collect its ASCII code in A | ||
| 21667 | JR Z,21664 | |||
| 21669 | OR 32 | Convert the keypress to lower case | ||
| 21671 | CP 99 | Was 'c' (Cursor) pressed? | ||
| 21673 | JR Z,21705 | Jump if so | ||
| 21675 | CP 110 | Was 'n' (None) pressed? | ||
| 21677 | JR Z,21705 | Jump if so | ||
| 21679 | CP 107 | Was 'k' (Kempston) pressed? | ||
| 21681 | JR NZ,21690 | Jump if not | ||
| 21683 | LD A,1 | Set 32748 to 1: using Kempston | ||
| 21685 | LD (32748),A | |||
| 21688 | JR 21705 | |||
| 21690 | CP 105 | Was 'i' (Int2) pressed? | ||
| 21692 | JR NZ,21664 | Jump back to wait for another keypress if not | ||
| 21694 | LD HL,21494 | Copy the 10-byte table at 21494 into the keypress offset table at 58624 if Int2 is being used | ||
| 21697 | LD DE,58624 | |||
| 21700 | LD BC,10 | |||
| 21703 | LDIR | |||
|
The input method has been established. Now prepare the screen for the cast of characters.
|
||||
| 21705 | LD HL,46849 | Draw a line (the catwalk) across the screen, and set byte 1 of each character's buffer (which holds the character's x-coordinate) to a number between 1 and 32 (so that they are off-screen: the column of the play area at the far left of the screen, stored at 32767, was set to 128 earlier on) | ||
| 21708 | LD DE,18560 | |||
| 21711 | LD B,32 | |||
| 21713 | LD A,255 | |||
| 21715 | LD (HL),B | |||
| 21716 | LD (DE),A | |||
| 21717 | INC H | |||
| 21718 | INC E | |||
| 21719 | DJNZ 21715 | |||
| 21721 | LD HL,53762 | Set byte 2 of ERIC's character buffer (which holds his y-coordinate) to 8; this will be the y-coordinate of the characters as they proceed along the catwalk | ||
| 21724 | LD (HL),8 | |||
| 21726 | LD A,248 | Message 248: 'THE CHARACTERS' | ||
| 21728 | LD HL,16448 | Print this message | ||
| 21731 | CALL 20668 | |||
| 21734 | CALL 21152 | Display the main characters and let the user change their names | ||
|
This entry point is used by the routine at 21920.
|
||||
| 21737 | LD HL,20650 | Do the POKEs specified by the table at 20650 | ||
| 21740 | CALL 21408 | |||
| 21743 | JP 63189 | Start the game | ||
| Prev: 21494 | Up: Map | Next: 21746 |