Demul, Erreur au lancement (hyperlaunch)

Ici se règle les problèmes concernant une configuration Hyperspin tournant sous HyperLaunch 2 et ses déclinaisons.

Modérateurs : Porko, Modérateurs

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Demul, Erreur au lancement (hyperlaunch)

Message par Reaver7 » 23 juin 2015 - 22:33

Pouet!

Alors j'ai essayé de configurer Demul, qui pour l'instant a l'air de bien fonctionner en lançant soulcalibur manuellement.
Cependant, en ayant pris un module sur le net, et même en ayant essayé l'un des modules présents sur ce fofo, impossible de lancer Demul via Hyperspin ou Hyperlaunch.

Les Paths sont correctement indiqués cette fois ci.

Voici donc l'erreur que j'ai au lancement sous hyperspin ou HyperHQ:
Image

Et voici mon module
module
MEmu = Demul
MEmuV = v0.5.8.2
MURL = http://demul.emulation64.com/" onclick="window.open(this.href);return false;
MAuthor = djvj
MVersion = 2.0.5 BETA
MCRC = EFEE7501
iCRC = F43FB746
mId = 635211874656892855
MSystem = "Gaelco","Sammy Atomiswave","Sega Dreamcast","Sega Hikaru","Sega Naomi","Sega Naomi 2"
;----------------------------------------------------------------------------
; Notes:
; Required - control and nvram files can be found in my user dir on the FTP at /Upload Here/djvj/Sega Naomi\Emulators. Additonal instructions from my orignal HL1.0 script at http://www.hyperspin-fe.com/forum/showp ... tcount=104" onclick="window.open(this.href);return false;
; Required - moduleName ini example can be found on GIT in the Demul module folder
; moduleName ini must be placed in same folder as this module if you use the provided example, just be sure to rename it to just Demul.ini first so it matches the module's name
; GDI images must match mame zip names and be extracted and have a .dat extension
; Rom_Extension should include 7z|zip|gdi|cue|cdi|chd|mds|ccd|nrg
; Module will automatically set your rom path for you on first launch
;
; Make sure the awbios, dc, hikaru, naomi, naomi2, saturn.zip bios archives are in any of your rom paths as they are needed to play all the games.
; Set your Video Plugin to gpuDX11 and set your desired resolution there
; In case your control codes do not match mine, set your desired control type in demul, then open the demul.ini and find section PORTB and look for the device key. Use this number instead of the one I provided
; gpuDX10 and gpuDX11 are the only supported plugins. You can define what plugin you want to use for each game in the module settings in HLHQ
; Read the tooltip for the Fullscreen module setting in HLHQ on how to control windowed fullscreen, true fullscreen, or windowed mode
; Windowed fullscreen will take effect the 2nd time you run the emu. It has to calculate your resolution on first run.
;
; Controls:
; Start a game of each control type (look in the HLHQ's module settings for these types, they all have their own tabs) and configure your controls to play the game. After configuring your controls manually in Demul, open padDemul.ini and Copy/paste the JAMMA0_0 and JAMMA0_1 (for naomi) or the ATOMISWAVE0_0 and ATOMISWAVE0_1 (for atomiswave) into HLHQ's module settings for each controls tab (standard, sfstyle, etc).
; Each pair of control tabs designates another real arcade control schema for a grouping of games. Demul does not handle this like MAME, so the module does instead.
;
; Troubleshooting:
; For some reason demul's ini files can get corrupted and ahk can't read/write to them correctly.
; If your ini keys are not being read or not writing to their existing keys in the demul inis, create a new file and copy/paste everything from the old ini into the new one and save.
; If you use Fade_Out, the module will disable it. Demul crashes when Fade tries to draw on top of it in windowed and fullscreen modes.
;----------------------------------------------------------------------------
StartModule()
BezelGUI()
ExtraFixedResBezelGUI()
FadeInStart()

; This object controls how the module reacts to different systems. Demul can play a few systems, but needs to know what system you want to run, so this module has to adapt.
mType := Object("Gaelco","gaelco","Sammy Atomiswave","atomiswave","Sega Dreamcast","dc","Sega Hikaru","hikaru","Sega Naomi","naomi","Sega Naomi 2","naomi2")
ident := mType[systemName] ; search object for the systemName identifier Demul uses
If !ident
ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this Demul module: " . moduleName)

settingsFile := modulePath . "\" . moduleName . ".ini"
demulFile := CheckFile(emuPath . "\Demul.ini", "Could not find Demul's ini. Please run Demul manually first and each of it's settings sections so the appropriate inis are created for you: " . emuPath . "\Demul.ini")
padFile := CheckFile(emuPath . "\padDemul.ini", "Could not find Demul's control ini. Please run Demul manually first and set up your controls so this file is created for you: " . emuPath . "\padDemul.ini")

demulFileEncoding := COM_Invoke(HLObject, "getFileEncoding", demulFile)
If demulFileEncoding {
Log("Module - Recreating " . demulFile . " as ANSI because UTF-8 format cannot be read")
If COM_Invoke(HLObject, "removeBOM", demulFile)
Log("Module - Successfully converted " . demulFile . " to ANSI")
Else
Log("Module - Failed to convert " . demulFile . " to ANSI",3)
}

maxHideTaskbar := IniReadCheck(settingsFile, "Settings", "MaxHideTaskbar", "true",,1)
controllerCode := IniReadCheck(settingsFile, "Settings", "ControllerCode", "16777216",,1)
mouseCode := IniReadCheck(settingsFile, "Settings", "MouseCode", "131072",,1)
keyboardCode := IniReadCheck(settingsFile, "Settings", "KeyboardCode", "1073741824",,1)
lightgunCode := IniReadCheck(settingsFile, "Settings", "LightgunCode", "-2147483648",,1)
lastControlUsed := IniReadCheck(settingsFile, "Settings", "LastControlUsed",,,1)
hideDemulGUI := IniReadCheck(settingsFile, "Settings", "HideDemulGUI", "true",,1)
PerGameMemoryCards := IniReadCheck(settingsFile, "Settings", "PerGameMemoryCards", "true",,1)
memCardPath := IniReadCheck(settingsFile, "Settings", "memCardPath", EmuPath . "\memsaves",,1)
memCardPath := AbsoluteFromRelative(EmuPath, memCardPath)

fullscreen := IniReadCheck(settingsFile, "Settings|" . romName, "Fullscreen", "windowedfullscreen",,1)
plugin := IniReadCheck(settingsFile, "Settings|" . romName, "Plugin", "gpuDX11",,1)
shaderUsePass1 := IniReadCheck(settingsFile, "Settings|" . romName, "ShaderUsePass1", "false",,1)
shaderUsePass2 := IniReadCheck(settingsFile, "Settings|" . romName, "ShaderUsePass2", "false",,1)
shaderNamePass1 := IniReadCheck(settingsFile, "Settings|" . romName, "ShaderNamePass1",,,1)
shaderNamePass2 := IniReadCheck(settingsFile, "Settings|" . romName, "ShaderNamePass2",,,1)
listSorting := IniReadCheck(settingsFile, "Settings|" . romName, "ListSorting", "true",,1)
OpaqueMod := IniReadCheck(settingsFile, "Settings|" . romName, "OModifier", "true",,1)
TransMod := IniReadCheck(settingsFile, "Settings|" . romName, "TModifier", "true",,1)
internalResolutionScale := IniReadCheck(settingsFile, "Settings|" . romName, "InternalResolutionScale", "1",,1)
videomode := IniReadCheck(settingsFile, "Settings|" . romName, "VideoMode", "0",,1)

displayVMU := IniReadCheck(settingsFile, "Settings", "DisplayVMU", "true",,1)
VMUPos := IniReadCheck(settingsFile, "Settings", "VMUPos", "topRight",,1) ; topRight, topCenter, topLeft, leftCenter, bottomLeft, bottomCenter, bottomRight, rightCenter
VMUHideKey := IniReadCheck(settingsFile, "Settings", "VMUHideKey","F10",,1)

Bios := IniReadCheck(settingsFile, romName, "Bios",,,1)
LoadDecrypted := IniReadCheck(settingsFile, romName, "LoadDecrypted",,,1) ; not currently supported

; Read all the control values
controls := IniReadCheck(settingsFile, romname, "Controls", "standard",,1) ; have to read this first so the below ini reads work
push1_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push1",,,1)
push2_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push2",,,1)
push3_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push3",,,1)
push4_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push4",,,1)
push5_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push5",,,1)
push6_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push6",,,1)
push7_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push7",,,1)
push8_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "push8",,,1)
service_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "SERVICE",,,1)
start_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "START",,,1)
coin_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "COIN",,,1)
digitalup_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "DIGITALUP",,,1)
digitaldown_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "DIGITALDOWN",,,1)
digitalleft_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "DIGITALLEFT",,,1)
digitalright_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "DIGITALRIGHT",,,1)
analogup_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGUP",,,1)
analogdown_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGDOWN",,,1)
analogleft_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGLEFT",,,1)
analogright_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGRIGHT",,,1)
analogup2_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGUP2",,,1)
analogdown2_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGDOWN2",,,1)
analogleft2_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGLEFT2",,,1)
analogright2_0 := IniReadCheck(settingsFile, controls . "_JAMMA0_0", "ANALOGRIGHT2",,,1)
push1_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push1",,,1)
push2_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push2",,,1)
push3_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push3",,,1)
push4_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push4",,,1)
push5_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push5",,,1)
push6_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push6",,,1)
push7_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push7",,,1)
push8_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "push8",,,1)
service_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "SERVICE",,,1)
start_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "START",,,1)
coin_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "COIN",,,1)
digitalup_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "DIGITALUP",,,1)
digitaldown_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "DIGITALDOWN",,,1)
digitalleft_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "DIGITALLEFT",,,1)
digitalright_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "DIGITALRIGHT",,,1)
analogup_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGUP",,,1)
analogdown_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGDOWN",,,1)
analogleft_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGLEFT",,,1)
analogright_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGRIGHT",,,1)
analogup2_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGUP2",,,1)
analogdown2_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGDOWN2",,,1)
analogleft2_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGLEFT2",,,1)
analogright2_1 := IniReadCheck(settingsFile, controls . "_JAMMA0_1", "ANALOGRIGHT2",,,1)

; Verify user set desired gpu plugin name correctly
If ( plugin != "gpuDX11" && plugin != "gpuDX10" && plugin != "")
ScriptError(plugin . " is not a supported gpu plugin.`nLeave the plugin blank to use the default ""gpuDX11"".`nValid options are gpuDX11 or gpuDX10.")

; Read and write videomode value for cable type
IniRead, rvideomode, %demulFile%, main, videomode
Log("Module - Demul is reading the config with videomode = " . rvideomode)
IniWrite, %videomode%, %demulFile%, main, videomode
Log("Module - Demul is updating the config with videomode = " . videomode)
;ExitApp

; Handle Demul's rom paths so the user doesn't have to
IniRead, romPathCount, %demulFile%, files, romsPathsCount
Log("Module - Demul is configured with " . romPathCount . " rom path(s). Scanning these for a romPath to this rom.")
Loop, %romPathCount%
{ demulRomPath := A_Index - 1 ; rompaths in demul start with 0
IniRead, path%A_Index%, %demulFile%, files, roms%demulRomPath%
Log("Module - Path" . demulRomPath . ": " . path%A_Index%)
; msgbox % path%A_Index%
If (path%A_Index% = romPath . "\") ; demul tacks on the backslash at the end
{ romPathFound := 1 ; flag that demul has this romPath in its config and no need to add it
Log("Module - Stopping search because Demul is already configured with the correct romPath to this rom: " . path%A_Index%)
Break ; stop looking for a correct romPath
}
}
If !romPathFound ; if demul doesn't have the romPath in its ini, add it
{ Log("Module - Demul does not have this romPath in Demul.ini, adding it for you.",2)
nextPath := romPathCount + 1 ; add 1 to the romPathCount and write that to the ini
IniWrite, %nextPath%, %demulFile%, files, romsPathsCount
IniWrite, %romPath%\, %demulFile%, files, % "roms" . romPathCount ; write the rompath to the ini
}

BezelStart("FixResMode")

; Force Fade_Out to disabled as it causes demul to not close properly
fadeOut = false
Log("Module - Turning off Fade_Out because it doesn't let Demul exit properly.",2)

; check for the specified gpu plugin
gpuFile := CheckFile(emuPath . "\" . plugin . ".ini")

demulFileEncoding := COM_Invoke(HLObject, "getFileEncoding", gpuFile)
If demulFileEncoding {
Log("Module - Recreating " . gpuFile . " as ANSI because UTF-8 format cannot be read")
If COM_Invoke(HLObject, "removeBOM", gpuFile)
Log("Module - Successfully converted " . gpuFile . " to ANSI")
Else
Log("Module - Failed to convert " . gpuFile . " to ANSI",3)
}

; This updates the DX11gpu ini file to turn List Sorting on or off. Depending on the games, turning this on for some games may remedy missing graphics, having it off on other games may fix corrupted graphics. Untill they improve the DX11gpu, this is the best it's gonna get.
If ListSorting = true
IniWrite, 0, %gpuFile%, main, AutoSort
Else
IniWrite, 1, %gpuFile%, main, AutoSort

; This will set the Opaque or Trans modifier for each game
If OpaqueMod = true
IniWrite, 0, %gpuFile%, main, OModifier
Else
IniWrite, 1, %gpuFile%, main, OModifier

If TransMod = true
IniWrite, 0, %gpuFile%, main, TModifier
Else
IniWrite, 1, %gpuFile%, main, TModifier

; This updates the DX10gpu or DX11gpu ini file to the scale you want to use for this game
IniWrite, %InternalResolutionScale%, %gpuFile%, main, scaling

; This updates the demul.ini with your gpu plugin choice for the selected rom
IniWrite, %plugin%.dll, %demulFile%, plugins, gpu

; This updates the demul.ini with your VMU display choice
VMUscreendisable := if (displayVMU="true") ? "false" : "true"
IniWrite, %VMUscreendisable% , %demulFile%, main, VMUscreendisable

; Shader Effects
Loop, 2 {
shaderUsePass%A_Index% := If (ShaderUsePass%A_Index% != "" and ShaderUsePass%A_Index% != "ERROR" ? (ShaderUsePass%A_Index%) : (GlobalShaderUsePass%A_Index%)) ; determine what shaderUsePass to use
IniRead, currentusePass%A_Index%, %gpuFile%, shaders, usePass%A_Index%
If (shaderUsePass%A_Index% = "true")
{
shaderNamePass%A_Index% := If (ShaderNamePass%A_Index% != "" and ShaderNamePass%A_Index% != "ERROR" ? (ShaderNamePass%A_Index%) : (GlobalShaderNamePass%A_Index%)) ; determine what shaderNamePass to use
If shaderNamePass%A_Index% not in FXAA,HDR-TV,SCANLINES,CARTOON,RGB DOT(MICRO),RGB DOT(TINY),BLUR
ScriptError(shaderNamePass%A_Index% . " is not a valid choice for a shader. Your options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), or BLUR.")
If (currentusePass%A_Index% = 0)
IniWrite, 1, %gpuFile%, shaders, usePass%A_Index% ; turn shader on in gpuDX11 ini
IniWrite, % shaderNamePass%A_Index%, %gpuFile%, shaders, shaderPass%A_Index% ; update gpuDX11 ini with the shader name to use
}Else If (shaderUsePass%A_Index% != "true" and currentusePass%A_Index% = 1)
IniWrite, 0, %gpuFile%, shaders, usePass%A_Index% ; turn shader off in gpuDX11 ini
}

If ident = dc
{
7z(romPath, romName, romExtension, 7zExtractPath)
If ( romExtension = ".cdi" || romExtension = ".mds" || romExtension = ".ccd" || romExtension = ".nrg" || romExtension = ".gdi" || romExtension = ".cue" ) {
gdrImageFile := CreateDefaultGDROMIni("image")
FileDelete, %gdrImageFile%
Sleep, 500
IniWrite, gdrImage.dll, %demulFile%, plugins, gdr
IniWrite, false, %gdrImageFile%, Main, openDialog
IniWrite, %romPath%\%romName%%romExtension%, %gdrImageFile%, Main, imagefilename
} Else If romExtension = .chd
{
gdrCHDFile := CreateDefaultGDROMIni("chd")
FileDelete, %gdrCHDFile%
Sleep, 500
IniWrite, false, %gdrCHDFile%, Main, openDialog
IniWrite, gdrCHD.dll, %demulFile%, plugins, gdr
IniWrite, %romPath%\%romName%%romExtension%, %gdrCHDFile%, Main, imagefilename
} Else
ScriptError(romExtension . " is not a supported file type for this " . moduleName . " module.")

IniWrite, 1, %demulFile%, main, region ; Set BIOS to Auto Region
} Else { ; all other systems, Naomi and Atomiswave
; This updates the demul.ini with your Bios choice for the selected rom
If ( Bios != "" && Bios != "ERROR" ) {
Bios := RegExReplace(Bios,"\s.*") ; Cleans off the added text from the key's value so only the number is left
IniWrite, false, %demulFile%, main, naomiBiosAuto ; turning auto bios off so we can use a specific one instead
IniWrite, %Bios%, %demulFile%, main, naomiBios ; setting specific bios user has set from the moduleName ini
} Else
IniWrite, true, %demulFile%, main, naomiBiosAuto ; turning auto bios on if user did not specify a specific one
}

; This section writes your custom keys to the padDemul.ini. Naomi games had many control panel layouts. The only way we can accomodate these differing controls, is to keep track of them all and write them to the ini at the launch of each game.
; First we check if the last controls used are the same as the game we want to play, so we don't waste time updating the ini if it is not necessary. For example playing 2 sfstyle type games in a row, we wouldn't need to write to the ini.

; This section tells demul what arcade control type should be connected to the game. Options are standard (aka controller), mouse, lightgun, or keyboard
If ( controls = "lightgun" || controls = "mouse" ) {
Log("Module - This game uses a Mouse or Lightgun control type.")
IniWrite, %MouseCode%, %demulFile%, PORTB, device
} Else If ( controls = "keyboard" ) {
Log("Module - This game uses a Keyboard control type.")
IniWrite, %KeyboardCode%, %demulFile%, PORTB, device
} Else { ; accounts for all other control types
Log("Module - This game uses a standard (controller) control type.")
IniWrite, %ControllerCode%, %demulFile%, PORTB, device
}

Log("Module - Last control scheme used was """ . lastControlUsed . """ and this game requires """ . controls . """")
If ( LastControlUsed != controls ) { ; find out last controls used for the system we are launching
WriteControls(padFile, 0,push1_0,push2_0,push3_0,push4_0,push5_0,push6_0,push7_0,push8_0,SERVICE_0,START_0,COIN_0,DIGITALUP_0,DIGITALDOWN_0,DIGITALLEFT_0,DIGITALRIGHT_0,ANALOGUP_0,ANALOGDOWN_0,ANALOGLEFT_0,ANALOGRIGHT_0,ANALOGUP2_0,ANALOGDOWN2_0,ANALOGLEFT2_0,ANALOGRIGHT2_0)
WriteControls(padFile, 1,push1_1,push2_1,push3_1,push4_1,push5_1,push6_1,push7_1,push8_1,SERVICE_1,START_1,COIN_1,DIGITALUP_1,DIGITALDOWN_1,DIGITALLEFT_1,DIGITALRIGHT_1,ANALOGUP_1,ANALOGDOWN_1,ANALOGLEFT_1,ANALOGRIGHT_1,ANALOGUP2_1,ANALOGDOWN2_1,ANALOGLEFT2_1,ANALOGRIGHT2_1)
IniWrite, %controls%, %settingsFile%, Settings, LastControlUsed
Log("Module - Wrote " . controls . " controls to padDemul.ini.")
} Else
Log("Module - Not changing controls because the currently configured controls are the same for this game.")

; This will check the save game files and create per game ones if enabled.
If PerGameMemoryCards = true
{
IfNotExist, %memCardPath%
FileCreateDir, %memCardPath% ; create memcard folder if it doesn't exist
defaultMemCard := memCardPath . "\default_vms.bin" ; defining default blank VMU file
If (FileExist(defaultMemCard))
{
Log("VMU - Default VMU file location - " . defaultMemCard,5)
Loop, 4
{
outerLoop := A_Index
If A_Index = 1
{
contrPort := "A"
}
Else If A_Index = 2
{
contrPort := "B"
}
Else If A_Index = 3
{
contrPort := "C"
}
Else If A_Index = 4
{
contrPort := "D"
}
IniRead, controllerPort%contrPort%, %demulFile%, PORT%contrPort%, device
LOG("VMU - Config for controller PORT" . contrPort . " = " . controllerPort%contrPort%,5)
If controllerPort%contrPort% = -1
continue
Loop, 2
{
SubCount := % A_Index - 1
IniRead, VMUPort%SubCount%, %demulFile%, PORT%contrPort%, port%SubCount%
LOG("VMU - Config Plugin VMUPort" . contrPort . SubCount . " for controller PORT" . contrPort . " = " . VMUPort%SubCount%,5)
If (VMUPort%SubCount% <> -1)
{
IniRead, VMUPortFile%SubCount%, %demulFile%, VMS, VMS%contrPort%%SubCount%
LOG("VMU - VMUPortFile" . contrPort . SubCount . " controllerVMU" . contrPort . SubCount . " " . "VMS" . contrPort . SubCount . " = " . VMUPortFile%SubCount%,5)
memCardName := If romTable[1,5] ? romTable[1,4] : romName ; defining rom name for multi disc rom
PerGameVMUIn := memCardPath . "\" . memCardName . "_vms_" . contrPort . SubCount . ".bin"
LOG("VMU - PerGameVMUIn = " . PerGameVMUIn,5)
If (FileExist(PerGameVMUIn))
{
LOG("VMU - PerGameVMU file exists at " . PerGameVMUIn,5)
IniWrite, %PerGameVMUIn%, %demulFile%, VMS, VMS%contrPort%%SubCount%
LOG("VMU - PerGameVMU file written to " . demulFile . " at section VMS to variable VMS" . contrPort . SubCount . " as " . PerGameVMUIn,5)
} ELSE {
LOG("VMU - PerGameVMU file does not exist. So we will create one at " . PerGameVMUIn,1)
FileCopy, %defaultMemCard%, %PerGameVMUIn%
LOG("VMU - PerGameVMU file written to " . demulFile . " at section VMS to variable VMS" . contrPort . SubCount . " as " . PerGameVMUIn,1)
IniWrite, %PerGameVMUIn%, %demulFile%, VMS, VMS%contrPort%%SubCount%
}
} ELSE {
LOG("VMU - No VMU Plugged In.",5)
}
}
}
} Else {
Log("VMU - No default VMU file at " . defaultMemCard,5)
}
}


; Setting demul to use true fullscreen if defined in settings.ini, otherwise sets demul to run windowed. This is for gpuDX11 plugin only
If plugin = gpuDX11
If fullscreen = truefullscreen
IniWrite, 1, %gpuFile%, main, UseFullscreen
Else
IniWrite, 0, %gpuFile%, main, UseFullscreen

If fullscreen = windowedfullscreen
{
If maxHideTaskbar = true
{
Log("Module - Hiding Taskbar and Start Button.")
WinHide, ahk_class Shell_TrayWnd
WinHide, Start ahk_class Button
}
; Create black background to give the emu the fullscreen look
Log("Module - Creating black background to simulate a fullscreen look.")
Gui demulGUI: -Caption +ToolWindow
Gui demulGUI: Color, Black
Gui demulGUI: Show, x0 y0 h%A_ScreenHeight% w%A_ScreenWidth%
}

Sleep, 250

; Construct the CLI for demul and send romName if naomi or atomiswave. Dreamcast needs a full path and romName.
If LoadDecrypted = true ; decrypted naomi rom
romCLI := "-customrom=" . """" . romPath . "\" . romName . ".bin"""
Else If ident = dc ; dreamcast game
romCLI := " -image=" . """" . romPath . "\" . romName . romExtension . """"
Else ; standard naomi rom
romCLI := "-rom=" . romName

If hideDemulGUI = true
SetTimer, HideGUIWindow, 50 ; start watching for gui window so it can be completely hidden

; Run(executable . " -run=" . ident . " " . romCLI, emuPath,, emuPID)
Run(executable . " -run=" . ident . " " . romCLI, emuPath, (If hideDemulGUI = "true" ? "min" : ""), emuPID) ; launching minimized, then restoring later hides the launch completely
Sleep, 1000 ; Need a second for demul to launch, increase if yours takes longer and the emu is NOT appearing and staying minimized. This is required otherwise bezel backgrounds do not appear

DetectHiddenWindows, On
Log("Module - Waiting for Demul to finish loading game.")
Loop { ; looping until demul is done loading rom and gpu starts showing frames
Sleep, 200
WinGetTitle, winTitle, ahk_class window
StringSplit, winTextSplit, winTitle, %A_Space%
If ( winTextSplit5 = "gpu:" And winTextSplit6 != "0" And winTextSplit6 != "1" )
Break
}
Log("Module - Demul finished loading game.")

If (InStr(systemName, "Gaelco") && fullscreen = "truefullscreen")
Send !{Enter} ; Automatic fullscreen seems to be broken in the Gaelco driver, must alt+Enter to get fullscreen

; This is where we calculate and maximize demul's window using our pseudo fullscreen code
If fullscreen = windowedfullscreen
{
WinSet, Style, -0x40000, ahk_class window ; Removes the border of the game window
WinSet, Style, -0xC00000, ahk_class window ; Removes the TitleBar
Send, {F3} ; Removes the MenuBar
MaximizeWindow("ahk_class window") ; this will take effect after you run demul once because we cannot stretch demul's screen while it is running.
}

If hideDemulGUI = true
{ SetTimer, HideGUIWindow, Off
WinSet, Transparent, Off, ahk_class window
}

BezelDraw()
If (displayVMU="true"){
WinGet VMUWindowID, ID, LCD 0 ahk_class LCD 0
ExtraFixedResBezelDraw(VMUWindowID, "VMU", VMUPos, 144, 96, 8, 8, 28, 8)
VMUHideKey := xHotKeyVarEdit(VMUHideKey,"VMUHideKey","~","Add")
xHotKeywrapper(VMUHideKey,"VMUHide")
}
FadeInExit()
Process("WaitClose", executable)

If fullscreen = windowedfullscreen
{ Gui demulGUI: Destroy
Log("Module - Destroyed black gui background.")
}

BezelExit()
ExtraFixedResBezelExit()
FadeOutExit()

If (fullscreen = "windowedfullscreen" && maxHideTaskbar = "true") {
Log("Module - Showing Taskbar and Start Button.")
WinShow,ahk_class Shell_TrayWnd
WinShow,Start ahk_class Button
}

ExitModule()


; Write new controls to padDemul.ini
WriteControls(file, player,push1,push2,push3,push4,push5,push6,push7,push8,service,start,coin,digitalup,digitaldown,digitalleft,digitalright,analogup,analogdown,analogleft,analogright,analogup2,analogdown2,analogleft2,analogright2) {
IniWrite, %push1%, %file%, JAMMA0_%player%, PUSH1
IniWrite, %push2%, %file%, JAMMA0_%player%, PUSH2
IniWrite, %push3%, %file%, JAMMA0_%player%, PUSH3
IniWrite, %push4%, %file%, JAMMA0_%player%, PUSH4
IniWrite, %push5%, %file%, JAMMA0_%player%, PUSH5
IniWrite, %push6%, %file%, JAMMA0_%player%, PUSH6
IniWrite, %push7%, %file%, JAMMA0_%player%, PUSH7
IniWrite, %push8%, %file%, JAMMA0_%player%, PUSH8
IniWrite, %service%, %file%, JAMMA0_%player%, SERVICE
IniWrite, %start%, %file%, JAMMA0_%player%, START
IniWrite, %coin%, %file%, JAMMA0_%player%, COIN
IniWrite, %digitalup%, %file%, JAMMA0_%player%, DIGITALUP
IniWrite, %digitaldown%, %file%, JAMMA0_%player%, DIGITALDOWN
IniWrite, %digitalleft%, %file%, JAMMA0_%player%, DIGITALLEFT
IniWrite, %digitalright%, %file%, JAMMA0_%player%, DIGITALRIGHT
IniWrite, %analogup%, %file%, JAMMA0_%player%, ANALOGUP
IniWrite, %analogdown%, %file%, JAMMA0_%player%, ANALOGDOWN
IniWrite, %analogleft%, %file%, JAMMA0_%player%, ANALOGLEFT
IniWrite, %analogright%, %file%, JAMMA0_%player%, ANALOGRIGHT
IniWrite, %analogup2%, %file%, JAMMA0_%player%, ANALOGUP2
IniWrite, %analogdown2%, %file%, JAMMA0_%player%, ANALOGDOWN2
IniWrite, %analogleft2%, %file%, JAMMA0_%player%, ANALOGLEFT2
IniWrite, %analogright2%, %file%, JAMMA0_%player%, ANALOGRIGHT2
}

MaximizeWindow(class) {
Global MEmu,plugin,gpuFile
Log("MaximizeWindow - Started")
WinGetPos, appX, appY, appWidth, appHeight, %class%
Log("MaximizeWindow - " . MEmu . " is currently x: " . appX . " y: " . appY . " w: " . appWidth . " h: " . appHeight,4)
widthMaxPercenty := ( A_ScreenWidth / appWidth )
heightMaxPercenty := ( A_ScreenHeight / appHeight )

If ( widthMaxPercenty < heightMaxPercenty )
percentToEnlarge := widthMaxPercenty
Else
percentToEnlarge := heightMaxPercenty

appWidthNew := appWidth * percentToEnlarge
appHeightNew := appHeight * percentToEnlarge
Transform, appX, Round, %appX%
Transform, appY, Round, %appY%
Transform, appWidthNew, Round, %appWidthNew%
Transform, appHeightNew, Round, %appHeightNew%
appXPos := ( A_ScreenWidth / 2 ) - ( appWidthNew / 2 )
appYPos := ( A_ScreenHeight / 2 ) - ( appHeightNew / 2 )
If ( plugin = "gpuDX11" ) {
IniWrite, %appWidthNew%, %gpuFile%, resolution, Width
IniWrite, %appHeightNew%, %gpuFile%, resolution, Height
} Else {
IniWrite, %appWidthNew%, %gpuFile%, resolution, wWidth
IniWrite, %appHeightNew%, %gpuFile%, resolution, wHeight
}
WinMove, %class%,, appXPos, appYPos
Log("MaximizeWindow - " . MEmu . " resized to x: " . appX . " y: " . appY . " w: " . appWidthNew . " h: " . appHeightNew,4)
Log("MaximizeWindow - Ended")
}

; Creates a default gdrCHD.ini or gdrImage.ini in your emu folder if one does not exist already.
CreateDefaultGDROMIni(type) {
Global emuPath
defaultIni := "[main]`r`nimageFileName = `r`nopenDialog = false"
IniType := If type = "chd" ? "gdrCHD.ini" : "gdrImage.ini"
FileAppend, %defaultIni%, % emuPath . "\" . IniType
Return emuPath . "\" . IniType
}

HaltEmu:
If fullscreen = truefullscreen
Send !{ENTER}
Return
RestoreEmu:
If fullscreen = truefullscreen
Send !{ENTER}
Return

HideGUIWindow:
WinSet, Transparent, On, ahk_class window
WinActivate ahk_class window ; once activated, demul starts loading the rom
Return

VMUHide:
If (VMUHidden) {
WinSet, Transparent, off, ahk_ID %VMUWindowID%
UpdateLayeredWindow(extraFixedRes_Bezel_hwnd, extraFixedRes_Bezel_hdc,0,0, A_ScreenWidth, A_ScreenHeight,255)
;WinSet, Transparent, off, ahk_ID %extraFixedRes_Bezel_hwnd%
;WinShow, extraFixedRes_Bezel_GUI
;WinShow, extraFixedRes_Bezel_GUI
VMUHidden := false
} Else {
WinSet, Transparent, 0, ahk_ID %VMUWindowID%
UpdateLayeredWindow(extraFixedRes_Bezel_hwnd, extraFixedRes_Bezel_hdc,0,0, A_ScreenWidth, A_ScreenHeight,0)
;WinSet, Transparent, 0, ahk_ID %extraFixedRes_Bezel_hwnd%
;WinHide, extraFixedRes_Bezel_GUI
VMUHidden := true
}
Return

CloseProcess:
FadeOutStart()
PostMessage, 0x111, 40085,,,ahk_class window ; Stop emulation first for a clean exit
Sleep, 5 ; just like to give a little time before closing
PostMessage, 0x111, 40080,,,ahk_class window ; Exit
Return
Dernière modification par Reaver7 le 25 juin 2015 - 22:26, modifié 2 fois.

Avatar de l’utilisateur
camarade35
Maître
Maître
Messages : 4230
Inscription : 05 sept. 2013 - 01:00
Localisation : Chevaigné
A remercié : 619 fois
A été remercié : 739 fois
Contact :

Re: Demul, Problème de module .ahk

Message par camarade35 » 23 juin 2015 - 23:14

Dis Reaver, désolé mais entre deux sujets ouverts, y'a moyen de dire merci au membre qui a résolu ton problème...
Ce serait cool et plus courtois (comme le svp du sujet précédent).

Merci de ta compréhension.

edit : ton system doit porter un des noms exactement identique au module

mType := Object("Gaelco","gaelco","Sammy Atomiswave","atomiswave","Sega Dreamcast","dc","Sega Hikaru","hikaru","Sega Naomi","naomi","Sega Naomi 2","naomi2")

Si ce n'est pas le cas, cela ne marchera pas.
préservation du patrimoine vidéoludique et de notre planète

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Problème de module .ahk

Message par Reaver7 » 24 juin 2015 - 00:17

Désolé, je m'y atèle de suite.

Par contre j'ai pas tout compris au niveau des explications, je m'explique:

En gros tous mes dossiers en rapport avec Demul se nomment "Sega Dreamcast", a l'interieur de Emulators > Sega Dreamcast j'ai Demul.exe je le renomme en Sega Dreamcast également? Si c'est ça, je viens de le faire, toujours le même soucis. Aurais tu un exemple plus précis?
Merci du coup de main :)

Avatar de l’utilisateur
moustic
Administrateur
Administrateur
Messages : 6940
Inscription : 23 juil. 2014 - 01:00
Localisation : Saint Jean Rohrbach
A remercié : 333 fois
A été remercié : 677 fois

Re: Demul, Problème de module .ahk

Message par moustic » 24 juin 2015 - 00:21

Non non ce que veux dire Cam par rapport à l'erreur de module c'st que ton système ne porte pas un nom autorisé. Vérifie bien tous tes dossiers un ne doit pas porter le bon nom. Il ne faut pas renommer demul ;)
Image

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Problème de module .ahk

Message par belhodis » 24 juin 2015 - 00:23

Sauf erreur c'est le nom de ta wheel, déclaré via HyperHQ, qui doit correspondre à un des noms acceptés par le module. Si tu l'appelles Dreamcast, ça passe pas.

Avatar de l’utilisateur
Cannasteve
Passionné
Passionné
Messages : 173
Inscription : 06 oct. 2014 - 01:00
A remercié : 1 fois
A été remercié : 8 fois

Re: Demul, Problème de module .ahk

Message par Cannasteve » 24 juin 2015 - 00:29

C'est ton module qui pose PB imho, ce qui est bizarre c'est que l'erreur précise la ligne StartModule()...moi souvent je supprime BezelGUI() car je suis sur HYperlaunch 3.0.0.9 et ça pose problème...quel est ta version de démul? moi perso j'ai pris la 0.57

mon module ressemble à ça

Code : Tout sélectionner

MEmu = Demul
MEmuV =  v0.5.7
MURL = http://demul.emulation64.com/
MAuthor = djvj
MVersion = 2.0.2
MCRC = 57AEED04
iCRC = ECAD1562
MID = 635038268881865553
MSystem = "Atomiswave","Sega Dreamcast","Sega Naomi"
;----------------------------------------------------------------------------
; Notes:
; Required - control and nvram files can be found in my user dir on the FTP at /Upload Here/djvj/Sega Naomi\Emulators. Additonal instructions from my orignal HL1.0 script at http://www.hyperspin-fe.com/forum/showpost.php?p=86093&postcount=104
; Required - moduleName ini: can be found in my user dir on the FTP at /Upload Here/djvj/Sega Naomi\Modules\Sega Naomi
; moduleName ini must be placed in same folder as this module
; GDI images must match mame zip names and be extracted and have a .dat extension
; Rom_Extension should be zip
;
; Place the naomi.zip bios archive in the demul\roms subdir
; Set your Video Plugin to gpuOglv3 and set your desired resolution there
; In case your control codes do not match mine, set your desired control type in demul, then open the demul.ini and find section PORTB and look for the device key. Use this number instead of the one I provided
; gpuDX11, gpuDXv3, and gpuDXLegacy are all supported. Define what plugin you want to use for each game in the moduleName ini.
; Read the notes at the top of the moduleName ini on how to control windowed fullscreen, true fullscreen, or windowed mode
; Windowed fullscreen will take effect the 2nd time you run the emu. It has to calculate your resolution on first run.
;
; Controls:
; Start a game of each control type (look in the moduleName ini for these types) and configure your controls to play the game. Copy paste the JAMMA0_0 and JAMMA0_1 (for naomi) or the ATOMISWAVE0_0 and ATOMISWAVE0_1 (for atomiswave) sections into the moduleName ini under the matching controls section.
;
; Troubleshooting:
; For some reason demul's ini files can get corrupted and ahk can't read/write to them correctly.
; If your ini keys are not being read or not writing to their existing keys in the demul inis, create a new file and copy/paste everything from the old ini into the new one and save.
; If you use Fade_Out, the module will force close demul because you cannot send ALT+F4 to demul if another GUI is covering it. Otherwise demul should close cleanly when Fade_Out is disabled. I suggest keeping Fade_Out disabled if you use this emu.
;----------------------------------------------------------------------------
StartModule()
FadeInStart()

; This object controls how the module reacts to different systems. Demul can play a few systems, but needs to know what system you want to run, so this module has to adapt.
mType := Object("Atomiswave","atomiswave","Sega Dreamcast","dc","Sega Naomi","naomi")
ident := mType[systemName]	; search object for the systemName identifier MESS uses
If !ident
	ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this MESS module: " . moduleName)

settingsFile := modulePath . "\" . moduleName . ".ini"
demulFile := CheckFile(emuPath . "\Demul.ini")
padFile := CheckFile(emuPath . "\padDemul.ini")

controls := IniReadCheck(settingsFile, romname, "controls","standard",,1)	; have to read this first so the below loop works

; Read all the keys from the moduleName ini. Format is:
; Section, Key, Default Value, unique var
iniLookup =
( ltrim c
	Settings, GlobalMax, false
	Settings, MaxHideTaskbar
	Settings, ControllerCode, 16777216
	Settings, MouseCode, 131072
	Settings, KeyboardCode, 1073741824
	Settings, LightgunCode, -2147483648
	Settings, LastControlUsed, standard
	Settings, GlobalPlugin, gpuDX11
	Settings, GlobalShaderUsePass1, false
	Settings, GlobalShaderUsePass2, false
	Settings, GlobalShaderNamePass1
	Settings, GlobalShaderNamePass2
	%romName%, Max
	%romName%, LoadDecrypted
	%romName%, Bios
	%romName%, ShaderUsePass1
	%romName%, ShaderUsePass2
	%romName%, ShaderNamePass1
	%romName%, ShaderNamePass2
	%romName%, Plugin
	%romName%, ListSorting
	%controls%_JAMMA0_0, push1,,push1_0
	%controls%_JAMMA0_0, push2,,push2_0
	%controls%_JAMMA0_0, push3,,push3_0
	%controls%_JAMMA0_0, push4,,push4_0
	%controls%_JAMMA0_0, push5,,push5_0
	%controls%_JAMMA0_0, push6,,push6_0
	%controls%_JAMMA0_0, push7,,push7_0
	%controls%_JAMMA0_0, push8,,push8_0
	%controls%_JAMMA0_0, SERVICE,,service_0
	%controls%_JAMMA0_0, START,,start_0
	%controls%_JAMMA0_0, COIN,,coin_0
	%controls%_JAMMA0_0, DIGITALUP,,digitalup_0
	%controls%_JAMMA0_0, DIGITALDOWN,,digitaldown_0
	%controls%_JAMMA0_0, DIGITALLEFT,,digitalleft_0
	%controls%_JAMMA0_0, DIGITALRIGHT,,digitalright_0
	%controls%_JAMMA0_0, ANALOGUP,,analogup_0
	%controls%_JAMMA0_0, ANALOGDOWN,,analogdown_0
	%controls%_JAMMA0_0, ANALOGLEFT,,analogleft_0
	%controls%_JAMMA0_0, ANALOGRIGHT,,analogright_0
	%controls%_JAMMA0_0, ANALOGUP2,,analogup2_0
	%controls%_JAMMA0_0, ANALOGDOWN2,,analogdown2_0
	%controls%_JAMMA0_0, ANALOGLEFT2,,analogleft2_0
	%controls%_JAMMA0_0, ANALOGRIGHT2,,analogright2_0
	%controls%_JAMMA0_1, push1,,push1_1
	%controls%_JAMMA0_1, push2,,push2_1
	%controls%_JAMMA0_1, push3,,push3_1
	%controls%_JAMMA0_1, push4,,push4_1
	%controls%_JAMMA0_1, push5,,push5_1
	%controls%_JAMMA0_1, push6,,push6_1
	%controls%_JAMMA0_1, push7,,push7_1
	%controls%_JAMMA0_1, push8,,push8_1
	%controls%_JAMMA0_1, SERVICE,,service_1
	%controls%_JAMMA0_1, START,,start_1
	%controls%_JAMMA0_1, COIN,,coin_1
	%controls%_JAMMA0_1, DIGITALUP,,digitalup_1
	%controls%_JAMMA0_1, DIGITALDOWN,,digitaldown_1
	%controls%_JAMMA0_1, DIGITALLEFT,,digitalleft_1
	%controls%_JAMMA0_1, DIGITALRIGHT,,digitalright_1
	%controls%_JAMMA0_1, ANALOGUP,,analogup_1
	%controls%_JAMMA0_1, ANALOGDOWN,,analogdown_1
	%controls%_JAMMA0_1, ANALOGLEFT,,analogleft_1
	%controls%_JAMMA0_1, ANALOGRIGHT,,analogright_1
	%controls%_JAMMA0_1, ANALOGUP2,,analogup2_1
	%controls%_JAMMA0_1, ANALOGDOWN2,,analogdown2_1
	%controls%_JAMMA0_1, ANALOGLEFT2,,analogleft2_1
	%controls%_JAMMA0_1, ANALOGRIGHT2,,analogright2_1
)
Loop, Parse, iniLookup, `n
{
	StringSplit, split, A_LoopField, `,, %A_Space%%A_Tab%
	If split4
		%split4% := IniReadCheck(settingsFile, split1, split2, split3,,1)
	Else
		%split2% := IniReadCheck(settingsFile, split1, split2, split3,,1)
	; need to empty the vars for the next loop otherwise they will still have values from the previous loop
	split3:=
	split4:=
}

; Now compare global & rom keys to get final value
max := If (max = "" or max = "ERROR") ? globalMax : max
plugin := If (plugin = "" or plugin = "ERROR") ? globalPlugin : plugin
shaderUsePass1 := If (shaderUsePass1 = "" or shaderUsePass1 = "ERROR") ? globalShaderUsePass1 : shaderUsePass1
shaderUsePass2 := If (shaderUsePass2 = "" or shaderUsePass2 = "ERROR") ? globalShaderUsePass2 : shaderUsePass2
shaderNamePass1 := If (shaderNamePass1 = "" or shaderNamePass1 = "ERROR") ? globalShaderNamePass1 : shaderNamePass1
shaderNamePass2 := If (shaderNamePass2 = "" or shaderNamePass2 = "ERROR") ? globalShaderNamePass2 : shaderNamePass2

; Verify user set desired gpu plugin name correctly
If ( plugin != "gpuDX11" And plugin != "gpuDXv3" And plugin != "gpuDXLegacy" ) or ( plugin = "" or plugin = "ERROR" )
	ScriptError(plugin . " is not a supported gpu plugin.`nLeave the plugin blank to use the default ""gpuDX11"".`nValid options are gpuDX11, gpuDXv3, or gpuDXLegacy.")

; check for the specified gpu plugin
gpuFile := CheckFile(emuPath . "\" . plugin . ".ini")

; This updates the DX11gpu ini file to turn List Sorting on or off. Depending on the games, turning this on for some games may remedy missing graphics, having it off on other games may fix corrupted graphics. Untill they improve the DX11gpu, this is the best it's gonna get.
If plugin = gpuDX11
	If ListSorting = true
		IniWrite, 0, %gpuFile%, main, AutoSort	; 0 enables Auto Sort in demul 0.5.7, opposite from 0.5.6
	Else
		IniWrite, 1, %gpuFile%, main, AutoSort	; Disabling Auto Sort unless someone specifies it to be on or off in settings

; This updates the demul.ini with your gpu plugin choice for the selected rom
IniWrite, %plugin%.dll, %demulFile%, plugins, gpu

 ; Shader Effects
 If plugin = gpuDX11	; Demul 0.5.7 only supports shaders using the gpuDX11 plugin
 {
	Loop, 2 {
		shaderUsePass%A_Index% := If (ShaderUsePass%A_Index% != "" and ShaderUsePass%A_Index% != "ERROR" ? (ShaderUsePass%A_Index%) : (GlobalShaderUsePass%A_Index%))	; determine what shaderUsePass to use
		IniRead, currentusePass%A_Index%, %gpuFile%, shaders, usePass%A_Index%
		If (shaderUsePass%A_Index% = "true")
		{
			shaderNamePass%A_Index% := If (ShaderNamePass%A_Index% != "" and ShaderNamePass%A_Index% != "ERROR" ? (ShaderNamePass%A_Index%) : (GlobalShaderNamePass%A_Index%))	; determine what shaderNamePass to use
			If shaderNamePass%A_Index% not in FXAA,HDR-TV,SCANLINES,CARTOON,RGB DOT(MICRO),RGB DOT(TINY),BLUR
				ScriptError(shaderNamePass%A_Index% . " is not a valid choice for a shader. Your options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), or BLUR.")
			If (currentusePass%A_Index% = 0)
				IniWrite, 1, %gpuFile%, shaders, usePass%A_Index%	; turn shader on in gpuDX11 ini
			IniWrite, % shaderNamePass%A_Index%, %gpuFile%, shaders, shaderPass%A_Index%	; update gpuDX11 ini with the shader name to use
		}Else If (shaderUsePass%A_Index% != "true" and currentusePass%A_Index% = 1)
			IniWrite, 0, %gpuFile%, shaders, usePass%A_Index%	; turn shader off in gpuDX11 ini
	}
}

If ident = dc
{
	7z(romPath, romName, romExtension, 7zExtractPath)
	If ( romExtension = ".cdi" || romExtension = ".mds" || romExtension = ".ccd" || romExtension = ".nrg" || romExtension = ".gdi" || romExtension = ".cue" ) {
		gdrImageFile := CheckFile(emuPath . "\gdrImage.ini")
		FileDelete, %gdrImageFile%
		Sleep, 500
		IniWrite, gdrImage.dll, %demulFile%, plugins, gdr
		IniWrite, false, %gdrImageFile%, Main, openDialog
		IniWrite, %romPath%\%romName%%romExtension%, %gdrImageFile%, Main, imagefilename
	} Else If romExtension = .chd
	{
		gdrCHDFile := CheckFile(emuPath . "\gdrCHD.ini")
		FileDelete, %gdrCHDFile%
		Sleep, 500
		IniWrite, false, %gdrCHDFile%, Main, openDialog
		IniWrite, gdrCHD.dll, %demulFile%, plugins, gdr
		IniWrite, %romPath%\%romName%%romExtension%, %gdrCHDFile%, Main, imagefilename
	} Else
		ScriptError(romExtension . " is not a supported file type for this " . moduleName . " module.")

	IniWrite, 1, %demulFile%, main, region ; Set BIOS to Auto Region
} Else {	; all other systems, Naomi and Atomiswave
	; This updates the demul.ini with your Bios choice for the selected rom
	If ( Bios != "" and Bios != "ERROR" ) {
		Bios := RegExReplace(Bios,"\s.*")	; Cleans off the added text from the key's value so only the number is left
		IniWrite, false, %demulFile%, main, naomiBiosAuto	; turning auto bios off so we can use a specific one instead
		IniWrite, %Bios%, %demulFile%, main, naomiBios	; setting specific bios user has set from the moduleName ini
	} Else
		IniWrite, true, %demulFile%, main, naomiBiosAuto	; turning auto bios on if user did not specify a specific one
}

; This section writes your custom keys to the padDemul.ini. Naomi games had many control panel layouts. The only way we can accomodate these differing controls, is to keep track of them all and write them to the ini at the launch of each game.
; First we check if the last controls used are the same as the game we want to play, so we don't waste time updating the ini if it is not necessary. For example playing 2 sfstyle type games in a row, we wouldn't need to write to the ini.

; This section tells demul what arcade control type should be connected to the game. Options are standard (aka controller), mouse, lightgun, or keyboard
If ( controls = "lightgun" || controls = "mouse" )
	IniWrite, %MouseCode%, %demulFile%, PORTB, device
Else If ( controls = "keyboard" )
	IniWrite, %KeyboardCode%, %demulFile%, PORTB, device
Else ; accounts for all other control types
	IniWrite, %ControllerCode%, %demulFile%, PORTB, device

If ( LastControlUsed != controls ) {	; find out last controls used for the system we are launching
	WriteControls(padFile, 0,push1_0,push2_0,push3_0,push4_0,push5_0,push6_0,push7_0,push8_0,SERVICE_0,START_0,COIN_0,DIGITALUP_0,DIGITALDOWN_0,DIGITALLEFT_0,DIGITALRIGHT_0,ANALOGUP_0,ANALOGDOWN_0,ANALOGLEFT_0,ANALOGRIGHT_0,ANALOGUP2_0,ANALOGDOWN2_0,ANALOGLEFT2_0,ANALOGRIGHT2_0)
	WriteControls(padFile, 1,push1_1,push2_1,push3_1,push4_1,push5_1,push6_1,push7_1,push8_1,SERVICE_1,START_1,COIN_1,DIGITALUP_1,DIGITALDOWN_1,DIGITALLEFT_1,DIGITALRIGHT_1,ANALOGUP_1,ANALOGDOWN_1,ANALOGLEFT_1,ANALOGRIGHT_1,ANALOGUP2_1,ANALOGDOWN2_1,ANALOGLEFT2_1,ANALOGRIGHT2_1)
	IniWrite, %controls%, %settingsFile%, Settings, LastControlUsed
}

; Setting demul to use true fullscreen if defined in settings.ini, otherwise sets demul to run windowed. This is for gpuDX11 plugin only
If plugin = gpuDX11
	If Max = fullscreen
		IniWrite, 1, %gpuFile%, main, UseFullscreen
	Else
		IniWrite, 0, %gpuFile%, main, UseFullscreen

If Max = true
{
	If maxHideTaskbar = true
	{
		WinHide, ahk_class Shell_TrayWnd
		WinHide, Start ahk_class Button
	}
	; Create black background to give the emu the fullscreen look
	Gui 2: -Caption +ToolWindow
	Gui 2: Color, Black
	Gui 2: Show, x0 y0 h%A_ScreenHeight% w%A_ScreenWidth%
}

Sleep, 250

;  Construct the CLI for demul and send romName if naomi or atomiswave. Dreamcast needs a full path and romName.
If LoadDecrypted = true	; decrypted naomi rom
	romCLI := "-customrom=" . """" . romPath . "\" . romName . ".bin"""
Else If ident = dc	; dreamcast game
	romCLI := " -image=" . """" . romPath . "\" . romName . romExtension . """"
Else	; standard naomi rom
	romCLI := "-rom=" . romName

Run(executable .  " -run=" . ident . " " . romCLI, emuPath,, emuPID)
; Sleep, 1000 ; need a second for demul to launch, increase if yours takes longer and the emu is appearing too soon

Loop { ; looping until demul is done loading rom and gpu starts showing frames
	Sleep, 200
	WinGetTitle, winTitle, ahk_class window
	StringSplit, winTextSplit, winTitle, %A_Space%
	If ( winTextSplit5 = "gpu:" And winTextSplit6 != "0" And winTextSplit6 != "1" )
		break
}
WinActivate ahk_class window

If ( ( plugin = "gpuDXv3" Or plugin = "gpuDXLegacy" ) && Max = "fullscreen" )
	Send !{ENTER} ; go fullscreen for gpuDXv3 and gpuDXLegacy plugins only

; This is where we calculate and maximize demul's window using our pseudo fullscreen code
If Max = true
{
	WinSet, Style, -0x40000, ahk_class window ; Removes the border of the game window
	WinSet, Style, -0xC00000, ahk_class window ; Removes the TitleBar
	Send, {F3} ; Removes the MenuBar
	MaximizeWindow("ahk_class window") ; this will take effect after you run demul once because we cannot stretch demul's screen while it is running.
}

FadeInExit()
Process("WaitClose", executable)

Gui 2: Destroy

FadeOutExit()

If (Max = "true" and maxHideTaskbar = "true") {
	WinShow,ahk_class Shell_TrayWnd
	WinShow,Start ahk_class Button
}

ExitModule()


 ; Write new controls to padDemul.ini
WriteControls(file, player,push1,push2,push3,push4,push5,push6,push7,push8,service,start,coin,digitalup,digitaldown,digitalleft,digitalright,analogup,analogdown,analogleft,analogright,analogup2,analogdown2,analogleft2,analogright2) {
	IniWrite, %push1%, %file%, JAMMA0_%player%, PUSH1
	IniWrite, %push2%, %file%, JAMMA0_%player%, PUSH2
	IniWrite, %push3%, %file%, JAMMA0_%player%, PUSH3
	IniWrite, %push4%, %file%, JAMMA0_%player%, PUSH4
	IniWrite, %push5%, %file%, JAMMA0_%player%, PUSH5
	IniWrite, %push6%, %file%, JAMMA0_%player%, PUSH6
	IniWrite, %push7%, %file%, JAMMA0_%player%, PUSH7
	IniWrite, %push8%, %file%, JAMMA0_%player%, PUSH8
	IniWrite, %service%, %file%, JAMMA0_%player%, SERVICE
	IniWrite, %start%, %file%, JAMMA0_%player%, START
	IniWrite, %coin%, %file%, JAMMA0_%player%, COIN
	IniWrite, %digitalup%, %file%, JAMMA0_%player%, DIGITALUP
	IniWrite, %digitaldown%, %file%, JAMMA0_%player%, DIGITALDOWN
	IniWrite, %digitalleft%, %file%, JAMMA0_%player%, DIGITALLEFT
	IniWrite, %digitalright%, %file%, JAMMA0_%player%, DIGITALRIGHT
	IniWrite, %analogup%, %file%, JAMMA0_%player%, ANALOGUP
	IniWrite, %analogdown%, %file%, JAMMA0_%player%, ANALOGDOWN
	IniWrite, %analogleft%, %file%, JAMMA0_%player%, ANALOGLEFT
	IniWrite, %analogright%, %file%, JAMMA0_%player%, ANALOGRIGHT
	IniWrite, %analogup2%, %file%, JAMMA0_%player%, ANALOGUP2
	IniWrite, %analogdown2%, %file%, JAMMA0_%player%, ANALOGDOWN2
	IniWrite, %analogleft2%, %file%, JAMMA0_%player%, ANALOGLEFT2
	IniWrite, %analogright2%, %file%, JAMMA0_%player%, ANALOGRIGHT2
}

MaximizeWindow(class) {
		Global
		WinGetPos, appX, appY, appWidth, appHeight, %class%
		widthMaxPercenty := ( A_ScreenWidth / appWidth )
		heightMaxPercenty := ( A_ScreenHeight / appHeight )

		If  ( widthMaxPercenty < heightMaxPercenty )
			percentToEnlarge := widthMaxPercenty
		Else
			percentToEnlarge := heightMaxPercenty

		appWidthNew := appWidth * percentToEnlarge
		appHeightNew := appHeight * percentToEnlarge
		Transform, appX, Round, %appX%
		Transform, appY, Round, %appY%
		Transform, appWidthNew, Round, %appWidthNew%
		Transform, appHeightNew, Round, %appHeightNew%
		appXPos := ( A_ScreenWidth / 2 ) - ( appWidthNew / 2 )
		appYPos := ( A_ScreenHeight / 2 ) - ( appHeightNew / 2 )
		If ( plugin = "gpuDX11" ) {
			IniWrite, %appWidthNew%, %gpuDX11File%, resolution, Width
			IniWrite, %appHeightNew%, %gpuDX11File%, resolution, Height
		} Else {
			IniWrite, %appWidthNew%, %gpuFile%, resolution, wWidth
			IniWrite, %appHeightNew%, %gpuFile%, resolution, wHeight
		}
		WinMove, %class%,, appXPos, appYPos
	}

HaltEmu:
	If Max = fullscreen
		Send !{ENTER}
Return
RestoreEmu:
	If Max = fullscreen
		Send !{ENTER}
Return

CloseProcess:
	FadeOutStart()
	If fadeOut != true	; cannot send ALT+F4 to a background window (controlsend doesn't work), so we have to force close instead.
	{
		; demul 0.5.7 crashes 50% of the time if you try to close it any other way
		Send, {F3}{Alt}{Up}s{Enter}
		Sleep, 50
	}
	Process("Close", emuPID) ; we have to close this way otherwise demul crashes with WinClose
Return

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Problème de module .ahk

Message par Reaver7 » 24 juin 2015 - 00:29

Pourtant je viens de les vérifier, ils sont tous bons, regardez.
Image
Image

J'comprends pas du tout la ou j'ai faux, parce que sur NullDC j'ai aucun problème (je veux prendre Demul car il a moins de glitch texture)

Cannasteve je vais tester avec tes recommandations :)

Avatar de l’utilisateur
Cannasteve
Passionné
Passionné
Messages : 173
Inscription : 06 oct. 2014 - 01:00
A remercié : 1 fois
A été remercié : 8 fois

Re: Demul, Problème de module .ahk

Message par Cannasteve » 24 juin 2015 - 00:43

après prendre un module trop récent c jamais bon ils rajoutent des lignes que le launcher ou l'émulateur prend pas encore en charge...je viens juste d'avoir le tour pour un module dolphin trop récent
dedans y'avait la ligne
BezelGUI()...qui n'est pas pris en charge avec ma version d'hyperlaunch
et Networksession.... qui n'est pas pris en charge par ma version de l'émulateur.
En les supprimant à la main tout tourne nickel malgrès que j'ai dolphinn 3.5 et que le module est prévu pour une version 4.0+ sous rocketlauncher si je dis pas de connerie après jsuis pas un expert non plus :p

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Problème de module .ahk

Message par Reaver7 » 24 juin 2015 - 00:46

J'ai exactement le même problème avec ton module et la version 570
J'ai vraiment pas de bol. Pourtant j'ai bien vérifié, tout s'appelle Sega Dreamcast, y compris ma wheel.

Même quand je remet tout a zero et que je met "dc" a la place de sega dreamcast, en configurant toutes les paths, ça veut pas.
Demul veut vraiment pas aller dans ma heavybox : /

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Problème de module .ahk

Message par belhodis » 24 juin 2015 - 00:52

Perso j'utilise le module Demul 0.5.7 et j'ai aucun soucis. Il est indiqué aussi qu'il faut un demul.ini dans le même répertoire que le module, c'est bien le cas ?
Pour le module 0.5.7 je peux te l'envoyer si tu veux (avec son ini) (edit : en MP)

Avatar de l’utilisateur
Cannasteve
Passionné
Passionné
Messages : 173
Inscription : 06 oct. 2014 - 01:00
A remercié : 1 fois
A été remercié : 8 fois

Re: Demul, Problème de module .ahk

Message par Cannasteve » 24 juin 2015 - 00:59

Jpeux aussi te filer les miens
https://mega.co.nz/#!6gMmULTS!6mF2U9pvP ... gKa4X2MgtM" onclick="window.open(this.href);return false;

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Problème de module .ahk

Message par Reaver7 » 24 juin 2015 - 01:13

Je vais être pénible et je m'en excuse, mais je met tout ça ou, et j'y renomme ou pas?
Car là j'ai encore repris l'installation de A à Z, ça me met la même chose.


Mon systeme se nomme Sega Dreamcast.
Vu que j'y comprends rien j'ai copié collé les modules de BelHodis dans mon dossier module "Sega Dreamcast"
Dedans j'ai deux fichiers Sega Dreamcast, un en .ini, l'autre en .ahk qui ne sont ni plus ni moins les fichiers qu'il m'a envoyé que j'ai renommé
je les ai aussi renommés avec Demul.ini et Demul.ahk, j'ai exactement les mêmes erreurs.

Je récapitule ce que je fais:

Je retire tous les anciens dossiers dreamcast foireux que j'ai crées via hyperHQ, et j'efface ceux qui restent a la main.
Je crée un dossier Sega Dreamcast dans Emulators => je dezippe la version 57 de Demul
Je lance Demul.exe, ça me crée un fichier Demul.ini
Je lance HyperHQ, je crée une wheel que je nomme Sega Dreamcast
J'indique les chemins Emulators>Sega Dreamcast & Roms > Sega Dreamcast

Dans mon dossier Sega Dreamcast je met mon pack de bios ainsi que SoulCalibur.cdi
Dans Modules, je vais dans le dossier Sega Dreamcast, là je dezippe les fichiers de Behodis qui se nomment Demul(5.7.0v) un est au format AHK, l'autre au format ini.
Je les renomme en Sega Dreamcast.ini et .ahk respectivement

Je lanche Hyperlaunch, je choisis Sega Dreamcast & SoulCalibur, même erreur.
Image

Et les autres fichiers, là ou j'ai tout essayé niveau nom
Image

Je vais éventuellement voir si je peux trouver un pack chinois avec la dreamcast pour faire un vulgaire copier coller, car là je vois pas du tout ou je prêche.

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Erreur au lancement (hyperlaunch)

Message par belhodis » 24 juin 2015 - 09:38

Au moins on peut pas dire que tu t'accroches pas !
J'essaye de revoir ça dans la journée mais je serai mieux en mesure de t'aider ce soir devant mon pc, pour comparer ton setup et le mien. Tkt ça finira par fonctionner !

Avatar de l’utilisateur
camarade35
Maître
Maître
Messages : 4230
Inscription : 05 sept. 2013 - 01:00
Localisation : Chevaigné
A remercié : 619 fois
A été remercié : 739 fois
Contact :

Re: Demul, Erreur au lancement (hyperlaunch)

Message par camarade35 » 24 juin 2015 - 10:04

Peut-être ouvrir HLHQ pour contrôler tes paramètres aussi.
Trop pressé le Reaver ^^
préservation du patrimoine vidéoludique et de notre planète

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Erreur au lancement (hyperlaunch)

Message par belhodis » 24 juin 2015 - 10:29

Justement je me demandai ce que tu faisais en parametrage coté Hyperlaunch, tu n'en dis rien. Pourtant le module se lance, il y a donc bien un lien de fait....Bizarre ! Vu que le reste semble correct -même si renommer le module ne sert à rien - ton probleme vient probablement du setup HL.

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Erreur au lancement (hyperlaunch)

Message par Reaver7 » 24 juin 2015 - 16:50

Me revoila, rien de nouveau, j'ai passé une bonne partie de la journée a installer le pc & la heavybox de Madmetalslug15 qui en avait fait la requete sur le fofo, une bien belle rencontre :)

J'ai toujours l'erreur au lancement de hyperlaunch. j'ai rererevérifié les chemins, je vois rien de choquant.

Voici mon HyperHQ de Sega Dreamcast:
Image

Dans le dossier EMULATORS> Sega Dreamcast, là ou il y a Demul.exe et ses fichiers, voici la tronche de mon Demul.ini

Code : Tout sélectionner

# Glboal Settings:
# GlobalMax -										true (gives a windowed mode full screen, not true fullscreen), fullscreen (sets demul to go true fullscreen), false (demul runs in a normal window)
# MaxHideTaskbar -							If Max is true, hides the taskbar.
# GlobalPlugin -									Choices are gpuDX11, gpuDXv3, and gpuDXLegacy
# GlobalShaderUsePass 1 & 2 -		If true, turns on shader support for demul globally. (shaders are only supported using gpuDX11 video plugin)
# GlobalShaderNamePass 1 & 2 -	The shader to use for all games that do not have a custom shader defined in their section. Options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), BLUR
# Per-Game Settings:
# Controls -											the controls prefix you want this game to use. Default is Standard if not set. For example to use driving controls, set this key to driving, and it will load the driving_JAMMA0_0 and driving_JAMMA0_1 profiles.
# Bios -													Set the number to the bios you want to use. Blank is automatic. Get this from setting the bios in the emu, then opening the demul ini and seeing what number it was set to.
# Max -													true (gives a windowed mode full screen, not true fullscreen), fullscreen (sets demul to go true fullscreen), false (demul runs in a normal window). Overrides the global setting.
# Plugin -												Choices are gpuDX11, gpuDXv3, and gpuDXLegacy, Overrides the global setting.
# ShaderUsePass 1 & 2 -					If true, turns on shader support for demul per-rom. (shaders are only supported using gpuDX11 video plugin). Overrides the global setting.
# ShaderNamePass 1 & 2 -				These are the shaders you want to use per-rom. Options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), BLUR. Overrides the global setting.


[Settings]
ControllerCode = 16777216
MouseCode = 131072
KeyboardCode = 1073741824
LightgunCode = -2147483648
LastControlUsed = standard
GlobalMax = fullscreen
MaxHideTaskbar = true
GlobalPlugin = gpuDX11
GlobalShaderUsePass1 = true
GlobalShaderUsePass2 = false
GlobalShaderNamePass1 = FXAA
GlobalShaderNamePass2 = 


#/////////////////////////////////////// NAOMI & ATOMISWAVE CONTROLS //////////////////////////////////////////
[standard_JAMMA0_0]
PUSH1 = 16777216
PUSH2 = 16777217
PUSH3 = 16777218
PUSH4 = 16777219
PUSH5 = 16777220
PUSH6 = 16777221
PUSH7 = 22
PUSH8 = 23
SERVICE = 16777225
START = 28
COIN = 16777224
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[standard_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[sfstyle_JAMMA0_0]
PUSH1 = 46
PUSH2 = 45
PUSH3 = 20
PUSH4 = 18
PUSH5 = 44
PUSH6 = 21
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[sfstyle_JAMMA0_1]
PUSH1 = 50
PUSH2 = 49
PUSH3 = 24
PUSH4 = 47
PUSH5 = 48
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[ggxstyle_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 20
PUSH5 = 21
PUSH6 = 45
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[ggxstyle_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 24
PUSH5 = 25
PUSH6 = 49
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[reverse_JAMMA0_0]
PUSH1 = 46
PUSH2 = 44
PUSH3 = 18
PUSH4 = 45
PUSH5 = 20
PUSH6 = 21
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[reverse_JAMMA0_1]
PUSH1 = 50
PUSH2 = 48
PUSH3 = 47
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[driving_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 0
PUSH7 = 22
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[driving_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[18wheel_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 0
PUSH6 = 0
PUSH7 = 0
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[18wheel_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 20
DIGITALDOWN = 22
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[jambodriving_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 0
PUSH7 = 22
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[jambodriving_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 33554437
DIGITALDOWN = 33554693
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[wldrider_JAMMA0_0]
PUSH1 = 0
PUSH2 = 0
PUSH3 = 44
PUSH4 = 45
PUSH5 = 0
PUSH6 = 0
PUSH7 = 0
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 46
DIGITALRIGHT = 18
ANALOGUP = 23
ANALOGDOWN = 20
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 22
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[wldrider_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[fps_JAMMA0_0]
PUSH1 = 22
PUSH2 = 23
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 21
PUSH7 = 46
PUSH8 = 18
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434


[fps_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


[samba_JAMMA0_0]
PUSH1 = 21
PUSH2 = 20
PUSH3 = 23
PUSH4 = 22
PUSH5 = 46
PUSH6 = 18
PUSH7 = 45
PUSH8 = 44
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554693
ANALOGDOWN = 33554437
ANALOGLEFT = 33554690
ANALOGRIGHT = 33554434
ANALOGUP2 = 33554689
ANALOGDOWN2 = 33554433
ANALOGLEFT2 = 33554688
ANALOGRIGHT2 = 33554432


[samba_JAMMA0_1]
PUSH1 = 24
PUSH2 = 25
PUSH3 = 48
PUSH4 = 49
PUSH5 = 50
PUSH6 = 47
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0


#/////////////////////////////////////// SEGA NAOMI CART //////////////////////////////////////////
[18wheelr]
Controls = 18wheel
Bios = 1
Max = fullscreen


[18wheels]
Controls = 18wheel


[18whlrur]
Controls = 18wheel


[alpiltdx]
Controls = driving


[alpilota]
Controls = driving


[capsnk]
Controls = sfstyle


[capsnka]
Controls = sfstyle


[crzytaxi]
Controls = driving
Plugin = gpuDX11


[csmash]
Emulator = makaron


[cspike]
Controls = reverse


[deathcox]
Controls = lightgun


[f355]
Controls = driving


[f355twin]
Controls = driving


[f355twn2]
Controls = driving


[ggx]
Controls = ggxstyle


[gunsur2]
Controls = fps


[hotd2]
Controls = lightgun


[hotd2o]
Controls = lightgun


[hotd2p]
Controls = lightgun


[jambo]
Controls = jambodriving


[mbaa]
Controls = ggxstyle


[mbaaa]
Controls = ggxstyle


[mvsc2]
Controls = sfstyle


[pjustic]
Controls = sfstyle


[samba]
Controls = samba


[samba2k]
Controls = samba


[shangril]
Controls = keyboard


[sl2007]
LoadDecrypted = 


[suchie3]
Controls = keyboard


[totd]
Controls = keyboard


#/////////////////////////////////////////// SEGA NAOMI GDROM //////////////////////////////////////////////
[confmiss]
Controls = lightgun


[cvs2gd]
Controls = sfstyle


[cvsgd]
Controls = sfstyle


[dygolf]
Controls = mouse


[ggxx]
Controls = ggxstyle


[ggxxac]
Controls = ggxstyle


[ggxxrl]
Controls = ggxstyle


[ggxxsla]
Controls = ggxstyle


[keyboard]
Controls = keyboard


[lupinsho]
Controls = lightgun


[luptype]
Controls = keyboard


[mamonoro]
LoadDecrypted = 


[meltyb]
Controls = ggxstyle


[meltyba]
Controls = ggxstyle


[meltybld]
Controls = ggxstyle


[mok]
Controls = lightgun


[radirgyn]
LoadDecrypted = 


[sfz3ugd]
Controls = sfstyle


[usagiym]
Controls = keyboard


#////////////////////////////////////////////// SEGA NAOMI 2 CART/////////////////////////////////////////////
[clubkrtd]
Controls = driving


[clubkrte]
Controls = driving


[clubk2k3]
Controls = driving


[kingrt66]
Controls = driving


[wldrider]
Controls = wldrider


#////////////////////////////////////////// SEGA NAOMI 2 GDROM /////////////////////////////////////////
[initd]
Controls = driving


[initdexp]
Controls = driving


[initdv2e]
Controls = driving


[initdv2j]
Controls = driving


[initdv2jo]
Controls = driving


[initdv3e]
Controls = driving


[initdv3j]
Controls = driving


[initdv3jb]
Controls = driving


#////////////////////////////////////////// ATOMISWAVE /////////////////////////////////////////
[anmlbskt]
Plugin = gpuDX11


[demofist]
Plugin = gpuDX11


[dirtypig]
Plugin = gpuDX11


[dolphin]
Plugin = gpuDX11


[fotns]
Controls = sfstyle
Plugin = gpuDX11


[ftspeed]
Plugin = gpuDX11


[ggisuka]
Controls = ggxstyle
Plugin = gpuDX11


[ggx15]
Plugin = gpuDX11


[kofxi]
Plugin = gpuDX11


[kofnw]
Controls = sfstyle
Plugin = gpuDX11


[kofnwj]
Controls = sfstyle
Plugin = gpuDX11


[kov7sprt]
Plugin = gpuDX11


[maxspeed]
Plugin = gpuDX11


[mslug6]
Plugin = gpuDX11


[ngbc]
Plugin = gpuDX11


[rangrmsn]
Controls = lightgun
Plugin = gpuDX11


[rumblef]
Controls = sfstyle
Plugin = gpuDX11


[rumblef2]
Plugin = gpuDX11


[salmankt]
Plugin = gpuDX11


[samsptk]
Plugin = gpuDX11


[sprtshot]
Controls = lightgun
Plugin = gpuDX11


[vfurlong]
Plugin = gpuDX11


[xtrmhunt]
Controls = lightgun
Plugin = gpuDX11


[xtrmhnt2]
Controls = lightgun
Plugin = gpuDX11


[main]
region = 1
broadcast = 1
cpumode = 1
lastEmuRunMode = 0
videomode = 768
timehack = true
gdrmode = false
windowX = 20
windowY = 20
dcBios = 2
naomiBiosAuto = true
naomiLLEMIE = false
naomifreq = 1


[PORTA]
device = 0
port0 = 0
port1 = 0
port2 = 0
port3 = 0
port4 = 0


[VMS]
VMSA0 = 
VMSA1 = 
VMSA2 = 
VMSA3 = 
VMSA4 = 
VMSB0 = 
VMSB1 = 
VMSB2 = 
VMSB3 = 
VMSB4 = 
VMSC0 = 
VMSC1 = 
VMSC2 = 
VMSC3 = 
VMSC4 = 
VMSD0 = 
VMSD1 = 
VMSD2 = 
VMSD3 = 
VMSD4 = 


[PORTB]
device = 0
port0 = 0
port1 = 0
port2 = 0
port3 = 0
port4 = 0


[PORTC]
device = 0
port0 = 0
port1 = 0
port2 = 0
port3 = 0
port4 = 0


[PORTD]
device = 0
port0 = 0
port1 = 0
port2 = 0
port3 = 0
port4 = 0


[plugins]
directory = I:\HeavyBox\Emulators\Sega Dreamcast\plugins\
gdr = gdrImage.dll
gpu = gpuDX11.dll
spu = spuDemul.dll
pad = padDemul.dll
net = netDemul.dll


[files]
nvram = I:\HeavyBox\Emulators\Sega Dreamcast\nvram\
roms0 = I:\HeavyBox\Roms\Sega Dreamcast\
roms1 = I:\HeavyBox\Roms\Sega Dreamcast\
romsPathsCount = 2
Ensuite voici mon Settings > Sega Dreamcast.ini

Code : Tout sélectionner

[exe info]
path=I:\HeavyBox\Emulators\Sega Dreamcast\
rompath=I:\HeavyBox\Roms\Sega Dreamcast\
userompath=
exe=demul.exe
romextension=cdi
parameters=undefined
searchsubfolders=
pcgame=false
winstate=HIDDEN
hyperlaunch=true
Per_Game_Modules=false
Skipchecks=false
Hide_Cursor=use_global
Hide_Desktop=use_global
Hide_Taskbar=use_global
CPWizard_Enabled=use_global
CPWizard_Delay=use_global
CPWizard_Params=use_global
Fade_In=use_global
Fade_Out=use_global
Fade_Color=use_global
Fade_In_Duration=use_global
Fade_Out_Duration=use_global
Fade_In_Delay=use_global
7z_Enabled=use_global
7z_Extract_Dir=use_global
7z_Delete_Temp=use_global
Keymapper_Enabled=use_global
Keymapper=use_global
MultiGame_Enabled=use_global
MultiGame_Background_Color=use_global
MultiGame_Side_Padding=use_global
MultiGame_Y_Offset=use_global
MultiGame_Image_Adjust=use_global
MultiGame_Font=use_global
MultiGame_Text_1_Options=use_global
MultiGame_Text_1_Text=use_global
MultiGame_Text_2_Options=use_global
MultiGame_Text_2_Offset=use_global
MultiGame_Use_Sound=use_global
MultiGame_Sound_Frequency=use_global
MultiGame_Exit_Effect=use_global
MultiGame_Selected_Effect=use_global
MultiGame_Use_Game_Art=use_global
MultiGame_Art_Folder=use_global
Cp_Wizard_Enabled=use_global

[filters]
parents_only=false
themes_only=false
wheels_only=false
roms_only=false

[themes]
use_parent_vids=true
use_parent_themes=false
animate_out_default=false
reload_backgrounds=false

[wheel]
alpha=.15
small_alpha=1
style=normal
speed=high
pin_center_width=500
horz_wheel_y=512
vert_wheel_position=right
y_rotation=center
norm_large=360
norm_small=230
vert_large=400
vert_small=240
pin_large=500
pin_small=200
horz_large=240
horz_small=150
letter_wheel_x=800
letter_wheel_y=384
text_width=700
text_font=Style4
small_text_width=260
large_text_width=400
text_stroke_size=6
text_stroke_color=0x000000
text_color1=0x00BFFD
text_color2=0xFFFFFF
text_color3=0x00BFFD
color_ratio=139
shadow_distance=0
shadow_angle=45
shadow_color=0x000000
shadow_alpha=1
shadow_blur=0

[pointer]
animated=true
x=975
y=384

[video defaults]
path=

[sounds]
game_sounds=true
wheel_click=true

[navigation]
game_jump=50
use_indexes=false
jump_timer=400
remove_info_wheel=false
remove_info_text=false
use_last_game=false
last_game=bm6thmix
random_game=false

[Special Art A]
default=false
active=true
x=512
y=720
in=0.4
out=0.4
length=3
delay=0
type=normal
start=bottom

[Special Art B]
default=true
active=true
x=512
y=740
in=0.4
out=0.4
length=3
delay=0
type=fade
start=none

[Special Art C]
active=true
x=512
y=384
in=0
out=0
length=3
delay=10
type=fade
start=none

[Game Text]
game_text_active=true
show_year=true
show_manf=true
show_description=true
text_color1=0xffffff
text_color2=0x0099cc
stroke_color=0x000000
text_font=Style1
text1_textsize=26
text1_strokesize=7
text1_x=32
text1_y=610
text2_textsize=36
text2_strokesize=8
text2_x=30
text2_y=640

Mon module Sega Dreamcast.ahk

Code : Tout sélectionner

MEmu = Demul
MEmuV =  v0.5.7
MURL = http://demul.emulation64.com/
MAuthor = djvj
MVersion = 2.0.2
MCRC = 57AEED04
iCRC = ECAD1562
MID = 635038268881865553
MSystem = "Sammy Atomiswave","Sega Dreamcast","Sega Naomi"
;----------------------------------------------------------------------------
; Notes:
; Required - control and nvram files can be found in my user dir on the FTP at /Upload Here/djvj/Sega Naomi\Emulators. Additonal instructions from my orignal HL1.0 script at http://www.hyperspin-fe.com/forum/showpost.php?p=86093&postcount=104
; Required - moduleName ini: can be found in my user dir on the FTP at /Upload Here/djvj/Sega Naomi\Modules\Sega Naomi
; moduleName ini must be placed in same folder as this module
; GDI images must match mame zip names and be extracted and have a .dat extension
; Rom_Extension should be zip
;
; Place the naomi.zip bios archive in the demul\roms subdir
; Set your Video Plugin to gpuOglv3 and set your desired resolution there
; In case your control codes do not match mine, set your desired control type in demul, then open the demul.ini and find section PORTB and look for the device key. Use this number instead of the one I provided
; gpuDX11, gpuDXv3, and gpuDXLegacy are all supported. Define what plugin you want to use for each game in the moduleName ini.
; Read the notes at the top of the moduleName ini on how to control windowed fullscreen, true fullscreen, or windowed mode
; Windowed fullscreen will take effect the 2nd time you run the emu. It has to calculate your resolution on first run.
;
; Controls:
; Start a game of each control type (look in the moduleName ini for these types) and configure your controls to play the game. Copy paste the JAMMA0_0 and JAMMA0_1 (for naomi) or the ATOMISWAVE0_0 and ATOMISWAVE0_1 (for atomiswave) sections into the moduleName ini under the matching controls section.
;
; Troubleshooting:
; For some reason demul's ini files can get corrupted and ahk can't read/write to them correctly.
; If your ini keys are not being read or not writing to their existing keys in the demul inis, create a new file and copy/paste everything from the old ini into the new one and save.
; If you use Fade_Out, the module will force close demul because you cannot send ALT+F4 to demul if another GUI is covering it. Otherwise demul should close cleanly when Fade_Out is disabled. I suggest keeping Fade_Out disabled if you use this emu.
;----------------------------------------------------------------------------
StartModule()
FadeInStart()

; This object controls how the module reacts to different systems. Demul can play a few systems, but needs to know what system you want to run, so this module has to adapt.
mType := Object("Sammy Atomiswave","atomiswave","Sega Dreamcast","dc","Sega Naomi","naomi")
ident := mType[systemName]	; search object for the systemName identifier MESS uses
If !ident
	ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this MESS module: " . moduleName)

settingsFile := modulePath . "\" . moduleName . ".ini"
demulFile := CheckFile(emuPath . "\Demul.ini")
padFile := CheckFile(emuPath . "\padDemul.ini")

controls := IniReadCheck(settingsFile, romname, "controls","standard",,1)	; have to read this first so the below loop works

; Read all the keys from the moduleName ini. Format is:
; Section, Key, Default Value, unique var
iniLookup =
( ltrim c
	Settings, GlobalMax, false
	Settings, MaxHideTaskbar
	Settings, ControllerCode, 16777216
	Settings, MouseCode, 131072
	Settings, KeyboardCode, 1073741824
	Settings, LightgunCode, -2147483648
	Settings, LastControlUsed, standard
	Settings, GlobalPlugin, gpuDX11
	Settings, GlobalShaderUsePass1, false
	Settings, GlobalShaderUsePass2, false
	Settings, GlobalShaderNamePass1
	Settings, GlobalShaderNamePass2
	%romName%, Max
	%romName%, LoadDecrypted
	%romName%, Bios
	%romName%, ShaderUsePass1
	%romName%, ShaderUsePass2
	%romName%, ShaderNamePass1
	%romName%, ShaderNamePass2
	%romName%, Plugin
	%romName%, ListSorting
	%controls%_JAMMA0_0, push1,,push1_0
	%controls%_JAMMA0_0, push2,,push2_0
	%controls%_JAMMA0_0, push3,,push3_0
	%controls%_JAMMA0_0, push4,,push4_0
	%controls%_JAMMA0_0, push5,,push5_0
	%controls%_JAMMA0_0, push6,,push6_0
	%controls%_JAMMA0_0, push7,,push7_0
	%controls%_JAMMA0_0, push8,,push8_0
	%controls%_JAMMA0_0, SERVICE,,service_0
	%controls%_JAMMA0_0, START,,start_0
	%controls%_JAMMA0_0, COIN,,coin_0
	%controls%_JAMMA0_0, DIGITALUP,,digitalup_0
	%controls%_JAMMA0_0, DIGITALDOWN,,digitaldown_0
	%controls%_JAMMA0_0, DIGITALLEFT,,digitalleft_0
	%controls%_JAMMA0_0, DIGITALRIGHT,,digitalright_0
	%controls%_JAMMA0_0, ANALOGUP,,analogup_0
	%controls%_JAMMA0_0, ANALOGDOWN,,analogdown_0
	%controls%_JAMMA0_0, ANALOGLEFT,,analogleft_0
	%controls%_JAMMA0_0, ANALOGRIGHT,,analogright_0
	%controls%_JAMMA0_0, ANALOGUP2,,analogup2_0
	%controls%_JAMMA0_0, ANALOGDOWN2,,analogdown2_0
	%controls%_JAMMA0_0, ANALOGLEFT2,,analogleft2_0
	%controls%_JAMMA0_0, ANALOGRIGHT2,,analogright2_0
	%controls%_JAMMA0_1, push1,,push1_1
	%controls%_JAMMA0_1, push2,,push2_1
	%controls%_JAMMA0_1, push3,,push3_1
	%controls%_JAMMA0_1, push4,,push4_1
	%controls%_JAMMA0_1, push5,,push5_1
	%controls%_JAMMA0_1, push6,,push6_1
	%controls%_JAMMA0_1, push7,,push7_1
	%controls%_JAMMA0_1, push8,,push8_1
	%controls%_JAMMA0_1, SERVICE,,service_1
	%controls%_JAMMA0_1, START,,start_1
	%controls%_JAMMA0_1, COIN,,coin_1
	%controls%_JAMMA0_1, DIGITALUP,,digitalup_1
	%controls%_JAMMA0_1, DIGITALDOWN,,digitaldown_1
	%controls%_JAMMA0_1, DIGITALLEFT,,digitalleft_1
	%controls%_JAMMA0_1, DIGITALRIGHT,,digitalright_1
	%controls%_JAMMA0_1, ANALOGUP,,analogup_1
	%controls%_JAMMA0_1, ANALOGDOWN,,analogdown_1
	%controls%_JAMMA0_1, ANALOGLEFT,,analogleft_1
	%controls%_JAMMA0_1, ANALOGRIGHT,,analogright_1
	%controls%_JAMMA0_1, ANALOGUP2,,analogup2_1
	%controls%_JAMMA0_1, ANALOGDOWN2,,analogdown2_1
	%controls%_JAMMA0_1, ANALOGLEFT2,,analogleft2_1
	%controls%_JAMMA0_1, ANALOGRIGHT2,,analogright2_1
)
Loop, Parse, iniLookup, `n
{
	StringSplit, split, A_LoopField, `,, %A_Space%%A_Tab%
	If split4
		%split4% := IniReadCheck(settingsFile, split1, split2, split3,,1)
	Else
		%split2% := IniReadCheck(settingsFile, split1, split2, split3,,1)
	; need to empty the vars for the next loop otherwise they will still have values from the previous loop
	split3:=
	split4:=
}

; Now compare global & rom keys to get final value
max := If (max = "" or max = "ERROR") ? globalMax : max
plugin := If (plugin = "" or plugin = "ERROR") ? globalPlugin : plugin
shaderUsePass1 := If (shaderUsePass1 = "" or shaderUsePass1 = "ERROR") ? globalShaderUsePass1 : shaderUsePass1
shaderUsePass2 := If (shaderUsePass2 = "" or shaderUsePass2 = "ERROR") ? globalShaderUsePass2 : shaderUsePass2
shaderNamePass1 := If (shaderNamePass1 = "" or shaderNamePass1 = "ERROR") ? globalShaderNamePass1 : shaderNamePass1
shaderNamePass2 := If (shaderNamePass2 = "" or shaderNamePass2 = "ERROR") ? globalShaderNamePass2 : shaderNamePass2

; Verify user set desired gpu plugin name correctly
If ( plugin != "gpuDX11" And plugin != "gpuDXv3" And plugin != "gpuDXLegacy" ) or ( plugin = "" or plugin = "ERROR" )
	ScriptError(plugin . " is not a supported gpu plugin.`nLeave the plugin blank to use the default ""gpuDX11"".`nValid options are gpuDX11, gpuDXv3, or gpuDXLegacy.")

; check for the specified gpu plugin
gpuFile := CheckFile(emuPath . "\" . plugin . ".ini")

; This updates the DX11gpu ini file to turn List Sorting on or off. Depending on the games, turning this on for some games may remedy missing graphics, having it off on other games may fix corrupted graphics. Untill they improve the DX11gpu, this is the best it's gonna get.
If plugin = gpuDX11
	If ListSorting = true
		IniWrite, 0, %gpuFile%, main, AutoSort	; 0 enables Auto Sort in demul 0.5.7, opposite from 0.5.6
	Else
		IniWrite, 1, %gpuFile%, main, AutoSort	; Disabling Auto Sort unless someone specifies it to be on or off in settings

; This updates the demul.ini with your gpu plugin choice for the selected rom
IniWrite, %plugin%.dll, %demulFile%, plugins, gpu

 ; Shader Effects
 If plugin = gpuDX11	; Demul 0.5.7 only supports shaders using the gpuDX11 plugin
 {
	Loop, 2 {
		shaderUsePass%A_Index% := If (ShaderUsePass%A_Index% != "" and ShaderUsePass%A_Index% != "ERROR" ? (ShaderUsePass%A_Index%) : (GlobalShaderUsePass%A_Index%))	; determine what shaderUsePass to use
		IniRead, currentusePass%A_Index%, %gpuFile%, shaders, usePass%A_Index%
		If (shaderUsePass%A_Index% = "true")
		{
			shaderNamePass%A_Index% := If (ShaderNamePass%A_Index% != "" and ShaderNamePass%A_Index% != "ERROR" ? (ShaderNamePass%A_Index%) : (GlobalShaderNamePass%A_Index%))	; determine what shaderNamePass to use
			If shaderNamePass%A_Index% not in FXAA,HDR-TV,SCANLINES,CARTOON,RGB DOT(MICRO),RGB DOT(TINY),BLUR
				ScriptError(shaderNamePass%A_Index% . " is not a valid choice for a shader. Your options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), or BLUR.")
			If (currentusePass%A_Index% = 0)
				IniWrite, 1, %gpuFile%, shaders, usePass%A_Index%	; turn shader on in gpuDX11 ini
			IniWrite, % shaderNamePass%A_Index%, %gpuFile%, shaders, shaderPass%A_Index%	; update gpuDX11 ini with the shader name to use
		}Else If (shaderUsePass%A_Index% != "true" and currentusePass%A_Index% = 1)
			IniWrite, 0, %gpuFile%, shaders, usePass%A_Index%	; turn shader off in gpuDX11 ini
	}
}

If ident = dc
{
	7z(romPath, romName, romExtension, 7zExtractPath)
	If ( romExtension = ".cdi" || romExtension = ".mds" || romExtension = ".ccd" || romExtension = ".nrg" || romExtension = ".gdi" || romExtension = ".cue" ) {
		gdrImageFile := CheckFile(emuPath . "\gdrImage.ini")
		FileDelete, %gdrImageFile%
		Sleep, 500
		IniWrite, gdrImage.dll, %demulFile%, plugins, gdr
		IniWrite, false, %gdrImageFile%, Main, openDialog
		IniWrite, %romPath%\%romName%%romExtension%, %gdrImageFile%, Main, imagefilename
	} Else If romExtension = .chd
	{
		gdrCHDFile := CheckFile(emuPath . "\gdrCHD.ini")
		FileDelete, %gdrCHDFile%
		Sleep, 500
		IniWrite, false, %gdrCHDFile%, Main, openDialog
		IniWrite, gdrCHD.dll, %demulFile%, plugins, gdr
		IniWrite, %romPath%\%romName%%romExtension%, %gdrCHDFile%, Main, imagefilename
	} Else
		ScriptError(romExtension . " is not a supported file type for this " . moduleName . " module.")

	IniWrite, 1, %demulFile%, main, region ; Set BIOS to Auto Region
} Else {	; all other systems, Naomi and Atomiswave
	; This updates the demul.ini with your Bios choice for the selected rom
	If ( Bios != "" and Bios != "ERROR" ) {
		Bios := RegExReplace(Bios,"\s.*")	; Cleans off the added text from the key's value so only the number is left
		IniWrite, false, %demulFile%, main, naomiBiosAuto	; turning auto bios off so we can use a specific one instead
		IniWrite, %Bios%, %demulFile%, main, naomiBios	; setting specific bios user has set from the moduleName ini
	} Else
		IniWrite, true, %demulFile%, main, naomiBiosAuto	; turning auto bios on if user did not specify a specific one
}

; This section writes your custom keys to the padDemul.ini. Naomi games had many control panel layouts. The only way we can accomodate these differing controls, is to keep track of them all and write them to the ini at the launch of each game.
; First we check if the last controls used are the same as the game we want to play, so we don't waste time updating the ini if it is not necessary. For example playing 2 sfstyle type games in a row, we wouldn't need to write to the ini.

; This section tells demul what arcade control type should be connected to the game. Options are standard (aka controller), mouse, lightgun, or keyboard
If ( controls = "lightgun" || controls = "mouse" )
	IniWrite, %MouseCode%, %demulFile%, PORTB, device
Else If ( controls = "keyboard" )
	IniWrite, %KeyboardCode%, %demulFile%, PORTB, device
Else ; accounts for all other control types
	IniWrite, %ControllerCode%, %demulFile%, PORTB, device

If ( LastControlUsed != controls ) {	; find out last controls used for the system we are launching
	WriteControls(padFile, 0,push1_0,push2_0,push3_0,push4_0,push5_0,push6_0,push7_0,push8_0,SERVICE_0,START_0,COIN_0,DIGITALUP_0,DIGITALDOWN_0,DIGITALLEFT_0,DIGITALRIGHT_0,ANALOGUP_0,ANALOGDOWN_0,ANALOGLEFT_0,ANALOGRIGHT_0,ANALOGUP2_0,ANALOGDOWN2_0,ANALOGLEFT2_0,ANALOGRIGHT2_0)
	WriteControls(padFile, 1,push1_1,push2_1,push3_1,push4_1,push5_1,push6_1,push7_1,push8_1,SERVICE_1,START_1,COIN_1,DIGITALUP_1,DIGITALDOWN_1,DIGITALLEFT_1,DIGITALRIGHT_1,ANALOGUP_1,ANALOGDOWN_1,ANALOGLEFT_1,ANALOGRIGHT_1,ANALOGUP2_1,ANALOGDOWN2_1,ANALOGLEFT2_1,ANALOGRIGHT2_1)
	IniWrite, %controls%, %settingsFile%, Settings, LastControlUsed
}

; Setting demul to use true fullscreen if defined in settings.ini, otherwise sets demul to run windowed. This is for gpuDX11 plugin only
If plugin = gpuDX11
	If Max = fullscreen
		IniWrite, 1, %gpuFile%, main, UseFullscreen
	Else
		IniWrite, 0, %gpuFile%, main, UseFullscreen

If Max = true
{
	If maxHideTaskbar = true
	{
		WinHide, ahk_class Shell_TrayWnd
		WinHide, Start ahk_class Button
	}
	; Create black background to give the emu the fullscreen look
	Gui 2: -Caption +ToolWindow
	Gui 2: Color, Black
	Gui 2: Show, x0 y0 h%A_ScreenHeight% w%A_ScreenWidth%
}

Sleep, 250

;  Construct the CLI for demul and send romName if naomi or atomiswave. Dreamcast needs a full path and romName.
If LoadDecrypted = true	; decrypted naomi rom
	romCLI := "-customrom=" . """" . romPath . "\" . romName . ".bin"""
Else If ident = dc	; dreamcast game
	romCLI := " -image=" . """" . romPath . "\" . romName . romExtension . """"
Else	; standard naomi rom
	romCLI := "-rom=" . romName

Run(executable .  " -run=" . ident . " " . romCLI, emuPath,, emuPID)
; Sleep, 1000 ; need a second for demul to launch, increase if yours takes longer and the emu is appearing too soon

Loop { ; looping until demul is done loading rom and gpu starts showing frames
	Sleep, 200
	WinGetTitle, winTitle, ahk_class window
	StringSplit, winTextSplit, winTitle, %A_Space%
	If ( winTextSplit5 = "gpu:" And winTextSplit6 != "0" And winTextSplit6 != "1" )
		break
}
WinActivate ahk_class window

If ( ( plugin = "gpuDXv3" Or plugin = "gpuDXLegacy" ) && Max = "fullscreen" )
	Send !{ENTER} ; go fullscreen for gpuDXv3 and gpuDXLegacy plugins only

; This is where we calculate and maximize demul's window using our pseudo fullscreen code
If Max = true
{
	WinSet, Style, -0x40000, ahk_class window ; Removes the border of the game window
	WinSet, Style, -0xC00000, ahk_class window ; Removes the TitleBar
	Send, {F3} ; Removes the MenuBar
	MaximizeWindow("ahk_class window") ; this will take effect after you run demul once because we cannot stretch demul's screen while it is running.
}

FadeInExit()
Process("WaitClose", executable)

Gui 2: Destroy

FadeOutExit()

If (Max = "true" and maxHideTaskbar = "true") {
	WinShow,ahk_class Shell_TrayWnd
	WinShow,Start ahk_class Button
}

ExitModule()


 ; Write new controls to padDemul.ini
WriteControls(file, player,push1,push2,push3,push4,push5,push6,push7,push8,service,start,coin,digitalup,digitaldown,digitalleft,digitalright,analogup,analogdown,analogleft,analogright,analogup2,analogdown2,analogleft2,analogright2) {
	IniWrite, %push1%, %file%, JAMMA0_%player%, PUSH1
	IniWrite, %push2%, %file%, JAMMA0_%player%, PUSH2
	IniWrite, %push3%, %file%, JAMMA0_%player%, PUSH3
	IniWrite, %push4%, %file%, JAMMA0_%player%, PUSH4
	IniWrite, %push5%, %file%, JAMMA0_%player%, PUSH5
	IniWrite, %push6%, %file%, JAMMA0_%player%, PUSH6
	IniWrite, %push7%, %file%, JAMMA0_%player%, PUSH7
	IniWrite, %push8%, %file%, JAMMA0_%player%, PUSH8
	IniWrite, %service%, %file%, JAMMA0_%player%, SERVICE
	IniWrite, %start%, %file%, JAMMA0_%player%, START
	IniWrite, %coin%, %file%, JAMMA0_%player%, COIN
	IniWrite, %digitalup%, %file%, JAMMA0_%player%, DIGITALUP
	IniWrite, %digitaldown%, %file%, JAMMA0_%player%, DIGITALDOWN
	IniWrite, %digitalleft%, %file%, JAMMA0_%player%, DIGITALLEFT
	IniWrite, %digitalright%, %file%, JAMMA0_%player%, DIGITALRIGHT
	IniWrite, %analogup%, %file%, JAMMA0_%player%, ANALOGUP
	IniWrite, %analogdown%, %file%, JAMMA0_%player%, ANALOGDOWN
	IniWrite, %analogleft%, %file%, JAMMA0_%player%, ANALOGLEFT
	IniWrite, %analogright%, %file%, JAMMA0_%player%, ANALOGRIGHT
	IniWrite, %analogup2%, %file%, JAMMA0_%player%, ANALOGUP2
	IniWrite, %analogdown2%, %file%, JAMMA0_%player%, ANALOGDOWN2
	IniWrite, %analogleft2%, %file%, JAMMA0_%player%, ANALOGLEFT2
	IniWrite, %analogright2%, %file%, JAMMA0_%player%, ANALOGRIGHT2
}

MaximizeWindow(class) {
		Global
		WinGetPos, appX, appY, appWidth, appHeight, %class%
		widthMaxPercenty := ( A_ScreenWidth / appWidth )
		heightMaxPercenty := ( A_ScreenHeight / appHeight )

		If  ( widthMaxPercenty < heightMaxPercenty )
			percentToEnlarge := widthMaxPercenty
		Else
			percentToEnlarge := heightMaxPercenty

		appWidthNew := appWidth * percentToEnlarge
		appHeightNew := appHeight * percentToEnlarge
		Transform, appX, Round, %appX%
		Transform, appY, Round, %appY%
		Transform, appWidthNew, Round, %appWidthNew%
		Transform, appHeightNew, Round, %appHeightNew%
		appXPos := ( A_ScreenWidth / 2 ) - ( appWidthNew / 2 )
		appYPos := ( A_ScreenHeight / 2 ) - ( appHeightNew / 2 )
		If ( plugin = "gpuDX11" ) {
			IniWrite, %appWidthNew%, %gpuDX11File%, resolution, Width
			IniWrite, %appHeightNew%, %gpuDX11File%, resolution, Height
		} Else {
			IniWrite, %appWidthNew%, %gpuFile%, resolution, wWidth
			IniWrite, %appHeightNew%, %gpuFile%, resolution, wHeight
		}
		WinMove, %class%,, appXPos, appYPos
	}

HaltEmu:
	If Max = fullscreen
		Send !{ENTER}
Return
RestoreEmu:
	If Max = fullscreen
		Send !{ENTER}
Return

CloseProcess:
	FadeOutStart()
	If fadeOut != true	; cannot send ALT+F4 to a background window (controlsend doesn't work), so we have to force close instead.
	{
		; demul 0.5.7 crashes 50% of the time if you try to close it any other way
		Send, {F3}{Alt}{Up}s{Enter}
		Sleep, 50
	}
	Process("Close", emuPID) ; we have to close this way otherwise demul crashes with WinClose
Return
Mon MODULE Sega Dreamcast.ini, situé dans le même dossier que Sega Dreamcast.ahk

Code : Tout sélectionner

# Glboal Settings:
# GlobalMax -										true (gives a windowed mode full screen, not true fullscreen), fullscreen (sets demul to go true fullscreen), false (demul runs in a normal window)
# MaxHideTaskbar -							If Max is true, hides the taskbar.
# GlobalPlugin -									Choices are gpuDX11, gpuDXv3, and gpuDXLegacy
# GlobalShaderUsePass 1 & 2 -		If true, turns on shader support for demul globally. (shaders are only supported using gpuDX11 video plugin)
# GlobalShaderNamePass 1 & 2 -	The shader to use for all games that do not have a custom shader defined in their section. Options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), BLUR
# Per-Game Settings:
# Controls -											the controls prefix you want this game to use. Default is Standard if not set. For example to use driving controls, set this key to driving, and it will load the driving_JAMMA0_0 and driving_JAMMA0_1 profiles.
# Bios -													Set the number to the bios you want to use. Blank is automatic. Get this from setting the bios in the emu, then opening the demul ini and seeing what number it was set to.
# Max -													true (gives a windowed mode full screen, not true fullscreen), fullscreen (sets demul to go true fullscreen), false (demul runs in a normal window). Overrides the global setting.
# Plugin -												Choices are gpuDX11, gpuDXv3, and gpuDXLegacy, Overrides the global setting.
# ShaderUsePass 1 & 2 -					If true, turns on shader support for demul per-rom. (shaders are only supported using gpuDX11 video plugin). Overrides the global setting.
# ShaderNamePass 1 & 2 -				These are the shaders you want to use per-rom. Options are FXAA, HDR-TV, SCANLINES, CARTOON, RGB DOT(MICRO), RGB DOT(TINY), BLUR. Overrides the global setting.
[Settings]
ControllerCode = 16777216
MouseCode = 131072
KeyboardCode = 1073741824
LightgunCode = -2147483648
LastControlUsed =standard
GlobalMax=fullscreen
MaxHideTaskbar =true
GlobalPlugin =gpuDX11
GlobalShaderUsePass1 =true
GlobalShaderUsePass2 =false
GlobalShaderNamePass1 =FXAA
GlobalShaderNamePass2 =

#/////////////////////////////////////// NAOMI & ATOMISWAVE CONTROLS //////////////////////////////////////////


[standard_JAMMA0_0]
PUSH1 = 16777216
PUSH2 = 16777217
PUSH3 = 16777218
PUSH4 = 16777219
PUSH5 = 16777220
PUSH6 = 16777221
PUSH7 = 22
PUSH8 = 23
SERVICE = 16777225
START = 28
COIN = 16777224
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[standard_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[sfstyle_JAMMA0_0]
PUSH1 = 46
PUSH2 = 45
PUSH3 = 20
PUSH4 = 18
PUSH5 = 44
PUSH6 = 21
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[sfstyle_JAMMA0_1]
PUSH1 = 50
PUSH2 = 49
PUSH3 = 24
PUSH4 = 47
PUSH5 = 48
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[ggxstyle_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 20
PUSH5 = 21
PUSH6 = 45
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[ggxstyle_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 24
PUSH5 = 25
PUSH6 = 49
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[reverse_JAMMA0_0]
PUSH1 = 46
PUSH2 = 44
PUSH3 = 18
PUSH4 = 45
PUSH5 = 20
PUSH6 = 21
PUSH7 = 22
PUSH8 = 23
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[reverse_JAMMA0_1]
PUSH1 = 50
PUSH2 = 48
PUSH3 = 47
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[driving_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 0
PUSH7 = 22
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[driving_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[18wheel_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 0
PUSH6 = 0
PUSH7 = 0
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[18wheel_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 20
DIGITALDOWN = 22
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[jambodriving_JAMMA0_0]
PUSH1 = 46
PUSH2 = 18
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 0
PUSH7 = 22
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 23
ANALOGDOWN = 21
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[jambodriving_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 33554437
DIGITALDOWN = 33554693
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[wldrider_JAMMA0_0]
PUSH1 = 0
PUSH2 = 0
PUSH3 = 44
PUSH4 = 45
PUSH5 = 0
PUSH6 = 0
PUSH7 = 0
PUSH8 = 0
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 46
DIGITALRIGHT = 18
ANALOGUP = 23
ANALOGDOWN = 20
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 22
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[wldrider_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[fps_JAMMA0_0]
PUSH1 = 22
PUSH2 = 23
PUSH3 = 44
PUSH4 = 45
PUSH5 = 20
PUSH6 = 21
PUSH7 = 46
PUSH8 = 18
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554689
ANALOGDOWN = 33554433
ANALOGLEFT = 33554688
ANALOGRIGHT = 33554432
ANALOGUP2 = 33554693
ANALOGDOWN2 = 33554437
ANALOGLEFT2 = 33554690
ANALOGRIGHT2 = 33554434

[fps_JAMMA0_1]
PUSH1 = 50
PUSH2 = 47
PUSH3 = 48
PUSH4 = 49
PUSH5 = 24
PUSH6 = 25
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

[samba_JAMMA0_0]
PUSH1 = 21
PUSH2 = 20
PUSH3 = 23
PUSH4 = 22
PUSH5 = 46
PUSH6 = 18
PUSH7 = 45
PUSH8 = 44
SERVICE = 71
START = 38
COIN = 39
DIGITALUP = 200
DIGITALDOWN = 208
DIGITALLEFT = 203
DIGITALRIGHT = 205
ANALOGUP = 33554693
ANALOGDOWN = 33554437
ANALOGLEFT = 33554690
ANALOGRIGHT = 33554434
ANALOGUP2 = 33554689
ANALOGDOWN2 = 33554433
ANALOGLEFT2 = 33554688
ANALOGRIGHT2 = 33554432

[samba_JAMMA0_1]
PUSH1 = 24
PUSH2 = 25
PUSH3 = 48
PUSH4 = 49
PUSH5 = 50
PUSH6 = 47
PUSH7 = 16
PUSH8 = 17
SERVICE = 0
START = 19
COIN = 51
DIGITALUP = 72
DIGITALDOWN = 76
DIGITALLEFT = 75
DIGITALRIGHT = 77
ANALOGUP = 0
ANALOGDOWN = 0
ANALOGLEFT = 0
ANALOGRIGHT = 0
ANALOGUP2 = 0
ANALOGDOWN2 = 0
ANALOGLEFT2 = 0
ANALOGRIGHT2 = 0

#/////////////////////////////////////// SEGA NAOMI CART //////////////////////////////////////////

[18wheelr]
Controls = 18wheel
Bios = 1
Max = fullscreen
[18wheels]
Controls = 18wheel
[18whlrur]
Controls = 18wheel
[alpiltdx]
Controls = driving
[alpilota]
Controls = driving
[capsnk]
Controls = sfstyle
[capsnka]
Controls = sfstyle
[crzytaxi]
Controls = driving
Plugin=gpuDX11
[csmash]
Emulator = makaron
[cspike]
Controls = reverse
[deathcox]
Controls = lightgun
[f355]
Controls = driving
[f355twin]
Controls = driving
[f355twn2]
Controls = driving
[ggx]
Controls = ggxstyle
[gunsur2]
Controls = fps
[hotd2]
Controls = lightgun
[hotd2o]
Controls = lightgun
[hotd2p]
Controls = lightgun
[jambo]
Controls = jambodriving
[mbaa]
Controls = ggxstyle
[mbaaa]
Controls = ggxstyle
[mvsc2]
Controls = sfstyle
[pjustic]
Controls = sfstyle
[samba]
Controls = samba
[samba2k]
Controls = samba
[shangril]
Controls = keyboard
[sl2007]
LoadDecrypted=
[suchie3]
Controls = keyboard
[totd]
Controls = keyboard

#/////////////////////////////////////////// SEGA NAOMI GDROM //////////////////////////////////////////////

[confmiss]
Controls = lightgun
[cvs2gd]
Controls = sfstyle
[cvsgd]
Controls = sfstyle
[dygolf]
Controls = mouse
[ggxx]
Controls = ggxstyle
[ggxxac]
Controls = ggxstyle
[ggxxrl]
Controls = ggxstyle
[ggxxsla]
Controls = ggxstyle
[keyboard]
Controls = keyboard
[lupinsho]
Controls = lightgun
[luptype]
Controls = keyboard
[mamonoro]
LoadDecrypted=
[meltyb]
Controls = ggxstyle
[meltyba]
Controls = ggxstyle
[meltybld]
Controls = ggxstyle
[mok]
Controls = lightgun
[radirgyn]
LoadDecrypted=
[sfz3ugd]
Controls = sfstyle
[usagiym]
Controls = keyboard

#////////////////////////////////////////////// SEGA NAOMI 2 CART/////////////////////////////////////////////

[clubkrtd]
Controls = driving
[clubkrte]
Controls = driving
[clubk2k3]
Controls = driving
[kingrt66]
Controls = driving
[wldrider]
Controls = wldrider

#////////////////////////////////////////// SEGA NAOMI 2 GDROM /////////////////////////////////////////

[initd]
Controls = driving
[initdexp]
Controls = driving
[initdv2e]
Controls = driving
[initdv2j]
Controls = driving
[initdv2jo]
Controls = driving
[initdv3e]
Controls = driving
[initdv3j]
Controls = driving
[initdv3jb]
Controls = driving

#////////////////////////////////////////// ATOMISWAVE /////////////////////////////////////////

[anmlbskt]
Plugin = gpuDX11
[demofist]
Plugin = gpuDX11
[dirtypig]
Plugin = gpuDX11
[dolphin]
Plugin = gpuDX11
[fotns]
Controls = sfstyle
Plugin = gpuDX11
[ftspeed]
Plugin = gpuDX11
[ggisuka]
Controls = ggxstyle
Plugin = gpuDX11
[ggx15]
Plugin = gpuDX11
[kofxi]
Plugin = gpuDX11
[kofnw]
Controls = sfstyle
Plugin = gpuDX11
[kofnwj]
Controls = sfstyle
Plugin = gpuDX11
[kov7sprt]
Plugin = gpuDX11
[maxspeed]
Plugin = gpuDX11
[mslug6]
Plugin = gpuDX11
[ngbc]
Plugin = gpuDX11
[rangrmsn]
Controls = lightgun
Plugin = gpuDX11
[rumblef]
Controls = sfstyle
Plugin = gpuDX11
[rumblef2]
Plugin = gpuDX11
[salmankt]
Plugin = gpuDX11
[samsptk]
Plugin = gpuDX11
[sprtshot]
Controls = lightgun
Plugin = gpuDX11
[vfurlong]
Plugin = gpuDX11
[xtrmhunt]
Controls = lightgun
Plugin = gpuDX11
[xtrmhnt2]
Controls = lightgun
Plugin = gpuDX11

Au passage, dans les modules je met bien Sega Dreamcast comme nom de .ahk ou .ini? Ou bien je met Demul.ahk Demul.ini ?

Si besoins d'infos supplémentaires, faites le moi savoir, je peux faire une flopée de screenshots ou même carrément uploader mon install pour que vous y regardiez.
Merci de votre aide les gars, j'en vois le bout !

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Erreur au lancement (hyperlaunch)

Message par belhodis » 24 juin 2015 - 17:03

Si t'es pas un 2-3 screenshots près, montre un peu ton HLHQ pour voir

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Erreur au lancement (hyperlaunch)

Message par Reaver7 » 24 juin 2015 - 17:10

HLHQ? j'ai rien de tout ça, j'ai hyperlaunch et HyperHQ. =X

Je suis sur une heavybox 15Khz je précise ^^

J'ai ça a te proposer, si ça peut t'aider, le contenu de mon dossier heavybox et la config du HyperLaunch, ça te sert? =X

Image

Avatar de l’utilisateur
belhodis
Apprenti
Apprenti
Messages : 23
Inscription : 31 août 2014 - 01:00
Localisation : A Hendaye, au soleil !

Re: Demul, Erreur au lancement (hyperlaunch)

Message par belhodis » 24 juin 2015 - 19:53

HLHQ : hyperlaunch HQ autrement dit l'interface graphique permettant de parametrer Hyperlaunch.
Si Hyperlaunch HQ ne te dit rien, alors on a trouvé l'origine de ton problème; mais tu as bien un HyperlaunchHQ.exe dans ton repertoire hyperspin rassure moi?

Edit : ben on dirait que non en fait, d'après ta copie d'écran...

Avatar de l’utilisateur
Reaver7
Virtuose
Virtuose
Messages : 1390
Inscription : 02 sept. 2014 - 01:00
A remercié : 7 fois
A été remercié : 186 fois

Re: Demul, Erreur au lancement (hyperlaunch)

Message par Reaver7 » 24 juin 2015 - 19:56

Non, j'ai ni plus ni moins que ce que tu vois au dessus. C'est mon repertoire hyperspin de la box
C'est une heavybox "d'origine" , j'ai jamais eu ce truc dedans x)

Répondre

Revenir à « Aide sur HyperLaunch 2 »