Chipo, a Chip-8 Emulator
=====================================
This is a web version of Chipo compiled using Web Assembly. You can use it to create your own Chip-8 programs and down them for your emulator!
Upload your c8 file:
[LOAD]
[DOWNLOAD]
TEST ROMS:
- Chipo.s
- Timer.s
- Test.s
- Audio.s
- Keyboard.s
xxxxxxxxxx
1
; ___ _ _ _ __
2
; / __|| |_ (_)| '_ \ ___
3
; | (__ | \ | || .__// _ \
4
; \___||_||_||_||_| \___/
5
; ===========================
6
; An assembly targeting Chip-8
7
; ===========================
8
9
.data ; defines sprites
10
stripe: 0xF000 0xF000 0xF000
11
h: 0x9090 0xF090 0x9000
12
i_letter: 0x7020 0x2020 0x7000
13
p: 0xE090 0xE080 0x8000
14
15
.code ; start code
16
ld v0, 10
17
ld v1, 12
18
19
ld i, stripe
20
call next
21
22
ld v3, 0xC
23
ld f, v3
24
call next
25
26
ld i, h
27
call next
28
29
ld i, i_letter
30
call next
31
32
ld i, p
33
call next
34
35
ld v3, 0
36
ld f, v3
37
call next
38
39
ld i, stripe
40
call next
41
42
ld v2, k
43
ret
[Save][Clear][Run][Stop]
=====================================
Settings
Auto-save: [x]
Auto-run: [x]
=====================================
TODO
This web version is not yet complete.
- [x] Keyboard interaction
- [ ] Binary import/export
- [ ] Add more ROMs
=====================================
About
You can find the sources for the emulator on Github. This web page was built using the following tools :
- CodeMirror for the editor
- WASM-Pack to compile the rust sources to Web Assembly
- The Press Start 2P font