bochs safe kill

we are now safely killing the bochs process and we release the use of
the cdb file via the OnShutDown event in the AD7Process.css
This commit is contained in:
Geramy L. Loveless 2015-05-26 11:17:13 -07:00
parent 11e8b95b9c
commit d6728ec902
3 changed files with 12 additions and 11 deletions

View file

@ -15,7 +15,7 @@
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<Profile>VMware</Profile>
<Profile>Bochs</Profile>
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\Debug\</OutputPath>
<Framework>MicrosoftNET</Framework>
@ -30,8 +30,8 @@
<VMwareDeploy>ISO</VMwareDeploy>
<IgnoreDebugStubAttribute>False</IgnoreDebugStubAttribute>
<Deployment>ISO</Deployment>
<Launch>VMware</Launch>
<DebugEnabled>False</DebugEnabled>
<Launch>Bochs</Launch>
<DebugEnabled>True</DebugEnabled>
<TraceAssemblies>All</TraceAssemblies>
<PXE_Deployment>PXE</PXE_Deployment>
<PXE_Launch>None</PXE_Launch>
@ -82,7 +82,7 @@
<ISO_EnableGDB>False</ISO_EnableGDB>
<ISO_StartCosmosGDB>false</ISO_StartCosmosGDB>
<Name>Guess</Name>
<Description>Use VMware Player or Workstation to deploy and debug.</Description>
<Description>Use Bochs emulator to deploy and debug.</Description>
<ISO_Name>User 001</ISO_Name>
<ISO_Description>Creates a bootable ISO image which can be burned to a DVD. After running the selected project, an explorer window will open containing the ISO file. The ISO file can then be burned to a CD or DVD and used to boot a physical or virtual system.</ISO_Description>
<USB_Name>Guess</USB_Name>
@ -129,7 +129,7 @@
<ISO_VisualStudioDebugPort>Pipe: Cosmos\Serial</ISO_VisualStudioDebugPort>
<PXE_ShowLaunchConsole>False</PXE_ShowLaunchConsole>
<PXE_VisualStudioDebugPort>Pipe: Cosmos\Serial</PXE_VisualStudioDebugPort>
<StackCorruptionDetectionEnabled>True</StackCorruptionDetectionEnabled>
<StackCorruptionDetectionEnabled>False</StackCorruptionDetectionEnabled>
<VMware_StackCorruptionDetectionEnabled>True</VMware_StackCorruptionDetectionEnabled>
<Bochs_Name>Guess</Bochs_Name>
<Bochs_Description>Use Bochs emulator to deploy and debug.</Bochs_Description>
@ -181,7 +181,7 @@
<USB_EnableBochsDebug>False</USB_EnableBochsDebug>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<Profile>VMware</Profile>
<Profile>Bochs</Profile>
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\Debug\</OutputPath>
<Framework>MicrosoftNET</Framework>
@ -196,8 +196,8 @@
<VMwareDeploy>ISO</VMwareDeploy>
<IgnoreDebugStubAttribute>False</IgnoreDebugStubAttribute>
<Deployment>ISO</Deployment>
<Launch>VMware</Launch>
<DebugEnabled>False</DebugEnabled>
<Launch>Bochs</Launch>
<DebugEnabled>True</DebugEnabled>
<TraceAssemblies>All</TraceAssemblies>
<PXE_Deployment>PXE</PXE_Deployment>
<PXE_Launch>None</PXE_Launch>
@ -248,7 +248,7 @@
<ISO_EnableGDB>False</ISO_EnableGDB>
<ISO_StartCosmosGDB>false</ISO_StartCosmosGDB>
<Name>Guess</Name>
<Description>Use VMware Player or Workstation to deploy and debug.</Description>
<Description>Use Bochs emulator to deploy and debug.</Description>
<ISO_Name>User 001</ISO_Name>
<ISO_Description>Creates a bootable ISO image which can be burned to a DVD. After running the selected project, an explorer window will open containing the ISO file. The ISO file can then be burned to a CD or DVD and used to boot a physical or virtual system.</ISO_Description>
<USB_Name>Guess</USB_Name>
@ -301,7 +301,7 @@
<VMware_ShowLaunchConsole>False</VMware_ShowLaunchConsole>
<ISO_ShowLaunchConsole>False</ISO_ShowLaunchConsole>
<PXE_ShowLaunchConsole>False</PXE_ShowLaunchConsole>
<StackCorruptionDetectionEnabled>True</StackCorruptionDetectionEnabled>
<StackCorruptionDetectionEnabled>False</StackCorruptionDetectionEnabled>
<VMware_StackCorruptionDetectionEnabled>True</VMware_StackCorruptionDetectionEnabled>
<Bochs_Name>Guess</Bochs_Name>
<Bochs_Description>Use Bochs emulator to deploy and debug.</Bochs_Description>

View file

@ -429,7 +429,7 @@ namespace Cosmos.Debug.VSDebugEngine
// TODO : What if the configuration file doesn't exist ? This will throw a FileNotFoundException in
// the Bochs class constructor. Is this appropriate behavior ?
mHost = new Host.Bochs(mDebugInfo, xUseGDB, bochsConfigurationFile);
//((Host.Bochs)mHost).FixBochsConfiguration(new KeyValuePair<string, string>[] { new KeyValuePair<string, string>("IsoFileName", mISO) });
break;
case LaunchType.IntelEdison:

View file

@ -100,6 +100,7 @@ namespace Cosmos.Debug.VSDebugEngine.Host
private void CleanUp()
{
OnShutDown(this, null);
_bochsProcess.Exited -= ExitCallback;
// TODO BlueSkeye : What kind of garbage may Bochs have left for us to clean ?
}