Go to file
Raphael Assenat 05b47f9967 Prepare for release 3.4.1 2017-08-14 17:59:12 -04:00
misc Misc tools 2015-08-20 23:40:35 -04:00
scripts Makefile 'restart' target 2017-01-08 16:19:41 -05:00
.gitignore WIP 2015-06-13 23:44:21 -04:00
LICENSE GPLv3, Copyright updates, whitespace clean up 2015-12-06 21:55:06 -05:00
Makefile Makefile 'restart' target 2017-01-08 16:19:41 -05:00
Makefile.inc Prepare for release 3.4.1 2017-08-14 17:59:12 -04:00
Makefile.stk525 Add stack overgrow detection 2017-01-08 15:14:55 -05:00
README.md update project name and homepages 2016-11-27 14:34:03 -05:00
bootloader.c Update copyright year 2016-10-10 15:01:22 -04:00
bootloader.h Start bootloader by USB message 2015-08-16 01:59:38 -04:00
changelog.txt Prepare for release 3.4.1 2017-08-14 17:59:12 -04:00
config.c Finish "sliders as button" configurability 2017-08-14 17:58:40 -04:00
config.h Add "triggers as buttons" flag 2017-08-05 17:12:26 -04:00
dataHidReport.c Increate feature report size to 63 bytes 2016-12-03 14:15:00 -05:00
eeprom.c Update copyright year 2016-10-10 15:01:22 -04:00
eeprom.h Implement hid data interface for config and special functions 2015-08-23 02:51:10 -04:00
gamecube.c ifdef unused rawdata fields to save memory 2017-01-08 10:50:01 -05:00
gamecube.h Multi-player support complete 2016-10-10 14:20:14 -04:00
gamepads.c Each channel needs its own buffer... 2016-10-23 21:44:42 -04:00
gamepads.h ifdef unused rawdata fields to save memory 2017-01-08 10:50:01 -05:00
gcn64_protocol.c Update copyright year 2016-10-10 15:01:22 -04:00
gcn64_protocol.h Update gcn64txrx code for multiple channels 2016-10-09 16:17:56 -04:00
gcn64txrx.S Update gcn64txrx code for multiple channels 2016-10-09 16:17:56 -04:00
gcn64txrx.h Update gcn64txrx code for multiple channels 2016-10-09 16:17:56 -04:00
hiddata.c Implement RQ_GCN64_BLOCK_IO 2016-12-03 14:15:22 -05:00
hiddata.h Multi-player support complete 2016-10-10 14:20:14 -04:00
intervaltimer.c Update copyright year 2016-10-10 15:01:22 -04:00
intervaltimer.h Use a timer for controller polling interval 2015-10-17 18:34:11 -04:00
main.c Save memory 2017-01-08 15:58:45 -05:00
main.h Need one current_pad_type var. per channel 2016-11-27 11:15:13 -05:00
mappings.c Update copyright year 2016-10-10 15:01:22 -04:00
mappings.h Button mapping framework 2015-08-22 00:44:51 -04:00
n64.c ifdef unused rawdata fields to save memory 2017-01-08 10:50:01 -05:00
n64.h Use new gampad data and usbpad 2015-08-20 23:39:54 -04:00
release.sh Create an annotated tag 2016-02-29 18:44:52 -05:00
reportdesc.c Update copyright year 2016-10-10 15:01:22 -04:00
requests.h Add "triggers as buttons" flag 2017-08-05 17:12:26 -04:00
stkchk.c Add stack overgrow detection 2017-01-08 15:14:55 -05:00
stkchk.h Add stack overgrow detection 2017-01-08 15:14:55 -05:00
usart1.c Update copyright year 2016-10-10 15:01:22 -04:00
usart1.h WIP 2015-06-13 23:44:21 -04:00
usb.c Multi-player support complete 2016-10-10 14:20:14 -04:00
usb.h Multi-player support complete 2016-10-10 14:20:14 -04:00
usbpad.c Adjust "sliders as buttons" threshold 2017-08-14 17:57:55 -04:00
usbpad.h Multi-player support complete 2016-10-10 14:20:14 -04:00
usbstrings.c Save memory 2017-01-08 15:58:45 -05:00
usbstrings.h Save memory 2017-01-08 15:58:45 -05:00
util.h Start bootloader by USB message 2015-08-16 01:59:38 -04:00
version.c Update copyright year 2016-10-10 15:01:22 -04:00
version.h Use different signature for stk525 build 2015-10-26 23:33:39 -04:00

README.md

Gamecube/N64 to USB adapter firmware (3rd generation)

Introduction

This is the source code for a Gamecube/N64 controller to USB adapter firmware meant to run on raphnet.net Multiuse PCB-X.

Homepage

License

The project is released under the General Public License version 3.

Compiling the firmware

You will need a working avr-gcc toolchain with avr-libc and standard utilities such as make. Just type 'make' and it should build just fine. Under Linux at least.

Programming the firmware

The makefile has a convenient 'flash' target which sends a command to the firmware to enter the bootloader and then executes dfu-programmer (it must of course be installed) with the correct arguments.