Prev: 8170 Up: Map Next: 81ED
81AE: Switch player
Used by the routine at lose_life.
switch_player 81AE LD A,(status_flags) Test for two players
81B1 BIT 7,A ...
81B3 JR Z,switch_player_1 Skip ahead if one player
81B5 BIT 5,(HL) Is one player already game over?
81B7 JR NZ,switch_player_1 Skip ahead if not set
This entry point is used by the routine at lose_life.
switch_player_0 81B9 LD HL,buffer Restore player data from VDP RAM into buffer
81BC LD DE,$1300 ...
81BF LD BC,$002D ...
81C2 CALL $1FE2 READ_VRAM
81C5 LD HL,lives Save player data to VDP RAM
81C8 LD DE,$1300 ...
81CB LD BC,$002D ...
81CE RST $38 WRITE_VRAM
81CF LD HL,buffer Copy data from buffer to right place
81D2 LD DE,lives ...
81D5 LD BC,$002D ...
81D8 LDIR ...
81DA LD A,(current_player) Current player
81DD XOR $01 Switch player
81DF LD (current_player),A Save again
switch_player_1 81E2 CALL init_stage Initialize stage
81E5 LD HL,other_flags Set flag
81E8 SET 5,(HL) ...
81EA JP main_loop To main loop
Prev: 8170 Up: Map Next: 81ED