Date: Sun, 18 May 2008 10:09:45 +0100
From: Gordon JC Pearce
Aha, I disagree. You can't get at the innards of
the 6120 at all,
because it's a chip. If you want to get at the innards of an emulator
then you can, although how accurately the emulator models the logic of
the -8 might be an issue (my emulator doesn't model it at all, but
largely does its own thing).
I was going to reply along the same lines, but I felt it might not
have convinced my audience. Back in the old days of 22Nice, we added
an emulator feature that allowed a user to write his own port-mapping
code and include it with each program, allowing each individual
program to have its own simulated peripherals, if desired.
This was no accident or a "feature for feature's sake". A customer
was replacing a controller on a large piece of CNC machine tooling
(they made trailers for large trucks). Communication with the
machine was largely RS-232, so that was no problem with the PC, but
the controller application directly manipulated a UARTs registers.
We rolled an emulator overlay for the UART that functionally mapped
the program's accesses to the PC's 8250-type UART. It worked right
on the first try and the customer was happy for many years--and we
changed not a byte of code in the original program, nor our basic
product.
That's the beauty of emulation--if the original box uses a bizarre
interface or unobtainium chip, you can emulate it. MUCH easier than
trying to do the same in hardware. Modern PCs tend to have
sufficient excess horsepower that you can emulate just about any 80's
era device without impacting performance.
But, as I've said, I felt that I wasn't going to sway the hard-bitten
hardware folks. As you pointed out, the line between hardware and
software is getting very blurry indeed. Cheap, fast,
microcontrollers now give a new spin to tasks that would have
normally been accomplished with a pile of discrete logic and can now
be done with little more than software.
Cheers,
Chuck