From 000a52b19a14f2ee3de7ef2bd127746ccd319d1d Mon Sep 17 00:00:00 2001 From: Bobbi Webber-Manners Date: Mon, 20 Sep 2021 16:16:20 -0400 Subject: [PATCH] Implemented GCOL bg colours. Cleanup gfx code. --- applecorn.po | Bin 819200 -> 819200 bytes auxmem.vdu.s | 30 ++++++++++++++---------------- mainmem.ldr.s | 10 +--------- mainmem.svc.s | 25 +++++++++++++++++++++++++ 4 files changed, 40 insertions(+), 25 deletions(-) diff --git a/applecorn.po b/applecorn.po index 73d50a46bc865829e398301962a215373b7f3e17..6f7e1466b8ccdbbc42e38c96ce796c193ffe7e84 100644 GIT binary patch delta 9246 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 delta 9196 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 P{x*I7wqd2)0=54G%rZsw diff --git a/auxmem.vdu.s b/auxmem.vdu.s index 1e0edf8..607d446 100644 --- a/auxmem.vdu.s +++ b/auxmem.vdu.s @@ -276,12 +276,6 @@ CLREOL LDA VDUTEXTY ; ROW RTS * Clear the screen -*VDUINIT STA $C00F -* LDA #'_' -* STA CURSOR ; Normal cursor -* STA CURSORCP ; Copy cursor when editing -* LDA #$A0 -* STA CURSORED ; Edit cursor when editing CLEAR STZ VDUTEXTY ; ROW STZ VDUTEXTX ; COL :L1 JSR CLREOL @@ -463,15 +457,16 @@ VDU22 LDA VDUQ+8 DEX ; All other MODEs default to 40-col VDU22A STA $C051 ; Enable Text STA $C00C,X ; Select 40col/80col - STA $C003 ; Alt charset off STA $C055 ; PAGE2 - STA $C00F + STA $C052 ; Clear MIXED + STA $C00F ; Enable alt charset BRA VDU22C -VDU22G STA $C057 ; Hi-Res +VDU22G STA $C050 ; Enable Graphics + STA $C057 ; Hi-Res STA $C054 ; PAGE1 STA $C052 ; Clear MIXED - STA $C050 ; Enable Graphics + JSR VDU16 ; Clear HGR screen * Set up default cursors VDU22C LDA #'_' @@ -580,7 +575,6 @@ SCNTAB DW $800,$880,$900,$980,$A00,$A80,$B00,$B80 DW $850,$8D0,$950,$9D0,$A50,$AD0,$B50,$BD0 -* Unimplemented * May end up moving graphics bits to separate source * VDU 1 - Send one character to printer @@ -599,19 +593,25 @@ VDU16RET >>> ENTAUX VDU17 RTS * VDU 18 - GCOL k,a - select graphics colour and plot action -VDU18 LDA VDUQ+7 ; 'k' +VDU18 LDA VDUQ+7 ; Argument 'k' CMP #$04 ; k=4 means XOR LDA #$00 ; Normal drawing mode BNE :NORM LDA #$01 ; XOR mode :NORM >>> WRTMAIN + STA LINETYPE STA Entry+5 >>> WRTAUX >>> XF2MAIN,SETLINE VDU18RET1 >>> ENTAUX -:NORM LDA VDUQ+8 ; 'a' - STA HCOLOR +:NORM LDA VDUQ+8 ; Argument 'a' + BPL :FOREGND ; <128 is foreground >>> WRTMAIN + STA BGCOLOR ; Stored in main memory + >>> WRTAUX + RTS +:FOREGND >>> WRTMAIN + STA FGCOLOR ; Stored in main memory STA Entry+5 >>> WRTAUX >>> XF2MAIN,SETCOLOR @@ -669,8 +669,6 @@ HGRPOS LDA VDUQ+5 RTS XPIXEL DW $0000 ; Previous plot x-coord YPIXEL DW $0000 ; Previous plot y-coord -HCOLOR DB $00 ; High res foreground colour -BCOLOR DB $00 ; High res background colour * VDU 26 - Reset to default windows VDU26 RTS diff --git a/mainmem.ldr.s b/mainmem.ldr.s index a5f2824..7bbf7f4 100644 --- a/mainmem.ldr.s +++ b/mainmem.ldr.s @@ -102,15 +102,7 @@ START JSR ROMMENU LDA #>GSBRK STA $3F0+1 -* LDA $C057 ; Enable hi-res -* LDA $C054 ; Enable page 1 -* LDA $C050 ; Enable graphics - JSR Entry+0 ; Initialize FDRAW library - LDA #$20 - STA Entry+5 - JSR Entry+19 ; FDRAW: Set page $2000 - JSR Entry+22 ; FDRAW: clear HGR screen -* LDA $C051 ; Enable text again + JSR GFXINIT ; Initialize FDraw graphics TSX ; Save SP at $0100 in aux STA $C005 ; Write to aux diff --git a/mainmem.svc.s b/mainmem.svc.s index ca3df3c..0cd014c 100644 --- a/mainmem.svc.s +++ b/mainmem.svc.s @@ -1059,7 +1059,13 @@ MAINRDEXIT >>> XF2AUX,NULLRTS ; Back to an RTS * Call FDraw Clear routine CLRHGR >>> ENTMAIN + LDA BGCOLOR + STA Entry+5 + JSR Entry+16 ; FDRAW: SetColor JSR Entry+22 ; FDRAW: Clear + LDA FGCOLOR + STA Entry+5 + JSR Entry+16 ; FDRAW: SetColor >>> XF2AUX,VDU16RET * Call FDraw SetColor routine @@ -1077,6 +1083,25 @@ DRAWLINE >>> ENTMAIN JSR Entry+28 ; FDRAW: DrawLine >>> XF2AUX,VDU25RET +* Reset colours and linetype +GFXINIT JSR Entry+0 ; Initialize FDRAW library + LDA #$20 + STA Entry+5 + JSR Entry+19 ; FDRAW: Set page $2000 + STZ LINETYPE + STZ Entry+5 + JSR Entry+43 ; FDRAW: SetLineMode + LDA #$07 + STA FGCOLOR + STA Entry+5 + JSR Entry+16 ; FDRAW: SetColor + STZ BGCOLOR + JSR Entry+22 ; FDRAW: clear HGR screen + RTS + +FGCOLOR DB $00 ; Foreground colour +BGCOLOR DB $00 ; Background colour +LINETYPE DB $00 ; 0 normal, 1 XOR