| quill | Routines |
| Prev: 64245 | Up: Map | Next: 64370 |
|
Used by the routine at 64275.
|
||||||||
| CLEAR_SCREEN | 64294 | LD A,(23697) | A=current state of colour flags | |||||
| 64297 | LD (64218),A | Store current state of colour flags | ||||||
| 64300 | AND 15 | Clear ink 9 / paper 9 settings | ||||||
| 64302 | LD (23697),A | Rewrite colour flags | ||||||
| 64305 | LD A,(23624) | A=current border colour | ||||||
| 64308 | LD (64219),A | Store current border colour | ||||||
| 64311 | LD HL,(64186) | HL=picture table | ||||||
| 64314 | LD D,0 | Clear MSB of DE | ||||||
| 64316 | ADD HL,DE | HL=offset in picture table of current location | ||||||
| 64317 | LD A,(HL) | A=picture info | ||||||
| 64318 | RES 3,(IY+9) | |||||||
| 64322 | BIT 7,A | Is there a picture to show? | ||||||
| 64324 | JR NZ,CLEAR_SCREEN_0 | |||||||
| 64326 | SET 3,(IY+9) | |||||||
| CLEAR_SCREEN_0 | 64330 | AND 63 | ||||||
| 64332 | LD HL,(23693) | HL=current permanent colours/transparent colours | ||||||
| 64335 | LD (64220),HL | Store current colours | ||||||
| 64338 | LD L,A | L=permanent colours for picture | ||||||
| 64339 | LD H,0 | Transparent colours=0 | ||||||
| 64341 | LD (23693),HL | Set current colours | ||||||
| 64344 | AND 56 | Set bits 0,1,2,6 and 7 of flag to 0 (ink black) | ||||||
| 64346 | BIT 5,A | Is bit 5 of flag set? (paper=green,yellow,cyan or white) | ||||||
| 64348 | JR NZ,CLEAR_SCREEN_1 | If so, leave ink as black | ||||||
| 64350 | OR 7 | Set bits 0,1,2 of picture flag (ink white) | ||||||
| CLEAR_SCREEN_1 | 64352 | LD (23624),A | Set border colour in system variables to that given | |||||
| 64355 | RRCA | |||||||
| 64356 | RRCA | |||||||
| 64357 | RRCA | Move the paper colour into the lower three bits | ||||||
| 64358 | OUT (254),A | Update border with paper colour | ||||||
| 64360 | PUSH DE | |||||||
| 64361 | CALL 3435 | Clear the whole screen | ||||||
| 64364 | POP DE | |||||||
| 64365 | SET 7,(IY+9) | |||||||
| 64369 | RET | |||||||
| Prev: 64245 | Up: Map | Next: 64370 |