mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-17 22:29:44 +00:00
Kernel 0.94
This commit is contained in:
parent
78e8988b94
commit
8f4e953ea2
Binary file not shown.
|
@ -65,6 +65,7 @@ LBUF.DrawAtY lda BASEL,y setup line Base Ptr
|
|||
lda CB.Cache+S.CB.OP
|
||||
|
||||
.3 and #$F
|
||||
beq .8
|
||||
tax
|
||||
jmp (J.LBUF.DrawAtY,x)
|
||||
|
||||
|
@ -87,7 +88,7 @@ LBUF.DrawAtY lda BASEL,y setup line Base Ptr
|
|||
inx
|
||||
bcc .5
|
||||
|
||||
rts
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
LBUF.DrawAtY.SET
|
||||
LBUF.DrawAtY.AND.SET
|
||||
|
|
|
@ -336,14 +336,14 @@ J.Cmds .DA SETPIXEL
|
|||
.DA BITBLT
|
||||
.DA GETRECTBUFSIZE
|
||||
*--------------------------------------
|
||||
J.LBUF.DrawAtY .DA LBUF.DrawAtY.XOR
|
||||
J.LBUF.DrawAtY .DA $ffff
|
||||
.DA LBUF.DrawAtY.XOR
|
||||
.DA LBUF.DrawAtY.SET
|
||||
.DA LBUF.DrawAtY.ORA
|
||||
.DA $ffff
|
||||
.DA LBUF.DrawAtY.AND.XOR
|
||||
.DA LBUF.DrawAtY.AND.SET
|
||||
.DA LBUF.DrawAtY.AND.ORA
|
||||
* .DA $ffff
|
||||
L.Color.Pixels .DA Color.Pixels
|
||||
.DA 0 end or relocation
|
||||
*--------------------------------------
|
||||
|
|
|
@ -52,9 +52,9 @@ S.CB.CMD.DRAWLINE .EQ 20
|
|||
S.CB.CMD.DRAWTEXT2 .EQ 22
|
||||
S.CB.CMD.OSD .EQ 128
|
||||
S.CB.OP .EQ 1
|
||||
S.CB.OP.XOR .EQ 0 screen EOR bitmap -> Screen
|
||||
S.CB.OP.SET .EQ 2 replace screen with bitmap
|
||||
S.CB.OP.ORA .EQ 4 combine screen & bitmap -> Screen
|
||||
S.CB.OP.XOR .EQ 2 screen EOR bitmap -> Screen
|
||||
S.CB.OP.SET .EQ 4 replace screen with bitmap
|
||||
S.CB.OP.ORA .EQ 6 combine screen & bitmap -> Screen
|
||||
S.CB.OP.MASK .EQ %00001000 Apply BitMap mask before painting
|
||||
S.CB.OP.SAVE .EQ %00010000 Save Screen to DstPtr before painting
|
||||
S.CB.OP.RESTORE .EQ %00100000 Restore Screen From DstPtr
|
||||
|
|
|
@ -159,18 +159,20 @@ S.MITEM.F.SUBMENU .EQ 6
|
|||
S.MITEM.S .EQ 2
|
||||
S.MITEM.S.CHECKED .EQ %01000000
|
||||
S.MITEM.S.DISABLED .EQ %10000000
|
||||
S.MITEM.pICON .EQ 3
|
||||
S.MITEM.pMENU .EQ 5
|
||||
S.MITEM.KEYMOD .EQ 7
|
||||
S.MITEM.ID .EQ 3
|
||||
S.MITEM.pICON .EQ 4
|
||||
S.MITEM.pMENU .EQ 6
|
||||
S.MITEM.KEYMOD .EQ 6
|
||||
S.MITEM.KEYMOD.CA .EQ 2
|
||||
S.MITEM.KEYMOD.OA .EQ 4
|
||||
S.MITEM.KEYMOD.CTRL .EQ 8
|
||||
S.MITEM.KEY .EQ 8
|
||||
S.MITEM.ID .EQ 9
|
||||
S.MITEM.KEY .EQ 7
|
||||
|
||||
S.MITEM.TEXT .EQ 10 CSTR
|
||||
S.MITEM.TEXT .EQ 8 CSTR
|
||||
* ...
|
||||
*--------------------------------------
|
||||
BM.ID.APPLE .EQ 2
|
||||
*--------------------------------------
|
||||
S.BUT.F.DISABLED .EQ %10000000
|
||||
*
|
||||
S.BUT.S.PUSHED .EQ %10000000
|
||||
|
|
|
@ -84,7 +84,7 @@ MENU.MBarInit >STYA ZPMENUPtr
|
|||
.8 lda #$80
|
||||
|
||||
ldy #S.MBAR.S
|
||||
sta (ZPPtr1),y
|
||||
sta (ZPMENUPtr),y
|
||||
|
||||
.80 clc
|
||||
rts
|
||||
|
@ -138,12 +138,15 @@ MENU.New >LDYAI S.MENU
|
|||
|
||||
MENU.New.RTS rts
|
||||
*--------------------------------------
|
||||
* ----------------------------------------------
|
||||
* |Icon ChkMrk "Menu Item" KEYMOD1-KEYMOD2-KEY>|
|
||||
* ----------------------------------------------
|
||||
MENU.Show >SYSCALL2 GetMemPtr
|
||||
>STYA ZPMENUPtr
|
||||
|
||||
jsr GetCBBuf
|
||||
bcs MENU.New.RTS
|
||||
>DEBUG
|
||||
|
||||
ldy #S.MENU.MITEMS
|
||||
lda (ZPMENUPtr),y
|
||||
sta ZPPtr1
|
||||
|
@ -151,7 +154,8 @@ MENU.Show >SYSCALL2 GetMemPtr
|
|||
lda (ZPMENUPtr),y
|
||||
sta ZPPtr1+1
|
||||
|
||||
* |Icon ChkMrk "Menu Item" KEYMOD1-KEYMOD2-KEY > |
|
||||
stz DX
|
||||
stz DX+1
|
||||
|
||||
stz IY Icon Margin W
|
||||
|
||||
|
@ -160,10 +164,6 @@ MENU.Show >SYSCALL2 GetMemPtr
|
|||
|
||||
stz INE Max Mod-Key W
|
||||
|
||||
lda #12 2px Borders+5 LMARGIN (Checked) +5 RMARGIN (SubMenu)
|
||||
sta DX
|
||||
stz DX+1
|
||||
|
||||
lda #2 2px Borders
|
||||
sta DY Menu H
|
||||
stz DY+1
|
||||
|
@ -188,8 +188,15 @@ MENU.Show >SYSCALL2 GetMemPtr
|
|||
inc ZPPtr1+1
|
||||
bra .1
|
||||
|
||||
.3 lda DX
|
||||
.3 lda #12 2px Borders+5 LMARGIN (Checked) +5 RMARGIN (SubMenu)
|
||||
clc
|
||||
adc IY
|
||||
sta DX
|
||||
bcc .30
|
||||
inc DX+1
|
||||
|
||||
.30 lda DX
|
||||
sec 1px sep
|
||||
adc IE Text W
|
||||
sta DX
|
||||
|
||||
|
@ -198,27 +205,42 @@ MENU.Show >SYSCALL2 GetMemPtr
|
|||
sta DX+1
|
||||
|
||||
lda DX
|
||||
clc
|
||||
sec 1px sep
|
||||
adc INE Mod-Key W
|
||||
sta DX
|
||||
bcc .4
|
||||
|
||||
inc DX+1
|
||||
|
||||
.4 ldy #S.OBJ.Y1
|
||||
lda (ZPMENUPtr),y
|
||||
clc
|
||||
adc DY
|
||||
tax
|
||||
|
||||
.4 ldy #S.OBJ.W
|
||||
sta (ZPMENUPtr),y
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
adc DY+1
|
||||
lda DX+1
|
||||
sta (ZPMENUPtr),y
|
||||
|
||||
iny #S.OBJ.H
|
||||
|
||||
lda DY
|
||||
sta (ZPMENUPtr),y
|
||||
tax
|
||||
iny
|
||||
lda DY+1
|
||||
sta (ZPMENUPtr),y
|
||||
pha
|
||||
txa
|
||||
ldy #S.OBJ.Y1
|
||||
clc
|
||||
adc (ZPMENUPtr),y
|
||||
tax
|
||||
pla
|
||||
iny
|
||||
adc (ZPMENUPtr),y
|
||||
|
||||
cpx WND.Screen+S.OBJ.H
|
||||
sbc WND.Screen+S.OBJ.H+1
|
||||
bcc .5
|
||||
|
||||
dey
|
||||
ldy #S.OBJ.Y1
|
||||
|
||||
lda (ZPMENUPtr),y
|
||||
* sec
|
||||
|
@ -231,7 +253,48 @@ MENU.Show >SYSCALL2 GetMemPtr
|
|||
sbc DY+1
|
||||
sta (ZPMENUPtr),y
|
||||
|
||||
.5 jsr MENU.Show.Borders
|
||||
.5 >LDYA ZPMENUPtr
|
||||
jsr OBJ.SetX2Y2
|
||||
|
||||
jsr MENU.Show.Borders
|
||||
|
||||
ldy #S.MENU.MITEMS
|
||||
lda (ZPMENUPtr),y
|
||||
sta ZPPtr1
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
sta ZPPtr1+1
|
||||
|
||||
ldy #S.OBJ.Y1
|
||||
lda (ZPMENUPtr),y
|
||||
clc
|
||||
adc #1
|
||||
sta DY
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
adc #0
|
||||
sta DY+1
|
||||
|
||||
.6 lda (ZPPtr1)
|
||||
beq .8
|
||||
|
||||
jsr MENU.Show.Item
|
||||
|
||||
lda DY
|
||||
clc
|
||||
adc SYSFON.H
|
||||
sta DY
|
||||
bcc .7
|
||||
|
||||
inc DY+1
|
||||
|
||||
.7 lda (ZPPtr1)
|
||||
clc
|
||||
adc ZPPtr1
|
||||
sta ZPPtr1
|
||||
bcc .6
|
||||
inc ZPPtr1+1
|
||||
bra .6
|
||||
|
||||
.8 >LDYA L.WND.Screen
|
||||
jmp DrawCBPtrToYA1
|
||||
|
@ -249,31 +312,228 @@ MENU.Show.GetW ldy #S.MITEM.F
|
|||
ora (ZPPtr1),y
|
||||
beq .1
|
||||
|
||||
lda #16
|
||||
lda #17 Reserve space for Icon W + 1px SEP
|
||||
sta IY
|
||||
|
||||
.1 jsr MENU.GetText
|
||||
ldx hSYSFON
|
||||
jsr FON.GetTextSize
|
||||
|
||||
ldx CB.Cache+S.CB.SrcW
|
||||
cpx IE
|
||||
lda CB.Cache+S.CB.SrcW+1
|
||||
sbc IE+1
|
||||
bcc .2
|
||||
|
||||
stx IE Set Max text W
|
||||
lda CB.Cache+S.CB.SrcW+1
|
||||
sta IE+1
|
||||
|
||||
.2 jsr MENU.GetKeyString
|
||||
beq .8
|
||||
|
||||
>LDYA L.KEYSTRING
|
||||
ldx hSYSFON
|
||||
jsr FON.GetTextSize
|
||||
|
||||
lda CB.Cache+S.CB.SrcW
|
||||
cmp INE
|
||||
bcc .8
|
||||
|
||||
sta INE set Max Mod-key W
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
MENU.Show.Borders
|
||||
lda #S.CB.CMD.FILLRECT
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.OP.SET
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.M.MONO
|
||||
jsr PutA2CBBuf
|
||||
lda PREFS.MENUCOLOR
|
||||
jsr PutA2CBBuf
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.HLINE TOP
|
||||
jsr MENU.Show.Borders.H
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.VLINE LEFT
|
||||
jsr MENU.Show.Borders.H
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.VLINE RIGHT
|
||||
jsr MENU.Show.Borders.H
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.HLINE BOTTOM
|
||||
jsr MENU.Show.Borders.H
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y2
|
||||
jmp MENU.Show.Borders.Y
|
||||
|
||||
MENU.Show.Borders.H
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.OP.SET
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.M.MONO
|
||||
jsr PutA2CBBuf
|
||||
lda PREFS.BORDERCOLOR
|
||||
jmp PutA2CBBuf
|
||||
|
||||
MENU.Show.Borders.Y
|
||||
lda (ZPMENUPtr),y
|
||||
jsr PutA2CBBuf
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
jmp PutA2CBBuf
|
||||
*--------------------------------------
|
||||
MENU.Show.Item ldy #S.MITEM.F
|
||||
lda (ZPPtr1),y
|
||||
cmp #S.MITEM.F.SEP
|
||||
bne .1
|
||||
|
||||
lda #S.CB.CMD.HLINE
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.OP.SET
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.M.MONO
|
||||
jsr PutA2CBBuf
|
||||
lda PREFS.BORDERCOLOR
|
||||
jsr PutA2CBBuf
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
lda SYSFON.H
|
||||
lsr
|
||||
clc
|
||||
adc DY
|
||||
jsr PutA2CBBuf
|
||||
lda DY+1
|
||||
adc #0
|
||||
jsr PutA2CBBuf
|
||||
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
ldy #S.OBJ.Y1
|
||||
jmp MENU.Show.Borders.Y
|
||||
*--------------------------------------
|
||||
.1 ldy #S.OBJ.X1
|
||||
lda (ZPMENUPtr),y
|
||||
|
||||
sec +1px Border
|
||||
|
||||
adc #5 TODO : Checked
|
||||
sta DX
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
adc #0
|
||||
sta DX+1
|
||||
|
||||
jsr MENU.GetIcon
|
||||
beq .2
|
||||
|
||||
jsr DRAW.YABMAtDXDY
|
||||
|
||||
.2 lda DX
|
||||
clc
|
||||
adc IY Icon reserved W
|
||||
sta DX
|
||||
|
||||
.1 lda #S.MITEM.TEXT
|
||||
lda DX+1
|
||||
adc #0
|
||||
sta DX+1
|
||||
|
||||
jsr MENU.GetText
|
||||
|
||||
ldx hSYSFON
|
||||
jsr DRAW.YATextAtDXDY
|
||||
|
||||
jsr MENU.GetKeyString
|
||||
beq .3
|
||||
|
||||
lda DX
|
||||
sec
|
||||
adc IE
|
||||
sta DX
|
||||
lda DX+1
|
||||
adc IE+1
|
||||
sta DX+1
|
||||
|
||||
>LDYA L.KEYSTRING
|
||||
ldx hSYSFON
|
||||
jsr DRAW.YATextAtDXDY
|
||||
|
||||
.3
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
MENU.GetIcon ldy #S.MITEM.pICON+1
|
||||
lda (ZPPtr1),y
|
||||
bne .1
|
||||
|
||||
dey
|
||||
lda (ZPPtr1),y
|
||||
beq .8
|
||||
|
||||
tax
|
||||
ldy L.BMs,x
|
||||
lda L.BMs+1,x NON ZERO
|
||||
.8 rts
|
||||
|
||||
.1 pha
|
||||
dey
|
||||
lda (ZPPtr1),y
|
||||
tay
|
||||
pla NON ZERO
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
MENU.GetText lda #S.MITEM.TEXT
|
||||
clc
|
||||
adc ZPPtr1
|
||||
tay
|
||||
lda ZPPtr1+1
|
||||
adc #0
|
||||
|
||||
ldx hSYSFON
|
||||
jsr FON.GetTextSize
|
||||
|
||||
lda CB.Cache+S.CB.SrcW
|
||||
cmp IE
|
||||
lda CB.Cache+S.CB.SrcW+1
|
||||
sbc IE+1
|
||||
bcc .2
|
||||
|
||||
lda CB.Cache+S.CB.SrcW
|
||||
sta IE
|
||||
lda CB.Cache+S.CB.SrcW+1
|
||||
sta IE+1
|
||||
|
||||
.2 ldx #0
|
||||
rts
|
||||
*--------------------------------------
|
||||
MENU.GetKeyString
|
||||
ldx #0
|
||||
|
||||
ldy #S.MITEM.KEYMOD
|
||||
lda (ZPPtr1),y
|
||||
|
@ -296,7 +556,7 @@ MENU.Show.GetW ldy #S.MITEM.F
|
|||
lda #1
|
||||
sta KEYSTRING,x
|
||||
inx
|
||||
lda #"-"
|
||||
lda #'-'
|
||||
sta KEYSTRING,x
|
||||
inx
|
||||
|
||||
|
@ -308,108 +568,26 @@ MENU.Show.GetW ldy #S.MITEM.F
|
|||
lda #2
|
||||
sta KEYSTRING,x
|
||||
inx
|
||||
lda #"-"
|
||||
lda #'-'
|
||||
sta KEYSTRING,x
|
||||
inx
|
||||
|
||||
.6 iny
|
||||
lda (ZPPtr1),y
|
||||
beq .8
|
||||
beq .7
|
||||
|
||||
sta KEYSTRING,x
|
||||
inx
|
||||
stz KEYSTRING,x
|
||||
|
||||
>LDYA L.KEYSTRING
|
||||
ldx hSYSFON
|
||||
jsr FON.GetTextSize
|
||||
cpy INE
|
||||
bcs .8
|
||||
|
||||
sty INE
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
MENU.Show.Borders
|
||||
lda #S.CB.CMD.HLINE TOP
|
||||
jsr MENU.Show.Borders.H
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.VLINE LEFT
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.VLINE RIGHT
|
||||
jsr MENU.Show.Borders.H
|
||||
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
lda #S.CB.CMD.HLINE BOTTOM
|
||||
jsr MENU.Show.Borders.H
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.X2
|
||||
jsr MENU.Show.Borders.Y
|
||||
|
||||
ldy #S.OBJ.Y2
|
||||
jsr MENU.Show.Borders.Y
|
||||
.7 stz KEYSTRING,x
|
||||
|
||||
txa
|
||||
rts
|
||||
|
||||
MENU.Show.Borders.H
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.OP.SET
|
||||
jsr PutA2CBBuf
|
||||
lda #S.CB.M.MONO
|
||||
jsr PutA2CBBuf
|
||||
lda PREFS.BORDERCOLOR
|
||||
jmp PutA2CBBuf
|
||||
|
||||
MENU.Show.Borders.Y
|
||||
lda (ZPMENUPtr),y
|
||||
jsr PutA2CBBuf
|
||||
iny
|
||||
lda (ZPMENUPtr),y
|
||||
jmp PutA2CBBuf
|
||||
*--------------------------------------
|
||||
MENU.Destroy
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/lib/libgui.s.menu
|
||||
|
|
|
@ -172,7 +172,7 @@ SYSBAR.Show.W lda #S.CB.CMD.FILLRECT
|
|||
lda WND.SysBar+S.OBJ.Y2+1
|
||||
jmp PutA2CBBuf
|
||||
*--------------------------------------
|
||||
DRAW.YABMAtDXDY >STYA ZPPtr1 Src BM
|
||||
DRAW.YABMAtDXDY >STYA ZPBMPtr Src BM
|
||||
|
||||
lda #S.CB.CMD.BITBLT
|
||||
jsr PutA2CBBuf
|
||||
|
@ -211,16 +211,16 @@ DRAW.YABMAtDXDY >STYA ZPPtr1 Src BM
|
|||
|
||||
ldy #S.BM.W
|
||||
|
||||
.2 lda (ZPPtr1),y S.CB.SrcW,S.CB.SrcH
|
||||
.2 lda (ZPBMPtr),y S.CB.SrcW,S.CB.SrcH
|
||||
jsr PutA2CBBuf
|
||||
iny
|
||||
dex
|
||||
bne .2
|
||||
|
||||
lda ZPPtr1 S.CB.SrcPtr
|
||||
lda ZPBMPtr S.CB.SrcPtr
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda ZPPtr1+1
|
||||
lda ZPBMPtr+1
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda #0 S.CB.DstPtr
|
||||
|
@ -230,7 +230,8 @@ DRAW.YABMAtDXDY >STYA ZPPtr1 Src BM
|
|||
rts
|
||||
*--------------------------------------
|
||||
DRAW.YATextAtDXDY
|
||||
>STYA ZPPtr1 Src Text
|
||||
pha Src Text
|
||||
phy
|
||||
|
||||
lda #S.CB.CMD.DRAWTEXT2
|
||||
jsr PutA2CBBuf
|
||||
|
@ -252,7 +253,7 @@ DRAW.YATextAtDXDY
|
|||
ldy #0
|
||||
ldx #4
|
||||
|
||||
.1 lda DX,y S.CB.X1,S.CB.Y1
|
||||
.1 lda DX,y DX,DY -> S.CB.X1,S.CB.Y1
|
||||
jsr PutA2CBBuf
|
||||
iny
|
||||
dex
|
||||
|
@ -277,22 +278,16 @@ DRAW.YATextAtDXDY
|
|||
jsr PutA2CBBuf S.CB.SrcH
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda ZPPtr1 S.CB.SrcPtr
|
||||
jsr PutA2CBBuf S.CB.SrcPtr
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda ZPPtr1+1
|
||||
jsr PutA2CBBuf S.CB.DstPtr
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda #0 S.CB.DstPtr
|
||||
jsr PutA2CBBuf
|
||||
jsr PutA2CBBuf
|
||||
|
||||
lda ZPPtr1
|
||||
pla
|
||||
jsr PutA2CBBuf S.CB.TxtPtr
|
||||
lda ZPPtr1+1
|
||||
jsr PutA2CBBuf
|
||||
|
||||
rts
|
||||
pla
|
||||
jmp PutA2CBBuf
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/lib/libgui.s.sysbar
|
||||
|
|
|
@ -78,6 +78,7 @@ ZPCBPtr .BS 2
|
|||
ZPObjPtr .BS 2
|
||||
ZPWNDPtr .BS 2
|
||||
ZPMENUPtr .BS 2
|
||||
ZPBMPtr .BS 2
|
||||
|
||||
CLIP.Line.P1 .BS 1
|
||||
CLIP.Line.P2 .BS 1
|
||||
|
@ -146,6 +147,7 @@ L.WND.SysBar .DA WND.SysBar
|
|||
L.WND.SysBar.2osX .DA WND.SysBar.2osX
|
||||
L.MENU.Sys .DA MENU.Sys
|
||||
*--------------------------------------
|
||||
L.BMs .EQ *-2
|
||||
L.BM.Apple .DA BM.Apple
|
||||
L.BM.Close .DA BM.Close
|
||||
L.BM.Max .DA BM.Max
|
||||
|
@ -425,10 +427,10 @@ KEY.Ctrl .AZ "Ctrl-"
|
|||
MENU.Sys .DA #.1-* next
|
||||
.DA #S.MITEM.F.ITEM F
|
||||
.DA #0 S
|
||||
.DA 0 pICON
|
||||
.DA #S.MITEM.KEYMOD.CA+S.MITEM.KEYMOD.OA+S.MITEM.KEYMOD.CTRL
|
||||
.DA #"A"
|
||||
.DA #2 ID
|
||||
.DA BM.ID.APPLE pICON
|
||||
.DA #S.MITEM.KEYMOD.CA+S.MITEM.KEYMOD.OA+S.MITEM.KEYMOD.CTRL
|
||||
.DA #'A'
|
||||
.AZ "About..."
|
||||
|
||||
.1 .DA #.2-* next
|
||||
|
@ -437,13 +439,44 @@ MENU.Sys .DA #.1-* next
|
|||
.2 .DA #.3-* next
|
||||
.DA #S.MITEM.F.SUBMENU F
|
||||
.DA #0 S
|
||||
.DA #0 ID
|
||||
.DA 0 pICON
|
||||
.DA 0 pMENU
|
||||
.AZ "Programs"
|
||||
|
||||
.3 .DA #.4-* next
|
||||
.DA #S.MITEM.F.SUBMENU F
|
||||
.DA #0 S
|
||||
.DA #0 ID
|
||||
.DA 0 pICON
|
||||
.DA 0 pMENU
|
||||
.AZ "Settings"
|
||||
|
||||
.3 .DA #0
|
||||
.4 .DA #.5-* next
|
||||
.DA #S.MITEM.F.SEP
|
||||
|
||||
.5 .DA #.6-* next
|
||||
.DA #S.MITEM.F.ITEM F
|
||||
.DA #0 S
|
||||
.DA #8 ID
|
||||
.DA 0 pICON
|
||||
.DA #0
|
||||
.DA #0
|
||||
.AZ "Search..."
|
||||
|
||||
.6 .DA #.7-* next
|
||||
.DA #S.MITEM.F.ITEM F
|
||||
.DA #0 S
|
||||
.DA #10 ID
|
||||
.DA 0 pICON
|
||||
.DA #S.MITEM.KEYMOD.OA
|
||||
.DA #'R'
|
||||
.AZ "Run..."
|
||||
|
||||
.7 .DA #0
|
||||
*--------------------------------------
|
||||
PREFS.BESTVIEWEDX .DA #$FC
|
||||
PREFS.MENUCOLOR .DA #C.WHITE
|
||||
PREFS.SYSBARCOLOR .DA #C.WHITE
|
||||
PREFS.MBARXMARGIN .DA #5
|
||||
PREFS.BORDERCOLOR .DA #C.BLACK
|
||||
|
|
|
@ -42,6 +42,7 @@ CS.START cld
|
|||
.DA CS.QUIT
|
||||
L.LIBGUI .DA LIBGUI
|
||||
L.MouseData .DA MouseData
|
||||
L.LOGOFILE .DA LOGOFILE
|
||||
L.WND.TITLE .DA WND.TITLE
|
||||
L.WND.MBAR .DA WND.MBAR
|
||||
L.WND.STATUS .DA WND.STATUS
|
||||
|
@ -53,10 +54,19 @@ CS.INIT >LDYA L.LIBGUI
|
|||
sta hLIBGUI
|
||||
|
||||
* clc
|
||||
.9 rts
|
||||
.9
|
||||
CS.INIT.RTS rts
|
||||
*--------------------------------------
|
||||
CS.RUN >LIBCALL hLIBGUI,LIBGUI.ShowCursor
|
||||
|
||||
>PUSHW L.LOGOFILE
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI $CB Type
|
||||
>PUSHWZ Aux type
|
||||
>SYSCALL LoadStkObj
|
||||
bcs CS.INIT.RTS
|
||||
|
||||
stx hLogo
|
||||
|
||||
CS.RUN.LOOP >SLEEP
|
||||
|
||||
|
@ -163,6 +173,8 @@ hLIBGUI .BS 1
|
|||
*--------------------------------------
|
||||
MouseData .BS S.MOUSE
|
||||
*--------------------------------------
|
||||
hLogo .BS 1
|
||||
LOGOFILE .AZ "${ROOT}root/bmp/A2OSX.LOGO"
|
||||
hWND .BS 1
|
||||
WND.TITLE .AZ "Window Title"
|
||||
*--------------------------------------
|
||||
|
|
Loading…
Reference in New Issue
Block a user