![]() |
Routines |
| Prev: 45858 | Up: Map | Next: 46014 |
| 45940 | LD L,(IX+5) | L=*IX+5. | ||
| 45943 | LD A,(IX+6) | A=*IX+6. | ||
| 45946 | AND %00000011 | Keep only bits 0-1. | ||
| 45948 | OR %00111000 | Set bits 3-5. | ||
| 45950 | LD H,A | H=A. | ||
| 45951 | ADD HL,HL | HL+=HL. | ||
| 45952 | LD E,(IX+1) | E=*IX+1. | ||
| 45955 | LD D,(IX+2) | D=*IX+2. | ||
| 45958 | LD C,(IX+3) | C=*IX+3. | ||
| 45961 | LD B,(IX+4) | B=*IX+4. | ||
|
This entry point is used by the routines at 46481 and 48311.
|
||||
| Copier | 45964 | PUSH BC | Stash BC, DE, HL and HL on the stack. | |
| 45965 | PUSH DE | |||
| 45966 | PUSH HL | |||
| 45967 | PUSH HL | |||
| 45968 | LD B,(HL) | B=*HL. | ||
| 45969 | INC HL | Increment HL by one. | ||
| 45970 | LD H,(HL) | H=*HL. | ||
| 45971 | SET 7,H | Set bit 7 of H. | ||
| 45973 | LD L,B | L=B. | ||
| 45974 | LD B,8 | B=8. | ||
| 45976 | LD A,(HL) | A=*HL. | ||
| 45977 | LD (DE),A | Write A to *DE. | ||
| 45978 | INC HL | Increment HL by one. | ||
| 45979 | INC D | Increment D by one. | ||
| 45980 | DJNZ 45976 | Decrease counter by one and loop back to 45976 until counter is zero. | ||
| 45982 | DEC C | Decrease C by one. | ||
| 45983 | JR Z,46004 | Jump to 46004 if {} is zero. | ||
| 45985 | LD A,E | E+=32. | ||
| 45986 | ADD A,32 | |||
| 45988 | LD E,A | |||
| 45989 | JR C,45995 | Jump to 45995 if {} is lower. | ||
| 45991 | LD A,D | D-=8. | ||
| 45992 | SUB 8 | |||
| 45994 | LD D,A | |||
| 45995 | POP HL | Restore HL from the stack. | ||
| 45996 | LD A,C | A=C. | ||
| 45997 | LD BC,64 | BC=0064. | ||
| 46000 | ADD HL,BC | HL+=BC. | ||
| 46001 | LD C,A | C=A. | ||
| 46002 | JR 45967 | Jump to 45967. | ||
| 46004 | POP HL | Restore HL, HL, DE and BC from the stack. | ||
| 46005 | POP HL | |||
| 46006 | POP DE | |||
| 46007 | POP BC | |||
| 46008 | INC E | Increment E by one. | ||
| 46009 | INC L | Increment L by two. | ||
| 46010 | INC L | |||
| 46011 | DJNZ Copier | Decrease counter by one and loop back to Copier until counter is zero. | ||
| 46013 | RET | Return. | ||
| Prev: 45858 | Up: Map | Next: 46014 |