A2osX/LIB/LIBGUI.S.SYSBAR.txt
2022-11-02 07:54:30 +01:00

145 lines
2.3 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

NEW
AUTO 3,1
*--------------------------------------
SYSBUT.Enter bit WND.SYSBAR.bSysBut
bmi .8
sec
ror WND.SYSBAR.bSysBut
jsr CB.GetBuf
bcs .9
jsr SYSBAR.ShowSysBut
>LDYA L.WND.SysBar
jsr CB.FlushBufToYA
>PUSHW L.MENU.Sys
>PUSHW WND.SysBar+S.OBJ.X1
>PUSHW WND.SysBar+S.OBJ.Y1
jsr MENU.New
bcs .9
jmp MENU.Draw
.8 clc
.9 rts
*--------------------------------------
SYSBUT.Leave bit WND.SYSBAR.bSysBut
bpl .8
stz WND.SYSBAR.bSysBut
jsr CB.GetBuf
bcs .9
jsr SYSBAR.ShowSysBut
>LDYA L.WND.SysBar
jmp CB.FlushBufToYA
.8 clc
.9 rts
*--------------------------------------
SYSBAR.Show jsr CB.GetBuf
bcs .9
jsr SYSBAR.ShowSysBut
jsr SYSBAR.ShowSysWNDs
jsr SYSBAR.ShowSysClk
>LDYA L.WND.SysBar
jmp CB.FlushBufToYA
.9 rts
*--------------------------------------
SYSBAR.ShowSysBut
lda PREFS.SysBarColor
bit WND.SysBar.bSysBut
bpl .1
eor #$ff
.1 jsr CB.FillRectMonoA
ldx #S.RECT-1
.2 lda RECT.SysBut,x
sta CB.Cache+S.CB.X1,x
dex
bpl .2
jsr CB.Cache2CBBuf
lda CB.Cache+S.CB.X1
clc
adc #4
sta CB.Cache+S.CB.X1
lda CB.Cache+S.CB.X1+1
adc #0
sta CB.Cache+S.CB.X1+1
inc CB.Cache+S.CB.Y1
bne .30
inc CB.Cache+S.CB.Y1+1
.30 ldx #BM.ID.APPLE
jsr DRAW.xBM
lda CB.Cache+S.CB.X1
clc
adc #20
sta CB.Cache+S.CB.X1
lda CB.Cache+S.CB.X1+1
adc #0
sta CB.Cache+S.CB.X1+1
inc CB.Cache+S.CB.Y1
bne .31
inc CB.Cache+S.CB.Y1+1
.31 lda WND.SysBar.bSysBut
asl
>LDYA L.WND.SysBar.2osX
ldx hSYSFON
jmp DRAW.YAText
*--------------------------------------
SYSBAR.ShowSysWNDs
lda PREFS.SysBarColor
jsr CB.FillRectMonoA
ldx #S.RECT-1
.1 lda RECT.SysWNDs,x
sta CB.Cache+S.CB.X1,x
dex
bpl .1
jmp CB.Cache2CBBuf
*--------------------------------------
SYSBAR.ShowSysClk
lda PREFS.SysBarColor
jsr CB.FillRectMonoA
ldx #S.RECT-1
.1 lda RECT.SysClk,x
sta CB.Cache+S.CB.X1,x
dex
bpl .1
jmp CB.Cache2CBBuf
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.s.sysbar
LOAD usr/src/lib/libgui.s
ASM