Aaron Taylor [Sat, 28 Mar 2020 02:41:40 +0000 (19:41 -0700)]
Added MIT/X license file for VVhitespace project.
Aaron Taylor [Fri, 13 Mar 2020 09:33:16 +0000 (02:33 -0700)]
Final (?) set of small changes to `rationale.md`.
Aaron Taylor [Fri, 13 Mar 2020 09:23:42 +0000 (02:23 -0700)]
More minor updates to `rationale.md`.
Aaron Taylor [Fri, 13 Mar 2020 09:18:44 +0000 (02:18 -0700)]
Small updates to `rationale.md` for display on Github.
Aaron Taylor [Fri, 13 Mar 2020 09:12:33 +0000 (02:12 -0700)]
Updated `rationale.md`, expanding previous notes.
Aaron Taylor [Fri, 13 Mar 2020 07:27:16 +0000 (00:27 -0700)]
Added `syntax_highlighting/` folder and instructions for vim and neatvi.
Aaron Taylor [Fri, 13 Mar 2020 04:51:21 +0000 (21:51 -0700)]
Added ability for player to move around the tunnels in Wumpus.
Aaron Taylor [Fri, 13 Mar 2020 04:50:47 +0000 (21:50 -0700)]
Added 'atoi' to stdlib.
Aaron Taylor [Fri, 13 Mar 2020 04:50:16 +0000 (21:50 -0700)]
Added 'isdigit' function to stdlib.
Aaron Taylor [Wed, 26 Feb 2020 07:49:40 +0000 (23:49 -0800)]
Added move_or_shoot function to Wumpus example.
Finished main game loop in wump.pvvs.
Daniel Neshyba-Rowe [Sat, 11 Jan 2020 02:45:07 +0000 (02:45 +0000)]
Replaced RNG with Xorshift implementation from Wikipedia.
Aaron Taylor [Fri, 3 Jan 2020 17:33:13 +0000 (09:33 -0800)]
Bulk commit of offline work on Hunt the Wumpus.
At this point the code builds all relevant data structures for the cave,
connecting the rooms with tunnels and populating with bats/pits/wumpus. User
interaction progresses through providing the user with instructions, cave
information and room information.
The code does not yet allow the user to take actions like moving or shooting.
Aaron Taylor [Thu, 12 Dec 2019 01:03:46 +0000 (17:03 -0800)]
Minor change to example in function description for `deepdup`.
Aaron Taylor [Thu, 12 Dec 2019 01:03:23 +0000 (17:03 -0800)]
Added `gcd` function to stdlib.
Aaron Taylor [Sun, 8 Sep 2019 12:53:11 +0000 (05:53 -0700)]
Added test for all stdio.pvvs subroutines.
Aaron Taylor [Sun, 8 Sep 2019 11:25:30 +0000 (04:25 -0700)]
Updated tests to use printsignednumber subroutine from debug.pvvs instead of stdio.pvvs.
Aaron Taylor [Wed, 7 Aug 2019 20:27:11 +0000 (13:27 -0700)]
Added tests for stdlib math functions.
Added check for most-negative-number in `abs` subroutine.
Aaron Taylor [Wed, 7 Aug 2019 19:47:14 +0000 (12:47 -0700)]
Added tests for stdlib subroutine `strlen`.
Aaron Taylor [Wed, 7 Aug 2019 19:40:14 +0000 (12:40 -0700)]
Fixed bug in compiler related to pushing ASCII strings to the stack.
The stream pointer was left at the start of the string since it was walked backward.
Now it properly advances to the end after processing the string.
Aaron Taylor [Thu, 1 Aug 2019 04:48:15 +0000 (21:48 -0700)]
Removed `isnegative` subroutine from stdlib.
Aaron Taylor [Thu, 1 Aug 2019 04:38:00 +0000 (21:38 -0700)]
Added tests for `xor` subroutine from stdlib.
Aaron Taylor [Thu, 1 Aug 2019 04:32:46 +0000 (21:32 -0700)]
Added tests for `or` subroutine from stdlib.
Aaron Taylor [Thu, 1 Aug 2019 02:26:08 +0000 (19:26 -0700)]
Added tests for `and` subroutine from stdlib.
Aaron Taylor [Thu, 1 Aug 2019 02:12:17 +0000 (19:12 -0700)]
Updated VVhitespace's modulo function to always return positive values.
Aaron Taylor [Thu, 1 Aug 2019 01:16:23 +0000 (18:16 -0700)]
Fixed bugs in `rshift` subroutine.
Aaron Taylor [Thu, 1 Aug 2019 01:12:13 +0000 (18:12 -0700)]
Updated tests for `lshift` subroutine.
Aaron Taylor [Thu, 1 Aug 2019 01:05:02 +0000 (18:05 -0700)]
Added test for `rshift` subroutine from stdlib.
Aaron Taylor [Wed, 31 Jul 2019 22:17:01 +0000 (15:17 -0700)]
Added test for `lshift` subroutine from stdlib.
Aaron Taylor [Wed, 31 Jul 2019 22:05:12 +0000 (15:05 -0700)]
Added tests for `not` subroutine in stdlib.
Aaron Taylor [Wed, 31 Jul 2019 21:38:15 +0000 (14:38 -0700)]
Updated `printmagnitudeofnumber` to handle most negative number.
Aaron Taylor [Wed, 31 Jul 2019 21:36:37 +0000 (14:36 -0700)]
Fixes to `vvi` related to pushing the most negative number to the stack.
Aaron Taylor [Wed, 31 Jul 2019 04:27:08 +0000 (21:27 -0700)]
Fixing a comment in memsrch test and adding a dummy test for memrand. Heap tests now complete.
Aaron Taylor [Wed, 31 Jul 2019 04:18:51 +0000 (21:18 -0700)]
Added test for memsrch subroutine.
Aaron Taylor [Wed, 31 Jul 2019 04:11:42 +0000 (21:11 -0700)]
Added stdlib_test for memcmp subroutine.
Aaron Taylor [Mon, 29 Jul 2019 23:38:08 +0000 (16:38 -0700)]
Updated the stdlib and test READMEs.
Aaron Taylor [Mon, 29 Jul 2019 22:19:58 +0000 (15:19 -0700)]
Added stdlib_tests for memset and memcpy subroutines.
Aaron Taylor [Sun, 28 Jul 2019 21:04:06 +0000 (14:04 -0700)]
Added stdlib tests for slurp and spew.
Aaron Taylor [Sun, 28 Jul 2019 21:00:28 +0000 (14:00 -0700)]
Fixed off-by-one error in dumpstack subroutine.
Aaron Taylor [Sun, 28 Jul 2019 20:27:46 +0000 (13:27 -0700)]
Updated #includes for stdlib.
Aaron Taylor [Sun, 28 Jul 2019 20:19:43 +0000 (13:19 -0700)]
Minor updates to stack.pvvs related to adding tests.
Aaron Taylor [Sat, 27 Jul 2019 22:59:37 +0000 (15:59 -0700)]
Added tests for stdlib stack functions. Fixed some small bugs.
Aaron Taylor [Fri, 26 Jul 2019 12:27:02 +0000 (05:27 -0700)]
Rearranging output in debug functions.
Aaron Taylor [Fri, 26 Jul 2019 12:18:17 +0000 (05:18 -0700)]
Added tests for debug.pvvs.
Aaron Taylor [Fri, 26 Jul 2019 11:24:15 +0000 (04:24 -0700)]
Reworked the test suite so I can create tests for the stdlib.
Aaron Taylor [Fri, 26 Jul 2019 08:28:52 +0000 (01:28 -0700)]
Modified stdlib to use stack rotations to timeshare heap registers.
The stdlib is probably broken at this commit. Next step is a test suite.
Aaron Taylor [Fri, 26 Jul 2019 08:23:03 +0000 (01:23 -0700)]
Added bitwise OR and XOR subroutines to VVS stdlib.
Fixed bug in bitwise NOT subroutine.
Aaron Taylor [Fri, 26 Jul 2019 07:39:53 +0000 (00:39 -0700)]
Added bitwise AND subroutine to VVS stdlib.
Aaron Taylor [Fri, 26 Jul 2019 07:19:13 +0000 (00:19 -0700)]
Added isnegative and lowbitand subroutines to VVS stdlib.
Aaron Taylor [Fri, 26 Jul 2019 06:13:23 +0000 (23:13 -0700)]
Added deepdup subroutine to VVS stdlib.
Aaron Taylor [Fri, 26 Jul 2019 06:11:21 +0000 (23:11 -0700)]
Added not, rshift and lshift functions to VVS stdlib.
Aaron Taylor [Fri, 26 Jul 2019 05:06:12 +0000 (22:06 -0700)]
Initial commit for Hunt the Wumpus - Adding some text strings from the original.
Aaron Taylor [Fri, 26 Jul 2019 05:03:20 +0000 (22:03 -0700)]
Added a poor quality RNG from the POSIX random() manpage.
Aaron Taylor [Sat, 20 Jul 2019 20:07:29 +0000 (13:07 -0700)]
Added stackrotatereverse function to VVS stdlib to complement stackrotate.
Aaron Taylor [Sat, 20 Jul 2019 06:03:01 +0000 (23:03 -0700)]
Changed all #include directives for the stdlib to <> instead of "".
Aaron Taylor [Sat, 20 Jul 2019 05:32:11 +0000 (22:32 -0700)]
Updating an example that was missed during label reassignments.
Aaron Taylor [Fri, 19 Jul 2019 22:56:00 +0000 (15:56 -0700)]
Added some debugging output to `vvi` when jumping to uninitialized labels.
Aaron Taylor [Fri, 19 Jul 2019 22:54:53 +0000 (15:54 -0700)]
Added printf and stackrotate functions to VVS stdlib.
Modified slurp to use stackrotate instead of heap registers.
Aaron Taylor [Thu, 18 Jul 2019 22:43:27 +0000 (15:43 -0700)]
Fixing a label I missed when moving functions in the stdlib.
Aaron Taylor [Thu, 18 Jul 2019 20:35:22 +0000 (13:35 -0700)]
Correcting incorrect comment in vvc related to parsing ASCII strings.
Aaron Taylor [Thu, 18 Jul 2019 20:30:32 +0000 (13:30 -0700)]
Changed `vvc` to die on misquoted string.
Aaron Taylor [Thu, 18 Jul 2019 06:50:00 +0000 (23:50 -0700)]
Added ASCII string capability to `vvc`.
Moved VVS stdlib functions:
1000 ->
1000100
1001 ->
1000101
Aaron Taylor [Thu, 18 Jul 2019 01:44:10 +0000 (18:44 -0700)]
VVS stdlib changes to `random` and `spewreg`, reallocating heap[0] and [15].
Aaron Taylor [Wed, 17 Jul 2019 21:15:58 +0000 (14:15 -0700)]
Added functions to stdlib:
10000 slurp
10001 spew
100000 strlen
111001 dumpstack
Renamed functions in stdlib:
11110 ->
1000000 slurp registers
11111 ->
1000001 spew registers
1000000 ->
1000010 print sign of number
1000001 ->
1000011 print magnitude of number
Aaron Taylor [Wed, 17 Jul 2019 21:06:57 +0000 (14:06 -0700)]
Added label initialization check to `vvi`.
Aaron Taylor [Tue, 16 Jul 2019 22:36:10 +0000 (15:36 -0700)]
Added slurp & spew functions to VVS stdlib.
General cleanup of stdlib.
Aaron Taylor [Mon, 15 Jul 2019 23:05:54 +0000 (16:05 -0700)]
Added memsrch function to VVS stdlib.
Aaron Taylor [Sat, 13 Jul 2019 23:30:16 +0000 (16:30 -0700)]
CPP doesn't like single quotes.
Aaron Taylor [Sat, 13 Jul 2019 22:14:53 +0000 (15:14 -0700)]
Added memcmp function to VVS stdlib.
Aaron Taylor [Sat, 13 Jul 2019 20:40:19 +0000 (13:40 -0700)]
Added memrand function to VVS stdlib.
Aaron Taylor [Sat, 13 Jul 2019 08:11:33 +0000 (01:11 -0700)]
Added memcpy function to VVS stdlib.
Aaron Taylor [Sat, 13 Jul 2019 07:39:05 +0000 (00:39 -0700)]
Added memset function to VVS stdlib.
Aaron Taylor [Sat, 13 Jul 2019 05:08:51 +0000 (22:08 -0700)]
Added VVS stdlib function to dump heap in human readable form.
Aaron Taylor [Sat, 13 Jul 2019 02:01:31 +0000 (19:01 -0700)]
Added random number generator to VVS stdlib.
Aaron Taylor [Fri, 12 Jul 2019 23:24:10 +0000 (16:24 -0700)]
Added example that prints a multi-digit number. Added library functions in support.
Aaron Taylor [Thu, 11 Jul 2019 21:58:27 +0000 (14:58 -0700)]
Evaluated WS interpreter SaTaN from threeifbywhiskey on Github.
Aaron Taylor [Thu, 11 Jul 2019 13:35:44 +0000 (06:35 -0700)]
Adding some notes for the Rationale, but still WIP.
Aaron Taylor [Thu, 11 Jul 2019 13:18:03 +0000 (06:18 -0700)]
Updated all the READMEs for VVhitespace.
Aaron Taylor [Thu, 11 Jul 2019 12:34:53 +0000 (05:34 -0700)]
Added newlines to 'Hello, World!' examples and fixed Makefiles.
Aaron Taylor [Thu, 11 Jul 2019 12:26:18 +0000 (05:26 -0700)]
Adding a 'Hello, World!' example using stdlib and a new build
system using `cpp`.
Aaron Taylor [Thu, 11 Jul 2019 11:43:22 +0000 (04:43 -0700)]
Updated 'Hello, World!' example to print using stdlib.
Aaron Taylor [Thu, 11 Jul 2019 11:31:10 +0000 (04:31 -0700)]
Added first two functions to stdlib.
stdio:1000 - print string from stack
stdio:1001 - print string from heap
Aaron Taylor [Thu, 11 Jul 2019 10:52:53 +0000 (03:52 -0700)]
Bugfix for BRZ and BMI commands that weren't advancing the PC past
the included label when not following the branch.
Aaron Taylor [Mon, 8 Jul 2019 22:01:22 +0000 (15:01 -0700)]
Updated VVS interpreter to 64 bit word. Also misc cleanup.
Aaron Taylor [Mon, 8 Jul 2019 21:25:23 +0000 (14:25 -0700)]
Changed jump-if-tos-is-zero and jump-if-tos-is-negative to consume the test
value on TOS, matching the behavior of Whitespace.
Aaron Taylor [Mon, 8 Jul 2019 21:17:39 +0000 (14:17 -0700)]
Removed TODO comment related to creating language tests.
Aaron Taylor [Sun, 7 Jul 2019 11:43:30 +0000 (04:43 -0700)]
Added final tests. All VVhitespace commands now have a basic test.
Aaron Taylor [Fri, 5 Jul 2019 21:22:10 +0000 (14:22 -0700)]
Added tests for output half of IO IMP.
Aaron Taylor [Fri, 5 Jul 2019 05:35:08 +0000 (22:35 -0700)]
Added tests for flow control IMP.
Aaron Taylor [Fri, 5 Jul 2019 03:16:25 +0000 (20:16 -0700)]
Cleaning up test from previous, premature commit.
Aaron Taylor [Fri, 5 Jul 2019 03:15:29 +0000 (20:15 -0700)]
Added tests for heap IMP.
Aaron Taylor [Fri, 5 Jul 2019 02:51:07 +0000 (19:51 -0700)]
Fixed markdown formatting in rationale.md.
Aaron Taylor [Fri, 5 Jul 2019 02:49:47 +0000 (19:49 -0700)]
Correcting braindead commits.
Aaron Taylor [Thu, 4 Jul 2019 22:37:06 +0000 (15:37 -0700)]
Added basic tests for stack and arithmetic IMPs.
Aaron Taylor [Thu, 4 Jul 2019 21:02:38 +0000 (14:02 -0700)]
Added basic test system for VVhitespace interpreter.
Aaron Taylor [Thu, 4 Jul 2019 20:07:28 +0000 (13:07 -0700)]
Modified labels to use a Vtab.
Aaron Taylor [Tue, 2 Jul 2019 22:51:21 +0000 (15:51 -0700)]
First batch of changes to turn Whitespace interpreter into VVhitespace interpreter. WIP.
Aaron Taylor [Tue, 2 Jul 2019 22:50:54 +0000 (15:50 -0700)]
Importing the Whitespace interpreter as a starting point.
Aaron Taylor [Tue, 2 Jul 2019 22:17:41 +0000 (15:17 -0700)]
A few changes to labels and VTabs as I write the interpreter.
Aaron Taylor [Tue, 2 Jul 2019 21:56:49 +0000 (14:56 -0700)]
Added compiler for pseudo-VVhitespace -> VVhitespace.
Aaron Taylor [Tue, 2 Jul 2019 21:55:33 +0000 (14:55 -0700)]
Moved Hello, World example to new file extension.