Routines |
Prev: 46154 | Up: Map | Next: 46264 |
46185 | LD E,(IX+8) | E=*IX+8. | ||
46188 | LD D,(IX+9) | D=*IX+9. | ||
46191 | LD L,(IX+14) | L=*IX+14. | ||
46194 | LD H,(IX+15) | H=*IX+15. | ||
46197 | LD C,(IX+10) | C=*IX+10. | ||
46200 | DEC C | Decrease C by one. | ||
46201 | LD B,(IX+11) | B=*IX+11. | ||
46204 | PUSH BC | Stash BC, DE and HL on the stack. | ||
46205 | PUSH DE | |||
46206 | PUSH HL | |||
46207 | LD B,8 | B=8. | ||
46209 | LD A,(DE) | A=*DE. | ||
46210 | AND (HL) | Merge the bits from *HL. | ||
46211 | INC HL | Increment HL by one. | ||
46212 | OR (HL) | Set the bits from *HL. | ||
46213 | LD (DE),A | Write A to *DE. | ||
46214 | INC HL | Increment HL by one. | ||
46215 | INC D | Increment D by one. | ||
46216 | DJNZ 46209 | Decrease counter by one and loop back to 46209 until counter is zero. | ||
46218 | DEC C | Decrease C by one. | ||
46219 | JP M,46242 | Jump to 46242 M. | ||
46222 | JR NZ,46230 | Jump to 46230 if {} is not zero. | ||
46224 | SLA (IX+23) | Shift *IX+23 left (with carry). | ||
46228 | JR C,46242 | Jump to 46242 if {} is lower. | ||
46230 | LD A,E | A=E. | ||
46231 | ADD A,32 | A+=32. | ||
46233 | LD E,A | E=A. | ||
46234 | JR C,46207 | Jump to 46207 if {} is lower. | ||
46236 | LD A,D | A=D. | ||
46237 | SUB 8 | A-=8. | ||
46239 | LD D,A | D=A. | ||
46240 | JR 46207 | Jump to 46207. | ||
46242 | POP HL | Restore HL from the stack. | ||
46243 | LD D,0 | D=0. | ||
46245 | LD E,(IX+22) | E=*IX+22. | ||
46248 | ADD HL,DE | HL+=DE. | ||
46249 | POP DE | Restore DE from the stack. | ||
46250 | INC E | Increment E by one. | ||
46251 | POP BC | Restore BC from the stack. | ||
46252 | DJNZ 46204 | Decrease counter by one and loop back to 46204 until counter is zero. | ||
46254 | LD B,(IX+11) | B=*IX+11. | ||
46257 | SRL (IX+23) | Shift *IX+23 right. | ||
46261 | DJNZ 46257 | Decrease counter by one and loop back to 46257 until counter is zero. | ||
46263 | RET | Return. |
Prev: 46154 | Up: Map | Next: 46264 |