A PC's parallel port CANNOT emulate an HPIB bus without a good deal of
external hardware, and
if you did the performance would be terrible, nearly unusable.
Why not simply get a National Instruments HPIB card and write some code
to turn a standard PC into
your emulated HPIB stroage system?
No hardware needs to be fabricated, its a fairly simply matter of
writing some code so some part of the PC's
hard disk is used to emulate the HPIB disk.
Also HPIB disks are VERY common, and also VERY reliable. Ask on this
listy and you will hear stories of
CS/80 drives from HP being underwater, thrown into dumpsters, and other
suffering forms of abuse without
any problems at all.
As for capacity issues, many HPIB drives (like HP's CS/80 drives) have a
rather low limit (in modern terms) on
their maximum capacity due to the limited disk address field size.
Modern devices like ATA (IDE) drives are many
times larger than this maximim capacity. So a true emulation of these
devices (needed for driver compatibility)
will not be able to use much of the modern drives actual capacity.
Given that you can find a working CS/80 drive on eBay for short money,
is this project worth doing?
If so, I'd have to reccomend using a commercial HPIB interface board and
some code running on a PC rather
than developing any custom hardware. It pains me to say this, as I'm a
hardware engineer, but sometimes the
best solution is not to design any hardware. This is exactly such a case.
Vassilis Prevelakis wrote:
I have been working for some time on a pet project to
make a mass
storage emulator for HP-IB systems. Given the massive improvement in
capacity that has taken place the past 10 years, most mass storage
devices from the 80s look pathetic.
For example, take the HP 9133H which is a massive unit that can store
about 5Mb. Even the compact flash cards that are bundled with popular
digital cameras can do better than that.
I started my project by trying to utilize the HP-IB drivers that are
part of the NetBSD Open Source Unix clone (which runs on the HP 300
series), but I have come to realize that the HP-IB cards are the
creating a new legacy issue.
Open Source drivers for HP-IB cards are very hard to find and thus any
solution that depends on them becomes de facto legacy (once the card
itself is no longer sold, finding the card becomes almost as difficult
as finding HP 9133H drives).
So I looked hard at the HP-IB bus itself (using the schematics from the
Series 80 adaptor) and it looks like a simple parallel bus. So why use
a custom card, if the PC parallel port can be adapted to drive an HP-IB
bus.
If the PC parallel port can be used, then I can port the NetBSD drivers
to use the parallel port, rather than the HP 300 HP-IB interface. The
NetBSD drivers also support SS-80 compatible mass storage devices,
which means that the implementation can be verified against a real
HP-IB mass storage device. If this works than the drivers will have to
be modified so that they become a mass storage "server" rather than a
"client" (i.e. a device that responds to mass storage requests, instead
of a computer that issues such requests).
Small i386 compatible single board computers are easily procurable and
embedded versions of *BSD and Linux systems run on these SBCs (they
even accept compact flash cards or more traditional hard disks). This
means that we can make a mass storage device that can physically fit
inside the cabinet of the main unit (e.g. Integral PC, or HP-87).
Anybody willing to provide assistance to this effort, is welcome to
contact me. However, I think that going through this list may be
more beneficial so that other people can contribute in the technical
discussion.
**vp