maurice smulders wrote:
I am picking apart the translation the file undergoes
from DOS format to
HPLIF DOS format (with the LIF header) so I can generate a file directly
that way...
lif_utils (<http://www.hpcc.org/datafile/hpil/lif_utils.html>) will do
that nicely. Or at the very least it'll let you extract the contents of
a LIF file and display some information about it. Try 'lifstat',
'lifdir' and 'lifget'.
I've been playing with the .R files and I've got a mostly-working
OBJDUMP work-a-like sorted. It is one hell of a weird format, and the
InvAsm virtual machine is no less weird. I'm starting to wonder if
someone at HP Fort Collins was experimenting with illicit substances at
the time InvAsm was conceived...
Anyway, it's a pretty simple (if unusual) VM. One register (the
accumulator) and a pretty simple instruction set. Add, subtract, AND,
shift and rotate you can do, but forget multiply/divide (unless you feel
like writing them yourself).
The weird bits are (in no particular order) the segmented memory
architecture (it's a Harvard Architecture, Jim, but not as we know it),
fixed-size instructions (hey, kids, it's a 16-bit RISC-a-like), and the
weird disparity between addressable memory zones in different instructions.
Oh, and the Invasm assembler is bugged. Turns out you can make an output
format specification with some truly weird parameters -- very few of
them seem to be checked... :-o
Ah well, it wouldn't be a HP product if it wasn't at least a little bit
weird.
--
Phil.
classiccmp at philpem.me.uk
http://www.philpem.me.uk/