Prev: F487 Up: Map Next: F515
F489: Start
Used by the routine at Run.
Start F489 LD (StackPtrStore),SP
F48D EI
StartInit F48E CALL Vector_DisplayMenu
F491 CALL Vector_Screen_ClearLower
F494 CALL LinkListInit
F497 LD HL,$0000
F49A LD (Baddy_OffscreenPtr),HL
F49D LD HL,(ManData_PosPrimary_dfc3)
F4A0 LD A,L
F4A1 OR H
F4A2 JR Z,StartInitHero
F4A4 CALL Vector_GameScrDisplay
F4A7 JR StartWarm
StartInitHero F4A9 CALL Vector_HeroInit
StartWarm F4AC LD A,(IY+$3E)
F4AF LD ($DF90),A
Main loop
MainLoop F4B2 LD A,($DF90)
F4B5 CP (IY+$3E)
F4B8 JR Z,MainLoop
F4BA LD BC,$EFFE Check for '6' key press.
F4BD IN A,(C)
F4BF BIT 4,A
F4C1 JR Z,StartInit If so goto to main menu.
F4C3 LD BC,$F7FE Check for key press 1~5
F4C6 IN A,(C)
F4C8 BIT 4,A
F4CA JR NZ,MainLoop_DemoMode
Key press '5' (PAUSE)
F4CC DI
MainLoop_Pause F4CD IN A,(C) Wait for key up '5'
F4CF BIT 4,A
F4D1 JR Z,MainLoop_Pause
MainLoopPause1 F4D3 IN A,(C) Wait for press press '5' (UNPAUSE)
F4D5 BIT 4,A
F4D7 JR NZ,MainLoopPause1
MainLoopPause2 F4D9 IN A,(C) Wait for key up '5' again.
F4DB BIT 4,A
F4DD JR Z,MainLoopPause2
F4DF EI
Key press '4' (DEMO MODE)
MainLoop_DemoMode F4E0 BIT 3,A
F4E2 JR NZ,MainLoop_Update
F4E4 LD A,(FlagsDemoMode)
F4E7 XOR $02
F4E9 LD (FlagsDemoMode),A
F4EC DI
Start_0 F4ED IN A,(C) Wait for key up '4'
F4EF BIT 3,A
F4F1 JR Z,Start_0
F4F3 EI
Update
MainLoop_Update F4F4 LD A,(IY+$3E)
F4F7 LD HL,($DF90)
F4FA SUB L
F4FB CP $04
F4FD JR C,MainLoop
F4FF LD A,($DF90)
F502 ADD A,$04
F504 LD ($DF90),A
F507 CALL OffScrBlit
F50A CALL Vector_BgUpdate
F50D CALL Vector_BackgroundAnimate
F510 CALL Vector_HeroInputHandler
F513 JR MainLoop
Prev: F487 Up: Map Next: F515