From e40e1dffe3e41e928862f16e32e89d8f23ea63d8 Mon Sep 17 00:00:00 2001 From: Dniel97 Date: Wed, 21 Feb 2024 21:58:44 +0100 Subject: [PATCH] improved all `segatools.ini` configs --- dist/carol/segatools.ini | 47 +++++++++++++++++-- dist/chuni/segatools.ini | 34 ++++++++++++++ dist/chusan/segatools.ini | 36 +++++++++++++-- dist/cm/segatools.ini | 28 ++++++++++++ dist/cxb/segatools.ini | 86 +++++++++++++++++++++++++++-------- dist/diva/segatools.ini | 34 ++++++++++++++ dist/fgo/segatools.ini | 93 ++++++++++++++++++++++++++++++++------ dist/idac/segatools.ini | 40 +++++++++++++++- dist/idz/segatools.ini | 66 +++++++++++++++++++++------ dist/mai2/segatools.ini | 36 ++++++++++++++- dist/mercury/segatools.ini | 71 +++++++++++++++++++++-------- dist/mu3/segatools.ini | 52 +++++++++++++++++++-- dist/swdc/segatools.ini | 56 +++++++++++++++++++---- fgoio/fgoio.c | 4 +- segatools.md | 2 +- 15 files changed, 594 insertions(+), 91 deletions(-) diff --git a/dist/carol/segatools.ini b/dist/carol/segatools.ini index a73747f..e79cf13 100644 --- a/dist/carol/segatools.ini +++ b/dist/carol/segatools.ini @@ -1,23 +1,56 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= -; Insert the path to the game Option directory here (contains Axxx directories) +; Insert the path to the game Option directory here (contains MOV1, PAR0, +; PAR1, RES0 and RES1 directories) option= ; Create an empty directory somewhere and insert the path here. ; This directory may be shared between multiple SEGA games. ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + +[aime] +; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime +; reader. +enable=1 +aimePath=DEVICE\aime.txt + +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. default=127.0.0.1 [netenv] -; Simulate an ideal LAN environment. +; Simulate an ideal LAN environment. This may interfere with head-to-head play. +; Chunithm is extremely picky about its LAN environment, so leaving this +; setting enabled is strongly recommended. enable=1 +; The final octet of the local host's IP address on the virtualized subnet (so, +; if the keychip subnet is `192.168.32.0` and this value is set to `11`, then the +; local host's virtualized LAN IP is `192.168.32.11`). +addrSuffix=11 + +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- [gpio] +; Emulated Nu DIP switch for Distribution Server setting. +; +; If multiple machines are present on the same LAN then set this to 1 on +; exactly one machine and set this to 0 on all others. dipsw1=1 [keychip] @@ -26,6 +59,10 @@ dipsw1=1 ; that subnet must start with 192.168. subnet=192.168.126.0 +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + [gfx] ; Force the game to run windowed. windowed=1 @@ -34,6 +71,10 @@ framed=1 ; Select the monitor to run the game on. (Fullscreen only, 0 =primary screen) monitor=0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + [aimeio] ; To use a custom card reader IO DLL enter its path here. ; Leave empty if you want to use Segatools built-in keyboard input. @@ -57,4 +98,4 @@ test=0x70 ; Service button virtual-key code. Default is the F2 key. service=0x71 ; Keyboard button to increment coin counter. Default is the F3 key. -coin=0x72 \ No newline at end of file +coin=0x72 diff --git a/dist/chuni/segatools.ini b/dist/chuni/segatools.ini index 69bc339..5497643 100644 --- a/dist/chuni/segatools.ini +++ b/dist/chuni/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,20 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + +[aime] +; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime +; reader. +enable=1 +aimePath=DEVICE\aime.txt + +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -23,12 +41,20 @@ enable=1 ; local host's virtualized LAN IP is `192.168.32.11`). addrSuffix=11 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and ; that subnet must start with 192.168. subnet=192.168.139.0 +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + [gfx] ; Force the game to run windowed. windowed=1 @@ -37,6 +63,10 @@ framed=1 ; Select the monitor to run the game on. (Fullscreen only, 0 =primary screen) monitor=0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + [aimeio] ; To use a custom card reader IO DLL enter its path here. ; Leave empty if you want to use Segatools built-in keyboard input. @@ -47,6 +77,10 @@ path= ; Leave empty if you want to use Segatools built-in keyboard input. path= +; ----------------------------------------------------------------------------- +; LED settings +; ----------------------------------------------------------------------------- + [led15093] ; Enable emulation of the 15093-06 controlled lights, which handle the air tower ; RGBs and the rear LED panel (billboard) on the cabinet. diff --git a/dist/chusan/segatools.ini b/dist/chusan/segatools.ini index 72e3fd4..a5e3d51 100644 --- a/dist/chusan/segatools.ini +++ b/dist/chusan/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,10 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -21,10 +29,9 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 -[aimeio] -; Uncomment this if you have custom (x64) aime implementation. -; Leave empty if you want to use Segatools built-in keyboard input. -;path= +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- [dns] ; Insert the hostname or IP address of the server you wish to use here. @@ -41,6 +48,10 @@ enable=1 ; local host's virtualized LAN IP is `192.168.32.11`). addrSuffix=11 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and @@ -65,6 +76,10 @@ dipsw2=1 ; the LED 837-15093-06 COM port and the AiMe reder hardware generation as well. dipsw3=1 +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + [gfx] ; Force the game to run windowed. windowed=1 @@ -73,6 +88,15 @@ framed=0 ; Select the monitor to run the game on. (Fullscreen only, 0 =primary screen) monitor=0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL (x64) enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + [chuniio] ; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL. ; (will use chu2to3 engine internally) @@ -83,6 +107,10 @@ monitor=0 ;path32= ;path64= +; ----------------------------------------------------------------------------- +; LED settings +; ----------------------------------------------------------------------------- + [led15093] ; Enable emulation of the 15093-06 controlled lights, which handle the air tower ; RGBs and the rear LED panel (billboard) on the cabinet. diff --git a/dist/cm/segatools.ini b/dist/cm/segatools.ini index 0eb44bf..37f5708 100644 --- a/dist/cm/segatools.ini +++ b/dist/cm/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,10 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -19,6 +27,10 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -30,6 +42,10 @@ default=127.0.0.1 ; setting enabled is recommended. enable=1 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and @@ -44,10 +60,22 @@ enable=1 ; this to 0 on exactly one machine and set this to 1 on all others. dipsw1=0 +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + [touch] ; Enable/Disable WinTouch emulation enable=0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= ; ----------------------------------------------------------------------------- ; Input settings diff --git a/dist/cxb/segatools.ini b/dist/cxb/segatools.ini index 6caf61d..984f609 100644 --- a/dist/cxb/segatools.ini +++ b/dist/cxb/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Make sure theses are full paths and not relative or you will have a bad time ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) @@ -9,6 +13,27 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + +[aime] +; Aime reader emulation +; CXB is stupid, so we have to make the paths go back one +enable=1 +aimePath=../DEVICE/aime.txt +felicaPath=../DEVICE/felica.txt + +[led] +; Emulation for the LED board. Currently it's just dummy responses, +; but if somebody wants to make their keyboard or whatever light +; up with the game they can +enable=1 + +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -20,6 +45,10 @@ default=127.0.0.1 ; setting enabled is strongly recommended. enable=1 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and @@ -29,21 +58,6 @@ billingCa=../DEVICE/ca.crt billingPub=../DEVICE/billing.pub billingType=2 -[gfx] -; Force the game to run windowed. -windowed=1 -; Add a frame to the game window if running windowed. -framed=1 -; Select the monitor to run the game on. (Fullscreen only, 0 =primary screen) -monitor=0 - -[aime] -; Aime reader emulation -; CXB is stupid, so we have to make the paths go back one -enable=1 -aimePath=../DEVICE/aime.txt -felicaPath=../DEVICE/felica.txt - [eeprom] ; See above path=../DEVICE/eeprom.bin @@ -52,11 +66,43 @@ path=../DEVICE/eeprom.bin ; See above path=../DEVICE/sram.bin -[led] -; Emulation for the LED board. Currently it's just dummy responses, -; but if somebody wants to make their keyboard or whatever light -; up with the game they can -enable=1 +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + +[gfx] +; Force the game to run windowed. +windowed=1 +; Add a frame to the game window if running windowed. +framed=1 +; Select the monitor to run the game on. (Fullscreen only, 0 =primary screen) +monitor=0 + +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +[cxbio] +; To use a custom crossbeats REV. DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +; ----------------------------------------------------------------------------- +; Input settings +; ----------------------------------------------------------------------------- + +; Keyboard bindings are specified as hexadecimal (prefixed with 0x) or decimal +; (not prefixed with 0x) virtual-key codes, a list of which can be found here: +; +; https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes +; +; This is, admittedly, not the most user-friendly configuration method in the +; world. An improved solution will be provided later. [revio] ; Enable emulation of the rev IO board diff --git a/dist/diva/segatools.ini b/dist/diva/segatools.ini index 5735503..000f5c8 100644 --- a/dist/diva/segatools.ini +++ b/dist/diva/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,12 +12,20 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. enable=1 aimePath=DEVICE\aime.txt +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -25,7 +37,15 @@ default=127.0.0.1 ; setting enabled is strongly recommended. enable=1 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [gpio] +; Emulated Nu DIP switch for Distribution Server setting. +; +; If multiple machines are present on the same LAN then set this to 1 on +; exactly one machine and set this to 0 on all others. dipsw1=1 [keychip] @@ -34,6 +54,20 @@ dipsw1=1 ; that subnet must start with 192.168. subnet=192.168.78.0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +[divaio] +; To use a custom Project DIVA Arcade IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in gamepad/wheel input. +path= + ; ----------------------------------------------------------------------------- ; Input settings ; ----------------------------------------------------------------------------- diff --git a/dist/fgo/segatools.ini b/dist/fgo/segatools.ini index 3404d65..7ffbd80 100644 --- a/dist/fgo/segatools.ini +++ b/dist/fgo/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,10 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -19,6 +27,26 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +[deckReader] +; 837-15345 RFID deck reader emulation setting. +enable=1 + +[ftdi] +; FTDI serial to usb adapter emulation for CABINET LED. +enable=1 +; COM port number where the LED board is connected to. +portNo=17 + +[led15093] +; 837-15093-06 LED board emulation setting. +enable=1 +; COM port number for the LED board. Has to be the same as the FTDI port. +portNo=17 + +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -34,12 +62,29 @@ enable=1 ; local host's virtualized LAN IP is `192.168.32.11`). addrSuffix=11 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and ; that subnet must start with 192.168. subnet=192.168.167.0 +[gpio] +; ALLS DIP switches. +enable=1 + +; Enable freeplay mode. This will disable the coin slot and set the game to +; freeplay. Keep in mind that some game modes (e.g. Freedom/Time Modes) will not +; allow you to start a game in freeplay mode. +freeplay=0 + +; ----------------------------------------------------------------------------- +; Misc. hook settings +; ----------------------------------------------------------------------------- + [touch] ; WinTouch emulation setting. enable=1 @@ -56,21 +101,19 @@ printerOutPath="DEVICE\print" ; Rotate all printed images by 180 degrees. rotate180=1 -[deckReader] -; 837-15345 RFID deck reader emulation setting. -enable=1 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- -[ftdi] -; FTDI serial to usb adapter emulation for CABINET LED. -enable=1 -; COM port number where the LED board is connected to. -portNo=17 +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= -[led15093] -; 837-15093-06 LED board emulation setting. -enable=1 -; COM port number for the LED board. Has to be the same as the FTDI port. -portNo=17 +[fgoio] +; To use a custom Fate/Grand Order Arcade IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in gamepad input. +path= ; ----------------------------------------------------------------------------- ; Input settings @@ -92,3 +135,27 @@ test=0x31 service=0x32 ; Keyboard button to increment coin counter. Default is the 3 key. coin=0x33 + +; .·:'''''''''''''''''''''''''''''''''''''''''''''':·. +; : : ______ / \ [] : : +; : : | | _____ \ / Coin : : +; : : |______| { (0) } /--\ Attack. : : +; : : DECK \ / / \ : : +; : : | | > < : : +; : : | | \ / ___ : : +; : : | | \--/ | | : : +; : : JOY Noble. | | : : +; : : |___| : : +; : : AIME. : : +; '·:..............................................:·' +; +; Only XInput is currently supported. + +; Controller Button +; ------------------------------------------------------- +; Left Stick Joystick +; Left Stick Click Reset Camera +; Left Trigger Dash +; Left Shoulder Switch Target +; A/B Attack +; X/Y Noble Phantasm diff --git a/dist/idac/segatools.ini b/dist/idac/segatools.ini index 4143aa7..8ed90a2 100644 --- a/dist/idac/segatools.ini +++ b/dist/idac/segatools.ini @@ -1,18 +1,30 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= -; Insert the path to the game Option directory here (contains OPxx directories) +; Insert the path to the game Option directory here (contains MVxx directories) option= ; Create an empty directory somewhere and insert the path here. ; This directory may be shared between multiple SEGA games. ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Controls emulation of the Aime card reader assembly. enable=1 aimePath=DEVICE\aime.txt +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -24,6 +36,10 @@ default=127.0.0.1 ; setting enabled is recommended. enable=1 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and @@ -59,13 +75,17 @@ dipsw3=0 dipsw4=0 dipsw5=0 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + [aimeio] ; To use a custom card reader IO DLL enter its path here. ; Leave empty if you want to use Segatools built-in keyboard input. path= [idacio] -; To use a custom Initial D The Arcade IO DLL enter its path here. +; To use a custom Initial D THE ARCADE IO DLL enter its path here. ; Leave empty if you want to use Segatools built-in gamepad/wheel input. path= @@ -106,6 +126,22 @@ mode=xinput restrict=128 [xinput] +; XInput bindings +; +; Left Stick Steering +; Right Stick (Steering) when "singleStickSteering" is disabled +; Left Trigger Brake +; Right Trigger Accelerator +; Left Stick Click Left (used for Time Up) +; Right Stick Click Right (used for Time Up) +; Left Shoulder Shift Down +; Right Shoulder Shift Up +; Start/A Start +; Back/B View Change +; X Shift Up +; Y Shift Down +; D-Pad D-Pad + ; Left and right thumbsticks are mapped to left and right dpad buttons. ; Press both thumbsticks to trigger "Time Up" and exit the course. ; Automatically reset the simulated shifter to Neutral when XInput Start is diff --git a/dist/idz/segatools.ini b/dist/idz/segatools.ini index 68cdae0..c37bab6 100644 --- a/dist/idz/segatools.ini +++ b/dist/idz/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,10 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Controls emulation of the Aime card reader assembly. enable=1 @@ -16,19 +24,15 @@ aimePath=DEVICE\aime.txt felicaGen=0 aimeGen=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. default=127.0.0.1 -[ds] -; Region code on the emulated AMEX board DS EEPROM. -; 1: Japan -; 4: Export (some UI elements in English) -; -; NOTE: Changing this setting causes a factory reset. -region=4 - [netenv] ; Simulate an ideal LAN environment. This may interfere with head-to-head play. ; SEGA games are somewhat picky about their LAN environment, so leaving this @@ -40,12 +44,35 @@ enable=1 ; Needed for in store battle, one needs to set it to 12. ;addrSuffix=12 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and ; that subnet must start with 192.168. subnet=192.168.158.0 +[ds] +; Region code on the emulated AMEX board DS EEPROM. +; 1: Japan +; 4: Export (some UI elements in English) +; +; NOTE: Changing this setting causes a factory reset. +region=4 + +[gpio] +; Emulated Nu DIP switch for Distribution Server setting. +; +; If multiple machines are present on the same LAN then set this to 1 on +; exactly one machine and set this to 0 on all others. +dipsw1=1 + +; ----------------------------------------------------------------------------- +; Misc. hooks settings +; ----------------------------------------------------------------------------- + [gfx] ; Enables the graphics hook. This is required for some Initial D Zero versions ; for example v1.31 and v2.11 to run properly in fullscreen. @@ -57,12 +84,9 @@ framed=1 ; Select the monitor to run the game on. (Fullscreen only, 0=primary screen) monitor=0 -[gpio] -; Emulated Nu DIP switch for Distribution Server setting. -; -; If multiple machines are present on the same LAN then set this to 1 on -; exactly one machine and set this to 0 on all others. -dipsw1=1 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- [aimeio] ; To use a custom card reader IO DLL enter its path here. @@ -111,6 +135,20 @@ mode=xinput restrict=97 [xinput] +; XInput bindings +; +; Left Stick Steering +; Right Stick (Steering) when "singleStickSteering" is disabled +; Left Trigger Brake +; Right Trigger Accelerator +; Left Shoulder Shift Down +; Right Shoulder Shift Up +; Start/A Start +; Back/B View Change +; X Shift Up +; Y Shift Down +; D-Pad D-Pad + ; Automatically reset the simulated shifter to Neutral when XInput Start is ; pressed (e.g. when navigating menus between races). autoNeutral=1 diff --git a/dist/mai2/segatools.ini b/dist/mai2/segatools.ini index 9cd0baa..3aa8758 100644 --- a/dist/mai2/segatools.ini +++ b/dist/mai2/segatools.ini @@ -1,13 +1,21 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= -; Insert the path to the game Option directory here (contains Axxx, Bxxx directories) +; Insert the path to the game Option directory here (contains Axxx directories) option= ; Create an empty directory somewhere and insert the path here. ; This directory may be shared between multiple SEGA games. ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -19,6 +27,10 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -29,6 +41,14 @@ default=127.0.0.1 ; SEGA games are somewhat picky about its LAN environment, so leaving this ; setting enabled is recommended. enable=1 +; The final octet of the local host's IP address on the virtualized subnet (so, +; if the keychip subnet is `192.168.32.0` and this value is set to `11`, then the +; local host's virtualized LAN IP is `192.168.32.11`). +addrSuffix=11 + +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. @@ -49,6 +69,20 @@ freeplay=0 ; this to 1 on exactly one machine and set this to 0 on all others. dipsw1=1 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +[mai2io] +; To use a custom maimai DX IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + ; ----------------------------------------------------------------------------- ; Input settings ; ----------------------------------------------------------------------------- diff --git a/dist/mercury/segatools.ini b/dist/mercury/segatools.ini index 2586c9c..a31abd7 100644 --- a/dist/mercury/segatools.ini +++ b/dist/mercury/segatools.ini @@ -1,11 +1,20 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) -amfs=amfs +amfs= +; Insert the path to the game Option directory here (contains Axxx directories) +option= ; Create an empty directory somewhere and insert the path here. ; This directory may be shared between multiple SEGA games. ; NOTE: This has nothing to do with Windows %APPDATA%. -appdata=appdata -option=option +appdata= + +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime @@ -18,6 +27,10 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -28,6 +41,14 @@ default=127.0.0.1 ; SEGA games are somewhat picky about their LAN environment, so leaving this ; setting enabled is recommended. enable=1 +; The final octet of the local host's IP address on the virtualized subnet (so, +; if the keychip subnet is `192.168.32.0` and this value is set to `11`, then the +; local host's virtualized LAN IP is `192.168.32.11`). +addrSuffix=11 + +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. @@ -35,9 +56,6 @@ enable=1 ; that subnet must start with 192.168. subnet=192.168.174.0 -[gfx] -enable=1 - [gpio] ; ALLS DIP switches. enable=1 @@ -51,6 +69,35 @@ freeplay=0 ; this to 1 on exactly one machine and set this to 0 on all others. dipsw1=1 +; ----------------------------------------------------------------------------- +; Misc. hook settings +; ----------------------------------------------------------------------------- + +[gfx] +enable=1 + +; Hooks related to the touch boards +[touch] +enable=1 + +; Hooks related to the LED board (codenamed Elisabeth) +[elisabeth] +enable=1 + +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +[mercuryio] +; To use a custom WACCA IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + ; ----------------------------------------------------------------------------- ; Input settings ; ----------------------------------------------------------------------------- @@ -75,15 +122,3 @@ coin=0x72 volup=0x26 ; Volume down virtual-key code. Default is the "DOWN" key. voldown=0x28 - -; Hooks related to the touch boards -[touch] -enable=1 - -; Hooks related to the LED board (codenamed Elisabeth) -[elisabeth] -enable=1 - -;[mercuryio] -; Use mercuryio.dll -;path=mercuryio.dll diff --git a/dist/mu3/segatools.ini b/dist/mu3/segatools.ini index 5464257..6cdad24 100644 --- a/dist/mu3/segatools.ini +++ b/dist/mu3/segatools.ini @@ -1,3 +1,7 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= @@ -8,6 +12,10 @@ option= ; NOTE: This has nothing to do with Windows %APPDATA%. appdata= +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -19,6 +27,10 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -30,6 +42,10 @@ default=127.0.0.1 ; setting enabled is recommended. enable=1 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; If you disable netenv then you must set this to your LAN's IP subnet, and @@ -49,12 +65,26 @@ freeplay=0 ; this to 1 on exactly one machine and set this to 0 on all others. dipsw1=1 +; ----------------------------------------------------------------------------- +; Misc. hook settings +; ----------------------------------------------------------------------------- + [gfx] enable=1 -[led15093] -; 837-15093-06 LED board emulation setting. -enable=1 +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + +[aimeio] +; To use a custom card reader IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard input. +path= + +[fgoio] +; To use a custom O.N.G.E.K.I. IO DLL enter its path here. +; Leave empty if you want to use Segatools built-in keyboard/gamepad input. +path= ; ----------------------------------------------------------------------------- ; Input settings @@ -79,6 +109,22 @@ coin=0x72 ; Set "1" to enable mouse lever emulation, "0" to use XInput mouse=1 +; XInput input bindings +; +; Left Stick Lever +; Left Trigger Lever (move to the left) +; Right Trigger Lever (move to the right) +; Left Left red button +; Up Left green button +; Right Left blue button +; Left Shoulder Left side button +; Right Shoulder Right side button +; X Right red button +; Y Right green button +; A Right blue button +; Back Left menu button +; Start Right menu button + ; Keyboard input bindings left1=0x41 ; A left2=0x53 ; S diff --git a/dist/swdc/segatools.ini b/dist/swdc/segatools.ini index ef182cc..47e2bcb 100644 --- a/dist/swdc/segatools.ini +++ b/dist/swdc/segatools.ini @@ -1,13 +1,21 @@ +; ----------------------------------------------------------------------------- +; Path settings +; ----------------------------------------------------------------------------- + [vfs] ; Insert the path to the game AMFS directory here (contains ICF1 and ICF2) amfs= -; Insert the path to the game Option directory here (contains OPxx directories) +; Insert the path to the game Option directory here (contains Axxx directories) option= ; Create an empty directory somewhere and insert the path here. ; This directory may be shared between multiple SEGA games. ; NOTE: This has nothing to do with Windows %APPDATA%. appdata=appdata +; ----------------------------------------------------------------------------- +; Device settings +; ----------------------------------------------------------------------------- + [aime] ; Enable Aime card reader assembly emulation. Disable to use a real SEGA Aime ; reader. @@ -19,6 +27,10 @@ aimePath=DEVICE\aime.txt ; GP1232A02A FUTABA assembly. enable=1 +; ----------------------------------------------------------------------------- +; Network settings +; ----------------------------------------------------------------------------- + [dns] ; Insert the hostname or IP address of the server you wish to use here. ; Note that 127.0.0.1, localhost etc are specifically rejected. @@ -34,12 +46,29 @@ enable=1 ; local host's virtualized LAN IP is `192.168.32.11`). addrSuffix=11 +; ----------------------------------------------------------------------------- +; Board settings +; ----------------------------------------------------------------------------- + [keychip] ; The /24 LAN subnet that the emulated keychip will tell the game to expect. ; You must set this to your LAN's IP subnet, and that subnet must start with 192.168, ; in order to find the MAIN cabinet. subnet=192.168.160.0 +[gpio] +; ALLS DIP switches. +enable=1 + +; Enable freeplay mode. This will disable the coin slot and set the game to +; freeplay. Keep in mind that some game modes (e.g. Freedom/Time Modes) will not +; allow you to start a game in freeplay mode. +freeplay=0´ + +; ----------------------------------------------------------------------------- +; Custom IO settings +; ----------------------------------------------------------------------------- + [aimeio] ; To use a custom card reader IO DLL enter its path here. ; Leave empty if you want to use Segatools built-in keyboard input. @@ -50,15 +79,6 @@ path= ; Leave empty if you want to use Segatools built-in gamepad/wheel input. path= -[gpio] -; ALLS DIP switches. -enable=1 - -; Enable freeplay mode. This will disable the coin slot and set the game to -; freeplay. Keep in mind that some game modes (e.g. Freedom/Time Modes) will not -; allow you to start a game in freeplay mode. -freeplay=0 - ; ----------------------------------------------------------------------------- ; Input settings ; ----------------------------------------------------------------------------- @@ -96,6 +116,22 @@ mode=xinput restrict=128 [xinput] +; XInput bindings +; +; Left Stick Steering +; Right Stick (Steering) when "singleStickSteering" is disabled +; Left Trigger Brake +; Right Trigger Accelerator +; Left Shoulder Left Paddle +; Right Shoulder Right Paddle +; Start Start +; Back View Change +; A Green (Wheel) +; B Red (Wheel) +; X Blue (Wheel) +; Y Yellow (Wheel) +; D-Pad D-Pad + ; Use the left thumbstick for steering instead of both on XInput Controllers. ; Not recommended as it will not give you the precision needed for this game. singleStickSteering=1 diff --git a/fgoio/fgoio.c b/fgoio/fgoio.c index d9aeed1..ff3e953 100644 --- a/fgoio/fgoio.c +++ b/fgoio/fgoio.c @@ -67,11 +67,11 @@ HRESULT fgo_io_poll(void) fgo_gamebtn |= FGO_IO_GAMEBTN_TARGET; } - if (xb & XINPUT_GAMEPAD_A) { + if (xb & XINPUT_GAMEPAD_A || xb & XINPUT_GAMEPAD_B) { fgo_gamebtn |= FGO_IO_GAMEBTN_ATTACK; } - if (xb & XINPUT_GAMEPAD_Y) { + if (xb & XINPUT_GAMEPAD_Y || xb & XINPUT_GAMEPAD_X) { fgo_gamebtn |= FGO_IO_GAMEBTN_NOBLE_PHANTASHM; } diff --git a/segatools.md b/segatools.md index 4dcaf43..51b97e0 100644 --- a/segatools.md +++ b/segatools.md @@ -283,7 +283,7 @@ Enable keychip emulation. Disable to use a real keychip. Default: `A69E-01A88888888` Keychip serial number. Keychip serials observed in the wild follow this -pattern: `A6xE-01Ayyyyyyyy`. +pattern: `A\d{2}(E01|X20)[ABCDU]\d{8}`. ### `gameId`