![]() |
Routines |
| Prev: 46832 | Up: Map | Next: 46962 |
|
Used by the routines at ProcessDisplayEntry and ProcessDisplayEntryAlternate.
|
||||||||
| ProcessLocationDisplay | 46845 | XOR A | Write 0 to *46974. | |||||
| 46846 | LD (46974),A | |||||||
| 46849 | LD (46808),HL | Write HL to *46808. | ||||||
| 46852 | CALL FetchCurrentCharacterLocation | Call FetchCurrentCharacterLocation. | ||||||
| 46855 | LD L,(IX+7) | L=*IX+7. | ||||||
| 46858 | LD H,(IX+8) | H=*IX+8. | ||||||
| 46861 | LD A,H | Return if HL is zero. | ||||||
| 46862 | OR L | |||||||
| 46863 | RET Z | |||||||
| 46864 | PUSH HL | IX=HL (using the stack). | ||||||
| 46865 | POP IX | |||||||
| 46867 | LD HL,0 | Write 0000 to *46806. | ||||||
| 46870 | LD (46806),HL | |||||||
| 46873 | LD IY,43692 | IY=Buffer_CoordinateData. | ||||||
| ProcessLocationDisplay_0 | 46877 | LD HL,43692 | HL=Buffer_CoordinateData. | |||||
| 46880 | LD B,6 | B=6. | ||||||
| 46882 | CALL ClearBuffer | Call ClearBuffer. | ||||||
| ProcessLocationDisplay_1 | 46885 | CALL ProcessTextTokenStream | Call ProcessTextTokenStream. | |||||
| 46888 | RET Z | Return if the zero flag is set. | ||||||
| 46889 | CALL ExtractCharacterAttribute | Call ExtractCharacterAttribute. | ||||||
| 46892 | CP 80 | Jump to ProcessLocationDisplay_2 if A is equal to 80. | ||||||
| 46894 | JR Z,ProcessLocationDisplay_2 | |||||||
| 46896 | CP 96 | Jump to ProcessLocationDisplay_1 if A is not equal to 96. | ||||||
| 46898 | JR NZ,ProcessLocationDisplay_1 | |||||||
| 46900 | LD (IY+2),E | Write E to *IY+2. | ||||||
| 46903 | LD (IY+3),D | Write D to *IY+3. | ||||||
| 46906 | CALL ProcessTextTokenStream | Call ProcessTextTokenStream. | ||||||
| 46909 | RET Z | Return if the zero flag is set. | ||||||
| 46910 | CALL ExtractCharacterAttribute | Call ExtractCharacterAttribute. | ||||||
| 46913 | CP 80 | Jump to ProcessLocationDisplay_2 if A is equal to 80. | ||||||
| 46915 | JR Z,ProcessLocationDisplay_2 | |||||||
| 46917 | CP 96 | Jump to ProcessLocationDisplay_0 if A is not equal to 96. | ||||||
| 46919 | JR NZ,ProcessLocationDisplay_0 | |||||||
| 46921 | LD (IY+4),E | Write E to *IY+4. | ||||||
| 46924 | LD (IY+5),D | Write D to *IY+5. | ||||||
| 46927 | CALL ProcessTextTokenStream | Call ProcessTextTokenStream. | ||||||
| 46930 | RET Z | Return if the zero flag is set. | ||||||
| 46931 | CALL ExtractCharacterAttribute | Call ExtractCharacterAttribute. | ||||||
| 46934 | CP 80 | Jump to ProcessLocationDisplay_0 if A is not equal to 80. | ||||||
| 46936 | JR NZ,ProcessLocationDisplay_0 | |||||||
| ProcessLocationDisplay_2 | 46938 | LD (IY+0),E | Write E to *IY+0. | |||||
| 46941 | LD (IY+1),D | Write D to *IY+1. | ||||||
| 46944 | LD HL,(46808) | HL=*46808. | ||||||
| 46947 | CALL CompareLocationData_0 | Call CompareLocationData_0. | ||||||
| 46950 | JR NZ,ProcessLocationDisplay_0 | Jump to ProcessLocationDisplay_0 if the zero flag is not set. | ||||||
| 46952 | LD IX,(46806) | IX=*46806. | ||||||
| 46956 | CALL MoveIXToHLAndJump | Call MoveIXToHLAndJump. | ||||||
| 46959 | OR %00000001 | Set bit 0. | ||||||
| 46961 | RET | Return. | ||||||
| Prev: 46832 | Up: Map | Next: 46962 |