Prev: CA5D Up: Map Next: CA9E
CA6D: Set the start records for a new game
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