A downloadable project for Windows

Buy Now4.99€ EUR or more

Mini8 — Tiny 8-bit Fantasy VM (ASM + MiniBASIC)

Mini8 is a compact 8-bit fantasy virtual machine — all-in-one:
VM + assembler + MiniBASIC + disassembler + self-tests in a single executable.
Perfect for making tiny retro-style programs, learning ASM, or experimenting in game jams.

 Features

  • 4 KiB memory (0x0000..0x0FFF) with dedicated stack (0x0C00..0x0FFF).

  • Memory-mapped I/O:
    IO_OUT=0x0FF0 (print char), IO_IN=0x0FF1, IO_READY=0x0FF2, IO_RNG=0x0FF3 (8-bit LFSR RNG).

  • Compact ISA: 1/2/3-byte opcodes, absolute & relative branches (JR*), shifts/rotates, logic, CALL/RET, PSH/POP.

  • Built-in tools: assembler (--asm), MiniBASIC compiler (--basic), disassembler (--disasm), self-tests (--selftest).

  • Debug options: tracing (--trace, --trace-pre, --trace-both), single-step (--step), breakpoints (--bp), memory dump (--dump), instruction limit (--limit), clock speed (--mhz, --no-throttle).

  • Cross-platform: Windows ( _kbhit() / _getch() ) and POSIX (non-blocking select()).

 Build & Run

Assemble (ASM → ROM)

mini8 --asm source.asm -o prog.rom mini8 prog.rom 

Compile (MiniBASIC → ROM)

mini8 --basic source.bas -o prog.rom mini8 prog.rom 

Disassemble

mini8 --disasm prog.rom > prog.lst 

Run self-tests

mini8 --selftest 

 Tiny Examples

Hello (ASM)

ORG 0 LDAI 'H' STA 0x0FF0   ; IO_OUT : prints 'H' LDAI 10      ; newline STA 0x0FF0 HLT 

Keyboard input (non-blocking)

ORG 0 LOOP: LDA 0x0FF2    ; IO_READY ?       CMPI 0       JREQ LOOP       LDA 0x0FF1    ; IO_IN       STA 0x0FF0    ; echo char       HLT 

Random byte (deterministic with seed)

ORG 0 LDA 0x0FF3   ; IO_RNG STA 0x0FF0 HLT 
mini8 --seed 123 rng.rom 

 Debugging

  • Trace: --trace, --trace-pre, --trace-both

  • Step: --step (keys: s=step, c=continue, r=regs, q=quit)

  • Breakpoints: --bp 0x0123 --bp 0x0200

  • Hexdump: --dump or --dump-from 0x0200 --dump-len 128

  • Speed: --mhz 1.0 or --no-throttle

  • Instruction cap: --limit 2000

 Download Includes

  • Mini8 executable (VM + tools)

  • Example ASM/MiniBASIC programs (optional)

  • Quickstart guides (FR/EN)

 License

Proprietary — All rights reserved. No copying, modification, or redistribution without explicit written permission.


Published 18 days ago
StatusReleased
CategoryOther
PlatformsWindows
AuthorHohenstein256

Purchase

Buy Now4.99€ EUR or more

In order to download this project you must purchase it at or above the minimum price of 4.99€ EUR. You will get access to the following files:

mini8.exe 395 kB
README-EN.md 6.2 kB
Mini8-USER-GUIDE-EN.txt 8.1 kB
LICENSE.txt 150 bytes

Leave a comment

Log in with itch.io to leave a comment.