mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-26 21:42:11 +00:00
This commit is contained in:
parent
8cce9f32a4
commit
de10e77b64
3 changed files with 105 additions and 102 deletions
|
|
@ -18,26 +18,26 @@ namespace Cosmos.Debug {
|
||||||
|
|
||||||
// TODO: Kudzu repacement methods for Cosmos.Hardware.DebugUtil
|
// TODO: Kudzu repacement methods for Cosmos.Hardware.DebugUtil
|
||||||
public static unsafe void SendMessage(string aModule, string aData) {
|
public static unsafe void SendMessage(string aModule, string aData) {
|
||||||
string xSingleString;
|
//string xSingleString;
|
||||||
xSingleString = "Message Module: \"" + aModule + "\"";
|
//xSingleString = "Message Module: \"" + aModule + "\"";
|
||||||
xSingleString += " Data: \"" + aData + "\"";
|
//xSingleString += " Data: \"" + aData + "\"";
|
||||||
Send(xSingleString);
|
//Send(xSingleString);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static unsafe void SendError(string aModule, string aData)
|
public static unsafe void SendError(string aModule, string aData)
|
||||||
{
|
{
|
||||||
string xSingleString;
|
//string xSingleString;
|
||||||
xSingleString = "Error Module: \"" + aModule + "\"";
|
//xSingleString = "Error Module: \"" + aModule + "\"";
|
||||||
xSingleString += " Data: \"" + aData + "\"";
|
//xSingleString += " Data: \"" + aData + "\"";
|
||||||
Send(xSingleString);
|
//Send(xSingleString);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static unsafe void SendNumber(string aModule, string aDescription, uint aNumber, byte aBits)
|
public static unsafe void SendNumber(string aModule, string aDescription, uint aNumber, byte aBits)
|
||||||
{
|
{
|
||||||
string xSingleString;
|
//string xSingleString;
|
||||||
xSingleString = "Number Module: \"" + aModule + "\"";
|
//xSingleString = "Number Module: \"" + aModule + "\"";
|
||||||
xSingleString += " Description: \"" + aDescription + "\"";
|
//xSingleString += " Description: \"" + aDescription + "\"";
|
||||||
xSingleString += " Number: \"" + CreateNumber(aNumber, aBits) + "\"";
|
//xSingleString += " Number: \"" + CreateNumber(aNumber, aBits) + "\"";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static unsafe void WriteNumber(uint aNumber, byte aBits)
|
public static unsafe void WriteNumber(uint aNumber, byte aBits)
|
||||||
|
|
@ -57,74 +57,75 @@ namespace Cosmos.Debug {
|
||||||
|
|
||||||
public static unsafe string CreateNumber(uint aNumber, byte aBits, bool aWritePrefix)
|
public static unsafe string CreateNumber(uint aNumber, byte aBits, bool aWritePrefix)
|
||||||
{
|
{
|
||||||
string xNumberString = null;
|
return "Cosmos.Debug.Debugger.CreateNumber(aNumber, aBits, aWritePrefix) not implemented";
|
||||||
uint xValue = aNumber;
|
//string xNumberString = null;
|
||||||
byte xCurrentBits = aBits;
|
//uint xValue = aNumber;
|
||||||
if (aWritePrefix)
|
//byte xCurrentBits = aBits;
|
||||||
{
|
//if (aWritePrefix)
|
||||||
xNumberString += "0x";
|
//{
|
||||||
}
|
// xNumberString += "0x";
|
||||||
while (xCurrentBits >= 4)
|
//}
|
||||||
{
|
//while (xCurrentBits >= 4)
|
||||||
xCurrentBits -= 4;
|
//{
|
||||||
byte xCurrentDigit = (byte)((xValue >> xCurrentBits) & 0xF);
|
// xCurrentBits -= 4;
|
||||||
string xDigitString = null;
|
// byte xCurrentDigit = (byte)((xValue >> xCurrentBits) & 0xF);
|
||||||
switch (xCurrentDigit)
|
// string xDigitString = null;
|
||||||
{
|
// switch (xCurrentDigit)
|
||||||
case 0:
|
// {
|
||||||
xDigitString = "0";
|
// case 0:
|
||||||
goto default;
|
// xDigitString = "0";
|
||||||
case 1:
|
// goto default;
|
||||||
xDigitString = "1";
|
// case 1:
|
||||||
goto default;
|
// xDigitString = "1";
|
||||||
case 2:
|
// goto default;
|
||||||
xDigitString = "2";
|
// case 2:
|
||||||
goto default;
|
// xDigitString = "2";
|
||||||
case 3:
|
// goto default;
|
||||||
xDigitString = "3";
|
// case 3:
|
||||||
goto default;
|
// xDigitString = "3";
|
||||||
case 4:
|
// goto default;
|
||||||
xDigitString = "4";
|
// case 4:
|
||||||
goto default;
|
// xDigitString = "4";
|
||||||
case 5:
|
// goto default;
|
||||||
xDigitString = "5";
|
// case 5:
|
||||||
goto default;
|
// xDigitString = "5";
|
||||||
case 6:
|
// goto default;
|
||||||
xDigitString = "6";
|
// case 6:
|
||||||
goto default;
|
// xDigitString = "6";
|
||||||
case 7:
|
// goto default;
|
||||||
xDigitString = "7";
|
// case 7:
|
||||||
goto default;
|
// xDigitString = "7";
|
||||||
case 8:
|
// goto default;
|
||||||
xDigitString = "8";
|
// case 8:
|
||||||
goto default;
|
// xDigitString = "8";
|
||||||
case 9:
|
// goto default;
|
||||||
xDigitString = "9";
|
// case 9:
|
||||||
goto default;
|
// xDigitString = "9";
|
||||||
case 10:
|
// goto default;
|
||||||
xDigitString = "A";
|
// case 10:
|
||||||
goto default;
|
// xDigitString = "A";
|
||||||
case 11:
|
// goto default;
|
||||||
xDigitString = "B";
|
// case 11:
|
||||||
goto default;
|
// xDigitString = "B";
|
||||||
case 12:
|
// goto default;
|
||||||
xDigitString = "C";
|
// case 12:
|
||||||
goto default;
|
// xDigitString = "C";
|
||||||
case 13:
|
// goto default;
|
||||||
xDigitString = "D";
|
// case 13:
|
||||||
goto default;
|
// xDigitString = "D";
|
||||||
case 14:
|
// goto default;
|
||||||
xDigitString = "E";
|
// case 14:
|
||||||
goto default;
|
// xDigitString = "E";
|
||||||
case 15:
|
// goto default;
|
||||||
xDigitString = "F";
|
// case 15:
|
||||||
goto default;
|
// xDigitString = "F";
|
||||||
default:
|
// goto default;
|
||||||
xNumberString += xDigitString;
|
// default:
|
||||||
break;
|
// xNumberString += xDigitString;
|
||||||
}
|
// break;
|
||||||
}
|
// }
|
||||||
return xNumberString;
|
//}
|
||||||
|
//return xNumberString;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static unsafe void WriteBinary(string aModule, string aMessage, byte[] aValue)
|
public static unsafe void WriteBinary(string aModule, string aMessage, byte[] aValue)
|
||||||
|
|
@ -134,30 +135,30 @@ namespace Cosmos.Debug {
|
||||||
|
|
||||||
public static unsafe void WriteBinary(string aModule, string aMessage, byte[] aValue, int aIndex, int aLength)
|
public static unsafe void WriteBinary(string aModule, string aMessage, byte[] aValue, int aIndex, int aLength)
|
||||||
{
|
{
|
||||||
string xSingleString;
|
//string xSingleString;
|
||||||
xSingleString = "Binary Module = \"" + aModule + "\"";
|
//xSingleString = "Binary Module = \"" + aModule + "\"";
|
||||||
xSingleString += " Message = " + aMessage + "\"";
|
//xSingleString += " Message = " + aMessage + "\"";
|
||||||
xSingleString += " Value = \"";
|
//xSingleString += " Value = \"";
|
||||||
for (int i = 0; i < aLength; i++)
|
//for (int i = 0; i < aLength; i++)
|
||||||
{
|
//{
|
||||||
xSingleString += CreateNumber(aValue[aIndex + i], 8, false);
|
// xSingleString += CreateNumber(aValue[aIndex + i], 8, false);
|
||||||
}
|
//}
|
||||||
xSingleString += "\"";
|
//xSingleString += "\"";
|
||||||
Send(xSingleString);
|
//Send(xSingleString);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static unsafe void WriteBinary(string aModule, string aMessage, byte* aValue, int aIndex, int aLength)
|
public static unsafe void WriteBinary(string aModule, string aMessage, byte* aValue, int aIndex, int aLength)
|
||||||
{
|
{
|
||||||
string xSingleString;
|
//string xSingleString;
|
||||||
xSingleString = "Binary Module = \"" + aModule + "\"";
|
//xSingleString = "Binary Module = \"" + aModule + "\"";
|
||||||
xSingleString += " Message = " + aMessage + "\"";
|
//xSingleString += " Message = " + aMessage + "\"";
|
||||||
xSingleString += " Value = \"";
|
//xSingleString += " Value = \"";
|
||||||
for (int i = 0; i < aLength; i++)
|
//for (int i = 0; i < aLength; i++)
|
||||||
{
|
//{
|
||||||
xSingleString += CreateNumber(aValue[aIndex + i], 8, false);
|
// xSingleString += CreateNumber(aValue[aIndex + i], 8, false);
|
||||||
}
|
//}
|
||||||
xSingleString += "\"";
|
//xSingleString += "\"";
|
||||||
Send(xSingleString);
|
//Send(xSingleString);
|
||||||
}
|
}
|
||||||
|
|
||||||
public unsafe static void ViewMemory()
|
public unsafe static void ViewMemory()
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
<Framework>MicrosoftNET</Framework>
|
<Framework>MicrosoftNET</Framework>
|
||||||
<UseInternalAssembler>False</UseInternalAssembler>
|
<UseInternalAssembler>False</UseInternalAssembler>
|
||||||
<DebugMode>Source</DebugMode>
|
<DebugMode>Source</DebugMode>
|
||||||
<EnableGDB>False</EnableGDB>
|
<EnableGDB>True</EnableGDB>
|
||||||
<TraceMode>
|
<TraceMode>
|
||||||
</TraceMode>
|
</TraceMode>
|
||||||
<VMWareFlavor>Workstation</VMWareFlavor>
|
<VMWareFlavor>Workstation</VMWareFlavor>
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,9 @@ namespace BreakpointsKernel
|
||||||
Console.WriteLine("3 Cosmos booted successfully. Type a line of text to get it echoed back.");
|
Console.WriteLine("3 Cosmos booted successfully. Type a line of text to get it echoed back.");
|
||||||
Debugger.Break();
|
Debugger.Break();
|
||||||
Console.WriteLine("Test");
|
Console.WriteLine("Test");
|
||||||
while (true) {
|
|
||||||
|
while (true)
|
||||||
|
{
|
||||||
Console.Write("Input: ");
|
Console.Write("Input: ");
|
||||||
string xResult = Console.ReadLine();
|
string xResult = Console.ReadLine();
|
||||||
Console.Write("Text typed: ");
|
Console.Write("Text typed: ");
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue