movie importers - import the core header key on systems that we check for core when loading the movie

This commit is contained in:
adelikat 2019-11-26 20:10:34 -06:00
parent f0f8cd3171
commit 6eb9fa9b51
5 changed files with 22 additions and 3 deletions

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.IO; using System.IO;
using System.Text; using System.Text;
using BizHawk.Common.BufferExtensions; using BizHawk.Common.BufferExtensions;
using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Nintendo.NES; using BizHawk.Emulation.Cores.Nintendo.NES;
namespace BizHawk.Client.Common.movie.import namespace BizHawk.Client.Common.movie.import
@ -16,6 +17,9 @@ namespace BizHawk.Client.Common.movie.import
protected override void RunImport() protected override void RunImport()
{ {
var neshawkName = ((CoreAttribute)Attribute.GetCustomAttribute(typeof(NES), typeof(CoreAttribute))).CoreName;
Result.Movie.HeaderEntries[HeaderKeys.CORE] = neshawkName;
using var r = new BinaryReader(SourceFile.Open(FileMode.Open, FileAccess.Read)); using var r = new BinaryReader(SourceFile.Open(FileMode.Open, FileAccess.Read));
var signature = new string(r.ReadChars(4)); var signature = new string(r.ReadChars(4));
if (signature != "FCM\x1A") if (signature != "FCM\x1A")

View File

@ -2,6 +2,7 @@
using BizHawk.Common; using BizHawk.Common;
using BizHawk.Common.BufferExtensions; using BizHawk.Common.BufferExtensions;
using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Nintendo.NES; using BizHawk.Emulation.Cores.Nintendo.NES;
namespace BizHawk.Client.Common namespace BizHawk.Client.Common
@ -13,6 +14,8 @@ namespace BizHawk.Client.Common
{ {
protected override void RunImport() protected override void RunImport()
{ {
var neshawkName = ((CoreAttribute)Attribute.GetCustomAttribute(typeof(NES), typeof(CoreAttribute))).CoreName;
Result.Movie.HeaderEntries[HeaderKeys.CORE] = neshawkName;
var emulator = "FCEUX"; var emulator = "FCEUX";
var platform = "NES"; // TODO: FDS? var platform = "NES"; // TODO: FDS?

View File

@ -1,4 +1,5 @@
using System.IO; using System;
using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using BizHawk.Common; using BizHawk.Common;
@ -16,6 +17,9 @@ namespace BizHawk.Client.Common.movie.import
private LibsnesControllerDeck _deck; private LibsnesControllerDeck _deck;
protected override void RunImport() protected override void RunImport()
{ {
var bsnesName = ((CoreAttribute)Attribute.GetCustomAttribute(typeof(LibsnesCore), typeof(CoreAttribute))).CoreName;
Result.Movie.HeaderEntries[HeaderKeys.CORE] = bsnesName;
var hf = new HawkFile(SourceFile.FullName); var hf = new HawkFile(SourceFile.FullName);
// .LSMV movies are .zip files containing data files. // .LSMV movies are .zip files containing data files.

View File

@ -1,6 +1,8 @@
using System.IO; using System;
using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Nintendo.SNES; using BizHawk.Emulation.Cores.Nintendo.SNES;
namespace BizHawk.Client.Common.movie.import namespace BizHawk.Client.Common.movie.import
@ -14,6 +16,9 @@ namespace BizHawk.Client.Common.movie.import
protected override void RunImport() protected override void RunImport()
{ {
var bsnesName = ((CoreAttribute)Attribute.GetCustomAttribute(typeof(LibsnesCore), typeof(CoreAttribute))).CoreName;
Result.Movie.HeaderEntries[HeaderKeys.CORE] = bsnesName;
using var fs = SourceFile.Open(FileMode.Open, FileAccess.Read); using var fs = SourceFile.Open(FileMode.Open, FileAccess.Read);
using var r = new BinaryReader(fs); using var r = new BinaryReader(fs);

View File

@ -1,4 +1,5 @@
using System.IO; using System;
using System.IO;
using BizHawk.Emulation.Common; using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Nintendo.GBA; using BizHawk.Emulation.Cores.Nintendo.GBA;
using BizHawk.Emulation.Cores.Nintendo.GBHawk; using BizHawk.Emulation.Cores.Nintendo.GBHawk;
@ -111,6 +112,8 @@ namespace BizHawk.Client.Common.movie.import
if (isGBA) if (isGBA)
{ {
platform = "GBA"; platform = "GBA";
var mGBAName = ((CoreAttribute)Attribute.GetCustomAttribute(typeof(MGBAHawk), typeof(CoreAttribute))).CoreName;
Result.Movie.HeaderEntries[HeaderKeys.CORE] = mGBAName;
} }
if (isGBC) if (isGBC)