Merge remote-tracking branch 'origin/disasm'

This commit is contained in:
Joshua Bell 2019-01-29 22:56:17 -08:00
commit f67fb001b6

View File

@ -1652,14 +1652,16 @@ running_da_flag:
jsr restore_dynamic_routine jsr restore_dynamic_routine
jsr set_pointer_cursor jsr set_pointer_cursor
pla pla
bpl L4CCD bpl :+
jmp L4CD6 jmp L4CD6
;;; -------------------------------------------------- ;; --------------------------------------------------
L4CCD: jsr copy_paths_and_split_name : jsr copy_paths_and_split_name
jsr redraw_windows_and_desktop jsr redraw_windows_and_desktop
jsr jt_copy_file jsr jt_copy_file
L4CD6: pha L4CD6: pha
jsr set_pointer_cursor jsr set_pointer_cursor
pla pla
@ -1669,24 +1671,28 @@ L4CD6: pha
: addr_call find_window_for_path, path_buf4 : addr_call find_window_for_path, path_buf4
beq :+ beq :+
pha pha
jsr L6F0D jsr update_used_free_for_vol_windows
pla pla
jmp select_and_refresh_window jmp select_and_refresh_window
;; --------------------------------------------------
;; Update used/free for windows for same vol as path_buf4
: ldy #1 : ldy #1
L4CF3: iny @loop: iny
lda path_buf4,y lda path_buf4,y
cmp #'/' cmp #'/'
beq :+ beq :+
cpy path_buf4 cpy path_buf4
bne L4CF3 bne @loop
iny iny
: dey : dey
sty path_buf4 sty path_buf4
addr_call find_windows_for_prefix, path_buf4 addr_call find_windows_for_prefix, path_buf4
ldax #path_buf4 ldax #path_buf4
ldy path_buf4 ldy path_buf4
jsr L6F4B jsr update_vol_used_free_for_found_windows
jmp redraw_windows_and_desktop jmp redraw_windows_and_desktop
.endproc .endproc
@ -1784,7 +1790,7 @@ L4D9D: pha
addr_call find_window_for_path, path_buf3 addr_call find_window_for_path, path_buf3
beq L4DC2 beq L4DC2
pha pha
jsr L6F0D jsr update_used_free_for_vol_windows
pla pla
jmp select_and_refresh_window jmp select_and_refresh_window
@ -1801,7 +1807,7 @@ L4DC2: ldy #1
addr_call find_windows_for_prefix, path_buf3 addr_call find_windows_for_prefix, path_buf3
ldax #path_buf3 ldax #path_buf3
ldy path_buf3 ldy path_buf3
jsr L6F4B jsr update_vol_used_free_for_found_windows
jmp redraw_windows_and_desktop jmp redraw_windows_and_desktop
.endproc .endproc
@ -3847,7 +3853,7 @@ L5D77: lda drag_drop_param
cmp trash_icon_num cmp trash_icon_num
bne L5D8E bne L5D8E
lda active_window_id lda active_window_id
jsr L6F0D jsr update_used_free_for_vol_windows
lda active_window_id lda active_window_id
jsr select_and_refresh_window jsr select_and_refresh_window
jmp redraw_windows_and_desktop jmp redraw_windows_and_desktop
@ -3859,7 +3865,7 @@ L5D8E: lda drag_drop_param
L5D99: and #$7F L5D99: and #$7F
pha pha
jsr L6F0D jsr update_used_free_for_vol_windows
pla pla
jsr select_and_refresh_window jsr select_and_refresh_window
jmp redraw_windows_and_desktop jmp redraw_windows_and_desktop
@ -4862,7 +4868,7 @@ L6863: lda drag_drop_param
bpl L6872 bpl L6872
and #$7F and #$7F
pha pha
jsr L6F0D jsr update_used_free_for_vol_windows
pla pla
jmp select_and_refresh_window jmp select_and_refresh_window
@ -5038,12 +5044,12 @@ L6A5C: lda (ptr),y
jsr find_windows_for_prefix jsr find_windows_for_prefix
ldax #path_buf ldax #path_buf
ldy path_buf ldy path_buf
jmp L6F4B jmp update_vol_used_free_for_found_windows
L6A80: inx L6A80: inx
txa txa
pha pha
jsr L6F0D jsr update_used_free_for_vol_windows
pla pla
jmp select_and_refresh_window jmp select_and_refresh_window
.endproc .endproc
@ -5540,8 +5546,10 @@ flag: .byte 0
.endproc .endproc
;;; ============================================================ ;;; ============================================================
;;; Refresh vol used/free for windows of same volume as win in A.
;;; Input: A = window id
.proc L6F0D .proc update_used_free_for_vol_windows
ptr := $6 ptr := $6
jsr window_path_lookup jsr window_path_lookup
@ -5566,15 +5574,16 @@ finish: sty pathlen
addr_call_indirect find_windows_for_prefix, ptr ; ??? addr_call_indirect find_windows_for_prefix, ptr ; ???
ldax pathptr ldax pathptr
ldy pathlen ldy pathlen
jmp L6F4B jmp update_vol_used_free_for_found_windows
pathptr: .addr 0 pathptr: .addr 0
pathlen: .byte 0 pathlen: .byte 0
.endproc .endproc
;;; ============================================================ ;;; ============================================================
;;; Update used/free for results of find_window[s]_for_prefix
.proc L6F4B .proc update_vol_used_free_for_found_windows
ptr := $6 ptr := $6
stax ptr stax ptr
@ -5587,11 +5596,11 @@ pathlen: .byte 0
jsr get_vol_free_used jsr get_vol_free_used
bne L6F8F bne done
lda found_windows_count lda found_windows_count
beq L6F8F beq done
L6F64: dec found_windows_count loop: dec found_windows_count
bmi L6F8F bmi done
ldx found_windows_count ldx found_windows_count
lda found_windows_list,x lda found_windows_list,x
sec sec
@ -5600,9 +5609,9 @@ L6F64: dec found_windows_count
tax tax
copy16 vol_kb_used, window_k_used_table,x copy16 vol_kb_used, window_k_used_table,x
copy16 vol_kb_free, window_k_free_table,x copy16 vol_kb_free, window_k_free_table,x
jmp L6F64 jmp loop
L6F8F: rts done: rts
.endproc .endproc
;;; ============================================================ ;;; ============================================================