I wrote one a long time ago. It is as simple as getting the x86 assembler ref guide from Intel, and writing the bytes to a .com file (for windows). I wish i could find my old forum post I made on it. It was written in D++. Just goes to show you can do it in any language. Just tokenize your string and translate it.