Go to file
Raphaël Assenat c681f648a5
Merge pull request #8 from Mcharlsto/master
Fix & Improve ATmega32u4 support
2021-11-12 10:13:57 +09:00
misc Misc tools 2015-08-20 23:40:35 -04:00
scripts Makefile 'restart' target 2017-01-08 16:19:41 -05:00
tools Implement reset and echo requests 2018-09-05 10:42:05 -04: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 Add support for atmega32u4 chip 2019-07-13 14:17:26 +02:00
Makefile.32u4 Add new 32u4 specific makefile 2021-10-29 21:40:40 +01:00
Makefile.inc Increase version 2021-02-17 22:44:42 +09:00
Makefile.stk525 Bump version to 3.5.0 2017-11-20 00:13:50 -05:00
README.md Add clarity to readme 2021-10-29 21:43:07 +01:00
bootloader.c Fix bootloader address bug 2021-10-29 21:40:01 +01:00
bootloader.h Implement reset and echo requests 2018-09-05 10:42:05 -04:00
changelog.txt Remove completed task 2021-10-29 21:41:57 +01:00
config.c Version 3.6.1 2021-03-05 13:37:24 +09:00
config.h Version 3.6.1 2021-03-05 13:37:24 +09: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 Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
gamecube.h Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
gamepads.c Each channel needs its own buffer... 2016-10-23 21:44:42 -04:00
gamepads.h Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
gc_kb.c Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
gc_kb.h Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
gcn64_protocol.c Add support for the N64 mouse 2019-02-04 17:08:52 -05:00
gcn64_protocol.h Add support for the N64 mouse 2019-02-04 17:08:52 -05: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
hid_keycodes.h Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
hiddata.c Implement reset and echo requests 2018-09-05 10:42:05 -04:00
hiddata.h Implement feature set query commands 2017-11-22 09:37:42 -05: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
intervaltimer2.c Add a second interval timer 2018-04-10 15:07:35 -04:00
intervaltimer2.h Add a second interval timer 2018-04-10 15:07:35 -04:00
main.c Export the number of players from main 2021-03-04 15:46:59 +09:00
main.h Export the number of players from main 2021-03-04 15:46:59 +09: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 Correct accuracy of poll interval settings on 2-player adapters 2021-03-04 15:47:12 +09: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 Add support for Gamecube keyboards 2018-11-06 10:38:39 -05:00
requests.h Version 3.6.1 2021-03-05 13:37:24 +09: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 Save memory by not using an unnecessary buffer. 2021-02-17 22:43:08 +09:00
usb.h Runtime endpoint sizes for HID 2017-11-20 00:13:57 -05:00
usbpad.c Version 3.6.1 2021-03-05 13:37:24 +09:00
usbpad.h Add support for Gamecube keyboards 2018-11-06 10:38:39 -05: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. If you are compiling for a custom board or Arduino running on an ATmega32u4, then run 'make -f Makefile.32u4' instead.

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.