Prev: 44751 Up: Map Next: 44993
44783: Game Play Start
Used by the routine at GamePlayEntry.
GamePlay_Start 44783 CALL StoreEntity Call StoreEntity.
44786 CALL 41356 Call 41356.
Is Sabreman yellow?
44789 LD A,(IX+5) A=IX+5 (entity colour).
44792 CP 70 If the colour is 70 jump to HandlerYellowOrchid.
44794 JR Z,HandlerYellowOrchid
44796 CALL HandlerOrchidTimer Call HandlerOrchidTimer.
44799 LD A,16 Write 16 to 38573.
44801 LD (38573),A
44804 LD A,(IX+2)
44807 AND A
44808 JP NZ,43397
44811 LD DE,0 DE=0000.
44814 CALL HandlerControls Call HandlerControls.
Is Sabreman magenta?
44817 LD A,(IX+5) A=IX+5 (entity colour).
44820 CP 67 If the colour is not 67 jump to GamePlay_Controls.
44822 JR NZ,GamePlay_Controls
Handles reversing the controls as a result of the magenta orchid.
44824 LD A,C A=C.
44825 XOR %00001111
44827 LD C,A C=A.
This entry point is used by the routine at 44596.
GamePlay_Controls 44828 LD A,C A=C.
44829 LD (38572),A Write A to 38572.
44832 LD A,E A=E.
44833 LD B,7 B=7.
44835 BIT 1,C
44837 JR Z,GamePlay_Start_0
44839 ADD A,B
GamePlay_Start_0 44840 BIT 0,C
44842 JR Z,GamePlay_Start_1
44844 SUB B
GamePlay_Start_1 44845 LD E,A
44846 LD A,D
44847 BIT 3,C
44849 JR Z,GamePlay_Start_2
44851 ADD A,B
GamePlay_Start_2 44852 BIT 2,C
44854 JR Z,GamePlay_Start_3
44856 SUB B
GamePlay_Start_3 44857 LD D,A
44858 CALL GamePlay_Start_7 Call GamePlay_Start_7.
44861 CALL 45032 Call 45032.
44864 LD BC,5646 BC=5646.
44867 CALL 47132 Call 47132.
44870 CALL 45139 Call 45139.
44873 CALL 43757 Call 43757.
44876 LD (IX+3),E
44879 LD (IX+4),D
44882 CALL NZ,48971
Is Sabreman white?
44885 LD A,(IX+5) A=IX+5 (entity colour).
44888 CP 71 If the colour is not 71 jump to GamePlay_Start_4.
44890 JR NZ,GamePlay_Start_4
44892 LD A,(38572)
44895 BIT 4,A
44897 JR Z,GamePlay_Start_4
44899 CALL 44479 Call 44479.
GamePlay_Start_4 44902 LD A,(IX+6)
44905 LD B,1 B=1.
44907 CALL 45127 Call 45127.
44910 LD (IX+6),A
44913 LD A,(IX+7)
44916 CALL 45127 Call 45127.
44919 LD (IX+7),A
This entry point is used by the routine at HandlerYellowOrchid_StandUp.
GamePlay_Start_5 44922 CALL DisplayEntity Call DisplayEntity.
44925 LD A,(38576) A=OrchidEffectTimer.
44928 AND A If A is zero, jump to 47908.
44929 JP Z,47908
44932 CP 47 Is A 47?
44934 JP NC,47908
44937 AND %00001111 Keep only bits 0-3.
44939 CP 8
44941 JR NC,GamePlay_Start_6
44943 AND %00000111 Keep only bits 0-2.
44945 CALL Z,48838
44948 LD A,(IX+5)
44951 PUSH AF
44952 LD (IX+5),71 Set IX+5 (entity colour) to 71 (white).
44956 CALL 47908 Call 47908.
44959 POP AF
44960 LD (IX+5),A
44963 RET Return.
GamePlay_Start_6 44964 AND %00000111 Keep only bits 0-2.
44966 CALL Z,48838
44969 JP 47908 Jump to 47908.
GamePlay_Start_7 44972 LD A,E
44973 ADD A,(IX+6)
44976 CALL 44993 Call 44993.
44979 LD (IX+6),A
44982 LD A,D
44983 ADD A,(IX+7)
44986 CALL 44993 Call 44993.
44989 LD (IX+7),A
44992 RET Return.
Prev: 44751 Up: Map Next: 44993