mirror of
https://github.com/A2osX/A2osX.git
synced 2024-10-25 15:24:26 +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.STAT .DA STAT
|
||||||
L.DIV7.0 .DA DIV7.0
|
L.DIV7.0 .DA DIV7.0
|
||||||
|
.DA DIV7.256
|
||||||
|
.DA DIV7.512
|
||||||
L.MOD7.0 .DA MOD7.0
|
L.MOD7.0 .DA MOD7.0
|
||||||
|
.DA MOD7.256
|
||||||
|
.DA MOD7.512
|
||||||
L.Shift0.Lo .DA Shift0.lo
|
L.Shift0.Lo .DA Shift0.lo
|
||||||
L.Shift0.Hi .DA Shift0.hi
|
L.Shift0.Hi .DA Shift0.hi
|
||||||
.DA 0 end or relocation
|
.DA 0 end or relocation
|
||||||
@ -172,21 +176,21 @@ STATUS >LDYA L.STAT
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
OPEN sta A2osX.SCRNDEVS+2 DEV.ID in A
|
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
|
ldy #0
|
||||||
ldx #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
|
sta MOD7.lo,x
|
||||||
|
|
||||||
iny
|
iny
|
||||||
|
|
||||||
|
lda L.DIV7.0,y
|
||||||
|
sta DIV7.hi,x
|
||||||
lda L.MOD7.0,y
|
lda L.MOD7.0,y
|
||||||
sta MOD7.hi,x
|
sta MOD7.hi,x
|
||||||
|
|
||||||
iny
|
iny
|
||||||
inx
|
inx
|
||||||
cpx #3
|
cpx #3
|
||||||
@ -254,8 +258,11 @@ SETPIXEL >STYA ZPBase
|
|||||||
lda CB.Cache+S.CB.MODE
|
lda CB.Cache+S.CB.MODE
|
||||||
bit #S.CB.MODE.C16
|
bit #S.CB.MODE.C16
|
||||||
bne SETPIXEL.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
|
lda DIV7.hi,x
|
||||||
sta .2+2
|
sta .2+2
|
||||||
|
|
||||||
@ -264,23 +271,26 @@ SETPIXEL >STYA ZPBase
|
|||||||
lda MOD7.hi,x
|
lda MOD7.hi,x
|
||||||
sta .4+2
|
sta .4+2
|
||||||
|
|
||||||
|
lda DIV7.BASE,x
|
||||||
ldx CB.Cache+S.CB.X1
|
ldx CB.Cache+S.CB.X1
|
||||||
.2 lda DIV7.0,x A=Col*2+AuxBit
|
|
||||||
|
|
||||||
eor #1 toggle last bit : 0=Aux, 1=Main
|
clc
|
||||||
lsr .3+1 reset CLRPAGE2 address
|
.2 adc $ffff,x DIV7 : x = X.LO, a = X DIV 7
|
||||||
lsr CS=Aux
|
|
||||||
rol .3+1 if CS, -> SETPAGE2
|
|
||||||
.3 sta CLRPAGE2
|
|
||||||
|
|
||||||
|
pha save X DIV 7
|
||||||
|
lsr
|
||||||
ldy CB.Cache+S.CB.Y1
|
ldy CB.Cache+S.CB.Y1
|
||||||
|
clc
|
||||||
adc BASEL,y setup line Base Ptr (A=Col)
|
adc BASEL,y setup line Base Ptr (A=Col)
|
||||||
sta ZPBase
|
sta ZPBase
|
||||||
lda BASEH,y
|
lda BASEH,y
|
||||||
sta ZPBase+1
|
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
|
lda CB.Cache+S.CB.OP
|
||||||
beq .5
|
beq .5
|
||||||
@ -306,7 +316,7 @@ SETPIXEL >STYA ZPBase
|
|||||||
sta (ZPBase)
|
sta (ZPBase)
|
||||||
sta CLR80STORE
|
sta CLR80STORE
|
||||||
rts
|
rts
|
||||||
*-----16 Colors -----------------------
|
|
||||||
SETPIXEL.C16 lda CB.Cache+S.CB.X1
|
SETPIXEL.C16 lda CB.Cache+S.CB.X1
|
||||||
lsr CB.Cache+S.CB.X1+1 divide by 4
|
lsr CB.Cache+S.CB.X1+1 divide by 4
|
||||||
ror
|
ror
|
||||||
@ -410,11 +420,11 @@ HLINE >STYA ZPBase
|
|||||||
dey
|
dey
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
lda CB.Cache+S.CB.MODE
|
HLINE.I lda CB.Cache+S.CB.MODE
|
||||||
bit #S.CB.MODE.C16
|
bit #S.CB.MODE.C16
|
||||||
bne HLINE.C16
|
bne HLINE.C16
|
||||||
*----- MONO ---------------------------
|
|
||||||
|
|
||||||
|
HLINE.MONO
|
||||||
|
|
||||||
|
|
||||||
HLINE.C16
|
HLINE.C16
|
||||||
@ -430,7 +440,7 @@ VLINE >STYA ZPBase
|
|||||||
dey
|
dey
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
VLINE.I
|
|
||||||
|
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -451,7 +461,7 @@ FILLRECT >STYA ZPBase
|
|||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
|
|
||||||
.2 jsr VLINE.I
|
.2 jsr HLINE.I
|
||||||
|
|
||||||
lda CB.Cache+S.CB.Y1
|
lda CB.Cache+S.CB.Y1
|
||||||
cmp CB.Cache+S.CB.Y2
|
cmp CB.Cache+S.CB.Y2
|
||||||
@ -497,6 +507,7 @@ Shift6.hi .BS 128
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB /A2OSX.SRC/DRV/DHGR.DRV.T
|
.INB /A2OSX.SRC/DRV/DHGR.DRV.T
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
DIV7.lo .BS 3
|
||||||
DIV7.hi .BS 3
|
DIV7.hi .BS 3
|
||||||
MOD7.lo .BS 3
|
MOD7.lo .BS 3
|
||||||
MOD7.hi .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 #%11011101,#%10111011,#%11110111,#%11101110 pink
|
||||||
.DA #%11101110,#%11011101,#%10111011,#%11110111 yellow
|
.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 0202020202020203030303030303
|
||||||
.HS 0404040404040405050505050505
|
.HS 0404040404040405050505050505
|
||||||
.HS 0606060606060607070707070707
|
.HS 0606060606060607070707070707
|
||||||
@ -86,34 +110,13 @@ DIV7.0 .HS 0000000000000001010101010101
|
|||||||
.HS 1E1E1E1E1E1E1E1F1F1F1F1F1F1F
|
.HS 1E1E1E1E1E1E1E1F1F1F1F1F1F1F
|
||||||
.HS 2020202020202021212121212121
|
.HS 2020202020202021212121212121
|
||||||
.HS 2222222222222223232323232323
|
.HS 2222222222222223232323232323
|
||||||
.HS 24242424
|
.HS 24242424242424
|
||||||
DIV7.256 .HS 24242425252525252525
|
.HS 25
|
||||||
.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
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MOD7.0 .HS 00
|
MOD7.0 .HS 00
|
||||||
MOD7.512 .HS 010203
|
MOD7.512 .HS 010203
|
||||||
MOD7.256 .HS 040506
|
MOD7.256 .HS 040506
|
||||||
|
.HS 00010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
@ -131,7 +134,7 @@ MOD7.256 .HS 040506
|
|||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 0001020304050600010203040506
|
||||||
.HS 0001020304050600010203040506
|
.HS 00010203040506
|
||||||
.HS 00
|
.HS 00
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BASEL .HS 00.00.00.00.00.00.00.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