This is TangCore firmware for the on-board BL616 of Tang Console.
See this document for how the firmware works with cores.
I'm building on Windows. Linux should also work.
First download Bouffalo toolchain,
git clone https://github.com/bouffalolab/toolchain_gcc_t-head_windows.git
# for Linux, clone: https://github.com/bouffalolab/toolchain_gcc_t-head_linux.gitAdd toolchain_gcc_t-head_linux/bin to your path.
Then download a patched version of Bouffalo SDK.
git clone --recurse-submodules https://github.com/nand2mario/bouffalo_sdk.git
# point BL_SDK_BASE to its location
set BL_SDK_BASE=<sdk_dir>Then it should build OK.
make
make flash COMX=com5
The 2nd line flashes the firmware to BL616 (The required bl616_fpga_partner_60kConsole.bin file is here). Before executing that, press and hold the "BOOT" button on the Tang Console board (bottom left corner, close to one of the USB-C port), then plug in the USB cable. This enters the BL616 into the programming mode.
For the USB drive, You need an OTG dongle to turn the connector from a "device" one to a "host" one, and provide power at the same time.
Acknowledgements
- JTAG FPGA programming logic based on openFPGALoader
- Gamepad support based on Till Harbaum's FPGA-Companion