You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is my own implementation of a CHIP-8 emulator made using C and the SDL2
9
-
multimedia library. At the moment it is able to emulate a standard CHIP-8
10
-
machine implementing all the opcodes provided by the specification.
3
+
chip8 is a CHIP-8 emulator developed in C using the SDL2 multimedia library. It emulates a standard CHIP-8 machine and implements all the opcodes that the specification provides.
11
4
12
5
## Usage
13
6
@@ -17,59 +10,56 @@ To emulate a binary ROM just provide the file as an argument:
17
10
$ chip8 ~/roms/TETRIS.bin
18
11
```
19
12
20
-
To emulate an hexadecimal ROM you can use the `--hex` flag. Hexadecimal ROMs
21
-
are files that only contains ASCII characters representing hexadecimal code.
22
-
The ROM is compiled to binary during start up and executed as usual.
13
+
You can have more information by reading the [software manual](http://www.danirod.es/chip8/docs/current/manual/). [Download as PDF](http://www.danirod.es/chip8/docs/current/chip8.pdf).
23
14
24
-
Keyboard controls are designed to emulate the classic CHIP-8 controller. This
25
-
is the mapping. On the left, the actual CHIP-8 keypad. On the right, the
26
-
keys in emulator. It will be possible in future releases to change the keys.
27
-
At the moment the only way for doing this is by manually patching the source
28
-
code.
15
+
## Building from sources
29
16
17
+
In order to compile this project you will need to have SDL 2.0 headers and
18
+
libraries in your machine. Head to www.libsdl.org to get those in case
19
+
you still haven't got them or get them using your package manager if your
20
+
operating system has any.
21
+
22
+
After installing SDL 2.0 you can download the software distribution and install it via the following commands:
23
+
24
+
```sh
25
+
autoreconf --install # Only if you are using the Git repository
26
+
./configure
27
+
make
28
+
make install
29
+
make check # Optional: to test the emulator -- libcheck is required
30
30
```
31
-
Keypad: Emulation:
32
-
1 2 3 C 1 2 3 4
33
-
4 5 6 D Q W E R
34
-
7 8 9 E A S D F
35
-
A 0 B F Z X C V
36
-
```
31
+
37
32
## Screenshots
38
33
39
34
GNU/Linux:
40
35
41
-

42
-
43
-
MacOS X:
36
+

44
37
45
-

38
+
Apple® MacOS® X:
46
39
40
+

47
41
48
-
Windows:
49
42
50
-

43
+
Microsoft® Windows®:
51
44
52
-
## Files
45
+

53
46
54
-
In the subdirectory 'examples' you may find a few public domain ROMs that
55
-
can be emulated using this emulator as well as any other emulator you can
56
-
find on the Internet.
47
+
## License
57
48
58
-
* See 'COPYING' for copying conditions.
59
-
* See 'INSTALL' for compilation and installation instructions.
60
-
* See 'NEWS' for a list of changes in latest releases.
61
-
* See 'ChangeLog' for a list of technical changes in the source code.
62
-
* See 'BUGS' for information on how to report bugs you may find.
63
-
* See 'AUTHORS' for the names of the maintainers of the source code.
64
-
* See 'THANKS' for a list of contributors and other helpful people.
49
+
CHIP-8: A multiplatform CHIP-8 emulator done in SDL
0 commit comments