Coder Social home page Coder Social logo

raphnet / gcn64tools Goto Github PK

View Code? Open in Web Editor NEW
35.0 35.0 11.0 9.09 MB

Raphnet USB adapter management tools

Home Page: http://www.raphnet.net/programmation/gcn64tools/index_en.php

License: GNU General Public License v3.0

Shell 0.58% Makefile 0.16% C 95.71% NSIS 1.35% HTML 2.19% CSS 0.01%

gcn64tools's People

Contributors

caitsith2 avatar raphnet avatar sabianroberts avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gcn64tools's Issues

Option to swap N64 C-Buttons on OEM controller from regular buttons presses to X/Y

So I have a particular issue I am trying to solve. Unsure if this could be done in firmware or if the game I'm using needs to play nicer with it.

I'm trying to get an OEM controller to work with the Perfect Dark PC Port. Now, I don't know if this is an issue, but I did purchased a non Raphnet brand adapter that uses your firmware. Unsure if other people can license your firmware on home made adapters and sell them or if it's open source. If not, let me know I'll give you info on who is selling them.

So this adapter has 3.6.1 on it. In Windows it registers the C-Button presses from an OEM controller as regular button presses. In Windows it's buttons 7,8,9,10. While I can map this controller in many different emulators I can't get it to work with the Perfect Dark port. I did try other controllers with the PD Port, one being the 8bitdo bluetooth kit for OEM controllers. That one does work. That registers C-Button presses as x/y coordinates and not regular button presses. The Nintendo NSO bluetooth controller on the other hand is the same as the adapter.

There might be a lot to unpack here but my question is if it would be a good feature to add and option to swap c-button presses to x/y coordinates "I think right stick" to be compatible with programs like this or if the issue lies with the other program?

I will note that Glaslu00, who is big on Goldeneye and Perfect Dark says they are using an official dual Raphnet adapter with 3.5.0 and it works for them in the Perfect Dark Port.

Thank you for your time.

Add linux binary downloads

I do not see why the linux release has to be compiled. It is not user-friendly in the slightest and isn't fool-proof.

RNT Exchange Timeout

Hello! When trying to dump the contents of the controller pak, every so often the script will timeout multiple times:
image

Am I doing something wrong?

edit:

I am using Windows 11, I've tried a few usb ports, both usb 2.0 and usb 3.0.

Raphnet adapter manager Failed to open adapter? Windows 11

Hello, I am using Windows 11, the program works but I could not update the firmware of the Classic controller to the USB adapter - V3 using Windows 11, it is only possible to update the firmware of the Classic controller to the USB adapter - V3 using Windows 10. The problem is that since today I received a big update from Windows Update on my Windows 11... and now every time I try to select the device from the Raphnet adapter management program it does not work or load, also when I try to configure USB gaming devices. I see 2 WUSMote v2.2 USB devices connected but when I try to select and test the buttons I get an error in the game controller, what about Windows 11 incompatibility issues?

but when it comes to selecting the controller within the GUITAR HERO WORLD TOUR game everything seems to work perfectly so the problem is in the Raphnet adapter manager program

image
image
image

Ghost input (dpad left) when using raphnet wii classic adapter and 8bitdo snes mini 2.4ghz

Hello,

I found problem when using the wii classic raphnet adapter and a 8bitdo 2.4 ghz snes mini gamepad.

Randomly, ghost input are executed on the gamepad (direction left on the dpad).

I’ve try the 8bitdo gamepad and there is no issue when i use it alone, it only appear with the raphnet adapter.

My test, i use yoshi’s island on snes, and use the jump button for like 5/10 minutes. Sometime Yoshi go on left.

Could you help me with this issue ? (Firmware downgrade ? Modify setting of the raphnet adapter ?)

FYI, if i change poll rate to 1ms, it appears a lot more.

Thanks

Regards

Mempak Editor - Note importation is bugged

I exported a number of notes from several MPKs images and built a new MPK from them.
When I transfered this new MPK to an Controller Pak none of the games recognized their notes.
So I opened the MPK in a hex editor, and found out that the note entry table was wrong, as none of the note entries had their respective 4 letter game IDs.
Furthermore, it seems the importer doesn't like periods (.) inside the filename. San Francisco RUSH's note name is "S.F. RUSH . " but, when importing it back, the new note becomes "S RUSH .F".
The imported notes show up in a Controller Pak manager/menu, but the games won't use them because the gamecodes are broken, if there aren't other problems beyond what I can tell.

On the bright side, the notes it exports FROM GOOD MPKs do seem to be good, as I could use a different tool to import them and generate a good MPK file where the games could properly recognize and load their notes: bryc.github.io -- github.com/bryc/mempak

Custom or additional mappings for N64 to GC/Wii adapter

First off, apologies for sort of double-posting this. I've emailed the support e-mail, but I figured this would more appropriately be added here.

Are there any plans for adding the ability for custom mappings for this adapter, or to add additional mappings? The first N64 game has been released for switch (SM64 on 3D All-Stars), and the gamecube controller is not officially supported but useable. However the button mapping is all incorrect and the Switch does not allow custom mapping for GC controllers. The 8 currently available mappings do not match up to what would be needed. Adding this new mapping or custom mapping would make this the go-to adapter for playing this game (and any future games if Switch adds N64 switch online) with the original N64 controller. If custom mapping isn't feasible, but an additional mapping is, I can add details of what that would look like specifically for SM64 3D All-Stars.

Genesis/Mega Drive Mini & PlayStation Classic support

(Not sure if this is the right section/area for this)
Would it be possible for you to add compatibility/a firmware update for your adapters to work with the Genesis Mini and the PlayStation Classic? You could have it where you could set up for custom controller mappings for each controller! You could either set up a button combo to switch systems or have be set in software! Maybe you could have the adapters eventually auto-detect which system it is being used on!

N64 memory pak read/write corruption

I have an official Nintendo Controller Pak (NUS-004) and the Dual N64 to USB adapter with v3.6.0 firmware. The mempak works flawlessly (tested with Mario Kart 64 ghost data, Wave Race, Beetle Adventure Racing) with the mupen64plus raw input plugin, however, I cannot get gcn64tools to read or write data correctly from the mempak. There is no error when it reads the mempak data to a file but when I run mempak_ls with the file I get an error: "Mempak invalid (not formatted or corrupted)". The GUI mempak editor tool just lists "!!ERROR!!" for every note entry.

GC controller not detected on debian 11/testing

Hello and thanks for this great piece of hardware I've been using for some years.

Though I cannot get it to work on Debian 11.

udev rules have been copied, udev restarted, 'make' ran OK.

Looking at your udev rules, it seems IDs don't match with kernel-detected IDs.Useful info is in emphasis below: :

root@debian10 src # dmesg -T | tail -n50
[dim. sept. 26 17:40:18 2021] usb 1-7: new low-speed USB device number 11 using xhci_hcd
**[dim. sept. 26 17:40:19 2021] usb 1-7: New USB device found, idVendor=1781, idProduct=0a9a, bcdDevice= 1.02**
[dim. sept. 26 17:40:19 2021] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[dim. sept. 26 17:40:19 2021] usb 1-7: Product: GC/N64_USB
[dim. sept. 26 17:40:19 2021] usb 1-7: Manufacturer: raphnet.net
**[dim. sept. 26 17:40:19 2021] usb 1-7: SerialNumber: 3782**
[dim. sept. 26 17:40:19 2021] input: raphnet.net GC/N64_USB as /devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-7/1-7:1.0/0003:1781:0A9A.0008/input/input32
[dim. sept. 26 17:40:19 2021] hid-generic 0003:1781:0A9A.0008: input,hidraw0: USB HID v1.01 Gamepad [raphnet.net GC/N64_USB] on usb-0000:03:00.0-7/input0
root@debian10 src # groups appzer0 
appzer0 : appzer0 cdrom floppy audio dip video **plugdev** netdev bluetooth lpadmin scanner adbusers
root@debian10 src # lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0451:0003 Texas Instruments, Inc. SMSL Q5 AMP  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 046d:c083 Logitech, Inc. G403 Prodigy Gaming Mouse
Bus 001 Device 005: ID 046d:c336 Logitech, Inc. Gaming Keyboard G213
**Bus 001 Device 011: ID 1781:0a9a Multiple Vendors raphnet.net Gamecube/N64 controller**
Bus 001 Device 004: ID 046d:082c Logitech, Inc. HD Webcam C615
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 007: ID 0bda:0151 Realtek Semiconductor Corp. Mass Storage Device (Multicard Reader)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@debian10 src # ./gcn64ctl -s 3782
Hid enumerate returned NULL
Device not found
root@debian10 src # ./gcn64ctl -l
Simply listing the devices...
Hid enumerate returned NULL
0 device(s) found
No device found

Linux kernel drivers?

Could support for the adapters, specifically the firmware of the adapter and the adapters connected to the adapter, the Controller Pak, the Transfer Pak, Multitap memory card, as rewritable storage devices (accessible by /dev)?

PS1/PS2 to USB converter

You have so many repositories for so many sorts of converters, including NES/SNES to USB, N64/GC to USB, Saturn to USB and even Jaguar to USB or VirtualBoy to USB (but why???) which is so good. This repository has everything BUT PS1 to USB converter for some reason or at least I didn't find it... Will you be releasing PS1/PS2 to USB converter as well?? Looking forward for a professional product or code for this as well!

PS4 DS4 "Emulation" Mode and Xinput Mode

Would it be possible to have/add a setting/feature in the "Raphnet adapter management tool" and firmware update to allow the "PS1/PS2 controller to USB adapter" to allow the attached controller(s) to act/be read as a PS4 DS4 controllers? This would allow the controller(s) to be usable with the "PS4 Remote Play" function, as well as to allow PS4 button prompts/icons to show up in steam!!!

Also, Would it be possible to have a setting, and updated firmware, for all, or most, of the controller adapters to be able to have/be in Xinput mode?

Could not send feature report (ioctl (SFEATURE): Broken pipe)

Hello,

I tried updating the firmware on my Saturn adapter (289b:0043). It failed. In the console I can see the following when trying to reset the adapter:

$ ./gcn64ctl_gui -s

(gcn64ctl_gui:92489): Gtk-CRITICAL **: 17:01:05.430: gtk_combo_box_set_row_span_column: assertion 'row_span >= -1 && row_span < col' failed
Listing device...
Start listing
Considering 0x289b:0x0043
Considering 0x289b:0x0043
Considering 0x289b:0x0043
Device 'Saturn to USB v3.0'
/dev/hidraw7
Opening device path: '/dev/hidraw7'
Current mapping: 0x30
Adapter signature: bffd5a12-8cb9-4c40-8a7a-8b423dcaa7aa
poll interval: 5
Value: 5
send feature report: retry
send feature report: retry
Could not send feature report (ioctl (SFEATURE): Przerwany potok)
Error sending command
deselect adapter
Listing device...
Start listing
Considering 0x289b:0x0043
Considering 0x289b:0x0043
Considering 0x289b:0x0043
Device 'Saturn to USB v3.0'
/dev/hidraw7
Opening device path: '/dev/hidraw7'
Current mapping: 0x30
Adapter signature: bffd5a12-8cb9-4c40-8a7a-8b423dcaa7aa
poll interval: 5
Current mapping: 0x30
Adapter signature: bffd5a12-8cb9-4c40-8a7a-8b423dcaa7aa
poll interval: 5

GUI N64 vibration test only works intermitently (CLI works fine)

The gcn64ctl_gui "Test vibration" button only sometimes causes my N64 controller to start vibrating, and when it does start then the "Stop vibration" button only sometimes causes it to stop vibrating. With gcn64ctl the --n64_control_rumble flag works consistently.

This is with

  • a Gamecube/N64 to USB adapter v3.6 (ADAP-GCN64-USB_V3) (p/n: 6-070)
  • Firmware 3.6.1
  • GNU/Linux
  • gcn64tools 2.1.25
  • an N64 controller with Rumble Pak

Add support for D-pad as POV

It would be great to have a configuration option for "D-pad as POV".

What is POV?
It stands for "Point of View Hat" and is the typical way a D-pad is represented in the driver of a game controller. See the screenshots below as an example comparing an Xbox controller to the WUSBMote.

POV

no-pov

Currently, the adapter has the option "D-pad as axes", which is mapping the D-pad to the X and Y axes. Without the option, each D-pad direction is mapped to a different button. However, in some games, neither of these options are supported. Some games support only a POV. An example is Mortal Kombat Trilogy on GOG.

I'm testing this with Adapter Manager 2.1.28, with a Classic controller to USB adapter V3, on firmware 2.2.7, and connected to a Classic Controller Pro.

Thanks for the great software.

Add a easier install method for linux, specifically steamdeck

I have a v3 adapter for my wii guitar hero guitar and I have no way of compiling the tar.gz file because steam OS on my steamdeck doesn't have arch linux so i cant download the necessary dependencies to install this adapter tool meaning my guitars whammy bar (analog stick) wont be recognized. Please release an easier linux installation method.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.