CUBED Documentation

GA144 / EVB002 Emulator & CUBE Language Reference

CUBED is an open-source emulator for the GreenArrays GA144 multi-computer chip and EVB002 evaluation board, paired with an experimental implementation of the CUBE 3D visual logic programming language.

The GA144 packs 144 tiny 18-bit Forth processors into a single chip, communicating through a mesh of blocking ports. CUBED lets you write, visualize, and step through programs for this unusual architecture right in your browser.

This is an early-stage research project. Contributions are very welcome — whether that's improving emulation accuracy, extending the CUBE compiler, building new samples, writing docs, or just filing bugs. If massively parallel stack machines or 3D visual languages sound interesting to you, come help out!

Application

CUBED Emulator

GA144/EVB002 emulator with CUBE 3D visualization, arrayForth assembler, and node inspector.

app
CUBE Language

CUBE Language Spec

3D visual logic programming language — syntax, semantics, type system, and visual encoding.

language
F18A Processor

F18A Architecture

18-bit stack-based core: registers, memory map, stacks, and extended arithmetic mode.

hardware

F18A Instruction Set

Complete opcode reference with slot encoding, instruction packing, and execution details.

hardware
GA144 Chip

Node Map

8×18 mesh topology, node numbering, and inter-node communication ports.

hardware

I/O System

Port addresses, GPIO pins, analog I/O, and the I/O register map.

hardware

Boot Process

Boot sequences, wire protocol, async boot streams, and multi-node loading.

hardware

Application Notes

AN001–AN012: partner nodes, wire protocol, SPI flash, I2C, and more.

hardware
Programming

arrayForth Compiler

Compiler internals: tokenization, instruction packing, labels, directives, and ROM layout.

tooling

Programming Patterns

Idiomatic F18A patterns: loops, conditionals, inter-node messaging, and stack techniques.

patterns

cubec CLI

Command-line compiler for CUBE programs: options, JSON output, and disassembly.

tooling

Sample Programs

Catalog of CUBE and arrayForth samples with difficulty and behavior notes.

samples
Architecture

System Overview

High-level architecture and data flow for the emulator and UI.

architecture
Performance

VGA Profiling

Performance capture checklist for VGA rendering and memory usage.

performance
ROM Disassembly

ROM Disassembly Index

Disassembled ROM contents for all GA144 node types: boot, analog, basic, and serial.

hardware
GreenArrays Reference Documents
CUBE Language Papers
VL91 Visual Programming in 3-D (Najork & Kaplan, 1991) TXT PDF
VL92 Computing with 3-D Type Visualizations (Najork & Kaplan, 1992) TXT PDF
JVLC96 Programming in Three Dimensions (Najork, 1996) TXT PDF