diff --git a/DRV/DHGR.DRV.S.txt b/DRV/DHGR.DRV.S.txt index 2e88a6b8..0863f024 100644 --- a/DRV/DHGR.DRV.S.txt +++ b/DRV/DHGR.DRV.S.txt @@ -157,7 +157,11 @@ DRV.CS.START .DA STATUS *-------------------------------------- L.STAT .DA STAT L.DIV7.0 .DA DIV7.0 + .DA DIV7.256 + .DA DIV7.512 L.MOD7.0 .DA MOD7.0 + .DA MOD7.256 + .DA MOD7.512 L.Shift0.Lo .DA Shift0.lo L.Shift0.Hi .DA Shift0.hi .DA 0 end or relocation @@ -172,21 +176,21 @@ STATUS >LDYA L.STAT *-------------------------------------- OPEN sta A2osX.SCRNDEVS+2 DEV.ID in A - lda L.DIV7.0+1 - sta DIV7.hi - inc - sta DIV7.hi+1 - inc - sta DIV7.hi+2 - ldy #0 ldx #0 -.1 lda L.MOD7.0,y +.1 lda L.DIV7.0,y + sta DIV7.lo,x + lda L.MOD7.0,y sta MOD7.lo,x + iny + + lda L.DIV7.0,y + sta DIV7.hi,x lda L.MOD7.0,y sta MOD7.hi,x + iny inx cpx #3 @@ -254,8 +258,11 @@ SETPIXEL >STYA ZPBase lda CB.Cache+S.CB.MODE bit #S.CB.MODE.C16 bne SETPIXEL.C16 -*---- MONO ---------------------------- - ldx CB.Cache+S.CB.X1+1 + +SETPIXEL.MONO ldx CB.Cache+S.CB.X1+1 Get X Hi byte.... + + lda DIV7.lo,x + sta .2+1 lda DIV7.hi,x sta .2+2 @@ -264,23 +271,26 @@ SETPIXEL >STYA ZPBase lda MOD7.hi,x sta .4+2 + lda DIV7.BASE,x ldx CB.Cache+S.CB.X1 -.2 lda DIV7.0,x A=Col*2+AuxBit - - eor #1 toggle last bit : 0=Aux, 1=Main - lsr .3+1 reset CLRPAGE2 address - lsr CS=Aux - rol .3+1 if CS, -> SETPAGE2 -.3 sta CLRPAGE2 - - ldy CB.Cache+S.CB.Y1 + clc +.2 adc $ffff,x DIV7 : x = X.LO, a = X DIV 7 + + pha save X DIV 7 + lsr + ldy CB.Cache+S.CB.Y1 + clc adc BASEL,y setup line Base Ptr (A=Col) sta ZPBase lda BASEH,y sta ZPBase+1 + ply + lda COL.BANK,y + tay + sta $c000,y -.4 ldy MOD7.0,x x = X.LO +.4 ldy $ffff,x MOD7 : x = X.LO, y = X MOD 7 lda CB.Cache+S.CB.OP beq .5 @@ -306,7 +316,7 @@ SETPIXEL >STYA ZPBase sta (ZPBase) sta CLR80STORE rts -*-----16 Colors ----------------------- + SETPIXEL.C16 lda CB.Cache+S.CB.X1 lsr CB.Cache+S.CB.X1+1 divide by 4 ror @@ -410,11 +420,11 @@ HLINE >STYA ZPBase dey bpl .1 - lda CB.Cache+S.CB.MODE +HLINE.I lda CB.Cache+S.CB.MODE bit #S.CB.MODE.C16 bne HLINE.C16 -*----- MONO --------------------------- - + +HLINE.MONO HLINE.C16 @@ -430,7 +440,7 @@ VLINE >STYA ZPBase dey bpl .1 -VLINE.I + rts *-------------------------------------- @@ -451,7 +461,7 @@ FILLRECT >STYA ZPBase bpl .1 -.2 jsr VLINE.I +.2 jsr HLINE.I lda CB.Cache+S.CB.Y1 cmp CB.Cache+S.CB.Y2 @@ -497,6 +507,7 @@ Shift6.hi .BS 128 *-------------------------------------- .INB /A2OSX.SRC/DRV/DHGR.DRV.T *-------------------------------------- +DIV7.lo .BS 3 DIV7.hi .BS 3 MOD7.lo .BS 3 MOD7.hi .BS 3 diff --git a/DRV/DHGR.DRV.T.txt b/DRV/DHGR.DRV.T.txt index 376764e8..47a4b1f5 100644 --- a/DRV/DHGR.DRV.T.txt +++ b/DRV/DHGR.DRV.T.txt @@ -66,9 +66,33 @@ Color.Pixels .DA #%00000000,#%00000000,#%00000000,#%00000000 black (color bit di .DA #%11011101,#%10111011,#%11110111,#%11101110 pink .DA #%11101110,#%11011101,#%10111011,#%11110111 yellow *-------------------------------------- -* COL*2+AUX Bit +COL.BANK .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 + .DA #SETPAGE2,#CLRPAGE2,#SETPAGE2,#CLRPAGE2 *-------------------------------------- -DIV7.0 .HS 0000000000000001010101010101 +DIV7.BASE .HS 002449 Indexed with X.HI +*-------------------------------------- +DIV7.0 .HS 00 +DIV7.512 .HS 000000 +DIV7.256 .HS 000000 + .HS 01010101010101 .HS 0202020202020203030303030303 .HS 0404040404040405050505050505 .HS 0606060606060607070707070707 @@ -86,34 +110,13 @@ DIV7.0 .HS 0000000000000001010101010101 .HS 1E1E1E1E1E1E1E1F1F1F1F1F1F1F .HS 2020202020202021212121212121 .HS 2222222222222223232323232323 - .HS 24242424 -DIV7.256 .HS 24242425252525252525 - .HS 2626262626262627272727272727 - .HS 2828282828282829292929292929 - .HS 2A2A2A2A2A2A2A2B2B2B2B2B2B2B - .HS 2C2C2C2C2C2C2C2D2D2D2D2D2D2D - .HS 2E2E2E2E2E2E2E2F2F2F2F2F2F2F - .HS 3030303030303031313131313131 - .HS 3232323232323233333333333333 - .HS 3434343434343435353535353535 - .HS 3636363636363637373737373737 - .HS 3838383838383839393939393939 - .HS 3A3A3A3A3A3A3A3B3B3B3B3B3B3B - .HS 3C3C3C3C3C3C3C3D3D3D3D3D3D3D - .HS 3E3E3E3E3E3E3E3F3F3F3F3F3F3F - .HS 4040404040404041414141414141 - .HS 4242424242424243434343434343 - .HS 4444444444444445454545454545 - .HS 4646464646464647474747474747 - .HS 4848484848484849 -DIV7.512 .HS 494949494949 - .HS 4A4A4A4A4A4A4A4B4B4B4B4B4B4B - .HS 4C4C4C4C4C4C4C4D4D4D4D4D4D4D - .HS 4E4E4E4E4E4E4E4F4F4F4F4F4F4F + .HS 24242424242424 + .HS 25 *-------------------------------------- MOD7.0 .HS 00 MOD7.512 .HS 010203 MOD7.256 .HS 040506 + .HS 00010203040506 .HS 0001020304050600010203040506 .HS 0001020304050600010203040506 .HS 0001020304050600010203040506 @@ -131,7 +134,7 @@ MOD7.256 .HS 040506 .HS 0001020304050600010203040506 .HS 0001020304050600010203040506 .HS 0001020304050600010203040506 - .HS 0001020304050600010203040506 + .HS 00010203040506 .HS 00 *-------------------------------------- BASEL .HS 00.00.00.00.00.00.00.00 diff --git a/Floppies/A2OSX.BUILD.po b/Floppies/A2OSX.BUILD.po index de8142e8..3c1d681e 100644 Binary files a/Floppies/A2OSX.BUILD.po and b/Floppies/A2OSX.BUILD.po differ diff --git a/Floppies/A2OSX.SRC.po b/Floppies/A2OSX.SRC.po index a9ecd41b..8ffef538 100644 Binary files a/Floppies/A2OSX.SRC.po and b/Floppies/A2OSX.SRC.po differ