Skip to content

Commit b6934ed

Browse files
authored
Merge pull request #1034 from Asnivor/MDS
DiscSystem: MDS/MDF Support
2 parents e64d00b + 166edd7 commit b6934ed

File tree

7 files changed

+926
-13
lines changed

7 files changed

+926
-13
lines changed

BizHawk.Client.Common/RomLoader.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -470,7 +470,7 @@ public bool LoadRom(string path, CoreComm nextComm, bool forceAccurateCore = fal
470470
System = "PSX"
471471
};
472472
}
473-
else if (ext == ".iso" || ext == ".cue" || ext == ".ccd")
473+
else if (ext == ".iso" || ext == ".cue" || ext == ".ccd" || ext == ".mds")
474474
{
475475
if (file.IsArchive)
476476
{
@@ -494,7 +494,7 @@ public bool LoadRom(string path, CoreComm nextComm, bool forceAccurateCore = fal
494494
throw new InvalidOperationException("\r\n" + discMountJob.OUT_Log);
495495
}
496496

497-
var disc = discMountJob.OUT_Disc;
497+
var disc = discMountJob.OUT_Disc;
498498

499499
// -----------
500500
// TODO - use more sophisticated IDer

BizHawk.Client.DiscoHawk/MainDiscoForm.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ List<string> validateDrop(IDataObject ido)
111111
foreach (string str in files)
112112
{
113113
string ext = Path.GetExtension(str).ToUpper();
114-
if(!ext.In(new string[]{".CUE",".ISO",".CCD"}))
114+
if(!ext.In(new string[]{".CUE",".ISO",".CCD", ".MDS"}))
115115
{
116116
return new List<string>();
117117
}

BizHawk.Client.EmuHawk/FileLoader.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ private string[] KnownRomExtensions
5151
return new[]
5252
{
5353
".NES", ".FDS", ".UNF", ".SMS", ".GG", ".SG", ".GB", ".GBC", ".GBA", ".PCE", ".SGX", ".BIN", ".SMD", ".GEN", ".MD", ".SMC", ".SFC", ".A26", ".A78", ".LNX", ".COL", ".ROM", ".M3U", ".CUE", ".CCD", ".SGB", ".Z64", ".V64", ".N64", ".WS", ".WSC", ".XML", ".DSK", ".DO", ".PO", ".PSF", ".MINIPSF", ".NSF",
54-
".EXE", ".PRG", ".D64", "*G64", ".CRT", ".TAP", ".32X"
54+
".EXE", ".PRG", ".D64", "*G64", ".CRT", ".TAP", ".32X", ".MDS"
5555
};
5656
}
5757

58-
return new[] { ".NES", ".FDS", ".UNF", ".SMS", ".GG", ".SG", ".GB", ".GBC", ".GBA", ".PCE", ".SGX", ".BIN", ".SMD", ".GEN", ".MD", ".SMC", ".SFC", ".A26", ".A78", ".LNX", ".COL", ".ROM", ".M3U", ".CUE", ".CCD", ".SGB", ".Z64", ".V64", ".N64", ".WS", ".WSC", ".XML", ".DSK", ".DO", ".PO", ".PSF", ".MINIPSF", ".NSF", ".32X" };
58+
return new[] { ".NES", ".FDS", ".UNF", ".SMS", ".GG", ".SG", ".GB", ".GBC", ".GBA", ".PCE", ".SGX", ".BIN", ".SMD", ".GEN", ".MD", ".SMC", ".SFC", ".A26", ".A78", ".LNX", ".COL", ".ROM", ".M3U", ".CUE", ".CCD", ".SGB", ".Z64", ".V64", ".N64", ".WS", ".WSC", ".XML", ".DSK", ".DO", ".PO", ".PSF", ".MINIPSF", ".NSF", ".32X", ".MDS" };
5959
}
6060
}
6161

BizHawk.Client.EmuHawk/MainForm.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2077,13 +2077,13 @@ public static string RomFilter
20772077
if (VersionInfo.DeveloperBuild)
20782078
{
20792079
return FormatFilter(
2080-
"Rom Files", "*.nes;*.fds;*.unf;*.sms;*.gg;*.sg;*.pce;*.sgx;*.bin;*.smd;*.rom;*.a26;*.a78;*.lnx;*.m3u;*.cue;*.ccd;*.exe;*.gb;*.gbc;*.gba;*.gen;*.md;*.32x;*.col;*.int;*.smc;*.sfc;*.prg;*.d64;*.g64;*.crt;*.tap;*.sgb;*.xml;*.z64;*.v64;*.n64;*.ws;*.wsc;*.dsk;*.do;*.po;*.vb;*.ngp;*.ngc;*.psf;*.minipsf;*.nsf;%ARCH%",
2080+
"Rom Files", "*.nes;*.fds;*.unf;*.sms;*.gg;*.sg;*.pce;*.sgx;*.bin;*.smd;*.rom;*.a26;*.a78;*.lnx;*.m3u;*.cue;*.ccd;*.mds;*.exe;*.gb;*.gbc;*.gba;*.gen;*.md;*.32x;*.col;*.int;*.smc;*.sfc;*.prg;*.d64;*.g64;*.crt;*.tap;*.sgb;*.xml;*.z64;*.v64;*.n64;*.ws;*.wsc;*.dsk;*.do;*.po;*.vb;*.ngp;*.ngc;*.psf;*.minipsf;*.nsf;%ARCH%",
20812081
"Music Files", "*.psf;*.minipsf;*.sid;*.nsf",
2082-
"Disc Images", "*.cue;*.ccd;*.m3u",
2082+
"Disc Images", "*.cue;*.ccd;*.mds;*.m3u",
20832083
"NES", "*.nes;*.fds;*.unf;*.nsf;%ARCH%",
20842084
"Super NES", "*.smc;*.sfc;*.xml;%ARCH%",
20852085
"Master System", "*.sms;*.gg;*.sg;%ARCH%",
2086-
"PC Engine", "*.pce;*.sgx;*.cue;*.ccd;%ARCH%",
2086+
"PC Engine", "*.pce;*.sgx;*.cue;*.ccd;*.mds;%ARCH%",
20872087
"TI-83", "*.rom;%ARCH%",
20882088
"Archive Files", "%ARCH%",
20892089
"Savestate", "*.state",
@@ -2095,7 +2095,7 @@ public static string RomFilter
20952095
"Gameboy Advance", "*.gba;%ARCH%",
20962096
"Colecovision", "*.col;%ARCH%",
20972097
"Intellivision", "*.int;*.bin;*.rom;%ARCH%",
2098-
"PlayStation", "*.cue;*.ccd;*.m3u",
2098+
"PlayStation", "*.cue;*.ccd;*.mds;*.m3u",
20992099
"PSX Executables (experimental)", "*.exe",
21002100
"PSF Playstation Sound File", "*.psf;*.minipsf",
21012101
"Commodore 64", "*.prg; *.d64, *.g64; *.crt; *.tap;%ARCH%",
@@ -2109,17 +2109,17 @@ public static string RomFilter
21092109
}
21102110

21112111
return FormatFilter(
2112-
"Rom Files", "*.nes;*.fds;*.unf;*.sms;*.gg;*.sg;*.gb;*.gbc;*.gba;*.pce;*.sgx;*.bin;*.smd;*.gen;*.md;*.32x;*.smc;*.sfc;*.a26;*.a78;*.lnx;*.col;*.int;*.rom;*.m3u;*.cue;*.ccd;*.sgb;*.z64;*.v64;*.n64;*.ws;*.wsc;*.xml;*.dsk;*.do;*.po;*.psf;*.ngp;*.ngc;*.prg;*.d64;*.g64;*.minipsf;*.nsf;%ARCH%",
2113-
"Disc Images", "*.cue;*.ccd;*.m3u",
2112+
"Rom Files", "*.nes;*.fds;*.unf;*.sms;*.gg;*.sg;*.gb;*.gbc;*.gba;*.pce;*.sgx;*.bin;*.smd;*.gen;*.md;*.32x;*.smc;*.sfc;*.a26;*.a78;*.lnx;*.col;*.int;*.rom;*.m3u;*.cue;*.ccd;*.mds;*.sgb;*.z64;*.v64;*.n64;*.ws;*.wsc;*.xml;*.dsk;*.do;*.po;*.psf;*.ngp;*.ngc;*.prg;*.d64;*.g64;*.minipsf;*.nsf;%ARCH%",
2113+
"Disc Images", "*.cue;*.ccd;*.mds;*.m3u",
21142114
"NES", "*.nes;*.fds;*.unf;*.nsf;%ARCH%",
21152115
"Super NES", "*.smc;*.sfc;*.xml;%ARCH%",
2116-
"PlayStation", "*.cue;*.ccd;*.m3u",
2116+
"PlayStation", "*.cue;*.ccd;*.mds;*.m3u",
21172117
"PSF Playstation Sound File", "*.psf;*.minipsf",
21182118
"Nintendo 64", "*.z64;*.v64;*.n64",
21192119
"Gameboy", "*.gb;*.gbc;*.sgb;%ARCH%",
21202120
"Gameboy Advance", "*.gba;%ARCH%",
21212121
"Master System", "*.sms;*.gg;*.sg;%ARCH%",
2122-
"PC Engine", "*.pce;*.sgx;*.cue;*.ccd;%ARCH%",
2122+
"PC Engine", "*.pce;*.sgx;*.cue;*.ccd;*.mds;%ARCH%",
21232123
"Atari 2600", "*.a26;%ARCH%",
21242124
"Atari 7800", "*.a78;%ARCH%",
21252125
"Atari Lynx", "*.lnx;%ARCH%",

BizHawk.Emulation.DiscSystem/BizHawk.Emulation.DiscSystem.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@
7070
<Compile Include="DiscFormats\Blobs\Blob_ZeroPadAdapter.cs" />
7171
<Compile Include="DiscFormats\Blobs\IBlob.cs" />
7272
<Compile Include="DiscFormats\Blobs\RiffMaster.cs" />
73+
<Compile Include="DiscFormats\MDS_Format.cs" />
7374
<Compile Include="DiscFormats\CCD_format.cs" />
7475
<Compile Include="DiscFormats\CUE\CueFileResolver.cs" />
7576
<Compile Include="DiscFormats\CUE\CUE_Compile.cs" />

0 commit comments

Comments
 (0)