Prev: 799E Up: Map Next: 7A48
79B7: Handles main number keys, blits screen, moves onto main loop.
Used by the routine at Init.
Input
Output
_79b7 79B7 EI
_79b7_0 79B8 CALL Menu
79BB CALL Stage_Clear
79BE CALL LinkList_bee4_setup
79C1 XOR A
79C2 LD (Msg_CountDown),A
79C5 LD HL,$0000
79C8 LD (Actors_background),HL
79CB LD (GameTime_mins),HL Frames
79CE CALL CurrentRoom_Initialise
79D1 LD A,(IY+$3E) Frame counter
79D4 LD (_frames),A
Loop
_79b7_1 79D7 LD A,(_frames)
79DA CP (IY+$3E)
79DD JR Z,_79b7_1
79DF LD A,(Flag_DoorEntry)
79E2 LD HL,(Hero_ArrestCount)
79E5 OR L
79E6 LD HL,(Offer_Count)
79E9 OR L
79EA LD HL,(Skar_ShowCount)
79ED OR L
79EE JR NZ,_79b7_2
79F0 LD BC,$EFFE Row '6,7,8,9,0'
79F3 IN A,(C)
79F5 BIT 4,A '6' - Return to menu.
79F7 JR Z,_79b7_0
_79b7_2 79F9 LD BC,$F7FE Row '1,2,3,4,5'
79FC IN A,(C)
Pause
79FE BIT 4,A Check for '5' (PAUSE)
7A00 JR NZ,_79b7_6
7A02 DI
_79b7_3 7A03 IN A,(C) Wait for key up
7A05 BIT 4,A
7A07 JR Z,_79b7_3
_79b7_4 7A09 IN A,(C) Paused, Wait for key down again.
7A0B BIT 4,A
7A0D JR NZ,_79b7_4
_79b7_5 7A0F IN A,(C) Wait for key up to unpause.
7A11 BIT 4,A
7A13 JR Z,_79b7_5
7A15 EI
Demo mode.
_79b7_6 7A16 BIT 3,A Check for '4' (DEMO)
7A18 JR NZ,_79b7_8
7A1A LD A,(Mode_Demo) Toggle demo mode on/off.
7A1D XOR $02
7A1F LD (Mode_Demo),A
7A22 DI
_79b7_7 7A23 IN A,(C) Wait for key up.
7A25 BIT 3,A
7A27 JR Z,_79b7_7
7A29 EI
_79b7_8 7A2A LD A,(IY+$3E)
7A2D LD HL,(_frames)
7A30 SUB L
7A31 CP $05
7A33 JR C,_79b7_1
7A35 LD A,(_frames)
7A38 ADD A,$05
7A3A LD (_frames),A
7A3D CALL Offscreen_Blit
7A40 CALL DF_UpdateBg
7A43 CALL Game_Main
7A46 JR _79b7_1
Prev: 799E Up: Map Next: 7A48