mirror of
https://github.com/danbulant/Cosmos
synced 2026-06-10 10:11:31 +00:00
This commit is contained in:
parent
085eaa7754
commit
f0fbc7c0a7
9 changed files with 68 additions and 80 deletions
|
|
@ -22,8 +22,8 @@
|
|||
Known Issues</h3>
|
||||
<ul>
|
||||
<li>Stepping will cause a crash of the guest.</li>
|
||||
<li>Only QEMU and VMWare Workstation and Player are supported. Others will be
|
||||
resupported soon, but can be used manually by mounting the ISO. ISO however isnt
|
||||
<li>Only VMWare Workstation and Player are supported in MS5. Others will be
|
||||
supported again soon, but can be used manually by mounting the ISO. ISO however isnt
|
||||
supported in this release, so you need to run the VMWare version and pluck the
|
||||
ISO from the output directory</li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -28,5 +28,9 @@ namespace Cosmos.Build.Common
|
|||
get { return this.GetProperty("UseInternalAssembler", false); }
|
||||
set { this.SetProperty("UseInternalAssembler", value); }
|
||||
}
|
||||
public VMwareFlavor VMWareFlavor {
|
||||
get { return GetProperty("VMWareFlavor", VMwareFlavor.Player); }
|
||||
set { SetProperty("VMWareFlavor", value); }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -20,11 +20,5 @@ namespace Cosmos.Build.Common {
|
|||
set { SetProperty("EnableGDB", value); }
|
||||
}
|
||||
|
||||
public VMwareFlavor VMWareFlavor
|
||||
{
|
||||
get { return GetProperty("VMWareFlavor", VMwareFlavor.Player); }
|
||||
set { SetProperty("VMWareFlavor", value); }
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,13 +19,9 @@
|
|||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<BuildTarget>QEMU</BuildTarget>
|
||||
<BuildTarget>VMWare</BuildTarget>
|
||||
<Framework>MicrosoftNET</Framework>
|
||||
<UseInternalAssembler>False</UseInternalAssembler>
|
||||
<QemuNetworkCard>RealtekRTL8139</QemuNetworkCard>
|
||||
<QemuAudioCard>
|
||||
</QemuAudioCard>
|
||||
<QemuNetworkTAP>True</QemuNetworkTAP>
|
||||
<DebugMode>Source</DebugMode>
|
||||
<EnableGDB>False</EnableGDB>
|
||||
<TraceMode>
|
||||
|
|
@ -35,11 +31,9 @@
|
|||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<DebugSymbols>false</DebugSymbols>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<BuildTarget>QEMU</BuildTarget>
|
||||
<BuildTarget>VMWare</BuildTarget>
|
||||
<Framework>MicrosoftNET</Framework>
|
||||
<UseInternalAssembler>False</UseInternalAssembler>
|
||||
<QemuCommunication>
|
||||
</QemuCommunication>
|
||||
<TraceAssemblies>All</TraceAssemblies>
|
||||
<DebugMode>None</DebugMode>
|
||||
</PropertyGroup>
|
||||
|
|
|
|||
|
|
@ -9,11 +9,8 @@
|
|||
<li>If no VS.. Cosmos waits for signal after ready... need some sort of time out so
|
||||
users can run if they left it with debugging on.</li>
|
||||
<li></li>
|
||||
<li>Disable VMWare server, but make a note</li>
|
||||
<li>vmware flavor to main screen as subtype</li>
|
||||
<li>test new serial code.</li>
|
||||
<li>QEMU blog</li>
|
||||
<li>ISO</li>
|
||||
<li>USB to list</li>
|
||||
</ul>
|
||||
<h3>
|
||||
Matthijs</h3>
|
||||
|
|
@ -37,7 +34,6 @@
|
|||
<li>Ready command - wait for all init, then send a final before going. ack/nack each
|
||||
so we dont overflow</li>
|
||||
<li>stepping</li>
|
||||
<li>Find out why its sending the bp 3 x... 2x before vmware even starts</li>
|
||||
<li>Cosmos.Debug.Common - much in here is not common and should be moved to
|
||||
VSDebug.. Add Readme.html that NASM and VSDebug use whats left</li>
|
||||
</ul>
|
||||
|
|
|
|||
39
source2/VSIP/Cosmos.VS.Package/BuildPage.Designer.cs
generated
39
source2/VSIP/Cosmos.VS.Package/BuildPage.Designer.cs
generated
|
|
@ -41,6 +41,7 @@
|
|||
this.comboTarget = new System.Windows.Forms.ComboBox();
|
||||
this.checkUseInternalAssembler = new System.Windows.Forms.CheckBox();
|
||||
this.labelInternalAssembler = new System.Windows.Forms.Label();
|
||||
this.comboFlavor = new System.Windows.Forms.ComboBox();
|
||||
this.tableBuildOptions.SuspendLayout();
|
||||
this.panel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
|
|
@ -53,20 +54,22 @@
|
|||
this.tableBuildOptions.ColumnCount = 2;
|
||||
this.tableBuildOptions.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
|
||||
this.tableBuildOptions.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 70F));
|
||||
this.tableBuildOptions.Controls.Add(this.titleCompiler, 0, 3);
|
||||
this.tableBuildOptions.Controls.Add(this.titleCompiler, 0, 4);
|
||||
this.tableBuildOptions.Controls.Add(this.titleOutput, 0, 0);
|
||||
this.tableBuildOptions.Controls.Add(this.label2, 0, 1);
|
||||
this.tableBuildOptions.Controls.Add(this.panel1, 1, 1);
|
||||
this.tableBuildOptions.Controls.Add(this.labelFramework, 0, 4);
|
||||
this.tableBuildOptions.Controls.Add(this.comboFramework, 1, 4);
|
||||
this.tableBuildOptions.Controls.Add(this.labelFramework, 0, 5);
|
||||
this.tableBuildOptions.Controls.Add(this.comboFramework, 1, 5);
|
||||
this.tableBuildOptions.Controls.Add(this.labelTarget, 0, 2);
|
||||
this.tableBuildOptions.Controls.Add(this.comboTarget, 1, 2);
|
||||
this.tableBuildOptions.Controls.Add(this.checkUseInternalAssembler, 0, 5);
|
||||
this.tableBuildOptions.Controls.Add(this.labelInternalAssembler, 0, 6);
|
||||
this.tableBuildOptions.Controls.Add(this.checkUseInternalAssembler, 0, 6);
|
||||
this.tableBuildOptions.Controls.Add(this.labelInternalAssembler, 0, 7);
|
||||
this.tableBuildOptions.Controls.Add(this.comboFlavor, 1, 3);
|
||||
this.tableBuildOptions.Location = new System.Drawing.Point(0, 41);
|
||||
this.tableBuildOptions.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.tableBuildOptions.Name = "tableBuildOptions";
|
||||
this.tableBuildOptions.RowCount = 8;
|
||||
this.tableBuildOptions.RowCount = 9;
|
||||
this.tableBuildOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableBuildOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableBuildOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableBuildOptions.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
|
|
@ -77,6 +80,7 @@
|
|||
this.tableBuildOptions.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tableBuildOptions.Size = new System.Drawing.Size(492, 247);
|
||||
this.tableBuildOptions.TabIndex = 1;
|
||||
this.tableBuildOptions.Paint += new System.Windows.Forms.PaintEventHandler(this.tableBuildOptions_Paint);
|
||||
//
|
||||
// titleCompiler
|
||||
//
|
||||
|
|
@ -86,7 +90,7 @@
|
|||
this.titleCompiler.Enabled = false;
|
||||
this.titleCompiler.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.titleCompiler.LineColor = System.Drawing.SystemColors.ControlDark;
|
||||
this.titleCompiler.Location = new System.Drawing.Point(3, 99);
|
||||
this.titleCompiler.Location = new System.Drawing.Point(3, 126);
|
||||
this.titleCompiler.Margin = new System.Windows.Forms.Padding(3, 12, 3, 12);
|
||||
this.titleCompiler.Name = "titleCompiler";
|
||||
this.titleCompiler.Size = new System.Drawing.Size(486, 15);
|
||||
|
|
@ -159,7 +163,7 @@
|
|||
this.labelFramework.AutoSize = true;
|
||||
this.labelFramework.Enabled = false;
|
||||
this.labelFramework.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.labelFramework.Location = new System.Drawing.Point(22, 129);
|
||||
this.labelFramework.Location = new System.Drawing.Point(22, 156);
|
||||
this.labelFramework.Margin = new System.Windows.Forms.Padding(22, 3, 0, 3);
|
||||
this.labelFramework.Name = "labelFramework";
|
||||
this.labelFramework.Size = new System.Drawing.Size(69, 21);
|
||||
|
|
@ -172,7 +176,7 @@
|
|||
this.comboFramework.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboFramework.Enabled = false;
|
||||
this.comboFramework.FormattingEnabled = true;
|
||||
this.comboFramework.Location = new System.Drawing.Point(150, 129);
|
||||
this.comboFramework.Location = new System.Drawing.Point(150, 156);
|
||||
this.comboFramework.Name = "comboFramework";
|
||||
this.comboFramework.Size = new System.Drawing.Size(143, 21);
|
||||
this.comboFramework.TabIndex = 8;
|
||||
|
|
@ -209,7 +213,7 @@
|
|||
this.tableBuildOptions.SetColumnSpan(this.checkUseInternalAssembler, 2);
|
||||
this.checkUseInternalAssembler.Enabled = false;
|
||||
this.checkUseInternalAssembler.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.checkUseInternalAssembler.Location = new System.Drawing.Point(22, 165);
|
||||
this.checkUseInternalAssembler.Location = new System.Drawing.Point(22, 192);
|
||||
this.checkUseInternalAssembler.Margin = new System.Windows.Forms.Padding(22, 12, 3, 3);
|
||||
this.checkUseInternalAssembler.Name = "checkUseInternalAssembler";
|
||||
this.checkUseInternalAssembler.Size = new System.Drawing.Size(146, 19);
|
||||
|
|
@ -221,14 +225,24 @@
|
|||
//
|
||||
this.tableBuildOptions.SetColumnSpan(this.labelInternalAssembler, 2);
|
||||
this.labelInternalAssembler.Enabled = false;
|
||||
this.labelInternalAssembler.Location = new System.Drawing.Point(44, 187);
|
||||
this.labelInternalAssembler.Location = new System.Drawing.Point(44, 214);
|
||||
this.labelInternalAssembler.Margin = new System.Windows.Forms.Padding(44, 0, 3, 0);
|
||||
this.labelInternalAssembler.Name = "labelInternalAssembler";
|
||||
this.labelInternalAssembler.Size = new System.Drawing.Size(401, 43);
|
||||
this.labelInternalAssembler.Size = new System.Drawing.Size(401, 27);
|
||||
this.labelInternalAssembler.TabIndex = 6;
|
||||
this.labelInternalAssembler.Text = "Experimental. Leave unchecked unless you like debugging deep level assembly code." +
|
||||
"";
|
||||
//
|
||||
// comboFlavor
|
||||
//
|
||||
this.comboFlavor.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboFlavor.FormattingEnabled = true;
|
||||
this.comboFlavor.Location = new System.Drawing.Point(150, 90);
|
||||
this.comboFlavor.Name = "comboFlavor";
|
||||
this.comboFlavor.Size = new System.Drawing.Size(143, 21);
|
||||
this.comboFlavor.Sorted = true;
|
||||
this.comboFlavor.TabIndex = 13;
|
||||
//
|
||||
// BuildPage
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
|
@ -260,6 +274,7 @@
|
|||
private System.Windows.Forms.CheckBox checkUseInternalAssembler;
|
||||
private System.Windows.Forms.Label labelTarget;
|
||||
private System.Windows.Forms.ComboBox comboTarget;
|
||||
private System.Windows.Forms.ComboBox comboFlavor;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,19 +33,6 @@ namespace Cosmos.VS.Package {
|
|||
IsDirty = true;
|
||||
}
|
||||
};
|
||||
|
||||
comboTarget.Items.AddRange(EnumValue.GetEnumValues(typeof(TargetHost), true));
|
||||
comboTarget.SelectedIndexChanged += delegate(Object sender, EventArgs e) {
|
||||
var value = (TargetHost)((EnumValue)comboTarget.SelectedItem).Value;
|
||||
if (value != mProps.Target) {
|
||||
mProps.Target = value;
|
||||
IsDirty = true;
|
||||
|
||||
CurrentBuildTarget = value;
|
||||
OnBuildTargetChanged(this, EventArgs.Empty);
|
||||
}
|
||||
};
|
||||
|
||||
comboFramework.Items.AddRange(EnumValue.GetEnumValues(typeof(Framework), true));
|
||||
comboFramework.SelectedIndexChanged += delegate(Object sender, EventArgs e) {
|
||||
var value = (Framework)((EnumValue)comboFramework.SelectedItem).Value;
|
||||
|
|
@ -62,7 +49,29 @@ namespace Cosmos.VS.Package {
|
|||
IsDirty = true;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
comboTarget.Items.AddRange(EnumValue.GetEnumValues(typeof(TargetHost), true));
|
||||
comboTarget.SelectedIndexChanged += delegate(Object sender, EventArgs e) {
|
||||
var value = (TargetHost)((EnumValue)comboTarget.SelectedItem).Value;
|
||||
if (value != mProps.Target) {
|
||||
mProps.Target = value;
|
||||
IsDirty = true;
|
||||
|
||||
CurrentBuildTarget = value;
|
||||
OnBuildTargetChanged(this, EventArgs.Empty);
|
||||
}
|
||||
};
|
||||
|
||||
comboFlavor.Items.AddRange(EnumValue.GetEnumValues(typeof(VMwareFlavor), true));
|
||||
comboFlavor.SelectedIndexChanged += delegate(Object sender, EventArgs e) {
|
||||
var x = (VMwareFlavor)((EnumValue)comboFlavor.SelectedItem).Value;
|
||||
if (x != mProps.VMWareFlavor) {
|
||||
mProps.VMWareFlavor = x;
|
||||
IsDirty = true;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
protected BuildProperties mProps = new BuildProperties();
|
||||
public override PropertiesBase Properties {
|
||||
|
|
@ -90,7 +99,10 @@ namespace Cosmos.VS.Package {
|
|||
|
||||
mProps.SetProperty("UseInternalAssembler", GetConfigProperty("UseInternalAssembler"));
|
||||
checkUseInternalAssembler.Checked = mProps.UseInternalAssembler;
|
||||
}
|
||||
|
||||
mProps.SetProperty("VMWareFlavor", GetConfigProperty("VMWareFlavor"));
|
||||
comboFlavor.SelectedItem = EnumValue.Find(comboFlavor.Items, mProps.VMWareFlavor);
|
||||
}
|
||||
|
||||
private void OutputBrowse_Click(object sender, EventArgs e) {
|
||||
string folderPath = String.Empty;
|
||||
|
|
@ -131,10 +143,14 @@ namespace Cosmos.VS.Package {
|
|||
private void comboTarget_SelectedIndexChanged(object sender, EventArgs e) {
|
||||
var xEnumValue = (EnumValue)comboTarget.SelectedItem;
|
||||
var xValue = (TargetHost)xEnumValue.Value;
|
||||
if (!(xValue == TargetHost.VMWare || xValue == TargetHost.VMWare)) {
|
||||
if (xValue != TargetHost.VMWare) {
|
||||
MessageBox.Show("This type is temporarily unsupported.");
|
||||
}
|
||||
}
|
||||
|
||||
private void tableBuildOptions_Paint(object sender, PaintEventArgs e) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@
|
|||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.comboDebugMode = new System.Windows.Forms.ComboBox();
|
||||
this.table = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.titleTargetHost = new Cosmos.VS.Package.TitleDivision();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.comboTraceMode = new System.Windows.Forms.ComboBox();
|
||||
this.titleDivision1 = new Cosmos.VS.Package.TitleDivision();
|
||||
|
|
@ -81,7 +80,6 @@
|
|||
this.table.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 39F));
|
||||
this.table.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 49.66887F));
|
||||
this.table.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50.33113F));
|
||||
this.table.Controls.Add(this.titleTargetHost, 0, 6);
|
||||
this.table.Controls.Add(this.label2, 1, 3);
|
||||
this.table.Controls.Add(this.titleGeneral, 0, 0);
|
||||
this.table.Controls.Add(this.label1, 1, 1);
|
||||
|
|
@ -109,20 +107,6 @@
|
|||
this.table.Size = new System.Drawing.Size(492, 288);
|
||||
this.table.TabIndex = 1;
|
||||
//
|
||||
// titleTargetHost
|
||||
//
|
||||
this.titleTargetHost.BackColor = System.Drawing.Color.Transparent;
|
||||
this.table.SetColumnSpan(this.titleTargetHost, 2);
|
||||
this.titleTargetHost.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.titleTargetHost.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold);
|
||||
this.titleTargetHost.LineColor = System.Drawing.SystemColors.ControlDark;
|
||||
this.titleTargetHost.Location = new System.Drawing.Point(3, 140);
|
||||
this.titleTargetHost.Margin = new System.Windows.Forms.Padding(3, 3, 3, 12);
|
||||
this.titleTargetHost.Name = "titleTargetHost";
|
||||
this.titleTargetHost.Size = new System.Drawing.Size(257, 15);
|
||||
this.titleTargetHost.TabIndex = 21;
|
||||
this.titleTargetHost.Title = "Target Host";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
|
|
@ -186,7 +170,6 @@
|
|||
|
||||
private TitleDivision titleGeneral;
|
||||
private System.Windows.Forms.TableLayoutPanel table;
|
||||
private TitleDivision titleTargetHost;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.ComboBox comboDebugMode;
|
||||
|
|
|
|||
|
|
@ -38,17 +38,6 @@ namespace Cosmos.VS.Package
|
|||
}
|
||||
};
|
||||
|
||||
comboFlavor.Items.AddRange(EnumValue.GetEnumValues(typeof(VMwareFlavor), true));
|
||||
comboFlavor.SelectedIndexChanged += delegate(Object sender, EventArgs e)
|
||||
{
|
||||
var x = (VMwareFlavor)((EnumValue)comboFlavor.SelectedItem).Value;
|
||||
if (x != mProps.VMWareFlavor)
|
||||
{
|
||||
mProps.VMWareFlavor = x;
|
||||
IsDirty = true;
|
||||
}
|
||||
};
|
||||
|
||||
checkEnableGDB.CheckedChanged += delegate(Object sender, EventArgs e)
|
||||
{
|
||||
bool x = checkEnableGDB.Checked;
|
||||
|
|
@ -79,9 +68,6 @@ namespace Cosmos.VS.Package
|
|||
|
||||
mProps.SetProperty("TraceMode", GetConfigProperty("TraceMode"));
|
||||
comboTraceMode.SelectedItem = EnumValue.Find(comboTraceMode.Items, mProps.TraceAssemblies);
|
||||
|
||||
mProps.SetProperty("VMWareFlavor", GetConfigProperty("VMWareFlavor"));
|
||||
comboFlavor.SelectedItem = EnumValue.Find(comboFlavor.Items, mProps.VMWareFlavor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue