Merge remote-tracking branch 'origin/disasm'

This commit is contained in:
Joshua Bell 2018-12-14 20:10:45 -08:00
parent 9c1169d7bf
commit d632a7e999
8 changed files with 563 additions and 479 deletions

View File

@ -26,9 +26,9 @@ DA_MAX_SIZE := DA_IO_BUFFER - DA_LOAD_ADDRESS
;; Quit routine signature/data
quit_routine_signature := $D3FF
quit_string_1 := $D3EE
quit_string_2 := $D3AD
copied_to_ramcard_flag := $D3FF
ramcard_prefix := $D3EE
desktop_orig_prefix := $D3AD
;;; ============================================================
;;; Direct Calls (from main memory)

View File

@ -15,9 +15,9 @@
entry_copied_flags := $D395
;; Quit routine signature/data
quit_routine_signature := $D3FF ; $00 at start, $C0 mid copy, $80 done
quit_string_1 := $D3EE
quit_string_2 := $D3AD
copied_to_ramcard_flag := $D3FF ; $00 at start, $C0 mid copy, $80 done
ramcard_prefix := $D3EE
desktop_orig_prefix := $D3AD
;;; ============================================================
.proc copy_desktop_to_ramcard
@ -202,7 +202,7 @@ match: sta $D3AC
lda ROMIN2
ldx #0
jsr set_quit_routine_signature
jsr set_copied_to_ramcard_flag
;; Point $8 at $C100
lda #0
@ -285,13 +285,13 @@ found_slot:
bne :-
ldx #$C0
jsr set_quit_routine_signature
addr_call set_quit_string_1, path0
jsr set_copied_to_ramcard_flag
addr_call set_ramcard_prefix, path0
jsr check_desktop2_on_device
bcs :+
ldx #$80
jsr set_quit_routine_signature
jsr copy_2005_to_quit_string_2
jsr set_copied_to_ramcard_flag
jsr copy_2005_to_desktop_orig_prefix
jmp fail
: lda BUTN1
@ -322,7 +322,7 @@ str_slash_desktop:
jmp fail_copy
: dec buffer
ldx #$80
jsr set_quit_routine_signature
jsr set_copied_to_ramcard_flag
ldy buffer
: lda buffer,y
@ -379,7 +379,7 @@ fail2: lda copy_flag
sta path0
MLI_CALL SET_PREFIX, set_prefix_params
: jsr write_desktop1
jsr copy_2005_to_quit_string_2
jsr copy_2005_to_desktop_orig_prefix
lda #$00
sta RAMWORKS_BANK ; ???
@ -392,17 +392,17 @@ fail2: lda copy_flag
;;; ============================================================
.proc set_quit_routine_signature
.proc set_copied_to_ramcard_flag
lda LCBANK2
lda LCBANK2
stx quit_routine_signature
stx copied_to_ramcard_flag
lda ROMIN2
rts
.endproc
.proc set_quit_string_1
.proc set_ramcard_prefix
ptr := $6
target := quit_string_1
target := ramcard_prefix
stax ptr
lda LCBANK2
@ -418,9 +418,9 @@ fail2: lda copy_flag
rts
.endproc
.proc set_quit_string_2
.proc set_desktop_orig_prefix
ptr := $6
target := quit_string_2
target := desktop_orig_prefix
stax ptr
lda LCBANK2
@ -880,8 +880,8 @@ start: MLI_CALL OPEN, open_params
;;; ============================================================
.proc copy_2005_to_quit_string_2
addr_call set_quit_string_2, L2005
.proc copy_2005_to_desktop_orig_prefix
addr_call set_desktop_orig_prefix, L2005
rts
.endproc
@ -929,6 +929,7 @@ prodos_loader_blocks:
;; $ 2 - 24 * 16-byte data entries
;; $0 - label (length-prefixed, 15 bytes)
;; $F - active_flag (other flags, i.e. download on ... ?)
;; bit 6 = "down loaded" flag ???
;; $182 - 24 * 64-byte pathname
;; $782 - EOF
@ -942,7 +943,7 @@ prodos_loader_blocks:
jsr HOME
lda LCBANK2
lda LCBANK2
lda quit_routine_signature
lda copied_to_ramcard_flag
pha
lda ROMIN2
pla
@ -1876,8 +1877,8 @@ L38D6: lda L324A,y
lda LCBANK2
lda LCBANK2
ldy quit_string_1
: lda quit_string_1,y
ldy ramcard_prefix
: lda ramcard_prefix,y
sta L320A,y
dey
bpl :-

View File

@ -2958,12 +2958,12 @@ str_info_blocks:
str_colon:
PASCAL_STRING ": "
LB22D: DEFINE_POINT 160,59
LB231: DEFINE_POINT 145,59
LB235: DEFINE_POINT 200,59
LB239: DEFINE_POINT 185,59
LB23D: DEFINE_POINT 205,59
LB241: DEFINE_POINT 195,59
file_count_pos3: DEFINE_POINT 160,59
file_count_pos4: DEFINE_POINT 145,59
files_pos: DEFINE_POINT 200,59
files_pos2: DEFINE_POINT 185,59
file_count_pos: DEFINE_POINT 205,59
file_count_pos2: DEFINE_POINT 195,59
str_format_disk: PASCAL_STRING "Format a Disk ..."
str_select_format: PASCAL_STRING "Select the location where the disk is to be formatted"

File diff suppressed because it is too large Load Diff

View File

@ -294,7 +294,10 @@ watch_cursor:
.byte px(%0000000),px(%0000000)
.byte 5, 5
LD343: .word 0
num_selector_list_items:
.byte 0
LD344: .byte 0
buf_filename2: .res 16, 0
buf_win_path: .res 43, 0
@ -874,8 +877,15 @@ selector_menu_addr:
.addr selector_menu
;; Buffer for Run List entries
max_run_list_entries = 8
;; Names
run_list_entries:
.res 640, 0
.res max_run_list_entries * 16, 0
;; Paths
run_list_paths:
.res max_run_list_entries * 64, 0
;;; ============================================================
;;; Window & Icon State
@ -932,7 +942,9 @@ path_buf4:
.res 65, 0
path_buf3:
.res 65, 0
LE04B: .res 16, 0
filename_buf:
.res 16, 0
LE05B: .byte $00
LE05C: .byte $00
LE05D: .byte $00
@ -1021,14 +1033,10 @@ disable: .byte 0
LE26F: .byte $00
LE270: .byte $04 ; number of items in startup menu?
.byte $00
.byte $00,$00,$00,$00,$00,$00,$00,$00
.addr str_all
LE27C: DEFINE_MENU_SEPARATOR
check_menu:
DEFINE_MENU 4
DEFINE_MENU_ITEM str_all
DEFINE_MENU_SEPARATOR
DEFINE_MENU_ITEM sd0s
DEFINE_MENU_ITEM sd1s
DEFINE_MENU_ITEM sd2s
@ -1098,14 +1106,9 @@ selector_menu:
DEFINE_MENU_ITEM label_del
DEFINE_MENU_ITEM label_run, '0', '0'
DEFINE_MENU_SEPARATOR
DEFINE_MENU_ITEM run_list_entries + 0 * $10, '1', '1'
DEFINE_MENU_ITEM run_list_entries + 1 * $10, '2', '2'
DEFINE_MENU_ITEM run_list_entries + 2 * $10, '3', '3'
DEFINE_MENU_ITEM run_list_entries + 3 * $10, '4', '4'
DEFINE_MENU_ITEM run_list_entries + 4 * $10, '5', '5'
DEFINE_MENU_ITEM run_list_entries + 5 * $10, '6', '6'
DEFINE_MENU_ITEM run_list_entries + 6 * $10, '7', '7'
DEFINE_MENU_ITEM run_list_entries + 7 * $10, '8', '8'
.repeat max_run_list_entries, i
DEFINE_MENU_ITEM run_list_entries + i * $10, .string(i+1), .string(i+1)
.endrepeat
label_add:
PASCAL_STRING "Add an Entry ..."

View File

@ -21,10 +21,10 @@ L9016: rts
L9017: lda $0C00
clc
adc $0C01
sta LD343
sta num_selector_list_items
lda #$00
sta LD343+1
jsr get_quit_routine_signature
sta LD344
jsr get_copied_to_ramcard_flag
cmp #$80
bne L9015
jsr JUMP_TABLE_REDRAW_ALL
@ -307,7 +307,7 @@ L9282: lda L938D
cmp #$C0
beq L92F0
sta L938A
jsr get_quit_routine_signature
jsr get_copied_to_ramcard_flag
beq L92F0
lda L938A
beq L92CE
@ -474,7 +474,7 @@ L9471: cmp #$10
ldx #$00
lda #$73
bne L947F
L947B: ldax #$00DC
L947B: ldax #220
L947F: clc
adc #$0A
sta dialog_label_pos
@ -736,32 +736,32 @@ L97A0: pha
bne L97B2
addr_jump L97B6, $0069
L97B2: ldax #$00D2
L97B2: ldax #210
L97B6: clc
adc #$09
adc #9
sta rect_D877
txa
adc #$00
adc #0
sta rect_D877+1
pla
cmp #$08
cmp #8
bcc L97D4
cmp #$10
cmp #16
bcs L97D1
sec
sbc #$08
sbc #8
jmp L97D4
L97D1: sec
sbc #$10
sbc #16
L97D4: asl a
asl a
asl a
clc
adc #$18
adc #24
sta rect_D877+2
lda #$00
adc #$00
lda #0
adc #0
sta rect_D877+3
add16 rect_D877, #106, rect_D877+4
add16 rect_D877+2, #7, rect_D877+6
@ -808,13 +808,13 @@ L985E: MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
MGTK_RELAY_CALL MGTK::PaintRect, rect_D6F8
MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
MGTK_RELAY_CALL MGTK::PaintRect, rect_D6F8
return #$00
return #0
L9885: MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
MGTK_RELAY_CALL MGTK::PaintRect, rect_D700
MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
MGTK_RELAY_CALL MGTK::PaintRect, rect_D700
return #$01
return #1
L98AC: lda L938B
ora L938C
@ -1252,7 +1252,7 @@ L9C09: sta warning_dialog_num
DEFINE_WRITE_PARAMS write_params, $C00, $800
DEFINE_CLOSE_PARAMS flush_close_params
L9C26: addr_call copy_quit_string_2, $1C00
L9C26: addr_call copy_desktop_orig_prefix, $1C00
inc $1C00
ldx $1C00
lda #'/'
@ -1439,11 +1439,11 @@ params: .addr 0
;;; ============================================================
.proc get_quit_routine_signature
.proc get_copied_to_ramcard_flag
sta ALTZPOFF
lda LCBANK2
lda LCBANK2
lda quit_routine_signature
lda copied_to_ramcard_flag
tax
sta ALTZPON
lda LCBANK1
@ -1452,14 +1452,14 @@ params: .addr 0
rts
.endproc
.proc copy_quit_string_1
.proc copy_ramcard_prefix
stax @addr
sta ALTZPOFF
lda LCBANK2
lda LCBANK2
ldx quit_string_1
: lda quit_string_1,x
ldx ramcard_prefix
: lda ramcard_prefix,x
@addr := *+1
sta dummy1234,x
dex
@ -1471,14 +1471,14 @@ params: .addr 0
rts
.endproc
.proc copy_quit_string_2
.proc copy_desktop_orig_prefix
stax @addr
sta ALTZPOFF
lda LCBANK2
lda LCBANK2
ldx quit_string_2
: lda quit_string_2,x
ldx desktop_orig_prefix
: lda desktop_orig_prefix,x
@addr := *+1
sta dummy1234,x
dex
@ -1500,7 +1500,7 @@ L9E61: jsr L9E74
rts
L9E74: sta L9EBF
addr_call copy_quit_string_1, L9EC1
addr_call copy_ramcard_prefix, L9EC1
lda L9EBF
jsr L9BE2
stax $06

View File

@ -1847,10 +1847,12 @@ L62C7: .byte 0
;;; ============================================================
L62DE: ldax #$0F5A
L62E2: sta L63C2,x
L62DE: lda #'Z'
ldx #15
: sta L63C2,x
dex
bpl L62E2
bpl :-
lda #$00
sta L63BF
sta L63BE
@ -1902,10 +1904,13 @@ L634B: lda L63C0
lda ($06),y
ora #$80
sta ($06),y
ldax #$0F5A
L635D: sta L63C2,x
lda #'Z'
ldx #15
: sta L63C2,x
dex
bpl L635D
bpl :-
ldx L63BF
lda L63C0
sta L63D2,x

View File

@ -118,6 +118,8 @@ ST_VOLUME_DIRECTORY := $0F
;;; Errors
;;; ============================================================
ERR_DEVICE_NOT_CONNECTED := $28
ERR_WRITE_PROTECTED := $2B
ERR_INVALID_REFERENCE := $43
ERR_PATH_NOT_FOUND := $44
ERR_VOL_NOT_FOUND := $45