Jump to content

Running mame at 640 x 288 through hyperspin - Can someone help with this script?


barakawins

Recommended Posts

Posted

I found this fix:

I'm running a standard resolution monitor and need to run mame at 640 x 288. Is there a way to make hyperspin launch this attached script

before mame so the screen changes resolution form 640 x 480 to 640 x 288? Hopefully someone can assist.

I have solved this problem in Hyperspin for my Egret 2 arcade machine (Using Windows 7 X64, ArcadeVGA and J-Pac).

Get the Switchres.zip file posted earlier in this thread.

Unzip it into you mame folder.

Edit Hyperlaunch.akh in your Hyperspin folder. (Make a backup of Hyperlaunch.exe, and Hyperlaunch.ahk first)

Change the MAME part to this:

;*************************************MAME**************************************

else if (systemName = "MAME" && executable = "mame.exe")

{

hideDesktop()

Hotkey, %exitEmulatorKey%, CloseProcess

Runwait, c:\Emu\Mame\640x288.exe, Hide UseErrorLevel

Runwait, %executable% %romName%, %EmuPath%, Hide UseErrorLevel

Process, waitClose, %executable%

Runwait, c:\Emu\Mame\640x480.exe, Hide UseErrorLevel

exitapp

}

Change the path names to 640x288.exe and 640x480.exe, to your mame installation, before saving.

Download Autohotkey from here: http://www.autohotkey.com/download/

Install it and run the compiler. (Compiler\Ahk2Exe.exe)

Select the new hyperlaunch.ahk and compile it into a new hyperlaunch.exe.

Replace the old hyperlaunch.exe with the new one you made. (Remember to always make a backup first)

And now DirectDraw in MAME under windows 7 works.

What this change does is whenever you launch a MAME game from Hyperspin the resolution is changed to 640x288 before mame is started.

Mame runs, sets the right directdraw resolution and avoid the interlace/non-interlace bug in Windows 7.

When you exit mame the resolution is reset to 640x480.

And everything works. :D

DirectDraw looks glorious on a 15Khz monitor. A huge difference compared to D3D. Well worth the bother. :laugh:

Regards

/Finn

Posted

Well, turns out this won't work with the current version of mame since the hyperlaunch.ahk doesn't contain any mame code in it to replace.

Anyone else know how to make something like this work?

  • 1 month later...
Posted

SOLVED...this are the solution

; Use this function to define any code you want to run in every module on start

StartGlobalUserFeatures(){

Global systemName

Log("StartGlobalUserFeatures - Starting")

WinGetClass, CurrentActiveProgramClass, A

if (systemName="MAME") {

run, C:\Hyperspin\Switchres\640x288.exe

}

Log("StartGlobalUserFeatures - Ending")

}

; Use this function to define any code you may need to stop or clean up in every module on exit

StopGlobalUserFeatures(){

Global systemName

Log("StopGlobalUserFeatures - Starting")

if (systemName="MAME") {

run, C:\Hyperspin\Switchres\640x480.exe

}

Log("StopGlobalUserFeatures - Ending")

}

Change right path of your file

Copy and paste this on LIB > User Functions (Example).ahk

Remove (Example)

Run Hyperspin or test a game in HLHQ

  • 2 months later...
Posted

I found this fix:

I'm running a standard resolution monitor and need to run mame at 640 x 288. Is there a way to make hyperspin launch this attached script

before mame so the screen changes resolution form 640 x 480 to 640 x 288? Hopefully someone can assist.

I have solved this problem in Hyperspin for my Egret 2 arcade machine (Using Windows 7 X64, ArcadeVGA and J-Pac).

Get the Switchres.zip file posted earlier in this thread.

Unzip it into you mame folder.

Edit Hyperlaunch.akh in your Hyperspin folder. (Make a backup of Hyperlaunch.exe, and Hyperlaunch.ahk first)

Change the MAME part to this:

;*************************************MAME**************************************

else if (systemName = "MAME" && executable = "mame.exe")

{

hideDesktop()

Hotkey, %exitEmulatorKey%, CloseProcess

Runwait, c:\Emu\Mame\640x288.exe, Hide UseErrorLevel

Runwait, %executable% %romName%, %EmuPath%, Hide UseErrorLevel

Process, waitClose, %executable%

Runwait, c:\Emu\Mame\640x480.exe, Hide UseErrorLevel

exitapp

}

Change the path names to 640x288.exe and 640x480.exe, to your mame installation, before saving.

Download Autohotkey from here: http://www.autohotkey.com/download/

Install it and run the compiler. (Compiler\Ahk2Exe.exe)

Select the new hyperlaunch.ahk and compile it into a new hyperlaunch.exe.

Replace the old hyperlaunch.exe with the new one you made. (Remember to always make a backup first)

And now DirectDraw in MAME under windows 7 works.

What this change does is whenever you launch a MAME game from Hyperspin the resolution is changed to 640x288 before mame is started.

Mame runs, sets the right directdraw resolution and avoid the interlace/non-interlace bug in Windows 7.

When you exit mame the resolution is reset to 640x480.

And everything works. :D

DirectDraw looks glorious on a 15Khz monitor. A huge difference compared to D3D. Well worth the bother. :laugh:

Regards

/Finn

 

When I do this I get this error when loading into mame:

 

"make sure your paths contain a backslash on the end"

 

This is what I have replaced in my Hyperlaunch.ahk mame section:

 

;*************************************MAME**************************************

else if (systemName = "MAME" && executable = "mame.exe")

{

    hideDesktop()

    Hotkey, %exitEmulatorKey%, CloseProcess

    Runwait, C:\Users\MAME\Desktop\Hyperspin Project - The Frontend\Emulators\MAME\640x288.exe, Hide UseErrorLevel

    Runwait, %executable% %romName%, %EmuPath%, Hide UseErrorLevel

    Process, waitClose, %executable%

    Runwait, C:\Users\MAME\Desktop\Hyperspin Project - The Frontend\Emulators\MAME\640x480.exe, Hide UseErrorLevel

    exitapp

}

 

 

Please Help!!!

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...