diff --git a/BizHawk.Client.Common/movie/tasproj/TasMovieMarker.cs b/BizHawk.Client.Common/movie/tasproj/TasMovieMarker.cs
index b6349fa379..92b668238a 100644
--- a/BizHawk.Client.Common/movie/tasproj/TasMovieMarker.cs
+++ b/BizHawk.Client.Common/movie/tasproj/TasMovieMarker.cs
@@ -82,47 +82,8 @@ namespace BizHawk.Client.Common
}
}
- ///
- /// Specialized Marker that represents the currently emulated frame
- /// Frame always points to Global.Emulator.Frame, and setting it isn't possible
- ///
- public class CurrentFrameMarker : TasMovieMarker
- {
- public CurrentFrameMarker()
- : base(0)
- {
-
- }
-
- public override int Frame
- {
- get { return Global.Emulator.Frame; }
- }
-
- public override string Message
- {
- get { return string.Empty; }
- set { return; }
- }
- }
-
public class TasMovieMarkerList : List
{
- private readonly CurrentFrameMarker _current;
- public TasMovieMarkerList()
- : base()
- {
- _current = new CurrentFrameMarker();
- }
-
- public CurrentFrameMarker CurrentFrame
- {
- get
- {
- return _current;
- }
- }
-
public override string ToString()
{
StringBuilder sb = new StringBuilder();
diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs
index d9c6755545..32236c97c8 100644
--- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs
+++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.IToolForm.cs
@@ -9,6 +9,8 @@ namespace BizHawk.Client.EmuHawk
public void UpdateValues()
{
+ SetUpColumns();
+
if (!IsHandleCreated || IsDisposed)
{
return;
@@ -35,7 +37,7 @@ namespace BizHawk.Client.EmuHawk
public bool AskSave()
{
- if (_tas.Changes)
+ if (_tas != null && _tas.Changes)
{
GlobalWin.Sound.StopSound();
var result = MessageBox.Show("Save Changes?", "Tastudio", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3);
diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
index 06043e6fb4..8a7d0da22e 100644
--- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
+++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
@@ -16,7 +16,6 @@ namespace BizHawk.Client.EmuHawk
private const string MarkerColumnName = "MarkerColumn";
private const string FrameColumnName = "FrameColumn";
- private readonly TasMovieMarkerList _markers = new TasMovieMarkerList();
private readonly List _tasClipboard = new List();
private int _defaultWidth;
@@ -29,20 +28,11 @@ namespace BizHawk.Client.EmuHawk
private bool _startMarkerDrag;
private bool _startFrameDrag;
- private Dictionary _map = null;
- private Dictionary ColumnNames
+ private Dictionary GenerateColumnNames()
{
- get
- {
- if (_map == null)
- {
- var lg = new Bk2LogEntryGenerator(string.Empty);
- lg.SetSource(Global.MovieSession.MovieControllerAdapter);
- _map = lg.Map();
- }
-
- return _map;
- }
+ var lg = Global.MovieSession.LogGeneratorInstance();
+ lg.SetSource(Global.MovieSession.MovieControllerAdapter);
+ return (lg as Bk2LogEntryGenerator).Map();
}
public TAStudio()
@@ -73,7 +63,7 @@ namespace BizHawk.Client.EmuHawk
private void TasView_QueryItemBkColor(int index, int column, ref Color color)
{
var record = _tas[index];
- if (_markers.CurrentFrame == index + 1)
+ if (Global.Emulator.Frame == index + 1)
{
color = Color.LightBlue;
}
@@ -96,7 +86,7 @@ namespace BizHawk.Client.EmuHawk
if (columnName == MarkerColumnName)
{
- text = _markers.CurrentFrame == index + 1 ? ">" : string.Empty;
+ text = Global.Emulator.Frame == index + 1 ? ">" : string.Empty;
}
else if (columnName == FrameColumnName)
{
@@ -233,7 +223,7 @@ namespace BizHawk.Client.EmuHawk
AddColumn(MarkerColumnName, string.Empty, 18);
AddColumn(FrameColumnName, "Frame#", 68);
- foreach (var kvp in ColumnNames)
+ foreach (var kvp in GenerateColumnNames())
{
AddColumn(kvp.Key, kvp.Value, 20 * kvp.Value.Length);
}