Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 12:10
· 19 commits to master since this release

TangCore BL616 companion firmware — PC Engine / TurboGrafx-16 support.

This is the MCU-side firmware. It reads ROMs and CD images from storage and
streams them to the FPGA core over UART. It is required: stock TangCore
firmware has no PC Engine support of any kind, so a bitstream alone loads
nothing.

Flashing

Write to flash address 0x40000, never 0x0. The Sipeed debugger firmware
lives at 0x0 and this image is the secondary-boot application — the bootrom
rejects it if flashed at 0x0.

Enter ISP first (short the board's two ISP pads, then connect USB). Expect one
BFLB IMG LOAD SHAKEHAND FAIL before each operation and retry once; that is
normal on these boards and not a real failure. The ISP session is single-use —
after a completed operation, replug (pads still shorted) for a fresh one.

Boards

binary board status
tangcore_bl616_console60k.bin Tang Console 60K runs games
tangcore_bl616_primer25k.bin Tang Primer 25K builds; board has no storage path for the MCU
tangcore_bl616_nano20k.bin Tang Nano 20K builds; board has no storage path for the MCU

Only Console 60K can currently reach storage: it has two USB-C ports and a
microSD wired to the BL616. The other two boards have a single USB-C owned by the
debugger firmware, and no SD the MCU can drive. See the core repository's
docs/STATUS.md.

Before you flash

  • This firmware changes code every core uses (UART link, JTAG loading, USB
    gamepads). It is tested on Console 60K with pcetang and mdtang; other cores
    are untested. Back up your BL616 flash so you can return to stock.
  • CD games must be .chd (convert .cue with chdman createcd).
  • The Neo Geo loader is present but hidden from the menu (early preview).

Report problems on the pcetang issue tracker:
https://github.com/rtissera/pcetang/issues