• Stars
    star
    378
  • Rank 113,272 (Top 3 %)
  • Language
    C
  • License
    MIT License
  • Created about 7 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Tests and sample code for https://github.com/floooh/chips

chips-test

Build Status

Tests and sample emulators for https://github.com/floooh/chips

Live demos of the example emulators: https://floooh.github.io/tiny8bit

To build and run on Windows, OSX or Linux (exact versions of tools shouldn't matter):

Check prerequisites:

> python --version
Python 2.x or 3.x
> cmake --version
cmake version 3.x

NOTE: on Linux, additional dev packages need to be present for X11, GL and ALSA development.

Create a 'workspace' directory (which will be populated with additional dependencies), clone and cd into chips-test:

> mkdir workspace
> cd workspace
> git clone https://github.com/floooh/chips-test
> cd chips-test

Finally, build and run one of the emulators (for instance the Amstrad CPC):

> ./fips build
> ./fips list targets
> ./fips run cpc

To get optimized builds for performance testing:

# on OSX:
> ./fips set config osx-make-release
> ./fips build
> ./fips run [target]

# on Linux
> ./fips set config linux-make-release
> ./fips build
> ./fips run [target]

# on Windows
> fips set config win64-vstudio-release
> fips build
> fips run [target]

To open project in IDE:

# on OSX with Xcode:
> ./fips set config osx-xcode-debug
> ./fips gen
> ./fips open

# on Windows with Visual Studio:
> ./fips set config win64-vstudio-debug
> ./fips gen
> ./fips open

# experimental VSCode support on Win/OSX/Linux:
> ./fips set config [linux|osx|win64]-vscode-debug
> ./fips gen
> ./fips open

To build the WebAssembly demos (Linux or OSX recommended here, Windows might work too, but this is not well tested).

# first get ninja (on Windows a ninja.exe comes with the fips build system)
> ninja --version
1.8.2
# now install the emscripten toolchain, this needs a lot of time and memory
> ./fips setup emscripten
...
# from here on as usual...
> ./fips set config wasm-ninja-release
> ./fips build
...
> ./fips list targets
...
> ./fips run c64
...

When the above emscripten build steps work, you can also build and test the entire samples webpage like this:

> ./fips webpage build
...
> ./fips webpage serve
...

Many Thanks To:

More Repositories

1

sokol

minimal cross-platform standalone C headers
C
6,780
star
2

oryol

A small, portable and extensible C++ 3D coding framework
C++
1,990
star
3

chips

8-bit chip and system emulators in standalone C headers
C
967
star
4

sokol-samples

Sample code for https://github.com/floooh/sokol
C
605
star
5

pacman.c

Simple Pacman clone written in C99.
C
494
star
6

fips

High-level build system for distributed, multi-platform C/C++ projects.
Python
468
star
7

sokol-zig

Zig bindings for the sokol headers (https://github.com/floooh/sokol)
C
343
star
8

v6502r

visual6502 remixed
C
305
star
9

pacman.zig

Simple Pacman clone written in Zig.
Zig
227
star
10

cimgui-sokol-starterkit

A minimal self-contained Dear ImGui starter project for Windows, Linux and macOS.
C++
217
star
11

sokol-tools

Command line tools for use with sokol headers
C++
216
star
12

bookmarks

Links to stuff that looks useful.
147
star
13

qoiview

QOI image viewer on top of the Sokol headers
C
126
star
14

emu-info

Various emulator-related infos from all over the net.
Assembly
115
star
15

yakc

Yet another KC emulator
Assembly
107
star
16

sokol-odin

Odin bindings for the sokol headers (https://github.com/floooh/sokol)
C
85
star
17

sokol-nim

nim bindings for https://github.com/floooh/sokol
C
82
star
18

oryol-samples

Oryol extension module samples
C++
82
star
19

rz80

Z80 chip family emulator library written in Rust.
Rust
76
star
20

fbxc

FBX cruncher (FBX + rules => JSON + vertex data blob)
C++
65
star
21

gliml

Minimalistic image loader library for GL projects
C++
63
star
22

sokol-rust

Rust bindings for the sokol headers (https://github.com/floooh/sokol)
C
60
star
23

altai

Modern WebGL wrapper in TypeScript
TypeScript
55
star
24

kc85.zig

A KC85 emulator written in Zig
Zig
52
star
25

tiny8bit

WebPage for https://github.com/floooh/chips-test
HTML
39
star
26

chipz

8-bit emulator experiments in Zig
Zig
34
star
27

docker-c64

C64 emulator running in docker
C
33
star
28

vscode-kcide

Retro assembly IDE for VSCode
TypeScript
29
star
29

sokol-zig-imgui-sample

Sample to use sokol-zig bindings with Dear ImGui
Zig
24
star
30

sokol-tools-bin

Binaries and fips integration for https://github.com/floooh/sokol-tools
Python
23
star
31

oryol-animation

Oryol animation and skinned-character-rendering modules
C++
19
star
32

visualz80remix

[WIP] WASM for https://github.com/floooh/v6502r with Z80 netlist
HTML
18
star
33

oryol-imgui

Dear Imgui wrapper module for Oryol
C++
18
star
34

fips-bgfx

fipsified version of bgfx (https://github.com/bkaradzic/bgfx)
CMake
17
star
35

vscode-emscripten-debugging

Example repository for Emscripten WASM debugging in VSCode
C
15
star
36

sokol-webgpu

HTML
15
star
37

floooh.github.io

Move blog and personal web page over to github (work in progress)
HTML
15
star
38

sokol-nim-samples

Example code for https://github.com/floooh/sokol-nim
Nim
14
star
39

visual6502remix

Webpage for https://github.com/floooh/v6502r
HTML
11
star
40

virtualkc

Webpage for the YAKC KC85 emulator
HTML
10
star
41

oryol-tools

Asset exporter tools for Oryol engine
C++
10
star
42

drahtgitter

A toolkit for converting and processing 3d data in python.
Python
9
star
43

oryol-tbui

Integrate TurbobadgerUI with Oryol
C++
8
star
44

sokol-html5

webpage for https://github.com/floooh/sokol-samples
HTML
7
star
45

objc-ast-experiments

C
7
star
46

fips-libcurl

Precompiled, stripped down libcurl libs for Oryol
C
7
star
47

visual2a03remix

webpage for the Ricoh 2A03 simulation
HTML
7
star
48

fibs

Nothing to see here, move along :)
TypeScript
7
star
49

kc85sdk

Experimental C-SDK for KC85 home computers
Python
7
star
50

tiny8bitvs

Experiment to integrate a 'chips' WASM emulator into a VSCode tab.
TypeScript
6
star
51

kcide-sample

Sample project for VSCode KC IDE extension
Assembly
6
star
52

fips-soloud

fipsified version of Soloud audio lib (https://github.com/jarikomppa/soloud)
CMake
6
star
53

voxel-test

Place to experiment with stb_voxel_renderer.h and Oryol
C
5
star
54

oryol-nuklear

Integrate Nuklear UI with Oryol engine
C++
5
star
55

oryol-test-app

Oryol testing app in its own repo
C++
5
star
56

fibs-hello-world

Most minimal fibs test project.
TypeScript
5
star
57

emsc-interop-demo

Simple example to demonstrate calling a C function from Javascript.
HTML
5
star
58

easmx

A fork of the asmx assembler usable as embeddable library.
C
5
star
59

sokol-wgpu-preview

Temporary sneak preview website for sokol WebGPU samples.
HTML
4
star
60

oryol-fileformats

Structure definitions for Oryol binary file formats.
C++
4
star
61

headeronly-perf

C
4
star
62

hcasm

8-bit home computer assembler in Typescript
TypeScript
4
star
63

fibs-libs

Collection of fibs project wrappers for common 3rd-party libraries.
TypeScript
4
star
64

oryol-sound

Legacy Oryol sound module (uses OpenAL)
C++
3
star
65

docker-kc85

A KC85/4 emulator in Docker.
C
3
star
66

fips-nuklear

fips build system wrapper for nuklear UI (https://github.com/vurtun/nuklear)
Python
3
star
67

chef-emscripten

Chef cookbook to setup an emscripten build environment.
Ruby
3
star
68

oryol-webgl2

Webpage files for bleeding edge WebGL2 Oryol samples.
HTML
3
star
69

fips-hello-world

Test project for fips build system.
Python
3
star
70

fips-cjson

fipsified cJSON lib
CMake
2
star
71

fips-bullet

fips wrapper for bullet phyiscs
CMake
2
star
72

chef-cmake

Chef cookbook for installing cmake from source tarball
Ruby
2
star
73

fips-spirvcross

fips wrapper for SPIRV-Cross
CMake
2
star
74

flohofwoe.www

JavaScript
2
star
75

fips-glfw

fipsified GLFW (https://github.com/glfw/glfw)
CMake
2
star
76

fibs-sokol-test

Fibs + sokol + sokol-shdc + stb
C
2
star
77

fips-vld

Fipsified VLD (Visual Leak Detector)
C
2
star
78

fips-zlib

fipsified zlib
C
2
star
79

fips-cpptoml

fipsified cpptoml (https://github.com/skystrife/cpptoml)
2
star
80

nvidia-driver-issue

C
1
star
81

fips-unittestpp

fipsified UnitTest++
C++
1
star
82

chef-nacl

Chef cookbook to install the Google Native Client SDK
Ruby
1
star
83

webgl2-test

WebGL2 bug repro tests (wip)
JavaScript
1
star
84

fips-remotery

fipsified version of Remotery (https://github.com/Celtoys/Remotery)
CMake
1
star
85

tmp-http-test

TypeScript
1
star
86

fibs-test

Top level test project for https://github.com/floooh/fibs
C
1
star
87

oryol-simple

The most simple Oryol Gfx app
Python
1
star
88

fips-lua

fips wrapper for lua
CMake
1
star
89

fips-glm

Fipsified glm lib (https://github.com/g-truc/glm)
1
star
90

fibs-utils

Common helpers and utilities for fibs projects.
TypeScript
1
star
91

tiny8bit-preview

Temporary preview webpage repo for https://github.com/floooh/chips-test
HTML
1
star
92

kcide-sample-kc854

Moved from https://github.com/floooh/kcide-sample/tree/main/kc854
Assembly
1
star