A new Nes Emulator has been released in the GO Language:
The language GO has become very popular recently, as its just as simple to learn as BASIC was, and to show off how easy it is @rbaron has written an NES Emulator called awesomenes in GO and you can check it out below, and start to enjoy some retro gaming on your GO compatible device and at the same time study how he did it to program something cool yourself in GO.
Getting and running
awesomenes uses sld2 for rendering and input processing. It may be necessary to install it beforehand. On macOS, using homebrew:
$ brew install sdl2
Other systems/package managers should provide similar sld2/libsdl2 packages. Then use the go get:
$ go get github.com/rbaron/awesomenes
$ awesomenes MY_ROM.nes Status
Games that use the mapper 0 (NROM) mostly work, although without audio so far. Games that use mapper 4 (mmc3) should work with some eventual glitches.
Donkey Kong (NROM)
Super Mario Bros. (NROM)
Super Mario Bros. 2 (mmc3)
Super Mario Bros. 3 (mmc3, with some glitches)
Keyboard (controller 1)
Arrow keys -> NES arrows
A -> NES A
S -> NES B
Enter -> NES start
Right shift -> NES select
Nintendo Switch Joycon (controller 1)
Directional -> NES arrows
Down arrow -> NES A
Right arrow -> NES B
SL -> NES select
SR -> NES start
✅ CPU emulation
✅ Video support (picture processing unit - PPU)
✅ Keyboard input
✅ Mapper 0
✅ Joystick input (tested with Nintendo Switch Joycon)
✅ Mapper 4 (...kinda)
➖ More mappers
➖ Save state
➖ Audio support (audio processing unit - APU)
All the information used to build this emulator was found on the awesome nesdev wiki.
Welcome to the DCEmu Homebrew and Gaming Network. This Network of sites is owned and ran by fans of the retro consoles and the latest next-gen consoles, we post news on all the consoles we cover about hardware aspects, gaming, modification, Hacking and Homebrew. Homebrew and Emulation are software thats made using free and legal tools to play on games consoles. This Network is the only worldwide network of sites where coders can upload and post news of their own releases and get the credit and comments they deserve for all their hardwork. We have a Network that currently supports PSvita, Nintendo 3DS, WiiU, PS4, Xbox720, Nintendo Wii, Xbox360,Pandora, Dingoo, Wiz, PS3, PS2, Xbox, Gamecube, Nintendo DS, PSP, GBA, Dreamcast, Sega Saturn, Android, Apple, Blackberry, GP32, GP2X, Nintendo 64, Snes, Gameboy, Nes, Virtual Boy, Apple iPhone, Ipad, Ipod Touch, Ipod, Windows Phone and also Mobile Phone Emulation. When new consoles appear we will expand to cover those consoles.
Please help DCEmu become stronger by posting on the forums every day and make our community larger.