1. Cliff Biffle
  2. m3forth

Source

m3forth /

Filename Size Date modified Message
48 B
Added a basic test suite for the kernel primitives, scripted in Python.
816 B
Fixed the Makefile to create the build/ directory if needed.
3.6 KB
Tail-calls appear unlikely to work (easily) in STC, so I've removed them from the assembler (the heaviest TAIL: user).
10.3 KB
Inlined ENDOF. Smaller, faster, etc.
1.0 KB
Added a variable holding the system clock rate. Not good for much just yet.
2.9 KB
Added PREV-TCP, making the run ring doubly-linked. This will make task deactivation easier.
16.3 KB
Threads can now become unprivileged by calling DROP-PRIVS, though everything starts privileged.
95 B
Rearranged the compiling words so that the DTC dependencies (or at least most of 'em) are broken out into a separate file.
486 B
Rather than hardcoding device paths, the Python comm scripts now use getopt.
613 B
Moved :NONAME into functional.4th, reducing core size by 60 bytes.
3.2 KB
Got basic subroutine threading working. As you might infer from the size of this change, I didn't do so great at isolating the threading-dependent words.
21.3 KB
Fixed YIELD to become a no-op if executed in a handler. This is a bit of a hack, but we were getting hard-faults when doing serial I/O from handler code because of the SVC.
2.2 KB
Serial I/O no longer yields if the receive/transmit operation does not block.
2.7 KB
Some support files from previous LPC1768 projects.
3.6 KB
Got basic subroutine threading working. As you might infer from the size of this change, I didn't do so great at isolating the threading-dependent words.
304 B
post-bootstrap.4th contains a few definitions that can't be in core.4th for whatever reason. It's written for the compiler itself, not the target compiler.
1.4 KB
Added two words for analyzing the contents of RAM: FIRST-RAM-DEF identifies the base of the RAM dictionary, and RAM-PTRS uses a conservative range comparison to identify possible pointers to RAM in RAM.
2.3 KB
Added a systick counter. Currently it's in a register for simplicity.
1.5 KB
Switched to using a variable farcall reflector. The reflection path is controlled by r11 (a callee-saved high register generally safe from other changes and available for ISRs). This eliminates the need for call relocations when moving code from RAM to Flash, since the reflector region can be adjusted to precisely alias the amount of code in Flash.
385 B
Threads can now become unprivileged by calling DROP-PRIVS, though everything starts privileged.
13.3 KB
Fixed tests broken by my last commit.
2.2 KB
The Typer is no longer lock-step with the micro -- it now sends an entire line (sans CR) before checking echo. This should be just as reliable, but is 5.5x
2.1 KB
First step toward using privilege levels: the Farcall Reflector now works on both stacks.