![]() |
Routines |
| Prev: BFEC | Up: Map | Next: C13E |
| C023 | LD A,(IX+$07) | A=*IX+07. | ||
| C026 | BIT 7,A | Jump to C03B if bit 7 of A is not set. | ||
| C028 | JR Z,$C03B | |||
| C02A | SUB (IX+$08) | A-=*IX+08. | ||
| C02D | BIT 3,A | Jump to C042 if bit 3 of A is not set. | ||
| C02F | JR Z,$C042 | |||
| C031 | ADD A,$08 | A+=08. | ||
| C033 | LD (IX+$07),A | Write A to *IX+07. | ||
| C036 | DEC (IX+$00) | Decrease *IX+00 by one. | ||
| C039 | JR $C057 | Jump to C057. | ||
| C03B | ADD A,(IX+$08) | A+=*IX+08. | ||
| C03E | BIT 3,A | Jump to C04F if bit 3 of A is set. | ||
| C040 | JR NZ,$C04F | |||
| C042 | LD (IX+$07),A | Write A to *IX+07. | ||
| C045 | LD A,(IX+$00) | A=*IX+00. | ||
| C048 | CP (IX+$0B) | Return if A is higher than *IX+0B. | ||
| C04B | RET NC | |||
| C04C | JP $C112 | Jump to C112. | ||
| C04F | RES 3,A | Reset bit 3 of A. | ||
| C051 | LD (IX+$07),A | Write A to *IX+07. | ||
| C054 | INC (IX+$00) | Increment *IX+00 by one. | ||
|
This entry point is used by the routines at B3BE and B591.
|
||||
| C057 | LD A,(IX+$00) | A=*IX+00. | ||
| C05A | CP (IX+$0B) | Return if A is higher than *IX+0B. | ||
| C05D | RET NC | |||
| C05E | CP $14 | Jump to C0A9 if A is higher than 14. | ||
| C060 | JR NC,$C0A9 | |||
| C062 | CP (IX+$0C) | Jump to C06F if A is lower than *IX+0C. | ||
| C065 | JR C,$C06F | |||
| C067 | LD A,(IX+$0C) | A=*IX+0C. | ||
| C06A | LD (IX+$03),A | Write A to *IX+03. | ||
| C06D | JR $C073 | Jump to C073. | ||
| C06F | INC A | Increment A by one. | ||
| C070 | LD (IX+$03),A | Write A to *IX+03. | ||
| C073 | LD A,(IX+$05) | A=*IX+05. | ||
| C076 | AND %00011111 | Keep only bits 0-4. | ||
| C078 | LD C,A | C=A. | ||
| C079 | LD A,(IX+$00) | A=*IX+00. | ||
| C07C | NEG | NEG. | ||
| C07E | ADD A,$15 | A+=15. | ||
| C080 | LD E,A | E=A. | ||
| C081 | RRCA | RRCA. | ||
| C082 | RRCA | RRCA. | ||
| C083 | RRCA | RRCA. | ||
| C084 | LD B,A | B=A. | ||
| C085 | AND %11100000 | Keep only bits 5-7. | ||
| C087 | OR C | Set the bits from C. | ||
| C088 | LD (IX+$05),A | Write A to *IX+05. | ||
| C08B | LD (IX+$01),A | Write A to *IX+01. | ||
| C08E | LD A,$03 | A=03. | ||
| C090 | AND B | Merge the bits from B. | ||
| C091 | OR %01011000 | Set bits 3-4, 6. | ||
| C093 | LD D,A | D=A. | ||
| C094 | SET 5,D | Set bit 5 of D. | ||
| C096 | LD (IX+$06),A | Write A to *IX+06. | ||
| C099 | LD A,$18 | A=18. | ||
| C09B | AND E | Merge the bits from E. | ||
| C09C | OR %01000000 | Set bits 6. | ||
| C09E | LD (IX+$02),A | Write A to *IX+02. | ||
| C0A1 | LD E,(IX+$05) | E=*IX+05. | ||
| C0A4 | LD BC,$0000 | BC=0000. | ||
| C0A7 | JR $C0D8 | Jump to C0D8. | ||
| C0A9 | NEG | NEG. | ||
| C0AB | ADD A,(IX+$0B) | A+=*IX+0B. | ||
| C0AE | LD (IX+$03),A | Write A to *IX+03. | ||
| C0B1 | SUB (IX+$0C) | A-=*IX+0C. | ||
| C0B4 | NEG | NEG. | ||
| C0B6 | BIT 0,(IX+$04) | Jump to C0BD if bit 0 of *IX+04 is set. | ||
| C0BA | JR NZ,$C0BD | |||
| C0BC | RLCA | RLCA. | ||
| C0BD | LD C,A | C=A. | ||
| C0BE | LD B,$00 | B=00. | ||
| C0C0 | LD A,(IX+$05) | A=*IX+05. | ||
| C0C3 | AND %00011111 | Keep only bits 0-4. | ||
| C0C5 | OR %01000000 | Set bits 6. | ||
| C0C7 | LD E,A | E=A. | ||
| C0C8 | LD (IX+$05),A | Write A to *IX+05. | ||
| C0CB | LD (IX+$01),A | Write A to *IX+01. | ||
| C0CE | LD D,$78 | D=78. | ||
| C0D0 | LD (IX+$06),$58 | Write 06 to *IX+06. | ||
| C0D4 | LD (IX+$02),$40 | Write 02 to *IX+02. | ||
| C0D8 | LD L,(IX+$09) | L=*IX+09. | ||
| C0DB | LD H,(IX+$0A) | H=*IX+0A. | ||
| C0DE | LD A,C | A=C. | ||
| C0DF | PUSH AF | Stash AF and HL on the stack. | ||
| C0E0 | PUSH HL | |||
| C0E1 | ADD HL,BC | HL+=BC. | ||
| C0E2 | LD C,(IX+$0C) | C=*IX+0C. | ||
| C0E5 | BIT 0,(IX+$04) | Jump to C0ED if bit 0 of *IX+04 is set. | ||
| C0E9 | JR NZ,$C0ED | |||
| C0EB | SLA C | Shift C left (with carry). | ||
| C0ED | SLA C | Shift C left (with carry). | ||
| C0EF | ADD HL,BC | HL+=BC. | ||
| C0F0 | LD B,(IX+$03) | B=*IX+03. | ||
| C0F3 | LD C,(IX+$04) | C=*IX+04. | ||
| C0F6 | PUSH BC | Stash BC and DE on the stack. | ||
| C0F7 | PUSH DE | |||
| C0F8 | CALL $B1B2 | Call B1B2. | ||
| C0FB | POP HL | Restore HL from the stack. | ||
| C0FC | ADD HL,HL | HL+=HL. | ||
| C0FD | LD A,$07 | A=07. | ||
| C0FF | AND H | Merge the bits from H. | ||
| C100 | OR %01110000 | Set bits 4-6. | ||
| C102 | LD D,A | D=A. | ||
| C103 | LD E,L | E=L. | ||
| C104 | POP BC | Restore BC, HL and AF from the stack. | ||
| C105 | POP HL | |||
| C106 | POP AF | |||
| C107 | RLCA | RLCA. | ||
| C108 | ADD A,L | A+=L. | ||
| C109 | LD L,A | L=A. | ||
| C10A | JR NC,$C10D | Jump to C10D if {} is higher. | ||
| C10C | INC H | Increment H by one. | ||
| C10D | SLA C | Shift C left (with carry). | ||
| C10F | CALL PlayareaCopier | Call PlayareaCopier. | ||
| C112 | CALL $C13E | Call C13E. | ||
| C115 | LD B,(IX+$03) | B=*IX+03. | ||
| C118 | LD A,(IX+$07) | A=*IX+07. | ||
| C11B | AND %00000111 | Keep only bits 0-2. | ||
| C11D | LD C,A | C=A. | ||
| C11E | LD DE,$003D | DE=003D. | ||
| C121 | LD A,(HL) | A=*HL. | ||
| C122 | AND %11111000 | Keep only bits 3-7. | ||
| C124 | OR C | Set the bits from C. | ||
| C125 | LD (HL),A | Write A to *HL. | ||
| C126 | INC L | Increment L by one. | ||
| C127 | SET 7,(HL) | Set bit 7 of *HL. | ||
| C129 | INC L | Increment L by two. | ||
| C12A | INC L | |||
| C12B | BIT 0,(IX+$04) | Jump to C13A if bit 0 of *IX+04 is set. | ||
| C12F | JR NZ,$C13A | |||
| C131 | DEC L | Decrease L by one. | ||
| C132 | LD A,(HL) | A=*HL. | ||
| C133 | AND %11111000 | Keep only bits 3-7. | ||
| C135 | OR C | Set the bits from C. | ||
| C136 | LD (HL),A | Write A to *HL. | ||
| C137 | INC L | Increment L by one. | ||
| C138 | SET 7,(HL) | Set bit 7 of *HL. | ||
| C13A | ADD HL,DE | HL+=DE. | ||
| C13B | DJNZ $C121 | Decrease counter by one and loop back to C121 until counter is zero. | ||
| C13D | RET | Return. | ||
| Prev: BFEC | Up: Map | Next: C13E |