mirror of
https://github.com/mi57730/a2d.git
synced 2024-11-29 07:49:20 +00:00
icon offset constants
This commit is contained in:
parent
305343b02a
commit
b13b1f56d3
@ -44,6 +44,7 @@ DESKTOP := $8E00
|
||||
|
||||
;; Implementation bounces to $93BC, uses jump table at $939E
|
||||
|
||||
DT_ADD_ICON := $01 ; { .addr icondata }
|
||||
DT_HIGHLIGHT_ICON := $02 ; { .byte icon }
|
||||
DT_UNHIGHLIGHT_ICON := $03 ; { .byte icon }
|
||||
;; $06 ???
|
||||
|
@ -6,7 +6,7 @@
|
||||
.include "../inc/prodos.inc"
|
||||
.include "../mgtk.inc"
|
||||
.include "../desktop.inc"
|
||||
.include "macros.inc"
|
||||
.include "../macros.inc"
|
||||
|
||||
;;; ==================================================
|
||||
;;; DeskTop - the actual application
|
||||
@ -216,7 +216,7 @@ L869E: sta ($06),y
|
||||
ldx #$00
|
||||
ldy #$0B
|
||||
L86B6: lda online_params_buffer+1,x
|
||||
cmp #$41
|
||||
cmp #$41 ; convert to lowercase ???
|
||||
bcc L86C4
|
||||
cmp #$5F
|
||||
bcs L86C4
|
||||
@ -227,17 +227,18 @@ L86C4: sta ($06),y
|
||||
inx
|
||||
cpx online_params_buffer
|
||||
bne L86B6
|
||||
ldy #$09
|
||||
ldy #9
|
||||
lda ($06),y
|
||||
clc
|
||||
adc #$02
|
||||
adc #2 ; increase length by 2 (spaces) ???
|
||||
sta ($06),y
|
||||
lda L8737
|
||||
lda L8737 ; type?
|
||||
and #$0F
|
||||
|
||||
cmp #$04
|
||||
bne L86ED
|
||||
ldy #$07
|
||||
lda #$B4
|
||||
ldy #icon_entry_offset_iconbits
|
||||
lda #$B4 ; $14B4 ???
|
||||
sta ($06),y
|
||||
iny
|
||||
lda #$14
|
||||
@ -246,46 +247,46 @@ L86C4: sta ($06),y
|
||||
|
||||
L86ED: cmp #$0B
|
||||
bne L86FF
|
||||
ldy #$07
|
||||
lda #$70
|
||||
ldy #icon_entry_offset_iconbits
|
||||
lda #$70 ; $1470 ???
|
||||
sta ($06),y
|
||||
iny
|
||||
lda #$14
|
||||
sta ($06),y
|
||||
jmp L870A
|
||||
|
||||
L86FF: ldy #$07
|
||||
lda #$40
|
||||
L86FF: ldy #icon_entry_offset_iconbits
|
||||
lda #$40 ; $1440 ???
|
||||
sta ($06),y
|
||||
iny
|
||||
lda #$14
|
||||
sta ($06),y
|
||||
L870A: ldy #$02
|
||||
lda #$00
|
||||
|
||||
L870A: ldy #icon_entry_offset_type
|
||||
lda #0
|
||||
sta ($06),y
|
||||
inc L8738
|
||||
lda L8738
|
||||
asl a
|
||||
asl a
|
||||
tax
|
||||
ldy #$03
|
||||
L871B: lda L8739,x
|
||||
ldy #icon_entry_offset_iconx
|
||||
: lda L8739,x
|
||||
sta ($06),y
|
||||
inx
|
||||
iny
|
||||
cpy #$07
|
||||
bne L871B
|
||||
cpy #7
|
||||
bne :-
|
||||
ldx $EF8A
|
||||
dex
|
||||
ldy #$00
|
||||
ldy #0
|
||||
lda ($06),y
|
||||
sta $EF8B,x
|
||||
jsr $83A5
|
||||
lda #$00
|
||||
rts
|
||||
|
||||
L8737: rts
|
||||
|
||||
L8737: .byte $60 ; file type ???
|
||||
L8738: .byte $04
|
||||
L8739: .byte $00,$00,$00,$00
|
||||
|
||||
@ -411,19 +412,14 @@ reserved: .byte 0
|
||||
maprect: DEFINE_RECT 0,0,0,0,maprect
|
||||
.endproc
|
||||
|
||||
.proc paintrect_params6
|
||||
left: .word 0
|
||||
top: .word 0
|
||||
right: .word 0
|
||||
bottom: .word 0
|
||||
.endproc
|
||||
paintrect_params6: DEFINE_RECT 0,0,0,0, paintrect_params6
|
||||
|
||||
.proc textwidth_params
|
||||
textptr: .addr text_buffer
|
||||
textlen: .byte 0
|
||||
result: .word 0
|
||||
.endproc
|
||||
set_text_mask_params := textwidth_params::result + 1 ; re-used
|
||||
settextbg_params := textwidth_params::result + 1 ; re-used
|
||||
|
||||
.proc drawtext_params
|
||||
textptr: .addr text_buffer
|
||||
@ -537,7 +533,7 @@ penloc: DEFINE_POINT 0, 0
|
||||
penwidth: .byte 1
|
||||
penheight: .byte 1
|
||||
penmode: .byte $96 ; ???
|
||||
textbg: .byte 0
|
||||
textbg: .byte MGTK::textbg_black
|
||||
fontptr: .addr DEFAULT_FONT
|
||||
.endproc
|
||||
|
||||
@ -557,7 +553,7 @@ penloc: DEFINE_POINT 0, 0
|
||||
penwidth: .byte 0
|
||||
penheight: .byte 0
|
||||
penmode: .byte 0
|
||||
textbg: .byte 0
|
||||
textbg: .byte MGTK::textbg_black
|
||||
fontptr: .addr 0
|
||||
.endproc
|
||||
|
||||
@ -578,7 +574,7 @@ notpenBIC_2: .byte 7
|
||||
;;; DESKTOP command jump table
|
||||
|
||||
L939E: .addr 0 ; $00
|
||||
.addr L9419 ; $01
|
||||
.addr ADD_ICON_IMPL
|
||||
.addr HIGHLIGHT_ICON_IMPL
|
||||
.addr UNHIGHLIGHT_ICON_IMPL
|
||||
.addr L9508 ; $04
|
||||
@ -668,10 +664,9 @@ ycoord: .word 0
|
||||
.endproc
|
||||
|
||||
;;; ==================================================
|
||||
;;; ADD_ICON IMPL
|
||||
|
||||
;;; DESKTOP $01 IMPL
|
||||
|
||||
.proc L9419
|
||||
.proc ADD_ICON_IMPL
|
||||
ldy #$00
|
||||
lda ($06),y
|
||||
ldx num_icons
|
||||
@ -926,7 +921,7 @@ L9648: lda icon_table,x
|
||||
asl a
|
||||
tay
|
||||
copy16 icon_ptrs,y, $08
|
||||
ldy #2
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($08),y
|
||||
and #$0F
|
||||
ldy #0
|
||||
@ -980,10 +975,10 @@ L969D: ldx L9696
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $08
|
||||
ldy #2
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($08),y
|
||||
and #$0F
|
||||
ldy #$00
|
||||
ldy #0
|
||||
cmp ($06),y
|
||||
bne L969D
|
||||
DESKTOP_DIRECT_CALL $04, L9695
|
||||
@ -1015,7 +1010,7 @@ L96E5: dec L96D6
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $08
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($08),y
|
||||
and #$0F
|
||||
ldy #$00
|
||||
@ -1126,7 +1121,7 @@ L97B9: txa
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
cmp L97F5
|
||||
@ -1158,6 +1153,7 @@ L97F6: .byte 0
|
||||
|
||||
;;; DESKTOP $0A IMPL
|
||||
|
||||
;; Desktop icon selection
|
||||
.proc L97F7
|
||||
ldy #0
|
||||
lda ($06),y
|
||||
@ -1175,7 +1171,7 @@ L9803: lda ($06),y
|
||||
lda L982A
|
||||
jsr L9EB4
|
||||
stax $06
|
||||
ldy #2
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta L9829
|
||||
@ -1246,7 +1242,7 @@ L98B6: copy16 #drag_outline_buffer, $08
|
||||
L98C8: lda highlight_list
|
||||
jsr L9EB4
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta L9832
|
||||
@ -1312,7 +1308,7 @@ L9961: lda drag_outline_buffer+2,x
|
||||
dex
|
||||
bpl L9961
|
||||
copy16 #drag_outline_buffer, $08
|
||||
L9972: ldy #$02
|
||||
L9972: ldy #icon_entry_offset_type
|
||||
L9974: lda ($08),y
|
||||
cmp L9C76
|
||||
iny
|
||||
@ -1482,7 +1478,7 @@ L9B48: bit L9C75
|
||||
|
||||
L9B52: MGTK_CALL MGTK::FramePoly, drag_outline_buffer
|
||||
copy16 #drag_outline_buffer, $08
|
||||
L9B60: ldy #$02
|
||||
L9B60: ldy #2
|
||||
L9B62: lda ($08),y
|
||||
clc
|
||||
adc L9C96
|
||||
@ -1568,7 +1564,7 @@ L9C29: lda highlight_list,x
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($08),y
|
||||
iny
|
||||
sta ($06),y
|
||||
@ -1792,7 +1788,7 @@ L9E3D: cmp highlight_list,x
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta L9831
|
||||
@ -1828,6 +1824,9 @@ L9EB4: asl a
|
||||
|
||||
;;; DESKTOP $0B IMPL
|
||||
|
||||
;; Deselect icon ???
|
||||
;; how is this different from UNHIGHLIGHT_ICON ???
|
||||
|
||||
.proc L9EBE
|
||||
jmp start
|
||||
|
||||
@ -1929,38 +1928,46 @@ L9F94: .byte 0
|
||||
L9F98: lda #$00
|
||||
sta L9F92
|
||||
beq L9FA4
|
||||
|
||||
L9F9F: lda #$80
|
||||
sta L9F92
|
||||
L9FA4: ldy #$02
|
||||
|
||||
.proc L9FA4
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
bne L9FB4
|
||||
bne :+
|
||||
lda L9F92
|
||||
ora #$40
|
||||
sta L9F92
|
||||
L9FB4: ldy #$03
|
||||
L9FB6: lda ($06),y
|
||||
sta poly::v7::xcoord+1,y
|
||||
;; copy icon coords and bits
|
||||
: ldy #icon_entry_offset_iconx
|
||||
: lda ($06),y
|
||||
sta paintbits_params2::viewloc-icon_entry_offset_iconx,y
|
||||
iny
|
||||
cpy #$09
|
||||
bne L9FB6
|
||||
cpy #icon_entry_offset_iconx + 6 ; x/y/bits
|
||||
bne :-
|
||||
|
||||
jsr push_zp_addrs
|
||||
copy16 paintbits_params2::mapbits, $08
|
||||
ldy #$0B
|
||||
L9FCF: lda ($08),y
|
||||
: lda ($08),y
|
||||
sta paintbits_params2::mapbits,y
|
||||
dey
|
||||
bpl L9FCF
|
||||
bpl :-
|
||||
|
||||
bit L9F92
|
||||
bpl L9FDF
|
||||
bpl :+
|
||||
jsr LA12C
|
||||
L9FDF: jsr pop_zp_addrs
|
||||
ldy #$09
|
||||
L9FE4: lda ($06),y
|
||||
sta paintrect_params6::bottom,y
|
||||
: jsr pop_zp_addrs
|
||||
|
||||
ldy #9
|
||||
: lda ($06),y
|
||||
sta paintrect_params6::y2,y
|
||||
iny
|
||||
cpy #$1D
|
||||
bne L9FE4
|
||||
bne :-
|
||||
|
||||
: lda drawtext_params::textlen
|
||||
sta textwidth_params::textlen
|
||||
MGTK_CALL MGTK::TextWidth, textwidth_params
|
||||
@ -1977,7 +1984,7 @@ L9FE4: lda ($06),y
|
||||
sta moveto_params2::xcoord+1
|
||||
lda paintbits_params2::maprect::x2
|
||||
lsr a
|
||||
sta moveto_params2
|
||||
sta moveto_params2::xcoord
|
||||
lda moveto_params2::xcoord+1
|
||||
sec
|
||||
sbc moveto_params2::xcoord
|
||||
@ -1986,19 +1993,19 @@ L9FE4: lda ($06),y
|
||||
add16_8 paintbits_params2::viewloc::ycoord, paintbits_params2::maprect::y2, moveto_params2::ycoord
|
||||
add16 moveto_params2::ycoord, #1, moveto_params2::ycoord
|
||||
add16_8 moveto_params2::ycoord, font_height, moveto_params2::ycoord
|
||||
ldx #$03
|
||||
LA06E: lda moveto_params2,x
|
||||
ldx #3
|
||||
: lda moveto_params2,x
|
||||
sta L9F94,x
|
||||
dex
|
||||
bpl LA06E
|
||||
bpl :-
|
||||
bit L9F92
|
||||
bvc LA097
|
||||
MGTK_CALL MGTK::InitPort, grafport
|
||||
jsr LA63F
|
||||
LA085: jsr LA6A3
|
||||
: jsr LA6A3
|
||||
jsr LA097
|
||||
lda L9F93
|
||||
bne LA085
|
||||
bne :-
|
||||
MGTK_CALL MGTK::SetPortBits, grafport
|
||||
rts
|
||||
|
||||
@ -2014,31 +2021,33 @@ LA097: MGTK_CALL MGTK::HideCursor, DESKTOP_DIRECT ; These params should be igno
|
||||
LA0B6: MGTK_CALL MGTK::PaintBits, paintbits_params
|
||||
MGTK_CALL MGTK::SetPenMode, penXOR_2
|
||||
LA0C2: MGTK_CALL MGTK::PaintBits, paintbits_params2
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$80
|
||||
beq LA0F2
|
||||
jsr LA14D
|
||||
MGTK_CALL MGTK::SetPattern, dark_pattern
|
||||
MGTK_CALL MGTK::SetPattern, dark_pattern ; shade for open volume
|
||||
bit L9F92
|
||||
bmi LA0E6
|
||||
MGTK_CALL MGTK::SetPenMode, penBIC_2
|
||||
beq LA0EC
|
||||
LA0E6: MGTK_CALL MGTK::SetPenMode, penOR_2
|
||||
LA0EC: MGTK_CALL MGTK::PaintRect, paintrect_params6
|
||||
LA0F2: ldx #$03
|
||||
LA0F4: lda L9F94,x
|
||||
|
||||
LA0F2: ldx #3
|
||||
: lda L9F94,x
|
||||
sta moveto_params2,x
|
||||
dex
|
||||
bpl LA0F4
|
||||
bpl :-
|
||||
|
||||
MGTK_CALL MGTK::MoveTo, moveto_params2
|
||||
bit L9F92
|
||||
bmi LA10C
|
||||
lda #$7F
|
||||
bne LA10E
|
||||
LA10C: lda #$00
|
||||
LA10E: sta set_text_mask_params
|
||||
MGTK_CALL MGTK::SetTextBG, set_text_mask_params
|
||||
bmi :+
|
||||
lda #MGTK::textbg_white
|
||||
bne setbg
|
||||
: lda #MGTK::textbg_black
|
||||
setbg: sta settextbg_params
|
||||
MGTK_CALL MGTK::SetTextBG, settextbg_params
|
||||
lda text_buffer+1
|
||||
and #$DF
|
||||
sta text_buffer+1
|
||||
@ -2046,11 +2055,12 @@ LA10E: sta set_text_mask_params
|
||||
MGTK_CALL MGTK::ShowCursor
|
||||
rts
|
||||
|
||||
LA12C: ldx #$0F
|
||||
LA12E: lda paintbits_params2,x
|
||||
LA12C: ldx #.sizeof(paintbits_params)-1
|
||||
: lda paintbits_params2,x
|
||||
sta paintbits_params,x
|
||||
dex
|
||||
bpl LA12E
|
||||
bpl :-
|
||||
|
||||
ldy paintbits_params::maprect::y2
|
||||
LA13A: lda paintbits_params::mapwidth
|
||||
clc
|
||||
@ -2066,28 +2076,29 @@ LA14D: ldx #$00
|
||||
LA14F: lda paintbits_params2::viewloc::xcoord,x
|
||||
clc
|
||||
adc paintbits_params2::maprect::x1,x
|
||||
sta paintrect_params6,x
|
||||
sta paintrect_params6::x1,x
|
||||
lda paintbits_params2::viewloc::xcoord+1,x
|
||||
adc paintbits_params2::maprect::x1+1,x
|
||||
sta paintrect_params6::left+1,x
|
||||
sta paintrect_params6::x1+1,x
|
||||
lda paintbits_params2::viewloc::xcoord,x
|
||||
clc
|
||||
adc paintbits_params2::maprect::x2,x
|
||||
sta paintrect_params6::right,x
|
||||
sta paintrect_params6::x2,x
|
||||
lda paintbits_params2::viewloc::xcoord+1,x
|
||||
adc paintbits_params2::maprect::x2+1,x
|
||||
sta paintrect_params6::right+1,x
|
||||
sta paintrect_params6::x2+1,x
|
||||
inx
|
||||
inx
|
||||
cpx #$04
|
||||
bne LA14F
|
||||
lda paintrect_params6::bottom
|
||||
lda paintrect_params6::y2
|
||||
sec
|
||||
sbc #$01
|
||||
sta paintrect_params6::bottom
|
||||
sta paintrect_params6::y2
|
||||
bcs LA189
|
||||
dec paintrect_params6::bottom+1
|
||||
dec paintrect_params6::y2+1
|
||||
LA189: rts
|
||||
.endproc
|
||||
|
||||
;;; ==================================================
|
||||
|
||||
@ -2196,7 +2207,7 @@ LA256: lsr a
|
||||
sta poly::v3::xcoord
|
||||
sta poly::v4::xcoord
|
||||
lda poly::v5::xcoord+1
|
||||
adc #$00
|
||||
adc #0
|
||||
sta poly::v3::xcoord+1
|
||||
sta poly::v4::xcoord+1
|
||||
jsr pop_zp_addrs
|
||||
@ -2229,11 +2240,11 @@ LA2B5: bmi LA2AA
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
bne LA2DD
|
||||
ldy #$00
|
||||
ldy #0
|
||||
lda ($06),y
|
||||
sta LA2A9
|
||||
DESKTOP_DIRECT_CALL DT_UNHIGHLIGHT_ICON, LA2A9
|
||||
@ -2244,7 +2255,7 @@ LA2DD: pla
|
||||
|
||||
LA2E3: stx LA322
|
||||
sta LA323
|
||||
ldx #$00
|
||||
ldx #0
|
||||
LA2EB: lda icon_table,x
|
||||
cmp LA323
|
||||
beq LA2FA
|
||||
@ -2277,7 +2288,7 @@ LA323: .byte 0
|
||||
|
||||
LA324: stx LA363
|
||||
sta LA364
|
||||
ldx #$00
|
||||
ldx #0
|
||||
LA32C: lda highlight_list,x
|
||||
cmp LA364
|
||||
beq LA33B
|
||||
@ -2468,7 +2479,7 @@ LA44D: cpx #$FF ; =-1
|
||||
asl a
|
||||
tax
|
||||
copy16 icon_ptrs,x, ptr
|
||||
ldy #2 ; type??? offset
|
||||
ldy #icon_entry_offset_type
|
||||
lda (ptr),y
|
||||
and #$07 ; low bits
|
||||
cmp LA3AD
|
||||
@ -3157,15 +3168,14 @@ label_get_size:
|
||||
label_rename_icon:
|
||||
PASCAL_STRING "Rename an Icon ..."
|
||||
|
||||
|
||||
desktop_menu:
|
||||
DEFINE_MENU_BAR 6
|
||||
DEFINE_MENU_BAR_ITEM 1, label_apple, apple_menu
|
||||
DEFINE_MENU_BAR_ITEM 2, label_file, file_menu
|
||||
DEFINE_MENU_BAR_ITEM 4, label_view, view_menu
|
||||
DEFINE_MENU_BAR_ITEM 5, label_special, special_menu
|
||||
DEFINE_MENU_BAR_ITEM 8, label_startup, startup_menu
|
||||
DEFINE_MENU_BAR_ITEM 3, label_selector, selector_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_apple, label_apple, apple_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_file, label_file, file_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_view, label_view, view_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_special, label_special, special_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_startup, label_startup, startup_menu
|
||||
DEFINE_MENU_BAR_ITEM menu_id_selector, label_selector, selector_menu
|
||||
|
||||
file_menu:
|
||||
DEFINE_MENU 12
|
||||
@ -4118,6 +4128,15 @@ addr: .addr 0
|
||||
|
||||
.org $D000
|
||||
|
||||
;;; Constants needed in both main and aux
|
||||
|
||||
menu_id_apple := 1
|
||||
menu_id_file := 2
|
||||
menu_id_view := 4
|
||||
menu_id_special := 5
|
||||
menu_id_startup := 8
|
||||
menu_id_selector := 3
|
||||
|
||||
;;; Various routines callable from MAIN
|
||||
|
||||
;;; ==================================================
|
||||
@ -4362,14 +4381,14 @@ op: lda dummy1234
|
||||
.assert * = $D166, error, "Segment length mismatch"
|
||||
PAD_TO $D200
|
||||
|
||||
pencopy: .byte 0
|
||||
penOR: .byte 1
|
||||
penXOR: .byte 2
|
||||
penBIC: .byte 3
|
||||
notpencopy: .byte 4
|
||||
notpenOR: .byte 5
|
||||
notpenXOR: .byte 6
|
||||
notpenBIC: .byte 7
|
||||
pencopy: .byte 0
|
||||
penOR: .byte 1
|
||||
penXOR: .byte 2
|
||||
penBIC: .byte 3
|
||||
notpencopy: .byte 4
|
||||
notpenOR: .byte 5
|
||||
notpenXOR: .byte 6
|
||||
notpenBIC: .byte 7
|
||||
|
||||
;;; ============================================================
|
||||
;;; Re-use of param space
|
||||
@ -4417,6 +4436,7 @@ screentowindow_windowy:
|
||||
|
||||
LD211: .byte 0
|
||||
|
||||
;;; ============================================================
|
||||
|
||||
.proc getwinport_params2
|
||||
window_id: .byte 0
|
||||
@ -4434,7 +4454,7 @@ penloc: DEFINE_POINT 0, 0
|
||||
penwidth: .byte 0
|
||||
penheight: .byte 0
|
||||
penmode: .byte 0
|
||||
textbg: .byte 0
|
||||
textbg: .byte MGTK::textbg_black
|
||||
fontptr: .addr 0
|
||||
.endproc
|
||||
|
||||
@ -4449,7 +4469,7 @@ penloc: DEFINE_POINT 0, 0
|
||||
penwidth: .byte 0
|
||||
penheight: .byte 0
|
||||
penmode: .byte 0
|
||||
textbg: .byte 0
|
||||
textbg: .byte MGTK::textbg_black
|
||||
fontptr: .addr 0
|
||||
.endproc
|
||||
grafport3_viewloc_xcoord := grafport3::viewloc::xcoord
|
||||
@ -4468,10 +4488,11 @@ penloc: DEFINE_POINT 0, 0
|
||||
penwidth: .byte 1
|
||||
penheight: .byte 1
|
||||
penmode: .byte 0
|
||||
textbg: .byte 0
|
||||
textbg: .byte MGTK::textbg_black
|
||||
fontptr: .addr DEFAULT_FONT
|
||||
.endproc
|
||||
|
||||
;;; ============================================================
|
||||
|
||||
white_pattern3: ; unused?
|
||||
.byte %11111111
|
||||
@ -4496,15 +4517,14 @@ black_pattern3: ; unused?
|
||||
.byte $FF
|
||||
|
||||
checkerboard_pattern3:
|
||||
.byte px(%1010101)
|
||||
.byte PX(%0101010)
|
||||
.byte px(%1010101)
|
||||
.byte PX(%0101010)
|
||||
.byte px(%1010101)
|
||||
.byte PX(%0101010)
|
||||
.byte px(%1010101)
|
||||
.byte PX(%0101010)
|
||||
|
||||
.byte %01010101
|
||||
.byte %10101010
|
||||
.byte %01010101
|
||||
.byte %10101010
|
||||
.byte %01010101
|
||||
.byte %10101010
|
||||
.byte %01010101
|
||||
.byte %10101010
|
||||
.byte $FF
|
||||
|
||||
;; Copies of ROM bytes used for machine identification
|
||||
@ -4991,11 +5011,21 @@ run_list_entries:
|
||||
|
||||
LDD9E: .byte 0
|
||||
|
||||
icon_entry_offset_index := 0
|
||||
icon_entry_offset_state := 1
|
||||
icon_entry_offset_type := 2
|
||||
icon_entry_offset_iconx := 3
|
||||
icon_entry_offset_icony := 5
|
||||
icon_entry_offset_iconbits := 7
|
||||
icon_entry_offset_len := 9
|
||||
icon_entry_offset_name := 10
|
||||
icon_entry_size := 27
|
||||
|
||||
;; Icon to File mapping table
|
||||
;;
|
||||
;; each entry is 27 bytes long
|
||||
;; .byte icon index
|
||||
;; .byte ??
|
||||
;; .byte ?? state bits?
|
||||
;; .byte type/icon (bits 4,5,6 are type)
|
||||
;; $00 = directory
|
||||
;; $10 = system
|
||||
@ -7449,7 +7479,7 @@ L4DF2: txa
|
||||
lda selected_file_index,x
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$70
|
||||
bne L4E10
|
||||
@ -7560,7 +7590,7 @@ L4EC3: sta buf3len
|
||||
sta LE22F
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$7F
|
||||
sta ($06),y
|
||||
@ -8416,7 +8446,7 @@ L55D1: ldx L544A
|
||||
sta selected_file_index
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta selected_window_index
|
||||
@ -8429,7 +8459,7 @@ L55F0: ldx L544A
|
||||
sta LE22F
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta getwinport_params2::window_id
|
||||
@ -8448,7 +8478,7 @@ L562B: rts
|
||||
L562C: lda LE22F
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta getwinport_params2::window_id
|
||||
@ -9384,7 +9414,7 @@ L5DF7: ldx $E256
|
||||
L5DFC: lda L5CD9 ; after a double-click (on file or folder)
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #2 ; byte type icon offset
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$70 ; bits 4-6
|
||||
cmp #$10 ; $10 = system
|
||||
@ -9795,9 +9825,9 @@ L6227: sta buf3len
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
beq L6276
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$7F
|
||||
and #$7F ; clear high bit
|
||||
sta ($06),y
|
||||
and #$0F
|
||||
sta selected_window_index
|
||||
@ -10140,27 +10170,28 @@ L66F2: dex
|
||||
MGTK_RELAY_CALL MGTK::CheckItem, checkitem_params
|
||||
rts
|
||||
|
||||
L670C: lda #$01
|
||||
L670C: lda #MGTK::disableitem_disable
|
||||
sta disableitem_params::disable
|
||||
lda #$02
|
||||
lda #menu_id_file
|
||||
sta disableitem_params::menu_id
|
||||
lda #$03
|
||||
jsr L673A
|
||||
lda #$05
|
||||
lda #3 ; > Open
|
||||
jsr disable_menu_item
|
||||
lda #menu_id_special
|
||||
sta disableitem_params::menu_id
|
||||
lda #$07
|
||||
jsr L673A
|
||||
lda #$08
|
||||
jsr L673A
|
||||
lda #$0A
|
||||
jsr L673A
|
||||
lda #$0B
|
||||
jsr L673A
|
||||
lda #$0D
|
||||
jsr L673A
|
||||
lda #7 ; > Lock
|
||||
jsr disable_menu_item
|
||||
lda #8 ; > Unlock
|
||||
jsr disable_menu_item
|
||||
lda #10 ; > Get Info
|
||||
jsr disable_menu_item
|
||||
lda #11 ; > Get Size
|
||||
jsr disable_menu_item
|
||||
lda #13 ; > Rename Icon
|
||||
jsr disable_menu_item
|
||||
rts
|
||||
|
||||
L673A: sta disableitem_params::menu_item
|
||||
disable_menu_item:
|
||||
sta disableitem_params::menu_item
|
||||
MGTK_RELAY_CALL MGTK::DisableItem, disableitem_params
|
||||
rts
|
||||
|
||||
@ -10486,11 +10517,11 @@ L6AA7: stx bufnum
|
||||
lda LE6BE
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
ora #$80
|
||||
ora #$80 ; set high bit
|
||||
sta ($06),y
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta getwinport_params2::window_id
|
||||
@ -10564,11 +10595,11 @@ L6B68: lda #$01
|
||||
lda LE6BE
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
ora #$80
|
||||
sta ($06),y
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
sta getwinport_params2::window_id
|
||||
@ -11459,12 +11490,12 @@ L7471: lda ($06),y
|
||||
bne L7471
|
||||
lda #$20
|
||||
sta ($08),y
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($08),y
|
||||
and #$DF
|
||||
sta ($08),y
|
||||
jsr pop_zp_addrs
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
bne L74D3
|
||||
@ -11620,7 +11651,7 @@ L75A3: sta ($06),y
|
||||
lda LE6BE
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
beq L75FA
|
||||
@ -11890,9 +11921,9 @@ L7862: lda L762A
|
||||
inc L762B
|
||||
L7870: lda bufnum
|
||||
ora L7624
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
sta ($08),y
|
||||
ldy #$07
|
||||
ldy #icon_entry_offset_iconbits
|
||||
lda L7622
|
||||
sta ($08),y
|
||||
iny
|
||||
@ -12213,7 +12244,7 @@ L7C36: tax
|
||||
lda buf3,x
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$0F
|
||||
cmp L7D5C
|
||||
@ -13920,8 +13951,8 @@ use_floppy140_icon:
|
||||
sta ($06),y
|
||||
|
||||
selected_device_icon:
|
||||
ldy #$02
|
||||
lda #$00
|
||||
ldy #icon_entry_offset_type
|
||||
lda #0
|
||||
sta ($06),y
|
||||
inc device_num
|
||||
lda device_num
|
||||
@ -14004,7 +14035,7 @@ L8B3E: lda #$00
|
||||
L8B43: lda LE6BE
|
||||
jsr file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
and #$7F
|
||||
sta ($06),y
|
||||
@ -14484,7 +14515,7 @@ L8FA1: jsr L8FE1
|
||||
L8FA7: asl a
|
||||
tay
|
||||
copy16 file_address_table,y, $06
|
||||
ldy #$02
|
||||
ldy #icon_entry_offset_type
|
||||
lda ($06),y
|
||||
rts
|
||||
|
||||
@ -17839,7 +17870,7 @@ LAFB9: lda winfoF
|
||||
|
||||
LAFE9: addr_jump LAFF8, desktop_aux::str_no_label
|
||||
|
||||
LAFF0: ldy #$02
|
||||
LAFF0: ldy #2
|
||||
lda ($06),y
|
||||
tax
|
||||
dey
|
||||
@ -19528,10 +19559,10 @@ L092F: lda #0
|
||||
sta buf3
|
||||
jsr desktop_main::file_address_lookup
|
||||
stax $06
|
||||
ldy #$02
|
||||
lda #$70
|
||||
ldy #icon_entry_offset_type
|
||||
lda #$70 ; $70 is Trash Can
|
||||
sta ($06),y
|
||||
ldy #$07
|
||||
ldy #icon_entry_offset_iconbits
|
||||
lda #<desktop_aux::trash_icon
|
||||
sta ($06),y
|
||||
iny
|
||||
|
6
mgtk.inc
6
mgtk.inc
@ -518,6 +518,7 @@ zp_preserve := 1<<7
|
||||
;;; Used in various state blocks
|
||||
colormask_and := $FF
|
||||
colormask_or := $00
|
||||
textbg_black := $00
|
||||
textbg_white := $7F
|
||||
|
||||
;;; ==================================================
|
||||
@ -578,6 +579,11 @@ menuopt_item_is_checked := 1 << 5
|
||||
menuopt_item_is_filler := 1 << 6
|
||||
menuopt_disable_flag := 1 << 7
|
||||
|
||||
disablemenu_enable := 0
|
||||
disablemenu_disable := 1
|
||||
disableitem_enable := 0
|
||||
disableitem_disable := 1
|
||||
|
||||
;;; Response from InRect/InPoly
|
||||
inrect_inside := $80
|
||||
inrect_outside := $00
|
||||
|
Loading…
Reference in New Issue
Block a user