I've been building an 8 bit microcomputer around the classic Intel 8085 processor. I found this excellent open source program, GNUSim8085, a "graphical simulator, assembler and debugger for the Intel 8085 microprocessor in Linux and Windows."
This program was extremely useful for writing and debugging my operating system. Unfortunately it had no ability to assemble the program to a binary in order to burn it to ROM, forcing me to hand assemble my programs in a hex editor. To fix this I wrote a parsing tool in C. It takes a GNUSim8085 assembler listing and strips out the hex data and OP codes to a binary file so that it can be written to a PROM chip.