aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: d8bce96c041f43bee02a07c04e514840348ae4df (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# Ahoy! — The CHIP-8 Emulator and -Toolchain


Ahoy! (the ‘!’ is part of the name) is a CHIP-8 emulator and -toolchain.
As of writing, the following binaries exist as part of the Ahoy!
distribution:

- `ahoy` — GUI emulator
- `c8asm` — CHIP-8 assembler
- `c8dump` — CHIP-8 disassembler


## Where does the name come from?

The ‘Chips Ahoy!’ cookies I enjoyed as a child.


## Building and Installation

The entire project can be built with a C23 compiler:

```sh
$ cc -std=c23 -o make make.c
$ ./make          # compile everything
$ ./make install  # install everything
```

The following flags can be provided to the build script:

- `-f` / `--force`: force a complete rebuild
- `-r` / `--release`: build with optimizations enabled


## Documentation

All programs in the Ahoy! collection are documented via manual pages.
You can read them either with the `man` command, or by passing the
`-h`/`--help` flag to the given program.


## Potential Future Plans?

- TUI emulator via ncurses
- Compiler for a C-like higher-level language
- SCHIP support
- Handheld emulator on an embedded system