chuniio-tasoller/README.md
Scribbler 1bc0bc65e3 Update README.md
Removed reference to chuniio branch, as all versions of Dniel97 segatools now support the LED change
2024-06-09 21:39:35 +00:00

65 lines
1.7 KiB
Markdown

## chuniio-tasoller *with air tower LEDs*
chuniio driver for tasoller custom 2.0 firmware
now with working air tower LEDs when using [Dniel97 segatools](https://gitea.tendokyu.moe/Dniel97/segatools/src/branch/chuniio)
thanks to:
- [**akiroz**](https://dev.s-ul.net/akiroz/chuniio-tasoller) for the original code and USB Protocol information
- [**Dniel97**](https://gitea.tendokyu.moe/Dniel97) for rewritting my failed attempts at making this work
the current implementation may not be fully arcade accurate, but should be visually acceptable during gameplay
this should hopefully be addressed in the future
Supported titles:
- Chunithm
- Chunithm NEW
- Chunithm NEW PLUS
- Chunithm SUN
- Chunithm SUN PLUS
- Chunithm LUMINOUS
## Configuration
segatools.ini
```ini
[chuniio]
;; For Chunithm
;path=chuniio_tasoller.dll
;; For Chunithm NEW or newer
path32=chuniio_tasoller.dll
path64=chuniio_tasoller_x64.dll
;; Uncomment for Chunithm NEW or newer
chusan=1
```
## USB Protocol
Custom firmware USB device: 1CCF:2333
- Interface 1
- Endpoint 4 IN Interrupt (0x84)
- data len: 36 bytes
- data[0-2]: {0x68, 0x66, 0x84} (magic?)
- data[3]
- bit 0-5: beam 1-6 (1 = blocked)
- bit 6-7: fn1 & fn2 (1 = pressed)
- data[4-35]: touch sensor 1-32 pressure
- Endpoint 3 OUT Bulk (0x03)
- data len: 240 bytes
- data[0-2]: {0x42, 0x4C, 0x00} (magic?)
- data[3-95]: Slider LED (GRB order, right->left)
- data[96-167]: Left LED (GRB order top->bottom)
- data[168-239]: Right LED (GRB order bottom->top)
### Build
```
$ git clone ...
$ git submodule update --init
$ zig build -Doptimize=ReleaseSafe
$ ls zig-out/lib/chuniio_tasoller.dll
```