Scott,
I have a simple 8088-based SBC design wired up and
waiting for motivation to
put together some test firmware. The main thing that has kept me from bringing
it up is the difficulty in getting x86-based machine language development tools
going. I'm used to little 4 and 8-bit assemblers where you can plop down a few
ORG statements and have it all resident in a ROM, and almost all the x86 asm
tools start from the assumption you are running on DOS and have no direct control
of the memory map.
My ASM86 assembler is a "bare metal" assembler, it uses ORG, and outputs Intel
(or
Motorola) hex format download records (which can be converted by my HEXFMT into a
pure binary file if that is your preference). It does not assume any OS, and does
not require any special/weird setup sequences - just translates instructions into
opcodes. ASM86 is a simple command line .EXE, runs under DOS up, does not require
any installation or other such stuff - very easy to get going.
I also have two 8086 debuggers that go with it:
HDM86 is a "Hardware Debug Monitor" it gives you basic read/write/dump, but the
nice thing about it is that it need NO memory - as long as you have the ROM and
UART working, you can run it (even if you don't have the UART working, you can
use it's polling to debug, so all you really need to get started is the ROM).
Takes about 1.25k of ROM
MON86 is a much more powerful monitor, which features all the goodies, memory and
register dump/edit, breakpoints, single-step, disassembler, lots more... (It does
need 160 bytes of RAM and about 3k of ROM).
These tools should be all that you need to get your 8088 system up and running,
and I'll be happy to send them to ya - contact me off-list if you would like them.
I also have a decent disassembler for the 8086 instruction set which will let you
define memory areas/types, build symbol tables for you etc. Also for "bare
metal",
but it doesn't sound like you will need this as you are writing "all new"
code.
In case you are also a 'C' programmer, I also have a 8086 "bare metal"
version of
my Micro-C compiler - much of what I said about the assembler applies to this (in
fact, the C compiler produces assembly source which it them runs through the ASM86
assembler).
FWIW, I have similar assemblers for a couple dozen other small processor
architectures, as well as monitors, disassemblers and C compilers for many of
them.
Regards,
Dave
--
dave04a (at) Dave Dunfield
dunfield (dot) Firmware development services & tools:
www.dunfield.com
com Collector of vintage computing equipment:
http://www.parse.com/~ddunfield/museum/index.html