Commit graph

49 commits

Author SHA1 Message Date
Jeremy Penner 85f3767e1e refactor iterator definitions to define a "blank" iterator, which is then
modified by subsequent definitions.
2023-11-05 00:30:34 -04:00
Jeremy Penner 2007ba838c refactor iterators to be pointers to a two-cell structure 2023-11-04 23:39:30 -04:00
Jeremy Penner 6c31f368c3 refactor iterators to supply an explicit cancel xt, rather than mixing
refactor yielders to be defined with explicit suspend, resume, and cancel xts,
and not require explicit calls to _resume / _suspend
2023-10-18 19:39:36 -04:00
Jeremy Penner 6c97377f2f Add instruction screen to Swine Meeper, create zipmin.com, fix input buffer bug with writeself 2023-10-15 21:33:10 -04:00
Jeremy Penner 314ee8b476 speed up embedding, download dialog 2023-10-15 21:05:54 -04:00
Jeremy Penner 57f2f4b3d3 file area, speed up text display 2023-10-15 16:54:40 -04:00
Jeremy Penner 85824a202d fill out rick's bbs, dialer ESC menu, silence modem 2023-10-14 22:22:50 -04:00
Jeremy Penner f00bd76589 improve statusbar 2023-10-12 23:00:42 -04:00
Jeremy Penner a5c95a04b4 add statusbar, scrolling, fix generators 2023-10-11 22:21:56 -04:00
Jeremy Penner 45f7c01b2d rewrite generators in assembly 2023-10-10 22:11:56 -04:00
Jeremy Penner c0dec444a4 RLE encoder, Rick's Clubhouse welcome screen 2023-10-09 00:09:40 -04:00
Jeremy Penner 8afdda713d rewrite swinemeeper autoreveal in assembly 2023-10-07 22:49:38 -04:00
Jeremy Penner f45d523bdd dialer splash screen, modem noises 2023-10-07 09:28:46 -04:00
Jeremy Penner 2980900aa0 continue conversion to use generators 2023-10-06 11:07:26 -04:00
Jeremy Penner 1f7e6ecb36 generators, start converting swine meeper to use iteration 2023-10-03 20:59:18 -04:00
Jeremy Penner ca38564024 iteration, cooperative multitasking, touchtone noises 2023-10-01 21:54:58 -04:00
Jeremy Penner 85766dad46 add file i/o to zipoff, implement persistent variables, write swine meeper instructions 2023-09-29 15:25:28 -04:00
Jeremy Penner 47d14694c7 PC speaker, timer reprogramming / ISR, fix IN and OUT instructions 2023-09-28 22:07:10 -04:00
Jeremy Penner dd6cfe85cd difficulty menu, in-game quit menu 2023-09-27 19:40:50 -04:00
Jeremy Penner 304dde1177 code cleanup, multiple menus (theme selector) 2023-09-26 22:40:22 -04:00
Jeremy Penner e98c04584a renamed to Swine Meeper, title screen, readme 2023-09-26 12:59:46 -04:00
Jeremy Penner 66dcbbdbd7 minesweeper autoreveal, code cleanup 2023-09-24 18:32:02 -04:00
Jeremy Penner ecddfc5b1a small constants, keyboard input, interactive minesweeper 2023-09-23 22:44:30 -04:00
Jeremy Penner 133c2e370a better board drawing, more minesweeper 2023-09-23 11:51:42 -04:00
Jeremy Penner 8eadd6171a minesweeper, random number generator, debugging assembler 2023-09-22 20:38:58 -04:00
Jeremy Penner ec7ab0da0d Dirty Rectangles logo app 2023-09-18 22:10:50 -04:00
Jeremy Penner 218fd0a8ef invert { and }, more immediate word helpers, box-drawing 2023-09-17 22:24:14 -04:00
Jeremy Penner adaf3c8e6f { and } for switching between host / target compilers
better word-lookup logic
endless bugfixes
2023-09-16 22:45:42 -04:00
Jeremy Penner 9246b39908 IN and OUT opcodes, zipoff bugfixes, anonymous labels 2023-09-15 16:10:24 -04:00
Jeremy Penner b751763331 zipoff.com as a standalone Forth executable, with stub 2023-09-15 16:10:12 -04:00
Jeremy Penner 6521a2127b massive refactoring; introduce "zipoff"
assemble.jrt for creating assemble.com which has asm.jrt preloaded
rebuild.bat for re-bootstrapping tinyjort from scratch and
  verifying that minijort and assemble produce the same binary
small CGA textmode vocabulary with test program
2023-09-12 23:27:46 -04:00
Jeremy Penner 36066a6f93 bugfixes and cleanup; use tinyjort to bootstrap itself! 2023-09-09 14:08:36 -04:00
Jeremy Penner c01f114655 cleanup, flow control immediate words 2023-09-09 14:08:22 -04:00
Jeremy Penner 04416807fc cleanup and bufixes, simple test program for the interpreter 2023-09-05 20:59:38 -04:00
Jeremy Penner 74171670b2 dictionary words, limited "target" compiler 2023-09-04 23:24:12 -04:00
Jeremy Penner 8d5fbe0143 fix up number printing word 2023-09-04 14:23:12 -04:00
Jeremy Penner 8214784bc6 rearranging code, implementing "type", progress / debug output 2023-09-03 15:21:56 -04:00
Jeremy Penner e5384d5aef cleanup and implement file i/o, boolean logic
removed "active file" concept from minijort in favour of taking a
file pointer on the stack
2023-10-16 15:54:44 -04:00
Jeremy Penner 141315b6fb more core forth words (memory access, return stack, inline data) 2023-09-01 21:51:22 -04:00
Jeremy Penner be7950520e cleaning up and testing number parsing 2023-09-01 19:10:54 -04:00
Jeremy Penner 63ee66a8e5 Expanded Forth kernel with simple test program 2023-09-01 19:10:54 -04:00
Jeremy Penner e6f7b14413 implement anonymous forward labels 2023-09-01 19:10:54 -04:00
Jeremy Penner 4575706684 Assemble to dedicated segment by default, start of Forth kernel
rename assembly words to be ALL CAPS
2023-09-01 19:10:52 -04:00
Jeremy Penner 8439de78e9 Implement segalloc for minijort 2023-09-01 19:10:52 -04:00
Jeremy Penner e3d15b37cf More opcodes, and a tiny program that prints "!" 2023-09-01 19:10:52 -04:00
Jeremy Penner bea5d1b0e4 more opcodes (branches, MOV) 2023-09-01 19:10:52 -04:00
Jeremy Penner 73ffd53c68 First correctly-assembled code snippet (printed as hex to stdout) 2023-09-01 19:10:52 -04:00
Jeremy Penner 102751b342 First cut at an 8086 assembler vocabulary 2023-09-01 19:10:52 -04:00
Jeremy Penner 791e4644aa First cut at stripping down minijort 2023-09-01 19:10:50 -04:00