You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 18, 2022. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+42-10Lines changed: 42 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ gca-node is a NodeJS addon that adds Nintendo® Wii U GameCube™ Adapter
4
4
5
5
## Usage
6
6
7
-
**gca-node currently only builds on Windows 7+**, although there is planned support for Linux and Mac OS.
7
+
**gca-node currently only builds on Windows 7+ 64-bit**, although there is planned support for Linux and Mac OS.
8
8
As of now, it can only be used on NW.js.
9
9
10
10
### Prerequisites
@@ -20,15 +20,17 @@ As of now, it can only be used on NW.js.
20
20
3. Open the CLI inside the repository and execute `node-gyp rebuild`.
21
21
22
22
### NW.js
23
-
1. Copy the included `configure.bat` to your NW.js project.
24
-
2. Open the CLI inside your NW.js project, and run the `configure.bat` file to install the addon.
25
-
3. Whenever you need to use gca-node, use an alias for require so that other NodeJS tools like webpack do not mistake it as a NodeJS module.
23
+
1. Add `gca-node` to your project's `package.json` dependencies.
24
+
2. Copy the included `configure.bat` to your NW.js project.
25
+
3. Open the CLI inside your NW.js project, and run the `configure.bat` file to install the addon.
26
+
4.**[Tip]:** Whenever you need to use gca-node, use an alias for require so that other NodeJS tools like webpack do not mistake it as a NodeJS module.
26
27
```
27
28
var native_require = eval('require');
28
-
gca_node = native_require('gca-node.node')
29
+
gca_node = native_require('gca-node.node');
29
30
```
30
31
31
32
## gca-node API
33
+
To be added on Wiki pages.
32
34
33
35
### Setup()
34
36
Detects the first Nintendo® Wii U GameCube™ Adapter connected in your computer.
@@ -38,19 +40,49 @@ Returns 0 if the setup has detected one.
38
40
Claims the interface to be used on the NodeJS application.
39
41
Returns 0 if an interface has been succesfully claimed.
40
42
41
-
### Read()
42
-
TODO. Returns an object with the current status of the GameCube controller.
43
+
### Process()
44
+
Returns an array of 4 objects with the current status of each port of the adapter.
45
+
Each object contains a status for each port, whether if there is a GameCube™ Controller connected or not.
43
46
44
47
### Request()
45
-
Obtains debug information about the current status of the GameCube controllers.
48
+
Returns debug information about the current status of the GameCube controllers.
46
49
50
+
### RawData()
51
+
Returns raw binary data of the status of the Adapter.
47
52
48
53
### Unload()
49
54
Releases the interface so that it can be used by other applications.
50
55
Returns 0 if succesful.
51
56
52
-
### Shutdown()
57
+
### Stop()
53
58
Closes the Nintendo® Wii U GameCube™ Adapter so that it can be safely unplugged.
54
59
Returns 0 if succesful.
55
60
56
-
[logo]: http://i.imgur.com/quWt3jK.png
61
+
## FAQ
62
+
***What is the difference between gca-node and gca+?**
63
+
* gca-node and the upcoming sister project [gca+][1] share almost the same source code. gca-node is designed for NodeJS applications, and gca+ is designed for C++ applications such as Unreal Engine.
64
+
***Will gca-node support rumble?**
65
+
* gca-node 2.0 will be able to send rumble commands to the controllers.
66
+
***Will gca-node support third party GameCube Controllers?**
67
+
* This has not been tested, but in theory it is very likely that third party GameCube controllers are compatible with gca-node. However, their extra features (i.e. turbo mode) will most likely be not supported due to the adapter's specifications.
68
+
***Will gca-node support third party GameCube USB Adapters?**
69
+
* It is very unlikely due to the structure of gca-node as of now.
70
+
***Will gca-node support connection with Game Boy Advance with GBA Link?**
71
+
* No. Unfortunately, the specifications of the adapter make it incompatible with the GBA Link. Even if it were to be compatible, remotely interfacing with the Game Boy Advance is currently impossible.
72
+
***When will gca-node be cross-platform?**
73
+
* We expect support in Linux in gca-node 1.4.x.
74
+
***Will gca-node br available for 32-bit platforms?**
75
+
* gca-node 1.5.x will start experimenting with 32-bit platforms.
76
+
***Will gca-node support [electron][2] and apm?**
77
+
* Probably not. Testings with electron have reported problems due to using a different version of NodeJS and incomaptibilities with apm. We will investigate on a workaround during gca-node 2.x.
78
+
***[Windows] Why is it necessary to use just Zadig? Can't I just use [ElMassivo's USB GameCube Adapter][3] instead?**
79
+
**ElMassivo's USB GameCube Adapter must remain inactive while gca-node is running*, as it claims the only interface available of the adapter. Without any other free interfaces, gca-node is unable to use the adapter, and viceversa.
80
+
* However, you can install ElMassivo's USB GameCube Adapter and not use it, since Zadig is a component of this program.
81
+
***Why is gca-node better than HTML5 Gamepad API?**
82
+
* HTML5 Gamepad API requires ElMassivo's USB GameCube Adapter, which does not bring all native capabilities that gca-node offers, like real-time input or rumble support.
83
+
* Chromium's support for Nintendo® Wii U GameCube™ Adapter is currently incomplete and glitchy.
0 commit comments