Tom Stepleton is the guy running this project -- I lent him my Lisa for his
work. Here's a wrap-up summary he sent me on the project just before he
returned the system to me.
-- Tony
----------------------
Here's a summary of what I've done. Addressing the unreliability of
the
wiring in the last attempt, I completely rewired the prototyping
board and
switched to a single 84-pin MAX 7000 chip and adapter instead of the
Altera experimentation board used in class. Physically speaking, the
circuit is complete.
I was able to get the circuit to succesfully dupe the Lisa into
believing
that there really was a ProFile attached to the port. Unfortunately,
there
is really no interim step between that and full functionality. I
came a
long way, but I didn't make it. Here's what I managed to do:
Linux side:
On a machine borrowed from Professor Maxwell, I installed a
secondary
Linux kernel - version 2.4.0-test4 - which provides the latest
facilities
for manipulating the parallel port from a userland program (read
more at
http://people.redhat.com/twaugh/parport/html/parportguide.html).
This is
a really neat driver, incidentally, although it is still in
development.
Using this driver, I created MrProfile, a rudimentary ProFile
emulation
program. MrProfile currently responds to interrupts generated by the
adapter, but all calls to read() extract zero bytes of data from the
port. Whether this is due to poor programming, the driver, or a
malprogrammed board is not yet clear.
Adapter side:
Using what I learned in making the program to fake a ProFile's
existence,
I completely reprogrammed the full-featured version of the adapter
circuit. The philosophy behind the device's role has not changed
much from
before, but the code has been altered quite a bit to suit the whims
of
Altera.
What happens:
Activity on the Lisa side causes the adapter to alert the PC with an
interrupt. The PC fails to read any data from the parallel port; the
adapter sits waiting for something to happen, and the Lisa
eventually
times out. There are three reasons for why this is happening, now
that
poor connectivity has been ruled out (via multimeter):
metastability,
flaws in parallel port driver, and poor assumptions about the EPP
parallel
port standard. I don't think it's the first, because the problem is
always
the same. I feel it's about even odds between the second and third
choices.
The future:
I'm not giving up, but the likelihood that I'll be able to put real
work
into it this fall is not all that great. Just in case the hardware
has
been programmed correctly, I'm taking the prototype board home to my
two
Lisas there (hope this is OK, Bruce), where I'll try getting it to
work
with an old Pentium 90. Even if the hardware is slightly faulty, the
low-level programming capability of the parallel port driver
suggests that
I will be able to get around it. However, if I've made an error on
the
Lisa side, I'll be out of luck. I'll see what options I have and
then make
decisions. I'll also turn over all of my code to the folks on the
Lisa and
Lisa Emulator mailing lists at
sunder.net and see if they can offer
any
tips.
----------
From: John Lewczyk[SMTP:jlewczyk@his.com]
Reply To: classiccmp(a)classiccmp.org
Sent: Thursday, November 09, 2000 11:16 PM
To: classiccmp(a)classiccmp.org
Subject: Lisa Profile Drive emulation on a PC
There was someone trying to interface a Lisa to a PC, making the PC act
like a
Profile drive. That college class project didn't get completed, but there
is a
bunch of info on the project, the Profile and Lisa parallel port at:
http://www.cs.swarthmore.edu/~tom/cs23/final/
I thought that this was a terrific project, as Profile drives are become
rarer
and they will probably all break down before the Lisa's do. Making a PC
act
like a Profile is a great solution. Unfortunately, I have never received
a
response from the folks at swarthmore college and suspect the project is
abandoned. :-(
Anyone know what happened to the project, or are there others who have
done
this? I worry about my profile drives dying before my Lisa and would love
to
have a PC as a backup. If no one (is doing/has done) this, I may take my
own
shot at it.
John
jlewczyk(a)his.com