git404hub

what is sprk32 fr?

mikesxp/sprk32 — explained in plain English

Analysis updated 2026-05-18

2CAudience · developerComplexity · 4/5LicenseSetup · hard

tl;dr

An early stage fantasy retro computer emulator, assembly language, and compiler inspired by late 1980s home computers.

vibe map

mindmap
  root((repo))
    What it does
      Fantasy retro computer
      CPU and VPU emulator
      Custom BSL language
    Tech stack
      C
      BSL assembly language
      macOS only for now
    Use cases
      Low level hobby programming
      Emulator learning
      Assembly language experiments
    Audience
      Retro computing hobbyists
      Low level programmers
    Status
      Early rough development
      Known bugs
      MIT licensed

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Write low level assembly style programs for a fictional retro computer as a hobby coding exercise.

VIBE 2

Learn how CPU emulators, video processing units, and disk controllers work by studying a compact example.

VIBE 3

Experiment with compile time macros and memory layout declarations in a custom assembly language.

what's the stack?

CBSL (custom assembly)macOS

how it stacks up fr

mikesxp/sprk32code-my-spec/ear_witnessdakshlohchab/risc_v_32i
Stars222
LanguageCCC
Setup difficultyhardhardhard
Complexity4/54/54/5
Audiencedeveloperdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · hard time til it works · 1h+

Currently only runs on macOS, is early stage, has known bugs, and lacks audio, keyboard, and joystick support.

Released under the MIT license, allowing free use, modification, and commercial use as long as the license notice is kept.

in plain english

SPRK32 is a fantasy computer project, meaning it is a fictional retro computer that only exists as software, built for people who enjoy low level programming close to the hardware as a hobby. It is designed in the spirit of home computers from the late 1980s and early 1990s, with a deliberately limited specification: a 16 megahertz processor, a 160 by 120 pixel display, 256 colors, and storage on a simulated 3.5 inch floppy disk. These limits are intentional, encouraging the kind of careful, resourceful programming that older machines required. The project provides a full set of tools to write and run software for this imagined machine. There is an emulator that simulates the processor and its supporting chips, including a video processing unit and a floppy disk controller, a custom assembly style language called BSL along with its compiler, and a disassembler for reading compiled code back out. All of these tools are run through a built in command interpreter, either by typing commands directly or by writing a small configuration file that lists the steps to compile, disassemble, and run a program. BSL, the custom language, stays close to raw assembly but adds features that make code easier to read without adding any extra cost when the program runs. Programs can declare which hardware registers a routine uses, describe memory layouts and data structures by name instead of raw addresses, and use simple compile time macros to avoid repeating boilerplate code. Everything from interrupt handlers to memory allocation is written in this same language. The author is upfront that the project is still early and rough: several planned features like audio, keyboard, and joystick support are not yet implemented, the floppy disk controller is untested, there are known bugs, and documentation is incomplete. The emulator currently only runs on macOS, with cross platform support planned. The project is written in C and released under the MIT license, which allows free use, modification, and commercial use as long as the license notice is kept.

prompts (copy fr)

prompt 1
Walk me through compiling and running a simple BSL program on the SPRK32 emulator.
prompt 2
Explain how the layout and bitset features in BSL work compared to plain assembly.
prompt 3
Help me write a sprk32.cfg file that compiles a rom, disassembles it, and runs the emulator.
prompt 4
What known limitations should I expect since this project is still in early development?

Frequently asked questions

what is sprk32 fr?

An early stage fantasy retro computer emulator, assembly language, and compiler inspired by late 1980s home computers.

What language is sprk32 written in?

Mainly C. The stack also includes C, BSL (custom assembly), macOS.

What license does sprk32 use?

Released under the MIT license, allowing free use, modification, and commercial use as long as the license notice is kept.

How hard is sprk32 to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is sprk32 for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.