Cosmos.Assembler

Base platform independent project for emitting machine langauge. Currenly only x86 uses this but later ARM etc.

Cosmos.Assembler.XSharp

Higher level x86 assembler. Its paralell to Cosmos.Assembler.x86 as it is meant to be an alternative language although it does rely on and use Cosmos.Assembler.x86.

Cosmos.Assembler.x86

Holds ops for raw assembly. Currently does output to NASM too, but in future the binary and NASM (and X# for output debugging) should be in separate assemblies so the generation / output is seperated from the storage/assembly used by the compiler. Cant be descendant classes because we create new objects directly in code.. Maybe Cosmos.AsmGen.x86.NASM, Binary, etc... and use arrays of typeofs?