Skip to content

Diesel-Net/kiwi-8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

396 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kiwi-8

Release Build Lint

boot_macos

A cross-platform Chip-8 interpreter written in C-style C++ using SDL2, ImGui, and OpenGL.

Compatibility Notes
Downloads

Features

  • Windows, MacOS, and Linux (Debian)
  • Resizable Window
  • Graphical user interface
  • Color customizer
  • CPU frequency selection
  • FPS limiter
  • Audio beep
  • Command line support
  • Configurable quirks
  • ROM profiles

Controls

controls        <-->        keybindings

1 2 3 C                     1 2 3 4
4 5 6 D                     q w e r
7 8 9 E                     a s d f
A 0 B F                     z x c v
increase speed              page up
decrease speed              page down
quit                        esc
toggle fullscreen           enter
toggle menu                 left alt
show fps                    right alt
soft reset                  f5
pause                       p
mute                        m

Usage

  Kiwi8 [options] [rom_file]
  Options:
     -f, --fullscreen         Start in fullscreen
     -m, --muted              Start with audio muted
     -p, --profiles <path>    Use a custom profiles.ini file
     -h, --help               Show this help message

  Note: Quirks are configured per-ROM via profiles.ini or GUI.

Building on Windows

The following must be installed and added to your PATH:

vcvarsall
cl
python3
cmake
nmake

  1. Change current working directory

    cd windows
  2. Configure environment for your architecture (x64 or arm64)

    vcvarsall.bat x64
  3. Compile with Microsoft's nmake utility

    nmake

Building on MacOS

The following must be installed and added to your PATH:

install_name_tool
clang
clang++
python3
cmake
make

  1. Change current working directory

    cd macos
  2. Compile with GNU's make utility

    make

Building on Linux (Debian)

The following must be installed and added to your PATH:

gcc
g++
make
cmake
python3
pkg-config

You'll also need the GTK3, openGL, PulseAudio/Pipewire headers:

sudo apt install libgtk-3-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev libjack-dev libpipewire-0.3-dev libdbus-1-dev
  1. Change current working directory

    cd linux
  2. Compile with GNU's make utility

    make

Resources