A2osX/LIB/LIBGUI.S.txt

126 lines
2.6 KiB
Plaintext
Raw Normal View History

PR#3
PREFIX /A2OSX.BUILD
NEW
INC 1
AUTO 6
.LIST OFF
.OP 65C02
.OR $2000
2017-11-15 16:29:23 +00:00
.TF /A2OSX.BUILD/LIB/LIBGUI.O
*--------------------------------------
.INB /A2OSX.BUILD/INC/MACROS.I
.INB /A2OSX.BUILD/INC/A2OSX.I
2017-11-15 16:29:23 +00:00
.INB /A2OSX.BUILD/INC/LIBGUI.I
*--------------------------------------
.MA SWAP16
lda ]1
ldx ]2
stx ]1
sta ]2
lda ]1+1
ldx ]2+1
stx ]1+1
sta ]2+1
.EM
.MA NOT16
sec
lda #0
sbc ]1
sta ]1
lda #0
sbc ]1+1
sta ]1+1
.EM
.MA SCMPAX
sec
sbc ]1
txa
sbc ]1+1
bvc :1
eor #$80
:1 .EQ *
.EM
*--------------------------------------
ZPDCPtr .EQ ZPLIB+2
2017-11-15 16:29:23 +00:00
ZPCmdPtr .EQ ZPLIB+4
2016-06-15 06:21:42 +00:00
*--------------------------------------
* File Header (16 Bytes)
*--------------------------------------
CS.START cld
jmp (.1,x)
.DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1
.DA 0
.DA CS.END-CS.START
.DA 0
.DA 0
.DA 0
*--------------------------------------
* Relocation Table
*--------------------------------------
.1 .DA LIB.LOAD
.DA LIB.UNLOAD
J.Cmds .DA InitGUI.A
.DA CloseGUI J.Cmds-12 !!!
2017-11-15 16:29:23 +00:00
.DA Draw
.DA SetCursor.A
.DA SetCursorPos
2016-06-15 15:58:45 +00:00
.DA HideCursor
.DA ShowCursor
.DA DrawLine
L.CB.Cache .DA CB.Cache
.DA 0
*--------------------------------------
LIB.LOAD
LIB.UNLOAD clc
rts
2016-06-15 06:21:42 +00:00
*--------------------------------------
InitGUI.A sta GC.Screen+S.GC.hDev
2017-11-15 16:29:23 +00:00
>SYSCALL GetDevByID.A
>STYA GoDev.Jmp+1
2016-06-15 06:21:42 +00:00
clc
rts
*--------------------------------------
2017-11-15 16:29:23 +00:00
CloseGUI
stz GC.Screen+S.GC.hDev
2016-06-15 06:21:42 +00:00
sec
rts
*--------------------------------------
2017-11-15 16:29:23 +00:00
GoDev >LDYA L.CB.Cache
GoDev.YA ldx #DEVMGR.WRITE
GoDev.Jmp jmp $ffff
*--------------------------------------
.INB /A2OSX.SRC/LIB/LIBGUI.S.DRAW
.INB /A2OSX.SRC/LIB/LIBGUI.S.CLIP
.INB /A2OSX.SRC/LIB/LIBGUI.S.CUR
*--------------------------------------
CS.END
2016-06-15 06:21:42 +00:00
*--------------------------------------
DX .BS 2
DY .BS 2
IY .BS 1
IE .BS 2
D .BS 2
INE .BS 2
Counter .BS 2
ClipLine.P1 .BS 1
ClipLine.P2 .BS 1
*--------------------------------------
2017-11-15 16:29:23 +00:00
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
2017-11-20 06:59:59 +00:00
.DA S.CB.DstPtr+1 GETRECTBUFSIZE
2017-11-15 16:29:23 +00:00
.DA S.CB.Y2+1 DRAWLINE
*--------------------------------------
GC.Screen .BS S.GC
GC.Cache .BS S.GC
CB.Cache .BS S.CB
*--------------------------------------
MAN
2017-11-14 16:57:34 +00:00
SAVE /A2OSX.SRC/LIB/LIBGUI.S
ASM