A2osX/LIB/LIBGUI.S.SYSBAR.txt

297 lines
4.9 KiB
Plaintext
Raw Normal View History

2020-10-06 15:23:40 +00:00
NEW
AUTO 3,1
*--------------------------------------
2020-10-08 15:33:38 +00:00
SYSBAR.Enter ldy #S.MOUSE.X1
lda (ZPPtr1),y
cmp WND.SysBar.A2osX.X2
iny
lda (ZPPtr1),y
sbc WND.SysBar.A2osX.X2+1
bcs .8
sec
2020-10-06 15:23:40 +00:00
ror WND.SYSBAR.bA2osX
jsr GetCBBuf
bcs .9
jsr SYSBAR.Show.A2osX
2020-10-08 15:33:38 +00:00
>LDYA L.WND.SysBar
2020-10-09 15:28:01 +00:00
jsr DrawCBPtrToYA1
>PUSHW WND.SysBar+S.OBJ.X1
>PUSHW WND.SysBar+S.OBJ.Y1
2020-10-15 06:16:45 +00:00
>PUSHW L.RECT.SysBut
2020-10-09 15:28:01 +00:00
>PUSHW L.MENU.Sys
jsr MENU.New
bcs .9
jsr MENU.Show
2020-10-06 15:23:40 +00:00
2020-10-08 15:33:38 +00:00
.8 clc
2020-10-06 15:23:40 +00:00
.9 rts
*--------------------------------------
SYSBAR.Leave bit WND.SYSBAR.bA2osX
bpl .8
stz WND.SYSBAR.bA2osX
jsr GetCBBuf
bcs .9
jsr SYSBAR.Show.A2osX
>LDYA L.WND.SysBar
jmp DrawCBPtrToYA1
.8 clc
.9 rts
*--------------------------------------
SYSBAR.Show jsr GetCBBuf
bcs .9
jsr SYSBAR.Show.A2osX
jsr SYSBAR.Show.W
>LDYA L.WND.SysBar
jmp DrawCBPtrToYA1
.9 rts
*--------------------------------------
SYSBAR.Show.A2osX
lda #S.CB.CMD.FILLRECT
jsr PutA2CBBuf
lda #S.CB.OP.SET
jsr PutA2CBBuf
lda #S.CB.M.MONO
jsr PutA2CBBuf
lda PREFS.SYSBARCOLOR
bit WND.SysBar.bA2osX
bpl .1
eor #$ff
.1 jsr PutA2CBBuf
lda #0 X1
jsr PutA2CBBuf
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1+1
jsr PutA2CBBuf
lda WND.SysBar.A2osX.X2
jsr PutA2CBBuf
lda WND.SysBar.A2osX.X2+1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2+1
jsr PutA2CBBuf
2020-10-08 15:33:38 +00:00
lda WND.SysBar+S.OBJ.X1
clc
adc #4
sta DX
lda WND.SysBar+S.OBJ.X1+1
adc #0
sta DX+1
lda WND.SysBar+S.OBJ.Y1
clc
adc #1
sta DY
lda WND.SysBar+S.OBJ.Y1+1
adc #0
sta DY+1
>LDYA L.BM.Apple
jsr DRAW.YABMAtDXDY
lda WND.SysBar+S.OBJ.X1
clc
adc #21
sta DX
lda WND.SysBar+S.OBJ.X1+1
adc #0
sta DX+1
inc DY
bne .2
inc DY+1
.2 lda WND.SysBar.bA2osX
asl
>LDYA L.WND.SysBar.2osX
ldx hSYSFON
jsr DRAW.YATextAtDXDY
2020-10-06 15:23:40 +00:00
rts
*--------------------------------------
SYSBAR.Show.W lda #S.CB.CMD.FILLRECT
jsr PutA2CBBuf
lda #S.CB.OP.SET
jsr PutA2CBBuf
lda #S.CB.M.MONO
jsr PutA2CBBuf
lda PREFS.SYSBARCOLOR
jsr PutA2CBBuf
lda WND.SysBar.W.X1
jsr PutA2CBBuf
lda WND.SysBar.W.X1+1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1+1
jsr PutA2CBBuf
lda WND.SysBar.W.X2
jsr PutA2CBBuf
lda WND.SysBar.W.X2+1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2+1
jmp PutA2CBBuf
*--------------------------------------
2020-10-12 06:04:19 +00:00
DRAW.YABMAtDXDY >STYA ZPBMPtr Src BM
2020-10-08 15:33:38 +00:00
lda #S.CB.CMD.BITBLT
jsr PutA2CBBuf
lda #S.CB.OP.MASK+S.CB.OP.ORA+S.CB.OP.COLOR
jsr PutA2CBBuf
lda #S.CB.M.C16
jsr PutA2CBBuf
lda #0
jsr PutA2CBBuf
ldx #4
ldy #0
.1 lda DX,y S.CB.X1,S.CB.Y1
jsr PutA2CBBuf
iny
dex
bne .1
lda #0 S.CB.X2
jsr PutA2CBBuf
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.Y2
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcX
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcY
jsr PutA2CBBuf
ldx #4
ldy #S.BM.W
2020-10-12 06:04:19 +00:00
.2 lda (ZPBMPtr),y S.CB.SrcW,S.CB.SrcH
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
iny
dex
bne .2
2020-10-12 06:04:19 +00:00
lda ZPBMPtr S.CB.SrcPtr
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
2020-10-12 06:04:19 +00:00
lda ZPBMPtr+1
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
lda #0 S.CB.DstPtr
jsr PutA2CBBuf
jsr PutA2CBBuf
rts
*--------------------------------------
DRAW.YATextAtDXDY
2020-10-12 06:04:19 +00:00
pha Src Text
phy
2020-10-08 15:33:38 +00:00
lda #S.CB.CMD.DRAWTEXT2
jsr PutA2CBBuf
lda #0
ror
eor #$80
ora #S.CB.OP.SET
* lda #S.CB.OP.XOR
jsr PutA2CBBuf
lda #S.CB.M.MONO
jsr PutA2CBBuf
txa
jsr PutA2CBBuf S.CB.hFont
ldy #0
ldx #4
2020-10-12 06:04:19 +00:00
.1 lda DX,y DX,DY -> S.CB.X1,S.CB.Y1
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
iny
dex
bne .1
lda #0
jsr PutA2CBBuf S.CB.X2
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.Y2
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcX
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcY
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcW
jsr PutA2CBBuf
jsr PutA2CBBuf S.CB.SrcH
jsr PutA2CBBuf
2020-10-12 06:04:19 +00:00
jsr PutA2CBBuf S.CB.SrcPtr
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
2020-10-12 06:04:19 +00:00
jsr PutA2CBBuf S.CB.DstPtr
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf
2020-10-12 06:04:19 +00:00
pla
2020-10-08 15:33:38 +00:00
jsr PutA2CBBuf S.CB.TxtPtr
2020-10-12 06:04:19 +00:00
pla
jmp PutA2CBBuf
2020-10-08 15:33:38 +00:00
*--------------------------------------
2020-10-06 15:23:40 +00:00
MAN
SAVE usr/src/lib/libgui.s.sysbar
LOAD usr/src/lib/libgui.s
ASM