Jump to content

Need help getting dreamcast to work


chexmix222

Recommended Posts

Posted

This is frustrating to do this myself so I'm asking on here for help, OK so NullDC runs and it's configured and it even launches in hyperlauncher however when I try to launch a dreamcast game in hyperspin it tells me "cannot find Errornulldc.cfg any help is greatly appreciated

Posted

I looked in my HS log but doesn't show when it gives the error so I figured to show my hyperlaunch log maybe u can spot something wrong

05:38:35 AM |  HyperLaunch v2.25c
05:38:35 AM |  System Specs:
		HyperSpin Dir: C:\HyperSpin 1.0
		OS: WIN_7
		OS Language: 0409
		OS Admin Status: No
		Monitor #1 (\\.\DISPLAY1): 1600x900 (1600x860 work)
		HyperSpin Res: 1200x625
		AHK Version: 1.1.07.03
05:38:35 AM |  HyperLaunch received "Sega Dreamcast" and "Capcom vs. SNK v1.001 (2000)(Capcom)(NTSC)(US)[!]"
05:38:35 AM |  INI Keys read
05:38:35 AM |  Checking paths
05:38:35 AM |  Finished injecting functions into module
05:38:35 AM |  Module is built
05:38:35 AM |  Running module:

;-----------------------------------------------------------
;Built in script
;-----------------------------------------------------------
#NoTrayIcon
DetectHiddenWindows, ON
SetTitleMatchMode, 2
SendMode, Event
0 = 2
exitEmulatorKey = Esc
emuPath = C:\HyperSpin 1.0\Emulators\Sega Dreamcast\
romPath = C:\HyperSpin 1.0\Emulators\Sega Dreamcast\Roms\
romPathFromIni = C:\HyperSpin 1.0\Emulators\Sega Dreamcast\Roms\
romExtension = .cdi
romExtensionOrig = .cdi
romExtensions = cdi,zip
executable = nullDC_Win32_Release-NoTrace.exe
systemName = Sega Dreamcast
romName = Capcom vs. SNK v1.001 (2000)(Capcom)(NTSC)(US)[!]
daemonToolsPath = 
skipchecks = false
fadeIn = false
fadeOut = false
fadeColor = 0x000000
fadeInDuration = 500
fadeOutDuration = 500
fadeInDelay = 0
fadeInInterruptKeys = {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}
gameStartImgPath = C:\HyperSpin 1.0\Media\Sega Dreamcast\Images\GameStart\
moduleExtensionPath = C:\HyperSpin 1.0\Modules\Module Extensions\
7zEnable = false
7zExtractDir = C:\Users\TRAVIS~1\AppData\Local\Temp\Hyperspin\
7zExtractDirOrig = 
7zDelTemp = true
7zFormats = .zip,.rar,.7z,.gzip,.tar
7zFormatsNoP = zip,rar,7z,gzip,tar
mgEnabled = false
mgKey = NumpadSub
mgSelectKey = Enter
mgExitKey = Esc
multiGameImgPath = C:\HyperSpin 1.0\Media\Sega Dreamcast\Images\MultiGame\
mgBackgroundColor = FF000000
mgSidePadding = 0.2
mgYOffset = 500
mgImageAdjust = 1
mgFont = Arial
mgText1Options = x10p y30p w80p Centre cBBFFFFFF r4 s100 Bold Italic
mgText1Text = Please select a game
mgText2Options = w96p cFFFFFFFF r4 s50 Center Bold Italic
mgText2Offset = 70
mgUseSound = true
mgSoundfreq = 300
mgExitEffect = none
mgSelectedEffect = rotate
mgUseGameArt = false
mgArtworkDir = Artwork1
Hotkey, Esc, CloseProcess
;-----------------------------------------------------------
;Module script
;-----------------------------------------------------------
;----------------------------------------------------------------------------
; Sega Dreamcast
; Makaron T12-5, NullDC v1.0.4 r135, Demul v0.5.6
; by djvj/brolly
; 1.6
;
; Notes:
; ** Makaron **
; Extract all your DC bios bins into the ROM subdir of your emu
; Open the Makaron.ini and set your resolution and remove the # in front of the lines you want enabled, including fullscreen.
; This script supports the following DC images: GDI, CDI
; vJoy is required for joystick input for Makaron DC games: http://headsoft.com.au/index.php?category=vjoy
; 
; ** Demul **
; This script supports the following DC images: GDI, CDI, CHD, MDS, CCD, NRG, CUE
; Place your dc.zip bios in the roms subdir of your emu
; Run demul manually and goto Config->Plugins->GD-ROM Plugin and set it to gdrImage
; Set your Video Plugin to gpuOglv3
; On first run of a game, demul will ask you to setup all your plugin choices if you haven't already.
;
; ** nullDC **
; If you want to use specific configs per game, create a folder called Cfg inside nullDC folder and copy your nullDC.cfg 
; config files into it naming them to match the database names. Make sure you keep a copy of nullDC.cfg on the Cfg folder as well.
;
; If you want to convert your roms from gdi to chd, see here: http://www.emutalk.net/showthread.php?t=51502
; FileDelete(s) are in the script because sometimes demul will corrupt the ini and make it crash. The script recreates a clean ini for you.
;
; Setup the user settings below to your liking
;
; For additional setup steps prior to running, see this link: http://www.hyperspin-fe.com/forum/showpost.php?p=99852&postcount=138
;----------------------------------------------------------------------------

settingsFile := checkFile(A_WorkingDir . "\Modules\" . systemName . "\Settings.ini")

IniRead, pathToNullDC, %settingsFile%, Settings, PathToNullDC
IniRead, pathToMakaron, %settingsFile%, Settings, PathToMakaron
IniRead, pathToDemul, %settingsFile%, Settings, PathToDemul
IniRead, nullDCExe, %settingsFile%, Settings, nullDCExe
IniRead, makaronExe, %settingsFile%, Settings, makaronExe
IniRead, demulExe, %settingsFile%, Settings, demulExe
IniRead, fullscreen, %settingsFile%, Settings, Fullscreen
IniRead, useVJoy, %settingsFile%, Makaron, useVJoy ; makaron only

IniRead, emulator, %settingsFile%, %romName%, Emulator, NullDC
IniRead, winCE, %settingsFile%, %romName%, WinCE, false ; makaron only
IniRead, cable, %settingsFile%, %romName%, Cable, 0 ; makaron only
IniRead, keyboard, %settingsFile%, %romName%, Keyboard, false ; makaron only
IniRead, disableplayertwo, %settingsFile%, %romName%, DisablePlayerTwo, false ; makaron only

If ( emulator = "Demul" ) {
		IniRead, useGlobalShaderEffects, %settingsFile%, Demul, useGlobalShaderEffects
	} Else If ( emulator = "Makaron" && useVJoy = "true" ) {
		IniRead, vJoyPath, %settingsFile%, Makaron, vJoyPath
		IniRead, vJoyExe, %settingsFile%, Makaron, vJoyExe
		IniRead, vJoyIni, %settingsFile%, Makaron, vJoyIni
		CheckFile(vJoyIni)
	} Else If emulator not in Demul,Makaron
	{
		IniRead, dualMonitors, %settingsFile%, nulldc, DualMonitors
		IniRead, autoStart, %settingsFile%, nulldc, autoStart
		IniRead, autoHideMenu, %settingsFile%, nulldc, autoHideMenu
		IniRead, alwaysOnTop, %settingsFile%, nulldc, alwaysOnTop
		IniRead, showVMU, %settingsFile%, nulldc, showVMU
		IniRead, loadDefaultImage, %settingsFile%, nulldc, loadDefaultImage
		IniRead, patchRegion, %settingsFile%, nulldc, patchRegion
	}

If ( WinCE = "true" && emulator != "Makaron" )
	ScriptError("You have WinCE set but Makaron is not your emulator. WinCE games only work on Makaron")

GUI_ID := FadeInStart()

7z1 := 7z(romPath, romName, romExtension, 7zExtractDir)

If ( emulator = "Makaron" ) {
		If (romExtension = ".gdi")
			CheckForSpaces(romName)

		makIni := checkFile(pathToMakaron . "Makaron.ini")
		mapleFile := checkFile(pathToMakaron . "Maple.ini")

		IniRead, MMU, %makIni%, SH4, MMU
		IniRead, makFS, %makIni%, Settings, fullscreen
		IniRead, currentCable, %makIni%, Settings, cable

		 ; Running VJoy & checking to make sure it actually ran
		If ( useVJoy = "true" ) {
				Run, %vJoyExe% -file "%vJoyIni%", %vJoyPath%
				CheckForVJoy(ByRef vJoyExe)
			}

		; Turning MMU on/off because WinCE games require this
		If ( MMU != 1 && winCE = "true" )
			IniWrite, 1, %makIni%, SH4, MMU
		Else If ( MMU != 0 && winCE = "false" )
			IniWrite, 0, %makIni%, SH4, MMU

		 ; Changing cable if it doesn't match current setting
		If ( currentCable != cable )
			IniWrite, %cable%, %makIni%, Settings, cable

		 ; Setting fullscreen on or off
		If ( makFS != 1 && Fullscreen = "true" )
			IniWrite, 1, %makIni%, Settings, fullscreen
		Else If ( makFS = 1 && Fullscreen != "true" )
			IniWrite, 0, %makIni%, Settings, fullscreen

		;Read Maple.ini into memory and plug/unplug the keyboard as necessary
		FileRead, mapleCFG, %mapleFile%

		currentKeyboard := (InStr(mapleCFG, "#Adres0x20 = MakaronKEY.dll") ? ("true") : ("false"))
		If ( keyboard = "true" And currentKeyboard = "true" ) {
			StringReplace, mapleCFG, mapleCFG, #Adres0x20 = MakaronKEY.dll, Adres0x20 = MakaronKEY.dll
			Save = 1
		} Else If ( keyboard = "false" And currentKeyboard = "false" ) {
			StringReplace, mapleCFG, mapleCFG, Adres0x20 = MakaronKEY.dll, #Adres0x20 = MakaronKEY.dll
			Save = 1
		}

		If Save
			SaveFile(mapleCFG,mapleFile)

		;Unplug controller from port 2 if needed
		padFile := checkFile(pathToMakaron . "MakaronPAD.ini")
		IniRead, isPortBDisabled, %padFile%, Urzadzenia, PortB, %A_Space%
		isPortBDisabled := isPortBDisabled ? "false" : "true"

		If (isPortBDisabled = "true" && disableplayertwo = "false") {
			IfExist, %pathToMakaron%MakaronPAD_2P.ini
				FileCopy, %pathToMakaron%MakaronPAD_2P.ini, %pathToMakaron%MakaronPAD.ini, 1
		} Else If (isPortBDisabled = "false" && disableplayertwo = "true") {
			IfExist, %pathToMakaron%MakaronPAD_1P.ini
				FileCopy, %pathToMakaron%MakaronPAD_1P.ini, %pathToMakaron%MakaronPAD.ini, 1
		}

		Run, %makaronExe% "%romPath%%romName%%romExtension%", %pathToMakaron%

		Sleep, 4000 ; adjust to your liking for how long you want to see the black screen

		GUI_ID2 := FadeInExit()

		Process, WaitClose, %makaronExe%

} Else If ( emulator = "Demul" ) {
		If ( romExtension = ".cdi" || romExtension = ".mds" || romExtension = ".ccd" || romExtension = ".nrg" || romExtension = ".gdi" || romExtension = ".cue" ) {
			FileDelete, %pathToDemul%gdrImage.ini
			Sleep, 500
			IniWrite, gdrImage.dll, %pathToDemul%Demul.ini, plugins, gdr
			IniWrite, false, %pathToDemul%gdrImage.ini, Main, openDialog
			IniWrite, %romPath%%romName%%romExtension%, %pathToDemul%gdrImage.ini, Main, imagefilename
		} Else If ( romExtension = ".chd" ) {
			FileDelete, %pathToDemul%gdrCHD.ini
			Sleep, 500
			IniWrite, false, %pathToDemul%gdrCHD.ini, Main, openDialog
			IniWrite, gdrCHD.dll, %pathToDemul%Demul.ini, plugins, gdr
			IniWrite, %romPath%%romName%%romExtension%, %pathToDemul%gdrCHD.ini, Main, imagefilename
		}

		IniWrite, 1, %pathToDemul%Demul.ini, main, region ; Set BIOS to Auto Region

		 ; Shader Effects
		IniRead, currentShaderValue, %pathToDemul%gpuOglv3.ini, shader, effects
		If ( useGlobalShaderEffects = "true" ) {
			If ( currentShaderValue = "false" )
				IniWrite, true, %pathToDemul%gpuOglv3.ini, shader, effects
			IniWrite, %shaderMode%, %pathToDemul%gpuOglv3.ini, shader, mode
			IniWrite, %shaderPath%, %pathToDemul%gpuOglv3.ini, shader, path
			IniWrite, %shaderName%, %pathToDemul%gpuOglv3.ini, shader, name
		}
		Else If ( useGlobalShaderEffects = "false" and currentShaderValue = "true" )
			IniWrite, false, %pathToDemul%gpuOglv3.ini, shader, effects

		Sleep, 250
		Run, %demulExe% -run=dc, %pathToDemul%
		Sleep, 4000 ; adjust to your liking for how long you want to see the black screen
		If ( Fullscreen = "true" )
			Send !{Enter} ; fullscreen

		GUI_ID2 := FadeInExit()

		Process, WaitClose, %demulExe%

} Else { ; This will run NullDC and is the default for any game not defined in Settings.ini
		specialCfg = %pathToNullDC%cfg\%romName%.cfg
		defaultCfg = %pathToNullDC%cfg\nullDC.cfg
		If ( FileExist(specialCfg) && FileExist(defaultCfg))
			FileCopy, %specialCfg%, %pathToNullDC%nullDC.cfg, 1
		Else If (FileExist(defaultCfg))
			FileCopy, %defaultCfg%, %pathToNullDC%nullDC.cfg, 1

		nullDCcfg := checkFile(pathToNullDC . "nullDC.cfg")

		;Detect game region based on rom name
		region = 1
		IfInString, romName, (Europe)
			region = 2
		IfInString, romName, (Japan)
			region = 0
		IfInString, romName, (World)
			region = 2

		;Write Settings
		If (Fullscreen = "true" )
			IniWrite, 1, %nullDCcfg%, nullDC_GUI, Fullscreen
		Else
			IniWrite, 0, %nullDCcfg%, nullDC_GUI, Fullscreen

		IniWrite, %autoStart%, %nullDCcfg%, nullDC, Emulator.AutoStart
		IniWrite, %noConsole%, %nullDCcfg%, nullDC, Emulator.NoConsole
		IniWrite, %autoHideMenu%, %nullDCcfg%, nullDC_GUI, AutoHideMenu
		IniWrite, %alwaysOnTop%, %nullDCcfg%, nullDC_GUI, AlwaysOnTop
		IniWrite, %showVMU%, %nullDCcfg%, drkMaple, VMU.Show
		IniWrite, %loadDefaultImage%, %nullDCcfg%, ImageReader, LoadDefaultImage
		IniWrite, %patchRegion%, %nullDCcfg%, ImageReader, PatchRegion
		IniWrite, %region%, %nullDCcfg%, nullDC, Dreamcast.Region
		IniWrite, %romPath%%romname%%RomExtension%, %nullDCcfg%, ImageReader, DefaultImage

		;Fixes hanging previous nullDC on bad exits or loads
		Process, Exist, %nullDCExe%
		If !ErrorLevel = 0
			Process, Close, %nullDCExe%

		; This hides nullDC's menu when running dual screens
		If ( dualMonitors = "true" ) {
			MouseGetPos X, Y 
			SetDefaultMouseSpeed, 0
			MouseMove %A_ScreenWidth%,%A_ScreenHeight%
		}
		
		Run, %nullDCExe%, %pathToNullDC%, Hide

		Sleep, 2000 ; Enough to hide the startup logo
		WinWait, nullDC ahk_class ndc_main_window
		WinWaitActive, nullDC ahk_class ndc_main_window

		DllCall("SetMenu", uint, WinActive( "A" ), uint, 0) ; Removes the MenuBar
		
		;Let's completely hide the menu by slighly moving the window off screen
		;nullDC will self adjust once the menu autohides
		If ( fullScreen = "true" ) {
			yOffset = -20
			winHeight := A_ScreenHeight - yOffset
			WinMove, nullDC,, 0, %yOffset%, %A_ScreenWidth%, %winHeight%
		}

		WinShow, nullDC ; without these, nullDC may stay hidden behind HS
		WinActivate, nullDC

		GUI_ID2 := FadeInExit()

		Process, WaitClose, %nullDCExe%
	}

; Closing VJoy
If ( emulator = "Makaron" && useVJoy = "true" )
	Run, %vJoyExe% -exit, %vJoyPath%

7z2 := 7zCleanUp()

GUI_ID4 := FadeOutExit()

WinActivate, Hyperspin

ExitApp

;(�`�._.���`�._.���`�._.���`�._.���`�._.���`�._.���`�._.���)
; Functions - DO NOT EDIT
;(_.���`�._.���`�._.���`�._.���`�._.���`�._.���`�._.���`�._)

CheckForVJoy(ByRef exe) {
		Process, Wait, %exe%, 5
		NewPID = %ErrorLevel%
		If NewPID = 0
		{
			ScriptError("VJoy did not start. Check your VJoy path and Exe")
			ExitApp
		}
	}

CheckForSpaces(name) {
		IfInString, name, %A_Space%
		{
			ScriptError("Rom name contains a space.`nMakaron will not run games with spaces in their names")
			ExitApp
		}
	}

SaveFile(text,file) {
	FileDelete, %file%
	FileAppend, %text%, %file%
}

CloseProcess:
	GUI_ID3 := FadeOutStart()
	If ( emulator = "NullDC" )
		WinClose, nullDC ahk_class ndc_main_window
	Else If ( emulator = "Demul" )
			Process, Close, %demulExe% ; we have to close this way otherwise demul crashes with WinClose
	Else If ( emulator = "Makaron" ) {
			Send, {F8}
			Sleep, 1000
			Send, !{F4}
			Sleep, 500
			Process, Close, %makaronExe% ; Makaron doesn't end the exe sometimes, we must manually do it
		}
Return

hideDesktop(){
}

FadeInStart(){
}

FadeInExit(){
}

FadeOutStart(){
Suspend, On
}

FadeOutExit(){
}

7z(7zP, 7zN, 7zE, 7zExtractDir){
}

7zCleanUp() {
}

CheckFile(file,msg="",timeout=6){
IfNotExist, %file%
{
If msg
ScriptError(msg, timeout)
Else
ScriptError("Cannot find " . file, timeout) 
}
Return %file%
}

ScriptError(error,timeout=6){
MsgBox,48,Error,%error%,%timeout%
ExitApp
}
05:38:36 AM |  Module ended, exiting HyperLaunch normally
 
Posted

That's where I have, but it shows as ERRORnulldc.cfg and I now have version 1.0.4 and for some reason I had to make a directory in hyperlaunch/nulldc/nulldc_104

Oj a side note you wouldn't happen to know the ahk code to close out of fusion? I had to manually do this for ePSXe and it worked but once I launch a sega master or sega DC game pressing escape does nothing

Thanks for helping me BTW

Posted

Also how can I change the directory to where I want it to go? Say hs/emu~/sega dreamcast/nulldc/ I don't know much about xml or ahk codes

 

If I may interject here... If you are just setting all of this up for the first time, there is absolutely NO reason to be using old outdated versions! (Almost) nobody messes with ahks. There is generally just no need to ever do so anymore. There are excellent tutorials right here on site that will get you up and running with HS1.4 and RL in no time. Also do a youtube search for "simplyaustin". Just watch him set up a few systems and you'll get the hang of it.

Posted

No I have been working on this for quite a few years lol I'm be vows about upgrading because I don't wanna lose my progress

Ok then, I feel for you man. Just sayin'... stuff has changed for reasons! Things needed to work, so they released new versions so they would! Super easy now! Point RL to your roms and to emulator... Boom. Maybe the system needs a bios so you tell RL where it is... Boom. Each system (module) includes notes on exactly how to set it up. I've never had to mess with any Ahk.

Xml's are a different story, they are just databases. You can edit them to your liking in notepad. I do this all the time.

All your themes/videos/artwork can be dragged over to the new hyperspin/media/ folder after. Really not that bad. Don't delete your old setup, just try installing new version on it's own and see how you like it. They delete key is not far away if you can't handle it. Then you can go back to the way you were doing things.

Sent from my SGH-I337M using Tapatalk

Posted

Well I did it, I'm now on HS 1.4 and got dreamcast to work! But when the game runs say crazy taxi I push buttons on my controller and I can still hear HS running as if I'm selecting menus in HS, if that makes any sense idk if I'm explaining it right, also when I start dreamcast it runs but shows my desktop I have to click on the emu at the bottom to play it don't know if that has anything to do with it

Also my Playstation 2 emu gives my this error (in pic) but it still plays in the background, I just click on it and I can play it I'm running PCSX2 1.2.1post-105655-0-74994500-1460472358_thumb.jpg

Posted

Good job chexmix!

 

I am using pcsx2 1.4.0 without any issue. Try that version.

 

For the DC issue (using nullDC?), the module was tested with the r141 version. I just checked mine and I'm running "nullDC_Win32_Release-NoTrace". I don't remember why I started using this special build, but everything is working good so far so I haven't updated.

 

Maybe related... How are you controlling HS? If you are using the joystick option in hyperHQ, it is buggy and should probably be turned off. There are better ways to handle controls. I have definitely heard of this controlling HS in the background thing. Should NOT be happening.

Posted

Thanks guys the reason I use pcsx2 1.2.1 is because it runs mortal kombat shaolin monks great and I love that game lol but definitely gonna try 1.4, I was thinking of the options like hide front-end when emu is playing but I don't wanna mess nothing up, only thing I got left is my sega Genesis and games then I'll be set, oh and get more art work,

Posted

I'm back, this time it's mame I'm using v 0.148 for HS and notice it doesn't run the newer games, but if I load it up with mame 32 they work and some won't even work at all gives me an error "missing one or more Rom..." I've even tried with the newest version of mame v0.172 so is it the roms or HS?

Posted

Mame version, rom version, and database all should be same version. Mixing and matching is sure to have certain games not work.

Since .172 is probably the only database available here ATM, I would suggest using that version of mame and roms.

Sent from my SGH-I337M using Tapatalk

Posted

How do you know which version of the rom it is? Say I go to a rom site where would the version compatibility be located? I'm using version 148 and seems to work with the majority of the rom set I have

Archived

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

×
×
  • Create New...