mirror of
https://github.com/marcriera/ddgo-controller-docs.git
synced 2025-05-01 22:27:05 +02:00
Convert to Hugo
This commit is contained in:
parent
adb41bef4a
commit
13edcf14d1
33 changed files with 196 additions and 93 deletions
3
content/_index.md
Normal file
3
content/_index.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Welcome!
|
||||
|
||||
Here you will find a collection of technical information for the various controllers of the Densha de GO! series of games. The information has been gathered from my actual experience and the references mentioned on this site.
|
7
content/acknowledgements/_index.md
Normal file
7
content/acknowledgements/_index.md
Normal file
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
title: "Acknowledgements"
|
||||
weight: 9
|
||||
---
|
||||
|
||||
- [GMMan](https://github.com/GMMan), who has provided the internal details of the DGOC-44U and has conducted extensive research on the Densha de GO! Plug and Play.
|
||||
- [TheYamanote](https://twitter.com/The_Yamanote), who has helped with the TCPP-20009.
|
48
content/adapters/_index.md
Normal file
48
content/adapters/_index.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: "Adapters and hacks"
|
||||
weight: 3
|
||||
---
|
||||
|
||||
Besides the official compatibility, it is possible to use unofficial adapters, tools and hacks to use controllers with games which is unsupported officially.
|
||||
|
||||
## Converter tool by Autotraintas
|
||||
|
||||
[Autotraintas](https://autotraintas.hariko.com) has created a tool that makes it possible to use nearly any Densha de GO! controller with the PC versions of the games. This includes the classic console controllers (USB adapter required) and the USB controllers for the PlayStation 2. The tool patches the game memory on the fly to reflect the input from the controller.
|
||||
|
||||
## PlayStation 2 cheat codes for PlayStation controllers
|
||||
|
||||
While **Densha de GO! 3** and **Densha de GO! Shinkansen** officially support the original (non-USB) PlayStation controllers, other games are only compatible with USB controllers. Via cheat codes, it is possible to use the original PlayStation controllers on real hardware, either with retail discs or via OPL.
|
||||
|
||||
The codes emulate a Type 2 controller. You will need to connect the controller as follows:
|
||||
|
||||
- Port 1: Dualshock or Dualshock 2 (D-pad, **SELECT**)
|
||||
- Port 2: PlayStation controller (handles and buttons, **SELECT** is mapped to **D**)
|
||||
|
||||
Each game requires a specific cheat code:
|
||||
|
||||
- [Densha de GO! Ryojouhen](cheats/controller-cheat_ryojouhen.txt)
|
||||
- [Densha de GO! Professional 2](cheats/controller-cheat_pro2.txt)
|
||||
- [Densha de GO! Professional 2 (Taito Best)](cheats/controller-cheat_pro2best.txt)
|
||||
- [Densha de GO! Final](cheats/controller-cheat_final.txt)
|
||||
|
||||
There are also cheat codes available for games in the **Train Simulator** series, emulating a Multi Train Controller (MTC):
|
||||
|
||||
- [Train Simulator: Midosuji Line](cheats/controller-cheat_midosuji.txt)
|
||||
- [Train Simulator + Densha de GO!](cheats/controller-cheat_tsddgo.txt)
|
||||
|
||||
For retail discs, the codes can be loaded with [ps2rd](https://github.com/mlafeldt/ps2rd) or [Cheat Device](https://github.com/root670/CheatDevicePS2). If you are using OPL, it already includes ps2rd and you just need to copy the codes and enable cheats.
|
||||
|
||||
## Input plugins for BVE Trainsim/OpenBVE
|
||||
|
||||
BVE Trainsim and OpenBVE both support **input plugins**, which allow expanding the controllers compatible with the program.
|
||||
|
||||
BVE Trainsim requires installing external input plugins, depending on the controller:
|
||||
|
||||
- [Classic controllers](http://saha209kame.web.fc2.com/BVE_ATSPI.html) (電GO PS - JC_PS101Uインターフェイス/電GO PS - JC_PS201Uインターフェイス by saha209, USB adapter required)
|
||||
- [DGC-255/DGOC-44U/DRC-184](http://saha209kame.web.fc2.com/BVE_ATSPI.html) (電GO PCインターフェイス by saha209)
|
||||
- [TCPP-20009/TCPP-20014/MTC with P5/B8 cassette](http://saha209kame.web.fc2.com/BVE_ATSPI.html) (電GO PS2インターフェイス by saha209)
|
||||
- [MTC (other cassettes)](http://saha209kame.web.fc2.com/BVE_ATSPI.html) (TrainSimulator PS2 MultiTrainController(MTC)インターフェイス by saha209)
|
||||
- [ZKNS-001](http://saha209kame.web.fc2.com/BVE_ATSPI.html) (電GO SWインターフェイス by saha209)
|
||||
- [OHC-PC01](http://www.konkyu.net/SanYingControllerInterface.aspx)
|
||||
|
||||
OpenBVE includes built-in input plugins for all classic and USB Densha de GO! controllers, the MTC with P5/B8 cassette and the OHC-PC01. They can be enabled and configured in the program's settings. Note that a USB adapter is required for classic controllers.
|
104
content/adapters/cheats/controller-cheat_final.txt
Normal file
104
content/adapters/cheats/controller-cheat_final.txt
Normal file
|
@ -0,0 +1,104 @@
|
|||
Mastercode
|
||||
9010E378 0C043886
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad)
|
||||
202D3CAC 00000000
|
||||
D02C8172 62010001
|
||||
D02C8101 61010041
|
||||
203DEA10 40000202
|
||||
202C1464 00000001
|
||||
502C8102 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
502C8103 00000001
|
||||
000FE002 00000000
|
||||
502C8103 00000001
|
||||
000FE003 00000000
|
||||
502C8103 00000001
|
||||
000FE004 00000000
|
||||
502C8103 00000001
|
||||
000FE005 00000000
|
||||
502C8102 00000001
|
||||
000FE006 00000000
|
||||
502C8102 00000001
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
003DF242 00000009
|
||||
D00FE001 01010006
|
||||
003DF242 00000008
|
||||
D00FE001 01010002
|
||||
003DF242 00000007
|
||||
D00FE001 0101000D
|
||||
003DF242 00000006
|
||||
D00FE001 01010009
|
||||
003DF242 00000005
|
||||
D00FE001 0101000C
|
||||
003DF242 00000004
|
||||
D00FE001 01010008
|
||||
003DF242 00000003
|
||||
D00FE001 01010005
|
||||
003DF242 00000002
|
||||
D00FE001 01010001
|
||||
003DF242 00000001
|
||||
D00FE001 01010004
|
||||
003DF242 00000000
|
||||
D00FE000 010100F1
|
||||
003DF243 00000005
|
||||
D00FE000 01010070
|
||||
003DF243 00000004
|
||||
D00FE000 01010071
|
||||
003DF243 00000003
|
||||
D00FE000 010100D0
|
||||
003DF243 00000002
|
||||
D00FE000 010100D1
|
||||
003DF243 00000001
|
||||
D00FE000 01010050
|
||||
003DF243 00000000
|
||||
20148928 34420000
|
||||
003DF246 00000000
|
||||
D00FE003 010100D0
|
||||
703DF246 00000004
|
||||
D00FE004 010100B0
|
||||
703DF246 00000001
|
||||
D00FE005 01010070
|
||||
703DF246 00000002
|
||||
D00FE006 0101000E
|
||||
703DF246 00000008
|
||||
D00FE007 01010007
|
||||
703DF246 00000020
|
||||
502C8202 00000001
|
||||
000FE009 00000000
|
||||
700FE009 0020000F
|
||||
700FE009 0000000E
|
||||
D00FE009 0101000E
|
||||
703DF246 00000010
|
||||
502C8202 00000001
|
||||
000FE008 00000000
|
||||
700FE008 002000F0
|
||||
D00FE008 010100E0
|
||||
003DF245 00000000
|
||||
D00FE008 010100C0
|
||||
003DF245 00000001
|
||||
D00FE008 010100D0
|
||||
003DF245 00000002
|
||||
D00FE008 01010090
|
||||
003DF245 00000003
|
||||
D00FE008 010100B0
|
||||
003DF245 00000004
|
||||
D00FE008 01010030
|
||||
003DF245 00000005
|
||||
D00FE008 01010070
|
||||
003DF245 00000006
|
||||
D00FE008 01010060
|
||||
003DF245 00000007
|
||||
D00FE008 010100F0
|
||||
003DF245 00000008
|
73
content/adapters/cheats/controller-cheat_midosuji.txt
Normal file
73
content/adapters/cheats/controller-cheat_midosuji.txt
Normal file
|
@ -0,0 +1,73 @@
|
|||
Mastercode
|
||||
9011B878 0C046DC6
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad)
|
||||
20176208 00000000
|
||||
D0758B72 43010001
|
||||
D0758B01 42010041
|
||||
201A17F0 00000000
|
||||
50758B02 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
50758B03 00000001
|
||||
000FE002 00000000
|
||||
50758B03 00000001
|
||||
000FE003 00000000
|
||||
50758B03 00000001
|
||||
000FE004 00000000
|
||||
50758B03 00000001
|
||||
000FE005 00000000
|
||||
50758B02 00000001
|
||||
000FE006 00000000
|
||||
50758B02 00000001
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
000FE008 00000001
|
||||
D00FE001 01010002
|
||||
000FE008 00000002
|
||||
D00FE001 0101000D
|
||||
000FE008 00000003
|
||||
D00FE001 01010009
|
||||
000FE008 00000004
|
||||
D00FE001 0101000C
|
||||
000FE008 00000005
|
||||
D00FE001 01010008
|
||||
000FE008 00000006
|
||||
D00FE001 01010005
|
||||
000FE008 00000007
|
||||
D00FE001 01010004
|
||||
000FE008 00000008
|
||||
D00FE000 01010070
|
||||
000FE009 0000000C
|
||||
D00FE000 01010071
|
||||
000FE009 0000000B
|
||||
D00FE000 010100D0
|
||||
000FE009 0000000A
|
||||
D00FE000 010100D1
|
||||
000FE009 00000009
|
||||
D00FE000 01010050
|
||||
000FE009 00000008
|
||||
500FE008 00000001
|
||||
001A17F0 00000000
|
||||
D00FE008 02010008
|
||||
500FE009 00000001
|
||||
001A17F0 00000000
|
||||
D00FE003 010100D0
|
||||
701A17F1 00000004
|
||||
D00FE004 010100B0
|
||||
701A17F1 00000010
|
||||
D00FE005 01010070
|
||||
701A17F1 00000020
|
||||
D00FE006 0101000E
|
||||
701A17F2 00000002
|
||||
D00FE007 01010007
|
||||
701A17F2 00000001
|
106
content/adapters/cheats/controller-cheat_pro2.txt
Normal file
106
content/adapters/cheats/controller-cheat_pro2.txt
Normal file
|
@ -0,0 +1,106 @@
|
|||
Mastercode
|
||||
9010E2F8 0C043866
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad)
|
||||
202C852C 00000000
|
||||
D02D14F2 62010001
|
||||
D02D1481 61010041
|
||||
2036EAF0 40000202
|
||||
202C852C 00000001
|
||||
502D1482 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
502D1483 00000001
|
||||
000FE002 00000000
|
||||
502D1483 00000001
|
||||
000FE003 00000000
|
||||
502D1483 00000001
|
||||
000FE004 00000000
|
||||
502D1483 00000001
|
||||
000FE005 00000000
|
||||
502D1483 00000001
|
||||
000FE006 00000000
|
||||
502D1483 00000001
|
||||
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
0036EEC2 00000009
|
||||
D00FE001 01010006
|
||||
0036EEC2 00000008
|
||||
D00FE001 01010002
|
||||
0036EEC2 00000007
|
||||
D00FE001 0101000D
|
||||
0036EEC2 00000006
|
||||
D00FE001 01010009
|
||||
0036EEC2 00000005
|
||||
D00FE001 0101000C
|
||||
0036EEC2 00000004
|
||||
D00FE001 01010008
|
||||
0036EEC2 00000003
|
||||
D00FE001 01010005
|
||||
0036EEC2 00000002
|
||||
D00FE001 01010001
|
||||
0036EEC2 00000001
|
||||
D00FE001 01010004
|
||||
0036EEC2 00000000
|
||||
|
||||
D00FE000 010100F1
|
||||
0036EEC3 00000005
|
||||
D00FE000 01010070
|
||||
0036EEC3 00000004
|
||||
D00FE000 01010071
|
||||
0036EEC3 00000003
|
||||
D00FE000 010100D0
|
||||
0036EEC3 00000002
|
||||
D00FE000 010100D1
|
||||
0036EEC3 00000001
|
||||
D00FE000 01010050
|
||||
0036EEC3 00000000
|
||||
2012CB60 34420000
|
||||
0036EEC6 00000000
|
||||
D00FE003 010100D0
|
||||
7036EEC6 00000004
|
||||
D00FE004 010100B0
|
||||
7036EEC6 00000001
|
||||
D00FE005 01010070
|
||||
7036EEC6 00000002
|
||||
D00FE006 0101000E
|
||||
7036EEC6 00000008
|
||||
D00FE007 01010007
|
||||
7036EEC6 00000020
|
||||
502D1582 00000001
|
||||
000FE009 00000000
|
||||
700FE009 0020000F
|
||||
700FE009 0000000E
|
||||
D00FE009 0101000E
|
||||
702F28C6 00000010
|
||||
502D1582 00000001
|
||||
000FE008 00000000
|
||||
700FE008 002000F0
|
||||
D00FE008 010100E0
|
||||
0036EEC5 00000000
|
||||
D00FE008 010100C0
|
||||
0036EEC5 00000001
|
||||
D00FE008 010100D0
|
||||
0036EEC5 00000002
|
||||
D00FE008 01010090
|
||||
0036EEC5 00000003
|
||||
D00FE008 010100B0
|
||||
0036EEC5 00000004
|
||||
D00FE008 01010030
|
||||
0036EEC5 00000005
|
||||
D00FE008 01010070
|
||||
0036EEC5 00000006
|
||||
D00FE008 01010060
|
||||
0036EEC5 00000007
|
||||
D00FE008 010100F0
|
||||
0036EEC5 00000008
|
104
content/adapters/cheats/controller-cheat_pro2best.txt
Normal file
104
content/adapters/cheats/controller-cheat_pro2best.txt
Normal file
|
@ -0,0 +1,104 @@
|
|||
Mastercode
|
||||
9010E2F8 0C043866
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad)
|
||||
202D3CAC 00000000
|
||||
D02DBA32 62010001
|
||||
D02DB9C1 61010041
|
||||
203790F0 40000202
|
||||
202D3CAC 00000001
|
||||
502DB9C2 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
502DB9C3 00000001
|
||||
000FE002 00000000
|
||||
502DB9C3 00000001
|
||||
000FE003 00000000
|
||||
502DB9C3 00000001
|
||||
000FE004 00000000
|
||||
502DB9C3 00000001
|
||||
000FE005 00000000
|
||||
502DB9C2 00000001
|
||||
000FE006 00000000
|
||||
502DB9C2 00000001
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
003794C2 00000009
|
||||
D00FE001 01010006
|
||||
003794C2 00000008
|
||||
D00FE001 01010002
|
||||
003794C2 00000007
|
||||
D00FE001 0101000D
|
||||
003794C2 00000006
|
||||
D00FE001 01010009
|
||||
003794C2 00000005
|
||||
D00FE001 0101000C
|
||||
003794C2 00000004
|
||||
D00FE001 01010008
|
||||
003794C2 00000003
|
||||
D00FE001 01010005
|
||||
003794C2 00000002
|
||||
D00FE001 01010001
|
||||
003794C2 00000001
|
||||
D00FE001 01010004
|
||||
003794C2 00000000
|
||||
D00FE000 010100F1
|
||||
003794C3 00000005
|
||||
D00FE000 01010070
|
||||
003794C3 00000004
|
||||
D00FE000 01010071
|
||||
003794C3 00000003
|
||||
D00FE000 010100D0
|
||||
003794C3 00000002
|
||||
D00FE000 010100D1
|
||||
003794C3 00000001
|
||||
D00FE000 01010050
|
||||
003794C3 00000000
|
||||
2012BDC0 34420000
|
||||
003794C6 00000000
|
||||
D00FE003 010100D0
|
||||
703794C6 00000004
|
||||
D00FE004 010100B0
|
||||
703794C6 00000001
|
||||
D00FE005 01010070
|
||||
703794C6 00000002
|
||||
D00FE006 0101000E
|
||||
703794C6 00000008
|
||||
D00FE007 01010007
|
||||
703794C6 00000020
|
||||
502DBB42 00000001
|
||||
000FE009 00000000
|
||||
700FE009 0020000F
|
||||
700FE009 0000000E
|
||||
D00FE009 0101000E
|
||||
702F28C6 00000010
|
||||
502DBB42 00000001
|
||||
000FE008 00000000
|
||||
700FE008 002000F0
|
||||
D00FE008 010100E0
|
||||
003794C5 00000000
|
||||
D00FE008 010100C0
|
||||
003794C5 00000001
|
||||
D00FE008 010100D0
|
||||
003794C5 00000002
|
||||
D00FE008 01010090
|
||||
003794C5 00000003
|
||||
D00FE008 010100B0
|
||||
003794C5 00000004
|
||||
D00FE008 01010030
|
||||
003794C5 00000005
|
||||
D00FE008 01010070
|
||||
003794C5 00000006
|
||||
D00FE008 01010060
|
||||
003794C5 00000007
|
||||
D00FE008 010100F0
|
||||
003794C5 00000008
|
104
content/adapters/cheats/controller-cheat_ryojouhen.txt
Normal file
104
content/adapters/cheats/controller-cheat_ryojouhen.txt
Normal file
|
@ -0,0 +1,104 @@
|
|||
Mastercode
|
||||
9010E290 0C04384C
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad and SELECT)
|
||||
2024B6DC 00000000
|
||||
D02548F2 62010001
|
||||
D0254881 61010041
|
||||
202F24E0 40000202
|
||||
2024B6DC 00000001
|
||||
50254882 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
50254883 00000001
|
||||
000FE002 00000000
|
||||
50254883 00000001
|
||||
000FE003 00000000
|
||||
50254883 00000001
|
||||
000FE004 00000000
|
||||
50254883 00000001
|
||||
000FE005 00000000
|
||||
50254882 00000001
|
||||
000FE006 00000000
|
||||
50254882 00000001
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
002F28C2 00000009
|
||||
D00FE001 01010006
|
||||
002F28C2 00000008
|
||||
D00FE001 01010002
|
||||
002F28C2 00000007
|
||||
D00FE001 0101000D
|
||||
002F28C2 00000006
|
||||
D00FE001 01010009
|
||||
002F28C2 00000005
|
||||
D00FE001 0101000C
|
||||
002F28C2 00000004
|
||||
D00FE001 01010008
|
||||
002F28C2 00000003
|
||||
D00FE001 01010005
|
||||
002F28C2 00000002
|
||||
D00FE001 01010001
|
||||
002F28C2 00000001
|
||||
D00FE001 01010004
|
||||
002F28C2 00000000
|
||||
D00FE000 010100F1
|
||||
002F28C3 00000005
|
||||
D00FE000 01010070
|
||||
002F28C3 00000004
|
||||
D00FE000 01010071
|
||||
002F28C3 00000003
|
||||
D00FE000 010100D0
|
||||
002F28C3 00000002
|
||||
D00FE000 010100D1
|
||||
002F28C3 00000001
|
||||
D00FE000 01010050
|
||||
002F28C3 00000000
|
||||
20135B90 34420000
|
||||
002F28C6 00000000
|
||||
D00FE003 010100D0
|
||||
702F28C6 00000004
|
||||
D00FE004 010100B0
|
||||
702F28C6 00000001
|
||||
D00FE005 01010070
|
||||
702F28C6 00000002
|
||||
D00FE006 0101000E
|
||||
702F28C6 00000008
|
||||
D00FE007 01010007
|
||||
702F28C6 00000020
|
||||
50254982 00000001
|
||||
000FE009 00000000
|
||||
700FE009 0020000F
|
||||
700FE009 0000000E
|
||||
D00FE009 0101000E
|
||||
702F28C6 00000010
|
||||
50254982 00000001
|
||||
000FE008 00000000
|
||||
700FE008 002000F0
|
||||
D00FE008 010100E0
|
||||
002F28C5 00000000
|
||||
D00FE008 010100C0
|
||||
002F28C5 00000001
|
||||
D00FE008 010100D0
|
||||
002F28C5 00000002
|
||||
D00FE008 01010090
|
||||
002F28C5 00000003
|
||||
D00FE008 010100B0
|
||||
002F28C5 00000004
|
||||
D00FE008 01010030
|
||||
002F28C5 00000005
|
||||
D00FE008 01010070
|
||||
002F28C5 00000006
|
||||
D00FE008 01010060
|
||||
002F28C5 00000007
|
||||
D00FE008 010100F0
|
||||
002F28C5 00000008
|
75
content/adapters/cheats/controller-cheat_tsddgo.txt
Normal file
75
content/adapters/cheats/controller-cheat_tsddgo.txt
Normal file
|
@ -0,0 +1,75 @@
|
|||
Mastercode
|
||||
9011A038 0C0467B6
|
||||
|
||||
Enable PS1 mascon on P2 (requires Dualshock on P1 for D-pad)
|
||||
20145B58 00000000
|
||||
D05D33B2 43010001
|
||||
D05D3341 42010041
|
||||
201D6858 00000000
|
||||
505D3342 00000002
|
||||
000FE000 00000000
|
||||
700FE000 00300FF0
|
||||
700FE000 00100050
|
||||
505D3343 00000001
|
||||
000FE002 00000000
|
||||
505D3343 00000001
|
||||
000FE003 00000000
|
||||
505D3343 00000001
|
||||
000FE004 00000000
|
||||
505D3343 00000001
|
||||
000FE005 00000000
|
||||
505D3342 00000001
|
||||
000FE006 00000000
|
||||
505D3342 00000001
|
||||
000FE007 00000000
|
||||
700FE002 0030F0F0
|
||||
700FE004 0030F0F0
|
||||
700FE006 00300F0F
|
||||
700FE002 0010D0E0
|
||||
700FE004 001070B0
|
||||
700FE006 0010070E
|
||||
D00FE002 010100E0
|
||||
700FE000 00000001
|
||||
D00FE001 0101000F
|
||||
000FE008 00000001
|
||||
D00FE001 01010002
|
||||
000FE008 00000002
|
||||
D00FE001 0101000D
|
||||
000FE008 00000003
|
||||
D00FE001 01010009
|
||||
000FE008 00000004
|
||||
D00FE001 0101000C
|
||||
000FE008 00000005
|
||||
D00FE001 01010008
|
||||
000FE008 00000006
|
||||
D00FE001 01010005
|
||||
000FE008 00000007
|
||||
D00FE001 01010001
|
||||
000FE008 00000008
|
||||
D00FE001 01010004
|
||||
000FE008 00000009
|
||||
D00FE000 01010070
|
||||
000FE009 0000000D
|
||||
D00FE000 01010071
|
||||
000FE009 0000000C
|
||||
D00FE000 010100D0
|
||||
000FE009 0000000B
|
||||
D00FE000 010100D1
|
||||
000FE009 0000000A
|
||||
D00FE000 01010050
|
||||
000FE009 00000009
|
||||
500FE008 00000001
|
||||
001D6858 00000000
|
||||
D00FE008 02010009
|
||||
500FE009 00000001
|
||||
001D6858 00000000
|
||||
D00FE003 010100D0
|
||||
701D6859 00000004
|
||||
D00FE004 010100B0
|
||||
701D6859 00000010
|
||||
D00FE005 01010070
|
||||
701D6859 00000002
|
||||
D00FE006 0101000E
|
||||
701D685A 00000002
|
||||
D00FE007 01010007
|
||||
701D685A 00000001
|
48
content/compatibility/_index.md
Normal file
48
content/compatibility/_index.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: "Software compatibility (WIP)"
|
||||
weight: 2
|
||||
---
|
||||
|
||||
The following table lists the compatibility between each controller (first row) and each software (first column). Additional software compatible with the controllers is also listed. The column for the Multi Train Controller (MTC) specifies the supported cassettes. Scroll to the right to see the full table.
|
||||
|
||||
| Software | Classic console controller | DGOC-44 | DGC-255<br/>DGOC-44U | DRC-184<br/>DYC-288 | TCPP-20009<br/>TCPP-20012 | TCPP-20011 | TCPP-20014 | TCPP-20017 | MTC | ZKNS-001 | OHC-PC01 |
|
||||
|:---------------------------------------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------:|:-------:|:--------------------------------------------------------:|:--------------------------------------------------------:|:--------------------------------------------------------:|:--------------------------------------------------------:|:--------------------------------------------------------:|:----------:|:----------------------------------------------------------:|:--------------------------------------------------------:|:--------------------------------------------------------:|
|
||||
| Densha de GO!<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO!<br/>(Sony PlayStation) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! EX<br/>(Sega Saturn) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! 2<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! 2<br/>(Sega Dreamcast) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! 2<br/>(Sony PlayStation) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! 64<br/>(Nintendo 64) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Kisha de GO!<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Kisha de GO!<br/>(Sony PlayStation) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! Professional<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Professional<br/>(Sony PlayStation) | Yes | No | No | No | No | No | No | No | No | No | No |
|
||||
| Densha de GO! Nagoya Railroad<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Nagoya Railroad<br/>(Sony PlayStation) | Yes | No | No | No | No | No | No | No | P5/B8 | No | No |
|
||||
| Densha de GO! 3<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes | Yes (1) | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! 3<br/>(Sony PlayStation 2) | Yes (2) | No | No | No | Yes | No | No | No | P5/B8 | No | No |
|
||||
| Densha de GO! Shinkansen<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Unknown | Yes | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Shinkansen<br/>(Sony PlayStation 2) | Yes (2) | No | No | No | Yes | Yes | No | No | P5/B8 | No | No |
|
||||
| Densha de GO! Shinkansen<br/>(Nintendo Wii) | No | No | No | No | No | No | No | Yes | No | No | No |
|
||||
| Densha de GO! Ryojōhen<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Unknown | Unknown | Yes | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Ryojōhen<br/>(Sony PlayStation 2) | [Unofficial](../adapters#playstation-2-cheat-codes-for-playstation-1-controllers) (2) | No | No | No | Yes | Yes | Yes | No | P5/B8 | No | No |
|
||||
| Densha de GO! Professional 2<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Unknown | Yes | Yes | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Professional 2<br/>(Sony PlayStation 2) | [Unofficial](../adapters#playstation-2-cheat-codes-for-playstation-1-controllers) (2) | No | No | No | Yes | Yes | Yes | No | P5/B8 | No | No |
|
||||
| Densha de GO! Final<br/>(Microsoft Windows) | [Unofficial](../adapters#converter-tool-by-autotraintas) | Unknown | Yes | Yes | [Unofficial](../adapters#converter-tool-by-autotraintas) | [Unofficial](../adapters#converter-tool-by-autotraintas) | No | No | No | [Unofficial](../adapters#converter-tool-by-autotraintas) | Yes |
|
||||
| Densha de GO! Final<br/>(Sony PlayStation 2) | [Unofficial](../adapters#playstation-2-cheat-codes-for-playstation-1-controllers) (2) | No | No | No | Yes | Yes | Yes | No | P5/B8 | No | No |
|
||||
| Densha de GO! Hashirō Yamanote‑sen<br/>(Sony PlayStation 4) | Yes (3) | No | Yes (4) | Untested (4) | No | No | No | No | No | No | Yes |
|
||||
| Densha de GO! Hashirō Yamanote‑sen<br/>(Nintendo Switch) | Yes (3) | No | Yes (4) | Untested (4) | No | No | No | No | No | Yes | Yes |
|
||||
| Train Simulator Real: THE Yamanote Line<br/>(Sony PlayStation 2) | No | No | No | No | Yes | No | No | No | P5/B8 | No | No |
|
||||
| Train Simulator Real: THE Keihin Electric Express Railway<br/>(Sony PlayStation 2) | No | No | No | No | No | No | No | No | P5/B5 | No | No |
|
||||
| Train Simulator: Midosuji Line<br/>(Sony PlayStation 2) | [Unofficial](../adapters#playstation-2-cheat-codes-for-playstation-1-controllers) (2) | No | No | No | No | No | No | No | P4/B7 (without B1) | No | No |
|
||||
| Train Simulator + Densha de GO! Tokyu Line<br/>(Sony PlayStation 2) | [Unofficial](../adapters#playstation-2-cheat-codes-for-playstation-1-controllers) (2) | No | No | No | No | No | No | No | P4/B7 | No | No |
|
||||
| Train Simulator: Keisei, Toei Asakusa, Keikyu Lines<br/>(Sony PlayStation 2) | No | No | No | No | No | No | No | No | P5/B5, P13/B7 | No | No |
|
||||
| Train Simulator: Kyūshū Shinkansen<br/>(Sony PlayStation 2) | No | No | No | No | No | Yes | No | No | P5/B7, P13/B7 | No | No |
|
||||
| BVE Trainsim | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | No | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | No | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | No | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) |
|
||||
| OpenBVE | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | No | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | No | [P5/B8](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) | [Yes](../adapters#input-plugins-for-bve-trainsimopenbve) |
|
||||
|
||||
1. Only republished versions.
|
||||
2. Only the classic controllers for the Sony PlayStation.
|
||||
3. Requires USB adapter and USB remapper: https://github.com/tylau0/DenGo
|
||||
4. Requires a USB remapper: https://github.com/tylau0/DenGo
|
4
content/models/_index.md
Normal file
4
content/models/_index.md
Normal file
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
title: "Models"
|
||||
weight: 1
|
||||
---
|
80
content/models/classic/_index.md
Normal file
80
content/models/classic/_index.md
Normal file
|
@ -0,0 +1,80 @@
|
|||
---
|
||||
title: "Classic consoles"
|
||||
weight: 1
|
||||
---
|
||||
|
||||
The information in this section applies to the following controllers:
|
||||
|
||||
- **SLPH-00051:** two-handle controller (Sony PlayStation)
|
||||
- **TC-5175290:** two-handle controller (Sega Saturn)
|
||||
- **TCPP-20001:** single-handle controller (Sony PlayStation)
|
||||
- **TCPP-20002:** gamepad controller (Sony PlayStation)
|
||||
- **TCPP-20003:** two-handle controller (Nintendo 64)
|
||||
- **TCPP-20004:** two-handle controller (Sega Dreamcast)
|
||||
- **TCPP-20008:** two-handle controller, golden (Sony PlayStation)
|
||||
|
||||
These controllers all have five physical buttons (**SELECT**, **START**, **A**, **B**, **C**) and two handles (with the TCPP-20001 combining them into one). Internally, they use the same protocol as a standard controller for the corresponding console and input is reported in the data bytes corresponding to buttons (where each bit reports the state of a single button). Only the regular physical buttons have dedicated bits for them; the handles combine three and four bits for the power notches and brake notches, respectively (you can find an example with the Nintendo 64 [here](https://sites.google.com/site/consoleprotocols/home/nintendo-joy-bus-documentation/n64-specific/train-controller)).
|
||||
|
||||
## Power handle bit usage
|
||||
|
||||
The power handle uses a combination of three bits (buttons) to represent each notch. When using the TCPP-20001 controller, the equivalent of **N** is reported for power whenever a brake notch is applied.
|
||||
|
||||
| Position | POWER 1 | POWER 2 | POWER 3 |
|
||||
|:----------:|:-------:|:-------:|:-------:|
|
||||
| N | - | X | X |
|
||||
| P1 | X | - | X |
|
||||
| P2 | - | - | X |
|
||||
| P3 | X | X | - |
|
||||
| P4 | - | X | - |
|
||||
| P5 | X | - | - |
|
||||
| Transition | - | - | - |
|
||||
|
||||
## Brake handle bit usage
|
||||
|
||||
The brake handle uses a combination of four bits (buttons) to represent each notch. When using the TCPP-20001 controller, the equivalent of **Released** is reported for brake whenever a power notch is applied.
|
||||
|
||||
| Position | BRAKE 1 | BRAKE 2 | BRAKE 3 | BRAKE 4 |
|
||||
|:----------:|:-------:|:-------:|:-------:|:-------:|
|
||||
| Released | - | X | X | X |
|
||||
| B1 | X | - | X | X |
|
||||
| B2 | - | - | X | X |
|
||||
| B3 | X | X | - | X |
|
||||
| B4 | - | X | - | X |
|
||||
| B5 | X | - | - | X |
|
||||
| B6 | - | - | - | X |
|
||||
| B7 | X | X | X | - |
|
||||
| B8 | - | X | X | - |
|
||||
| Unmarked 1 | X | - | X | - |
|
||||
| Unmarked 2 | - | - | X | - |
|
||||
| Unmarked 3 | X | X | - | - |
|
||||
| Unmarked 4 | - | X | - | - |
|
||||
| Unmarked 5 | X | - | - | - |
|
||||
| Emergency | - | - | - | - |
|
||||
| Transition | X | X | X | X |
|
||||
|
||||
The unmarked positions can be found between **B8** and **Emergency** and produce no click when moving the handle. When using the TCPP-20001 or the TCPP-20002, only the first and fourth unmarked positions are available.
|
||||
|
||||
## Button mapping to a standard controller
|
||||
|
||||
Because they use the same data bytes, the input between a Densha de GO! controller and a standard controller for each console can be matched as follows:
|
||||
|
||||
| Densha de GO! | Nintendo 64 | Sony PlayStation 1 | Sega Dreamcast | Sega Saturn |
|
||||
|:-------------:|:-----------:|:------------------:|:--------------:|:-----------:|
|
||||
| SELECT | R | SELECT | D | ?? |
|
||||
| START | START | START | START | ?? |
|
||||
| A | B | SQUARE | A | ?? |
|
||||
| B | A | CROSS | ?? | ?? |
|
||||
| C | L | CIRCLE | C | ?? |
|
||||
| POWER 1 | RIGHT | TRIANGLE | Z | X |
|
||||
| POWER 2 | UP | LEFT | Y | Y |
|
||||
| POWER 3 | Z | RIGHT | X | Z |
|
||||
| BRAKE 1 | C RIGHT | L1 | UP | L |
|
||||
| BRAKE 2 | C LEFT | L2 | DOWN | R |
|
||||
| BRAKE 3 | C DOWN | R1 | LEFT | DOWN |
|
||||
| BRAKE 4 | C UP | R2 | RIGHT | LEFT |
|
||||
|
||||
This is useful when using a USB adapter to read the controller input from a PC.
|
||||
|
||||
## PlayStation-specific information
|
||||
|
||||
The controllers report the same data amount and structure as a standard digital PlayStation controller. UP and DOWN are pressed permanently. The games detect the controllers with these two buttons, as it is an impossible combination with a standard digital controller.
|
10
content/models/serial/_index.md
Normal file
10
content/models/serial/_index.md
Normal file
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: "Serial port"
|
||||
weight: 2
|
||||
---
|
||||
|
||||
The information in this section applies to the following controllers:
|
||||
|
||||
- **DGOC-44:** two-handle controller (Microsoft Windows)
|
||||
|
||||
This is the original controller for the Microsoft Windows releases. No details are available regarding internal functioning.
|
14
content/models/standalone/_index.md
Normal file
14
content/models/standalone/_index.md
Normal file
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
title: "Standalone"
|
||||
weight: 5
|
||||
---
|
||||
|
||||
The information in this section applies to the following controllers:
|
||||
|
||||
- **Densha de GO! Plug and Play**
|
||||
|
||||
This controller is different from traditional controllers in the sense that it contains the game (an improved version of *Densha de GO! Final*) and does not connect to a PC or console. Externally, it looks similar to a TCPP-20009, except it does not include a pedal connection. Internally, it contains an ARM board running Linux. It requires a micro USB cable for power and a HDMI cable for video output.
|
||||
|
||||
The micro USB port supports USB OTG with a powered adapter and is used by Taito to install software updates.
|
||||
|
||||
It is possible to update the Linux kernel on the board to enable USB gadget mode and emulate traditional controllers, such as the [DGOC-44U](/models/usb/#dgoc-44u). This makes it possible to control other software. You can find more information [here](https://github.com/GMMan/dengo-plug-and-play-controller).
|
302
content/models/usb/_index.md
Normal file
302
content/models/usb/_index.md
Normal file
|
@ -0,0 +1,302 @@
|
|||
---
|
||||
title: "USB"
|
||||
weight: 3
|
||||
---
|
||||
|
||||
The information in this section applies to the following controllers:
|
||||
|
||||
- **DGC-255:** one-handle controller (Microsoft Windows)
|
||||
- **DGOC-44U:** two-handle controller (Microsoft Windows)
|
||||
- **DRC-184/DYC-288:** Ryojōhen controller (Microsoft Windows)
|
||||
- **TCPP-20009:** two-handle controller "Type 2" (Sony PlayStation 2)
|
||||
- **TCPP-20011:** Shinkansen controller (Sony PlayStation 2)
|
||||
- **TCPP-20012:** two-handle controller "Type 2", purple skeleton (Sony PlayStation 2)
|
||||
- **TCPP-20014:** Ryojōhen controller (Sony PlayStation 2)
|
||||
- **MTC:** Multi Train Controller (Sony PlayStation 2)
|
||||
- **ZKNS-001:** one-handle controller (Nintendo Switch)
|
||||
|
||||
### DGC-255
|
||||
|
||||
This controller has one handle (5 power notches and 8+emergency brake notches), a D-Pad and 6 buttons (Select, Start, A, B, C, D).
|
||||
|
||||
Internally, it is a HID-compliant joystick with two axes, 6 buttons and a PoV hat switch (the handle positions are reported via axes).
|
||||
|
||||
Besides the PoV hat switch, it reports the same data as a DGOC-44U controller. The games check if the controller has a PoV hat switch to distinguish between a DGC-255 and a DGOC-44U.
|
||||
|
||||
### DGOC-44U
|
||||
|
||||
This controller has two handles (5 power notches and 8+emergency brake notches) and 6 buttons (Select, Start, A, B, C, D).
|
||||
|
||||
Internally, it is a HID-compliant joystick with two axes and 6 buttons (the handle positions are reported via axes).
|
||||
|
||||
| | |
|
||||
|-----------------------------|-------------------------------------------|
|
||||
| **Product name** | 電車でGO! コントローラ USB版 |
|
||||
| **Manufacturer** | TAITO |
|
||||
| **Vendor ID** | 0x0AE4 |
|
||||
| **Product ID** | 0x0003 |
|
||||
| **Serial number** | TCPP20009 |
|
||||
| **USB standard descriptor** | Unavailable |
|
||||
| **HID report descriptor** | [Link](descriptors/dgoc44u_hid-report-descriptor.txt) |
|
||||
|
||||
The controller sends reports to the host (PC) formed by 6 bytes:
|
||||
|
||||
| Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6 |
|
||||
|:------:|:------:|:------:|:-------:|:------:|:------:|
|
||||
| Brake | Power | Null | Buttons | Null | Null |
|
||||
|
||||
The values for the brake notch byte are the following. There are 5 unmarked positions between **B8** and **Emergency**, but unlike classic controllers, they are all report the value for **Emergency**.
|
||||
|
||||
| Released | B1 | B2 | B3 | B4 | B5 | B6 | B7 | B8 | Emergency | Transition |
|
||||
|:--------:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:---------:|:----------:|
|
||||
| 0x79 | 0x8A | 0x94 | 0x9A | 0xA2 | 0xA8 | 0xAF | 0xB2 | 0xB5 | 0xB9 | 0xFF |
|
||||
|
||||
The values for the power notch byte are listed below.
|
||||
|
||||
| N | P1 | P2 | P3 | P4 | P5 | Transition |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----------:|
|
||||
| 0x81 | 0x6D | 0x54 | 0x3F | 0x21 | 0x00 | 0xFF |
|
||||
|
||||
The button byte uses six bits to represent the state of the physical buttons. **0** means that the button is released and **1** that it is pressed.
|
||||
|
||||
| Button 1 | Button 2 | Button 3 | Button 4 | Button 5 | Button 6 |
|
||||
|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|
|
||||
| B | A | C | D | SELECT | START |
|
||||
|
||||
### DRC-184/DYC-288
|
||||
|
||||
No details are available regarding internal functioning.
|
||||
|
||||
### TCPP-20009/TCPP-20012
|
||||
|
||||
This controller has two handles (5 power notches and 8+emergency brake notches), a D-Pad and 6 buttons (Select, Start, A, B, C, D). In addition, it provides a door lamp and a 3.5 mm jack connector to plug a horn pedal. There are two rumble motors, one in each handle.
|
||||
|
||||
Internally, it is a HID device with a vendor-specific class.
|
||||
|
||||
| | |
|
||||
|-----------------------------|-------------------------------------------|
|
||||
| **Product name** | TAITO_DENSYA_CON_T01 |
|
||||
| **Manufacturer** | TAITO |
|
||||
| **Vendor ID** | 0x0AE4 |
|
||||
| **Product ID** | 0x0004 |
|
||||
| **Serial number** | TCPP20010 |
|
||||
| **USB standard descriptor** | [Link](descriptors/tcpp20009_standard-descriptor.txt) |
|
||||
| **HID report descriptor** | Unavailable |
|
||||
|
||||
#### Input
|
||||
|
||||
The controller sends reports to the host (PS2) formed by 6 bytes:
|
||||
|
||||
| Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6 |
|
||||
|:------:|:------:|:------:|:------:|:------:|:-------:|
|
||||
| 0x01 | Brake | Power | Pedal | D-Pad | Buttons |
|
||||
|
||||
The values for the brake notch byte are the following.
|
||||
|
||||
| Released | B1 | B2 | B3 | B4 | B5 | B6 | B7 | B8 | Emergency | Transition |
|
||||
|:--------:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:---------:|:----------:|
|
||||
| 0x79 | 0x8A | 0x94 | 0x9A | 0xA2 | 0xA8 | 0xAF | 0xB2 | 0xB5 | 0xB9 | 0xFF |
|
||||
|
||||
The values for the power notch byte are listed below.
|
||||
|
||||
| N | P1 | P2 | P3 | P4 | P5 | Transition |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----------:|
|
||||
| 0x81 | 0x6D | 0x54 | 0x3F | 0x21 | 0x00 | 0xFF |
|
||||
|
||||
The pedal byte has two possible values depending on the state of the pedal.
|
||||
|
||||
| Released | Pressed |
|
||||
|:--------:|:-------:|
|
||||
| 0xFF | 0x00 |
|
||||
|
||||
The D-pad byte represents the state of the arrow buttons. If two opposite directions are pressed simultaneously, the result is **Center** unless a third button is pressed.
|
||||
|
||||
| N | NE | E | SE | S | SW | W | NW | None/Center |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:-----------:|
|
||||
| 0x00 | 0x01 | 0x02 | 0x03 | 0x04 | 0x05 | 0x06 | 0x07 | 0x08 |
|
||||
|
||||
The button byte uses six bits to represent the state of the physical buttons. **0** means that the button is released and **1** that it is pressed. A bitmask can be used to retrieve the buttons.
|
||||
|
||||
| Button 1 | Button 2 | Button 3 | Button 4 | Button 5 | Button 6 |
|
||||
|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|
|
||||
| B | A | C | D | SELECT | START |
|
||||
|
||||
#### Output
|
||||
|
||||
The controller supports receiving data via a control transfer to turn on/off the door lamp and provide rumble. The setup packet is as follows:
|
||||
|
||||
| bmRequestType | bRequest | wValue | wIndex | wLength |
|
||||
|:-------------:|:--------:|:------:|:------:|:-------:|
|
||||
| 0x40 | 0x09 | 0x0301 | 0x0000 | 0x0002 |
|
||||
|
||||
The data sent to the controller follows the structure below.
|
||||
|
||||
| Byte 1 | Byte 2 |
|
||||
|:------:|:--------:|
|
||||
| Status | Function |
|
||||
|
||||
* **Status:** defines whether the function specified in byte 2 is **Off** (**0x00**) or **On** (**0x01**).
|
||||
* **Function:** **0x01** is **Left rumble**, **0x02** is **Right rumble**, **0x03** is **Door lamp**.
|
||||
|
||||
### TCPP-20011
|
||||
|
||||
This controller has two handles (13 power notches and 7+emergency brake notches), a D-Pad and 6 buttons (Select, Start, A, B, C, D). In addition, it provides a simple display, a door lamp and a 3.5 mm jack connector to plug a horn pedal. There are two rumble motors, one in each handle.
|
||||
|
||||
Internally, it is a HID device with a vendor-specific class.
|
||||
|
||||
| | |
|
||||
|-----------------------------|-------------------------------------------|
|
||||
| **Product name** | TAITO_DENSYA_CON_T02 |
|
||||
| **Manufacturer** | TAITO |
|
||||
| **Vendor ID** | 0x0AE4 |
|
||||
| **Product ID** | 0x0005 |
|
||||
| **Serial number** | TCPP20011 |
|
||||
| **USB standard descriptor** | [Link](descriptors/tcpp20011_standard-descriptor.txt) |
|
||||
| **HID report descriptor** | Unavailable |
|
||||
|
||||
#### Input
|
||||
|
||||
The controller sends reports to the host (PS2) formed by 6 bytes:
|
||||
|
||||
| Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Byte 6 |
|
||||
|:------:|:------:|:------:|:------:|:-------:|:------:|
|
||||
| Brake | Power | Pedal | D-Pad | Buttons | Null |
|
||||
|
||||
The values for the brake notch byte are the following.
|
||||
|
||||
| Released | B1 | B2 | B3 | B4 | B5 | B6 | B7 | Emergency | Transition |
|
||||
|:--------:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:---------:|:----------:|
|
||||
| 0x1C | 0x38 | 0x54 | 0x70 | 0x8B | 0xA7 | 0xC3 | 0xDF | 0xFB | 0xFF |
|
||||
|
||||
The values for the power notch byte are listed below.
|
||||
|
||||
| N | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | P12 | P13 | Transition |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----------:|
|
||||
| 0x12 | 0x24 | 0x36 | 0x48 | 0x5A | 0x6C | 0x7E | 0x90 | 0xA2 | 0xB4 | 0xC6 | 0xD7 | 0xE9 | 0xFB | 0xFF |
|
||||
|
||||
The pedal byte has two possible values depending on the state of the pedal.
|
||||
|
||||
| Released | Pressed |
|
||||
|:--------:|:-------:|
|
||||
| 0xFF | 0x00 |
|
||||
|
||||
The D-pad byte represents the state of the arrow buttons. If two opposite directions are pressed simultaneously, the result is **Center** unless a third button is pressed.
|
||||
|
||||
| N | NE | E | SE | S | SW | W | NW | None/Center |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:-----------:|
|
||||
| 0x00 | 0x01 | 0x02 | 0x03 | 0x04 | 0x05 | 0x06 | 0x07 | 0x08 |
|
||||
|
||||
The button byte uses six bits to represent the state of the physical buttons. **0** means that the button is released and **1** that it is pressed. A bitmask can be used to retrieve the buttons.
|
||||
|
||||
| Button 1 | Button 2 | Button 3 | Button 4 | Button 5 | Button 6 |
|
||||
|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|
|
||||
| D | C | B | A | SELECT | START |
|
||||
|
||||
#### Output
|
||||
|
||||
The controller supports receiving data via a control transfer to update the screen, turn on/off the door lamp and provide rumble. The setup packet is as follows:
|
||||
|
||||
| bmRequestType | bRequest | wValue | wIndex | wLength |
|
||||
|:-------------:|:--------:|:------:|:------:|:-------:|
|
||||
| 0x40 | 0x09 | 0x0301 | 0x0000 | 0x0008 |
|
||||
|
||||
The data sent to the controller follows the structure below.
|
||||
|
||||
| Byte 1 | Byte 2 | Byte 3 | Byte 4 | Bytes 5-6 | Bytes 7-8 |
|
||||
|:-----------:|:-----------:|:--------------------------:|:-----------:|:-----------:|:---------:|
|
||||
| Left rumble | Right rumble| Door lamp + Limit approach | Speed gauge | Speedometer | ATC limit |
|
||||
|
||||
* **Left/right rumble:** **0x00** is **Off**, **0x01** is **On**.
|
||||
* **Door lamp:** **0x0?** is **Off**, **0x8?** is **On**.
|
||||
* **Limit approach:** values between **0x?0** and **0x?A** representing the number of LEDs lit above the speedometer. In-game, these mark the 10 km/h right below the speed limit.
|
||||
* **Speed gauge:** values between **0x00** and **0x16** representing the number of LEDs lit on the speed gauge. LED #23 cannot be lit. In-game, these mark 15 km/h increments in the current speed, with one lit when speed is 1-15 km/h, two when 16-30 km/h, etc.
|
||||
* **Speedometer:** values between **0x0000** and **0x0999** representing the current speed. Values are encoded with **BCD 8421** (i.e. **120 km/h** should be represented as **0x0120**, NOT **0x0078**).
|
||||
* **ATC limit:** values between **0x0000** and **0x0999** representing the ATC speed limit. Values are encoded with **BCD 8421** (i.e. **120 km/h** should be represented as **0x0120**, NOT **0x0078**).
|
||||
|
||||
Multi-byte values should be stored in **Little Endian**.
|
||||
|
||||
### TCPP-20014
|
||||
|
||||
This controller has two handles (4 power notches and an analogue brake handle with three areas), a D-Pad and 7 buttons (Select, Start, Horn, Announce, Camera, Left doors, Right doors). In addition, it provides a 3.5 mm jack connector to plug a horn pedal.
|
||||
|
||||
Internally, it is a HID device with a vendor-specific class.
|
||||
|
||||
| | |
|
||||
|-----------------------------|-------------------------------------------|
|
||||
| **Product name** | TAITO_DENSYA_CON_T03 |
|
||||
| **Manufacturer** | TAITO |
|
||||
| **Vendor ID** | 0x0AE4 |
|
||||
| **Product ID** | 0x0007 |
|
||||
| **Serial number** | TCPP20014 |
|
||||
| **USB standard descriptor** | [Link](descriptors/tcpp20014_standard-descriptor.txt) |
|
||||
| **HID report descriptor** | Unavailable |
|
||||
|
||||
#### Input
|
||||
|
||||
The controller sends reports to the host (PS2) formed by 8 bytes:
|
||||
|
||||
| Byte 1 | Byte 2 | Byte 3 | Byte 4 | Byte 5 | Bytes 6-8 |
|
||||
|:------:|:------:|:------:|:------:|:-------:|:---------:|
|
||||
| Brake | Power | Pedal | D-Pad | Buttons | Unused |
|
||||
|
||||
Unlike traditional controllers, the brake handle is analogue and the brake byte reflects the position of the handle precisely. There are three areas with the ranges listed below, plus the emergency notch.
|
||||
|
||||
| Reduce pressure | Keep pressure | Increase pressure | Emergency |
|
||||
|:---------------:|:-------------:|:-----------------:|:---------:|
|
||||
| 0x23-0x64 | 0x65-0x89 | 0x8A-0xD6 | 0xD7 |
|
||||
|
||||
When using the controller with **Densha de GO! Professional 2** or **Densha de GO! Final**, the brake handle is interpreted as having 6 brake notches + emergency. The aproximate byte range for each notch is listed below (taken from **Densha de GO! Professional 2**).
|
||||
|
||||
| Released | B1 | B2 | B3 | B4 | B5 | B6 | Emergency |
|
||||
|:---------:|:---------:|:---------:|:---------:|:---------:|:---------:|:---------:|:---------:|
|
||||
| 0x23-0x2A | 0x2B-0x3C | 0x3D-0x4E | 0x4F-0x63 | 0x64-0x8A | 0x8B-0xB0 | 0xB1-0xD6 | 0xD7 |
|
||||
|
||||
The values for the power notch byte are listed below.
|
||||
|
||||
| N | P1 | P2 | P3 | P4 | Transition |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----------:|
|
||||
| 0x00 | 0x3C | 0x78 | 0xB4 | 0xF0 | 0xFF |
|
||||
|
||||
The pedal byte has two possible values depending on the state of the pedal.
|
||||
|
||||
| Released | Pressed |
|
||||
|:--------:|:-------:|
|
||||
| 0xFF | 0x00 |
|
||||
|
||||
The D-pad byte represents the state of the arrow buttons. If two opposite directions are pressed simultaneously, the result is **Center** unless a third button is pressed.
|
||||
|
||||
| N | NE | E | SE | S | SW | W | NW | None/Center |
|
||||
|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:-----------:|
|
||||
| 0x00 | 0x01 | 0x02 | 0x03 | 0x04 | 0x05 | 0x06 | 0x07 | 0x08 |
|
||||
|
||||
The button byte uses seven bits to represent the state of the physical buttons. **0** means that the button is released and **1** that it is pressed. A bitmask can be used to retrieve the buttons.
|
||||
|
||||
| Button 1 | Button 2 | Button 3 | Button 4 | Button 5 | Button 6 | Button 7 |
|
||||
|:--------:|:--------:|:--------:|:-----------:|:----------:|:--------:|:--------:|
|
||||
| Horn | Announce | Camera | Right doors | Left doors | SELECT | START |
|
||||
|
||||
### MTC
|
||||
|
||||
No details are available regarding internal functioning.
|
||||
|
||||
### ZKNS-001
|
||||
|
||||
This controller has one handle (5 power notches and 8+emergency brake notches) and 16 buttons (the same as a Nintendo Switch Pro Controller, except the stick buttons).
|
||||
|
||||
Internally, it is a HID-compliant joystick mimicking a Nintendo Switch Pro Controller. The stick buttons and the right stick are unused, and only the Y axis of the left stick is used.
|
||||
|
||||
| | |
|
||||
|-----------------------------|-------------------------------------------|
|
||||
| **Product name** | One Handle MasCon for Nintendo Switch |
|
||||
| **Manufacturer** | *None* |
|
||||
| **Vendor ID** | 0x0F0D |
|
||||
| **Product ID** | 0x00C1 |
|
||||
| **Serial number** | *None* |
|
||||
| **USB standard descriptor** | [Link](descriptors/zkns001_standard-descriptor.txt) |
|
||||
| **HID report descriptor** | [Link](descriptors/zkns001_hid-report-descriptor.txt) |
|
||||
|
||||
The power/brake handle notches are reported in the Y axis of the left stick. There are no transition values between notches. In addition, when the handle is set to **Emergency**, **ZL** is pressed.
|
||||
|
||||
| Emergency | B8 | B7 | B6 | B5 | B4 | B3 | B2 | B1 | N | P1 | P2 | P3 | P4 | P5 |
|
||||
|:---------:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|
|
||||
| 0x00 | 0x05 | 0x13 | 0x20 | 0x2E | 0x3C | 0x49 | 0x57 | 0x65 | 0x80 | 0x9F | 0xB7 | 0xCE | 0xE6 | 0xFF |
|
|
@ -0,0 +1,34 @@
|
|||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x04, // Usage (Joystick)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x09, 0x01, // Usage (Pointer)
|
||||
0xA1, 0x00, // Collection (Physical)
|
||||
0x09, 0x30, // Usage (X)
|
||||
0x09, 0x31, // Usage (Y)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x09, // Usage Page (Button)
|
||||
0x19, 0x01, // Usage Minimum (0x01)
|
||||
0x29, 0x06, // Usage Maximum (0x06)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x45, 0x01, // Physical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x06, // Report Count (6)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 63 bytes
|
|
@ -0,0 +1,42 @@
|
|||
0x12, // bLength
|
||||
0x01, // bDescriptorType (Device)
|
||||
0x10, 0x01, // bcdUSB 1.10
|
||||
0xFF, // bDeviceClass
|
||||
0x04, // bDeviceSubClass
|
||||
0x00, // bDeviceProtocol
|
||||
0x08, // bMaxPacketSize0 8
|
||||
0xE4, 0x0A, // idVendor 0x0AE4
|
||||
0x04, 0x00, // idProduct 0x04
|
||||
0x02, 0x01, // bcdDevice 2.02
|
||||
0x01, // iManufacturer (String Index) "TAITO"
|
||||
0x02, // iProduct (String Index) "TAITO_DENSYA_CON_T01"
|
||||
0x03, // iSerialNumber (String Index) "TCPP20010"
|
||||
0x01, // bNumConfigurations 1
|
||||
|
||||
0x09, // bLength
|
||||
0x02, // bDescriptorType (Configuration)
|
||||
0x19, 0x00, // wTotalLength 25
|
||||
0x01, // bNumInterfaces 1
|
||||
0x01, // bConfigurationValue
|
||||
0x00, // iConfiguration (String Index)
|
||||
0xA0, // bmAttributes Remote Wakeup
|
||||
0xFA, // bMaxPower 500mA
|
||||
|
||||
0x09, // bLength
|
||||
0x04, // bDescriptorType (Interface)
|
||||
0x00, // bInterfaceNumber 0
|
||||
0x00, // bAlternateSetting
|
||||
0x01, // bNumEndpoints 1
|
||||
0x03, // bInterfaceClass
|
||||
0x00, // bInterfaceSubClass
|
||||
0x00, // bInterfaceProtocol
|
||||
0x00, // iInterface (String Index)
|
||||
|
||||
0x07, // bLength
|
||||
0x05, // bDescriptorType (Endpoint)
|
||||
0x81, // bEndpointAddress (IN/D2H)
|
||||
0x03, // bmAttributes (Interrupt)
|
||||
0x08, 0x00, // wMaxPacketSize 8
|
||||
0x14, // bInterval 20 (unit depends on device speed)
|
||||
|
||||
// 43 bytes
|
|
@ -0,0 +1,42 @@
|
|||
0x12, // bLength
|
||||
0x01, // bDescriptorType (Device)
|
||||
0x10, 0x01, // bcdUSB 1.10
|
||||
0xFF, // bDeviceClass
|
||||
0x05, // bDeviceSubClass
|
||||
0x00, // bDeviceProtocol
|
||||
0x08, // bMaxPacketSize0 8
|
||||
0xE4, 0x0A, // idVendor 0x0AE4
|
||||
0x05, 0x00, // idProduct 0x05
|
||||
0x02, 0x01, // bcdDevice 2.02
|
||||
0x01, // iManufacturer (String Index) "TAITO"
|
||||
0x02, // iProduct (String Index) "TAITO_DENSYA_CON_T02"
|
||||
0x03, // iSerialNumber (String Index) "TCPP20011"
|
||||
0x01, // bNumConfigurations 1
|
||||
|
||||
0x09, // bLength
|
||||
0x02, // bDescriptorType (Configuration)
|
||||
0x19, 0x00, // wTotalLength 25
|
||||
0x01, // bNumInterfaces 1
|
||||
0x01, // bConfigurationValue
|
||||
0x00, // iConfiguration (String Index)
|
||||
0xA0, // bmAttributes Remote Wakeup
|
||||
0xFA, // bMaxPower 500mA
|
||||
|
||||
0x09, // bLength
|
||||
0x04, // bDescriptorType (Interface)
|
||||
0x00, // bInterfaceNumber 0
|
||||
0x00, // bAlternateSetting
|
||||
0x01, // bNumEndpoints 1
|
||||
0x03, // bInterfaceClass
|
||||
0x00, // bInterfaceSubClass
|
||||
0x00, // bInterfaceProtocol
|
||||
0x00, // iInterface (String Index)
|
||||
|
||||
0x07, // bLength
|
||||
0x05, // bDescriptorType (Endpoint)
|
||||
0x81, // bEndpointAddress (IN/D2H)
|
||||
0x03, // bmAttributes (Interrupt)
|
||||
0x08, 0x00, // wMaxPacketSize 8
|
||||
0x14, // bInterval 20 (unit depends on device speed)
|
||||
|
||||
// 43 bytes
|
|
@ -0,0 +1,42 @@
|
|||
0x12, // bLength
|
||||
0x01, // bDescriptorType (Device)
|
||||
0x10, 0x01, // bcdUSB 1.10
|
||||
0xFF, // bDeviceClass
|
||||
0xFF, // bDeviceSubClass
|
||||
0x00, // bDeviceProtocol
|
||||
0x08, // bMaxPacketSize0 8
|
||||
0xE4, 0x0A, // idVendor 0x0AE4
|
||||
0x07, 0x00, // idProduct 0x07
|
||||
0x02, 0x01, // bcdDevice 2.02
|
||||
0x01, // iManufacturer (String Index) "TAITO"
|
||||
0x02, // iProduct (String Index) "TAITO_DENSYA_CON_T03"
|
||||
0x03, // iSerialNumber (String Index) "TCPP20014"
|
||||
0x01, // bNumConfigurations 1
|
||||
|
||||
0x09, // bLength
|
||||
0x02, // bDescriptorType (Configuration)
|
||||
0x19, 0x00, // wTotalLength 25
|
||||
0x01, // bNumInterfaces 1
|
||||
0x01, // bConfigurationValue
|
||||
0x00, // iConfiguration (String Index)
|
||||
0xA0, // bmAttributes Remote Wakeup
|
||||
0xFA, // bMaxPower 500mA
|
||||
|
||||
0x09, // bLength
|
||||
0x04, // bDescriptorType (Interface)
|
||||
0x00, // bInterfaceNumber 0
|
||||
0x00, // bAlternateSetting
|
||||
0x01, // bNumEndpoints 1
|
||||
0x03, // bInterfaceClass
|
||||
0x00, // bInterfaceSubClass
|
||||
0x00, // bInterfaceProtocol
|
||||
0x00, // iInterface (String Index)
|
||||
|
||||
0x07, // bLength
|
||||
0x05, // bDescriptorType (Endpoint)
|
||||
0x81, // bEndpointAddress (IN/D2H)
|
||||
0x03, // bmAttributes (Interrupt)
|
||||
0x08, 0x00, // wMaxPacketSize 8
|
||||
0x14, // bInterval 20 (unit depends on device speed)
|
||||
|
||||
// 43 bytes
|
|
@ -0,0 +1,47 @@
|
|||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x09, 0x05, // Usage (Game Pad)
|
||||
0xA1, 0x01, // Collection (Application)
|
||||
0x15, 0x00, // Logical Minimum (0)
|
||||
0x25, 0x01, // Logical Maximum (1)
|
||||
0x35, 0x00, // Physical Minimum (0)
|
||||
0x45, 0x01, // Physical Maximum (1)
|
||||
0x75, 0x01, // Report Size (1)
|
||||
0x95, 0x0E, // Report Count (14)
|
||||
0x05, 0x09, // Usage Page (Button)
|
||||
0x19, 0x01, // Usage Minimum (0x01)
|
||||
0x29, 0x0E, // Usage Maximum (0x0E)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x95, 0x02, // Report Count (2)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
|
||||
0x25, 0x07, // Logical Maximum (7)
|
||||
0x46, 0x3B, 0x01, // Physical Maximum (315)
|
||||
0x75, 0x04, // Report Size (4)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x65, 0x14, // Unit (System: English Rotation, Length: Centimeter)
|
||||
0x09, 0x39, // Usage (Hat switch)
|
||||
0x81, 0x42, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,Null State)
|
||||
0x65, 0x00, // Unit (None)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x26, 0xFF, 0x00, // Logical Maximum (255)
|
||||
0x46, 0xFF, 0x00, // Physical Maximum (255)
|
||||
0x09, 0x30, // Usage (X)
|
||||
0x09, 0x31, // Usage (Y)
|
||||
0x09, 0x32, // Usage (Z)
|
||||
0x09, 0x35, // Usage (Rz)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x04, // Report Count (4)
|
||||
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x01, // Report Count (1)
|
||||
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
|
||||
0x0A, 0x4F, 0x48, // Usage (0x484F)
|
||||
0x75, 0x08, // Report Size (8)
|
||||
0x95, 0x08, // Report Count (8)
|
||||
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0x0A, 0x4F, 0x48, // Usage (0x484F)
|
||||
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile)
|
||||
0xC0, // End Collection
|
||||
|
||||
// 94 bytes
|
|
@ -0,0 +1,57 @@
|
|||
0x12, // bLength
|
||||
0x01, // bDescriptorType (Device)
|
||||
0x00, 0x02, // bcdUSB 2.00
|
||||
0x00, // bDeviceClass (Use class information in the Interface Descriptors)
|
||||
0x00, // bDeviceSubClass
|
||||
0x00, // bDeviceProtocol
|
||||
0x40, // bMaxPacketSize0 64
|
||||
0x0D, 0x0F, // idVendor 0x0F0D
|
||||
0xC1, 0x00, // idProduct 0xC1
|
||||
0x06, 0x01, // bcdDevice 2.06
|
||||
0x00, // iManufacturer (String Index)
|
||||
0x02, // iProduct (String Index) "One Handle MasCon for Nintendo Switch"
|
||||
0x00, // iSerialNumber (String Index)
|
||||
0x01, // bNumConfigurations 1
|
||||
|
||||
0x09, // bLength
|
||||
0x02, // bDescriptorType (Configuration)
|
||||
0x29, 0x00, // wTotalLength 41
|
||||
0x01, // bNumInterfaces 1
|
||||
0x01, // bConfigurationValue
|
||||
0x00, // iConfiguration (String Index)
|
||||
0x80, // bmAttributes
|
||||
0xFA, // bMaxPower 500mA
|
||||
|
||||
0x09, // bLength
|
||||
0x04, // bDescriptorType (Interface)
|
||||
0x00, // bInterfaceNumber 0
|
||||
0x00, // bAlternateSetting
|
||||
0x02, // bNumEndpoints 2
|
||||
0x03, // bInterfaceClass
|
||||
0x00, // bInterfaceSubClass
|
||||
0x00, // bInterfaceProtocol
|
||||
0x00, // iInterface (String Index)
|
||||
|
||||
0x09, // bLength
|
||||
0x21, // bDescriptorType (HID)
|
||||
0x11, 0x01, // bcdHID 1.11
|
||||
0x00, // bCountryCode
|
||||
0x01, // bNumDescriptors
|
||||
0x22, // bDescriptorType[0] (HID)
|
||||
0x5E, 0x00, // wDescriptorLength[0] 94
|
||||
|
||||
0x07, // bLength
|
||||
0x05, // bDescriptorType (Endpoint)
|
||||
0x02, // bEndpointAddress (OUT/H2D)
|
||||
0x03, // bmAttributes (Interrupt)
|
||||
0x40, 0x00, // wMaxPacketSize 64
|
||||
0x0A, // bInterval 10 (unit depends on device speed)
|
||||
|
||||
0x07, // bLength
|
||||
0x05, // bDescriptorType (Endpoint)
|
||||
0x81, // bEndpointAddress (IN/D2H)
|
||||
0x03, // bmAttributes (Interrupt)
|
||||
0x40, 0x00, // wMaxPacketSize 64
|
||||
0x0A, // bInterval 10 (unit depends on device speed)
|
||||
|
||||
// 59 bytes
|
10
content/models/wii/_index.md
Normal file
10
content/models/wii/_index.md
Normal file
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: "Nintendo Wii"
|
||||
weight: 4
|
||||
---
|
||||
|
||||
The information in this section applies to the following controllers:
|
||||
|
||||
- **TCPP-20017:** Shinkansen controller
|
||||
|
||||
This controller is similar externally to the PlayStation 2 version of the Shinkansen controller. However, the screen has been replaced by a sticker and there is no pedal, so the only functioning parts are the handles, the buttons and the door lamp. In addition, instead of USB, it connects to a Wiimote using its extension port, like other accessories made for the console. No details are available regarding internal functioning.
|
10
content/references/_index.md
Normal file
10
content/references/_index.md
Normal file
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: "References"
|
||||
weight: 10
|
||||
---
|
||||
|
||||
- General information: <http://autotraintas.hariko.com>
|
||||
- Microsoft Windows: <http://zarala.g2.xrea.com/koneta/dengo/dengo_win.html>
|
||||
- Microsoft Windows: <http://typematic.blog.shinobi.jp/%E3%83%97%E3%83%AC%E3%82%B9%E3%83%86%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%E5%A4%89%E6%8F%9B%E5%99%A8/%E3%82%A2%E3%83%B3%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E3%81%AE%E9%9B%BB%E8%BB%8A%E3%81%A7go-%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%E3%81%AE%E8%A7%A3%E6%9E%90>
|
||||
- Nintendo 64: <https://sites.google.com/site/consoleprotocols/home/nintendo-joy-bus-documentation/n64-specific/train-controller>
|
||||
- Sega Dreamcast: <https://modelrail.otenko.com/arduino/arduino-dreamcast-densha-de-go-controller>
|
Loading…
Add table
Add a link
Reference in a new issue