Disclaimer: The NES design has been done, but it has not been tested. The Rev0 cartridge is schematic- and layout-complete and the firmware and software run in emulation, but no board has been built and nothing has run on a real NES yet. We could use some help validating and testing the design: reviewing the schematic and layout, building Rev0 boards, and trying the firmware and software on real consoles. If you can help, please get in touch on the FujiNet Discord.
Status
The hardware PCB is in prototype status. It has not been tested. We would like someone to help review the board and make some for testing.
The firmware and software for the NES bring-up are now working in emulation (FujiNet Go NES Desktop and a patched MAME, against FujiNet-PC): CONFIG boots, browses TNFS and SD, and loads .nes games over the network. The Rev0 cartridge is fully designed but has not yet been built, so nothing has run on a real console yet.
Firmware
Current firmware can be pulled from https://github.com/FujiNetWIFI/fujinet-firmware
The cartridge is a new design: an RP2354B with two 512K SRAMs (PRG and CHR) that emulates mappers 0, 1, 2, 3, 4, 7, 11, 30, 34, 66, 71 and 206.
The RP2354B section of the firmware is in pico/nes/firmware. Build instructions in pico/nes/README.md
The ESP32S3 version of the firmware can be built with:
./build.sh -s fujiversal-nes
./build.sh -cbufm
The ESP32S3 build does not yet embed the RP2354B firmware; build the cartridge firmware separately in pico/nes with ./build-cart.sh.
Hardware
The hardware PCB is in prototype status. It has not been tested. We would like someone to help review the board and make some for testing.
Current PCB has been laid out by Thomas Cherryhomes in KiCad: https://github.com/FujiNetWIFI/fujinet-hardware/tree/master/NES/FujiNet-NES-Rev0
Rev0 is an all-in-one board in a 72-pin Game Pak outline (RP2354B, two 512K SRAMs, ESP32-S3, USB-C and microSD). It is schematic- and layout-complete, but has not yet been built.
There is no DIY option yet; until boards are built, the NES side can be tried in emulation with FujiNet Go NES Desktop (below).
Software
Current FujiNet Software Ported:
| Program | GitHub |
|---|---|
| Config | https://github.com/FujiNetWIFI/fujinet-config in nes/ |
| 5 Card Stud Poker | https://github.com/FujiNetWIFI/fujinet-5cardstud in src/nes/ |
| Texas Hold’em | https://github.com/tschak909/fujinet-texasHoldEm/tree/add-nes in src/nes/ |
| Battleship | https://github.com/FujiNetWIFI/fujinet-battleship in src/nes/ |
| Fujitzee | https://github.com/FujiNetWIFI/fujinet-fujitzee in src/nes/ |
| Fujirkle | https://github.com/tschak909/fujinet-fujirkle/tree/add-sms in src/nes/ |
| M.U.L.E. | https://github.com/FujiNetWIFI/fujinet-multiplayer-mule in clients/mekkogx/src/nes/ |
| Lobby | https://github.com/FujiNetWIFI/fujinet-lobby/tree/nes in nes/ |
| Gmail | https://github.com/FujiNetWIFI/fujinet-gmail-client/tree/nes in src/nes/ |
| Gcal | https://github.com/FujiNetWIFI/fujinet-google-calendar/tree/add-nes in src/nes/ |
Current NES Games patched for FujiNet:
| Game | GitHub |
|---|---|
| Double Dribble | https://github.com/FujiNetWIFI/nes-double-dribble |
| Tecmo Bowl | https://github.com/FujiNetWIFI/nes-tecmo-bowl |
| Excitebike | https://github.com/FujiNetWIFI/nes-excitebike-with-save |
Double Dribble and Tecmo Bowl are patched for two-player netplay; Excitebike’s track designer now saves and loads tracks from an online track library.
FujiNet Go
Documentation
Wiki Pages
- https://github.com/FujiNetWIFI/fujinet-firmware/wiki/FujiNet-Programming-Guide-for-the-NES
- https://github.com/FujiNetWIFI/fujinet-firmware/blob/master/pico/nes/README.md
- https://github.com/FujiNetWIFI/fujinet-config/blob/main/nes/README.md

