| Chase H.Q. | Routines |
| Prev: 8204 | Up: Map | Next: 837C |
|
Sets up the attract stage and then drives the game as a demonstration. Each frame it scans for fire (returning at once if pressed), runs a demo tick via drive_attract_demo and prints the attract_messages messages. "PRESS GEAR TO PLAY" blinks: a pattern is rotated through RRCA each frame and the message is included in the print count only when the bit rotated out is clear. Once the transition has stopped it alternates between credits_messages and copyright_messages each frame.
Used by the routine at start_siren_hook.
|
||||
| attract_mode_48k | 8258 | LD HL,$5D2B | HL -> attract_data | |
| 825B | CALL set_up_stage | Call set_up_stage | ||
| 825E | XOR A | Reset credits/copyright message blinker to show credits | ||
| 825F | LD ($828C),A | |||
| 8262 | LD HL,$0190 | Set speed to 400 | ||
| 8265 | LD ($A24A),HL | |||
| attract_mode_48k_0 | 8268 | CALL keyscan | Call keyscan | |
| 826B | AND $10 | Return if fire was pressed | ||
| 826D | RET NZ | |||
| 826E | CALL drive_attract_demo | Call drive_attract_demo | ||
|
This entry point is used by the routine at load_stage_128k.
|
||||
| attract_mode_48k_1 | 8271 | LD HL,$82A6 | HL -> attract mode messages "CHASE HQ" "PRESS GEAR TO PLAY" ... | |
| 8274 | LD B,$01 | Number of messages? | ||
|
Blink "PRESS GEAR TO PLAY".
|
||||
| 8276 | LD A,$F0 | A = <initially $F0, self modified> | ||
| 8278 | RRCA | Rotate | ||
| 8279 | LD ($8277),A | Self modify above | ||
| 827C | JR C,attract_mode_48k_2 | If carry set the hide the final message | ||
| 827E | INC B | Otherwise include it | ||
|
Display 'B' messages.
|
||||
| attract_mode_48k_2 | 827F | LD A,(HL) | Load flags | |
| 8280 | CALL print_message | Call print_message | ||
| 8283 | DJNZ attract_mode_48k_2 | Loop while B > 0 | ||
| 8285 | LD A,($A231) | Jump if transition_control > 0 | ||
| 8288 | AND A | |||
| 8289 | JR NZ,attract_mode_48k_4 | |||
|
Alternate between credits and copyright messages.
|
||||
| 828B | LD A,$00 | Blinking on/off self modified pattern | ||
| 828D | XOR $01 | |||
| 828F | LD ($828C),A | |||
| 8292 | LD HL,$82CC | HL -> credits_messages | ||
| 8295 | JR NZ,attract_mode_48k_3 | Skip next LD HL based on blink above | ||
| 8297 | LD HL,$8320 | HL -> copyright_messages | ||
| attract_mode_48k_3 | 829A | CALL setup_overlay_messages | Call setup_overlay_messages | |
| attract_mode_48k_4 | 829D | CALL transition | Call transition | |
| 82A0 | CALL send_playfield | Call send_playfield | ||
| 82A3 | JP attract_mode_48k_0 | Loop | ||
| attract_messages | 82A6 | DEFB $03 | Flags (double height) | |
| 82A7 | DEFB $00 | Attribute (black) | ||
| 82A8 | DEFW $F02C | Back buffer address | ||
| 82AA | DEFW $594C | Attribute address | ||
| 82AC | DEFM "CHASE H",$D1 | "CHASE HQ" | ||
| 82B4 | DEFB $02 | Flags (single height) | ||
| 82B5 | DEFB $00 | Attribute (black) | ||
| 82B6 | DEFW $F847 | Back buffer address | ||
| 82B8 | DEFW $59A7 | Attribute address | ||
| 82BA | DEFM "PRESS GEAR TO PLA",$D9 | "PRESS GEAR TO PLAY" (this blinks) | ||
| credits_messages | 82CC | DEFB $0A | Frame delay until the following messages start being shown (0 = 256) | |
| 82CD | DEFB $08 | Frame delay until next message? | ||
| 82CE | DEFB $02 | Flags (single) | ||
| 82CF | DEFB $02 | Attribute (red) | ||
| 82D0 | DEFW $F086 | Back buffer address | ||
| 82D2 | DEFW $5A06 | Attribute address | ||
| 82D4 | DEFM "PROGRAM JOBBEE",$C5 | "PROGRAM JOBBEEE" | ||
| 82E8 | DEFB $08 | Frame delay? | ||
| 82E9 | DEFB $02 | Flags (single) | ||
| 82EA | DEFB $02 | Attribute (red) | ||
| 82EB | DEFW $F0A6 | Back buffer address | ||
| 82ED | DEFW $5A46 | Attribute address | ||
| 82EF | DEFM "GRAPHICS BIL",$CC | "GRAPHICS BILL" | ||
| 8303 | DEFB $28 | Delay + stop flags? $28 | ||
| 8304 | DEFB $02 | Flags (single) | ||
| 8305 | DEFB $02 | Attribute (red) | ||
| 8306 | DEFW play_noise | Back buffer address | ||
| 8308 | DEFW $5A86 | Attribute address | ||
| 830A | DEFM "MUSIC JON DUN",$CE | "MUSIC JON DUNN" | ||
| 831E | DEFB $03 | |||
| 831F | DEFB $00 | |||
| copyright_messages | 8320 | DEFB $0A,$08 | (Frame delays as credits_messages) | |
| 8322 | DEFB $02 | Flags (single) | ||
| 8323 | DEFB $02 | Attribute (red) | ||
| 8324 | DEFW $F084 | Back buffer address | ||
| 8326 | DEFW $5A04 | Attribute address | ||
| 8328 | DEFM "(C) 1989 OCEAN SOFTWAR",$C5 | "(C) 1989 OCEAN SOFTWARE" | ||
| 833F | DEFB $08 | Frame delay? | ||
| 8340 | DEFB $02 | Flags (single) | ||
| 8341 | DEFB $02 | Attribute (red) | ||
| 8342 | DEFW $F0A3 | Back buffer address | ||
| 8344 | DEFW $5A43 | Attribute address | ||
| 8346 | DEFM "(C) 1988 TAITO CORPORATIO",$CE | "(C) 1988 TAITO CORPORATION" | ||
| 8360 | DEFB $28 | Delay + stop flags? $28 | ||
| 8361 | DEFB $02 | Flags (single) | ||
| 8362 | DEFB $02 | Attribute (red) | ||
| 8363 | DEFW play_noise | Back buffer address | ||
| 8365 | DEFW $5A86 | Attribute address | ||
| 8367 | DEFM "ALL RIGHTS RESERVE",$C4 | "ALL RIGHTS RESERVED" | ||
| 837A | DEFB $03 | |||
| 837B | DEFB $00 | |||
| Prev: 8204 | Up: Map | Next: 837C |