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 |