mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-06 22:31:53 +00:00
Kernel version 0.9 : DHGR.DRV, saved few bytes in tables, room for additional primitives, Bugfix in drawline....
This commit is contained in:
parent
d0d356419f
commit
5984f77ab0
@ -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
|
||||
|
@ -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
|
||||
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user