This website requires JavaScript.
eca9c3236d
upgrade winit
master
randrews
2025-11-04 23:32:55 -06:00
98c95b55f4
Moved NovaForth into a crate with a build script
randrews
2024-08-11 21:08:21 -05:00
bd54ae1ef0
Fixed a scrolling bug, added C-style comments to Forge
randrews
2024-05-12 23:48:47 -05:00
b7ce04d245
Squashed warning
randrews
2024-05-11 01:24:49 -05:00
3b7ce3eb26
Added once blocks
randrews
2024-05-11 01:24:41 -05:00
f19736cb8a
Continue keyword
randrews
2024-05-04 20:37:47 -05:00
cd53a21e8f
Added break statements
randrews
2024-05-04 18:57:35 -05:00
3f1b8fd316
New example code, highlighting peek / poke, run btn detects code changes
randrews
2024-05-03 23:47:57 -05:00
1253653203
Test for peek / poke
randrews
2024-05-03 23:45:59 -05:00
4b836d076b
Added peek and poke
randrews
2024-05-03 23:45:29 -05:00
46001c73f8
Reset btn, small QoL
randrews
2024-05-03 22:24:34 -05:00
db7605a16d
More complete file list
randrews
2024-05-03 21:48:52 -05:00
607cfe3b9f
Changed layout, three-column
randrews
2024-05-03 21:08:14 -05:00
473d7bd88c
Fixed a bug with codemirror saving changes
randrews
2024-05-03 21:07:45 -05:00
bde91901e2
Added comment-emission to the compiler
randrews
2024-05-03 21:04:57 -05:00
72e980a2db
Localstorage somewhat
randrews
2024-05-01 23:19:26 -05:00
badbd7e142
Basic syntax highlighting
randrews
2024-04-30 21:13:23 -05:00
9fb5187aa7
Fixed emitting escape sequences
randrews
2024-04-30 19:46:40 -05:00
de79e5acff
Basic codemirror editor
randrews
2024-04-28 01:39:29 -05:00
16a3e13ed7
The Forge simulator component
randrews
2024-04-28 00:14:49 -05:00
9179404f8a
Placeholder Forge source editor
randrews
2024-04-28 00:02:24 -05:00
64aeb4a38f
Remove html-level indentation from src
randrews
2024-04-28 00:01:35 -05:00
c8c5a5d99c
Expose Forge compiler
randrews
2024-04-28 00:01:15 -05:00
64460429de
Extract out CPU as a prop
randrews
2024-04-28 00:00:45 -05:00
2a2dff6202
Don't recreate the CPU each render
randrews
2024-04-27 23:57:22 -05:00
c7bf9fe1ec
Added forge emulator demo as a new page
randrews
2024-04-27 23:55:41 -05:00
bce314cd9c
Change default screen size to 40x30
randrews
2024-04-27 23:51:13 -05:00
10d113e364
Fixing imports
randrews
2023-12-09 13:23:15 -06:00
ca79642e43
Splitting vweb into multiple modules
randrews
2023-12-09 13:12:38 -06:00
66e7e1884e
Refactor for style
randrews
2023-11-23 12:22:30 -06:00
aca20e296b
Created Text type, initial values for globals
randrews
2023-11-23 01:37:22 -06:00
33c28ceb4a
Static allocations
randrews
2023-11-22 23:40:25 -06:00
640ef91306
Globals work, sizes are no longer part of the grammar
randrews
2023-11-13 19:54:04 -06:00
dbdafbfd4b
Arrays (local) now work!
randrews
2023-11-13 12:10:57 -06:00
749b11adfa
A bunch of prerequisites before we can do arrays, part 3.1, using the pool pointer in calls (removes the cursed test case)
randrews
2023-11-13 00:44:26 -06:00
325288d7ba
A bunch of prerequisites before we can do arrays, part 3, the pool pointer
randrews
2023-11-13 00:32:57 -06:00
0e766aebcf
A bunch of prerequisites before we can do arrays, part 2
randrews
2023-11-12 23:50:25 -06:00
21af891574
A bunch of prerequisites before we can do arrays, part 1
randrews
2023-11-12 23:03:45 -06:00
db15f28adc
Cursed test case
randrews
2023-11-12 00:19:17 -06:00
db2fbd7bda
Functions without explicit return statements
randrews
2023-11-11 18:36:49 -06:00
45fe27b823
Storing the frame pointer in the rstack
randrews
2023-11-11 18:08:54 -06:00
89560573ec
A big refactor, step 3.1
randrews
2023-11-11 16:35:02 -06:00
ac05959042
A big refactor, step 3
randrews
2023-11-11 15:59:04 -06:00
e66a05d6dc
A big refactor, step 2.2
randrews
2023-11-10 15:41:31 -06:00
ce12cf4974
A big refactor, step 2.1
randrews
2023-11-10 15:04:42 -06:00
8bdf4ba956
A big refactor, step 2
randrews
2023-11-09 23:23:44 -06:00
18b7743c12
A big refactor, step 1
randrews
2023-11-09 22:58:26 -06:00
7e8124055a
A small refactor
randrews
2023-11-09 22:24:42 -06:00
40441e4784
Lint
randrews
2023-11-08 23:16:03 -06:00
34c953c727
Refactoring, block scoping
randrews
2023-11-08 23:12:53 -06:00
9e38ddac5d
Fixing warnings
randrews
2023-11-08 22:11:02 -06:00
4a92723f97
Capturing args in function bodies
randrews
2023-11-08 22:06:35 -06:00
62d340e507
build_boot for tests
randrews
2023-11-07 21:59:05 -06:00
f03f6f15a4
Repeat loops
randrews
2023-11-06 23:06:28 -06:00
cbddf70ac3
Compiling return statements
randrews
2023-09-02 00:39:56 -05:00
82a7ac0152
Compiling calls
randrews
2023-09-01 22:24:36 -05:00
a7c7610105
Function prototypes
randrews
2023-08-26 00:42:41 -05:00
5bf5b7a78f
While loops
randrews
2023-08-25 01:19:53 -05:00
241f71dd79
If statements
randrews
2023-08-25 00:24:25 -05:00
3db79cc103
First part of reporting locations in error messages
randrews
2023-08-20 01:38:42 -05:00
4f0524f78c
Test refactoring
randrews
2023-08-17 19:18:32 -05:00
a6b3519f48
Asm statements implemented
randrews
2023-08-15 01:30:35 -05:00
9936e44544
Removed struct stuff
randrews
2023-08-15 00:39:53 -05:00
587d96be25
A couple tests
randrews
2023-08-14 00:36:26 -05:00
64f09619a2
Strings are just another kind of expr
randrews
2023-08-14 00:26:02 -05:00
c6aea2f78f
Refactored lvalues into just another expr
randrews
2023-08-13 23:55:49 -05:00
1de091f269
Prefix dereferences as lvalues
randrews
2023-08-13 19:29:50 -05:00
190ceb5f13
Added prefix dereference
randrews
2023-08-13 18:58:47 -05:00
e3b20aae41
More refactoring
randrews
2023-08-05 11:07:09 -05:00
63d63a1f68
More refactoring and addresses working
randrews
2023-08-04 21:38:09 -05:00
3b612114f5
More new grammar stuff
randrews
2023-08-04 17:27:28 -05:00
65858b18d9
Much better working grammar, more fixed tests
randrews
2023-08-03 00:53:43 -05:00
e8940feea7
New grammar, sort of working
randrews
2023-08-02 21:56:26 -05:00
ba4f98e2a5
New grammar
randrews
2023-07-17 23:00:01 -05:00
1b126eb559
Some todos and splitting apart direct and indirect labels
randrews
2023-07-17 22:57:58 -05:00
5d8d8a13a6
String support, more refactoring
randrews
2023-07-14 01:53:10 -05:00
3016d99ff0
Refactoring, variable initial values
randrews
2023-07-14 00:51:52 -05:00
4178874b50
Compiling basic functions
randrews
2023-07-13 02:00:56 -05:00
dc2e1a89a5
Beginning the compiler, const declarations and globals
randrews
2023-07-12 00:53:52 -05:00
09c41be189
Allowing expressions in a couple places that used to be literal numbers
randrews
2023-07-09 00:24:04 -05:00
c373198084
Prefix operators
randrews
2023-07-08 23:33:30 -05:00
ca72b480c5
Bunch of infix ops
randrews
2023-07-08 23:08:22 -05:00
f682a234c7
Refactoring exprs
randrews
2023-07-08 22:31:53 -05:00
bc3a1ad88f
Completed the parser
randrews
2023-07-08 20:54:23 -05:00
927600c7bc
More statement types
randrews
2023-07-08 19:09:32 -05:00
10e6aa7f11
Parsing arrayrefs and addresses
randrews
2023-07-05 23:45:04 -05:00
576759cb27
Quality-of-life refactoring
randrews
2023-07-05 23:19:54 -05:00
2aac110900
Start of expression parsing
randrews
2023-07-04 02:49:29 -05:00
2a9bfb342b
More refactoring
randrews
2023-07-03 23:11:44 -05:00
b05edb6ed4
Parsing fn headers
randrews
2023-07-03 17:19:19 -05:00
429d57c632
Refactoring the parser some
randrews
2023-07-03 01:35:37 -05:00
41bf0a2184
Starting to build a Forge parser
randrews
2023-07-02 02:10:06 -05:00
51c690e263
Tweaked snippet layout
randrews
2023-02-06 12:21:11 -06:00
0c3a290ce8
Basics page
randrews
2023-02-06 12:20:03 -06:00
f07d0e315b
Animating the display (fuzz demo)
randrews
2023-02-02 23:55:42 -06:00
26cccd77b1
Added a Display struct and animation frames
randrews
2023-02-02 23:18:04 -06:00
5259d6ee8c
Uninitialized canvas display
randrews
2023-02-01 20:31:06 -06:00
910e4b856b
Added gfx crate
randrews
2023-02-01 20:13:15 -06:00
78d8457f75
Specify width and syntax highlighting and indentation
randrews
2023-01-29 23:26:48 -06:00
7e969f1469
Multiple copies of the emulator on a page
randrews
2023-01-28 22:29:37 -06:00