diff --git a/applecorn.po b/applecorn.po index 08f0677..96f29ff 100644 Binary files a/applecorn.po and b/applecorn.po differ diff --git a/applecorn.s b/applecorn.s index adc2778..446ba4b 100644 --- a/applecorn.s +++ b/applecorn.s @@ -265,7 +265,7 @@ MAINZP MAC PUT AUXMEM.MOSEQU PUT AUXMEM.INIT PUT AUXMEM.VDU - PUT AUXMEM.GFX + PUT AUXMEM.HGR PUT AUXMEM.HOSTFS PUT AUXMEM.OSCLI PUT AUXMEM.BYTWRD @@ -276,7 +276,7 @@ MAINZP MAC PUT MAINMEM.FSEQU PUT MAINMEM.INIT PUT MAINMEM.SVC - PUT MAINMEM.GFX + PUT MAINMEM.HGR PUT MAINMEM.PATH PUT MAINMEM.WILD PUT MAINMEM.LISTS diff --git a/auxmem.gfx.s b/auxmem.hgr.s similarity index 92% rename from auxmem.gfx.s rename to auxmem.hgr.s index 1241359..86c8e6a 100644 --- a/auxmem.gfx.s +++ b/auxmem.hgr.s @@ -1,7 +1,9 @@ -* AUXMEM.GFX.S +* AUXMEM.HGR.S * (c) Bobbi 2021 GPLv3 * -* Graphics operations +* Routines for drawing bitmapped text and graphics in HGR mode (280x192) +* Most of these routines call into MAINMEM.HGR.S to actually do the +* drawing. * * 26-Sep-2021 All graphics screen code moved to here. * 02-Oct-2021 Added temp'y wrapper to HGRPLOT. @@ -32,6 +34,24 @@ PRCHRSOFT CMP #$A0 ; Convert to screen code PUTCHRET >>> ENTAUX RTS + +* Calculate character address in HGR screen memory +* This is the address of the first pixel row of the char +* Add $0400 for each subsequent row of the char +HCHARADDR LDA VDUTEXTY + ASL + TAY + CLC + LDA HGRTAB+0,Y ; LSB of row address + ADC VDUTEXTX + STA VDUADDR+0 + LDA HGRTAB+1,Y ; MSB of row address + ADC #$00 + STA VDUADDR+1 + RTS +* (VDUADDR)=>character address, X=preserved + + * Forwards scroll one line HSCR1LINE >>> WRTMAIN LDX TXTWINLFT diff --git a/auxmem.vdu.s b/auxmem.vdu.s index fb3ec06..595c7a8 100644 --- a/auxmem.vdu.s +++ b/auxmem.vdu.s @@ -462,22 +462,6 @@ CHARADDROK STA VDUBANK * VDUBANK = AppleGS screen bank * CC=auxmem, CS=mainmem, X=preserved -* Calculate character address in HGR screen memory -* This is the address of the first pixel row of the char -* Add $0400 for each subsequent row of the char -HCHARADDR LDA VDUTEXTY - ASL - TAY - CLC - LDA HGRTAB+0,Y ; LSB of row address - ADC VDUTEXTX - STA VDUADDR+0 - LDA HGRTAB+1,Y ; MSB of row address - ADC #$00 - STA VDUADDR+1 - RTS -* (VDUADDR)=>character address, X=preserved - * Move text cursor position *************************** diff --git a/mainmem.gfx.s b/mainmem.hgr.s similarity index 98% rename from mainmem.gfx.s rename to mainmem.hgr.s index 8e80c63..02cd58b 100644 --- a/mainmem.gfx.s +++ b/mainmem.hgr.s @@ -1,7 +1,8 @@ -* MAINMEM.GFX.S +* MAINMEM.HGR.S * (c) Bobbi 2021 GPLv3 * -* Main memory HGR graphics routines. +* Routines for drawing bitmapped text and graphics in HGR mode (280x192) +* Uses the FDraw library to actually do the drawing. * Call FDraw Clear routine CLRHGR >>> ENTMAIN