mirror of
https://github.com/mi57730/a2d.git
synced 2024-11-29 07:49:20 +00:00
DeskTop: Unify filename case adjusting procs
This commit is contained in:
parent
c7c7d866e4
commit
8bb974200c
@ -8103,30 +8103,27 @@ next: dey
|
|||||||
bpl :+
|
bpl :+
|
||||||
done: rts
|
done: rts
|
||||||
|
|
||||||
;; Ignore punctuation
|
|
||||||
: lda (ptr),y
|
: lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK ; convert to ASCII
|
||||||
cmp #'/'
|
cmp #'/'
|
||||||
beq skip
|
beq skip
|
||||||
cmp #' '
|
cmp #' ' ; (these two lines are not present
|
||||||
beq skip
|
beq skip ; in most filename case adjust procs)
|
||||||
cmp #'.'
|
cmp #'.'
|
||||||
bne check
|
bne check_alpha
|
||||||
skip: dey
|
skip: dey
|
||||||
jmp next
|
jmp next
|
||||||
|
|
||||||
;; Look at previous character - is it a letter?
|
check_alpha:
|
||||||
check: iny
|
iny
|
||||||
lda (ptr),y
|
lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK
|
||||||
cmp #'A'
|
cmp #'A'
|
||||||
bcc :+
|
bcc :+
|
||||||
cmp #'Z'+1
|
cmp #'Z'+1
|
||||||
bcs :+
|
bcs :+
|
||||||
|
|
||||||
;; Yes - uppercase it.
|
|
||||||
clc
|
clc
|
||||||
adc #$20
|
adc #('a' - 'A') ; convert to lower case
|
||||||
sta (ptr),y
|
sta (ptr),y
|
||||||
: dey
|
: dey
|
||||||
jmp next
|
jmp next
|
||||||
@ -13219,18 +13216,19 @@ LB76C: stax $06
|
|||||||
tay
|
tay
|
||||||
bne loop
|
bne loop
|
||||||
rts
|
rts
|
||||||
|
|
||||||
loop: dey
|
loop: dey
|
||||||
beq done
|
beq done
|
||||||
bpl :+
|
bpl :+
|
||||||
done: rts
|
done: rts
|
||||||
|
|
||||||
: lda (ptr),y
|
: lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK ; convert to ASCII
|
||||||
cmp #'/'
|
cmp #'/'
|
||||||
beq :+
|
beq next
|
||||||
cmp #'.'
|
cmp #'.'
|
||||||
bne check_alpha
|
bne check_alpha
|
||||||
: dey
|
next: dey
|
||||||
jmp loop
|
jmp loop
|
||||||
|
|
||||||
check_alpha:
|
check_alpha:
|
||||||
@ -13242,7 +13240,7 @@ check_alpha:
|
|||||||
cmp #'Z'+1
|
cmp #'Z'+1
|
||||||
bcs :+
|
bcs :+
|
||||||
clc
|
clc
|
||||||
adc #('a' - 'A') ; Lowercase
|
adc #('a' - 'A') ; convert to lower case
|
||||||
sta (ptr),y
|
sta (ptr),y
|
||||||
: dey
|
: dey
|
||||||
jmp loop
|
jmp loop
|
||||||
|
@ -874,7 +874,7 @@ LD77E: lda $1300
|
|||||||
LD798: lda $1300
|
LD798: lda $1300
|
||||||
and #$0F
|
and #$0F
|
||||||
sta $1300
|
sta $1300
|
||||||
addr_call LE0FE, $1300
|
addr_call adjust_case, $1300
|
||||||
jsr LE674
|
jsr LE674
|
||||||
jsr LE559
|
jsr LE559
|
||||||
LD7AD: lda LD417
|
LD7AD: lda LD417
|
||||||
@ -935,7 +935,7 @@ LD817: lda $1300
|
|||||||
jmp LD83C
|
jmp LD83C
|
||||||
|
|
||||||
LD82C: sta $1300
|
LD82C: sta $1300
|
||||||
addr_call LE0FE, $1300
|
addr_call adjust_case, $1300
|
||||||
ldx #$00
|
ldx #$00
|
||||||
ldy #$13
|
ldy #$13
|
||||||
lda #$02
|
lda #$02
|
||||||
@ -1724,40 +1724,50 @@ LE0B4: stax $06
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
LE0FD: .byte 0
|
LE0FD: .byte 0
|
||||||
LE0FE: stx $0B
|
|
||||||
sta $0A
|
;;; ============================================================
|
||||||
ldy #$00
|
|
||||||
lda ($0A),y
|
.proc adjust_case
|
||||||
|
ptr := $A
|
||||||
|
|
||||||
|
stx ptr+1
|
||||||
|
sta ptr
|
||||||
|
ldy #0
|
||||||
|
lda (ptr),y
|
||||||
tay
|
tay
|
||||||
bne LE10A
|
bne next
|
||||||
rts
|
rts
|
||||||
|
|
||||||
LE10A: dey
|
next: dey
|
||||||
beq LE10F
|
beq done
|
||||||
bpl LE110
|
bpl :+
|
||||||
LE10F: rts
|
done: rts
|
||||||
|
|
||||||
LE110: lda ($0A),y
|
: lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK ; convert to ASCII
|
||||||
cmp #'/'
|
cmp #'/'
|
||||||
beq LE11C
|
beq skip
|
||||||
cmp #'.'
|
cmp #'.'
|
||||||
bne LE120
|
bne check_alpha
|
||||||
LE11C: dey
|
skip: dey
|
||||||
jmp LE10A
|
jmp next
|
||||||
|
|
||||||
LE120: iny
|
check_alpha:
|
||||||
lda ($0A),y
|
iny
|
||||||
|
lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK
|
||||||
cmp #'A'
|
cmp #'A'
|
||||||
bcc LE132
|
bcc :+
|
||||||
cmp #'Z'+1
|
cmp #'Z'+1
|
||||||
bcs LE132
|
bcs :+
|
||||||
clc
|
clc
|
||||||
adc #('a' - 'A')
|
adc #('a' - 'A') ; convert to lower case
|
||||||
sta ($0A),y
|
sta (ptr),y
|
||||||
LE132: dey
|
: dey
|
||||||
jmp LE10A
|
jmp next
|
||||||
|
.endproc
|
||||||
|
|
||||||
|
;;; ============================================================
|
||||||
|
|
||||||
.byte 0
|
.byte 0
|
||||||
LE137: sta getwinport_params::window_id
|
LE137: sta getwinport_params::window_id
|
||||||
@ -2026,7 +2036,7 @@ LE31B: sta LE399
|
|||||||
sta $07
|
sta $07
|
||||||
lda $06
|
lda $06
|
||||||
ldx $07
|
ldx $07
|
||||||
jsr LE0FE
|
jsr adjust_case
|
||||||
lda $06
|
lda $06
|
||||||
ldx $07
|
ldx $07
|
||||||
jsr draw_text
|
jsr draw_text
|
||||||
|
@ -1666,10 +1666,12 @@ L6128: .byte 0
|
|||||||
;;; ============================================================
|
;;; ============================================================
|
||||||
|
|
||||||
.proc adjust_filename_case
|
.proc adjust_filename_case
|
||||||
stx $0A+1
|
ptr := $A
|
||||||
sta $0A
|
|
||||||
|
stx ptr+1
|
||||||
|
sta ptr
|
||||||
ldy #0
|
ldy #0
|
||||||
lda ($0A),y
|
lda (ptr),y
|
||||||
tay
|
tay
|
||||||
bne loop
|
bne loop
|
||||||
rts
|
rts
|
||||||
@ -1678,26 +1680,28 @@ loop: dey
|
|||||||
beq done
|
beq done
|
||||||
bpl :+
|
bpl :+
|
||||||
done: rts
|
done: rts
|
||||||
: lda ($0A),y
|
|
||||||
|
: lda (ptr),y
|
||||||
and #CHAR_MASK ; convert to ASCII
|
and #CHAR_MASK ; convert to ASCII
|
||||||
cmp #'/'
|
cmp #'/'
|
||||||
beq next
|
beq next
|
||||||
cmp #'.'
|
cmp #'.'
|
||||||
bne check
|
bne check_alpha
|
||||||
next: dey
|
next: dey
|
||||||
jmp loop
|
jmp loop
|
||||||
|
|
||||||
check: iny
|
check_alpha:
|
||||||
lda ($0A),y
|
iny
|
||||||
|
lda (ptr),y
|
||||||
and #CHAR_MASK
|
and #CHAR_MASK
|
||||||
cmp #'A'
|
cmp #'A'
|
||||||
bcc L615D
|
bcc :+
|
||||||
cmp #'Z'+1
|
cmp #'Z'+1
|
||||||
bcs L615D
|
bcs :+
|
||||||
clc
|
clc
|
||||||
adc #$20 ; convert to lower case
|
adc #('a' - 'A') ; convert to lower case
|
||||||
sta ($0A),y
|
sta (ptr),y
|
||||||
L615D: dey
|
: dey
|
||||||
jmp loop
|
jmp loop
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user