![]() |
Routines |
| Prev: CA5D | Up: Map | Next: CA9E |
|
Used by the routine at AFTER_GAME.
Called at every new game (AFTER_GAME), before the first NEW_LIFE. Copies START_TEMPLATE into the first eight bytes of each start record, gives each the graphic it takes once it has appeared -- 22 for the legs, facing higher U, and 38 for the top -- and picks the start room from START_ROOMS by bits 0-1 of SEED.
|
||||
| NEW_GAME_START | CA6D | LD HL,START_TEMPLATE | Graphic, position, sizes and flags of each | |
| CA70 | LD DE,START_LEGS | |||
| CA73 | LD BC,$0008 | |||
| CA76 | LDIR | |||
| CA78 | LD DE,START_TOP | |||
| CA7B | LD BC,$0008 | |||
| CA7E | LDIR | |||
| CA80 | LD A,$16 | The graphics they take once they have appeared | ||
| CA82 | LD (START_LEGS_NEXT),A | |||
| CA85 | LD A,$26 | |||
| CA87 | LD (START_TOP_NEXT),A | |||
| CA8A | LD A,(SEED) | One of four rooms, by bits 0-1 of SEED | ||
| CA8D | AND $03 | |||
| CA8F | LD L,A | |||
| CA90 | LD H,$00 | |||
| CA92 | LD BC,START_ROOMS | |||
| CA95 | ADD HL,BC | |||
| CA96 | LD A,(HL) | Into both records | ||
| CA97 | LD (START_LEGS_ROOM),A | |||
| CA9A | LD (START_TOP_ROOM),A | |||
| CA9D | RET | |||
| Prev: CA5D | Up: Map | Next: CA9E |