Jeremy Penner
17ae935409
Implement tandy 3-voice support
...
break swine meeper trying to make it faster :/
2024-04-05 22:19:00 -04:00
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