ChuniIO for Tasoller, but in Rust
This repository has been archived on 2023-12-27. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
beerpsi 4699db1b27 Bump API version to 0x0102
https://gitea.tendokyu.moe/Dniel97/segatools/src/branch/chuniio/chuniio/chuniio.h#L11
2023-12-25 23:36:02 +07:00
.idea formatting 2023-12-22 23:54:06 +07:00
chuniio-tasoller-amdaemon Bump API version to 0x0102 2023-12-25 23:36:02 +07:00
chuniio-tasoller-chusan Bump API version to 0x0102 2023-12-25 23:36:02 +07:00
chuniio-tasoller-common formatting 2023-12-22 23:54:06 +07:00
vendor/shared_memory minimize build size (800kb -> 200kb) 2023-12-22 23:07:55 +07:00
.gitignore Initial commit 2023-12-21 11:51:02 +07:00
Cargo.toml formatting 2023-12-22 23:54:06 +07:00
LICENSE Initial commit 2023-12-21 04:48:17 +00:00
README.md works 2023-12-21 12:06:02 +07:00
rustfmt.toml formatting 2023-12-22 23:54:06 +07:00

README.md

chuniio-tasoller

ChuniIO driver for Tasoller CFW 2.0 written in Rust

Thanks to:

  • akiros for the original code (in Zig) and protocol information

Supported versions:

  • CHUNITHM SUN PLUS

Anything aftern CHUNITHM NEW should work, but unsupported because untested.

Configuration

segatools.ini

[chuniio]
;; For Chunithm NEW or newer
path32=chuniio_tasoller_chusan.dll
path64=chuniio_tasoller_amdaemon.dll

[io3]
test=0x31
service=0x32
coin=0x33

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 instructions

cargo build --target i686-pc-windows-msvc -p chuniio-tasoller-chusan --release
cargo build --target x86_64-pc-windows-msvc -p chuniio-tasoller-amdaemon --release

ls target/i686-pc-windows-msvc/release/chuniio_tasoller_chusan.dll
ls target/x86_64-pc-windows-msvc/release/chuniio_tasoller_amdaemon.dll