{"id":20279230,"url":"https://github.com/peterhellberg/nesdev","last_synced_at":"2025-07-20T22:35:03.529Z","repository":{"id":36314397,"uuid":"40619036","full_name":"peterhellberg/nesdev","owner":"peterhellberg","description":"I’m just playing around, not meant to be useful for anyone but me :)","archived":false,"fork":false,"pushed_at":"2015-11-13T14:17:36.000Z","size":232,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-27T21:37:47.584Z","etag":null,"topics":["nes","nesdev","toy-project"],"latest_commit_sha":null,"homepage":null,"language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/peterhellberg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-12T19:06:08.000Z","updated_at":"2019-02-13T04:29:08.000Z","dependencies_parsed_at":"2022-09-09T11:52:05.251Z","dependency_job_id":null,"html_url":"https://github.com/peterhellberg/nesdev","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/peterhellberg/nesdev","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterhellberg%2Fnesdev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterhellberg%2Fnesdev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterhellberg%2Fnesdev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterhellberg%2Fnesdev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/peterhellberg","download_url":"https://codeload.github.com/peterhellberg/nesdev/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterhellberg%2Fnesdev/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266210928,"owners_count":23893343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nes","nesdev","toy-project"],"created_at":"2024-11-14T13:29:00.153Z","updated_at":"2025-07-20T22:35:03.506Z","avatar_url":"https://github.com/peterhellberg.png","language":"Assembly","readme":"# nesdev\n\nI’m just playing around, not meant to be useful for anyone but me :)\n\n## Getting started\n\nInstall [cc65](http://cc65.github.io/cc65/) (a freeware C compiler for 6502 based systems)\n\n```bash\nbrew install cc65\n```\n\nAdd Vim syntax highlighting for the ca65 assembler using [Vundle](https://github.com/VundleVim/Vundle.vim)\n\n```vim\nPlugin 'maxbane/vim-asm_ca65'\n\n\" ASM ca65\nau BufRead,BufNewFile *.s set filetype=asm_ca65\n```\n\n### Emulators (running under OS X)\n\n- [Nestopia](http://0ldsk00l.ca/nestopia/)\n- [FCEUX](http://www.fceux.com/)\n\nI’ve also been using a few different NES emulators written in Go:\n\n - [nes](https://github.com/fogleman/nes) (my favorite so far)\n - [nintengo](https://github.com/nwidger/nintengo)\n\n## Read the [Programming NES games in C](http://shiru.untergrund.net/articles/programming_nes_games_in_c.htm) article\n\nand then\n\n## Watch the [NES C Programming Examples video](https://www.youtube.com/watch?v=jvgz5sY5xUw)\n\n[![NES C Programming Examples](http://assets.c7.se/skitch/NES_C_Programming_Examples-20150812-214421.png)](https://www.youtube.com/watch?v=jvgz5sY5xUw)\n\n## Makefile for the [CC65 NES examples](https://shiru.untergrund.net/files/src/cc65_nes_examples.zip)\n\n```make\ncompile = \\\n\tca65 crt0.s;                                           \\\n\tcc65 -Oi $(1).c --add-source;                          \\\n\tca65 $(1).s;                                           \\\n\tld65 -C $(2).cfg -o $(1).nes crt0.o $(1).o runtime.lib \\\n\nall: 1 2 3 4 5 6 7 8 9\n\n1:\n\t$(call compile,example1,nrom_128_horz)\n\n2:\n\t$(call compile,example2,nrom_128_horz)\n\n3:\n\t$(call compile,example3,nrom_128_horz)\n\n4:\n\t$(call compile,example4,nrom_128_horz)\n\n5:\n\t$(call compile,example5,nrom_128_horz)\n\n6:\n\t$(call compile,example6,nrom_128_horz)\n\n7:\n\t$(call compile,example7,nrom_128_horz)\n\n8:\n\t$(call compile,example8,nrom_128_horz)\n\n9:\n\t$(call compile,example9,nrom_128_horz)\n\nclean:\n\trm *.o *.nes\n```\n\nWith this makefile you should be able to compile all of the examples under OS X.\n\n### [PPU Palettes](http://wiki.nesdev.com/w/index.php/PPU_palettes)\n\n![2C03 and 2C05](http://assets.c7.se/skitch/PPU_palettes-20150812-233132.png)\n\n## Links\n\n - [Hardware Info](http://nesdev.com/#Hardwar))\n - [NES CHR Editor](http://www.ninjasftw.com:8080/squirrel/nes_chr/) a (Mac OS X) sprite editor for Nintendo Entertainment System games.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpeterhellberg%2Fnesdev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpeterhellberg%2Fnesdev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpeterhellberg%2Fnesdev/lists"}