Call/JumpIf(EAX == 0x04, ....)

Can do reg = reg + 4 - define the + overload as a type that can then be reimplicitly converted to a register, or whatever type goes inside Memory[x]

Make it so X# doesnt require the 32 and that it checks register size Memory[EBX, 32] = ECX;

Register.cs - public void Push() { // TODO: This emits Push dword which generates warnings about dword being ignored new Push { DestinationReg = GetId() }; } |
AL.Push does not work at all.

EAX = Memory["lable"] does same as addressof.. you have to specify size... size should be infreered and never use teh value of the label

Routines

Globals

Locals

Name referencing other routines

avoid il rewriting =could really do some neat things, but would really comlicate things.

CosmosAssembler.cs - 2 spots
Debugger.cs - public class DebuggerAsm : CodeBlock