: EMIT ( c -- ) CONSOLE-TX b! !b ;
: CR ( -- ) 10 jump EMIT
: SPACE ( -- ) 32 jump EMIT
: TYPE ( baddr u -- )
-if OK drop drop NODE-ERROR b! -1 !b ;
OK: if DONE over C@ EMIT push 1 + pop -1 + jump OK
DONE: drop drop ;
They follow v3 (v3/src/word_source/io_words.c): EMIT prints the low byte
of the cell, CR character 10, SPACE a blank; TYPE prints u bytes,
nothing for u = 0, and for u < 0 nothing, with NODE-ERROR set where v3
raised its error flag. TYPE does not check the address range, which v3
does; out-of-range addressing is still an open question in node.h.
New test v4/tests/test_terminal.c, on a node of its own with the console
attached, 939 checks per width. Two transcripts of the real v3 binary
are recorded as expected output:
65 EMIT 66 EMIT SPACE 67 EMIT CR 68 EMIT 321 EMIT -> "AB C\nDA"
S" Hello, v3" TYPE 91 EMIT <text> 0 TYPE 93 EMIT -> "Hello, v3[]"
Also: EMIT of every byte and of wider values, CR, SPACE, TYPE from every
start within a cell at lengths 0..40, bytes with the top bit set and
zero bytes, negative counts, and that TYPE writes no memory. At 32- and
64-bit cells, optimised and ASan+UBSan (`make test`, `make sanitize`).
Five mutations each fail.
Headroom (data cells under args / return entries): EMIT 8/8, TYPE 4/3.
TYPE's depth is C@'s, which is still as written (C@ -> RSHIFT -> SWAP).
Test results on the amd64 host only. This is a development check, not
acceptance (JUSTIFICATION.md section 16).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
StarForth / LithosAnanke Documentation
This is the lithosananke branch: the bare-metal StarKernel side of the project
(contrast master, which is the hosted-VM-only side). Documentation follows the
two-tier model described in docs/CLAUDE.md: formal/ is the polished,
citable LaTeX tier; working/ is living design notes and drafts that feed it.
Everything else in this directory is branch- or subsystem-specific material that
doesn't fit either tier.
Layout
- formal/ — Three-volume LaTeX documentation set (research volumes,
practitioner books, standalone reports) plus the
scraps/fragment library it's assembled from. Audience: patent counsel, SSRN reviewers, licensees, hobbyists with hardware in hand. Seeformal/CLAUDE.mdfor authoring conventions. - working/ — Living documents: architecture design notes, DoE
experiment logs, hardware/platform notes, draft specs, academic-paper source
material, and an archive of superseded docs. Source material for
formal/. - 03-architecture/ — Tripod VM architecture constraints (Hera/Hermes/Artemis) and the word-level ACL system design.
- lithosananke/ — LithosAnanke kernel branch documentation: milestone roadmap, system architecture, HAL reference, kernel command-line argument design, and the amd64 APIC-timer ISR postmortem.
- birthing/ — VM birthing plan and status for the Hera-spawns- Hermes/Artemis constellation, plus three-architecture QEMU acceptance logs.
- patent/ — Provisional patent application source. Legal hold — ask Bob before touching anything in this directory.
- api/ — Generated Doxygen tag file and warnings log (gitignored; not part of the tracked doc tree).
- pptx/ — Elevator-pitch and deep-dive slide decks for different audiences (technical, non-technical, academic, PhD-level).
Current Active Work
- LithosAnanke M7/M7.1 — VM parity validation and init capsule architecture.
See
lithosananke/README.mdandlithosananke/M7.1.md. - Word-level ACL system — Phase 6 complete on
master; Phase 7 (LithosAnanke parity) is the next step. See03-architecture/word-acl/README.md. - Tripod VMs — Hera (governor), Hermes (messenger), Artemis (memory/block
storage). See
03-architecture/tripod/README.mdandbirthing/.
Contributing
- Place new material in
working/first; promote toformal/only when it's ready to be cited (seeformal/CLAUDE.mdfor promotion criteria). - Never touch
patent/,formal/patent/,formal/scraps/legal/, orworking/legal/without Bob's explicit instruction. - Add a
README.mdto any new category-level subdirectory, following the format used throughout this tree: orientation paragraph + bullet list of real files with one-line descriptions.