Commit Graph
109 Commits
Author SHA1 Message Date
MightyPork 3cb445a31c sexp: tests to submodule 2020-10-06 19:40:16 +02:00
MightyPork a2dada519d sexp: replace try! with ? 2020-10-06 19:38:13 +02:00
MightyPork 250f0f22c0 cargo fix 2020-10-06 19:37:12 +02:00
MightyPork 85911c8e99 add sexp into source tree 2020-10-06 19:37:12 +02:00
MightyPork f404445003 deny direct access to symmed register - prevents bugs 2020-10-06 12:39:39 +02:00
MightyPork 2fa23dbbc3 start program without spawning thread so screen works on mac. improve mouse demo 2020-10-06 12:28:49 +02:00
MightyPork f4ced467e4 add rpush and rpop stack instructions 2020-10-06 12:18:07 +02:00
MightyPork 7ce51c0cc6 check close condition on poll 2020-10-05 23:40:07 +02:00
MightyPork 583ac7bcbf mouse and key input, handle close btn, mouse demo 2020-10-05 23:37:39 +02:00
MightyPork 6eef2b7ae3 cleaning 2020-10-05 22:13:43 +02:00
MightyPork fe8bf87e6d add round-trip tests for built-in instructions 2020-10-05 21:57:59 +02:00
MightyPork 05104c93ca fix ld printed as mov 2020-10-05 00:35:04 +02:00
MightyPork 34e339b1ca add pretty-printer for assembled instructions 2020-10-05 00:32:08 +02:00
MightyPork 986f3be6a2 cleanup. remove conditional jumps, replaced by condition embedded in the enum 2020-10-04 23:30:11 +02:00
MightyPork 810ed2dddc optimize labels, jumps 2020-10-04 22:45:34 +02:00
MightyPork b06ef50acd surround routines by far jump across 2020-10-04 21:26:06 +02:00
MightyPork e0cc1973ba Routine arity disambiguation, slash syntax (add/2, add/3) 2020-10-04 13:28:14 +02:00
MightyPork 8d585d765b stacks example 2020-10-01 23:36:33 +02:00
MightyPork 651ffcb888 new test 2020-10-01 23:33:42 +02:00
MightyPork 6d8d0fd51a show unsym and undef in the aliases example 2020-10-01 23:31:42 +02:00
MightyPork 4336454156 add unsym and undef 2020-10-01 23:29:49 +02:00
MightyPork e580a2b679 Add "sym" and "def" instructions, add argument naming 2020-10-01 23:26:06 +02:00
MightyPork afd412f22a make more stuff public for use by extensions 2020-09-30 23:19:34 +02:00
MightyPork 822e7912aa cleanup 2020-09-30 23:17:33 +02:00
MightyPork 4be5b4e05b generalize parsing to allow extensions to add arbitrary syntax; add 'proc' keyword to introduce a routine. 2020-09-30 23:16:22 +02:00
MightyPork d47d0f2345 add note about log level 2020-09-29 13:37:16 +02:00
MightyPork 0b168b5f5d add example config file, add default config file to gitignore 2020-09-29 13:31:16 +02:00
MightyPork c37408c7a2 read program from file; fmt, cleanup 2020-09-29 13:27:54 +02:00
MightyPork 01068ea001 crazy hypno + added sleep cmd 2020-09-29 00:40:11 +02:00
MightyPork 532df6eb04 screen imrpvoements 2020-09-29 00:22:42 +02:00
MightyPork d19c4e5bea add experimental framebuffer extension using minifb 2020-09-28 22:16:19 +02:00
MightyPork b7345144e0 refactors 2020-09-28 20:58:30 +02:00
MightyPork 2269d759c6 refactors 2020-09-28 20:44:37 +02:00
MightyPork 3599cb46c4 cleanup, optimize. use Arc for reference sharing 2020-09-28 20:12:31 +02:00
MightyPork d5de189af6 add more sensible API for object handles, add drop instruction 2020-09-28 19:36:15 +02:00
MightyPork 79d5aa3cd5 renaming, cleanup, fmt, move "extension module" traits and structs into a separate mod 2020-09-28 13:55:56 +02:00
MightyPork 8222efe6da remove "immediate ptr" data type, move read, write funcs to RunState, add %objectPtr syntax 2020-09-28 01:01:57 +02:00
MightyPork d489b214e0 add a readme 2020-09-27 00:13:08 +02:00
MightyPork be1ee66970 make exec speed configurable 2020-09-26 23:08:04 +02:00
MightyPork 0cd800653f Example extension: Stacks; fixes to allow module data storage in thread context 2020-09-26 22:49:06 +02:00
MightyPork 3e0aaa71e9 Convert builtin ops into a pseudo-extension 2020-09-26 22:00:27 +02:00
MightyPork 1d444fd516 cleaning 2020-09-26 21:06:34 +02:00
MightyPork ba0e3d0fd2 preparations for module data storage, remove broken tests (dyn trait can't implement PartialEq because ???) 2020-09-26 20:13:41 +02:00
MightyPork 44e7cd3a8f renames, improve module API (avoid cloning) 2020-09-26 19:01:40 +02:00
MightyPork f015104b95 re-arrange modules, add "plug-in" system so instructions can be defined in multiple crates 2020-09-26 00:29:33 +02:00
MightyPork 547beed847 comments, refactor 2020-09-25 23:02:54 +02:00
MightyPork 8f076e195a format 2020-09-25 22:53:19 +02:00
MightyPork f493cc102a add "_" pattern for explicitly specifying the "discard" destination (may be used for side effects) 2020-09-25 22:52:02 +02:00
MightyPork 8e7689df48 add explicit retval arg to all instrs (can be shortened), add Wr::discard() 2020-09-25 22:45:57 +02:00
MightyPork f652ff6669 dump sreg, add new ops 2020-09-25 00:39:10 +02:00