A NES emulator in ~5000 significant bytes of c.
Zero dependencies Win32 build using cutomized older version of MiniFB with frame limiting and keyboard handling.
Plays some mapper 0/1/2/3/4/7 games.
Probably only builds on Linux and macOS. Try gcc or clang.
$ make
$ ./smolnes <rom.nes>
Keys:
Action | Key |
---|---|
DPAD-UP | ↑ |
DPAD-DOWN | ↓ |
DPAD-LEFT | ← |
DPAD-RIGHT | → |
B | Z |
A | X |
START | Enter |
SELECT | Tab |
Look for line 19 in the source code. The following table shows which numbers map to which keyboard keys:
number | default key | NES button |
---|---|---|
27 | X | A Button |
29 | Z | B Button |
43 | Tab | Select Button |
40 | Return | Start Button |
79 | Arrow Right | DPAD Right |
80 | Arrow Left | DPAD Left |
81 | Arrow Down | DPAD Down |
82 | Arrow Up | DPAD Up |
Replace the numbers on this line with one from the SDL scancode list.