1
0
mirror of https://github.com/yxrei/bemani-guide.git synced 2024-12-19 10:15:55 +01:00

[chunithm] mention Bottersnike's custom TASOLLER firmware, now that there's a public release

This commit is contained in:
beerpiss 2024-11-28 13:10:56 +07:00
parent 252a17586c
commit 22710cc195
5 changed files with 978 additions and 910 deletions

View File

@ -246,7 +246,21 @@
If you've purchased the controller before then, you will need to update the touch If you've purchased the controller before then, you will need to update the touch
firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html). firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html).
!!! tip "" !!! danger "Please choose one of the two solutions, not both!"
??? tip "Bottersnike's custom firmware"
Bottersnike has written custom firmware for the TASOLLER which fixes many issues with the original
firmware (e.g. dropped and ghost inputs).
To install this firmware, download the latest version of
:material-file-code:`TASOLLER-FirmwareUpdater.exe`, :material-file-cog:`host_aprom.bin` and
:material-file-cog:`led_aprom.bin` from the [release archive](https://gitea.tendokyu.moe/tasoller/host-aprom/releases),
then follow the setup instructions in the [README](https://gitea.tendokyu.moe/tasoller/host-aprom#setup).
You do not need any IO DLLs for this.
??? warning "HID custom firmware"
- Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller. - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller.
Instructions on how to do so is provided in the linked archive. Instructions on how to do so is provided in the linked archive.
@ -299,4 +313,4 @@
If you're interested in using a cabinet slider and air sensors, or possibly even If you're interested in using a cabinet slider and air sensors, or possibly even
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/)
and Discord community is a great place to start! and Discord community is a great place to start!

View File

@ -246,7 +246,19 @@
If you've purchased the controller before then, you will need to update the touch If you've purchased the controller before then, you will need to update the touch
firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html). firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html).
!!! tip "" !!! danger "Please choose one of the two solutions, not both!"
??? tip "Bottersnike's custom firmware"
Bottersnike has written custom firmware for the TASOLLER which fixes many issues with the original
firmware (e.g. dropped and ghost inputs).
To install this firmware, download the latest version of
:material-file-code:`TASOLLER-FirmwareUpdater.exe`, :material-file-cog:`host_aprom.bin` and
:material-file-cog:`led_aprom.bin` from the [release archive](https://gitea.tendokyu.moe/tasoller/host-aprom/releases),
then follow the setup instructions in the [README](https://gitea.tendokyu.moe/tasoller/host-aprom#setup).
??? warning "HID custom firmware"
- Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller. - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller.
Instructions on how to do so is provided in the linked archive. Instructions on how to do so is provided in the linked archive.
@ -299,4 +311,4 @@
If you're interested in using a cabinet slider and air sensors, or possibly even If you're interested in using a cabinet slider and air sensors, or possibly even
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/)
and Discord community is a great place to start! and Discord community is a great place to start!

View File

@ -1,302 +1,316 @@
# CHUNITHM NEW PLUS # CHUNITHM LUMINOUS
<img src="/img/chunithm/sdhd/newplus.png"> <img src="/img/chunithm/sdhd/luminous.png">
!!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data." !!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data."
--- ---
!!! tip "" !!! tip ""
segatools, by default, only accepts keyboard input and does not recognize any segatools, by default, only accepts keyboard input and does not recognize any
controllers. However, it can be configured with IO DLLs to add support for controllers. controllers. However, it can be configured with IO DLLs to add support for controllers.
The controller you plan on using should also be provided with these IO DLLs. If unsure, The controller you plan on using should also be provided with these IO DLLs. If unsure,
check the support section for your controller, or contact the vendor directly. Alternate check the support section for your controller, or contact the vendor directly. Alternate
options for the most common controllers are listed below. options for the most common controllers are listed below.
These IO DLLs should be copied to your game's `App\bin\` folder and referenced in These IO DLLs should be copied to your game's `App\bin\` folder and referenced in
`segatools.ini` under the `[chuniio]` section. `segatools.ini` under the `[chuniio]` section.
!!! tip "" !!! tip ""
If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`), If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`),
then add your DLL's file name after the `=`: then add your DLL's file name after the `=`:
```ini hl_lines="5" ```ini hl_lines="5"
[chuniio] [chuniio]
; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL. ; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.
; (will use chu2to3 engine internally) ; (will use chu2to3 engine internally)
;(1)! ;(1)!
path=controller.dll path=controller.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
!!! tip "" !!! tip ""
If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`), If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`),
uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then
add your DLLs after the `=`: add your DLLs after the `=`:
```ini hl_lines="5 6" ```ini hl_lines="5 6"
[chuniio] [chuniio]
; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs. ; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.
; x86 chuniio to path32, x64 to path64. Both are necessary. ; x86 chuniio to path32, x64 to path64. Both are necessary.
;(1)! ;(1)!
path32=controller_x86.dll path32=controller_x86.dll
path64=controller_x64.dll path64=controller_x64.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
--- ---
### Keyboard ### Keyboard
!!! tip "" !!! tip ""
Keyboard is the default input method, and while not recommended for playing the game, Keyboard is the default input method, and while not recommended for playing the game,
it is useful for testing purposes. it is useful for testing purposes.
The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs. The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs.
If you wish to change the default keybinds, an explanation on how to set these is included If you wish to change the default keybinds, an explanation on how to set these is included
above the `[io3]` section in your `segatools.ini`. above the `[io3]` section in your `segatools.ini`.
--- ---
### Brokenithm ### Brokenithm
!!! tip "" !!! tip ""
Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom
half of the screen as the ground slider, and sliding into the upper half activates the air half of the screen as the ground slider, and sliding into the upper half activates the air
sensors. sensors.
#### Android #### Android
!!! warning !!! warning
Your computer and your Android device must be on the same local network. Your computer and your Android device must be on the same local network.
!!! tip "" !!! tip ""
- Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest) - Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest)
and install it on your Android device. and install it on your Android device.
- Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest) - Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest)
and extract **only `brokenithm_server.exe`** to your `App\bin\` folder. and extract **only `brokenithm_server.exe`** to your `App\bin\` folder.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `brokenithm_server.exe`. A command prompt window should open, saying that - Run `brokenithm_server.exe`. A command prompt window should open, saying that
it is waiting for a device on port 52468. it is waiting for a device on port 52468.
- Open the Brokenithm app on your Android device. Enter your computer's IP address - Open the Brokenithm app on your Android device. Enter your computer's IP address
in the Address box on the top right, then tap Start. in the Address box on the top right, then tap Start.
- Run the game as normal. - Run the game as normal.
??? info "Getting your computer's IP address" ??? info "Getting your computer's IP address"
Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to
the bottom and check the address under the **IPv4 address** field: the bottom and check the address under the **IPv4 address** field:
<img src="/img/chunithm/sdhd/controllers/0_ipaddress.png"> <img src="/img/chunithm/sdhd/controllers/0_ipaddress.png">
That is your computer's IP address. That is your computer's IP address.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.** **This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
??? info "Improving latency" ??? info "Improving latency"
You can improve latency by running Brokenithm with your Android device tethered to You can improve latency by running Brokenithm with your Android device tethered to
your computer. However, this requires a little extra setup: your computer. However, this requires a little extra setup:
- Connect your Android device to your computer with a USB cable. - Connect your Android device to your computer with a USB cable.
- If you haven't enabled Developer options on your device, do it by navigating to - If you haven't enabled Developer options on your device, do it by navigating to
the "About" page in your phone's settings, then tap "Build number" seven times. the "About" page in your phone's settings, then tap "Build number" seven times.
This varies by device, so if unsure, look up the instructions for your specific This varies by device, so if unsure, look up the instructions for your specific
one. one.
- Navigate to Developer options and enable USB debugging. - Navigate to Developer options and enable USB debugging.
- On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip) - On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip)
to your `App\bin\` folder. to your `App\bin\` folder.
- Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the - Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the
address bar, type `cmd`, and hit Enter to open a command prompt. address bar, type `cmd`, and hit Enter to open a command prompt.
- In the command prompt, type the following command: - In the command prompt, type the following command:
```batch ```batch
adb reverse tcp:52468 tcp:52468 adb reverse tcp:52468 tcp:52468
``` ```
- Start `brokenithm_server.exe`. - Start `brokenithm_server.exe`.
- On your Android device, open Brokenithm, and change the address to `0.0.0.0`. - On your Android device, open Brokenithm, and change the address to `0.0.0.0`.
- If the text box to the left of the "SETTINGS" button say "UDP", tap on it - If the text box to the left of the "SETTINGS" button say "UDP", tap on it
once to switch to "TCP" mode. once to switch to "TCP" mode.
- Tap on "START", and you will now be connected via the USB cable. - Tap on "START", and you will now be connected via the USB cable.
- You can now start the game as normal. - You can now start the game as normal.
The next time you play the game, you only need to run the `adb reverse ...` command The next time you play the game, you only need to run the `adb reverse ...` command
again. To do this automatically when the game starts, add a line to the `start.bat` again. To do this automatically when the game starts, add a line to the `start.bat`
script **before** the `brokenithm_server` line: script **before** the `brokenithm_server` line:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min platform-tools\adb reverse tcp:52468 tcp:52468 start /min platform-tools\adb reverse tcp:52468 tcp:52468
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
#### iOS/iPadOS #### iOS/iPadOS
!!! tip "" !!! tip ""
- Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^. - Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^.
- If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/). - If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/).
- If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.** - If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.**
- Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64). - Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64).
- Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z) - Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z)
and extract it to `App\bin\Brokenithm-Server`. and extract it to `App\bin\Brokenithm-Server`.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window - Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window
should open, saying that it is waiting for a device. should open, saying that it is waiting for a device.
- On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a - On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a
USB cable. USB cable.
- Run the game as normal. - Run the game as normal.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.** **This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
### TASOLLER ### TASOLLER
!!! warning !!! warning
This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the
controller after January 2022, the update should have already been applied. controller after January 2022, the update should have already been applied.
If you've purchased the controller before then, you will need to update the touch If you've purchased the controller before then, you will need to update the touch
firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html). firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html).
!!! tip "" !!! danger "Please choose one of the two solutions, not both!"
- Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller. ??? tip "Bottersnike's custom firmware"
Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder. Bottersnike has written custom firmware for the TASOLLER which fixes many issues with the original
They should be functionally the same, but if one doesn't work, you can try the other: firmware (e.g. dropped and ghost inputs).
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
- [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`) To install this firmware, download the latest version of
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: :material-file-code:`TASOLLER-FirmwareUpdater.exe`, :material-file-cog:`host_aprom.bin` and
:material-file-cog:`led_aprom.bin` from the [release archive](https://gitea.tendokyu.moe/tasoller/host-aprom/releases),
```ini then follow the setup instructions in the [README](https://gitea.tendokyu.moe/tasoller/host-aprom#setup).
[chuniio]
path32=chuniio_tasoller.dll;(1)! You do not need any IO DLLs for this.
path64=chuniio_tasoller_x64.dll;(2)!
``` ??? warning "HID custom firmware"
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`. - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller.
2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`. Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder.
- Connect the controller to your computer, and then start the game. They should be functionally the same, but if one doesn't work, you can try the other:
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
### YubiDeck - [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`)
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
!!! tip ""
```ini
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided [chuniio]
in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view). path32=chuniio_tasoller.dll;(1)!
- Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases) path64=chuniio_tasoller_x64.dll;(2)!
and extract it to your `App\bin` folder. ```
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`.
```ini 2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`.
[chuniio]
path32=chuniio_yubideck_chusan.dll - Connect the controller to your computer, and then start the game.
path64=chuniio_yubideck_amdaemon.dll
``` ### YubiDeck
- Optionally, reference the included AimeIO DLL to use the controller's !!! tip ""
built-in card reader:
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided
```ini in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view).
[aimeio] - Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases)
path=aimeio_yubideck.dll and extract it to your `App\bin` folder.
``` - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
- Connect the controller to your computer, and then start the game. ```ini
[chuniio]
### Arcade hardware and other controllers path32=chuniio_yubideck_chusan.dll
path64=chuniio_yubideck_amdaemon.dll
!!! tip "" ```
If you're interested in using a cabinet slider and air sensors, or possibly even - Optionally, reference the included AimeIO DLL to use the controller's
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) built-in card reader:
and Discord community is a great place to start!
```ini
[aimeio]
path=aimeio_yubideck.dll
```
- Connect the controller to your computer, and then start the game.
### Arcade hardware and other controllers
!!! tip ""
If you're interested in using a cabinet slider and air sensors, or possibly even
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/)
and Discord community is a great place to start!

View File

@ -1,302 +1,316 @@
# CHUNITHM SUN # CHUNITHM LUMINOUS
<img src="/img/chunithm/sdhd/sun.png"> <img src="/img/chunithm/sdhd/luminous.png">
!!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data." !!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data."
--- ---
!!! tip "" !!! tip ""
segatools, by default, only accepts keyboard input and does not recognize any segatools, by default, only accepts keyboard input and does not recognize any
controllers. However, it can be configured with IO DLLs to add support for controllers. controllers. However, it can be configured with IO DLLs to add support for controllers.
The controller you plan on using should also be provided with these IO DLLs. If unsure, The controller you plan on using should also be provided with these IO DLLs. If unsure,
check the support section for your controller, or contact the vendor directly. Alternate check the support section for your controller, or contact the vendor directly. Alternate
options for the most common controllers are listed below. options for the most common controllers are listed below.
These IO DLLs should be copied to your game's `App\bin\` folder and referenced in These IO DLLs should be copied to your game's `App\bin\` folder and referenced in
`segatools.ini` under the `[chuniio]` section. `segatools.ini` under the `[chuniio]` section.
!!! tip "" !!! tip ""
If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`), If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`),
then add your DLL's file name after the `=`: then add your DLL's file name after the `=`:
```ini hl_lines="5" ```ini hl_lines="5"
[chuniio] [chuniio]
; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL. ; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.
; (will use chu2to3 engine internally) ; (will use chu2to3 engine internally)
;(1)! ;(1)!
path=controller.dll path=controller.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
!!! tip "" !!! tip ""
If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`), If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`),
uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then
add your DLLs after the `=`: add your DLLs after the `=`:
```ini hl_lines="5 6" ```ini hl_lines="5 6"
[chuniio] [chuniio]
; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs. ; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.
; x86 chuniio to path32, x64 to path64. Both are necessary. ; x86 chuniio to path32, x64 to path64. Both are necessary.
;(1)! ;(1)!
path32=controller_x86.dll path32=controller_x86.dll
path64=controller_x64.dll path64=controller_x64.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
--- ---
### Keyboard ### Keyboard
!!! tip "" !!! tip ""
Keyboard is the default input method, and while not recommended for playing the game, Keyboard is the default input method, and while not recommended for playing the game,
it is useful for testing purposes. it is useful for testing purposes.
The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs. The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs.
If you wish to change the default keybinds, an explanation on how to set these is included If you wish to change the default keybinds, an explanation on how to set these is included
above the `[io3]` section in your `segatools.ini`. above the `[io3]` section in your `segatools.ini`.
--- ---
### Brokenithm ### Brokenithm
!!! tip "" !!! tip ""
Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom
half of the screen as the ground slider, and sliding into the upper half activates the air half of the screen as the ground slider, and sliding into the upper half activates the air
sensors. sensors.
#### Android #### Android
!!! warning !!! warning
Your computer and your Android device must be on the same local network. Your computer and your Android device must be on the same local network.
!!! tip "" !!! tip ""
- Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest) - Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest)
and install it on your Android device. and install it on your Android device.
- Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest) - Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest)
and extract **only `brokenithm_server.exe`** to your `App\bin\` folder. and extract **only `brokenithm_server.exe`** to your `App\bin\` folder.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `brokenithm_server.exe`. A command prompt window should open, saying that - Run `brokenithm_server.exe`. A command prompt window should open, saying that
it is waiting for a device on port 52468. it is waiting for a device on port 52468.
- Open the Brokenithm app on your Android device. Enter your computer's IP address - Open the Brokenithm app on your Android device. Enter your computer's IP address
in the Address box on the top right, then tap Start. in the Address box on the top right, then tap Start.
- Run the game as normal. - Run the game as normal.
??? info "Getting your computer's IP address" ??? info "Getting your computer's IP address"
Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to
the bottom and check the address under the **IPv4 address** field: the bottom and check the address under the **IPv4 address** field:
<img src="/img/chunithm/sdhd/controllers/0_ipaddress.png"> <img src="/img/chunithm/sdhd/controllers/0_ipaddress.png">
That is your computer's IP address. That is your computer's IP address.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.** **This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
??? info "Improving latency" ??? info "Improving latency"
You can improve latency by running Brokenithm with your Android device tethered to You can improve latency by running Brokenithm with your Android device tethered to
your computer. However, this requires a little extra setup: your computer. However, this requires a little extra setup:
- Connect your Android device to your computer with a USB cable. - Connect your Android device to your computer with a USB cable.
- If you haven't enabled Developer options on your device, do it by navigating to - If you haven't enabled Developer options on your device, do it by navigating to
the "About" page in your phone's settings, then tap "Build number" seven times. the "About" page in your phone's settings, then tap "Build number" seven times.
This varies by device, so if unsure, look up the instructions for your specific This varies by device, so if unsure, look up the instructions for your specific
one. one.
- Navigate to Developer options and enable USB debugging. - Navigate to Developer options and enable USB debugging.
- On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip) - On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip)
to your `App\bin\` folder. to your `App\bin\` folder.
- Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the - Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the
address bar, type `cmd`, and hit Enter to open a command prompt. address bar, type `cmd`, and hit Enter to open a command prompt.
- In the command prompt, type the following command: - In the command prompt, type the following command:
```batch ```batch
adb reverse tcp:52468 tcp:52468 adb reverse tcp:52468 tcp:52468
``` ```
- Start `brokenithm_server.exe`. - Start `brokenithm_server.exe`.
- On your Android device, open Brokenithm, and change the address to `0.0.0.0`. - On your Android device, open Brokenithm, and change the address to `0.0.0.0`.
- If the text box to the left of the "SETTINGS" button say "UDP", tap on it - If the text box to the left of the "SETTINGS" button say "UDP", tap on it
once to switch to "TCP" mode. once to switch to "TCP" mode.
- Tap on "START", and you will now be connected via the USB cable. - Tap on "START", and you will now be connected via the USB cable.
- You can now start the game as normal. - You can now start the game as normal.
The next time you play the game, you only need to run the `adb reverse ...` command The next time you play the game, you only need to run the `adb reverse ...` command
again. To do this automatically when the game starts, add a line to the `start.bat` again. To do this automatically when the game starts, add a line to the `start.bat`
script **before** the `brokenithm_server` line: script **before** the `brokenithm_server` line:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min platform-tools\adb reverse tcp:52468 tcp:52468 start /min platform-tools\adb reverse tcp:52468 tcp:52468
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
#### iOS/iPadOS #### iOS/iPadOS
!!! tip "" !!! tip ""
- Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^. - Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^.
- If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/). - If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/).
- If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.** - If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.**
- Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64). - Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64).
- Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z) - Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z)
and extract it to `App\bin\Brokenithm-Server`. and extract it to `App\bin\Brokenithm-Server`.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window - Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window
should open, saying that it is waiting for a device. should open, saying that it is waiting for a device.
- On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a - On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a
USB cable. USB cable.
- Run the game as normal. - Run the game as normal.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.** **This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
### TASOLLER ### TASOLLER
!!! warning !!! warning
This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the
controller after January 2022, the update should have already been applied. controller after January 2022, the update should have already been applied.
If you've purchased the controller before then, you will need to update the touch If you've purchased the controller before then, you will need to update the touch
firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html). firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html).
!!! tip "" !!! danger "Please choose one of the two solutions, not both!"
- Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller. ??? tip "Bottersnike's custom firmware"
Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder. Bottersnike has written custom firmware for the TASOLLER which fixes many issues with the original
They should be functionally the same, but if one doesn't work, you can try the other: firmware (e.g. dropped and ghost inputs).
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
- [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`) To install this firmware, download the latest version of
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: :material-file-code:`TASOLLER-FirmwareUpdater.exe`, :material-file-cog:`host_aprom.bin` and
:material-file-cog:`led_aprom.bin` from the [release archive](https://gitea.tendokyu.moe/tasoller/host-aprom/releases),
```ini then follow the setup instructions in the [README](https://gitea.tendokyu.moe/tasoller/host-aprom#setup).
[chuniio]
path32=chuniio_tasoller.dll;(1)! You do not need any IO DLLs for this.
path64=chuniio_tasoller_x64.dll;(2)!
``` ??? warning "HID custom firmware"
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`. - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller.
2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`. Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder.
- Connect the controller to your computer, and then start the game. They should be functionally the same, but if one doesn't work, you can try the other:
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
### YubiDeck - [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`)
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
!!! tip ""
```ini
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided [chuniio]
in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view). path32=chuniio_tasoller.dll;(1)!
- Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases) path64=chuniio_tasoller_x64.dll;(2)!
and extract it to your `App\bin` folder. ```
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`.
```ini 2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`.
[chuniio]
path32=chuniio_yubideck_chusan.dll - Connect the controller to your computer, and then start the game.
path64=chuniio_yubideck_amdaemon.dll
``` ### YubiDeck
- Optionally, reference the included AimeIO DLL to use the controller's !!! tip ""
built-in card reader:
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided
```ini in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view).
[aimeio] - Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases)
path=aimeio_yubideck.dll and extract it to your `App\bin` folder.
``` - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
- Connect the controller to your computer, and then start the game. ```ini
[chuniio]
### Arcade hardware and other controllers path32=chuniio_yubideck_chusan.dll
path64=chuniio_yubideck_amdaemon.dll
!!! tip "" ```
If you're interested in using a cabinet slider and air sensors, or possibly even - Optionally, reference the included AimeIO DLL to use the controller's
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) built-in card reader:
and Discord community is a great place to start!
```ini
[aimeio]
path=aimeio_yubideck.dll
```
- Connect the controller to your computer, and then start the game.
### Arcade hardware and other controllers
!!! tip ""
If you're interested in using a cabinet slider and air sensors, or possibly even
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/)
and Discord community is a great place to start!

View File

@ -1,302 +1,316 @@
# CHUNITHM SUN PLUS # CHUNITHM LUMINOUS
<img src="/img/chunithm/sdhd/sunplus.png"> <img src="/img/chunithm/sdhd/luminous.png">
!!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data." !!! danger "Please make sure you downloaded your data from an appropriate source.<br>This guide is unable to troubleshoot any problems related to bad or poorly managed data."
--- ---
!!! tip "" !!! tip ""
segatools, by default, only accepts keyboard input and does not recognize any segatools, by default, only accepts keyboard input and does not recognize any
controllers. However, it can be configured with IO DLLs to add support for controllers. controllers. However, it can be configured with IO DLLs to add support for controllers.
The controller you plan on using should also be provided with these IO DLLs. If unsure, The controller you plan on using should also be provided with these IO DLLs. If unsure,
check the support section for your controller, or contact the vendor directly. Alternate check the support section for your controller, or contact the vendor directly. Alternate
options for the most common controllers are listed below. options for the most common controllers are listed below.
These IO DLLs should be copied to your game's `App\bin\` folder and referenced in These IO DLLs should be copied to your game's `App\bin\` folder and referenced in
`segatools.ini` under the `[chuniio]` section. `segatools.ini` under the `[chuniio]` section.
!!! tip "" !!! tip ""
If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`), If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`),
then add your DLL's file name after the `=`: then add your DLL's file name after the `=`:
```ini hl_lines="5" ```ini hl_lines="5"
[chuniio] [chuniio]
; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL. ; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.
; (will use chu2to3 engine internally) ; (will use chu2to3 engine internally)
;(1)! ;(1)!
path=controller.dll path=controller.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
!!! tip "" !!! tip ""
If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`), If you have two DLLs, ending in `_x86.dll` and `_x64.dll` (or `_chusan.dll` and `_amdaemon.dll`),
uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then uncomment the `path32=` and `path64=` lines by removing the leading semicolon (`;`), then
add your DLLs after the `=`: add your DLLs after the `=`:
```ini hl_lines="5 6" ```ini hl_lines="5 6"
[chuniio] [chuniio]
; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs. ; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.
; x86 chuniio to path32, x64 to path64. Both are necessary. ; x86 chuniio to path32, x64 to path64. Both are necessary.
;(1)! ;(1)!
path32=controller_x86.dll path32=controller_x86.dll
path64=controller_x64.dll path64=controller_x64.dll
``` ```
1. Note that there is no leading semicolon. 1. Note that there is no leading semicolon.
--- ---
### Keyboard ### Keyboard
!!! tip "" !!! tip ""
Keyboard is the default input method, and while not recommended for playing the game, Keyboard is the default input method, and while not recommended for playing the game,
it is useful for testing purposes. it is useful for testing purposes.
The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs. The default layout uses `SDFGHJKL` for slider input, and `Space Bar` for the AIRs.
If you wish to change the default keybinds, an explanation on how to set these is included If you wish to change the default keybinds, an explanation on how to set these is included
above the `[io3]` section in your `segatools.ini`. above the `[io3]` section in your `segatools.ini`.
--- ---
### Brokenithm ### Brokenithm
!!! tip "" !!! tip ""
Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom
half of the screen as the ground slider, and sliding into the upper half activates the air half of the screen as the ground slider, and sliding into the upper half activates the air
sensors. sensors.
#### Android #### Android
!!! warning !!! warning
Your computer and your Android device must be on the same local network. Your computer and your Android device must be on the same local network.
!!! tip "" !!! tip ""
- Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest) - Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest)
and install it on your Android device. and install it on your Android device.
- Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest) - Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest)
and extract **only `brokenithm_server.exe`** to your `App\bin\` folder. and extract **only `brokenithm_server.exe`** to your `App\bin\` folder.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `brokenithm_server.exe`. A command prompt window should open, saying that - Run `brokenithm_server.exe`. A command prompt window should open, saying that
it is waiting for a device on port 52468. it is waiting for a device on port 52468.
- Open the Brokenithm app on your Android device. Enter your computer's IP address - Open the Brokenithm app on your Android device. Enter your computer's IP address
in the Address box on the top right, then tap Start. in the Address box on the top right, then tap Start.
- Run the game as normal. - Run the game as normal.
??? info "Getting your computer's IP address" ??? info "Getting your computer's IP address"
Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to Open **Settings** -> **Network and Internet** and select **Properties**. Scroll down to
the bottom and check the address under the **IPv4 address** field: the bottom and check the address under the **IPv4 address** field:
<img src="/img/chunithm/sdhd/controllers/0_ipaddress.png"> <img src="/img/chunithm/sdhd/controllers/0_ipaddress.png">
That is your computer's IP address. That is your computer's IP address.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.** **This will only work if you extracted `brokenithm_server.exe` to `App\bin\` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
??? info "Improving latency" ??? info "Improving latency"
You can improve latency by running Brokenithm with your Android device tethered to You can improve latency by running Brokenithm with your Android device tethered to
your computer. However, this requires a little extra setup: your computer. However, this requires a little extra setup:
- Connect your Android device to your computer with a USB cable. - Connect your Android device to your computer with a USB cable.
- If you haven't enabled Developer options on your device, do it by navigating to - If you haven't enabled Developer options on your device, do it by navigating to
the "About" page in your phone's settings, then tap "Build number" seven times. the "About" page in your phone's settings, then tap "Build number" seven times.
This varies by device, so if unsure, look up the instructions for your specific This varies by device, so if unsure, look up the instructions for your specific
one. one.
- Navigate to Developer options and enable USB debugging. - Navigate to Developer options and enable USB debugging.
- On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip) - On your computer, download and extract [Android SDK Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip)
to your `App\bin\` folder. to your `App\bin\` folder.
- Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the - Navigate to the `App\bin\platform-tools` folder in File Explorer, click on the
address bar, type `cmd`, and hit Enter to open a command prompt. address bar, type `cmd`, and hit Enter to open a command prompt.
- In the command prompt, type the following command: - In the command prompt, type the following command:
```batch ```batch
adb reverse tcp:52468 tcp:52468 adb reverse tcp:52468 tcp:52468
``` ```
- Start `brokenithm_server.exe`. - Start `brokenithm_server.exe`.
- On your Android device, open Brokenithm, and change the address to `0.0.0.0`. - On your Android device, open Brokenithm, and change the address to `0.0.0.0`.
- If the text box to the left of the "SETTINGS" button say "UDP", tap on it - If the text box to the left of the "SETTINGS" button say "UDP", tap on it
once to switch to "TCP" mode. once to switch to "TCP" mode.
- Tap on "START", and you will now be connected via the USB cable. - Tap on "START", and you will now be connected via the USB cable.
- You can now start the game as normal. - You can now start the game as normal.
The next time you play the game, you only need to run the `adb reverse ...` command The next time you play the game, you only need to run the `adb reverse ...` command
again. To do this automatically when the game starts, add a line to the `start.bat` again. To do this automatically when the game starts, add a line to the `start.bat`
script **before** the `brokenithm_server` line: script **before** the `brokenithm_server` line:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min platform-tools\adb reverse tcp:52468 tcp:52468 start /min platform-tools\adb reverse tcp:52468 tcp:52468
start /min brokenithm_server start /min brokenithm_server
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
#### iOS/iPadOS #### iOS/iPadOS
!!! tip "" !!! tip ""
- Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^. - Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/U6kwvETm) ^^(iOS 18 only)^^.
- If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/). - If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/).
- If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.** - If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, **uninstall it.**
- Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64). - Install the **non-Microsoft Store** version of iTunes from the [website](https://www.apple.com/itunes/download/win64).
- Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z) - Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z)
and extract it to `App\bin\Brokenithm-Server`. and extract it to `App\bin\Brokenithm-Server`.
- Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder.
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
```ini hl_lines="2" ```ini hl_lines="2"
[aimeio] [aimeio]
path=aime_brokenithm.dll path=aime_brokenithm.dll
``` ```
```ini hl_lines="2 3" ```ini hl_lines="2 3"
[chuniio] [chuniio]
path32=brokenithm_x86.dll path32=brokenithm_x86.dll
path64=brokenithm_x64.dll path64=brokenithm_x64.dll
``` ```
- Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window - Run `App\bin\Brokenithm-Server\Brokenithm-Evolved-iOS.exe`. A command prompt window
should open, saying that it is waiting for a device. should open, saying that it is waiting for a device.
- On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a - On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a
USB cable. USB cable.
- Run the game as normal. - Run the game as normal.
??? info "Automatically launching the Brokenithm server when starting the game" ??? info "Automatically launching the Brokenithm server when starting the game"
**This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.** **This will only work if you extracted the server to `App\bin\Brokenithm-Server` as previously instructed.**
You can edit the launch script to launch the Brokenithm server when starting the game. You can edit the launch script to launch the Brokenithm server when starting the game.
Edit `App\bin\start.bat` to add a line above the existing commands: Edit `App\bin\start.bat` to add a line above the existing commands:
```batch hl_lines="5" ```batch hl_lines="5"
@echo off @echo off
pushd %~dp0 pushd %~dp0
start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe
start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json start /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json
inject_x86 -d -k chusanhook_x86.dll chusanApp.exe inject_x86 -d -k chusanhook_x86.dll chusanApp.exe
taskkill /f /im amdaemon.exe > nul 2>&1 taskkill /f /im amdaemon.exe > nul 2>&1
echo. echo.
echo Game processes have terminated echo Game processes have terminated
pause pause
``` ```
### TASOLLER ### TASOLLER
!!! warning !!! warning
This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the
controller after January 2022, the update should have already been applied. controller after January 2022, the update should have already been applied.
If you've purchased the controller before then, you will need to update the touch If you've purchased the controller before then, you will need to update the touch
firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html). firmware by following the instructions on [DJ-DAO's support page](https://www.dj-dao.com/en/support/11.html).
!!! tip "" !!! danger "Please choose one of the two solutions, not both!"
- Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller. ??? tip "Bottersnike's custom firmware"
Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder. Bottersnike has written custom firmware for the TASOLLER which fixes many issues with the original
They should be functionally the same, but if one doesn't work, you can try the other: firmware (e.g. dropped and ghost inputs).
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
- [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`) To install this firmware, download the latest version of
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs: :material-file-code:`TASOLLER-FirmwareUpdater.exe`, :material-file-cog:`host_aprom.bin` and
:material-file-cog:`led_aprom.bin` from the [release archive](https://gitea.tendokyu.moe/tasoller/host-aprom/releases),
```ini then follow the setup instructions in the [README](https://gitea.tendokyu.moe/tasoller/host-aprom#setup).
[chuniio]
path32=chuniio_tasoller.dll;(1)! You do not need any IO DLLs for this.
path64=chuniio_tasoller_x64.dll;(2)!
``` ??? warning "HID custom firmware"
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`. - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) to your controller.
2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`. Instructions on how to do so is provided in the linked archive.
- Pick one of these two TASOLLER IO DLLs to download and extract to your `App\bin` folder.
- Connect the controller to your computer, and then start the game. They should be functionally the same, but if one doesn't work, you can try the other:
- [chuniio-tasoller](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`)
### YubiDeck - [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`)
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
!!! tip ""
```ini
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided [chuniio]
in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view). path32=chuniio_tasoller.dll;(1)!
- Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases) path64=chuniio_tasoller_x64.dll;(2)!
and extract it to your `App\bin` folder. ```
- Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`.
```ini 2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`.
[chuniio]
path32=chuniio_yubideck_chusan.dll - Connect the controller to your computer, and then start the game.
path64=chuniio_yubideck_amdaemon.dll
``` ### YubiDeck
- Optionally, reference the included AimeIO DLL to use the controller's !!! tip ""
built-in card reader:
- Switch your YubiDeck to HID output mode. Instructions on how to do so are provided
```ini in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view).
[aimeio] - Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases)
path=aimeio_yubideck.dll and extract it to your `App\bin` folder.
``` - Edit your `App\bin\segatools.ini` to reference the extracted DLLs:
- Connect the controller to your computer, and then start the game. ```ini
[chuniio]
### Arcade hardware and other controllers path32=chuniio_yubideck_chusan.dll
path64=chuniio_yubideck_amdaemon.dll
!!! tip "" ```
If you're interested in using a cabinet slider and air sensors, or possibly even - Optionally, reference the included AimeIO DLL to use the controller's
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) built-in card reader:
and Discord community is a great place to start!
```ini
[aimeio]
path=aimeio_yubideck.dll
```
- Connect the controller to your computer, and then start the game.
### Arcade hardware and other controllers
!!! tip ""
If you're interested in using a cabinet slider and air sensors, or possibly even
making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/)
and Discord community is a great place to start!