yabause: simple "front end" for bizhawk integration together with msvs 2010 project

This commit is contained in:
goyuken 2013-04-30 21:25:06 +00:00
parent 93fdc1844f
commit 65ce29ce40
4 changed files with 638 additions and 0 deletions

View File

@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libyabause", "libyabause.vcxproj", "{88FB48B5-EA33-4CA9-B585-C23992C061A8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{88FB48B5-EA33-4CA9-B585-C23992C061A8}.Debug|Win32.ActiveCfg = Debug|Win32
{88FB48B5-EA33-4CA9-B585-C23992C061A8}.Debug|Win32.Build.0 = Debug|Win32
{88FB48B5-EA33-4CA9-B585-C23992C061A8}.Release|Win32.ActiveCfg = Release|Win32
{88FB48B5-EA33-4CA9-B585-C23992C061A8}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,173 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{88FB48B5-EA33-4CA9-B585-C23992C061A8}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>libyabause</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBYABAUSE_EXPORTS;HAVE_C99_VARIADIC_MACROS;VERSION="LIB";C68K_NO_JUMP_TABLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<DisableSpecificWarnings>4244;4996;4018;4146</DisableSpecificWarnings>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBYABAUSE_EXPORTS;HAVE_C99_VARIADIC_MACROS;VERSION="LIB";C68K_NO_JUMP_TABLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<DisableSpecificWarnings>4244;4996;4018;4146</DisableSpecificWarnings>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\bios.c" />
<ClCompile Include="..\c68k\c68k.c" />
<ClCompile Include="..\c68k\c68kexec.c" />
<ClCompile Include="..\c68k\gen68k.c" />
<ClCompile Include="..\cdbase.c" />
<ClCompile Include="..\cheat.c" />
<ClCompile Include="..\coffelf.c" />
<ClCompile Include="..\cs0.c" />
<ClCompile Include="..\cs1.c" />
<ClCompile Include="..\cs2.c" />
<ClCompile Include="..\debug.c" />
<ClCompile Include="..\error.c" />
<ClCompile Include="..\m68kc68k.c" />
<ClCompile Include="..\m68kcore.c" />
<ClCompile Include="..\m68kd.c" />
<ClCompile Include="..\memory.c" />
<ClCompile Include="..\movie.c" />
<ClCompile Include="..\netlink.c" />
<ClCompile Include="..\osdcore.c" />
<ClCompile Include="..\peripheral.c" />
<ClCompile Include="..\profile.c" />
<ClCompile Include="..\scsp.c" />
<ClCompile Include="..\scu.c" />
<ClCompile Include="..\sh2core.c" />
<ClCompile Include="..\sh2d.c" />
<ClCompile Include="..\sh2idle.c" />
<ClCompile Include="..\sh2int.c" />
<ClCompile Include="..\sh2trace.c" />
<ClCompile Include="..\smpc.c" />
<ClCompile Include="..\sndal.c" />
<ClCompile Include="..\snddummy.c" />
<ClCompile Include="..\sndwav.c" />
<ClCompile Include="..\thr-dummy.c" />
<ClCompile Include="..\titan\titan.c" />
<ClCompile Include="..\vdp1.c" />
<ClCompile Include="..\vdp2.c" />
<ClCompile Include="..\vdp2debug.c" />
<ClCompile Include="..\vidogl.c" />
<ClCompile Include="..\vidshared.c" />
<ClCompile Include="..\vidsoft.c" />
<ClCompile Include="..\yabause.c" />
<ClCompile Include="..\ygl.c" />
<ClCompile Include="..\yglshader.c" />
<ClCompile Include="yui.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\c68k\c68k.h" />
<ClInclude Include="..\c68k\gen68k.h" />
<ClInclude Include="..\core.h" />
<ClInclude Include="..\cs0.h" />
<ClInclude Include="..\cs1.h" />
<ClInclude Include="..\cs2.h" />
<ClInclude Include="..\debug.h" />
<ClInclude Include="..\dx.h" />
<ClInclude Include="..\error.h" />
<ClInclude Include="..\font.h" />
<ClInclude Include="..\m68kc68k.h" />
<ClInclude Include="..\m68kcore.h" />
<ClInclude Include="..\m68kd.h" />
<ClInclude Include="..\macjoy.h" />
<ClInclude Include="..\memory.h" />
<ClInclude Include="..\movie.h" />
<ClInclude Include="..\netlink.h" />
<ClInclude Include="..\osdcore.h" />
<ClInclude Include="..\peripheral.h" />
<ClInclude Include="..\profile.h" />
<ClInclude Include="..\scsp.h" />
<ClInclude Include="..\scsp2.h" />
<ClInclude Include="..\scu.h" />
<ClInclude Include="..\sh2core.h" />
<ClInclude Include="..\sh2d.h" />
<ClInclude Include="..\sh2idle.h" />
<ClInclude Include="..\sh2int.h" />
<ClInclude Include="..\sh2trace.h" />
<ClInclude Include="..\smpc.h" />
<ClInclude Include="..\sndal.h" />
<ClInclude Include="..\snddx.h" />
<ClInclude Include="..\sndmac.h" />
<ClInclude Include="..\sndsdl.h" />
<ClInclude Include="..\threads.h" />
<ClInclude Include="..\titan\titan.h" />
<ClInclude Include="..\vdp1.h" />
<ClInclude Include="..\vdp2.h" />
<ClInclude Include="..\vdp2debug.h" />
<ClInclude Include="..\vidogl.h" />
<ClInclude Include="..\vidshared.h" />
<ClInclude Include="..\vidsoft.h" />
<ClInclude Include="..\yabause.h" />
<ClInclude Include="..\ygl.h" />
<ClInclude Include="..\yui.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,285 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\bios.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\cdbase.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\cheat.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\coffelf.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\cs0.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\cs1.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\cs2.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\debug.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\error.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\m68kc68k.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\m68kcore.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\m68kd.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\memory.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\movie.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\netlink.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\osdcore.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\peripheral.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\profile.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\scsp.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\scu.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sh2core.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sh2d.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sh2idle.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sh2int.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sh2trace.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\smpc.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sndal.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\snddummy.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\sndwav.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\thr-dummy.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vdp1.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vdp2.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vdp2debug.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vidogl.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vidshared.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\vidsoft.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\yabause.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\ygl.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\yglshader.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\titan\titan.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="yui.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\c68k\c68k.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\c68k\c68kexec.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\c68k\gen68k.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\core.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\cs0.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\cs1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\cs2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\debug.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\dx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\error.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\font.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\m68kc68k.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\m68kcore.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\m68kd.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\macjoy.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\memory.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\movie.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\netlink.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\osdcore.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\peripheral.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\profile.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\scsp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\scsp2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\scu.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sh2core.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sh2d.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sh2idle.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sh2int.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sh2trace.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\smpc.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sndal.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\snddx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sndmac.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\sndsdl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\threads.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vdp1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vdp2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vdp2debug.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vidogl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vidshared.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\vidsoft.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\yabause.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\ygl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\yui.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\titan\titan.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\c68k\c68k.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\c68k\gen68k.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -0,0 +1,160 @@
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
extern "C" {
#include "../cs0.h"
#include "../m68kcore.h"
#include "../peripheral.h"
#include "../vidsoft.h"
#include "../vdp2.h"
#include "../yui.h"
}
extern "C" SH2Interface_struct *SH2CoreList[] = {
&SH2Interpreter,
&SH2DebugInterpreter,
NULL
};
extern "C" PerInterface_struct *PERCoreList[] = {
&PERDummy,
NULL
};
extern "C" CDInterface *CDCoreList[] = {
&DummyCD,
&ISOCD,
NULL
};
extern "C" SoundInterface_struct *SNDCoreList[] = {
&SNDDummy,
NULL
};
extern "C" VideoInterface_struct *VIDCoreList[] = {
&VIDDummy,
&VIDSoft,
NULL
};
extern "C" M68K_struct *M68KCoreList[] = {
&M68KDummy,
&M68KC68K,
#ifdef HAVE_Q68
&M68KQ68,
#endif
NULL
};
/* If Yabause encounters any fatal errors, it sends the error text to this function */
void YuiErrorMsg(const char *string)
{
MessageBoxA(NULL, string, "Yabooze dun goofed", 0);
}
/* Sets attribute for the Video display. The values passed to this function
depends on what Video core is being used at the time. This may end up
being moved to the Video Core. */
void YuiSetVideoAttribute(int type, int val)
{
// only called in GL mode?
switch (type)
{
case RED_SIZE:
break;
case GREEN_SIZE:
break;
case BLUE_SIZE:
break;
case DEPTH_SIZE:
break;
case DOUBLEBUFFER:
break;
}
}
/* Tells the yui it wants to setup the display to display the specified video
format. It's up to the yui to setup the actual display. This may end
up being moved to the Video Core. */
int YuiSetVideoMode(int width, int height, int bpp, int fullscreen)
{
// only called in GL mode?
// return -1; // failure
return 0; // success
}
u32 *vidbuff = NULL;
extern "C" int vdp2height;
extern "C" int vdp2width;
/* Tells the yui to exchange front and back video buffers. This may end
up being moved to the Video Core. */
void YuiSwapBuffers(void)
{
if (vidbuff)
{
u32 *src = dispbuffer;
u32 *dst = vidbuff;
for (int j = 0; j < vdp2height; j++)
for (int i = 0; i < vdp2width; i++)
*dst++ = *src++ | 0xff000000;
}
}
// some garbage from the sound system, we'll have to fix this all up
extern "C" void DRV_AviSoundUpdate(void* soundData, int soundLen)
{
}
// must hold at least 704x512 pixels
extern "C" __declspec(dllexport) void libyabause_setvidbuff(u32 *buff)
{
vidbuff = buff;
}
extern "C" __declspec(dllexport) void libyabause_softreset()
{
YabauseResetButton();
}
extern "C" __declspec(dllexport) void libyabause_frameadvance(int *w, int *h)
{
YabauseEmulate();
*w = vdp2width;
*h = vdp2height;
}
extern "C" __declspec(dllexport) void libyabause_deinit()
{
YabauseDeInit();
}
extern "C" __declspec(dllexport) int libyabause_init()
{
yabauseinit_struct yinit;
memset(&yinit, 0, sizeof(yabauseinit_struct));
yinit.percoretype = PERCORE_DUMMY;
yinit.sh2coretype = SH2CORE_INTERPRETER;
yinit.vidcoretype = VIDCORE_SOFT;
yinit.sndcoretype = SNDCORE_DUMMY;
yinit.cdcoretype = CDCORE_ISO; //CDCORE_DUMMY;
yinit.m68kcoretype = M68KCORE_C68K;
yinit.cartpath = CART_NONE;
yinit.regionid = REGION_AUTODETECT;
yinit.biospath = NULL;
yinit.cdpath = "D:\\encodes\\saturnimages\\Castlevania SOTN.iso"; //NULL;
yinit.buppath = NULL;
yinit.mpegpath = NULL;
yinit.cartpath = NULL;
yinit.netlinksetting = NULL;
yinit.videoformattype = VIDEOFORMATTYPE_NTSC;
if (YabauseInit(&yinit) != 0)
return 0;
return 1;
}