Merge branch 'master' of https://github.com/TASVideos/bizhawk into Release
This commit is contained in:
commit
24c98ab5ae
|
@ -270,7 +270,7 @@ namespace BizHawk.Client.Common
|
|||
{
|
||||
string discHash = new DiscHasher(disc).Calculate_PSX_BizIDHash().ToString("X8");
|
||||
game = Database.CheckDatabase(discHash);
|
||||
if (game.IsRomStatusBad() || game.Status == RomStatus.NotInDatabase)
|
||||
if (game == null || game.IsRomStatusBad() || game.Status == RomStatus.NotInDatabase)
|
||||
sw.WriteLine("Disc could not be identified as known-good. Look for a better rip.");
|
||||
else
|
||||
{
|
||||
|
|
|
@ -272,6 +272,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.QuickNES
|
|||
case "sha1:E8BC7E6BAE7032D571152F6834516535C34C68F0": // Bill and Ted's Excellent Adventure bad dump
|
||||
case "sha1:401023BAE92A38B89F7D0C2E0F023E35F1FFEEFD": // Bill and Ted's Excellent Adventure bad dump
|
||||
case "sha1:6270F9FF2BD0B32A23A45985D9D7FB2793E1CED3": // Bill and Ted's Excellent Adventure overdump dump
|
||||
case "sha1:5E3C02A3A5F6CD4F2442311630F1C44A8E9DC7E2": // Paperboy
|
||||
throw new UnsupportedGameException("Game known to not be playable in this core");
|
||||
default:
|
||||
break;
|
||||
|
|
|
@ -322,7 +322,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
|
|||
ret.readcallback = cd_callback_handle = new LibGPGX.cd_read_cb(CDRead);
|
||||
|
||||
var ses = CD.Session1;
|
||||
int ntrack = ses.Tracks.Count;
|
||||
int ntrack = ses.InformationTrackCount;
|
||||
|
||||
// bet you a dollar this is all wrong
|
||||
//zero 07-jul-2015 - throws a dollar in the pile, since he probably messed it up worse
|
||||
|
@ -330,8 +330,8 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
|
|||
{
|
||||
if (i < ntrack)
|
||||
{
|
||||
ret.tracks[i].start = ses.Tracks[i].LBA;
|
||||
ret.tracks[i].end = ses.Tracks[i + 1].LBA;
|
||||
ret.tracks[i].start = ses.Tracks[i + 1].LBA;
|
||||
ret.tracks[i].end = ses.Tracks[i + 2].LBA;
|
||||
if (i == ntrack - 1)
|
||||
{
|
||||
ret.end = ret.tracks[i].end;
|
||||
|
|
|
@ -100,7 +100,9 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
ControllerDefinition.FloatControls.Add("Disc Select");
|
||||
|
||||
ControllerDefinition.FloatRanges.Add(
|
||||
new[] {-1f,-1f,-1f} //this is carefully chosen so that we end up with a -1 disc by default (indicating that it's never been set)
|
||||
//new[] {-1f,-1f,-1f} //this is carefully chosen so that we end up with a -1 disc by default (indicating that it's never been set)
|
||||
//hmm.. I don't see why this wouldn't work
|
||||
new[] {0f,1f,1f}
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -586,6 +588,10 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
else
|
||||
OctoshockDll.shock_SetTraceCallback(psx, IntPtr.Zero, null);
|
||||
|
||||
//apply soft reset if needed
|
||||
if (Controller["Reset"])
|
||||
OctoshockDll.shock_SoftReset(psx);
|
||||
|
||||
//------------------------
|
||||
OctoshockDll.shock_Step(psx, OctoshockDll.eShockStep.Frame);
|
||||
//------------------------
|
||||
|
|
|
@ -202,6 +202,9 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
[DllImport(dd, CallingConvention = cc)]
|
||||
public static extern int shock_PowerOn(IntPtr psx);
|
||||
|
||||
[DllImport(dd, CallingConvention = cc)]
|
||||
public static extern int shock_SoftReset(IntPtr psx);
|
||||
|
||||
[DllImport(dd, CallingConvention = cc)]
|
||||
public static extern int shock_PowerOff(IntPtr psx);
|
||||
|
||||
|
|
|
@ -28,8 +28,8 @@ namespace BizHawk.Emulation.DiscSystem
|
|||
session.Tracks.Add(new DiscStructure.Track()
|
||||
{
|
||||
Number = 0,
|
||||
Control = EControlQ.None, //TODO - not accurate (take from track 1?)
|
||||
LBA = -150 //TODO - not accurate
|
||||
Control = EControlQ.None, //we'll set this later
|
||||
LBA = -new Timestamp(99,99,99).Sector //obvious garbage
|
||||
});
|
||||
|
||||
int ntracks = TOCRaw.LastRecordedTrackNumber - TOCRaw.FirstRecordedTrackNumber + 1;
|
||||
|
@ -63,7 +63,9 @@ namespace BizHawk.Emulation.DiscSystem
|
|||
session.Tracks.Add(new DiscStructure.Track()
|
||||
{
|
||||
Number = 0xA0, //right?
|
||||
Control = EControlQ.None, //TODO - not accurate (take from track 1?)
|
||||
//kind of a guess, but not completely
|
||||
Control = session.Tracks[session.Tracks.Count -1 ].Control,
|
||||
Mode = session.Tracks[session.Tracks.Count - 1].Mode,
|
||||
LBA = TOCRaw.LeadoutLBA.Sector
|
||||
});
|
||||
|
||||
|
@ -72,6 +74,11 @@ namespace BizHawk.Emulation.DiscSystem
|
|||
{
|
||||
session.Tracks[i].NextTrack = session.Tracks[i + 1];
|
||||
}
|
||||
|
||||
//fix lead-in track type
|
||||
//guesses:
|
||||
session.Tracks[0].Control = session.Tracks[1].Control;
|
||||
session.Tracks[0].Mode = session.Tracks[1].Mode;
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
|
@ -128,6 +128,9 @@ sha1:32D71DD6C5A8D78A918FE1B9D6D6C4A570D9652D Oeka Kids - Anpanman no Hiragana
|
|||
;it works, so don't laugh
|
||||
sha1:203523818A348361584CDEBE47AEB860808757FC U Jurassic Boy 2 (Sachen) NES board=NES-TR1ROM;VRAM=8
|
||||
|
||||
;wrong mirroring, no bootgod entry
|
||||
sha1:C1D82F6BE8AF524F951FC7C9D41604E59F9FE92A G Dragon Wars (USA) (Proto) NES board=MAPPER004;PAD_H=0;PAD_V=0
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;-----------------------------------------------------------------------
|
||||
;mmc3 homebrews that need chip specification
|
||||
sha1:35C157A921156E47FD3F6573D150F54108D0EDFC Blargg's 5.MMC3_rev_A.nes NES board=MAPPER004;MMC3=MMC3A
|
||||
|
|
|
@ -1342,6 +1342,16 @@ EW_EXPORT s32 shock_PowerOn(void* psx)
|
|||
return SHOCK_OK;
|
||||
}
|
||||
|
||||
//Triggers a soft reset immediately. Returns SHOCK_NOCANDO if console is powered off.
|
||||
EW_EXPORT s32 shock_SoftReset(void *psx)
|
||||
{
|
||||
if (!s_ShockState.power) return SHOCK_NOCANDO;
|
||||
|
||||
PSX_Power(false);
|
||||
|
||||
return SHOCK_OK;
|
||||
}
|
||||
|
||||
//Sets the power to OFF. It is an error to turn an already-off console OFF again
|
||||
EW_EXPORT s32 shock_PowerOff(void* psx)
|
||||
{
|
||||
|
|
|
@ -344,6 +344,9 @@ EW_EXPORT s32 shock_MountEXE(void* psx, void* exebuf, s32 size);
|
|||
//Sets the power to ON. Returns SHOCK_NOCANDO if already on.
|
||||
EW_EXPORT s32 shock_PowerOn(void* psx);
|
||||
|
||||
//Triggers a soft reset immediately. Returns SHOCK_NOCANDO if console is powered off.
|
||||
EW_EXPORT s32 shock_SoftReset(void* psx);
|
||||
|
||||
//Sets the power to OFF. Returns SHOCK_NOCANDO if already off.
|
||||
EW_EXPORT s32 shock_PowerOff(void* psx);
|
||||
|
||||
|
|
Loading…
Reference in New Issue