• Stars
    star
    123
  • Rank 290,145 (Top 6 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Yet Another NES Emulator Written in Go

GoNES: Yet Another NES Emulator Written in Go

Latest version: 0.3.0-beta

NOTE: This project is under active development. Defects and bugs are expected.

What is this?

A cross-platform and portable NES emulator written Go.

Why choosing GoNES?

  1. For developers who want to learn how this emulator works: GoNES is optimized for code readability, not performance.
  2. Yes, cross-platform!
  3. Download and play: No runtime dependencies.

Installation

Prebuilt binaries

You can download a prebuilt binary.

Build from source

go get -d github.com/vfreex/gones
make

Usage

Start GoNES

Run gones from terminal:

gones <game>.nes

Or if you are using GUI, just drag your .NES file to gones binary file.

demo-01-cmd

Then the game will start:

demo-02-nova

Default Keymap

First Player

NES Key PC Mac
Start Enter
Select Tab
Left
Right
Up
Down
A X X
B Z Z

More Repositories

1

hijackfilter

a set of free software to protect you from Internet hijacking
C
191
star
2

mdns-reflector

a lightweight and performant multicast DNS (mDNS) reflector with modern design, supports zone based reflection and IPv6
C
135
star
3

docker-cowrie

Dockerfile and docker-compose file to run Cowrie in Docker.
30
star
4

docker-netease-cloud-music

Docker image of Netease Cloud Music (网易云音乐) for Linux.
Shell
26
star
5

kube-nextcloud

Containerized Nextcloud tailored for Kubernetes / OpenShift
Dockerfile
19
star
6

procslink

ProcsLink provides API for cross-namespace inter-process communication (IPC) over netlink socket.
Python
7
star
7

vimrc

Vimrc for Programmers using Vundle as plugin manager.
Vim Script
6
star
8

rime-zhengma

Zhengma support for RIME IME
5
star
9

ddns6

DDNS6 - One dynamic DNS client for multiple hosts
Rust
5
star
10

dockernet

With Dockernet, you can add custom interfaces, configure static IP addresses, and adding static routes to a Linux container in a simple way.
Shell
5
star
11

release-apiserver

Go
2
star
12

teamtalk-cloud

experimental cloud-native TeamTalk distribution
TSQL
2
star
13

performance-ci

This Jenkins plugin allows to run Apache Jmeter performance testing tool and monitor hardware resource of target servers using Jenkins. It can also generate various kinds of performance testing reports using perfcharts (https://github.com/vfreex/perfcharts) for performance analysis.
JavaScript
2
star
14

pyatfork

PyAtfork provides API to register fork handlers. PyAtfork is a wrapper for the POSIX Pthreads API pthread_atfork(3). I wrote this module because Python's ctypes library cannot handle this function correctly.
C
2
star
15

docker-spigot

Docker container image of Spigot Minecraft server
1
star
16

docker-spongevanilla

Shell
1
star