From 5ab8351baafeb402eb9baeed0b4b7a8c6a630c5b Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sat, 30 May 2020 05:39:38 -0400 Subject: [PATCH] Add screenshot to README --- README.md | 8 ++++---- misc/output.png | Bin 0 -> 30634 bytes 2 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 misc/output.png diff --git a/README.md b/README.md index e0a5ab4..65e0d09 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,9 @@ # chip8 -A chip8 emulator that I implemented in C++. It only implements the SCHIP instruction set, and can play many modern roms found online. +A chip8 emulator that I implemented in C++. It only implements the SCHIP instruction set, and can play many modern roms found online. There's a basic memory viewer and debugger available as well. -This emulator also comes with a WIP compiler that takes a C-style language as input and can spit out valid CHIP-8 code: +![example result](https://raw.githubusercontent.com/redstrate/chip8/master/misc/output.png) + +This emulator also comes with a basic compiler that takes a C-style language as input and can spit out valid CHIP-8 code: ``` var count = 3; label(main); @@ -9,5 +11,3 @@ count += 3; draw_char(0, 5, count) jump(main); ``` - -There's also a basic memory viewer and "debugger" included as well. diff --git a/misc/output.png b/misc/output.png new file mode 100644 index 0000000000000000000000000000000000000000..05f1151ef1644d157c33d02ca16efce17219206b GIT binary patch literal 30634 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 A5&!@I literal 0 HcmV?d00001