Jeremy Penner
640471a59e
Simplify colon loop / dispatch; avoid word lookup for tick/draw
...
Substantial speed gains _and_ f_cexecute() now works for deferred words.
This is the first version of Jorth where I feel like I've gotten the VM
right enough that it can reasonably be called a proper Forth implementation.
2019-04-07 22:13:32 -04:00
Jeremy Penner
8ce9ab33b5
debug ISR, recording word
2019-04-05 19:35:43 -04:00
Jeremy Penner
59e6b969af
Add the ability to interactively play music with a "tracker keyboard"
2019-04-02 21:52:02 -04:00
Jeremy Penner
49f532a85b
JOPL adlib livecoding environment; stop including JIM files in git
...
I now have multiple executables that depend on the same .jor source files
and I am not diligent about ensuring that both are up-to-date and working.
As small changes to source files can cause .jim files to fail silently,
I've removed them from the repo for now.
2019-03-31 19:29:16 -04:00
Jeremy Penner
12b9ac94f4
Add hiking trail, chuck plot, beginnings of adlib driver
2019-03-25 22:05:23 -04:00
Jeremy Penner
d52d5b96f5
Jorth lookup optimization; add Jeanne's house
2019-03-17 12:16:36 -04:00
Jeremy Penner
a010ec5911
Add some furniture to Pete's house and a horse to the pasture
2019-03-16 17:03:24 -04:00
Jeremy Penner
41fefa5885
Flesh out the town
2019-03-14 22:18:20 -04:00
Jeremy Penner
bddfcec05a
add town overworld
2019-03-13 20:43:38 -04:00
Jeremy Penner
f16962f7f9
DSL for level-based player touch event handling
2019-03-11 21:57:22 -04:00
Jeremy Penner
9165b44bc7
add pete's house interior; implement memory checkpointing / rollback
2019-03-10 19:51:24 -04:00
Jeremy Penner
f0a35a31b9
Make car drivable; refactor jorth module bootstrapping sequence
2019-03-09 19:59:52 -05:00
Jeremy Penner
a5ec79c88a
Split game.jor into multiple .jor files, add ability to specify code to run post-load for side effects
2019-03-09 18:49:45 -05:00
Jeremy Penner
ad0f3fbf6c
Text animations, save memory to .jim files post-load to speed startup
2019-03-05 17:35:50 -05:00
Jeremy Penner
1381c10d93
Entity event handling Jorth DSL
2019-03-02 20:03:34 -05:00
Jeremy Penner
4fe42403be
dynamic entity list, entity-based touch events, Jorth coroutine jump
2019-02-28 21:46:04 -05:00
Jeremy Penner
e55b30ba1d
Animation support, per-tile map walkability flags
2019-02-26 21:44:22 -05:00
Jeremy Penner
114d1ff804
Bigger footer, portrait support, coloured text
2019-02-25 22:19:08 -05:00
Jeremy Penner
20e7089b84
Pete's house map, map resizing words
2019-02-24 17:26:28 -05:00
Jeremy Penner
9ecb53ad57
Refactor file I/O to have implicit active file; add map load/save
2019-02-24 12:18:34 -05:00
Jeremy Penner
4881064908
Rewrote move-to to be usable from multiple tasks
2019-02-24 10:14:56 -05:00
Jeremy Penner
a876a9332f
Tile map editing UI
2019-02-17 20:14:56 -05:00
Jeremy Penner
ae1b5712ef
Jorth words for pausing the game & displaying text
2019-02-16 19:21:02 -05:00
Jeremy Penner
08e8926abb
Implement text drawing
2019-02-15 19:39:50 -05:00
Jeremy Penner
835a5159cf
Implement time-based lerp, footer animation
2019-02-11 23:23:00 -05:00
Jeremy Penner
e9e8fa804a
Implement game loop in Jorth
2019-02-10 19:17:58 -05:00
Jeremy Penner
c8331edece
Implement Jorth interpreter in Jorth so its task can be suspended
2019-02-09 21:52:12 -05:00
Jeremy Penner
6552c1498b
Forp is now Jorth ( Jean Forth) - hook timer interrupt and expose ticks
2019-02-09 11:48:40 -05:00
Jeremy Penner
ca25a4578e
Serial read support, add embedded Forp repl over serial port to game
2019-02-05 21:07:30 -05:00
Jeremy Penner
9821025def
Forp: fix bug when calling C->Forp
2019-02-04 20:59:52 -05:00
Jeremy Penner
0e36599524
Forp: Lightweight suspendable round-robin task system
2019-02-03 21:04:02 -05:00
Jeremy Penner
1a7d14b056
Forp: Loading from file, strings, comments, math, byte ops
2019-02-02 15:30:18 -05:00
Jeremy Penner
769bb9e9aa
Forp: Rewrite if/else/then in Forth
2019-02-01 19:05:02 -05:00
Jeremy Penner
c0f19f7674
Forp: Refactor interpreter, inline VM loop, implement if/then and immediate words
2019-01-30 22:12:28 -05:00
Jeremy Penner
b9fec53c09
Initial Forth interpreter implementation (Forp)
2019-01-30 22:12:14 -05:00
Jeremy Penner
56fac17626
Serial port debug output
2019-01-29 19:35:48 -05:00
Jeremy Penner
eeb1e86cba
Refactor into seperate modules & Turbo C++ project
2019-01-24 21:36:42 -05:00
Jeremy Penner
e5d1ac5c79
Fullscreen scrolling, initial cut at game logic
2019-01-20 11:44:42 -05:00
Jeremy Penner
b1366fe3b2
smooth horizontal scrolling
2019-01-19 16:29:32 -05:00
Jeremy Penner
d676190aaf
Optimize scrolling to not redraw tiles when not needed
2019-01-19 15:50:50 -05:00
Jeremy Penner
c2d648d284
bugfixes: TIF loading, sprite display
2019-01-18 23:03:14 -05:00
Jeremy Penner
aeb1f47f51
implementing sprites drawn overtop of tilemap
2019-01-18 23:03:02 -05:00
Jeremy Penner
28f98c20b2
Refactor scrolling, added road tile, first sprites drawn but not implemented
2019-01-18 23:02:56 -05:00
Jeremy Penner
4688bdccb0
Implement map scrolling
2019-01-18 23:02:50 -05:00
Jeremy Penner
7abb774dfb
Implement split-screen footer
2019-01-06 21:29:20 -05:00
Jeremy Penner
1b87ca8aa3
Initial commit
2019-01-05 16:16:08 -05:00