Important: Updating the firmware to this version will reset RTC time, CIC region and all persistent settings.
N64FlashcartMenu downloads can be found here: https://github.com/Polprzewodnikowy/N64FlashcartMenu/releases/latest
Firmware changelog:
- Expanded interrupt support. SummerCart64 now can signal via cart interrupt the following events:
- Button press.
- Command finish.
- USB data waiting to be received.
- AUX register waiting to be read.
- Added new AUX register and AUX_WRITE USB command as a simple message link between PC and N64.
- Expanded PI I/O debug information - in addition to the last accessed address, transfer length and direction are also reported.
- Added CIC debug information - currently executing function in the CIC code is reported.
- CIC delays are now synchronized with N64 clock and reset time is exactly 500 ms.
- Improvements to the USB reset process to make it more reliable.
- RTC improvements:
- Added ability to set the century, starting at year 1900.
- Joybus RTC now correctly handles the century bit.
- RTC now correctly handles the February 29 2000 date, and subsequent leap years occurring every 400 years (2400, 2800, ...).
- Improvements to the internal architecture in the FPGA:
- DMA module has been rewritten to maximize transfer speeds, now saturating maximum speeds of the USB and SD card interfaces in both directions.
- SDRAM timings were adjusted to the correct, shorter values reducing the overall access latency.
- Changed reported error codes in the N64 commands to be more meaningful.
- Built-in test ROM improvements:
- Added cart interrupt test.
- Added PI bus stability test.
- Added SD card filesystem read/write test.
- SDRAM test was adjusted to increase chance to report more errors.
- Added ability to update firmware from the flash memory in instances where SDRAM is faulty/unstable.
- Updated libdragon open source IPL3 to the
r8
release. - Fixed a bug in the flash module - partial writes not ending on a 256 byte boundary caused next flash reads to be corrupted.
- Fixed a bug where flash write alignment was required to be 2 bytes.
- Fixed a bug in RTC get/set command where weekday field was using different bits than documented.
- Fixed a bug where LED could be stuck on when CIC error was cleared while LED was on.
- Fixed a bug where SD card could be incorrectly initialized.
- Fixed a bug where
TRAN_SPEED
field in theCSD
SD card register was reported incorrectly.
PC app changelog:
- Added support for the libftdi in addition to the standard serial port implementation. When possible, libftdi will be used as it saturates read/write USB speeds. On Windows OS user can opt-in for the libftdi by using Zadig to install WinUSB driver over the default FTDI driver. Linux and macOS doesn't require any driver installation and libftdi is used by default.
- Added option to the
upload
and64dd
commands to try reboot the N64 into new ROM (requires specific support in the currently running game/app on the N64, for more information check the AUX register in the documentation). - Adjusted
info
command to show updated debug information reported by the SummerCart64. - Added
test
command to perform USB speed test and SDRAM memory test. - Added option to the
firmware update
command to allow firmware update from the flash memory. - Fixed a bug in the
server
command where connection could be closed in unstable network conditions.
Initial programming script changelog:
- Added a quick SDRAM memory test before proceeding with programming the bootloader.
primer.py
no longer requires typingYES
confirmation in uppercase.