From 6ebce5d99c69e438a0f4e1c1059d944f4493150a Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Sun, 5 May 2019 08:08:45 -0700 Subject: [PATCH] prevent DOS 3.3P escape --- src/id/trace33p.a | 41 ++++++++++++++++++++++++----------------- src/strings/en.a | 2 +- 2 files changed, 25 insertions(+), 18 deletions(-) diff --git a/src/id/trace33p.a b/src/id/trace33p.a index fcdddf6..8c56968 100755 --- a/src/id/trace33p.a +++ b/src/id/trace33p.a @@ -59,18 +59,20 @@ TraceSpecDel3 lda $1212 cmp #$D8 bne SDfail - lda #$4C - sta $10D5 + ldy #$00 + lda $10D1 + cmp #$A2 + beq + + ldy #$04 ++ lda #$4C + sta $10D1,Y + sta $10EC,Y lda #TraceSpecDel4 - sta $10D7 - lda #$4C - sta $10F0 - lda #TraceSpecDel4 - sta $10F2 + sta $10D3,Y + sta $10EE,Y jmp $1212 TraceSpecDel4 @@ -97,18 +99,23 @@ SDsuccess ; ; Restore the original code in memory before writing. ; - lda #$A2 - sta $10D5 + ldy #$00 + lda $10D1 + cmp #$4C + beq + + ldy #$04 ++ lda #$A2 + sta $10D1,Y lda #$FF - sta $10D6 + sta $10D2,Y lda #$9A - sta $10D7 + sta $10D3,Y lda #$A5 - sta $10F0 + sta $10EC,Y lda #$2B - sta $10F1 + sta $10ED,Y lda #$4A - sta $10F2 + sta $10EE,Y ; ; move $1000-$13FF to $1100-$14FF to align it as we need it ; for writing to disk with the Standard Delivery bootloader diff --git a/src/strings/en.a b/src/strings/en.a index 271a149..e2bbb08 100755 --- a/src/strings/en.a +++ b/src/strings/en.a @@ -280,7 +280,7 @@ StringTableHigh ; can be set directly before calling PrintByID. ; .header - !text "Passport by 4am 2019-05-03",$00 + !text "Passport by 4am 2019-05-05",$00 .mainmenu !text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D,$8D !text " "