{"id":13649309,"url":"https://github.com/nand2mario/nestang","last_synced_at":"2025-04-22T14:31:19.619Z","repository":{"id":60938042,"uuid":"536848750","full_name":"nand2mario/nestang","owner":"nand2mario","description":"NESTang is an FPGA Nintendo Entertainment System implemented with Sipeed Tang Primer 25K, Nano 20K and Primer 20K boards","archived":false,"fork":false,"pushed_at":"2025-04-04T14:12:53.000Z","size":10311,"stargazers_count":379,"open_issues_count":31,"forks_count":42,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-04-04T15:25:11.918Z","etag":null,"topics":["fpga","nes"],"latest_commit_sha":null,"homepage":"","language":"Verilog","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nand2mario.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-15T03:24:34.000Z","updated_at":"2025-04-04T14:12:57.000Z","dependencies_parsed_at":"2024-01-13T16:37:34.112Z","dependency_job_id":"37f267ae-0363-4919-a8c3-504400d9f60d","html_url":"https://github.com/nand2mario/nestang","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nand2mario%2Fnestang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nand2mario%2Fnestang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nand2mario%2Fnestang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nand2mario%2Fnestang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nand2mario","download_url":"https://codeload.github.com/nand2mario/nestang/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250258932,"owners_count":21401000,"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":["fpga","nes"],"created_at":"2024-08-02T01:04:56.366Z","updated_at":"2025-04-22T14:31:14.593Z","avatar_url":"https://github.com/nand2mario.png","language":"Verilog","funding_links":[],"categories":["Verilog"],"sub_categories":[],"readme":"# NESTang - NES for Sipeed Tang FPGA Boards \r\n\r\n\u003cp align=\"right\"\u003e\r\n  \u003ca title=\"Releases\" href=\"https://github.com/nand2mario/nestang/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/commits-since/nand2mario/nestang/latest.svg?longCache=true\u0026style=flat-square\u0026logo=git\u0026logoColor=fff\"\u003e\u003c/a\u003e\r\n\u003c/p\u003e\r\n\r\n\u003cimg src=\"doc/images/nestang0.8rc.jpg\" width=400\u003e\r\n\r\nNESTang is an open source project to recreate the Nintendo Entertainment System (NES) with Sipeed Tang FPGA boards, including Sipeed [Tang Primer 25K](https://wiki.sipeed.com/hardware/en/tang/tang-primer-25k/primer-25k.html), [Tang Nano 20K](https://wiki.sipeed.com/hardware/en/tang/tang-nano-20k/nano-20k.html) and [Tang Primer 20K](https://wiki.sipeed.com/hardware/en/tang/tang-primer-20k/primer-20k.html).\r\n\r\nMain features,\r\n\r\n- 720p HDMI output with sound.\r\n- Cycle accurate gameplay quality has been achieved since the NES circuits have been almost entirely replicated.\r\n- Rom loading from MicroSD cards with an easy-to-use menu system, powered by a RISC-V softcore.\r\n- Extensive mapper support including MMC5, Namco and more.\r\n- NES/SNES controllers, or DS2 controllers.\r\n\r\nAlso check out [SNESTang](https://github.com/nand2mario/snestang) and [GBATang](https://github.com/nand2mario/gbatang). \r\n\r\n## Getting the parts\r\n\r\nYou need either the Sipeed Tang Primer 25K or Tang Nano 20K FPGA board to run the latest NESTang.\r\n\r\n* If you choose the Primer 25K, get the [main Primer 25K dock board](https://wiki.sipeed.com/hardware/en/tang/tang-primer-25k/primer-25k.html), [DVI PMod](https://wiki.sipeed.com/hardware/en/tang/tang-PMOD/FPGA_PMOD.html#PMOD_DVI), [TF Card PMod](https://wiki.sipeed.com/hardware/en/tang/tang-PMOD/FPGA_PMOD.html#PMOD_TF-CARD), [DS2x2 PMod](https://wiki.sipeed.com/hardware/en/tang/tang-PMOD/FPGA_PMOD.html#PMOD_DS2x2) and a [Tang SDRAM](https://wiki.sipeed.com/hardware/en/tang/tang-PMOD/FPGA_PMOD.html#TANG-40P-MODULE).\r\n* For the Tang Nano 20K, we suggest the [Tang Nano 20K Retro Gaming Kit](https://www.amazon.com/GW2AR-18-Computer-Debugger-Multiple-Emulator/dp/B0C5XLBQ6C), as it contains the necessary controllers and adapters.\r\n\r\n## Installation\r\n\r\nA [step-by-step instructions](https://github.com/nand2mario/snestang/blob/main/doc/installation.md) is available. Here are quick instructions for the more experienced,\r\n\r\n* Assemble the board and modules: [result for the primer 25k](https://github.com/nand2mario/snestang/raw/main/doc/images/primer25k_setup.jpg), and [nano 20k](https://github.com/nand2mario/snestang/raw/main/doc/images/nano20k_setup.jpg).\r\n* Download a NESTang release from [github](https://github.com/nand2mario/nestang/releases). The bitstream (`nestang_*.fs`) should be written to flash at address 0. The firmware (`firmware.bin`) should be written to 0x500000 (5MB). See this [screenshot](https://github.com/nand2mario/snestang/blob/main/doc/images/programmer_firmware.png) for how to do it.\r\n* Put your ROM files onto a MicroSD Card (exFAT or FAT32 file system). Insert the card, connect an HDMI monitor or TV, and enjoy your games.\r\n\r\nVersion 0.4 also supports [tang primer 20k](doc/primer20k.md).\r\n\r\n## Development\r\n\r\nIf you want to generate the bitstream from source, see [Build Instructions](https://nand2mario.github.io/nestang-doc/dev/build_bitstream/). Make sure you use the Gowin IDE version 1.9.9 commercial (requires a free license).\r\n\r\n[Usb_hid_host](https://github.com/nand2mario/usb_hid_host) was development so NESTang could support USB gamepads. Follow the link if you want to use it for your FPGA projects. It supports keyboards and mice too.\r\n\r\n## Next steps\r\n\r\nSee NESTang [changes.md](CHANGES.md).\r\n\r\nHere are what I may work on when I get time. No promise though. Suggestions and pull requests are welcome!\r\n* Cheats support.\r\n* Saves and loads.\r\n\r\n## Special Thanks\r\n\r\n* [fpganes](https://github.com/strigeus/fpganes) by Ludvig Strigeus.\r\n* [hdl-util/hdmi](https://github.com/hdl-util/hdmi) by Sameer Puri.\r\n* [NES for Tang Nano 9K](https://github.com/hi631/tang-nano-9K) by hi631\r\n\r\nnand2mario (`nand2mario at outlook.com`)\r\n\r\nSince 2022.9\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnand2mario%2Fnestang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnand2mario%2Fnestang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnand2mario%2Fnestang/lists"}