Enable SameBoy in testroms projects
This commit is contained in:
parent
7392df29d9
commit
5d92ca3b4f
File diff suppressed because it is too large
Load Diff
|
@ -101,7 +101,7 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
TestUtils.ShortCircuitKnownFailure(caseStr, KnownFailures, out var knownFail);
|
||||
var actualUnnormalised = DummyFrontend.RunAndScreenshot(
|
||||
InitGBCore(testCase.Setup, $"{testCase.TestName}.gbc", ReflectionCache.EmbeddedResourceStream(testCase.RomEmbedPath).ReadAllBytes()),
|
||||
static fe => fe.FrameAdvanceBy(15));
|
||||
static fe => fe.FrameAdvanceBy(18));
|
||||
var state = GBScreenshotsEqual(
|
||||
ReflectionCache.EmbeddedResourceStream(testCase.ExpectEmbedPath),
|
||||
actualUnnormalised,
|
||||
|
|
|
@ -37,6 +37,8 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
private static readonly IReadOnlyCollection<string> KnownFailures = new[]
|
||||
{
|
||||
"BullyGB on CGB_C in GBHawk",
|
||||
"BullyGB on CGB_C in SameBoy (no BIOS)",
|
||||
"BullyGB on DMG in SameBoy (no BIOS)",
|
||||
};
|
||||
|
||||
private static readonly bool RomIsPresent = ReflectionCache.EmbeddedResourceList().Contains(ROM_EMBED_PATH);
|
||||
|
@ -61,7 +63,7 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
TestUtils.ShortCircuitKnownFailure(caseStr, KnownFailures, out var knownFail);
|
||||
var actualUnnormalised = DummyFrontend.RunAndScreenshot(
|
||||
InitGBCore(setup, "bully.gbc", ReflectionCache.EmbeddedResourceStream(ROM_EMBED_PATH).ReadAllBytes()),
|
||||
static fe => fe.FrameAdvanceBy(18));
|
||||
static fe => fe.FrameAdvanceBy(20));
|
||||
var state = GBScreenshotsEqual(
|
||||
ReflectionCache.EmbeddedResourceStream($"res.BullyGB_artifact.expected_{(setup.Variant.IsColour() ? "cgb" : "dmg")}.png"),
|
||||
actualUnnormalised,
|
||||
|
|
|
@ -7,11 +7,13 @@ using BizHawk.Emulation.Common;
|
|||
using BizHawk.Emulation.Cores;
|
||||
using BizHawk.Emulation.Cores.Nintendo.Gameboy;
|
||||
using BizHawk.Emulation.Cores.Nintendo.GBHawk;
|
||||
using BizHawk.Emulation.Cores.Nintendo.Sameboy;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
using static BizHawk.Emulation.Cores.Nintendo.Gameboy.Gameboy;
|
||||
using static BizHawk.Emulation.Cores.Nintendo.GBHawk.GBHawk;
|
||||
using static BizHawk.Emulation.Cores.Nintendo.Sameboy.Sameboy;
|
||||
|
||||
namespace BizHawk.Tests.Testroms.GB
|
||||
{
|
||||
|
@ -22,7 +24,14 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
public readonly struct CoreSetup
|
||||
{
|
||||
public static IReadOnlyCollection<CoreSetup> ValidSetupsFor(ConsoleVariant variant)
|
||||
=> new CoreSetup[] { new(CoreNames.Gambatte, variant), new(CoreNames.Gambatte, variant, useBios: false), new(CoreNames.GbHawk, variant) };
|
||||
=> new CoreSetup[]
|
||||
{
|
||||
new(CoreNames.Gambatte, variant),
|
||||
new(CoreNames.Gambatte, variant, useBios: false),
|
||||
new(CoreNames.GbHawk, variant),
|
||||
new(CoreNames.Sameboy, variant),
|
||||
new(CoreNames.Sameboy, variant, useBios: false),
|
||||
};
|
||||
|
||||
public readonly string CoreName;
|
||||
|
||||
|
@ -55,6 +64,20 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
|
||||
private static readonly GBSyncSettings GBHawkSyncSettings_GBC = new() { ConsoleMode = GBSyncSettings.ConsoleModeType.GBC };
|
||||
|
||||
private static readonly SameboySettings SameBoySettings = new() { ColorCorrection = SameboySettings.ColorCorrectionMode.DISABLED };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GB_NOBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_DMG_B, EnableBIOS = false };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GB_USEBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_DMG_B, EnableBIOS = true };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GBC_C_NOBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_CGB_C, EnableBIOS = false };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GBC_C_USEBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_CGB_C, EnableBIOS = true };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GBC_D_NOBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_CGB_D, EnableBIOS = false };
|
||||
|
||||
private static readonly SameboySyncSettings SameBoySyncSettings_GBC_D_USEBIOS = new() { ConsoleMode = SameboySyncSettings.GBModel.GB_MODEL_CGB_D, EnableBIOS = true };
|
||||
|
||||
public static readonly IReadOnlyDictionary<int, int> MattCurriePaletteMap = new Dictionary<int, int>
|
||||
{
|
||||
[0x0F3EAA] = 0x0000FF,
|
||||
|
@ -126,6 +149,15 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
? GBHawkSyncSettings_GBC
|
||||
: GBHawkSyncSettings_GB;
|
||||
|
||||
public static SameboySyncSettings GetSameBoySyncSettings(ConsoleVariant variant, bool biosAvailable)
|
||||
=> variant switch
|
||||
{
|
||||
ConsoleVariant.CGB_C => biosAvailable ? SameBoySyncSettings_GBC_C_USEBIOS : SameBoySyncSettings_GBC_C_NOBIOS,
|
||||
ConsoleVariant.CGB_D => biosAvailable ? SameBoySyncSettings_GBC_D_USEBIOS : SameBoySyncSettings_GBC_D_NOBIOS,
|
||||
ConsoleVariant.DMG or ConsoleVariant.DMG_B => biosAvailable ? SameBoySyncSettings_GB_USEBIOS : SameBoySyncSettings_GB_NOBIOS,
|
||||
_ => throw new Exception()
|
||||
};
|
||||
|
||||
public static DummyFrontend.ClassInitCallbackDelegate InitGBCore(CoreSetup setup, string romFilename, byte[] rom)
|
||||
=> (efp, _, coreComm) =>
|
||||
{
|
||||
|
@ -135,9 +167,10 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
{
|
||||
CoreNames.Gambatte => new Gameboy(coreComm, game, rom, GambatteSettings, GetGambatteSyncSettings(setup.Variant, setup.UseBIOS), deterministic: true),
|
||||
CoreNames.GbHawk => new GBHawk(coreComm, game, rom, new(), GetGBHawkSyncSettings(setup.Variant)),
|
||||
CoreNames.Sameboy => new Sameboy(coreComm, game, rom, SameBoySettings, GetSameBoySyncSettings(setup.Variant, setup.UseBIOS), deterministic: true),
|
||||
_ => throw new Exception()
|
||||
};
|
||||
var biosWaitDuration = setup.UseBIOS
|
||||
var biosWaitDuration = setup.UseBIOS || setup.CoreName is CoreNames.Sameboy
|
||||
? setup.Variant.IsColour()
|
||||
? 186
|
||||
: 334
|
||||
|
@ -153,6 +186,7 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
=> setup.CoreName switch
|
||||
{
|
||||
CoreNames.Gambatte => ImageUtils.PaletteSwap(img, setup.Variant.IsColour() ? UnVividGBCPaletteMap : UnVividGBPaletteMap),
|
||||
CoreNames.Sameboy => setup.Variant.IsColour() ? ImageUtils.PaletteSwap(img, UnVividGBCPaletteMap) : img,
|
||||
_ => img
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@ using BizHawk.Common.StringExtensions;
|
|||
using BizHawk.Emulation.Common;
|
||||
using BizHawk.Emulation.Cores;
|
||||
using BizHawk.Emulation.Cores.Nintendo.GBHawk;
|
||||
using BizHawk.Emulation.Cores.Nintendo.Sameboy;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
|
@ -34,34 +35,56 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
"m3_bgp_change_sprites on CGB_C in Gambatte", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_bgp_change_sprites on CGB_C in Gambatte (no BIOS)", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_bgp_change_sprites on CGB_C in GBHawk",
|
||||
"m3_bgp_change_sprites on CGB_C in SameBoy",
|
||||
"m3_bgp_change_sprites on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_bgp_change_sprites on CGB_D in GBHawk",
|
||||
"m3_bgp_change_sprites on DMG in Gambatte",
|
||||
"m3_bgp_change_sprites on DMG in Gambatte (no BIOS)",
|
||||
"m3_bgp_change_sprites on DMG in GBHawk",
|
||||
"m3_lcdc_bg_en_change on CGB_C in SameBoy",
|
||||
"m3_lcdc_bg_en_change on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_bg_en_change on DMG in Gambatte",
|
||||
"m3_lcdc_bg_en_change on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_bg_en_change on DMG in GBHawk",
|
||||
"m3_lcdc_bg_en_change on DMG in SameBoy",
|
||||
"m3_lcdc_bg_en_change on DMG in SameBoy (no BIOS)",
|
||||
"m3_lcdc_bg_en_change on DMG_B in Gambatte",
|
||||
"m3_lcdc_bg_en_change on DMG_B in Gambatte (no BIOS)",
|
||||
"m3_lcdc_bg_en_change on DMG_B in GBHawk",
|
||||
"m3_lcdc_bg_en_change on DMG_B in SameBoy",
|
||||
"m3_lcdc_bg_en_change on DMG_B in SameBoy (no BIOS)",
|
||||
"m3_lcdc_bg_en_change2 on CGB_C in SameBoy",
|
||||
"m3_lcdc_bg_en_change2 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_bg_map_change on CGB_C in GBHawk",
|
||||
"m3_lcdc_bg_map_change on DMG in GBHawk",
|
||||
"m3_lcdc_bg_map_change2 on CGB_C in GBHawk",
|
||||
"m3_lcdc_bg_map_change2 on CGB_C in SameBoy",
|
||||
"m3_lcdc_bg_map_change2 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_obj_en_change on CGB_C in SameBoy",
|
||||
"m3_lcdc_obj_en_change on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_obj_en_change on DMG in Gambatte",
|
||||
"m3_lcdc_obj_en_change on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_obj_en_change on DMG in GBHawk",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_C in Gambatte", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_lcdc_obj_en_change_variant on CGB_C in Gambatte (no BIOS)", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_lcdc_obj_en_change_variant on CGB_C in GBHawk",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_C in SameBoy",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_D in GBHawk",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_D in SameBoy",
|
||||
"m3_lcdc_obj_en_change_variant on CGB_D in SameBoy (no BIOS)",
|
||||
"m3_lcdc_obj_en_change_variant on DMG in Gambatte",
|
||||
"m3_lcdc_obj_en_change_variant on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_obj_en_change_variant on DMG in GBHawk",
|
||||
"m3_lcdc_obj_en_change_variant on DMG in SameBoy", // SameBoy emulates DMG-B, but there's no DMG-B-specific expect image for this test, so it should be the same on all DMG revisions?
|
||||
"m3_lcdc_obj_en_change_variant on DMG in SameBoy (no BIOS)", // SameBoy emulates DMG-B, but there's no DMG-B-specific expect image for this test, so it should be the same on all DMG revisions?
|
||||
"m3_lcdc_obj_size_change on CGB_C in GBHawk",
|
||||
"m3_lcdc_obj_size_change on DMG in Gambatte",
|
||||
"m3_lcdc_obj_size_change on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_obj_size_change on DMG in GBHawk",
|
||||
"m3_lcdc_obj_size_change_scx on CGB_C in GBHawk",
|
||||
"m3_lcdc_obj_size_change_scx on CGB_C in SameBoy",
|
||||
"m3_lcdc_obj_size_change_scx on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_obj_size_change_scx on DMG in Gambatte",
|
||||
"m3_lcdc_obj_size_change_scx on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_obj_size_change_scx on DMG in GBHawk",
|
||||
|
@ -75,35 +98,59 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
"m3_lcdc_tile_sel_win_change on CGB_C in Gambatte",
|
||||
"m3_lcdc_tile_sel_win_change on CGB_C in Gambatte (no BIOS)",
|
||||
"m3_lcdc_tile_sel_win_change on CGB_C in GBHawk",
|
||||
"m3_lcdc_tile_sel_win_change on CGB_C in SameBoy",
|
||||
"m3_lcdc_tile_sel_win_change on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_tile_sel_win_change on DMG in GBHawk",
|
||||
"m3_lcdc_tile_sel_win_change2 on CGB_C in Gambatte",
|
||||
"m3_lcdc_tile_sel_win_change2 on CGB_C in Gambatte (no BIOS)",
|
||||
"m3_lcdc_tile_sel_win_change2 on CGB_C in GBHawk",
|
||||
"m3_lcdc_win_en_change_multiple on CGB_C in GBHawk",
|
||||
"m3_lcdc_win_en_change_multiple on CGB_C in SameBoy",
|
||||
"m3_lcdc_win_en_change_multiple on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_lcdc_win_en_change_multiple on DMG in GBHawk",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG in Gambatte",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG in Gambatte (no BIOS)",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG in GBHawk",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG in SameBoy",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG in SameBoy (no BIOS)",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG_B in Gambatte",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG_B in Gambatte (no BIOS)",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG_B in GBHawk",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG_B in SameBoy",
|
||||
"m3_lcdc_win_en_change_multiple_wx on DMG_B in SameBoy (no BIOS)",
|
||||
"m3_lcdc_win_map_change on CGB_C in GBHawk",
|
||||
"m3_lcdc_win_map_change on DMG in GBHawk",
|
||||
"m3_lcdc_win_map_change2 on CGB_C in GBHawk",
|
||||
"m3_lcdc_win_map_change2 on CGB_C in SameBoy",
|
||||
"m3_lcdc_win_map_change2 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_obp0_change on CGB_C in Gambatte", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_obp0_change on CGB_C in Gambatte (no BIOS)", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_obp0_change on CGB_C in GBHawk",
|
||||
"m3_obp0_change on CGB_D in GBHawk",
|
||||
"m3_obp0_change on DMG in GBHawk",
|
||||
"m3_scx_high_5_bits on CGB_C in GBHawk",
|
||||
"m3_scx_high_5_bits on CGB_C in SameBoy",
|
||||
"m3_scx_high_5_bits on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_scx_high_5_bits on DMG in GBHawk",
|
||||
"m3_scx_high_5_bits on DMG in SameBoy", // SameBoy emulates DMG-B, but there's no DMG-B-specific expect image for this test, so it should be the same on all DMG revisions?
|
||||
"m3_scx_high_5_bits on DMG in SameBoy (no BIOS)", // SameBoy emulates DMG-B, but there's no DMG-B-specific expect image for this test, so it should be the same on all DMG revisions?
|
||||
"m3_scx_high_5_bits_change2 on CGB_C in GBHawk",
|
||||
"m3_scx_high_5_bits_change2 on CGB_C in SameBoy",
|
||||
"m3_scx_high_5_bits_change2 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_scx_low_3_bits on CGB_C in SameBoy",
|
||||
"m3_scx_low_3_bits on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_scy_change on CGB_C in GBHawk",
|
||||
"m3_scy_change on CGB_C in SameBoy",
|
||||
"m3_scy_change on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_scy_change on CGB_D in Gambatte", // Gambatte's GBC emulation matches CGB C variant
|
||||
"m3_scy_change on CGB_D in Gambatte (no BIOS)", // Gambatte's GBC emulation matches CGB C variant
|
||||
"m3_scy_change on CGB_D in GBHawk",
|
||||
"m3_scy_change on CGB_D in SameBoy",
|
||||
"m3_scy_change on CGB_D in SameBoy (no BIOS)",
|
||||
"m3_scy_change on DMG in GBHawk",
|
||||
"m3_scy_change2 on CGB_C in GBHawk",
|
||||
"m3_scy_change2 on CGB_C in SameBoy",
|
||||
"m3_scy_change2 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_window_timing on CGB_C in Gambatte", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_window_timing on CGB_C in Gambatte (no BIOS)", // Gambatte's GBC emulation matches CGB D variant
|
||||
"m3_window_timing on CGB_C in GBHawk",
|
||||
|
@ -112,6 +159,8 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
"m3_window_timing_wx_0 on CGB_C in Gambatte",
|
||||
"m3_window_timing_wx_0 on CGB_C in Gambatte (no BIOS)",
|
||||
"m3_window_timing_wx_0 on CGB_C in GBHawk",
|
||||
"m3_window_timing_wx_0 on CGB_C in SameBoy",
|
||||
"m3_window_timing_wx_0 on CGB_C in SameBoy (no BIOS)",
|
||||
"m3_window_timing_wx_0 on CGB_D in Gambatte",
|
||||
"m3_window_timing_wx_0 on CGB_D in Gambatte (no BIOS)",
|
||||
"m3_window_timing_wx_0 on CGB_D in GBHawk",
|
||||
|
@ -124,6 +173,8 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
"m3_wx_4_change_sprites on CGB_C in Gambatte",
|
||||
"m3_wx_4_change_sprites on CGB_C in Gambatte (no BIOS)",
|
||||
"m3_wx_4_change_sprites on CGB_C in GBHawk",
|
||||
"m3_wx_4_change_sprites on CGB_C in SameBoy", // don't think this is getting captured properly but it wouldn't pass anyway
|
||||
"m3_wx_4_change_sprites on CGB_C in SameBoy (no BIOS)", // don't think this is getting captured properly but it wouldn't pass anyway
|
||||
"m3_wx_4_change_sprites on DMG in Gambatte",
|
||||
"m3_wx_4_change_sprites on DMG in Gambatte (no BIOS)",
|
||||
"m3_wx_4_change_sprites on DMG in GBHawk",
|
||||
|
@ -215,11 +266,14 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
{
|
||||
// without this, exec hook triggers too early and I've decided I don't want to know why ¯\_(ツ)_/¯ --yoshi
|
||||
fe.FrameAdvanceBy(5);
|
||||
// if (testCase.Setup.CoreName is CoreNames.Sameboy) fe.FrameAdvance();
|
||||
if (testCase.TestName is "m3_lcdc_win_map_change2") fe.FrameAdvance(); // just happens to be an outlier
|
||||
}
|
||||
Func<long> getPC = fe.Core switch
|
||||
{
|
||||
GBHawk gbHawk => () => gbHawk.cpu.RegPC,
|
||||
Sameboy when testCase.Setup is { UseBIOS: false, Variant: ConsoleVariant.DMG or ConsoleVariant.DMG_B }
|
||||
=> () => (long) fe.CoreAsDebuggable!.GetCpuFlagsAndRegisters()["PC"].Value - 1, // something something pre- vs. post-increment
|
||||
_ => () => (long) fe.CoreAsDebuggable!.GetCpuFlagsAndRegisters()["PC"].Value
|
||||
};
|
||||
var domain = fe.CoreAsMemDomains!.SystemBus;
|
||||
|
@ -235,6 +289,7 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
address: null, // all addresses
|
||||
mask: null));
|
||||
Assert.IsTrue(fe.FrameAdvanceUntil(() => finished), "timed out waiting for exec hook");
|
||||
if (testCase.Setup.CoreName is CoreNames.Sameboy) fe.FrameAdvanceBy(7); // ¯\_(ツ)_/¯
|
||||
}
|
||||
var actualUnnormalised = DummyFrontend.RunAndScreenshot(
|
||||
InitGBCore(testCase.Setup, $"{testCase.TestName}.gb", ReflectionCache.EmbeddedResourceStream(testCase.RomEmbedPath).ReadAllBytes()),
|
||||
|
|
|
@ -41,7 +41,10 @@ namespace BizHawk.Tests.Testroms.GB
|
|||
|
||||
private static readonly IReadOnlyCollection<string> KnownFailures = new[]
|
||||
{
|
||||
"",
|
||||
"RTC3Test.basic on CGB_C in SameBoy",
|
||||
"RTC3Test.basic on CGB_C in SameBoy (no BIOS)",
|
||||
"RTC3Test.basic on DMG in SameBoy",
|
||||
"RTC3Test.basic on DMG in SameBoy (no BIOS)",
|
||||
};
|
||||
|
||||
private static readonly bool RomIsPresent = ReflectionCache.EmbeddedResourceList().Contains(ROM_EMBED_PATH);
|
||||
|
|
|
@ -72,4 +72,4 @@ $Env:BIZHAWKTEST_SAVE_IMAGES = "all"
|
|||
dotnet test -c Release -l "console;verbosity=detailed"
|
||||
```
|
||||
|
||||
Summary of `BIZHAWKTEST_RUN_KNOWN_FAILURES=1 ./run_tests_release.sh` should read 86 passed / 118 skipped / 0 failed.
|
||||
Summary of `BIZHAWKTEST_RUN_KNOWN_FAILURES=1 ./run_tests_release.sh` should read 166 passed / 174 skipped / 0 failed.
|
||||
|
|
Loading…
Reference in New Issue