All Projects → gregkrsak → first_nes

gregkrsak / first_nes

Licence: Unlicense license
Create your own games for the Nintendo Entertainment System! This "starter" game is easily extensible for your own projects. Includes references.

Programming Languages

assembly
5116 projects
Makefile
30231 projects
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to first nes

cfxnes
JavaScript NES emulator and emulation library.
Stars: ✭ 56 (-40.43%)
Mutual labels:  nintendo, nes, nintendo-nes
Provenance
iOS & tvOS multi-emulator frontend, supporting various Atari, Bandai, NEC, Nintendo, Sega, SNK and Sony console systems… Get Started: https://wiki.provenance-emu.com |
Stars: ✭ 4,732 (+4934.04%)
Mutual labels:  emulator, nintendo, nes
NostalgiaLite
Three game emulators: FC(Nes), GG, GBC for Android
Stars: ✭ 85 (-9.57%)
Mutual labels:  emulator, nintendo, nes
SaltyNES
A NES emulator in WebAssembly
Stars: ✭ 69 (-26.6%)
Mutual labels:  emulator, nes, nintendo-nes
MOLE
(On hiatus untill untill further notice) RetroMole Core
Stars: ✭ 20 (-78.72%)
Mutual labels:  nes, rom, romhacking
Retro Go
Retro emulation for the ODROID-GO
Stars: ✭ 73 (-22.34%)
Mutual labels:  emulator, nintendo, nes
awesome-n64-development
A curated list of Nintendo 64 development resources including toolchains, documentation, emulators, example code, and more
Stars: ✭ 210 (+123.4%)
Mutual labels:  nintendo, asm, rom
awesome-emu-resources
A curated list of emulator development resources
Stars: ✭ 26 (-72.34%)
Mutual labels:  emulator, nintendo, nes
Retrograde Android
Play retro video games on your Android TV!
Stars: ✭ 114 (+21.28%)
Mutual labels:  emulator, nintendo, nes
Laines
Cycle-accurate NES emulator in ~1000 lines of code
Stars: ✭ 1,365 (+1352.13%)
Mutual labels:  emulator, nintendo, nes
Nes
A Javascript NES Emulator
Stars: ✭ 168 (+78.72%)
Mutual labels:  emulator, nintendo, nes
Lemuroid
All in 1 emulator on Android!
Stars: ✭ 194 (+106.38%)
Mutual labels:  emulator, nintendo, nes
minishmaker
Level editing suite for The Legend of Zelda: The Minish Cap
Stars: ✭ 58 (-38.3%)
Mutual labels:  rom, romhacking
stg-for-nes
Simple STG for NES
Stars: ✭ 18 (-80.85%)
Mutual labels:  nes, assembly-6502
openNES-Snake
Simple rebuilt of the classic Snake game for the NES in C using the cc65 cross compiler.
Stars: ✭ 18 (-80.85%)
Mutual labels:  nintendo, nes
Fairtris
Clone of the official classic Tetris® game for the NES console, intended for Windows and Linux systems. It implements the original mechanics and includes many regional versions and several RNGs (all in one executable).
Stars: ✭ 30 (-68.09%)
Mutual labels:  nintendo, nes
js-nes-emulator
NES emulator in javascript.
Stars: ✭ 12 (-87.23%)
Mutual labels:  emulator, nes
epicedit
Epic Edit, Track Editor for Super Mario Kart (SNES)
Stars: ✭ 30 (-68.09%)
Mutual labels:  rom, romhacking
DevSound
Game Boy sound driver
Stars: ✭ 48 (-48.94%)
Mutual labels:  asm, rom
react-nes
React UI for https://github.com/fredericcambon/nes
Stars: ✭ 16 (-82.98%)
Mutual labels:  emulator, nes

first_nes project - Your first NES game!

Assembly language

Create your own games for the Nintendo Entertainment System with this "starter" project!

If you'd like to contribute, click here so we can synchronize our expectations!

Boilerplate code is provided! Instantly get up and playing!
Image: Editing Image: Running

Quick Start

Linux:

First, assuming you have Git installed, get the cc65 binutils:

git clone https://github.com/cc65/cc65.git
cd cc65
make
make avail

(Note that you may need to use sudo make avail)

Next, if you don't already have an NES emulator, install Nestopia using your package manager. Instructions on how to do that aren't covered here, but the following distros should be supported:

  • Arch Linux
  • Debian
  • OpenBSD
  • Rosa Desktop Fresh
  • Slackware (Slackbuilds)
  • Ubuntu
  • Void Linux

Now grab the first_nes project:

git clone https://github.com/gregkrsak/first_nes
cd first_nes
make

Finally, start Nestopia and load the generated first_nes.nes file. You can move the Luigi-like character back and forth with the A and B controller buttons, which may be mapped to the . and , keys initially.

Mac OS:

First, get the cc65 binutils by following these instructions (alternatively, if you have brew installed, type brew install cc65).

Next, if you don't already have an NES emulator, install the Nestopia .app on your system.

Now, assuming you have Git installed, and the ability to make, grab the first_nes project using the Terminal:

git clone https://github.com/gregkrsak/first_nes
cd first_nes
make

Finally, start Nestopia and load the generated first_nes.nes file. You can move the Luigi-like character back and forth with the A and B controller buttons, which may be mapped to the . and , keys initially.

Windows:

First, make sure you have Git and Git Bash. If you don't, click this link to download the latest .EXE installer; make sure you install the Git Bash terminal.

After Git is installed, open Git Bash and type:

git clone https://github.com/gregkrsak/first_nes.git

Next download the cc65 binutils. Click this link to download the .ZIP file.

Create a folder named "cc65" and extract the .ZIP file into it.

A "bin" subfolder will be created; add it to your system path.

Next, if you don't already have an NES emulator, click this link to download the .ZIP archive of Nestopia.

To make sure Nestopia installs correctly, create a "nestopia" folder and extract the .ZIP file to it; make sure you add this "nestopia" folder to your system path.

Nestopia needs the Microsoft Direct X End User Runtime, which you can install using this link.

Now, install the Make utility using this link.

Following the installation of Make, add its "bin" subfolder to your system path.

Navigate to the "first_nes" folder using Git Bash and type make.

Finally, start Nestopia and load the generated first_nes.nes file. You can move the Luigi-like character back and forth with the A and B controller buttons, which may be mapped to the . and , keys initially.

Credits

Authors:

  • Written by Greg M. Krsak (email), 2018

Standing on the shoulders of giants:

Additional thanks to:

  • @elennick for testing the Mac OS quick start instructions (Issue #22).

  • @hxlnt for expanding the credits (PR #33).

  • Reddit user u/Rocky99433 for prompting me to fix the Windows quick start instructions (Issue #21).

  • @ericandrewlewis for correcting some bad comments (PR #53).

  • @nortti for correcting my iNES header (PR #55).

About my Development Environment

Tested with:

make
nestopia first_nes.nes
  • Editor: Sublime Text 3, 2-space tabs, tabs-to-spaces, 100-column ruler

  • Target CPU: 8-bit, Ricoh RP2A03 (6502), 1.789773 MHz (NTSC)

  • Assembler: ca65 (cc65 binutils)

Tested on:

  • Linux with Nestopia UE 1.47

  • Windows with Nestopia UE 1.48

Additional Resources

Git and GitHub:

NES programming in general:

The ca65 assembler:

Building this project:

first_nes was written by Greg M. Krsak, 2018. You may send me email using this address. If you'd like to contribute, click here so we can synchronize our expectations!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].