2017-11-29 16:28:13 +00:00
|
|
|
|
NEW
|
2019-07-30 08:57:25 +00:00
|
|
|
|
AUTO 3,1
|
2017-11-29 16:28:13 +00:00
|
|
|
|
*--------------------------------------
|
2017-12-04 07:18:24 +00:00
|
|
|
|
UpdateCursor lda CUR.T
|
|
|
|
|
cmp #CUR.T.WAIT
|
2019-01-08 16:29:26 +00:00
|
|
|
|
bcc SetCursor.RTS
|
2017-12-04 07:18:24 +00:00
|
|
|
|
inc
|
|
|
|
|
inc
|
|
|
|
|
cmp #CUR.T.WAIT+12
|
2019-01-08 16:29:26 +00:00
|
|
|
|
bne SetCursor
|
2017-12-04 07:18:24 +00:00
|
|
|
|
lda #CUR.T.WAIT
|
|
|
|
|
*--------------------------------------
|
2017-11-30 16:33:33 +00:00
|
|
|
|
* Set X2,Y2,SrcPtr
|
2017-11-29 16:28:13 +00:00
|
|
|
|
*--------------------------------------
|
2019-01-08 16:29:26 +00:00
|
|
|
|
SetCursor sta CUR.T
|
2017-12-01 06:52:55 +00:00
|
|
|
|
|
|
|
|
|
lda CUR.bVisible
|
2017-11-30 16:33:33 +00:00
|
|
|
|
bpl .1
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-12-01 15:53:29 +00:00
|
|
|
|
jsr HideCursor.I
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
.1 ldx CUR.T
|
|
|
|
|
lda L.Cursors,x
|
|
|
|
|
sta CUR.CB+S.CB.SrcPtr
|
|
|
|
|
sta ZPPtr1
|
|
|
|
|
lda L.Cursors+1,x
|
|
|
|
|
sta CUR.CB+S.CB.SrcPtr+1
|
|
|
|
|
sta ZPPtr1+1
|
2020-09-04 15:21:15 +00:00
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
ldy #S.BM.W
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda (ZPPtr1),y
|
|
|
|
|
sta CUR.CB+S.CB.SrcW
|
2020-09-04 15:21:15 +00:00
|
|
|
|
|
|
|
|
|
clc
|
|
|
|
|
adc CUR.CB+S.CB.X1
|
|
|
|
|
pha
|
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
iny
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda (ZPPtr1),y
|
|
|
|
|
sta CUR.CB+S.CB.SrcW+1
|
2020-09-04 15:21:15 +00:00
|
|
|
|
adc CUR.CB+S.CB.X1+1
|
|
|
|
|
tax
|
|
|
|
|
pla
|
|
|
|
|
bne .2
|
|
|
|
|
|
|
|
|
|
dex
|
|
|
|
|
|
|
|
|
|
.2 dec
|
|
|
|
|
sta CUR.CB+S.CB.X2
|
|
|
|
|
stx CUR.CB+S.CB.X2+1
|
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
iny S.BM.H
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda (ZPPtr1),y
|
|
|
|
|
sta CUR.CB+S.CB.SrcH
|
2020-09-04 15:21:15 +00:00
|
|
|
|
|
|
|
|
|
clc
|
|
|
|
|
adc CUR.CB+S.CB.Y1
|
|
|
|
|
pha
|
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
iny
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda (ZPPtr1),y
|
|
|
|
|
sta CUR.CB+S.CB.SrcH+1
|
2020-09-04 15:21:15 +00:00
|
|
|
|
adc CUR.CB+S.CB.Y1+1
|
|
|
|
|
tax
|
|
|
|
|
pla
|
|
|
|
|
bne .3
|
|
|
|
|
|
|
|
|
|
dex
|
|
|
|
|
|
|
|
|
|
.3 dec
|
|
|
|
|
sta CUR.CB+S.CB.Y2
|
|
|
|
|
stx CUR.CB+S.CB.Y2+1
|
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
lda CUR.bVisible
|
2017-12-01 15:53:29 +00:00
|
|
|
|
bmi ShowCursor.I
|
2017-11-30 16:33:33 +00:00
|
|
|
|
|
2019-01-08 16:29:26 +00:00
|
|
|
|
SetCursor.RTS rts
|
2017-11-29 16:28:13 +00:00
|
|
|
|
*--------------------------------------
|
2017-11-30 16:33:33 +00:00
|
|
|
|
* Set DestX,DestY
|
2017-11-29 16:28:13 +00:00
|
|
|
|
*--------------------------------------
|
2017-12-01 06:52:55 +00:00
|
|
|
|
SetCursorPos >PULLW ZPPtr1
|
2017-11-30 16:33:33 +00:00
|
|
|
|
lda CUR.bVisible
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
bpl .1
|
2017-12-01 15:53:29 +00:00
|
|
|
|
jsr HideCursor.I
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-12-01 15:53:29 +00:00
|
|
|
|
.1 ldy #S.POINT-1
|
2017-11-29 16:28:13 +00:00
|
|
|
|
|
2019-10-03 06:25:27 +00:00
|
|
|
|
.2 lda (ZPPtr1),y
|
2017-11-30 16:33:33 +00:00
|
|
|
|
sta CUR.Pos,y
|
|
|
|
|
dey
|
|
|
|
|
bpl .2
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-11-30 16:33:33 +00:00
|
|
|
|
lda CUR.bVisible
|
2017-12-01 15:53:29 +00:00
|
|
|
|
bmi ShowCursor.I
|
2017-11-30 16:33:33 +00:00
|
|
|
|
|
2017-11-29 16:28:13 +00:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2017-11-30 16:33:33 +00:00
|
|
|
|
HideCursor lda CUR.bVisible
|
|
|
|
|
bpl .9
|
2017-12-01 15:53:29 +00:00
|
|
|
|
jsr HideCursor.I
|
2017-11-30 16:33:33 +00:00
|
|
|
|
stz CUR.bVisible
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
ShowCursor lda CUR.bVisible
|
|
|
|
|
bmi .9
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-12-01 15:53:29 +00:00
|
|
|
|
jsr ShowCursor.I
|
|
|
|
|
dec CUR.bVisible
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
HideCursor.I lda #S.CB.OP.RESTORE
|
2017-12-04 07:18:24 +00:00
|
|
|
|
bra DrawCursor.I
|
2017-12-01 15:53:29 +00:00
|
|
|
|
*--------------------------------------
|
2020-09-04 15:21:15 +00:00
|
|
|
|
ShowCursor.I sta CUR.CB+S.CB.OP
|
2017-12-01 15:53:29 +00:00
|
|
|
|
ldx CUR.T
|
|
|
|
|
lda CUR.Pos+S.POINT.X
|
|
|
|
|
sec
|
|
|
|
|
sbc CUR.HotPoints,x
|
2020-09-04 15:21:15 +00:00
|
|
|
|
sta CUR.CB+S.CB.X1
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda CUR.Pos+S.POINT.X+1
|
|
|
|
|
sbc #0
|
2020-09-04 15:21:15 +00:00
|
|
|
|
sta CUR.CB+S.CB.X1+1
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda CUR.Pos+S.POINT.Y
|
|
|
|
|
sec
|
|
|
|
|
sbc CUR.HotPoints+1,x
|
2020-09-04 15:21:15 +00:00
|
|
|
|
sta CUR.CB+S.CB.Y1
|
2017-12-01 15:53:29 +00:00
|
|
|
|
lda CUR.Pos+S.POINT.Y+1
|
|
|
|
|
sbc #0
|
2020-09-04 15:21:15 +00:00
|
|
|
|
sta CUR.CB+S.CB.Y1+1
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2020-09-04 15:21:15 +00:00
|
|
|
|
lda #S.CB.OP.ORA+S.CB.OP.MASK+S.CB.OP.SAVE
|
|
|
|
|
|
|
|
|
|
DrawCursor.I sta CUR.CB+S.CB.OP
|
|
|
|
|
|
2020-09-06 12:24:04 +00:00
|
|
|
|
>LDYA L.WND.Screen
|
2019-01-10 16:26:58 +00:00
|
|
|
|
jsr OBJ.Get
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2019-01-10 16:26:58 +00:00
|
|
|
|
>LDYA L.CUR.CB
|
|
|
|
|
jsr CLIP.YA
|
|
|
|
|
bcs .9
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2020-09-04 15:21:15 +00:00
|
|
|
|
jmp GFXWrite.CB
|
2020-09-02 15:47:23 +00:00
|
|
|
|
|
2017-12-04 07:18:24 +00:00
|
|
|
|
.9 rts
|
2017-11-30 16:33:33 +00:00
|
|
|
|
*--------------------------------------
|
2017-11-29 16:28:13 +00:00
|
|
|
|
MAN
|
2020-06-30 15:32:23 +00:00
|
|
|
|
SAVE usr/src/lib/libgui.s.cur
|
|
|
|
|
LOAD usr/src/lib/libgui.s
|
2017-11-29 16:28:13 +00:00
|
|
|
|
ASM
|