Ongoing debugger work.

This commit is contained in:
Matthijs ter Woord 2015-07-28 11:51:11 -04:00
parent 548e806bc5
commit fa4da67ff0
9 changed files with 29 additions and 22 deletions

View file

@ -17,8 +17,8 @@
<DebugEnabled>True</DebugEnabled> <DebugEnabled>True</DebugEnabled>
<DebugMode>Source</DebugMode> <DebugMode>Source</DebugMode>
<TraceMode>User</TraceMode> <TraceMode>User</TraceMode>
<EnableGDB>False</EnableGDB> <EnableGDB>True</EnableGDB>
<StartCosmosGDB>false</StartCosmosGDB> <StartCosmosGDB>False</StartCosmosGDB>
<VMWareEdition>Player</VMWareEdition> <VMWareEdition>Player</VMWareEdition>
<OutputPath>bin\Debug\</OutputPath> <OutputPath>bin\Debug\</OutputPath>
<Name>Cosmos.Compiler.Tests.SimpleWriteLine.KernelBoot</Name> <Name>Cosmos.Compiler.Tests.SimpleWriteLine.KernelBoot</Name>
@ -39,15 +39,25 @@
<VMware_VMwareEdition>Player</VMware_VMwareEdition> <VMware_VMwareEdition>Player</VMware_VMwareEdition>
<VMware_OutputPath>bin\Debug\</VMware_OutputPath> <VMware_OutputPath>bin\Debug\</VMware_OutputPath>
<VMware_TraceAssemblies>All</VMware_TraceAssemblies> <VMware_TraceAssemblies>All</VMware_TraceAssemblies>
<VMware_EnableGDB>False</VMware_EnableGDB> <VMware_EnableGDB>True</VMware_EnableGDB>
<VMware_StartCosmosGDB>false</VMware_StartCosmosGDB> <VMware_StartCosmosGDB>False</VMware_StartCosmosGDB>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Cosmos.Core.Plugs, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5ae71220097cb983" /> <ProjectReference Include="..\..\source\Cosmos.Core.Plugs\Cosmos.Core.Plugs.csproj">
<Reference Include="Cosmos.System.Plugs, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5ae71220097cb983" /> <Name>Cosmos.Core.Plugs</Name>
<Reference Include="Cosmos.Debug.Kernel.Plugs, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5ae71220097cb983" /> <Project>{d9a87aad-fcc9-4517-b31d-e904dad00784}</Project>
</ItemGroup> <Private>True</Private>
<ItemGroup> </ProjectReference>
<ProjectReference Include="..\..\source\Cosmos.Debug.Kernel.Plugs\Cosmos.Debug.Kernel.Plugs.csproj">
<Name>Cosmos.Debug.Kernel.Plugs</Name>
<Project>{b97a2956-c363-47f2-a6aa-b4fccff4d315}</Project>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\..\source\Cosmos.System.Plugs\Cosmos.System.Plugs.csproj">
<Name>Cosmos.System.Plugs</Name>
<Project>{7c64b97f-516d-4a6d-b9e1-3fe48f561409}</Project>
<Private>True</Private>
</ProjectReference>
<ProjectReference Include="..\Cosmos.Compiler.Tests.SimpleWriteLine.Kernel\Cosmos.Compiler.Tests.SimpleWriteLine.Kernel.csproj"> <ProjectReference Include="..\Cosmos.Compiler.Tests.SimpleWriteLine.Kernel\Cosmos.Compiler.Tests.SimpleWriteLine.Kernel.csproj">
<Name>Cosmos.Compiler.Tests.SimpleWriteLine.Kernel</Name> <Name>Cosmos.Compiler.Tests.SimpleWriteLine.Kernel</Name>
<Project>{57045fe8-b0fe-4fc1-810f-7c3914aef1de}</Project> <Project>{57045fe8-b0fe-4fc1-810f-7c3914aef1de}</Project>

View file

@ -121,10 +121,6 @@
<Project>{6128DEEB-D30F-4859-B60F-C36D5452F3E9}</Project> <Project>{6128DEEB-D30F-4859-B60F-C36D5452F3E9}</Project>
<Name>IL2CPU</Name> <Name>IL2CPU</Name>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\BoxingTests\BoxingTests.csproj">
<Project>{f8889473-5866-4913-86ac-8072a1a2558c}</Project>
<Name>BoxingTests</Name>
</ProjectReference>
<ProjectReference Include="..\Cosmos.Compiler.Tests.Interfaces\Cosmos.Compiler.Tests.Interfaces.Kernel.csproj"> <ProjectReference Include="..\Cosmos.Compiler.Tests.Interfaces\Cosmos.Compiler.Tests.Interfaces.Kernel.csproj">
<Project>{bdc011be-6041-4a58-a6e7-0f592e78cb27}</Project> <Project>{bdc011be-6041-4a58-a6e7-0f592e78cb27}</Project>
<Name>Cosmos.Compiler.Tests.Interfaces.Kernel</Name> <Name>Cosmos.Compiler.Tests.Interfaces.Kernel</Name>

View file

@ -53,10 +53,6 @@
<Project>{3DEF0461-08AB-471A-8F03-A9C556652A0F}</Project> <Project>{3DEF0461-08AB-471A-8F03-A9C556652A0F}</Project>
<Name>Cosmos.System</Name> <Name>Cosmos.System</Name>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\BoxingTests\BoxingTests.csproj">
<Project>{f8889473-5866-4913-86ac-8072a1a2558c}</Project>
<Name>BoxingTests</Name>
</ProjectReference>
<ProjectReference Include="..\Cosmos.Compiler.Tests.Interfaces\Cosmos.Compiler.Tests.Interfaces.Kernel.csproj"> <ProjectReference Include="..\Cosmos.Compiler.Tests.Interfaces\Cosmos.Compiler.Tests.Interfaces.Kernel.csproj">
<Project>{BDC011BE-6041-4A58-A6E7-0F592E78CB27}</Project> <Project>{BDC011BE-6041-4A58-A6E7-0F592E78CB27}</Project>
<Name>Cosmos.Compiler.Tests.Interfaces.Kernel</Name> <Name>Cosmos.Compiler.Tests.Interfaces.Kernel</Name>

View file

@ -21,9 +21,8 @@ namespace Cosmos.TestRunner.Console
var xOutputXml = new OutputHandlerXml(); var xOutputXml = new OutputHandlerXml();
xEngine.OutputHandler = new MultiplexingOutputHandler( xEngine.OutputHandler = new MultiplexingOutputHandler(
xOutputXml, xOutputXml,
new OutputHandlerConsole()); new OutputHandlerFullConsole());
xEngine.RunTargets.Add(RunTargetEnum.Bochs);
xEngine.Execute(); xEngine.Execute();
global::System.Console.WriteLine("Do you want to save test run details?"); global::System.Console.WriteLine("Do you want to save test run details?");

View file

@ -0,0 +1,2 @@
[*.cs]
indent_size = 2

View file

@ -96,6 +96,7 @@
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include=".editorconfig" />
<None Include="Cosmos.snk" /> <None Include="Cosmos.snk" />
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

View file

@ -14,9 +14,10 @@ namespace Cosmos.Debug.Kernel {
{ {
} // Plugged } // Plugged
public unsafe void Send(int aLength, char* aText) private static unsafe void Send(int aLength, char* aText)
{ {
} // Plugged } // Plugged
//public void TraceOff() { } // Plugged //public void TraceOff() { } // Plugged
//public void TraceOn() { } // Plugged //public void TraceOn() { } // Plugged
public void SendPtr(object aObject) public void SendPtr(object aObject)

View file

@ -13,7 +13,7 @@ indent_size = 2
indent_size = 2 indent_size = 2
[IL/*.cs] [IL/*.cs]
indent_size = 4 indent_size = 2
[AppAssembler.cs] [AppAssembler.cs]
indent_size = 4 indent_size = 4

View file

@ -22,7 +22,9 @@ namespace Cosmos.IL2CPU.X86.IL
new Comment( Assembler, "String Value: " + xOpString.Value.Replace( "\r", "\\r" ).Replace( "\n", "\\n" ) ); new Comment( Assembler, "String Value: " + xOpString.Value.Replace( "\r", "\\r" ).Replace( "\n", "\\n" ) );
new Mov { DestinationReg = RegistersEnum.EAX, SourceRef = Cosmos.Assembler.ElementReference.New(xDataName) }; new Mov { DestinationReg = RegistersEnum.EAX, SourceRef = Cosmos.Assembler.ElementReference.New(xDataName) };
new Push { DestinationReg = RegistersEnum.EAX }; new Push { DestinationReg = RegistersEnum.EAX };
// DEBUG VERIFICATION: leave it here for now. we have issues with fields ordering. if that changes, we need to change the code below! // DEBUG VERIFICATION: leave it here for now. we have issues with fields ordering.
// if that changes, we need to change the code below!
// We also need to change the debugstub to fix this then.
#region Debug verification #region Debug verification
var xFields = GetFieldsInfo(typeof(string), false).Where(i => !i.IsStatic).ToArray(); var xFields = GetFieldsInfo(typeof(string), false).Where(i => !i.IsStatic).ToArray();