These changes are for TAStudio upgrades. If I've broken other stuff please yell at me.

1. Hooked up Fast Forward, Fast Forward to End
2. Made a placeholder for Turbo Fast Forward.
3. Fixed rewind to not stomp on the previous frame with new input.
4. Fixed rewind to stop at the beginning of the movie instead of freaking out.
5. TAStudio now shows data from the most recent frame.
6. CommitFrame is called even if not recording so played back frames also show up in TAStudio.
7. Play mode only stops at the end of the movie if you tell it to. Your emulator normally continues to play with no input after the end of the movie.
8. TAStudio is now updated after a rewind (even though the rewind doesn't play a new frame).
9. Split the tools update into before and after updates.
10. Going into read-only mode adjusts the movie mode.
11. Implemented New, Open, Save, and Save As for TAStudio.
12. Fixed an issue where frames past the end of the log would default to the input from the last frame of the log.
13. Fixed a problem where you couldn't rewind to frame 0.
14. Fixed a scrolling issue in the TAStudio list view.
15. Fixed an issue with the TAStudio virtual NES controller not matching up with the log.
16. Fixed an issue where the NES reset button would get held in when rewinding.
17. Added/Modified a couple of button graphics.
This commit is contained in:
phillip.grimsrud 2012-05-28 00:44:27 +00:00
parent 65060e47a7
commit fc0ec832ae
16 changed files with 636 additions and 485 deletions

View File

@ -671,6 +671,7 @@
</ItemGroup>
<ItemGroup>
<Content Include="config\ControllerImages\NESController.png" />
<None Include="Resources\TurboFastForward.png" />
<None Include="images\cheat.png" />
<None Include="images\Cheats.ico" />
<None Include="images\Debugger.png" />

View File

@ -70,13 +70,13 @@ namespace BizHawk.MultiClient
return false;
}
private void PlayMovie()
public void PlayMovie()
{
PlayMovie p = new PlayMovie();
DialogResult d = p.ShowDialog();
}
private void RecordMovie()
public void RecordMovie()
{
RecordMovie r = new RecordMovie();
r.ShowDialog();

View File

@ -30,6 +30,9 @@ namespace BizHawk.MultiClient
public bool PressFrameAdvance = false;
public bool PressRewind = false;
public bool FastForward = false;
public bool TurboFastForward = false;
public bool StopOnEnd = false;
//avi/wav state
IVideoWriter CurrAviWriter = null;
@ -357,7 +360,7 @@ namespace BizHawk.MultiClient
void SyncThrottle()
{
bool fastforward = Global.ClientControls["Fast Forward"];
bool fastforward = Global.ClientControls["Fast Forward"] || FastForward;
Global.ForceNoVsync = unthrottled || fastforward;
throttle.SetCoreFps(Global.Emulator.CoreOutputComm.VsyncRate);
@ -1774,12 +1777,22 @@ namespace BizHawk.MultiClient
runFrame = true;
}
if (Global.Config.RewindEnabled && Global.ClientControls["Rewind"] || PressRewind)
MOVIEMODE movieMode = Global.MovieSession.Movie.Mode;
if (Global.Config.RewindEnabled && (Global.ClientControls["Rewind"] || PressRewind))
{
Rewind(1);
suppressCaptureRewind = true;
runFrame = true;
PressRewind = false;
if (0 == RewindBuf.Count)
{
runFrame = false;
}
else
{
runFrame = true;
}
//Save this here and restore it later, we don't want to capture input when rewinding, even in record mode
movieMode = Global.MovieSession.Movie.Mode;
Global.MovieSession.Movie.Mode = MOVIEMODE.PLAY;
}
bool genSound = false;
@ -1788,7 +1801,7 @@ namespace BizHawk.MultiClient
//client input-related duties
Global.OSD.ClearGUIText();
UpdateTools();
UpdateToolsBefore();
#if WINDOWS
LuaConsole1.ResumeScripts(true);
#endif
@ -1813,7 +1826,6 @@ namespace BizHawk.MultiClient
Global.OSD.FPS = fps_string;
}
if (!suppressCaptureRewind && Global.Config.RewindEnabled) CaptureRewindState();
if (!runloop_frameadvance) genSound = true;
else if (!Global.Config.MuteFrameAdvance)
@ -1836,12 +1848,12 @@ namespace BizHawk.MultiClient
{
session.LatchInputFromPlayer(Global.MovieInputSourceAdapter);
}
//the movie session makes sure that the correct input has been read and merged to its MovieControllerAdapter;
//this has been wired to Global.MovieOutputHardpoint in RewireInputChain
session.Movie.CommitFrame(Global.Emulator.Frame, Global.MovieOutputHardpoint);
}
//the movie session makes sure that the correct input has been read and merged to its MovieControllerAdapter;
//this has been wired to Global.MovieOutputHardpoint in RewireInputChain
session.Movie.CommitFrame(Global.Emulator.Frame, Global.MovieOutputHardpoint);
if (Global.MovieSession.Movie.Mode == MOVIEMODE.INACTIVE || Global.MovieSession.Movie.Mode == MOVIEMODE.FINISHED)
{
session.LatchInputFromPlayer(Global.MovieInputSourceAdapter);
@ -1849,8 +1861,9 @@ namespace BizHawk.MultiClient
if (Global.MovieSession.Movie.Mode == MOVIEMODE.PLAY)
{
if (Global.MovieSession.Movie.Length() == Global.Emulator.Frame)
if (Global.MovieSession.Movie.Length() == Global.Emulator.Frame && true == StopOnEnd)
{
StopOnEnd = false;
Global.MovieSession.Movie.SetMovieFinished();
}
}
@ -1898,7 +1911,15 @@ namespace BizHawk.MultiClient
}
PressFrameAdvance = false;
}
UpdateToolsAfter();
}
if (Global.ClientControls["Rewind"] || PressRewind)
{
UpdateToolsAfter();
Global.MovieSession.Movie.Mode = movieMode;
PressRewind = false;
}
if (genSound)
{
@ -1913,9 +1934,9 @@ namespace BizHawk.MultiClient
}
/// <summary>
/// Update all tools that are frame dependent like Ram Search
/// Update all tools that are frame dependent like Ram Search before processing
/// </summary>
public void UpdateTools()
public void UpdateToolsBefore()
{
RamWatch1.UpdateValues();
RamSearch1.UpdateValues();
@ -1924,10 +1945,19 @@ namespace BizHawk.MultiClient
NESPPU1.UpdateValues();
PCEBGViewer1.UpdateValues();
PCEBGViewer1.Generate(); // TODO: just a makeshift. PCE core should provide callbacks.
TAStudio1.UpdateValues();
GBDebugger.UpdateValues();
}
/// <summary>
/// Update all tools that are frame dependent like Ram Search after processing
/// </summary>
public void UpdateToolsAfter()
{
//The other tool updates are earlier, TAStudio needs to be later so it can display the latest
//frame of execution in its list view.
TAStudio1.UpdateValues();
}
private unsafe Image MakeScreenshotImage()
{
var video = Global.Emulator.VideoProvider;
@ -2078,8 +2108,9 @@ namespace BizHawk.MultiClient
}
reader.Close();
UpdateTools();
Global.OSD.AddMessage("Loaded state: " + name);
UpdateToolsBefore();
UpdateToolsAfter();
Global.OSD.AddMessage("Loaded state: " + name);
}
else
Global.OSD.AddMessage("Loadstate error!");
@ -2563,10 +2594,16 @@ namespace BizHawk.MultiClient
public void SetReadOnly(bool read_only)
{
ReadOnly = read_only;
if (ReadOnly)
Global.OSD.AddMessage("Movie read-only mode");
else
Global.OSD.AddMessage("Movie read+write mode");
if (ReadOnly)
{
Global.MovieSession.Movie.Mode = MOVIEMODE.PLAY;
Global.OSD.AddMessage("Movie read-only mode");
}
else
{
Global.MovieSession.Movie.Mode = MOVIEMODE.RECORD;
Global.OSD.AddMessage("Movie read+write mode");
}
}
public void LoadRamWatch()

View File

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.261
// Runtime Version:4.0.30319.1
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@ -647,6 +647,13 @@ namespace BizHawk.MultiClient.Properties {
}
}
internal static System.Drawing.Bitmap TurboFastForward {
get {
object obj = ResourceManager.GetObject("TurboFastForward", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap undo {
get {
object obj = ResourceManager.GetObject("undo", resourceCulture);

View File

@ -816,4 +816,7 @@
<data name="atari_controller" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\images\atari_controller.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>
<data name="TurboFastForward" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TurboFastForward.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@ -119,18 +119,11 @@ namespace BizHawk.MultiClient
private void button1_Click(object sender, EventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.InitialDirectory = PathManager.MakeAbsolutePath(Global.Config.MoviesPath, "");
sfd.DefaultExt = "." + Global.Config.MovieExtension;
sfd.FileName = RecordBox.Text;
sfd.Filter = "Generic Movie Files (*." + Global.Config.MovieExtension + ")|*." + Global.Config.MovieExtension + "|" + Global.MainForm.GetMovieExtName() + "|All Files (*.*)|*.*";
string fileName = Movie.SaveRecordingAs();
Global.Sound.StopSound();
var result = sfd.ShowDialog();
Global.Sound.StartSound();
if (result == DialogResult.OK)
if ("" != fileName)
{
RecordBox.Text = sfd.FileName;
RecordBox.Text = fileName;
}
}

View File

@ -24,6 +24,20 @@ namespace BizHawk.MultiClient
Global.OSD.AddMessage("Rewind Disabled: State too large.");
Global.OSD.AddMessage("See 'Arcade Card Rewind Hack' in Emulation->PC Engine options.");
}
var ms = new MemoryStream();
var writer = new BinaryWriter(ms);
for (int i = 0; i < LastState.Length; i++)
{
if (i == 254 || i == LastState.Length - 1)
{
writer.Write((byte)(i + 1));
writer.Write((ushort) 0);
writer.Write(LastState, 0, i + 1);
}
}
RewindBuf.Push(ms);
return;
}
@ -162,7 +176,7 @@ namespace BizHawk.MultiClient
{
for (int i = 0; i < frames; i++)
{
if (RewindBuf.Count == 0)
if (RewindBuf.Count == 0 || 0 == Global.MovieSession.Movie.Length())
return;
if (LastState.Length < 0x10000)
Rewind64K();
@ -177,5 +191,10 @@ namespace BizHawk.MultiClient
RewindImpossible = false;
LastState = null;
}
public int RewindBufferCount()
{
return RewindBuf.Count;
}
}
}

View File

@ -162,7 +162,7 @@ namespace BizHawk.MultiClient
public void SetCoreFps(double desired_fps)
{
core_desiredfps = (ulong)(65536 * desired_fps);
core_desiredfps = (ulong)(65536 * desired_fps);
int target_pct = pct;
pct = -1;
SetSpeedPercent(target_pct);
@ -177,7 +177,7 @@ namespace BizHawk.MultiClient
float fraction = percent / 100.0f;
desiredfps = (ulong)(core_desiredfps * fraction);
//Console.WriteLine("throttle set desiredfps " + desiredfps);
desiredspf = 65536.0f / desiredfps;
desiredspf = 65536.0f / desiredfps;
AutoFrameSkip_IgnorePreviousDelay();
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 546 B

View File

@ -401,7 +401,7 @@ namespace BizHawk.MultiClient
if (ControlType == "NES Controller")
{
if (mnemonic.Length < 2) return;
Force("Reset", mnemonic[1] != '.' && mnemonic[1] != '0' && mnemonic[1] != 'l');
Force("Reset", mnemonic[1] != '.' && mnemonic[1] != 'r' && mnemonic[1] != 'l');
}
if (ControlType == "SMS Controller" || ControlType == "TI83 Controller")
{

View File

@ -18,7 +18,7 @@ namespace BizHawk.MultiClient
public bool IsText { get; private set; }
public string Filename { get; private set; }
public MOVIEMODE Mode { get; private set; }
public MOVIEMODE Mode { get; set; }
public int Rerecords { get; private set; }
private int Frames;
public bool RerecordCounting { get; set; }
@ -69,13 +69,18 @@ namespace BizHawk.MultiClient
return Header.GetHeaderLine(MovieHeader.GAMENAME);
}
public int Length()
{
if (Loaded)
return Log.Length();
else
return Frames;
}
public int Length()
{
if (Loaded)
return Log.Length();
else
return Frames;
}
public void UpdateFileName(string filename)
{
this.Filename = filename;
}
public void StopMovie()
{
@ -105,6 +110,26 @@ namespace BizHawk.MultiClient
if(truncate) Log.Clear();
}
public static string SaveRecordingAs()
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.InitialDirectory = PathManager.MakeAbsolutePath(Global.Config.MoviesPath, "");
sfd.DefaultExt = "." + Global.Config.MovieExtension;
//sfd.FileName = RecordBox.Text;
sfd.FileName = Global.MovieSession.Movie.Filename;
sfd.Filter = "Generic Movie Files (*." + Global.Config.MovieExtension + ")|*." + Global.Config.MovieExtension + "|" + Global.MainForm.GetMovieExtName() + "|All Files (*.*)|*.*";
Global.Sound.StopSound();
var result = sfd.ShowDialog();
Global.Sound.StartSound();
if (result == DialogResult.OK)
{
return sfd.FileName;
}
return "";
}
public void StartPlayback()
{
ClearSaveRAM();

View File

@ -46,8 +46,7 @@ namespace BizHawk.MultiClient
public void LatchInputFromLog()
{
string loggedFrame = Movie.GetInputFrame(Global.Emulator.Frame);
if (loggedFrame != "")
MovieControllerAdapter.SetControllersAsMnemonic(loggedFrame);
MovieControllerAdapter.SetControllersAsMnemonic(loggedFrame);
}
}

View File

@ -28,73 +28,75 @@
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TAStudio));
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.newProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.openProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveProjectAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.recentToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.nToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.clearToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.importTASFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.insertFrameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
this.clearVirtualPadsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.updatePadsOnMovePlaybackToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
this.restoreWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStrip1 = new ToolStripEx();
this.RewindToBeginning = new System.Windows.Forms.ToolStripButton();
this.RewindButton = new System.Windows.Forms.ToolStripButton();
this.PauseButton = new System.Windows.Forms.ToolStripButton();
this.FrameAdvanceButton = new System.Windows.Forms.ToolStripButton();
this.FastFowardToEnd = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
this.StopButton = new System.Windows.Forms.ToolStripButton();
this.ReadOnlyCheckBox = new System.Windows.Forms.CheckBox();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.insertFrameToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
this.selectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ControllerBox = new System.Windows.Forms.GroupBox();
this.TASView = new BizHawk.VirtualListView();
this.Frame = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.Log = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.ControllersContext = new System.Windows.Forms.ContextMenuStrip(this.components);
this.clearToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.toolStrip1.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
this.ControllersContext.SuspendLayout();
this.SuspendLayout();
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TAStudio));
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.newProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.openProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveProjectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveProjectAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.recentToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.nToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.clearToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.importTASFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.insertFrameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
this.clearVirtualPadsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.updatePadsOnMovePlaybackToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
this.restoreWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStrip1 = new ToolStripEx();
this.RewindToBeginning = new System.Windows.Forms.ToolStripButton();
this.RewindButton = new System.Windows.Forms.ToolStripButton();
this.PauseButton = new System.Windows.Forms.ToolStripButton();
this.FrameAdvanceButton = new System.Windows.Forms.ToolStripButton();
this.FastForward = new System.Windows.Forms.ToolStripButton();
this.TurboFastForward = new System.Windows.Forms.ToolStripButton();
this.FastFowardToEnd = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
this.StopButton = new System.Windows.Forms.ToolStripButton();
this.ReadOnlyCheckBox = new System.Windows.Forms.CheckBox();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.insertFrameToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
this.selectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ControllerBox = new System.Windows.Forms.GroupBox();
this.ControllersContext = new System.Windows.Forms.ContextMenuStrip(this.components);
this.clearToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.TASView = new BizHawk.VirtualListView();
this.Frame = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.Log = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.menuStrip1.SuspendLayout();
this.toolStrip1.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
this.ControllersContext.SuspendLayout();
this.SuspendLayout();
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileToolStripMenuItem,
this.editToolStripMenuItem,
this.settingsToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(686, 24);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// fileToolStripMenuItem
//
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(686, 24);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// fileToolStripMenuItem
//
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.newProjectToolStripMenuItem,
this.openProjectToolStripMenuItem,
this.saveProjectToolStripMenuItem,
@ -104,376 +106,400 @@
this.importTASFileToolStripMenuItem,
this.toolStripSeparator2,
this.exitToolStripMenuItem});
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
this.fileToolStripMenuItem.Text = "&File";
//
// newProjectToolStripMenuItem
//
this.newProjectToolStripMenuItem.Name = "newProjectToolStripMenuItem";
this.newProjectToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
this.newProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.newProjectToolStripMenuItem.Text = "New Project";
this.newProjectToolStripMenuItem.Click += new System.EventHandler(this.newProjectToolStripMenuItem_Click);
//
// openProjectToolStripMenuItem
//
this.openProjectToolStripMenuItem.Name = "openProjectToolStripMenuItem";
this.openProjectToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
this.openProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.openProjectToolStripMenuItem.Text = "&Open Project";
this.openProjectToolStripMenuItem.Click += new System.EventHandler(this.openProjectToolStripMenuItem_Click);
//
// saveProjectToolStripMenuItem
//
this.saveProjectToolStripMenuItem.Name = "saveProjectToolStripMenuItem";
this.saveProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.saveProjectToolStripMenuItem.Text = "&Save Project";
this.saveProjectToolStripMenuItem.Click += new System.EventHandler(this.saveProjectToolStripMenuItem_Click);
//
// saveProjectAsToolStripMenuItem
//
this.saveProjectAsToolStripMenuItem.Name = "saveProjectAsToolStripMenuItem";
this.saveProjectAsToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.saveProjectAsToolStripMenuItem.Text = "Save Project As";
this.saveProjectAsToolStripMenuItem.Click += new System.EventHandler(this.saveProjectAsToolStripMenuItem_Click);
//
// recentToolStripMenuItem
//
this.recentToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
this.fileToolStripMenuItem.Text = "&File";
//
// newProjectToolStripMenuItem
//
this.newProjectToolStripMenuItem.Name = "newProjectToolStripMenuItem";
this.newProjectToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
this.newProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.newProjectToolStripMenuItem.Text = "New Project";
this.newProjectToolStripMenuItem.Click += new System.EventHandler(this.newProjectToolStripMenuItem_Click);
//
// openProjectToolStripMenuItem
//
this.openProjectToolStripMenuItem.Name = "openProjectToolStripMenuItem";
this.openProjectToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
this.openProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.openProjectToolStripMenuItem.Text = "&Open Project";
this.openProjectToolStripMenuItem.Click += new System.EventHandler(this.openProjectToolStripMenuItem_Click);
//
// saveProjectToolStripMenuItem
//
this.saveProjectToolStripMenuItem.Name = "saveProjectToolStripMenuItem";
this.saveProjectToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.saveProjectToolStripMenuItem.Text = "&Save Project";
this.saveProjectToolStripMenuItem.Click += new System.EventHandler(this.saveProjectToolStripMenuItem_Click);
//
// saveProjectAsToolStripMenuItem
//
this.saveProjectAsToolStripMenuItem.Name = "saveProjectAsToolStripMenuItem";
this.saveProjectAsToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.saveProjectAsToolStripMenuItem.Text = "Save Project As";
this.saveProjectAsToolStripMenuItem.Click += new System.EventHandler(this.saveProjectAsToolStripMenuItem_Click);
//
// recentToolStripMenuItem
//
this.recentToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.nToolStripMenuItem,
this.toolStripSeparator3,
this.clearToolStripMenuItem});
this.recentToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.Recent;
this.recentToolStripMenuItem.Name = "recentToolStripMenuItem";
this.recentToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.recentToolStripMenuItem.Text = "Recent";
//
// nToolStripMenuItem
//
this.nToolStripMenuItem.Name = "nToolStripMenuItem";
this.nToolStripMenuItem.Size = new System.Drawing.Size(103, 22);
this.nToolStripMenuItem.Text = "None";
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(100, 6);
//
// clearToolStripMenuItem
//
this.clearToolStripMenuItem.Name = "clearToolStripMenuItem";
this.clearToolStripMenuItem.Size = new System.Drawing.Size(103, 22);
this.clearToolStripMenuItem.Text = "Clear";
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(183, 6);
//
// importTASFileToolStripMenuItem
//
this.importTASFileToolStripMenuItem.Name = "importTASFileToolStripMenuItem";
this.importTASFileToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.importTASFileToolStripMenuItem.Text = "Import TAS file";
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(183, 6);
//
// exitToolStripMenuItem
//
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.exitToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.F4)));
this.exitToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.exitToolStripMenuItem.Text = "E&xit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
//
// editToolStripMenuItem
//
this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.recentToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.Recent;
this.recentToolStripMenuItem.Name = "recentToolStripMenuItem";
this.recentToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.recentToolStripMenuItem.Text = "Recent";
//
// nToolStripMenuItem
//
this.nToolStripMenuItem.Name = "nToolStripMenuItem";
this.nToolStripMenuItem.Size = new System.Drawing.Size(103, 22);
this.nToolStripMenuItem.Text = "None";
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(100, 6);
//
// clearToolStripMenuItem
//
this.clearToolStripMenuItem.Name = "clearToolStripMenuItem";
this.clearToolStripMenuItem.Size = new System.Drawing.Size(103, 22);
this.clearToolStripMenuItem.Text = "Clear";
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(183, 6);
//
// importTASFileToolStripMenuItem
//
this.importTASFileToolStripMenuItem.Name = "importTASFileToolStripMenuItem";
this.importTASFileToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.importTASFileToolStripMenuItem.Text = "Import TAS file";
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(183, 6);
//
// exitToolStripMenuItem
//
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.exitToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.F4)));
this.exitToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.exitToolStripMenuItem.Text = "E&xit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
//
// editToolStripMenuItem
//
this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.insertFrameToolStripMenuItem,
this.toolStripSeparator7,
this.clearVirtualPadsToolStripMenuItem});
this.editToolStripMenuItem.Name = "editToolStripMenuItem";
this.editToolStripMenuItem.Size = new System.Drawing.Size(39, 20);
this.editToolStripMenuItem.Text = "&Edit";
this.editToolStripMenuItem.DropDownOpened += new System.EventHandler(this.editToolStripMenuItem_DropDownOpened);
//
// insertFrameToolStripMenuItem
//
this.insertFrameToolStripMenuItem.Name = "insertFrameToolStripMenuItem";
this.insertFrameToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.A)));
this.insertFrameToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.insertFrameToolStripMenuItem.Text = "Insert Frame";
this.insertFrameToolStripMenuItem.Click += new System.EventHandler(this.insertFrameToolStripMenuItem_Click);
//
// toolStripSeparator7
//
this.toolStripSeparator7.Name = "toolStripSeparator7";
this.toolStripSeparator7.Size = new System.Drawing.Size(188, 6);
//
// clearVirtualPadsToolStripMenuItem
//
this.clearVirtualPadsToolStripMenuItem.Name = "clearVirtualPadsToolStripMenuItem";
this.clearVirtualPadsToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.clearVirtualPadsToolStripMenuItem.Text = "&Clear Controller Holds";
this.clearVirtualPadsToolStripMenuItem.Click += new System.EventHandler(this.clearVirtualPadsToolStripMenuItem_Click);
//
// settingsToolStripMenuItem
//
this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.editToolStripMenuItem.Name = "editToolStripMenuItem";
this.editToolStripMenuItem.Size = new System.Drawing.Size(39, 20);
this.editToolStripMenuItem.Text = "&Edit";
this.editToolStripMenuItem.DropDownOpened += new System.EventHandler(this.editToolStripMenuItem_DropDownOpened);
//
// insertFrameToolStripMenuItem
//
this.insertFrameToolStripMenuItem.Name = "insertFrameToolStripMenuItem";
this.insertFrameToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.A)));
this.insertFrameToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.insertFrameToolStripMenuItem.Text = "Insert Frame";
this.insertFrameToolStripMenuItem.Click += new System.EventHandler(this.insertFrameToolStripMenuItem_Click);
//
// toolStripSeparator7
//
this.toolStripSeparator7.Name = "toolStripSeparator7";
this.toolStripSeparator7.Size = new System.Drawing.Size(188, 6);
//
// clearVirtualPadsToolStripMenuItem
//
this.clearVirtualPadsToolStripMenuItem.Name = "clearVirtualPadsToolStripMenuItem";
this.clearVirtualPadsToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.clearVirtualPadsToolStripMenuItem.Text = "&Clear Controller Holds";
this.clearVirtualPadsToolStripMenuItem.Click += new System.EventHandler(this.clearVirtualPadsToolStripMenuItem_Click);
//
// settingsToolStripMenuItem
//
this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.saveWindowPositionToolStripMenuItem,
this.autoloadToolStripMenuItem,
this.updatePadsOnMovePlaybackToolStripMenuItem,
this.toolStripSeparator4,
this.restoreWindowToolStripMenuItem});
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
this.settingsToolStripMenuItem.Text = "&Settings";
this.settingsToolStripMenuItem.DropDownOpened += new System.EventHandler(this.settingsToolStripMenuItem_DropDownOpened);
//
// saveWindowPositionToolStripMenuItem
//
this.saveWindowPositionToolStripMenuItem.Name = "saveWindowPositionToolStripMenuItem";
this.saveWindowPositionToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.saveWindowPositionToolStripMenuItem.Text = "Save Window Position";
this.saveWindowPositionToolStripMenuItem.Click += new System.EventHandler(this.saveWindowPositionToolStripMenuItem_Click);
//
// autoloadToolStripMenuItem
//
this.autoloadToolStripMenuItem.Name = "autoloadToolStripMenuItem";
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.autoloadToolStripMenuItem.Text = "Autoload";
this.autoloadToolStripMenuItem.Click += new System.EventHandler(this.autoloadToolStripMenuItem_Click);
//
// updatePadsOnMovePlaybackToolStripMenuItem
//
this.updatePadsOnMovePlaybackToolStripMenuItem.Name = "updatePadsOnMovePlaybackToolStripMenuItem";
this.updatePadsOnMovePlaybackToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.updatePadsOnMovePlaybackToolStripMenuItem.Text = "Update Pads on Move playback";
this.updatePadsOnMovePlaybackToolStripMenuItem.Click += new System.EventHandler(this.updatePadsOnMovePlaybackToolStripMenuItem_Click);
//
// toolStripSeparator4
//
this.toolStripSeparator4.Name = "toolStripSeparator4";
this.toolStripSeparator4.Size = new System.Drawing.Size(237, 6);
//
// restoreWindowToolStripMenuItem
//
this.restoreWindowToolStripMenuItem.Name = "restoreWindowToolStripMenuItem";
this.restoreWindowToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.restoreWindowToolStripMenuItem.Text = "Restore Default Settings";
this.restoreWindowToolStripMenuItem.Click += new System.EventHandler(this.restoreWindowToolStripMenuItem_Click);
//
// toolStrip1
//
this.toolStrip1.ClickThrough = true;
this.toolStrip1.Dock = System.Windows.Forms.DockStyle.None;
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
this.settingsToolStripMenuItem.Text = "&Settings";
this.settingsToolStripMenuItem.DropDownOpened += new System.EventHandler(this.settingsToolStripMenuItem_DropDownOpened);
//
// saveWindowPositionToolStripMenuItem
//
this.saveWindowPositionToolStripMenuItem.Name = "saveWindowPositionToolStripMenuItem";
this.saveWindowPositionToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.saveWindowPositionToolStripMenuItem.Text = "Save Window Position";
this.saveWindowPositionToolStripMenuItem.Click += new System.EventHandler(this.saveWindowPositionToolStripMenuItem_Click);
//
// autoloadToolStripMenuItem
//
this.autoloadToolStripMenuItem.Name = "autoloadToolStripMenuItem";
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.autoloadToolStripMenuItem.Text = "Autoload";
this.autoloadToolStripMenuItem.Click += new System.EventHandler(this.autoloadToolStripMenuItem_Click);
//
// updatePadsOnMovePlaybackToolStripMenuItem
//
this.updatePadsOnMovePlaybackToolStripMenuItem.Name = "updatePadsOnMovePlaybackToolStripMenuItem";
this.updatePadsOnMovePlaybackToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.updatePadsOnMovePlaybackToolStripMenuItem.Text = "Update Pads on Move playback";
this.updatePadsOnMovePlaybackToolStripMenuItem.Click += new System.EventHandler(this.updatePadsOnMovePlaybackToolStripMenuItem_Click);
//
// toolStripSeparator4
//
this.toolStripSeparator4.Name = "toolStripSeparator4";
this.toolStripSeparator4.Size = new System.Drawing.Size(237, 6);
//
// restoreWindowToolStripMenuItem
//
this.restoreWindowToolStripMenuItem.Name = "restoreWindowToolStripMenuItem";
this.restoreWindowToolStripMenuItem.Size = new System.Drawing.Size(240, 22);
this.restoreWindowToolStripMenuItem.Text = "Restore Default Settings";
this.restoreWindowToolStripMenuItem.Click += new System.EventHandler(this.restoreWindowToolStripMenuItem_Click);
//
// toolStrip1
//
this.toolStrip1.ClickThrough = true;
this.toolStrip1.Dock = System.Windows.Forms.DockStyle.None;
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.RewindToBeginning,
this.RewindButton,
this.PauseButton,
this.FrameAdvanceButton,
this.FastForward,
this.TurboFastForward,
this.FastFowardToEnd,
this.toolStripSeparator6,
this.StopButton});
this.toolStrip1.Location = new System.Drawing.Point(37, 27);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(156, 25);
this.toolStrip1.TabIndex = 0;
//
// RewindToBeginning
//
this.RewindToBeginning.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.RewindToBeginning.Image = global::BizHawk.MultiClient.Properties.Resources.BackMore;
this.RewindToBeginning.ImageTransparentColor = System.Drawing.Color.Magenta;
this.RewindToBeginning.Name = "RewindToBeginning";
this.RewindToBeginning.Size = new System.Drawing.Size(23, 22);
this.RewindToBeginning.Text = "<<";
this.RewindToBeginning.ToolTipText = "Rewind to Beginning";
this.RewindToBeginning.Click += new System.EventHandler(this.RewindToBeginning_Click);
//
// RewindButton
//
this.RewindButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.RewindButton.Image = global::BizHawk.MultiClient.Properties.Resources.Back;
this.RewindButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.RewindButton.Name = "RewindButton";
this.RewindButton.Size = new System.Drawing.Size(23, 22);
this.RewindButton.Text = "<";
this.RewindButton.ToolTipText = "Rewind";
this.RewindButton.Click += new System.EventHandler(this.RewindButton_Click);
//
// PauseButton
//
this.PauseButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.PauseButton.Image = global::BizHawk.MultiClient.Properties.Resources.Pause;
this.PauseButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.PauseButton.Name = "PauseButton";
this.PauseButton.Size = new System.Drawing.Size(23, 22);
this.PauseButton.Text = "Pause Button";
this.PauseButton.ToolTipText = "Pause";
this.PauseButton.Click += new System.EventHandler(this.PauseButton_Click);
//
// FrameAdvanceButton
//
this.FrameAdvanceButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.FrameAdvanceButton.Image = global::BizHawk.MultiClient.Properties.Resources.Forward;
this.FrameAdvanceButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.FrameAdvanceButton.Name = "FrameAdvanceButton";
this.FrameAdvanceButton.Size = new System.Drawing.Size(23, 22);
this.FrameAdvanceButton.Text = ">";
this.FrameAdvanceButton.ToolTipText = "Frame Advance";
this.FrameAdvanceButton.Click += new System.EventHandler(this.FrameAdvanceButton_Click);
//
// FastFowardToEnd
//
this.FastFowardToEnd.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.FastFowardToEnd.Enabled = false;
this.FastFowardToEnd.Image = global::BizHawk.MultiClient.Properties.Resources.ForwardMore;
this.FastFowardToEnd.ImageTransparentColor = System.Drawing.Color.Magenta;
this.FastFowardToEnd.Name = "FastFowardToEnd";
this.FastFowardToEnd.Size = new System.Drawing.Size(23, 22);
this.FastFowardToEnd.Text = ">>";
this.FastFowardToEnd.ToolTipText = "Fast Foward To End";
this.FastFowardToEnd.Click += new System.EventHandler(this.FastForwardToEnd_Click);
//
// toolStripSeparator6
//
this.toolStripSeparator6.Name = "toolStripSeparator6";
this.toolStripSeparator6.Size = new System.Drawing.Size(6, 25);
//
// StopButton
//
this.StopButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.StopButton.Image = global::BizHawk.MultiClient.Properties.Resources.Stop;
this.StopButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.StopButton.Name = "StopButton";
this.StopButton.Size = new System.Drawing.Size(23, 22);
this.StopButton.Text = "Stop Movie";
this.StopButton.Click += new System.EventHandler(this.StopButton_Click);
//
// ReadOnlyCheckBox
//
this.ReadOnlyCheckBox.Appearance = System.Windows.Forms.Appearance.Button;
this.ReadOnlyCheckBox.AutoSize = true;
this.ReadOnlyCheckBox.BackColor = System.Drawing.SystemColors.Control;
this.ReadOnlyCheckBox.Image = global::BizHawk.MultiClient.Properties.Resources.ReadOnly;
this.ReadOnlyCheckBox.ImageAlign = System.Drawing.ContentAlignment.BottomRight;
this.ReadOnlyCheckBox.Location = new System.Drawing.Point(12, 27);
this.ReadOnlyCheckBox.Name = "ReadOnlyCheckBox";
this.ReadOnlyCheckBox.Size = new System.Drawing.Size(22, 22);
this.ReadOnlyCheckBox.TabIndex = 3;
this.toolTip1.SetToolTip(this.ReadOnlyCheckBox, "Read-only");
this.ReadOnlyCheckBox.UseVisualStyleBackColor = false;
this.ReadOnlyCheckBox.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStrip1.Location = new System.Drawing.Point(37, 27);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(202, 25);
this.toolStrip1.TabIndex = 0;
//
// RewindToBeginning
//
this.RewindToBeginning.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.RewindToBeginning.Image = global::BizHawk.MultiClient.Properties.Resources.BackMore;
this.RewindToBeginning.ImageTransparentColor = System.Drawing.Color.Magenta;
this.RewindToBeginning.Name = "RewindToBeginning";
this.RewindToBeginning.Size = new System.Drawing.Size(23, 22);
this.RewindToBeginning.Text = "<<";
this.RewindToBeginning.ToolTipText = "Rewind to Beginning";
this.RewindToBeginning.Click += new System.EventHandler(this.RewindToBeginning_Click);
//
// RewindButton
//
this.RewindButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.RewindButton.Image = global::BizHawk.MultiClient.Properties.Resources.Back;
this.RewindButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.RewindButton.Name = "RewindButton";
this.RewindButton.Size = new System.Drawing.Size(23, 22);
this.RewindButton.Text = "<";
this.RewindButton.ToolTipText = "Rewind";
this.RewindButton.Click += new System.EventHandler(this.RewindButton_Click);
//
// PauseButton
//
this.PauseButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.PauseButton.Image = global::BizHawk.MultiClient.Properties.Resources.Pause;
this.PauseButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.PauseButton.Name = "PauseButton";
this.PauseButton.Size = new System.Drawing.Size(23, 22);
this.PauseButton.Text = "Pause Button";
this.PauseButton.ToolTipText = "Pause";
this.PauseButton.Click += new System.EventHandler(this.PauseButton_Click);
//
// FrameAdvanceButton
//
this.FrameAdvanceButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.FrameAdvanceButton.Image = global::BizHawk.MultiClient.Properties.Resources.Forward;
this.FrameAdvanceButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.FrameAdvanceButton.Name = "FrameAdvanceButton";
this.FrameAdvanceButton.Size = new System.Drawing.Size(23, 22);
this.FrameAdvanceButton.Text = ">";
this.FrameAdvanceButton.ToolTipText = "Frame Advance";
this.FrameAdvanceButton.Click += new System.EventHandler(this.FrameAdvanceButton_Click);
//
// FastForward
//
this.FastForward.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.FastForward.Image = global::BizHawk.MultiClient.Properties.Resources.FastForward;
this.FastForward.ImageTransparentColor = System.Drawing.Color.Magenta;
this.FastForward.Name = "FastForward";
this.FastForward.Size = new System.Drawing.Size(23, 22);
this.FastForward.Text = ">>";
this.FastForward.ToolTipText = "Fast Forward";
this.FastForward.Click += new System.EventHandler(this.FastForward_Click);
//
// TurboFastForward
//
this.TurboFastForward.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TurboFastForward.Enabled = false;
this.TurboFastForward.Image = global::BizHawk.MultiClient.Properties.Resources.TurboFastForward;
this.TurboFastForward.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TurboFastForward.Name = "TurboFastForward";
this.TurboFastForward.Size = new System.Drawing.Size(23, 22);
this.TurboFastForward.Text = ">>>";
this.TurboFastForward.ToolTipText = "Turbo Fast Forward";
this.TurboFastForward.Click += new System.EventHandler(this.TurboFastForward_Click);
//
// FastFowardToEnd
//
this.FastFowardToEnd.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.FastFowardToEnd.Image = global::BizHawk.MultiClient.Properties.Resources.ForwardMore;
this.FastFowardToEnd.ImageTransparentColor = System.Drawing.Color.Magenta;
this.FastFowardToEnd.Name = "FastFowardToEnd";
this.FastFowardToEnd.Size = new System.Drawing.Size(23, 22);
this.FastFowardToEnd.Text = ">>";
this.FastFowardToEnd.ToolTipText = "Fast Foward To End";
this.FastFowardToEnd.Click += new System.EventHandler(this.FastForwardToEnd_Click);
//
// toolStripSeparator6
//
this.toolStripSeparator6.Name = "toolStripSeparator6";
this.toolStripSeparator6.Size = new System.Drawing.Size(6, 25);
//
// StopButton
//
this.StopButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.StopButton.Image = global::BizHawk.MultiClient.Properties.Resources.Stop;
this.StopButton.ImageTransparentColor = System.Drawing.Color.Magenta;
this.StopButton.Name = "StopButton";
this.StopButton.Size = new System.Drawing.Size(23, 22);
this.StopButton.Text = "Stop Movie";
this.StopButton.Click += new System.EventHandler(this.StopButton_Click);
//
// ReadOnlyCheckBox
//
this.ReadOnlyCheckBox.Appearance = System.Windows.Forms.Appearance.Button;
this.ReadOnlyCheckBox.AutoSize = true;
this.ReadOnlyCheckBox.BackColor = System.Drawing.SystemColors.Control;
this.ReadOnlyCheckBox.Image = global::BizHawk.MultiClient.Properties.Resources.ReadOnly;
this.ReadOnlyCheckBox.ImageAlign = System.Drawing.ContentAlignment.BottomRight;
this.ReadOnlyCheckBox.Location = new System.Drawing.Point(12, 27);
this.ReadOnlyCheckBox.Name = "ReadOnlyCheckBox";
this.ReadOnlyCheckBox.Size = new System.Drawing.Size(22, 22);
this.ReadOnlyCheckBox.TabIndex = 3;
this.toolTip1.SetToolTip(this.ReadOnlyCheckBox, "Read-only");
this.ReadOnlyCheckBox.UseVisualStyleBackColor = false;
this.ReadOnlyCheckBox.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.insertFrameToolStripMenuItem1,
this.toolStripSeparator5,
this.selectAllToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(140, 54);
//
// insertFrameToolStripMenuItem1
//
this.insertFrameToolStripMenuItem1.Name = "insertFrameToolStripMenuItem1";
this.insertFrameToolStripMenuItem1.Size = new System.Drawing.Size(139, 22);
this.insertFrameToolStripMenuItem1.Text = "Insert Frame";
//
// toolStripSeparator5
//
this.toolStripSeparator5.Name = "toolStripSeparator5";
this.toolStripSeparator5.Size = new System.Drawing.Size(136, 6);
//
// selectAllToolStripMenuItem
//
this.selectAllToolStripMenuItem.Name = "selectAllToolStripMenuItem";
this.selectAllToolStripMenuItem.Size = new System.Drawing.Size(139, 22);
this.selectAllToolStripMenuItem.Text = "Select All";
//
// ControllerBox
//
this.ControllerBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.ControllerBox.ContextMenuStrip = this.ControllersContext;
this.ControllerBox.Location = new System.Drawing.Point(300, 55);
this.ControllerBox.Name = "ControllerBox";
this.ControllerBox.Size = new System.Drawing.Size(367, 197);
this.ControllerBox.TabIndex = 4;
this.ControllerBox.TabStop = false;
this.ControllerBox.Text = "Controllers";
//
// TASView
//
this.TASView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TASView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(140, 54);
//
// insertFrameToolStripMenuItem1
//
this.insertFrameToolStripMenuItem1.Name = "insertFrameToolStripMenuItem1";
this.insertFrameToolStripMenuItem1.Size = new System.Drawing.Size(139, 22);
this.insertFrameToolStripMenuItem1.Text = "Insert Frame";
//
// toolStripSeparator5
//
this.toolStripSeparator5.Name = "toolStripSeparator5";
this.toolStripSeparator5.Size = new System.Drawing.Size(136, 6);
//
// selectAllToolStripMenuItem
//
this.selectAllToolStripMenuItem.Name = "selectAllToolStripMenuItem";
this.selectAllToolStripMenuItem.Size = new System.Drawing.Size(139, 22);
this.selectAllToolStripMenuItem.Text = "Select All";
//
// ControllerBox
//
this.ControllerBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.ControllerBox.ContextMenuStrip = this.ControllersContext;
this.ControllerBox.Location = new System.Drawing.Point(300, 55);
this.ControllerBox.Name = "ControllerBox";
this.ControllerBox.Size = new System.Drawing.Size(367, 197);
this.ControllerBox.TabIndex = 4;
this.ControllerBox.TabStop = false;
this.ControllerBox.Text = "Controllers";
//
// ControllersContext
//
this.ControllersContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.clearToolStripMenuItem1});
this.ControllersContext.Name = "ControllersContext";
this.ControllersContext.Size = new System.Drawing.Size(136, 26);
//
// clearToolStripMenuItem1
//
this.clearToolStripMenuItem1.Name = "clearToolStripMenuItem1";
this.clearToolStripMenuItem1.Size = new System.Drawing.Size(135, 22);
this.clearToolStripMenuItem1.Text = "&Clear Holds";
this.clearToolStripMenuItem1.Click += new System.EventHandler(this.clearToolStripMenuItem1_Click);
//
// TASView
//
this.TASView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TASView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.Frame,
this.Log});
this.TASView.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TASView.FullRowSelect = true;
this.TASView.GridLines = true;
this.TASView.ItemCount = 0;
this.TASView.Location = new System.Drawing.Point(12, 55);
this.TASView.Name = "TASView";
this.TASView.selectedItem = -1;
this.TASView.Size = new System.Drawing.Size(282, 452);
this.TASView.TabIndex = 1;
this.TASView.UseCompatibleStateImageBehavior = false;
this.TASView.View = System.Windows.Forms.View.Details;
//
// Frame
//
this.Frame.Text = "Frame";
//
// Log
//
this.Log.Text = "Log";
this.Log.Width = 201;
//
// ControllersContext
//
this.ControllersContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.clearToolStripMenuItem1});
this.ControllersContext.Name = "ControllersContext";
this.ControllersContext.Size = new System.Drawing.Size(153, 48);
//
// clearToolStripMenuItem1
//
this.clearToolStripMenuItem1.Name = "clearToolStripMenuItem1";
this.clearToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
this.clearToolStripMenuItem1.Text = "&Clear Holds";
this.clearToolStripMenuItem1.Click += new System.EventHandler(this.clearToolStripMenuItem1_Click);
//
// TAStudio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(686, 519);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.menuStrip1);
this.Controls.Add(this.ReadOnlyCheckBox);
this.Controls.Add(this.TASView);
this.Controls.Add(this.ControllerBox);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MainMenuStrip = this.menuStrip1;
this.MinimumSize = new System.Drawing.Size(437, 148);
this.Name = "TAStudio";
this.Text = "TAStudio";
this.Load += new System.EventHandler(this.TAStudio_Load);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.contextMenuStrip1.ResumeLayout(false);
this.ControllersContext.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
this.TASView.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TASView.FullRowSelect = true;
this.TASView.GridLines = true;
this.TASView.ItemCount = 0;
this.TASView.Location = new System.Drawing.Point(12, 55);
this.TASView.Name = "TASView";
this.TASView.selectedItem = -1;
this.TASView.Size = new System.Drawing.Size(282, 452);
this.TASView.TabIndex = 1;
this.TASView.UseCompatibleStateImageBehavior = false;
this.TASView.View = System.Windows.Forms.View.Details;
//
// Frame
//
this.Frame.Text = "Frame";
//
// Log
//
this.Log.Text = "Log";
this.Log.Width = 201;
//
// TAStudio
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(686, 519);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.menuStrip1);
this.Controls.Add(this.ReadOnlyCheckBox);
this.Controls.Add(this.TASView);
this.Controls.Add(this.ControllerBox);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MainMenuStrip = this.menuStrip1;
this.MinimumSize = new System.Drawing.Size(437, 148);
this.Name = "TAStudio";
this.Text = "TAStudio";
this.Load += new System.EventHandler(this.TAStudio_Load);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.contextMenuStrip1.ResumeLayout(false);
this.ControllersContext.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
@ -523,5 +549,7 @@
private System.Windows.Forms.ToolStripMenuItem clearVirtualPadsToolStripMenuItem;
private System.Windows.Forms.ContextMenuStrip ControllersContext;
private System.Windows.Forms.ToolStripMenuItem clearToolStripMenuItem1;
private System.Windows.Forms.ToolStripButton FastForward;
private System.Windows.Forms.ToolStripButton TurboFastForward;
}
}

View File

@ -23,6 +23,7 @@ namespace BizHawk.MultiClient
//PCE virtualpad
//Dynamic virtualpad system based on platform
//ensureVisible when recording
//Allow hotkeys when TAStudio has focus
int defaultWidth; //For saving the default size of the dialog, so the user can restore if desired
int defaultHeight;
@ -102,7 +103,7 @@ namespace BizHawk.MultiClient
private void TASView_QueryItemBkColor(int index, int column, ref Color color)
{
if (index == Global.Emulator.Frame)
if (index < Global.MainForm.RewindBufferCount())
color = Color.LightGreen;
else if (Global.MovieSession.Movie.GetInputFrame(index)[1] == 'L')
color = Color.Pink;
@ -120,7 +121,7 @@ namespace BizHawk.MultiClient
private void DisplayList()
{
TASView.ItemCount = Global.MovieSession.Movie.Length();
TASView.ensureVisible(Global.Emulator.Frame);
TASView.ensureVisible(Global.Emulator.Frame-1);
}
public void Restart()
@ -335,10 +336,6 @@ namespace BizHawk.MultiClient
}
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
Global.MainForm.PlayMovieFromBeginning();
}
private void RewindToBeginning_Click(object sender, EventArgs e)
{
@ -348,8 +345,15 @@ namespace BizHawk.MultiClient
private void FastForwardToEnd_Click(object sender, EventArgs e)
{
}
Global.MainForm.StopOnEnd ^= true;
this.FastFowardToEnd.Checked ^= true;
Global.MainForm.FastForward = this.FastFowardToEnd.Checked;
if (true == this.FastFowardToEnd.Checked)
{
this.FastForward.Checked = false;
this.TurboFastForward.Checked = false;
}
}
private void editToolStripMenuItem_DropDownOpened(object sender, EventArgs e)
{
@ -376,22 +380,28 @@ namespace BizHawk.MultiClient
private void newProjectToolStripMenuItem_Click(object sender, EventArgs e)
{
}
Global.MainForm.RecordMovie();
}
private void openProjectToolStripMenuItem_Click(object sender, EventArgs e)
{
}
Global.MainForm.PlayMovie();
}
private void saveProjectToolStripMenuItem_Click(object sender, EventArgs e)
{
Global.MovieSession.Movie.WriteMovie();
}
private void saveProjectAsToolStripMenuItem_Click(object sender, EventArgs e)
{
string fileName = Movie.SaveRecordingAs();
if ("" != fileName)
{
Global.MovieSession.Movie.UpdateFileName(fileName);
Global.MovieSession.Movie.WriteMovie();
}
}
private void ClearVirtualPadHolds()
@ -412,5 +422,27 @@ namespace BizHawk.MultiClient
{
ClearVirtualPadHolds();
}
private void FastForward_Click(object sender, EventArgs e)
{
this.FastForward.Checked ^= true;
Global.MainForm.FastForward = this.FastForward.Checked;
if (true == this.FastForward.Checked)
{
this.TurboFastForward.Checked = false;
this.FastFowardToEnd.Checked = false;
}
}
private void TurboFastForward_Click(object sender, EventArgs e)
{
Global.MainForm.TurboFastForward ^= true;
this.TurboFastForward.Checked ^= true;
if (true == this.TurboFastForward.Checked)
{
this.FastForward.Checked = false;
this.FastFowardToEnd.Checked = false;
}
}
}
}

View File

@ -171,16 +171,16 @@ namespace BizHawk.MultiClient
public override void SetButtons(string buttons)
{
if (buttons.Length < 8) return;
if (buttons[0] == '.') PR.Checked = false; else PR.Checked = true;
if (buttons[1] == '.') PL.Checked = false; else PL.Checked = true;
if (buttons[2] == '.') PD.Checked = false; else PD.Checked = true;
if (buttons[3] == '.') PU.Checked = false; else PU.Checked = true;
if (buttons[4] == '.') B2.Checked = false; else B2.Checked = true;
if (buttons[5] == '.') B1.Checked = false; else B1.Checked = true;
if (buttons[6] == '.') B4.Checked = false; else B4.Checked = true;
if (buttons[7] == '.') B3.Checked = false; else B3.Checked = true;
}
if (buttons[0] == '.') PU.Checked = false; else PU.Checked = true;
if (buttons[1] == '.') PD.Checked = false; else PD.Checked = true;
if (buttons[2] == '.') PL.Checked = false; else PL.Checked = true;
if (buttons[3] == '.') PR.Checked = false; else PR.Checked = true;
if (buttons[4] == '.') B1.Checked = false; else B1.Checked = true;
if (buttons[5] == '.') B2.Checked = false; else B2.Checked = true;
if (buttons[6] == '.') B3.Checked = false; else B3.Checked = true;
if (buttons[7] == '.') B4.Checked = false; else B4.Checked = true;
}
private void Buttons_CheckedChanged(object sender, EventArgs e)
{

View File

@ -88,7 +88,7 @@ namespace BizHawk.MultiClient
public override string GetMnemonic()
{
StringBuilder input = new StringBuilder("");
input.Append(B2.Checked ? "1" : ".");
input.Append(B2.Checked ? "r" : ".");
input.Append("|");
return input.ToString();
}
@ -96,7 +96,14 @@ namespace BizHawk.MultiClient
public override void SetButtons(string buttons)
{
if (buttons.Length < 1) return;
if (buttons[0] == '.' || buttons[0] == '0') B2.Checked = false; else B2.Checked = true;
if (buttons[0] == '.' || buttons[0] == 'l')
{
B2.Checked = false;
}
else
{
B2.Checked = true;
}
}
private void Buttons_CheckedChanged(object sender, EventArgs e)