mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-05 16:30:45 +00:00
Kernel 0.9.1 : GUI, API & Driver
This commit is contained in:
parent
f5da545c4a
commit
60ea43c5e5
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -73,9 +73,9 @@ HLINE.C16 lda CB.Cache+S.CB.X1
|
||||
|
||||
and LBUF.AND,x
|
||||
sta LBUF.ORA,x
|
||||
inx
|
||||
cpx LBUF.C2
|
||||
bcs .1
|
||||
inx
|
||||
bcc .1
|
||||
|
||||
ldy CB.Cache+S.CB.Y1
|
||||
jmp LBUF.DrawAtY
|
||||
|
@ -21,10 +21,10 @@ FILLRECT jsr HLINE
|
||||
bcc .8
|
||||
|
||||
.2 jsr LBUF.DrawAtY
|
||||
inc CB.Cache+S.CB.Y1
|
||||
ldy CB.Cache+S.CB.Y1
|
||||
inc CB.Cache+S.CB.Y1
|
||||
cpy CB.Cache+S.CB.Y2
|
||||
bcs .2
|
||||
bcc .2
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
|
@ -143,28 +143,18 @@ WRITE >STYA ZPCmdPtr
|
||||
|
||||
sta SET80STORE
|
||||
|
||||
lda (ZPCmdPtr)
|
||||
lda (ZPCmdPtr) Get Cmd
|
||||
|
||||
.1 tax
|
||||
ldy CB.CmdLen,x
|
||||
|
||||
.2 lda (ZPBasePtr),y
|
||||
.2 lda (ZPCmdPtr),y
|
||||
sta CB.Cache,y
|
||||
dey
|
||||
bpl .2
|
||||
|
||||
lda CB.CmdLen,x
|
||||
clc
|
||||
adc ZPCmdPtr
|
||||
sta ZPCmdPtr
|
||||
bcc .3
|
||||
inc ZPCmdPtr+1
|
||||
|
||||
|
||||
.3 jsr .10
|
||||
|
||||
lda (ZPCmdPtr)
|
||||
bne .1
|
||||
|
||||
sta CLR80STORE
|
||||
|
||||
.8 clc
|
||||
@ -181,18 +171,19 @@ LBUF.SetBounds1YA
|
||||
jsr DIVMOD7YA A=DIV, X=MOD
|
||||
sta LBUF.C1
|
||||
tay
|
||||
|
||||
lda Mono.Head,x
|
||||
sta LBUF.AND,y
|
||||
rts
|
||||
*--------------------------------------
|
||||
LBUF.SetBounds2YA
|
||||
jsr DIVMOD7YA
|
||||
|
||||
cmp LBUF.C1 A=DIV, X=MOD
|
||||
beq .2
|
||||
|
||||
jsr DIVMOD7YA A=DIV, X=MOD
|
||||
sta LBUF.C2
|
||||
tay
|
||||
|
||||
cmp LBUF.C1
|
||||
beq .2
|
||||
|
||||
lda Mono.Tail,x
|
||||
sta LBUF.AND,y
|
||||
|
||||
@ -204,10 +195,8 @@ LBUF.SetBounds2YA
|
||||
sta LBUF.AND,y
|
||||
bra .1
|
||||
|
||||
.2 and LBUF.C1
|
||||
sta LBUF.C2
|
||||
tay
|
||||
lda Mono.Tail,x
|
||||
.2 lda Mono.Head,x
|
||||
and Mono.Tail,x
|
||||
sta LBUF.AND,y
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
@ -218,6 +207,7 @@ LBUF.DrawAtY lda BASEL,y setup line Base Ptr
|
||||
lda BASEH,y
|
||||
sta ZPBasePtr+1
|
||||
|
||||
|
||||
ldy LBUF.C1 y C1->C2
|
||||
|
||||
.1 ldx COL.BANK,y
|
||||
@ -227,11 +217,12 @@ LBUF.DrawAtY lda BASEL,y setup line Base Ptr
|
||||
and LBUF.AND,y
|
||||
|
||||
ora LBUF.ORA,y
|
||||
lda #$ff
|
||||
sta (ZPBasePtr),y
|
||||
|
||||
iny
|
||||
cpy LBUF.C2
|
||||
bcs .1
|
||||
iny
|
||||
bcc .1
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -259,9 +250,9 @@ LBUF.DrawAtY.XOR
|
||||
* X = MOD
|
||||
*--------------------------------------
|
||||
DIVMOD7YA dec
|
||||
bne DIVMOD7Y2
|
||||
beq DIVMOD7Y1
|
||||
|
||||
bpl DIVMOD7Y2
|
||||
|
||||
DIVMOD7Y0 lda DIV7.0,y
|
||||
ldx MOD7.0,y
|
||||
rts
|
||||
@ -285,7 +276,7 @@ DRV.CS.END
|
||||
CB.CmdLen .DA S.CB.Y1+1 SETPIXEL
|
||||
.DA S.CB.Y1+1 GETPIXEL
|
||||
.DA S.CB.X2+1 HLINE
|
||||
.DA S.CB.X2+1 VLINE
|
||||
.DA S.CB.Y2+1 VLINE
|
||||
.DA S.CB.Y2+1 FILLRECT
|
||||
.DA S.CB.DstPtr+1 BITBLT
|
||||
*--------------------------------------
|
||||
|
@ -107,7 +107,7 @@ Dev.Detect >LDYA L.MSG.DETECT
|
||||
and #$0F
|
||||
sta DEVSLOT0n
|
||||
ora #$30
|
||||
sta DEV.HEADER.NAME+4
|
||||
sta DEV.HEADER.NAME+3
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
@ -122,7 +122,7 @@ Dev.Detect >LDYA L.MSG.DETECT
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
MSG.DETECT >CSTR "Apple Mouse Card/IIc Mouse Driver.\r\n"
|
||||
MSG.DETECT.OK >CSTR "Mouse Installed As Device : %S\r\n"
|
||||
MSG.DETECT.OK >CSTR "Mouse Installed As Device : %s\r\n"
|
||||
MSG.DETECT.KO >CSTR "No Mouse Found.\r\n"
|
||||
DEVSIG.Offset .HS 05070B0CFB
|
||||
DEVSIG.Value .HS 38180120D6
|
||||
@ -133,7 +133,7 @@ DEV.HEADER cld
|
||||
jmp (DRV.CS.START,x)
|
||||
.DA #0
|
||||
.BS 6
|
||||
DEV.HEADER.NAME >PSTR "MOUX"
|
||||
DEV.HEADER.NAME >CSTR "MOUX"
|
||||
*--------------------------------------
|
||||
* Driver Code
|
||||
*--------------------------------------
|
||||
|
@ -6,7 +6,14 @@ AUTO 6
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
*--------------------------------------
|
||||
S.CB.hDC .EQ 0
|
||||
S.CB.CMD .EQ 0
|
||||
S.CB.CMD.SETPIXEL .EQ 0
|
||||
S.CB.CMD.GETPIXEL .EQ 2
|
||||
S.CB.CMD.HLINE .EQ 4
|
||||
S.CB.CMD.VLINE .EQ 6
|
||||
S.CB.CMD.FILLRECT .EQ 8
|
||||
S.CB.CMD.BITBLT .EQ 10
|
||||
S.CB.CMD.DRAWLINE .EQ 12
|
||||
S.CB.OP .EQ 1
|
||||
S.CB.OP.SAVE .EQ %00000001
|
||||
S.CB.OP.REPLACE .EQ %00000010
|
||||
@ -41,6 +48,13 @@ S.DC.H .EQ 10
|
||||
*
|
||||
S.DC .EQ 12
|
||||
*--------------------------------------
|
||||
CUR.T.ARROW .EQ 0
|
||||
CUR.T.PLUS .EQ 2
|
||||
CUR.T.WAIT .EQ 4
|
||||
CUR.T.RESIZEX .EQ 6
|
||||
CUR.T.RESIZEY .EQ 8
|
||||
CUR.T.RESIZEXY .EQ 10
|
||||
*--------------------------------------
|
||||
S.CUR.HotPointX .EQ 0
|
||||
S.CUR.HotPointY .EQ 1
|
||||
S.CUR.DATA .EQ 2 16x16 bits = 32 bytes
|
||||
@ -58,13 +72,14 @@ S.BM.H .EQ 4
|
||||
S.BM.MASK.OFFSET .EQ 6
|
||||
S.BM.DATA .EQ 8
|
||||
*--------------------------------------
|
||||
LIBGFX.InitGFXA .EQ 4
|
||||
LIBGFX.CloseGFX .EQ 4
|
||||
LIBGFX.SetCursorPos .EQ 8
|
||||
LIBGFX.SetCursorYA .EQ 10
|
||||
LIBGFX.HideCursor .EQ 12
|
||||
LIBGFX.ShowCursor .EQ 14
|
||||
LIBGFX.DrawLine .EQ 16
|
||||
LIBGUI.InitGUI.A .EQ 4
|
||||
LIBGUI.CloseGUI .EQ 6
|
||||
LIBGUI.Draw .EQ 8
|
||||
LIBGUI.SetCursor.A .EQ 10
|
||||
LIBGUI.SetCursorPos .EQ 12
|
||||
LIBGUI.HideCursor .EQ 14
|
||||
LIBGUI.ShowCursor .EQ 16
|
||||
LIBGUI.DrawLine .EQ 18
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE /A2OSX.BUILD/INC/LIBGUI.I
|
||||
|
116
LIB/LIBGUI.S.txt
116
LIB/LIBGUI.S.txt
@ -6,11 +6,11 @@ AUTO 6
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF /A2OSX.BUILD/LIB/LIBGFX.O
|
||||
.TF /A2OSX.BUILD/LIB/LIBGUI.O
|
||||
*--------------------------------------
|
||||
.INB /A2OSX.BUILD/INC/MACROS.I
|
||||
.INB /A2OSX.BUILD/INC/A2OSX.I
|
||||
.INB /A2OSX.BUILD/INC/LIBGFX.I
|
||||
.INB /A2OSX.BUILD/INC/LIBGUI.I
|
||||
*--------------------------------------
|
||||
.MA SWAP16
|
||||
lda ]1
|
||||
@ -32,8 +32,8 @@ AUTO 6
|
||||
sta ]1+1
|
||||
.EM
|
||||
*--------------------------------------
|
||||
ZPCBPtr .EQ ZPLIB
|
||||
ZPDCPtr .EQ ZPLIB+2
|
||||
ZPCmdPtr .EQ ZPLIB+4
|
||||
*--------------------------------------
|
||||
* File Header (16 Bytes)
|
||||
*--------------------------------------
|
||||
@ -51,10 +51,11 @@ CS.START cld
|
||||
*--------------------------------------
|
||||
.1 .DA LIB.LOAD
|
||||
.DA LIB.UNLOAD
|
||||
.DA InitGFXA
|
||||
.DA CloseGFX
|
||||
.DA InitCursor
|
||||
.DA SetCursorYA
|
||||
.DA InitGUI.A
|
||||
J.Cmds .DA CloseGUI J.Cmds-12 !!!
|
||||
.DA Draw
|
||||
.DA SetCursor.A
|
||||
.DA SetCursorPos
|
||||
.DA HideCursor
|
||||
.DA ShowCursor
|
||||
.DA DrawLine
|
||||
@ -65,21 +66,59 @@ LIB.LOAD
|
||||
LIB.UNLOAD clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
InitGFXA sta hDev
|
||||
>SYSCALL GetDevByIDA
|
||||
>STYA GoDevGFX.1+1
|
||||
InitGUI.A sta hDev
|
||||
>SYSCALL GetDevByID.A
|
||||
>STYA GoDev.Jmp+1
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CloseGFX
|
||||
CloseGUI
|
||||
stz hDev
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
InitCursor
|
||||
Draw >PULLW ZPCmdPtr
|
||||
|
||||
lda (ZPCmdPtr) Get Cmd
|
||||
|
||||
.1 tax
|
||||
cpx #S.CB.CMD.DRAWLINE
|
||||
bcc .3 Native DRV Cmd
|
||||
|
||||
ldy CB.CmdLen,x
|
||||
|
||||
.2 lda (ZPCmdPtr),y Y=Byte count-1 to cache
|
||||
sta CB.Cache,y
|
||||
dey
|
||||
bpl .2
|
||||
jsr Draw.Jmp
|
||||
bra .7
|
||||
|
||||
.3 >LDYA ZPCmdPtr
|
||||
|
||||
jsr GoDev.YA
|
||||
|
||||
.7 lda (ZPCmdPtr) Get Cmd
|
||||
tax
|
||||
lda CB.CmdLen,x
|
||||
sec
|
||||
adc ZPCmdPtr
|
||||
sta ZPCmdPtr
|
||||
bcc .8
|
||||
inc ZPCmdPtr+1
|
||||
|
||||
.8 lda (ZPCmdPtr) Get Cmd
|
||||
bne .1
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
Draw.Jmp jmp (J.Cmds,x)
|
||||
*--------------------------------------
|
||||
SetCursorYA
|
||||
SetCursor.A
|
||||
*--------------------------------------
|
||||
SetCursorPos
|
||||
*--------------------------------------
|
||||
HideCursor
|
||||
*--------------------------------------
|
||||
@ -98,12 +137,8 @@ ShowCursor
|
||||
* X2
|
||||
* Y2
|
||||
*--------------------------------------
|
||||
DrawLine ldy #S.CB.Y2+1
|
||||
jsr GetCB
|
||||
|
||||
DrawLine lda CB.Cache+S.CB.X2
|
||||
sec
|
||||
|
||||
lda CB.Cache+S.CB.X2
|
||||
sbc CB.Cache+S.CB.X1
|
||||
sta DX
|
||||
|
||||
@ -116,8 +151,9 @@ DrawLine ldy #S.CB.Y2+1
|
||||
ora DX
|
||||
bne .2 DX > 0...
|
||||
|
||||
ldx #DEVMGR.GFX.VLINE
|
||||
jmp GoDevGFX DX=0 : VLIN Y1,Y2 At X1
|
||||
lda #S.CB.CMD.VLINE
|
||||
sta CB.Cache+S.CB.CMD
|
||||
jmp GoDev DX=0 : VLIN Y1,Y2 At X1
|
||||
|
||||
.1 >SWAP16 CB.Cache+S.CB.X1,CB.Cache+S.CB.X2
|
||||
* >SWAP16 CB.Cache+S.CB.Y1,CB.Cache+S.CB.Y2
|
||||
@ -147,15 +183,17 @@ DrawLine ldy #S.CB.Y2+1
|
||||
ora DY
|
||||
bne .4
|
||||
|
||||
ldx #DEVMGR.GFX.HLINE
|
||||
jmp GoDevGFX DY=0 : HLIN X1,X2 At Y1
|
||||
lda #S.CB.CMD.HLINE
|
||||
sta CB.Cache+S.CB.CMD
|
||||
jmp GoDev DY=0 : HLIN X1,X2 At Y1
|
||||
|
||||
.3 >NOT16 DY set DY=-DY
|
||||
lda #$ff
|
||||
sta IY set IY=-1
|
||||
|
||||
.4 ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
.4 lda #S.CB.CMD.SETPIXEL
|
||||
sta CB.Cache+S.CB.CMD
|
||||
jsr GoDev
|
||||
|
||||
lda DX
|
||||
sec
|
||||
@ -193,8 +231,7 @@ DrawLine.IncXY lda DX DX=DY
|
||||
adc IY
|
||||
sta CB.Cache+S.CB.Y1
|
||||
|
||||
ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
jsr GoDev
|
||||
bra .1
|
||||
|
||||
.8 rts
|
||||
@ -277,8 +314,7 @@ DrawLine.IncY lda DY
|
||||
adc IY
|
||||
sta CB.Cache+S.CB.Y1
|
||||
|
||||
ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
jsr GoDev
|
||||
bra .1
|
||||
|
||||
.8 rts
|
||||
@ -362,22 +398,14 @@ DrawLine.IncX lda DX
|
||||
bne .6
|
||||
inc CB.Cache+S.CB.X1+1
|
||||
|
||||
.6 ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
.6 jsr GoDev
|
||||
bra .1
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
GetCB >PULLW ZPCBPtr
|
||||
|
||||
.1 lda (ZPCBPtr),y Y=Byte count to cache
|
||||
sta CB.Cache,y
|
||||
dey
|
||||
bpl .1
|
||||
rts
|
||||
*--------------------------------------
|
||||
GoDevGFX >LDYA L.CB.Cache
|
||||
GoDevGFX.1 jmp $ffff
|
||||
GoDev >LDYA L.CB.Cache
|
||||
GoDev.YA ldx #DEVMGR.WRITE
|
||||
GoDev.Jmp jmp $ffff
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
hDev .BS 1
|
||||
@ -390,6 +418,14 @@ D .BS 2
|
||||
INE .BS 2
|
||||
Counter .BS 2
|
||||
*--------------------------------------
|
||||
CB.CmdLen .DA S.CB.Y1+1 SETPIXEL
|
||||
.DA S.CB.Y1+1 GETPIXEL
|
||||
.DA S.CB.X2+1 HLINE
|
||||
.DA S.CB.Y2+1 VLINE
|
||||
.DA S.CB.Y2+1 FILLRECT
|
||||
.DA S.CB.DstPtr+1 BITBLT
|
||||
.DA S.CB.Y2+1 DRAWLINE
|
||||
*--------------------------------------
|
||||
CB.Cache .BS S.CB
|
||||
*--------------------------------------
|
||||
CUR.Arrow .DA #0
|
||||
|
119
SBIN/GUI.S.txt
119
SBIN/GUI.S.txt
@ -22,9 +22,10 @@ CS.START cld
|
||||
.DA #$61 6502,Level 1 (65c02)
|
||||
.DA #1 BIN Layout Version 1
|
||||
.DA 0
|
||||
.DA CS.END-CS.START
|
||||
.DA 0
|
||||
.DA 0
|
||||
.DA CS.END-CS.START CS
|
||||
.DA DS.END-DS.START DS
|
||||
.DA #16 SS
|
||||
.DA #2 ZP
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
* Relocation Table
|
||||
@ -33,30 +34,26 @@ CS.START cld
|
||||
.DA CS.RUN
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.QUIT
|
||||
L.LIBGFX .DA LIBGFX
|
||||
L.LIBGUI .DA LIBGUI
|
||||
L.DEVNAME.GFX .DA DEVNAME.GFX
|
||||
L.DEVNAME.MOUSE .DA DEVNAME.MOUSE
|
||||
L.MSG.INIT .DA MSG.INIT
|
||||
L.MouseClamp .DA MouseClamp
|
||||
L.MouseData .DA MouseData
|
||||
L.Rect.CB .DA Rect.CB
|
||||
L.SetPixel.CB .DA SetPixel.CB
|
||||
L.DrawLine1.CB .DA DrawLine1.CB
|
||||
L.DrawLine2.CB .DA DrawLine2.CB
|
||||
L.DrawLine3.CB .DA DrawLine3.CB
|
||||
L.DrawLine4.CB .DA DrawLine4.CB
|
||||
L.DrawLine5.CB .DA DrawLine5.CB
|
||||
L.DrawLine6.CB .DA DrawLine6.CB
|
||||
L.DrawLines.CB .DA DrawLines.CB
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT >LDYA L.MSG.INIT
|
||||
>SYSCALL PrintF.YA
|
||||
|
||||
>LDYA L.LIBGFX
|
||||
>SYSCALL LoadLibYA
|
||||
sta hLIBGFX
|
||||
|
||||
>LDYA L.LIBGUI
|
||||
>SYSCALL LoadLib.YA
|
||||
sta hLIBGUI
|
||||
|
||||
>LDYA L.DEVNAME.GFX
|
||||
>SYSCALL GetDevByNameYA
|
||||
>SYSCALL GetDevByName.YA
|
||||
bcc .10
|
||||
rts
|
||||
|
||||
@ -69,7 +66,7 @@ CS.INIT >LDYA L.MSG.INIT
|
||||
jsr GoDevGFX
|
||||
|
||||
.11 >LDYA L.DEVNAME.MOUSE
|
||||
>SYSCALL GetDevByNameYA
|
||||
>SYSCALL GetDevByName.YA
|
||||
bcc .20
|
||||
|
||||
inc DEVNAME.MOUSE+4
|
||||
@ -111,7 +108,7 @@ CS.INIT >LDYA L.MSG.INIT
|
||||
jsr GoDevMouse
|
||||
|
||||
.21 lda hDevGFX
|
||||
>LIBCALL hLibGFX,LIBGFX.InitGFXA
|
||||
>LIBCALL hLIBGUI,LIBGUI.InitGUI.A
|
||||
|
||||
lda (pPs)
|
||||
ora #S.PS.F.EVENT Now accept events
|
||||
@ -158,9 +155,8 @@ CS.RUN lda A2osX.ASCREEN GUI screen active ?
|
||||
lda #1
|
||||
sta SetPixel.Color
|
||||
|
||||
>LDYA L.SetPixel.CB
|
||||
ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
>PUSHW L.SetPixel.CB
|
||||
>LIBCALL hLIBGUI,LIBGUI.Draw
|
||||
clc
|
||||
rts
|
||||
|
||||
@ -181,7 +177,10 @@ CS.DOEVENT sec
|
||||
CS.QUIT clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
Destop.Paint lda #S.CB.MODE.C16
|
||||
Destop.Paint >PUSHW L.Rect.CB
|
||||
>LIBCALL hLIBGUI,LIBGUI.Draw
|
||||
|
||||
lda #S.CB.MODE.C16
|
||||
sta SetPixel.Mode
|
||||
|
||||
lda #0
|
||||
@ -195,10 +194,8 @@ Destop.Paint lda #S.CB.MODE.C16
|
||||
lda /28
|
||||
sta SetPixel.X+1
|
||||
|
||||
.2 >LDYA L.SetPixel.CB
|
||||
|
||||
ldx #DEVMGR.GFX.SETPIXEL
|
||||
jsr GoDevGFX
|
||||
.2 >PUSHW L.SetPixel.CB
|
||||
>LIBCALL hLIBGUI,LIBGUI.Draw
|
||||
|
||||
lda SetPixel.X
|
||||
clc
|
||||
@ -225,19 +222,10 @@ Destop.Paint lda #S.CB.MODE.C16
|
||||
cmp #16
|
||||
bne .1
|
||||
|
||||
.4
|
||||
>PUSHW L.DrawLine1.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
>PUSHW L.DrawLine2.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
>PUSHW L.DrawLine3.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
>PUSHW L.DrawLine4.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
>PUSHW L.DrawLine5.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
>PUSHW L.DrawLine6.CB
|
||||
>LIBCALL hLibGFX,LIBGFX.DrawLine
|
||||
.4
|
||||
|
||||
>PUSHW L.DrawLines.CB
|
||||
>LIBCALL hLIBGUI,LIBGUI.Draw
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -247,34 +235,45 @@ GoDevGFX jmp $ffff
|
||||
GoDevMouse jmp $ffff
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
DEVNAME.GFX >PSTR "GFX"
|
||||
DEVNAME.MOUSE >PSTR "MOU1"
|
||||
LIBGFX >PSTR "libgui.o"
|
||||
DEVNAME.GFX >CSTR "GFX"
|
||||
DEVNAME.MOUSE >CSTR "MOU1"
|
||||
LIBGUI >CSTR "libgui.o"
|
||||
MSG.INIT >CSTR "DESKTOP:Init...\r\n"
|
||||
hLibGFX .BS 1
|
||||
hLIBGUI .BS 1
|
||||
hDevGFX .BS 1
|
||||
hDevMouse .BS 1
|
||||
MouseClamp .BS 8
|
||||
MouseData .BS 5
|
||||
*--------------------------------------
|
||||
SetPixel.CB .BS 1 hDC
|
||||
Rect.CB .DA #S.CB.CMD.FILLRECT
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.C16
|
||||
.DA #13
|
||||
.DA 30
|
||||
.DA 30
|
||||
.DA 530
|
||||
.DA 160
|
||||
.DA #0
|
||||
*--------------------------------------
|
||||
SetPixel.CB .DA #S.CB.CMD.SETPIXEL
|
||||
SetPixel.OP .BS 1
|
||||
SetPixel.Mode .BS 1
|
||||
SetPixel.Color .BS 1
|
||||
SetPixel.X .BS 2
|
||||
SetPixel.Y .BS 2
|
||||
*--------------------------------------
|
||||
DrawLine1.CB .BS 1 hDC
|
||||
.DA #0
|
||||
*--------------------------------------
|
||||
DrawLines.CB .DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.C16
|
||||
.DA #1
|
||||
.DA 80
|
||||
.DA 191
|
||||
.DA 80+191
|
||||
.DA 0
|
||||
.DA 191+191
|
||||
*--------------------------------------
|
||||
DrawLine2.CB .BS 1 hDC
|
||||
.DA #0
|
||||
.DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.MONO
|
||||
.DA #1
|
||||
.DA 90
|
||||
@ -282,8 +281,8 @@ DrawLine2.CB .BS 1 hDC
|
||||
.DA 140
|
||||
.DA 191
|
||||
*--------------------------------------
|
||||
DrawLine3.CB .BS 1 hDC
|
||||
.DA #0
|
||||
.DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.MONO
|
||||
.DA #1
|
||||
.DA 100
|
||||
@ -291,8 +290,8 @@ DrawLine3.CB .BS 1 hDC
|
||||
.DA 100+191
|
||||
.DA 191
|
||||
*--------------------------------------
|
||||
DrawLine4.CB .BS 1 hDC
|
||||
.DA #0
|
||||
.DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.MONO
|
||||
.DA #1
|
||||
.DA 110
|
||||
@ -300,8 +299,8 @@ DrawLine4.CB .BS 1 hDC
|
||||
.DA 559
|
||||
.DA 191
|
||||
*--------------------------------------
|
||||
DrawLine5.CB .BS 1 hDC
|
||||
.DA #0
|
||||
.DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.MONO
|
||||
.DA #1
|
||||
.DA 28
|
||||
@ -309,14 +308,22 @@ DrawLine5.CB .BS 1 hDC
|
||||
.DA 28
|
||||
.DA 191
|
||||
*--------------------------------------
|
||||
DrawLine6.CB .BS 1 hDC
|
||||
.DA #0
|
||||
.DA #S.CB.CMD.DRAWLINE
|
||||
.DA #S.CB.OP.ORA
|
||||
.DA #S.CB.MODE.MONO
|
||||
.DA #1
|
||||
.DA 84
|
||||
.DA 0
|
||||
.DA 84
|
||||
.DA 191
|
||||
*--------------------------------------
|
||||
.DA #0
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
DS.END
|
||||
.ED
|
||||
MAN
|
||||
SAVE /A2OSX.SRC/SBIN/GUI.S
|
||||
ASM
|
||||
|
Loading…
Reference in New Issue
Block a user