
Image trop grande
Bezel qui deborde
Menu qui apparait en haut
Modérateurs : Porko, Modérateurs
Code : Tout sélectionner
MEmu = Project64
MEmuV = v20120726 build 57
MURL = http://www.pj64-emu.com/
MAuthor = djvj
MVersion = 2.0.2
MCRC = 1BE4A413
iCRC = 384E4082
MID = 635038268918566105
MSystem = "Nintendo 64"
;----------------------------------------------------------------------------
; Notes:
; CLI loading doesn't work, script opens roms manually
; If roms don't start automatically, enabled advanced settings, reopen Settings window, go to the Advanced tab and check "Start Emulation when rom is opened?"
; I like to turn off the Rom Browser by going to Settings->Rom Selection and uncheck "Use Rom Browser" (advanced settings needs to be on to see this tab)
; If you use Esc as your exit key, it seems to crash the emu because it also takes the emu out of fullscreen and needs to be closed in Task Manager. It doesn't happen if you leave fullscreen first.
;
; Project64 stores its config in the registry @ HKEY_CURRENT_USER\Software\JaboSoft\Project64 DLL
; and also @ HKEY_CURRENT_USER\Software\N64 Emulation
;----------------------------------------------------------------------------
StartModule()
BezelGUI()
FadeInStart()
Fullscreen := IniReadCheck(settingsFile, "Settings", "Fullscreen","true",,1) ; Controls if emu launches fullscreen or windowed
FullscreenMethod := IniReadCheck(settingsFile, "Settings", "FullscreenMethod","reg",,0) ; reg = registry, hotkey = alt+enter. Windows 8 does not seem to work with the registry method as the key is not even there to change, Use hotkey if reg doesn't set fullscreen for you.
HideLoading := IniReadCheck(settingsFile, "Settings", "HideLoading","false",,1) ; This speeds up loading roms but can cause some PCs to get stuck at the Open Rom window or cause HS to flicker through. Disable it if you have this issue
ControlDelay := IniReadCheck(settingsFile, "Settings", "ControlDelay","20",,1) ; Raise this if the module is getting stuck somewhere
KeyDelay := IniReadCheck(settingsFile, "Settings", "KeyDelay","-1",,1) ; Raise this if the module is getting stuck using SelectGameMode 2
dialogOpen := i18n("dialog.open") ; Looking up local translation
exitEmulatorKey := xHotKeyVarEdit("Esc","exitEmulatorKey","~","Remove") ; sending Esc to the emu when in fullscreen causes it to crash on exit , this prevents Esc from reaching the emu
SetControlDelay, %ControlDelay%
SetKeyDelay(KeyDelay)
BezelStart()
hideEmuObj := Object(dialogOpen . " ahk_class #32770",0,"Project64",1) ; Hide_Emu will hide these windows. 0 = will never unhide, 1 = will unhide later
7z(romPath, romName, romExtension, 7zExtractPath)
; Setting Fullscreen setting in registry if it doesn't match what user wants above
currentFullScreen := ReadReg("On open rom go full screen")
If (Fullscreen != "true" And currentFullScreen = 1)
WriteReg("On open rom go full screen", 1)
Else If (Fullscreen = "true" And currentFullScreen = 1)
WriteReg("On open rom go full screen", 1)
HideEmuStart() ; This fully ensures windows are completely hidden even faster than winwait
Run(executable, emuPath) ;, Hide
WinWait("Project64")
WinWaitActive("Project64")
Send, ^o ; Open Rom
OpenROM(dialogOpen . " ahk_class #32770", romPath . "\" . romName . romExtension)
WinWaitActive("Project64")
; Sleep, 4000 ; giving time for emu to load rom so your Front End doesn't pop into view
ControlGetPos, x, y, w, h, msctls_statusbar321, Project64
Loop {
Sleep, 200
If Fullscreen = true ; looping until 1964 is done loading rom and it goes fullscreen. The x position will change then, which is when this loop will break.
ControlGetPos, x2, y2, w2, h2, msctls_statusbar321, Project64
Else { ; looping until Project64 is done loading rom and it starts showing frames if in windowed mode, then this loop will break.
StatusBarGetText, cText, 2, Project64 ; get text of statusbar which shows emulation stats
StringSplit, cTextAr, cText, .: ; split text to find the FPS which will update constantly as emulation is active
If cTextAr2 > 0 ; Break out when FPS is greater then 0
Break
}
; ToolTip, Waiting for "Project64" to go fullscreen or to start showing frames if using windowed mode after loading rom`nWhen x does not equal x2 (in windowed mode)`, script will continue:`nx=%x%`nx2=%x2%`ny=%y%`ny2=%y2%`nw=%w%`nw2=%w2%`nh=%h%`nh2=%h2%`nStatus Bar Text: %cText%`nLoop #: %A_Index%`nVideo `%: %cTextAr2%
If ( x != x2 or A_Index >= 30) { ; x changes when emu goes fullscreen, so we will break here and destroy the GUI. Break out if loop goes on too long, something is wrong then.
If A_Index >= 30
Log(MEmu . " had a problem detecting when it was done loading the rom. Please try different options inside the module to find what is compatible with your system.")
Break
}
}
If (Fullscreen = "true" && FullscreenMethod = "hotkey") {
Sleep, 2000 ; required otherwise keys get sent too early
Send, !{Enter}
}
BezelDraw()
HideEmuEnd()
FadeInExit()
Process("WaitClose", executable)
7zCleanUp()
BezelExit()
FadeOutExit()
ExitModule()
ReadReg(var1) {
RegRead, regValue, HKEY_CURRENT_USER, Software\N64 Emulation\Project64 (Build 57), %var1%
Return %regValue%
}
WriteReg(var1, var2) {
RegWrite, REG_DWORD, HKEY_CURRENT_USER, Software\N64 Emulation\Project64 (Build 57), %var1%, %var2%
}
HaltEmu:
ControlSend, ,{Esc}, ahk_class %EmulatorClass%
Return
RestoreEmu:
Winrestore, ahk_class %EmulatorClass%
Send, !{Enter}
Sleep, 500
Return
CloseProcess:
FadeOutStart()
WinClose("Project64")
Return
Code : Tout sélectionner
[Plugin]
Audio Dll Ver=Jabo's DirectSound 1.7.0.7
Controller Dll=1.6 Plugins\Jabo_DInput.dll
Controller Dll Ver=Jabo's DirectInput7 1.6
Graphics Dll Ver=Jabo's Direct3D8 1.7.0.57-ver5
RSP Dll Ver=RSP Plugin 1.7.0.9
[default]
Auto Full Screen=1
Auto Start=1
Auto Zip Saves=1
Basic Mode=0
Check Running=1
Current Language=Français
Display CPU Usage=0
Display Frame Rate=0
[Rom Browser]
Height=1033
Left=240
Maximized=0
Top=0
Width=1440
[Direct3D8]
Anisotropic=4
DumpTextures=0
EmulateBuffer=0
ForceBlend=0
ForceCombiner=0
FullscreenHeight=1200
FullscreenWidth=1600
Multisample=0
SoftwareEmu=0
Vsync=2
WindowType=8
[Main Window]
Left=240
Top=0
[Recent File]
Recent Rom 0=F:\HFSBox\roms\Nintendo 64\Legend of Zelda, The - Majora's Mask (Europe) (En,Fr,De,Es) (Rev A).zip
Recent Rom 1=F:\HFSBox\roms\Nintendo 64\Super Mario 64 (Europe) (En,Fr,De).zip
Recent Rom 2=F:\HFSBox\roms\Nintendo 64\Legend of Zelda, The - Ocarina of Time (Europe) (En,Fr,De) (Rev A).zip
[DirectInput-Controller 0]
A=46
Analog Down=208
Analog Left=203
Analog Right=205
Analog Up=200
B=45
C-Down=207
C-Left=211
C-Right=209
C-Up=199
Dead Zone=2500
Digital Down=37
Digital Left=36
Digital Right=38
Digital Up=23
GUID=a17f41a0-9e76-11e6-8004-444553540000
L=30
Present=1
R=31
Range=100
Start=28
Type=2
Z=44
[DirectInput-Controller 1]
A=0
Analog Down=0
Analog Left=0
Analog Right=0
Analog Up=0
B=0
C-Down=0
C-Left=0
C-Right=0
C-Up=0
Dead Zone=2500
Digital Down=0
Digital Left=0
Digital Right=0
Digital Up=0
GUID=00000000-0000-0000-0000-000000000000
L=0
Present=0
R=0
Range=100
Start=0
Type=2
Z=0
[DirectInput-Controller 2]
A=0
Analog Down=0
Analog Left=0
Analog Right=0
Analog Up=0
B=0
C-Down=0
C-Left=0
C-Right=0
C-Up=0
Dead Zone=2500
Digital Down=0
Digital Left=0
Digital Right=0
Digital Up=0
GUID=00000000-0000-0000-0000-000000000000
L=0
Present=0
R=0
Range=100
Start=0
Type=2
Z=0
[DirectInput-Controller 3]
A=0
Analog Down=0
Analog Left=0
Analog Right=0
Analog Up=0
B=0
C-Down=0
C-Left=0
C-Right=0
C-Up=0
Dead Zone=2500
Digital Down=0
Digital Left=0
Digital Right=0
Digital Up=0
GUID=00000000-0000-0000-0000-000000000000
L=0
Present=0
R=0
Range=100
Start=0
Type=2
Z=0
[0A5D8F83-98C5371A-C:50]
Good Name=Legend of Zelda, The - Majora's Mask (E) (M4) (v1.1)
[A03CF036-BCC1C5D2-C:50]
Good Name=Super Mario 64 (E) (M3)