Prev: F414 Up: Map Next: F491
F41B: Routine at F41B
attract_mode_128k F41B LD HL,$C000 Entry point for title animations
attract_mode_128k_0 F41E CALL $81AA Call relocated call_bank_3_128k
F421 AND A Return if A is zero
F422 RET Z
F423 LD HL,$5D2B HL -> attract_data
F426 CALL set_up_stage Call set_up_stage
F429 LD A,$02 var or self modify or ..?
F42B LD ($825E),A
F42E LD HL,$0190 Set speed to $190
F431 LD ($A24A),HL
am1_loop F434 CALL cpu_driver Call cpu_driver
F437 LD A,($8001) Load attract_cycle
F43A AND A Set flags
F43B LD DE,$8296 -> enter_for_options_messages
F43E JR Z,am1_check_enter Jump to f44b_key_check
F440 CALL keyscan Call keyscan
F443 AND $10 Was FIRE pressed?
F445 JP NZ,play_start_noise Jump to play_start_noise if so
F448 LD DE,$8285 -> press_gear_messages
am1_check_enter F44B LD A,$BF Read keyboard port $BFFE: ENTER, L, K, J, H
F44D IN A,($FE)
F44F CPL Complement value so it's active-high
F450 RRA Shift ENTER's flag out to carry
F451 LD HL,$C009 Load entry point for keyboard/joystick selection menu
F454 JR C,attract_mode_128k_0 Jump if ENTER was pressed
F456 EX DE,HL
F457 LD A,$F0
F459 RRCA -- why load A then shift? self modified?
F45A LD ($824C),A
F45D JR NC,f463_128k
F45F LD A,(HL)
F460 CALL print_message Call print_message
f463_128k F463 LD A,($A231) If transition_control != 0 jump
F466 AND A
F467 JR NZ,f488_128k
F469 LD A,$00 -- smells like self modified
F46B AND A
F46C JP M,$820F
F46F DEC A A--
F470 LD ($825E),A self modifying?
F473 JP P,attract_mode_1
F476 LD A,$08 Forward transition
F478 CALL setup_transition Call setup_transition
F47B JR f488_128k
f47d_128k F47D LD HL,$82AD -- must be messages ptr below ($8208+165 means ?)
F480 JR NZ,f485_128k
F482 LD HL,$830F -- must be messages ptr below ($8208+263 means ?)
f485_128k F485 CALL setup_overlay_messages Call setup_overlay_messages
f488_128k F488 CALL transition Call transition
F48B CALL draw_screen Call draw_screen
F48E JP $8228 Loop to attract_mode_128k_loop
Prev: F414 Up: Map Next: F491