diff --git a/BizHawk.MultiClient/tools/TAStudio.Designer.cs b/BizHawk.MultiClient/tools/TAStudio.Designer.cs index 858a140830..1883861482 100644 --- a/BizHawk.MultiClient/tools/TAStudio.Designer.cs +++ b/BizHawk.MultiClient/tools/TAStudio.Designer.cs @@ -373,6 +373,7 @@ 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; diff --git a/BizHawk.MultiClient/tools/TAStudio.cs b/BizHawk.MultiClient/tools/TAStudio.cs index f004f4d432..57161358e2 100644 --- a/BizHawk.MultiClient/tools/TAStudio.cs +++ b/BizHawk.MultiClient/tools/TAStudio.cs @@ -51,6 +51,36 @@ namespace BizHawk.MultiClient TASView.ItemCount = 0; else DisplayList(); + + if (Global.MainForm.UserMovie.Mode == MOVIEMODE.PLAY) + { + string str = Global.MainForm.UserMovie.GetInputFrame(Global.Emulator.Frame); + + switch (Global.Emulator.SystemId) + { + case "NES": + Pads[0].SetButtons(str.Substring(3, 8)); + Pads[1].SetButtons(str.Substring(12, 8)); + break; + case "SMS": + case "GG": + case "SG": + Pads[0].SetButtons(str.Substring(0, 6)); + Pads[0].SetButtons(str.Substring(7, 6)); + break; + case "PCE": + case "SGX": + Pads[0].SetButtons(str.Substring(3, 8)); + Pads[1].SetButtons(str.Substring(12, 8)); + Pads[2].SetButtons(str.Substring(21, 8)); + Pads[3].SetButtons(str.Substring(30, 8)); + break; + default: + break; + } + + + } } public string GetMnemonic() diff --git a/BizHawk.MultiClient/tools/VirtualPad.cs b/BizHawk.MultiClient/tools/VirtualPad.cs index 0be2397f2d..a269e3464f 100644 --- a/BizHawk.MultiClient/tools/VirtualPad.cs +++ b/BizHawk.MultiClient/tools/VirtualPad.cs @@ -60,5 +60,9 @@ namespace BizHawk.MultiClient B8.Checked = false; } + public virtual void SetButtons(string buttons) + { + + } } } diff --git a/BizHawk.MultiClient/tools/VirtualPadNES.cs b/BizHawk.MultiClient/tools/VirtualPadNES.cs index 812d81dab4..bf7cf9055f 100644 --- a/BizHawk.MultiClient/tools/VirtualPadNES.cs +++ b/BizHawk.MultiClient/tools/VirtualPadNES.cs @@ -168,6 +168,20 @@ namespace BizHawk.MultiClient return input.ToString(); } + 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; + } + private void Buttons_CheckedChanged(object sender, EventArgs e) { if (Global.Emulator.SystemId != "NES") return; diff --git a/BizHawk.MultiClient/tools/VirtualPadPCE.cs b/BizHawk.MultiClient/tools/VirtualPadPCE.cs index 14b6a92bfe..8e10d74ab3 100644 --- a/BizHawk.MultiClient/tools/VirtualPadPCE.cs +++ b/BizHawk.MultiClient/tools/VirtualPadPCE.cs @@ -168,6 +168,21 @@ namespace BizHawk.MultiClient return input.ToString(); } + 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; + } + } + private void Buttons_CheckedChanged(object sender, EventArgs e) { if (Global.Emulator.SystemId != "PCE") return; diff --git a/BizHawk.MultiClient/tools/VirtualPadSMS.cs b/BizHawk.MultiClient/tools/VirtualPadSMS.cs index 7af88a233f..a4acbd8d26 100644 --- a/BizHawk.MultiClient/tools/VirtualPadSMS.cs +++ b/BizHawk.MultiClient/tools/VirtualPadSMS.cs @@ -144,6 +144,18 @@ namespace BizHawk.MultiClient return input.ToString(); } + public override void SetButtons(string buttons) + { + if (buttons.Length < 8) return; + 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; + } + private void Buttons_CheckedChanged(object sender, EventArgs e) { if (Global.Emulator.SystemId != "SMS") return;