mirror of
https://github.com/danbulant/Cosmos
synced 2026-06-09 01:32:58 +00:00
Doesnt crash on debug write, but still transmitting dummy data for now.
This commit is contained in:
parent
2c66d2d427
commit
5ab6bf12c2
5 changed files with 14 additions and 4 deletions
|
|
@ -32,7 +32,7 @@ namespace Indy.IL2CPU.Assembler.X86 {
|
||||||
|
|
||||||
public override string ToString() {
|
public override string ToString() {
|
||||||
if (String.IsNullOrEmpty(Size)) {
|
if (String.IsNullOrEmpty(Size)) {
|
||||||
return "mov " + Destination + "," + Source;
|
return "mov " + Destination + ", " + Source;
|
||||||
} else {
|
} else {
|
||||||
return "mov " + Size + " " + Destination + ", " + Source;
|
return "mov " + Size + " " + Destination + ", " + Source;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -120,7 +120,7 @@ namespace Indy.IL2CPU.Assembler.X86 {
|
||||||
//TODO: Change WriteByteToComPort to take an address to write to in a register
|
//TODO: Change WriteByteToComPort to take an address to write to in a register
|
||||||
Call("WriteByteToComPort");
|
Call("WriteByteToComPort");
|
||||||
new X86.Dec("ECX");
|
new X86.Dec("ECX");
|
||||||
new X86.Inc("ESI");
|
//new X86.Inc("ESI");
|
||||||
Jump("DebugStub_SendTextWriteChar");
|
Jump("DebugStub_SendTextWriteChar");
|
||||||
|
|
||||||
Label = "DebugStub_SendTextExit";
|
Label = "DebugStub_SendTextExit";
|
||||||
|
|
|
||||||
|
|
@ -21,5 +21,10 @@ namespace Indy.IL2CPU.Assembler.X86.X {
|
||||||
Instance.Move(aValue.ToString());
|
Instance.Move(aValue.ToString());
|
||||||
return Instance;
|
return Instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static implicit operator RegisterEAX(RegisterECX aValue) {
|
||||||
|
Instance.Move(aValue.ToString());
|
||||||
|
return Instance;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,5 +21,10 @@ namespace Indy.IL2CPU.Assembler.X86.X {
|
||||||
Instance.Move(aValue.ToString());
|
Instance.Move(aValue.ToString());
|
||||||
return Instance;
|
return Instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static implicit operator RegisterECX(RegisterEAX aValue) {
|
||||||
|
Instance.Move(aValue.ToString());
|
||||||
|
return Instance;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,9 @@ namespace Indy.IL2CPU.Assembler.X86.X {
|
||||||
public RegisterEAX EAX = RegisterEAX.Instance;
|
public RegisterEAX EAX = RegisterEAX.Instance;
|
||||||
public RegisterAL AL = RegisterAL.Instance;
|
public RegisterAL AL = RegisterAL.Instance;
|
||||||
|
|
||||||
public RegisterEAX ECX = RegisterEAX.Instance;
|
public RegisterECX ECX = RegisterECX.Instance;
|
||||||
|
|
||||||
public RegisterEAX EDX = RegisterEAX.Instance;
|
public RegisterEDX EDX = RegisterEDX.Instance;
|
||||||
public RegisterDX DX = RegisterDX.Instance;
|
public RegisterDX DX = RegisterDX.Instance;
|
||||||
|
|
||||||
public RegisterESP ESP = RegisterESP.Instance;
|
public RegisterESP ESP = RegisterESP.Instance;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue