Prev: F092 Up: Map Next: F249
F130: Routine at F130
Used by the routine at F43E.
F130 CP $FF Return if A is equal to FF.
F132 RET Z
F133 CP $80 Jump to F13A if A is not equal to 80.
F135 JR NZ,$F13A
F137 SET 7,B Set bit 7 of B.
F139 RET Return.
F13A CP $40 Jump to F141 if A is not equal to 40.
F13C JR NZ,$F141
F13E SET 6,B Set bit 6 of B.
F140 RET Return.
F141 LD C,A C=A.
F142 LD A,B Return if B is equal to 00.
F143 CP $00
F145 RET Z
F146 LD A,C A=C.
F147 CP $15 Jump to F249 if A is lower than 15 (unsigned comparison).
F149 JP M,$F249
F14C CP $40 Compare A with 40.
F14E JP P,$F249 Jump to F249 P.
F151 LD C,A C=A.
F152 LD A,($E2C7) A=*Item_ID.
F155 CP $15 Jump to F249 if A is lower than 15 (unsigned comparison).
F157 JP M,$F249
F15A CP $40 Compare A with 40.
F15C JP P,$F249 Jump to F249 P.
F15F LD D,$15 D=15.
F161 CALL $F286 Call F286.
F164 LD D,$3D D=3D.
F166 LD E,$03 E=03.
F168 LD A,($E2C7) A=*Item_ID.
F16B CALL $F286 Call F286.
F16E INC D Increment D by one.
F16F DEC E Decrease E by one.
F170 LD A,($E2C7) A=*Item_ID.
F173 JR NZ,$F16B Jump to F16B if E is not zero.
F175 CP $1B Jump to F180 if A is not equal to 1B.
F177 JR NZ,$F180
F179 LD A,C Jump to F194 if C is not equal to 1C.
F17A CP $1C
F17C JR NZ,$F194
F17E JR $F189 Jump to F189.
F180 CP $1C Jump to F194 if A is not equal to 1C.
F182 JR NZ,$F194
F184 LD A,C Jump to F194 if C is not equal to 1B.
F185 CP $1B
F187 JR NZ,$F194
F189 LD IX,$D83A IX=Time.
F18D SET 3,(IX+$00) Set bit 3 of *IX+00.
F191 JP $F231 Jump to F231.
F194 LD A,($E2C7) Jump to F1A2 if *Item_ID is not equal to 1D.
F197 CP $1D
F199 JR NZ,$F1A2
F19B LD A,C Jump to F1D6 if C is not equal to 1E.
F19C CP $1E
F19E JR NZ,$F1D6
F1A0 JR $F1AB Jump to F1AB.
F1A2 CP $1E Jump to F1D6 if A is not equal to 1E.
F1A4 JR NZ,$F1D6
F1A6 LD A,C Jump to F1D6 if C is not equal to 1D.
F1A7 CP $1D
F1A9 JR NZ,$F1D6
F1AB LD IX,$D83A IX=Time.
F1AF SET 2,(IX+$00) Set bit 2 of *IX+00.
F1B3 LD A,($D840) A=*D840.
F1B6 AND A Set flags.
F1B7 ADD A,A A+=A.
F1B8 DAA DAA.
F1B9 LD ($D840),A Write A to *D840.
F1BC LD A,($D83F) A=*D83F.
F1BF PUSH AF Stash AF on the stack.
F1C0 AND A Set flags.
F1C1 ADD A,A A+=A.
F1C2 DAA DAA.
F1C3 LD ($D83F),A Write A to *D83F.
F1C6 POP AF Restore AF from the stack.
F1C7 JP NC,$F231 Jump to F231 if A is higher.
F1CA CCF Invert the carry flag.
F1CB LD A,($D83F) A=*D83F.
F1CE INC A Increment A by one.
F1CF DAA DAA.
F1D0 LD ($D83F),A Write A to *D83F.
F1D3 JP $F231 Jump to F231.
F1D6 LD A,($E2C7) A=*Item_ID.
F1D9 CP $17 Jump to F1EB if A is not equal to 17.
F1DB JR NZ,$F1EB
F1DD CP C Jump to F1EB if A is not equal to C.
F1DE JR NZ,$F1EB
F1E0 LD IX,$D83A IX=Time.
F1E4 SET 6,(IX+$00) Set bit 6 of *IX+00.
F1E8 JP $F231 Jump to F231.
F1EB LD A,($E2C7) A=*Item_ID.
F1EE INC A Increment A by one.
F1EF CP C Jump to F1F8 if A is equal to C.
F1F0 JR Z,$F1F8
F1F2 SUB $02 A-=02.
F1F4 CP C Jump to F231 if A is not equal to C.
F1F5 JR NZ,$F231
F1F7 INC A Increment A by one.
F1F8 DEC A Decrease A by one.
F1F9 CALL $D7C6 Call D7C6.
F1FC LD D,$1F D=1F.
F1FE LD E,$0D E=0D.
F200 CP D Compare A with D.
F201 JR Z,$F20A Jump to F20A if A is zero.
F203 INC D Increment D by two.
F204 INC D
F205 DEC E Decrease E by one.
F206 JR NZ,$F200 Jump to F200 if E is not zero.
F208 JR $F231 Jump to F231.
F20A LD A,$0E A=0E.
F20C SUB E A-=E.
F20D LD D,A D=A.
F20E LD A,$05 A=05.
F210 ADD A,$05 A+=05.
F212 DAA DAA.
F213 DEC D Decrease D by one.
F214 JR NZ,$F210 Jump to F210 if D is not zero.
This entry point is used by the routine at F286.
F216 PUSH AF Stash AF on the stack.
F217 SET 3,B Set bit 3 of B.
F219 LD ($D86B),A Write A to *D86B.
F21C LD A,($D840) D=*D840.
F21F LD D,A
F220 POP AF Restore AF from the stack.
F221 ADD A,D A+=D.
F222 DAA DAA.
F223 LD ($D840),A Write A to *D840.
F226 JR NC,$F231 Jump to F231 if D is higher.
F228 LD A,($D83F) A=*D83F.
F22B CCF Invert the carry flag.
F22C INC A Increment A by one.
F22D DAA DAA.
F22E LD ($D83F),A Write A to *D83F.
F231 INC B Increment B by one.
F232 SET 4,B Set bit 4 of B.
F234 LD A,($D832) Jump to F240 if *D832 is equal to 00.
F237 CP $00
F239 JR Z,$F240
F23B LD A,$03 Write 03 to *D832.
F23D LD ($D832),A
F240 LD A,$00 A=00.
F242 LD DE,($E5B0) DE=*E5B0.
F246 LD (DE),A Write A to *DE.
F247 LD (HL),A Write A to *HL.
F248 RET Return.
Prev: F092 Up: Map Next: F249