aboutsummaryrefslogtreecommitdiff
path: root/tests/runrom/cmp.s
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mssola@mssola.com>2026-09-06 21:42:34 +0200
committerMiquel Sabaté Solà <mssola@mssola.com>2026-09-06 21:42:34 +0200
commit9c685d5b6ca1686f944fb239ec89511f24801d44 (patch)
tree9b857312817aa1ba17b024adb412167c9c7604ae /tests/runrom/cmp.s
parent30a572b2b3815abaf17dcd2a848430935a4ba729 (diff)
downloadtools.nes-9c685d5b6ca1686f944fb239ec89511f24801d44.tar.gz
tools.nes-9c685d5b6ca1686f944fb239ec89511f24801d44.zip
vnf: also set the carry on a zero compare
Add also a test to further check corner cases on compare instructions. Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
Diffstat (limited to 'tests/runrom/cmp.s')
-rw-r--r--tests/runrom/cmp.s37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/runrom/cmp.s b/tests/runrom/cmp.s
new file mode 100644
index 0000000..29deda3
--- /dev/null
+++ b/tests/runrom/cmp.s
@@ -0,0 +1,37 @@
+.segment "HEADER"
+ .byte 'N', 'E', 'S', $1A
+ .byte $02, $01
+ .byte $00
+ .byte $00
+
+.segment "CHARS"
+.byte 0
+
+.segment "VECTORS"
+ .addr reset, reset, reset
+
+.segment "CODE"
+;; asan:stack full
+
+zp_mem = $00
+
+.proc reset
+ lda #0
+ sta zp_mem
+
+ cmp zp_mem
+
+ inc zp_mem
+ cmp zp_mem
+
+ lda #2
+ cmp zp_mem
+
+ lda #1
+ cmp zp_mem
+
+ lda #$FF
+ cmp zp_mem
+
+ rts
+.endproc