Fixed off-by-one error in dumpstack subroutine.
authorAaron Taylor <ataylor@subgeniuskitty.com>
Sun, 28 Jul 2019 21:00:28 +0000 (14:00 -0700)
committerAaron Taylor <ataylor@subgeniuskitty.com>
Sun, 28 Jul 2019 21:00:28 +0000 (14:00 -0700)
stdlib/debug.pvvs
stdlib_tests/0001_dumpstack.pvvs
stdlib_tests/1001_stackrotate.pvvs
stdlib_tests/1002_stackrotatereverse.pvvs
stdlib_tests/1003_deepdup.pvvs
stdlib_tests/vv_test.py

index 4362a53..960c65b 100644 (file)
@@ -101,10 +101,10 @@ SSSTSTSN                 | PUSH ASCII '\n'
 TNSS                     | PUTC
 
 @ Figure out if the loop is complete.
-SNS                      | DUP
-NTSSSTTTSSTSSSSSSSSN     | BRZ > 00111001 00000000
 SSSTN                    | PUSH 1
 TSST                     | SUBTRACT
+SNS                      | DUP
+NTSSSTTTSSTSSSSSSSSN     | BRZ > 00111001 00000000
 NSNSSTTTSSTSSSSSSSTN     | JMP > 00111001 00000001
 
 @ Clean up and return
index 9395052..a3f0a17 100644 (file)
@@ -1,6 +1,6 @@
 SSSTTTTTTTTN    | PUSH 255
 SSSTSTSTSN      | PUSH 42
-SSSTN           | PUSH 1 (count)
+SSSTSN          | PUSH 2 (count)
 NSTTTTSSTN      | JSR > 111001 (dumpstack)
 NNN             | DIE
 
index 9a38f03..bf1781a 100644 (file)
@@ -20,7 +20,7 @@ NSTTSTSN        | JSR > 1010 (stackrotate)
 SSSTSN          | PUSH 2
 NSTTSTSN        | JSR > 1010 (stackrotate)
 
-SSSTTSTN        | PUSH 13
+SSSTTTSN        | PUSH 14
 NSTTTTSSTN      | JSR > 111001 (dumpstack)
 NNN             | DIE
 
index e695a23..c91dc2c 100644 (file)
@@ -18,7 +18,7 @@ NSTTSTTN        | JSR > 1011 (stackrotatereverse)
 SSSTSN          | PUSH 2
 NSTTSTTN        | JSR > 1011 (stackrotatereverse)
 
-SSSTTSTN        | PUSH 13
+SSSTTTSN        | PUSH 14
 NSTTTTSSTN      | JSR > 111001 (dumpstack)
 NNN             | DIE
 
index faaccf7..6f6b679 100644 (file)
@@ -17,7 +17,7 @@ NSTTTSSN        | JSR > 1100 (deepdup)
 SSSTSN          | PUSH 2
 NSTTTSSN        | JSR > 1100 (deepdup)
 
-SSSTTTSN        | PUSH 14
+SSSTTTTN        | PUSH 15
 NSTTTTSSTN      | JSR > 111001 (dumpstack)
 NNN             | DIE
 
index ff79a25..a14468d 100755 (executable)
@@ -18,11 +18,11 @@ src_extension = '.pvvs'
 
 tests = [
         # Format: ['filename_without_extension', 'string for stdin', 'string for expected stdout']
-        ['0001_dumpstack', '', 'TOS:\n1:\t+42\n0:\t+255\n'],
+        ['0001_dumpstack', '', 'TOS:\n2:\t+42\n1:\t+255\n'],
         ['0002_dumpheap', '', '32:\t+255\n33:\t+42\n'],
-        ['1001_stackrotate', '', 'TOS:\n13:\t+1\n12:\t+244\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+243\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+1\n0:\t+242\n'],
-        ['1002_stackrotatereverse', '', 'TOS:\n13:\t+1\n12:\t+244\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+1\n0:\t+1\n'],
-        ['1003_deepdup', '', 'TOS:\n14:\t+1\n13:\t+244\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+1\n0:\t+244\n'],
+        ['1001_stackrotate', '', 'TOS:\n14:\t+1\n13:\t+244\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+243\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+242\n'],
+        ['1002_stackrotatereverse', '', 'TOS:\n14:\t+1\n13:\t+244\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+1\n'],
+        ['1003_deepdup', '', 'TOS:\n15:\t+1\n14:\t+244\n13:\t+1\n12:\t+1\n11:\t+1\n10:\t+1\n9:\t+1\n8:\t+1\n7:\t+1\n6:\t+1\n5:\t+1\n4:\t+1\n3:\t+1\n2:\t+1\n1:\t+244\n'],
         ] 
 
 for test in tests: