]> git.sur5r.net Git - cc65/blobdiff - testcode/assembler/paramcount.s
Fixed the ca65 Assembly-code variable ".paramcount".
[cc65] / testcode / assembler / paramcount.s
diff --git a/testcode/assembler/paramcount.s b/testcode/assembler/paramcount.s
new file mode 100644 (file)
index 0000000..4e9190d
--- /dev/null
@@ -0,0 +1,20 @@
+; Test ca65's handling of the .paramcount read-only variable.
+; .paramcount should see all given arguments, even when they are empty.
+
+.macro  push    r1, r2, r3, r4, r5, r6
+        .out    .sprintf(" .paramcount = %u", .paramcount)
+.if     .paramcount <> 0
+.ifblank        r1
+        .warning        "r1 is blank!"
+.exitmacro
+.endif
+        lda     r1
+        pha
+
+        push    r2, r3, r4, r5, r6
+.endif
+.endmacro
+
+        push    1, , {}
+        push    1, ,
+        push    1