Updated wumpus to use `fastrand` instead of `random`.
authorAaron Taylor <ataylor@subgeniuskitty.com>
Tue, 31 Mar 2020 08:36:25 +0000 (01:36 -0700)
committerAaron Taylor <ataylor@subgeniuskitty.com>
Tue, 31 Mar 2020 08:36:25 +0000 (01:36 -0700)
examples/hunt-the-wumpus/wump_init.pvvs
examples/hunt-the-wumpus/wump_ui.pvvs

index 9d7543d..411c3f1 100644 (file)
@@ -233,7 +233,7 @@ NSNTSSTSTTSSSSSSSSTN  | JMP > 10010110 00000001 (main_loop)
 @ Build one random tunnel connection per pass through this loop.
 NSSVTSSTSTTSSSSSSSSTN | MARK: 10010110 00000001 (main_loop)
 @ Use 'random_number mod number_of_array_entries' to select a starting room.
 @ Build one random tunnel connection per pass through this loop.
 NSSVTSSTSTTSSSSSSSSTN | MARK: 10010110 00000001 (main_loop)
 @ Use 'random_number mod number_of_array_entries' to select a starting room.
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTTSSSSSSSSSSSSN    | PUSH 0x3000 (BUFFER)
 TTT                   | LOAD
 TSTT                  | MODULO
 SSSTTSSSSSSSSSSSSN    | PUSH 0x3000 (BUFFER)
 TTT                   | LOAD
 TSTT                  | MODULO
@@ -246,7 +246,7 @@ TTT                   | LOAD
 @ TOS> start_room_num, start_array_index
 @ Now we randomly select a room for the endpoint.
 NSSVTSSTSTTSSSSSSTSSN | MARK: 10010110 00000100 (select_random_dst_room)
 @ TOS> start_room_num, start_array_index
 @ Now we randomly select a room for the endpoint.
 NSSVTSSTSTTSSSSSSTSSN | MARK: 10010110 00000100 (select_random_dst_room)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTTSSSSSSSSSSSSN    | PUSH 0x3000 (BUFFER)
 TTT                   | LOAD
 TSTT                  | MODULO
 SSSTTSSSSSSSSSSSSN    | PUSH 0x3000 (BUFFER)
 TTT                   | LOAD
 TSTT                  | MODULO
@@ -507,7 +507,7 @@ NTN                   | RTS
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 #include <math.pvvs>
 NSSVTSSSTSTSN         | MARK: 10001010 (get_random_room)
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 #include <math.pvvs>
 NSSVTSSSTSTSN         | MARK: 10001010 (get_random_room)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTSSSSSSSSSSSSN     | PUSH 0x1000 (GAME_DATA_BASE+0 = num_rooms address)
 TTT                   | LOAD
 TSTT                  | MODULO
 SSSTSSSSSSSSSSSSN     | PUSH 0x1000 (GAME_DATA_BASE+0 = num_rooms address)
 TTT                   | LOAD
 TSTT                  | MODULO
index 2b9c268..f5f640e 100644 (file)
@@ -144,7 +144,7 @@ SNN                   | DROP
 A"*Oof!* (you hit the wall)\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
 A"*Oof!* (you hit the wall)\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTTSN               | PUSH 6 (chance)
 TSTT                  | MODULO
 NTSTSTSSSTTSSSSSSTSN  | BRZ > 10100011 00000010 (woke the wumpus)
 SSSTTSN               | PUSH 6 (chance)
 TSTT                  | MODULO
 NTSTSTSSSTTSSSSSSTSN  | BRZ > 10100011 00000010 (woke the wumpus)
@@ -153,7 +153,7 @@ NSSVTSTSSSTTSSSSSSTSN | MARK: 10100011 00000010 (woke the wumpus)
 A"Your colorful comments awaken the wumpus!\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
 A"Your colorful comments awaken the wumpus!\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTSSSSSSSSSSTTN     | PUSH 0x1003 (ptr to number of tunnels per room)
 TSTT                  | MODULO
 SSSTSSSSSSSSSTTTN     | PUSH 0x1007 (ptr to wumpus location)
 SSSTSSSSSSSSSSTTN     | PUSH 0x1003 (ptr to number of tunnels per room)
 TSTT                  | MODULO
 SSSTSSSSSSSSSTTTN     | PUSH 0x1007 (ptr to wumpus location)
@@ -194,7 +194,7 @@ SSSTSSSSSSSSSTTSN     | PUSH 0x1006 (ptr to player location)
 TTT                   | LOAD
 NSTTSSSTTSTN          | JSR > 10001101 (room_has_pits)
 NTSTSTSSSTTSSSSSTSTN  | BRZ > 10100011 00000101 (no pits in new room)
 TTT                   | LOAD
 NSTTSSSTTSTN          | JSR > 10001101 (room_has_pits)
 NTSTSTSSSTTSSSSSTSTN  | BRZ > 10100011 00000101 (no pits in new room)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTTSN               | PUSH 6 (chance)
 TSTT                  | MODULO
 NTSTSTSSSTTSSSSSTTSN  | BRZ > 10100011 00000110 (survived the pits)
 SSSTTSN               | PUSH 6 (chance)
 TSTT                  | MODULO
 NTSTSTSSSTTSSSSSTTSN  | BRZ > 10100011 00000110 (survived the pits)
@@ -215,7 +215,7 @@ NTSTSTSSSTTSSSSSTTSN  | BRZ > 10100011 00000110 (no bats in new room)
 A"*flap*  *flap*  *flap*  (humongous bats pick you up and move you!)\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
 A"*flap*  *flap*  *flap*  (humongous bats pick you up and move you!)\n"
 SSSSN                 | PUSH 0 (number of string substitutions)
 NSTTSSSN              | JSR > 1000 (printf)
-NSTTSSSSN             | JSR > 10000 (random)
+NSTTSSTTN             | JSR > 10011 (fastrand)
 SSSTSSSSSSSSSSTTN     | PUSH 0x1003 (ptr to number of tunnels per room)
 TSTT                  | MODULO
 SSSTSSSSSSSSSTTSN     | PUSH 0x1006 (ptr to player location)
 SSSTSSSSSSSSSSTTN     | PUSH 0x1003 (ptr to number of tunnels per room)
 TSTT                  | MODULO
 SSSTSSSSSSSSSTTSN     | PUSH 0x1006 (ptr to player location)