mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-26 13:32:08 +00:00
39 lines
1.3 KiB
C#
39 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Specialized;
|
|
using System.IO;
|
|
using System.Threading;
|
|
using Cosmos.Build.Common;
|
|
using Cosmos.Debug.Common;
|
|
using Cosmos.Debug.VSDebugEngine.Host;
|
|
|
|
namespace Cosmos.TestRunner.Core
|
|
{
|
|
partial class Engine
|
|
{
|
|
private void RunIsoInBochs(string iso)
|
|
{
|
|
var xBochsConfig = Path.Combine(mBaseWorkingDirectory, "Kernel.bochsrc");
|
|
var xParams = new NameValueCollection();
|
|
|
|
xParams.Add(BuildProperties.EnableBochsDebugString, "false");
|
|
xParams.Add("ISOFile", iso);
|
|
xParams.Add(BuildProperties.VisualStudioDebugPortString, "Pipe: Cosmos\\Serial");
|
|
|
|
var xDebugConnector = new DebugConnectorPipeServer(DebugConnectorPipeServer.DefaultCosmosPipeName);
|
|
InitializeDebugConnector(xDebugConnector);
|
|
|
|
var xBochs = new Bochs(xParams, false, new FileInfo(xBochsConfig));
|
|
xBochs.OnShutDown = (a, b) =>
|
|
{
|
|
};
|
|
xBochs.RedirectOutput = true;
|
|
xBochs.LogError = s => OutputHandler.LogDebugMessage(s);
|
|
xBochs.LogOutput = s => OutputHandler.LogDebugMessage(s);
|
|
|
|
HandleRunning(xDebugConnector, xBochs);
|
|
}
|
|
|
|
private volatile bool mKernelRunning = true;
|
|
|
|
}
|
|
}
|