mu3, chusan: improved library doc

This commit is contained in:
Dniel97 2024-05-15 21:42:15 +02:00
parent 9fe98b227b
commit 3bfb046afc
Signed by untrusted user: Dniel97
GPG Key ID: 6180B3C768FB2E08
3 changed files with 47 additions and 15 deletions

View File

@ -163,9 +163,17 @@ HRESULT chuni_io_led_init(void);
Chunithm uses two chains/boards with WS2811 protocol (each logical led corresponds to 3 physical leds). Chunithm uses two chains/boards with WS2811 protocol (each logical led corresponds to 3 physical leds).
board 0 is on the left side and board 1 on the right side of the cab board 0 is on the left side and board 1 on the right side of the cab
left side has 5*10 rgb values for the billboard, followed by 3 rgb values for the air tower Board 0 has 53 LEDs:
right side has 6*10 rgb values for the billboard, followed by 3 rgb values for the air tower [0]-[49]: snakes through left half of billboard (first column starts at top)
[50]-[52]: left side partition LEDs
Board 1 has 63 LEDs:
[0]-[59]: right half of billboard (first column starts at bottom)
[60]-[62]: right side partition LEDs
Board 2 is the slider and has 31 LEDs:
[0]-[31]: slider LEDs right to left BRG, alternating between keys and dividers
Each rgb value is comprised of 3 bytes in R,G,B order Each rgb value is comprised of 3 bytes in R,G,B order
NOTE: billboard strips have alternating direction (bottom to top, top to bottom, ...) NOTE: billboard strips have alternating direction (bottom to top, top to bottom, ...)

View File

@ -69,6 +69,18 @@ freeplay=0
; this to 1 on exactly one machine and set this to 0 on all others. ; this to 1 on exactly one machine and set this to 0 on all others.
dipsw1=1 dipsw1=1
; -----------------------------------------------------------------------------
; Misc. hook settings
; -----------------------------------------------------------------------------
[unity]
; Enable Unity hook. This will allow you to run custom .NET code before the game
enable=1
; Path to a .NET DLL that should run before the game. Useful for loading
; modding frameworks such as BepInEx.
targetAssembly=
; ----------------------------------------------------------------------------- ; -----------------------------------------------------------------------------
; Custom IO settings ; Custom IO settings
; ----------------------------------------------------------------------------- ; -----------------------------------------------------------------------------
@ -83,15 +95,6 @@ path=
; Leave empty if you want to use Segatools built-in keyboard input. ; Leave empty if you want to use Segatools built-in keyboard input.
path= path=
; -----------------------------------------------------------------------------
; Misc. hook settings
; -----------------------------------------------------------------------------
[unity]
; Path to a .NET DLL that should run before the game. Useful for loading
; modding frameworks such as BepInEx.
targetAssembly=
; ----------------------------------------------------------------------------- ; -----------------------------------------------------------------------------
; Input settings ; Input settings
; ----------------------------------------------------------------------------- ; -----------------------------------------------------------------------------

View File

@ -123,12 +123,33 @@ void mu3_io_get_lever(int16_t *pos);
All subsequent calls may originate from arbitrary threads and some may All subsequent calls may originate from arbitrary threads and some may
overlap with each other. Ensuring synchronization inside your IO DLL is overlap with each other. Ensuring synchronization inside your IO DLL is
your responsibility. */ your responsibility.
Minimum API version: 0x0101 */
HRESULT mu3_io_led_init(void); HRESULT mu3_io_led_init(void);
/* Update the RGB LEDs. /* Update the RGB LEDs. rgb is a pointer to an array of up to 61 * 3 = 183 bytes.
Exact layout is TBD. */ ONGEKI uses one board with WS2811 protocol (each logical led corresponds to 3
physical leds). Board 0 is used for all cab lights and both WAD button lights.
Board 0 has 61 LEDs:
[0]-[1]: left side button
[2]-[8]: left pillar lower LEDs
[9]-[17]: left pillar center LEDs
[18]-[24]: left pillar upper LEDs
[25]-[35]: billboard LEDs
[36]-[42]: right pillar upper LEDs
[43]-[51]: right pillar center LEDs
[52]-[58]: right pillar lower LEDs
[59]-[60]: right side button
Board 1 has 6 LEDs:
[0]-[5]: 3 left and 3 right controller buttons
Each rgb value is comprised of 3 bytes in R,G,B order
Minimum API version: 0x0101 */
void mu3_io_led_set_colors(uint8_t board, uint8_t *rgb); void mu3_io_led_set_colors(uint8_t board, uint8_t *rgb);