sd:star_forth
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| sd:star_forth [2026/03/12 13:58] – appledog | sd:star_forth [2026/03/12 16:16] (current) – appledog | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| Starting Forth is available online at [[https:// | Starting Forth is available online at [[https:// | ||
| + | |||
| + | == Welcome to Star Forth | ||
| + | SD/FORTH v0.5 | ||
| + | |||
| + | * 32-bit cells, subroutine-threaded | ||
| + | * Outer interpreter with TIB, word parser, dictionary search, number parsing | ||
| + | * Stack primitives with underflow protection | ||
| + | * 17 built-in words: BYE, .S, CR, ., DUP, DROP, SWAP, OVER, +, -, *, /, MOD, EMIT, DEPTH, WORDS, PROMPT | ||
| + | * Decimal, hex ($), binary (%), explicit decimal (#) number input | ||
| + | * Negative numbers with - prefix | ||
| + | * Paste-friendly '> ' stripping | ||
| + | |||
| + | Next phases when you're ready: | ||
| + | |||
| + | TODO: | ||
| + | * : and ; (colon definitions) — this is where FORTH becomes a real language | ||
| + | * 32-bit number printing (currently . only shows low 16 bits) | ||
| + | * Control flow — IF/ | ||
| + | * Memory words — @, !, C@, C!, HERE, ALLOT, , | ||
| + | * String I/O — .", TYPE, ACCEPT | ||
| + | * Save/load dictionary images | ||
| == FIG-FORTH | == FIG-FORTH | ||
| Line 14: | Line 35: | ||
| This list includes implementations for: the 1802, 6502, 6800, 68000, 6809, 8088, 9900, the Alpha Micro, Apple II, Eclipse, IBM-PC, Nova, Pace, the PDP-11, and the VAX. | This list includes implementations for: the 1802, 6502, 6800, 68000, 6809, 8088, 9900, the Alpha Micro, Apple II, Eclipse, IBM-PC, Nova, Pace, the PDP-11, and the VAX. | ||
| - | The point being proven, FORTH is out there with copious amounts of code in various architectures. It was thus easy to get a kind of FORTH running on the SD-8516. I quickly became obsessed with it. | + | The point being proven, FORTH is out there with copious amounts of code in various architectures. It was thus easy to get a kind of FORTH running on the SD-8516. I quickly became obsessed with it. It took quite a while to iron out all the stack bugs. |
| == Why | == Why | ||
| Line 145: | Line 166: | ||
| Several official Atari 7800 console games were developed in Forth as well. It was surprisingly common for quick ports and prototypes. Games like Karateka, Hat Trick, and Worms were written in Forth. Notably the Forth source code for Worms (1983) is available on GitHub. | Several official Atari 7800 console games were developed in Forth as well. It was surprisingly common for quick ports and prototypes. Games like Karateka, Hat Trick, and Worms were written in Forth. Notably the Forth source code for Worms (1983) is available on GitHub. | ||
| - | The original Atari 800 Dig Dug was done in Forth. Professor Pac-Man (1983, Bally/ | + | The original Atari 800 Dig Dug was done in Forth. Professor Pac-Man (1983, Bally/ |
| + | |||
| + | RAMBrandt (Antic Software) was written in Forth. | ||
| - | RAMBrandt (Antic Software) | + | AtariLab |
| FORTH saw critical commercial success in the business world as well. RapidFile (1986, Ashton-Tate) was a flat-file database manager written in Forth. Ashton-Tate was big in databases back then (dBase III fame), so this reached business users. | FORTH saw critical commercial success in the business world as well. RapidFile (1986, Ashton-Tate) was a flat-file database manager written in Forth. Ashton-Tate was big in databases back then (dBase III fame), so this reached business users. | ||
sd/star_forth.1773323889.txt.gz · Last modified: by appledog
