From acdc32fe2088f6ecf9fef640bb5daf3217cd3c0c Mon Sep 17 00:00:00 2001 From: Zellyn Hunter Date: Mon, 19 Dec 2016 23:55:00 -0500 Subject: [PATCH] langcard test updates; use standard delivery .DSK Created the first test that passes on real hardware but not on Virtual ][ (or any of the other emulators I've tried). Use new `diskii mksd` to create a "Standard Delivery" disk image. See https://github.com/peterferrie/standard-delivery for details. The main reason is that ADTPro transfers disk images with lots of zero bytes faster :-) --- audit/audit.dsk | Bin 143360 -> 143360 bytes audit/build | 10 ++++++---- audit/langcard.asm | 20 +++++++++++++++----- v0/index.md | 2 +- 4 files changed, 22 insertions(+), 10 deletions(-) diff --git a/audit/audit.dsk b/audit/audit.dsk index 8cc44b5a4e4f8b13229966fb8e045fa050d3d8ec..70ce92aa56f4fccbc0d77ee9cd5ed6cacff73adb 100644 GIT binary patch delta 1861 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

7BFE3SBgcg6Rf3>U5%v^TPy8me*tn5mSe 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 ../v0/index.md diff --git a/audit/langcard.asm b/audit/langcard.asm index 4a6af50..10bd701 100644 --- a/audit/langcard.asm +++ b/audit/langcard.asm @@ -238,9 +238,12 @@ beq .test tax bmi + - lda $C080,x + ora #$80 + sta .lda+1 +.lda lda $C000 jmp ++ -+ sta $C000,x ++ sta .sta+1 +.sta sta $C000 ++ iny bne .inner @@ -380,7 +383,7 @@ + jmp .outer .datatesturl - +prerr $001E ;; E001E: We initialized $D17B in RAM bank 1 to $55, $D17B in RAM bank 2 to $AA, and $FE1F in RAM to $55. Then, we perform a testdata-driven sequence of LDA and STA to the $C08X range. Finally we (try to) increment $D17B and $FE1F. Then we test (a) the current live value in $D17B, (b) the current live value in $FE1F, (c) the RAM bank 1 value of $D17B, (d) the RAM bank 2 value of $D17B, and (e) the RAM value of $FE1F, to see whether they match expected values. $D17B is usually $53 in ROM, and $FE1F is usally $60. + +prerr $001E ;; E001E: We initialized $D17B in RAM bank 1 to $55, $D17B in RAM bank 2 to $AA, and $FE1F in RAM to $55. Then, we perform a testdata-driven sequence of LDA and STA to the $C08X range. Finally we (try to) increment $D17B and $FE1F. Then we test (a) the current live value in $D17B, (b) the current live value in $FE1F, (c) the RAM bank 1 value of $D17B, (d) the RAM bank 2 value of $D17B, and (e) the RAM value of $FE1F, to see whether they match expected values. $D17B is usually $53 in ROM, and $FE1F is usally $60. For more information on the operation of the language card soft-switches, see Understanding the Apple IIe, by James Fielding Sather, Pg 5-24. !text "DATA-DRIVEN TEST FAILED" +prerred beq .done @@ -427,8 +430,15 @@ ;; Format: ;; - $ff-terminated list of C0XX addresses (0-F to read C08X, 80-8F to write C0XX). ;; - quint: expected current $d17b and fe1f, then d17b in bank1, d17b in bank 2, and fe1f - !byte $8, $ff ; Read $C088 (RAM read, write protected) - !byte $55, $55, $55, $AA, $55 + ;; (All sequences start with lda $C080, just to reset things to a known state.) + !byte $8, $ff ; Read $C088 (RAM read, write protected) + !byte $55, $55, $55, $AA, $55 ; + !byte $1, $1, $ff ; Read $C081, $C081 (read ROM, write RAM bank 2) + !byte $53, $60, $55, $54, $61 ; + !byte $b, $b, $ff ; Read $C08B, $C08B (read/write RAM bank 1) + !byte $56, $56, $56, $AA, $56 ; + !byte $b, $8b, $b, $ff ; Read $C08B, write $C08B, read $C08B (read RAM bank 1, no write) + !byte $55, $55, $55, $AA, $55 ; !byte $ff nop ; Provide clean break after data when viewing disassembly diff --git a/v0/index.md b/v0/index.md index 6ec0657..c4a13eb 100644 --- a/v0/index.md +++ b/v0/index.md @@ -118,4 +118,4 @@ Read $C083 (read bank 2), but the check byte ($D17B) is an unknown value. ## E001E -We initialized $D17B in RAM bank 1 to $55, $D17B in RAM bank 2 to $AA, and $FE1F in RAM to $55. Then, we perform a testdata-driven sequence of LDA and STA to the $C08X range. Finally we (try to) increment $D17B and $FE1F. Then we test (a) the current live value in $D17B, (b) the current live value in $FE1F, (c) the RAM bank 1 value of $D17B, (d) the RAM bank 2 value of $D17B, and (e) the RAM value of $FE1F, to see whether they match expected values. $D17B is usually $53 in ROM, and $FE1F is usally $60. +We initialized $D17B in RAM bank 1 to $55, $D17B in RAM bank 2 to $AA, and $FE1F in RAM to $55. Then, we perform a testdata-driven sequence of LDA and STA to the $C08X range. Finally we (try to) increment $D17B and $FE1F. Then we test (a) the current live value in $D17B, (b) the current live value in $FE1F, (c) the RAM bank 1 value of $D17B, (d) the RAM bank 2 value of $D17B, and (e) the RAM value of $FE1F, to see whether they match expected values. $D17B is usually $53 in ROM, and $FE1F is usally $60. For more information on the operation of the language card soft-switches, see Understanding the Apple IIe, by James Fielding Sather, Pg 5-24.