From af67f17da1e817fa1e26d4eaa72c5764b4bacaa9 Mon Sep 17 00:00:00 2001 From: Paul Gardner-Stephen Date: Wed, 24 Apr 2019 14:57:15 +0930 Subject: [PATCH] reduce avoidable byte similarities with C64 KERNAL --- c64/kernal/getin.s | 2 +- c64/kernal/ramtas.s | 8 +++++++- c64/kernal/stop.s | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/c64/kernal/getin.s b/c64/kernal/getin.s index f7a0aa16..6df398c1 100644 --- a/c64/kernal/getin.s +++ b/c64/kernal/getin.s @@ -6,8 +6,8 @@ getin: bne + ;; Nothing in keyboard buffer to read - lda #$00 sec + lda #$00 rts * diff --git a/c64/kernal/ramtas.s b/c64/kernal/ramtas.s index ec240259..274f97c5 100644 --- a/c64/kernal/ramtas.s +++ b/c64/kernal/ramtas.s @@ -10,8 +10,14 @@ ramtas_l1: INY BNE ramtas_l1 ramtas_l2: - STA $0200,Y + ;; How many ways are there to efficiently erase these two pages + ;; of RAM? We would like to avoid any unnecessary byte similarity + ;; with the C64 KERNAL. Thus we do $0300 before $0200, even though + ;; with the longer sequence of identicale bytes we see no basis for + ;; it being copyrightable. Again, we just want to redue the attack + ;; surface for any misguided suit. STA $0300,Y + STA $0200,Y INY BNE ramtas_l2 diff --git a/c64/kernal/stop.s b/c64/kernal/stop.s index 88aa89ef..2f8e82e2 100644 --- a/c64/kernal/stop.s +++ b/c64/kernal/stop.s @@ -15,6 +15,6 @@ stop: rts stop_pressed: - lda #$00 sec + lda #$00 rts