mirror of
https://github.com/mi57730/a2d.git
synced 2024-12-01 20:50:06 +00:00
identify icon tracking
This commit is contained in:
parent
2dd9ad0a2b
commit
17f096890f
@ -162,7 +162,7 @@ data: .res 64, 0
|
|||||||
params_end:
|
params_end:
|
||||||
;;; ----------------------------------------
|
;;; ----------------------------------------
|
||||||
|
|
||||||
window_id := 100
|
da_window_id := 100
|
||||||
|
|
||||||
.proc line_pos
|
.proc line_pos
|
||||||
left: .word 0
|
left: .word 0
|
||||||
@ -194,7 +194,7 @@ ycoord := *+2
|
|||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
.proc winfo
|
.proc winfo
|
||||||
id: .byte window_id ; window identifier
|
window_id: .byte da_window_id ; window identifier
|
||||||
options: .byte MGTK::option_dialog_box
|
options: .byte MGTK::option_dialog_box
|
||||||
title: .addr window_title
|
title: .addr window_title
|
||||||
hscroll:.byte MGTK::scroll_option_none
|
hscroll:.byte MGTK::scroll_option_none
|
||||||
@ -211,20 +211,15 @@ maxcontwidth: .word default_width
|
|||||||
maxcontlength: .word default_height
|
maxcontlength: .word default_height
|
||||||
|
|
||||||
.proc port
|
.proc port
|
||||||
left: .word default_left
|
viewloc: DEFINE_POINT default_left, default_top
|
||||||
top: .word default_top
|
|
||||||
mapbits: .addr MGTK::screen_mapbits
|
mapbits: .addr MGTK::screen_mapbits
|
||||||
mapwidth: .word MGTK::screen_mapwidth
|
mapwidth: .word MGTK::screen_mapwidth
|
||||||
hoff: .word 0
|
maprect: DEFINE_RECT 0, 0, default_width, default_height
|
||||||
voff: .word 0
|
|
||||||
width: .word default_width
|
|
||||||
height: .word default_height
|
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
pattern:.res 8, 0
|
pattern:.res 8, 0
|
||||||
colormasks: .byte MGTK::colormask_and, MGTK::colormask_or
|
colormasks: .byte MGTK::colormask_and, MGTK::colormask_or
|
||||||
xpos: .word 0
|
penloc: DEFINE_POINT 0, 0
|
||||||
ypos: .word 0
|
|
||||||
penwidth: .byte 1
|
penwidth: .byte 1
|
||||||
penheight: .byte 1
|
penheight: .byte 1
|
||||||
penmode: .byte 0
|
penmode: .byte 0
|
||||||
|
@ -591,36 +591,30 @@ light_pattern:
|
|||||||
.byte %10111011
|
.byte %10111011
|
||||||
L8E94: .byte $FF
|
L8E94: .byte $FF
|
||||||
|
|
||||||
L8E95:
|
;;; ==================================================
|
||||||
L8E96 := * + 1
|
;;; Icon (i.e. file) details
|
||||||
L8E97 := * + 2
|
|
||||||
.res 128, 0
|
|
||||||
|
|
||||||
L8F15: .res 256, 0
|
;;; NOTE: Trash is icon #1
|
||||||
|
|
||||||
L9015: .byte $00
|
num_icons: .byte 0
|
||||||
L9016: .byte $00
|
icon_table: .res 127, 0 ; index into icon_ptrs
|
||||||
L9017: .byte $00
|
icon_ptrs: .res 256, 0 ; addresses of icon details (in $ED00)
|
||||||
L9018: .byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
has_highlight: ; 1 = has highlight, 0 = no highlight
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
.byte 0
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
highlight_count: ; number of highlighted icons
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
.byte $00
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
highlight_list: ; selected icons
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
.res 127, 0
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
;;; Polygon holding the composite outlines of all icons
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
;;; being dragged.
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
.byte $00,$00,$00,$00,$00,$00
|
|
||||||
|
|
||||||
drag_outline_buffer:
|
drag_outline_buffer:
|
||||||
.res 680, 0
|
.res 680, 0
|
||||||
|
|
||||||
|
;;; ==================================================
|
||||||
|
|
||||||
.proc peekevent_params
|
.proc peekevent_params
|
||||||
kind: .byte 0 ; spills into next block
|
kind: .byte 0 ; spills into next block
|
||||||
.endproc
|
.endproc
|
||||||
@ -788,10 +782,10 @@ ycoord: .word 0
|
|||||||
.proc L9419
|
.proc L9419
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
beq L9430
|
beq L9430
|
||||||
dex
|
dex
|
||||||
L9423: cmp L8E96,x
|
L9423: cmp icon_table,x
|
||||||
beq L942D
|
beq L942D
|
||||||
dex
|
dex
|
||||||
bpl L9423
|
bpl L9423
|
||||||
@ -807,15 +801,15 @@ L9430: jsr L943E
|
|||||||
lda #$00
|
lda #$00
|
||||||
rts
|
rts
|
||||||
|
|
||||||
L943E: ldx L8E95
|
L943E: ldx num_icons
|
||||||
sta L8E96,x
|
sta icon_table,x
|
||||||
inc L8E95
|
inc num_icons
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda $06
|
lda $06
|
||||||
sta L8F15,x
|
sta icon_ptrs,x
|
||||||
lda $07
|
lda $07
|
||||||
sta L8F15+1,x
|
sta icon_ptrs+1,x
|
||||||
rts
|
rts
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
@ -823,12 +817,12 @@ L943E: ldx L8E95
|
|||||||
;;; HIGHLIGHT_ICON IMPL
|
;;; HIGHLIGHT_ICON IMPL
|
||||||
|
|
||||||
.proc HIGHLIGHT_ICON_IMPL
|
.proc HIGHLIGHT_ICON_IMPL
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
beq bail1
|
beq bail1
|
||||||
dex
|
dex
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
L945E: cmp L8E96,x
|
L945E: cmp icon_table,x
|
||||||
beq L9469
|
beq L9469
|
||||||
dex
|
dex
|
||||||
bpl L945E
|
bpl L945E
|
||||||
@ -838,9 +832,9 @@ bail1: lda #$01
|
|||||||
|
|
||||||
L9469: asl a
|
L9469: asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $06+1
|
sta $06+1
|
||||||
ldy #$01
|
ldy #$01
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -848,13 +842,13 @@ L9469: asl a
|
|||||||
lda #2
|
lda #2
|
||||||
rts
|
rts
|
||||||
|
|
||||||
L947E: lda L9015
|
L947E: lda has_highlight
|
||||||
beq L9498
|
beq L9498
|
||||||
dey
|
dey
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
dex
|
dex
|
||||||
L948A: cmp L9017,x
|
L948A: cmp highlight_list,x
|
||||||
beq bail3
|
beq bail3
|
||||||
dex
|
dex
|
||||||
bpl L948A
|
bpl L948A
|
||||||
@ -864,12 +858,12 @@ bail3: lda #3
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
L9498: lda #$01
|
L9498: lda #$01
|
||||||
sta L9015
|
sta has_highlight
|
||||||
L949D: ldx L9016
|
L949D: ldx highlight_count
|
||||||
ldy #0
|
ldy #0
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
sta L9017,x
|
sta highlight_list,x
|
||||||
inc L9016
|
inc highlight_count
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
ldx #1
|
ldx #1
|
||||||
jsr LA324
|
jsr LA324
|
||||||
@ -888,12 +882,12 @@ L949D: ldx L9016
|
|||||||
.proc UNHIGHLIGHT_ICON_IMPL
|
.proc UNHIGHLIGHT_ICON_IMPL
|
||||||
ptr := $06
|
ptr := $06
|
||||||
|
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
beq bail1
|
beq bail1
|
||||||
dex
|
dex
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda (ptr),y
|
lda (ptr),y
|
||||||
: cmp L8E96,x
|
: cmp icon_table,x
|
||||||
beq found
|
beq found
|
||||||
dex
|
dex
|
||||||
bpl :-
|
bpl :-
|
||||||
@ -903,19 +897,19 @@ bail1: lda #1
|
|||||||
|
|
||||||
found: asl a
|
found: asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta ptr
|
sta ptr
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta ptr+1
|
sta ptr+1
|
||||||
lda L9015
|
lda has_highlight
|
||||||
bne L94E9
|
bne L94E9
|
||||||
jmp done
|
jmp done
|
||||||
|
|
||||||
L94E9: ldx L9016
|
L94E9: ldx highlight_count
|
||||||
dex
|
dex
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda (ptr),y
|
lda (ptr),y
|
||||||
L94F1: cmp L9017,x
|
L94F1: cmp highlight_list,x
|
||||||
beq L94FC
|
beq L94FC
|
||||||
dex
|
dex
|
||||||
bpl L94F1
|
bpl L94F1
|
||||||
@ -936,11 +930,11 @@ done: jsr L9F98
|
|||||||
|
|
||||||
.proc L9508
|
.proc L9508
|
||||||
ldy #$00
|
ldy #$00
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
beq L951A
|
beq L951A
|
||||||
dex
|
dex
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
L9512: cmp L8E96,x
|
L9512: cmp icon_table,x
|
||||||
beq L951D
|
beq L951D
|
||||||
dex
|
dex
|
||||||
bpl L9512
|
bpl L9512
|
||||||
@ -949,9 +943,9 @@ L951A: lda #$01
|
|||||||
|
|
||||||
L951D: asl a
|
L951D: asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $06+1
|
sta $06+1
|
||||||
ldy #$01
|
ldy #$01
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -964,37 +958,37 @@ L9532: jsr calc_icon_poly
|
|||||||
jsr LA39D
|
jsr LA39D
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
jsr LA2E3
|
jsr LA2E3
|
||||||
dec L8E95
|
dec num_icons
|
||||||
lda #$00
|
lda #$00
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
sta L8E96,x
|
sta icon_table,x
|
||||||
ldy #$01
|
ldy #$01
|
||||||
lda #$00
|
lda #$00
|
||||||
sta ($06),y
|
sta ($06),y
|
||||||
lda L9015
|
lda has_highlight
|
||||||
beq L958C
|
beq L958C
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
dex
|
dex
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
L9566: cmp L9017,x
|
L9566: cmp highlight_list,x
|
||||||
beq L9571
|
beq L9571
|
||||||
dex
|
dex
|
||||||
bpl L9566
|
bpl L9566
|
||||||
jmp L958C
|
jmp L958C
|
||||||
|
|
||||||
L9571: ldx L9016
|
L9571: ldx highlight_count
|
||||||
jsr LA324
|
jsr LA324
|
||||||
dec L9016
|
dec highlight_count
|
||||||
lda L9016
|
lda highlight_count
|
||||||
bne L9584
|
bne L9584
|
||||||
lda #$00
|
lda #$00
|
||||||
sta L9015
|
sta has_highlight
|
||||||
L9584: lda #$00
|
L9584: lda #$00
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
sta L9017,x
|
sta highlight_list,x
|
||||||
L958C: lda #$00
|
L958C: lda #$00
|
||||||
rts
|
rts
|
||||||
.endproc
|
.endproc
|
||||||
@ -1008,9 +1002,9 @@ L958C: lda #$00
|
|||||||
lda ($06),y
|
lda ($06),y
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
jmp LA39D
|
jmp LA39D
|
||||||
.endproc
|
.endproc
|
||||||
@ -1020,58 +1014,60 @@ L958C: lda #$00
|
|||||||
;;; DESKTOP $05 IMPL
|
;;; DESKTOP $05 IMPL
|
||||||
|
|
||||||
.proc L95A2
|
.proc L95A2
|
||||||
jmp L9625
|
jmp start
|
||||||
|
|
||||||
;; DT_HIGHLIGHT_ICON params
|
;; DT_HIGHLIGHT_ICON params
|
||||||
L95A5:
|
icon: .byte 0
|
||||||
L95A6 := * + 1
|
buffer: .res 127, 0
|
||||||
.res 128, 0
|
|
||||||
|
|
||||||
L9625: lda HIGHLIGHT_ICON_IMPL ; ???
|
start: lda HIGHLIGHT_ICON_IMPL ; ???
|
||||||
beq L9639
|
beq start2
|
||||||
lda L9017
|
lda highlight_list
|
||||||
sta L95A5
|
sta icon
|
||||||
DESKTOP_DIRECT_CALL $0B, L95A5
|
DESKTOP_DIRECT_CALL $0B, icon
|
||||||
jmp L9625
|
jmp start
|
||||||
|
|
||||||
L9639: ldx #$7E
|
start2:
|
||||||
lda #$00
|
;; zero out buffer
|
||||||
L963D: sta L95A6,x
|
ldx #$7E
|
||||||
|
lda #0
|
||||||
|
: sta buffer,x
|
||||||
dex
|
dex
|
||||||
bpl L963D
|
bpl :-
|
||||||
ldx #$00
|
ldx #0
|
||||||
stx L95A5
|
stx icon
|
||||||
L9648: lda L8E96,x
|
|
||||||
|
L9648: lda icon_table,x
|
||||||
asl a
|
asl a
|
||||||
tay
|
tay
|
||||||
lda L8F15,y
|
lda icon_ptrs,y
|
||||||
sta $08
|
sta $08
|
||||||
lda L8F15+1,y
|
lda icon_ptrs+1,y
|
||||||
sta $08+1
|
sta $08+1
|
||||||
ldy #$02
|
ldy #2
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
and #$0F
|
and #$0F
|
||||||
ldy #$00
|
ldy #0
|
||||||
cmp ($06),y
|
cmp ($06),y
|
||||||
bne L9670
|
bne L9670
|
||||||
ldy #$00
|
ldy #0
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
ldy L95A5
|
ldy icon
|
||||||
sta L95A6,y
|
sta buffer,y
|
||||||
inc L95A5
|
inc icon
|
||||||
L9670: inx
|
L9670: inx
|
||||||
cpx L8E95
|
cpx num_icons
|
||||||
bne L9648
|
bne L9648
|
||||||
ldx #$00
|
ldx #$00
|
||||||
txa
|
txa
|
||||||
pha
|
pha
|
||||||
L967A: lda L95A6,x
|
L967A: lda buffer,x
|
||||||
bne L9681
|
bne L9681
|
||||||
pla
|
pla
|
||||||
rts
|
rts
|
||||||
|
|
||||||
L9681: sta L95A5
|
L9681: sta icon
|
||||||
DESKTOP_DIRECT_CALL DT_HIGHLIGHT_ICON, L95A5
|
DESKTOP_DIRECT_CALL DT_HIGHLIGHT_ICON, icon
|
||||||
pla
|
pla
|
||||||
tax
|
tax
|
||||||
inx
|
inx
|
||||||
@ -1090,20 +1086,20 @@ L9681: sta L95A5
|
|||||||
L9695: .byte 0
|
L9695: .byte 0
|
||||||
L9696: .byte 0
|
L9696: .byte 0
|
||||||
|
|
||||||
L9697: lda L8E95
|
L9697: lda num_icons
|
||||||
sta L9696
|
sta L9696
|
||||||
L969D: ldx L9696
|
L969D: ldx L9696
|
||||||
cpx #$00
|
cpx #$00
|
||||||
beq L96CF
|
beq L96CF
|
||||||
dec L9696
|
dec L9696
|
||||||
dex
|
dex
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
sta L9695
|
sta L9695
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $08
|
sta $08
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $08+1
|
sta $08+1
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
@ -1126,7 +1122,7 @@ L96CF: lda #$00
|
|||||||
L96D5: .byte 0
|
L96D5: .byte 0
|
||||||
L96D6: .byte 0
|
L96D6: .byte 0
|
||||||
|
|
||||||
L96D7: lda L8E95
|
L96D7: lda num_icons
|
||||||
sta L96D6
|
sta L96D6
|
||||||
L96DD: ldx L96D6
|
L96DD: ldx L96D6
|
||||||
bne L96E5
|
bne L96E5
|
||||||
@ -1135,13 +1131,13 @@ L96DD: ldx L96D6
|
|||||||
|
|
||||||
L96E5: dec L96D6
|
L96E5: dec L96D6
|
||||||
dex
|
dex
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
sta L96D5
|
sta L96D5
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $08
|
sta $08
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $08+1
|
sta $08+1
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
@ -1151,38 +1147,38 @@ L96E5: dec L96D6
|
|||||||
bne L96DD
|
bne L96DD
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
jsr LA2E3
|
jsr LA2E3
|
||||||
dec L8E95
|
dec num_icons
|
||||||
lda #$00
|
lda #$00
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
sta L8E96,x
|
sta icon_table,x
|
||||||
ldy #$01
|
ldy #$01
|
||||||
lda #$00
|
lda #$00
|
||||||
sta ($08),y
|
sta ($08),y
|
||||||
lda L9015
|
lda has_highlight
|
||||||
beq L9758
|
beq L9758
|
||||||
ldx #$00
|
ldx #$00
|
||||||
ldy #$00
|
ldy #$00
|
||||||
L972B: lda ($08),y
|
L972B: lda ($08),y
|
||||||
cmp L9017,x
|
cmp highlight_list,x
|
||||||
beq L973B
|
beq L973B
|
||||||
inx
|
inx
|
||||||
cpx L9016
|
cpx highlight_count
|
||||||
bne L972B
|
bne L972B
|
||||||
jmp L9758
|
jmp L9758
|
||||||
|
|
||||||
L973B: lda ($08),y
|
L973B: lda ($08),y
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
jsr LA324
|
jsr LA324
|
||||||
dec L9016
|
dec highlight_count
|
||||||
lda L9016
|
lda highlight_count
|
||||||
bne L9750
|
bne L9750
|
||||||
lda #$00
|
lda #$00
|
||||||
sta L9015
|
sta has_highlight
|
||||||
L9750: lda #$00
|
L9750: lda #$00
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
sta L9017,x
|
sta highlight_list,x
|
||||||
L9758: jmp L96DD
|
L9758: jmp L96DD
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
@ -1201,9 +1197,9 @@ L975F: sta ($06),y
|
|||||||
bne L975F
|
bne L975F
|
||||||
ldx #$00
|
ldx #$00
|
||||||
ldy #$00
|
ldy #$00
|
||||||
L976B: lda L9017,x
|
L976B: lda highlight_list,x
|
||||||
sta ($06),y
|
sta ($06),y
|
||||||
cpx L9016
|
cpx highlight_count
|
||||||
beq L977A
|
beq L977A
|
||||||
iny
|
iny
|
||||||
inx
|
inx
|
||||||
@ -1243,7 +1239,7 @@ start: ldy #3
|
|||||||
sta L97F5
|
sta L97F5
|
||||||
MGTK_CALL MGTK::MoveTo, moveto_params2
|
MGTK_CALL MGTK::MoveTo, moveto_params2
|
||||||
ldx #$00
|
ldx #$00
|
||||||
L97AA: cpx L8E95
|
L97AA: cpx num_icons
|
||||||
bne L97B9
|
bne L97B9
|
||||||
ldy #$04
|
ldy #$04
|
||||||
lda #$00
|
lda #$00
|
||||||
@ -1253,12 +1249,12 @@ L97AA: cpx L8E95
|
|||||||
|
|
||||||
L97B9: txa
|
L97B9: txa
|
||||||
pha
|
pha
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -1275,7 +1271,7 @@ L97E0: pla
|
|||||||
|
|
||||||
inside: pla
|
inside: pla
|
||||||
tax
|
tax
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
ldy #$04
|
ldy #$04
|
||||||
sta ($08),y
|
sta ($08),y
|
||||||
sta L97F6
|
sta L97F6
|
||||||
@ -1366,7 +1362,7 @@ L98A2: lda L982E
|
|||||||
bcs L98AC
|
bcs L98AC
|
||||||
jmp L9845
|
jmp L9845
|
||||||
|
|
||||||
L98AC: lda L9016
|
L98AC: lda highlight_count
|
||||||
cmp #$15
|
cmp #$15
|
||||||
bcc L98B6
|
bcc L98B6
|
||||||
jmp L9852
|
jmp L9852
|
||||||
@ -1375,12 +1371,12 @@ L98B6: lda #<drag_outline_buffer
|
|||||||
sta $08
|
sta $08
|
||||||
lda #>drag_outline_buffer
|
lda #>drag_outline_buffer
|
||||||
sta $08+1
|
sta $08+1
|
||||||
lda L9015
|
lda has_highlight
|
||||||
bne L98C8
|
bne L98C8
|
||||||
lda #$03
|
lda #$03
|
||||||
jmp L9C65
|
jmp L9C65
|
||||||
|
|
||||||
L98C8: lda L9017
|
L98C8: lda highlight_list
|
||||||
jsr L9EB4
|
jsr L9EB4
|
||||||
stax $06
|
stax $06
|
||||||
ldy #$02
|
ldy #$02
|
||||||
@ -1393,9 +1389,9 @@ L98E3: lda grafport::cliprect,x
|
|||||||
sta L9835,x
|
sta L9835,x
|
||||||
dex
|
dex
|
||||||
bpl L98E3
|
bpl L98E3
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
stx L9C74
|
stx L9C74
|
||||||
L98F2: lda L9016,x
|
L98F2: lda highlight_count,x
|
||||||
jsr L9EB4
|
jsr L9EB4
|
||||||
stax $06
|
stax $06
|
||||||
ldy #$00
|
ldy #$00
|
||||||
@ -1409,7 +1405,7 @@ L9909: sta L9834
|
|||||||
beq L9954
|
beq L9954
|
||||||
jsr calc_icon_poly
|
jsr calc_icon_poly
|
||||||
lda L9C74
|
lda L9C74
|
||||||
cmp L9016
|
cmp highlight_count
|
||||||
beq L9936
|
beq L9936
|
||||||
jsr LA365
|
jsr LA365
|
||||||
lda $08
|
lda $08
|
||||||
@ -1694,17 +1690,17 @@ L9BDC: lda L9832
|
|||||||
L9BE1: jsr LA365
|
L9BE1: jsr LA365
|
||||||
MGTK_CALL MGTK::InitPort, grafport
|
MGTK_CALL MGTK::InitPort, grafport
|
||||||
MGTK_CALL MGTK::SetPort, grafport
|
MGTK_CALL MGTK::SetPort, grafport
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
L9BF3: dex
|
L9BF3: dex
|
||||||
bmi L9C18
|
bmi L9C18
|
||||||
txa
|
txa
|
||||||
pha
|
pha
|
||||||
lda L9017,x
|
lda highlight_list,x
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
jsr calc_icon_poly
|
jsr calc_icon_poly
|
||||||
MGTK_CALL MGTK::SetPenMode, pencopy_2
|
MGTK_CALL MGTK::SetPenMode, pencopy_2
|
||||||
@ -1714,7 +1710,7 @@ L9BF3: dex
|
|||||||
jmp L9BF3
|
jmp L9BF3
|
||||||
|
|
||||||
L9C18: jsr LA382
|
L9C18: jsr LA382
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
dex
|
dex
|
||||||
txa
|
txa
|
||||||
pha
|
pha
|
||||||
@ -1722,12 +1718,12 @@ L9C18: jsr LA382
|
|||||||
sta $08
|
sta $08
|
||||||
lda #>drag_outline_buffer
|
lda #>drag_outline_buffer
|
||||||
sta $08+1
|
sta $08+1
|
||||||
L9C29: lda L9017,x
|
L9C29: lda highlight_list,x
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
@ -1941,9 +1937,9 @@ L9E2B: DESKTOP_DIRECT_CALL DT_FIND_ICON, findwindow_params2
|
|||||||
bne L9E39
|
bne L9E39
|
||||||
jmp L9E97
|
jmp L9E97
|
||||||
|
|
||||||
L9E39: ldx L9016
|
L9E39: ldx highlight_count
|
||||||
dex
|
dex
|
||||||
L9E3D: cmp L9017,x
|
L9E3D: cmp highlight_list,x
|
||||||
beq L9E97
|
beq L9E97
|
||||||
dex
|
dex
|
||||||
bpl L9E3D
|
bpl L9E3D
|
||||||
@ -1952,9 +1948,9 @@ L9E3D: cmp L9017,x
|
|||||||
beq L9E6A
|
beq L9E6A
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -1982,9 +1978,9 @@ L9E97: MGTK_CALL MGTK::InitPort, grafport
|
|||||||
L9EB3: .byte 0
|
L9EB3: .byte 0
|
||||||
L9EB4: asl a
|
L9EB4: asl a
|
||||||
tay
|
tay
|
||||||
lda L8F15+1,y
|
lda icon_ptrs+1,y
|
||||||
tax
|
tax
|
||||||
lda L8F15,y
|
lda icon_ptrs,y
|
||||||
rts
|
rts
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
@ -2002,23 +1998,23 @@ icon: .byte 0
|
|||||||
|
|
||||||
ptr := $6
|
ptr := $6
|
||||||
|
|
||||||
start: lda L9015
|
start: lda has_highlight
|
||||||
bne :+
|
bne :+
|
||||||
lda #1
|
lda #1
|
||||||
rts
|
rts
|
||||||
|
|
||||||
: ldx L9016
|
: ldx highlight_count
|
||||||
ldy #0
|
ldy #0
|
||||||
lda (ptr),y
|
lda (ptr),y
|
||||||
jsr LA324
|
jsr LA324
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
lda #0
|
lda #0
|
||||||
sta L9016,x
|
sta highlight_count,x
|
||||||
dec L9016
|
dec highlight_count
|
||||||
lda L9016
|
lda highlight_count
|
||||||
bne L9EEA
|
bne L9EEA
|
||||||
lda #$00
|
lda #$00
|
||||||
sta L9015
|
sta has_highlight
|
||||||
L9EEA: ldy #0
|
L9EEA: ldy #0
|
||||||
lda (ptr),y
|
lda (ptr),y
|
||||||
sta icon
|
sta icon
|
||||||
@ -2050,9 +2046,9 @@ start: ldy #0
|
|||||||
lda icon
|
lda icon
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $06+1
|
sta $06+1
|
||||||
jsr calc_icon_poly
|
jsr calc_icon_poly
|
||||||
|
|
||||||
@ -2422,17 +2418,17 @@ LA2AA: jsr LA382
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
LA2AE: jsr LA365
|
LA2AE: jsr LA365
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
dex
|
dex
|
||||||
LA2B5: bmi LA2AA
|
LA2B5: bmi LA2AA
|
||||||
txa
|
txa
|
||||||
pha
|
pha
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -2450,30 +2446,30 @@ LA2DD: pla
|
|||||||
LA2E3: stx LA322
|
LA2E3: stx LA322
|
||||||
sta LA323
|
sta LA323
|
||||||
ldx #$00
|
ldx #$00
|
||||||
LA2EB: lda L8E96,x
|
LA2EB: lda icon_table,x
|
||||||
cmp LA323
|
cmp LA323
|
||||||
beq LA2FA
|
beq LA2FA
|
||||||
inx
|
inx
|
||||||
cpx L8E95
|
cpx num_icons
|
||||||
bne LA2EB
|
bne LA2EB
|
||||||
rts
|
rts
|
||||||
|
|
||||||
LA2FA: lda L8E97,x
|
LA2FA: lda icon_table+1,x
|
||||||
sta L8E96,x
|
sta icon_table,x
|
||||||
inx
|
inx
|
||||||
cpx L8E95
|
cpx num_icons
|
||||||
bne LA2FA
|
bne LA2FA
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
LA309: cpx LA322
|
LA309: cpx LA322
|
||||||
beq LA318
|
beq LA318
|
||||||
lda L8E94,x
|
lda L8E94,x
|
||||||
sta L8E95,x
|
sta num_icons,x
|
||||||
dex
|
dex
|
||||||
jmp LA309
|
jmp LA309
|
||||||
|
|
||||||
LA318: ldx LA322
|
LA318: ldx LA322
|
||||||
lda LA323
|
lda LA323
|
||||||
sta L8E95,x
|
sta num_icons,x
|
||||||
rts
|
rts
|
||||||
LA322: .byte 0
|
LA322: .byte 0
|
||||||
LA323: .byte 0
|
LA323: .byte 0
|
||||||
@ -2483,30 +2479,30 @@ LA323: .byte 0
|
|||||||
LA324: stx LA363
|
LA324: stx LA363
|
||||||
sta LA364
|
sta LA364
|
||||||
ldx #$00
|
ldx #$00
|
||||||
LA32C: lda L9017,x
|
LA32C: lda highlight_list,x
|
||||||
cmp LA364
|
cmp LA364
|
||||||
beq LA33B
|
beq LA33B
|
||||||
inx
|
inx
|
||||||
cpx L9016
|
cpx highlight_count
|
||||||
bne LA32C
|
bne LA32C
|
||||||
rts
|
rts
|
||||||
|
|
||||||
LA33B: lda L9018,x
|
LA33B: lda highlight_list+1,x
|
||||||
sta L9017,x
|
sta highlight_list,x
|
||||||
inx
|
inx
|
||||||
cpx L9016
|
cpx highlight_count
|
||||||
bne LA33B
|
bne LA33B
|
||||||
ldx L9016
|
ldx highlight_count
|
||||||
LA34A: cpx LA363
|
LA34A: cpx LA363
|
||||||
beq LA359
|
beq LA359
|
||||||
lda L9015,x
|
lda has_highlight,x
|
||||||
sta L9016,x
|
sta highlight_count,x
|
||||||
dex
|
dex
|
||||||
jmp LA34A
|
jmp LA34A
|
||||||
|
|
||||||
LA359: ldx LA363
|
LA359: ldx LA363
|
||||||
lda LA364
|
lda LA364
|
||||||
sta L9016,x
|
sta highlight_count,x
|
||||||
rts
|
rts
|
||||||
LA363: .byte 0
|
LA363: .byte 0
|
||||||
LA364: .byte 0
|
LA364: .byte 0
|
||||||
@ -2636,7 +2632,7 @@ LA3FD: jsr LA6A3
|
|||||||
;;; ==================================================
|
;;; ==================================================
|
||||||
|
|
||||||
LA446: jsr LA365
|
LA446: jsr LA365
|
||||||
ldx L8E95
|
ldx num_icons
|
||||||
dex
|
dex
|
||||||
LA44D: cpx #$FF
|
LA44D: cpx #$FF
|
||||||
bne LA466
|
bne LA466
|
||||||
@ -2651,29 +2647,29 @@ LA462: jsr LA382
|
|||||||
|
|
||||||
LA466: txa
|
LA466: txa
|
||||||
pha
|
pha
|
||||||
lda L8E96,x
|
lda icon_table,x
|
||||||
cmp LA3AC
|
cmp LA3AC
|
||||||
beq LA4C5
|
beq LA4C5
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $08
|
sta $08
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $08+1
|
sta $08+1
|
||||||
ldy #$02
|
ldy #$02
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
and #$07
|
and #$07
|
||||||
cmp LA3AD
|
cmp LA3AD
|
||||||
bne LA4C5
|
bne LA4C5
|
||||||
lda L9015
|
lda has_highlight
|
||||||
beq LA49D
|
beq LA49D
|
||||||
ldy #$00
|
ldy #$00
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
ldx #$00
|
ldx #$00
|
||||||
LA492: cmp L9017,x
|
LA492: cmp highlight_list,x
|
||||||
beq LA4C5
|
beq LA4C5
|
||||||
inx
|
inx
|
||||||
cpx L9016
|
cpx highlight_count
|
||||||
bne LA492
|
bne LA492
|
||||||
LA49D: ldy #$00
|
LA49D: ldy #$00
|
||||||
lda ($08),y
|
lda ($08),y
|
||||||
@ -2783,9 +2779,9 @@ LA56F: pla
|
|||||||
tya
|
tya
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$03
|
ldy #$03
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
@ -2832,9 +2828,9 @@ LA5CB: pla
|
|||||||
tya
|
tya
|
||||||
asl a
|
asl a
|
||||||
tax
|
tax
|
||||||
lda L8F15,x
|
lda icon_ptrs,x
|
||||||
sta $06
|
sta $06
|
||||||
lda L8F15+1,x
|
lda icon_ptrs+1,x
|
||||||
sta $07
|
sta $07
|
||||||
ldy #$03
|
ldy #$03
|
||||||
lda ($06),y
|
lda ($06),y
|
||||||
|
Loading…
Reference in New Issue
Block a user