Skip to content

imagineeeinc/lychee

Repository files navigation

Lychee

A bare bones 8 bit computer emulator.

About

Lychee is a simple and bare bones emulator for a fictional computer with an instruction set heavily based on the GameBoy's CPU. Lychee is built to be restraining with no graphics, only supporting text mode graphics, and a ascii based keyboard.

Still a work in progress, as the instruction set and docs is being added

Docs

Check out the docs folder for all the docs. Or, go to the auto generated gitbook (imagineee.gitbook.io/lychee)

Specification

Check out the docs/specs folder for more on opcodes and specification.

ROMS

Roms are either written in raw hex, using a hex editor (example roms in /examples/roms). Or use the official assembler found in the /assembler directory. Assembly examples are found in /examples/asm.

And more info on the assembler at docs/assembler

Usage

To use the desktop app for emulation and debugging, read the docs/desktop.

Compilation

Compiling the Emulator

Make sure the Nim compiler and Nimble package manager is installed.

Clone this repo and compile using nimble.

git clone https://github.com/imagineeeinc/lychee.git
cd lychee

# Debug (Run)
nimble debug -- ./rom

# Build release
nimble release

Compiling the assembler

# cd into the assembler
cd assembler
nimble build

# Try the example project
./lasm examples/loopchars.asm ../rom
# For windows
./lasm.exe examples/loopchars.asm ../rom
# Then run it in lychee
cd ..
nimble debug -- ./rom

About

A small assembly emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published