[pups] Help! Standalone DZ-11 driver
Robin Birch
robin at ruffnready.co.uk
Tue Jan 30 00:11:33 AEST 2001
Warren,
Why not do this as a terminal emulator that can switch into emulating a
tape drive by some start/stop messaging using the console device. You
could upload a simple bootstrap using ODT that could then read a more
complex boot driver in. If you use the console then that shoud be
universal across all PDP11s.
Robin
In message <200101290124.f0T1Ois26299 at henry.cs.adfa.edu.au>, Warren
Toomey <wkt at henry.cs.adfa.edu.au> writes
>Hi all,
> I'm working on a new version of my Vtserver, which allows a PDP-11
>with no tape drive to boot from a Unix/Linux server (via serial cable) and
>install a UNIX. See ftp://minnie.cs.adfa.edu.au/pub/PDP-11/Vtserver
>
>At present I'm working on a new version which uses the 2.11BSD boot code
>so as to support more disk drives. The work in progress is at:
>http://minnie.cs.adfa.edu.au/Vtserver. At present it's not usable
>unless you have a PDP-11/45.
>
>I've got a potential user with an 11/34, two RK05s and a DZ-11. I can't
>find any details of DZ-11 here in my peripherals handbooks, and the 2.11
>kernel drivers are a bit too complicated to read.
>
>My existing KL-11 driver is below. Can someone come up with a standalone
>equivalent for a DZ-11, or point me at some docs?
>
>I'll be away from 1st to 14th Feb, so there may be some delays in
>responding.
>
>Thanks all,
> Warren
>
>
>struct vtdevice {
> int rcsr,rbuf;
> int tcsr,tbuf;
>};
>
>#define NVT 2
>struct vtdevice *VTcsr[NVT + 1] = {
> (struct vtdevice *)0176500, /* We use VTcsr[0] unit 1 */
> (struct vtdevice *)0,
> (struct vtdevice *)-1
>};
>
>/* Get a character, or timeout and return with hitim zero */
>char vtgetc()
>{
> register c;
>
> VTcsr[0]->rcsr = 1; hitim=3; lotim=65535;
>
> while ((VTcsr[0]->rcsr&0200)==0) {
> lotim--;
> if (lotim==0) hitim--;
> if (hitim==0) { putchar('t'); return(0); }
> }
> c = VTcsr[0]->rbuf; return(c);
>}
>
>vtputc(c)
>register c;
>{
> register s;
>
> while((VTcsr[0]->tcsr&0200) == 0) ;
> s = VTcsr[0]->tcsr;
> VTcsr[0]->tcsr = 0; VTcsr[0]->tbuf = c; VTcsr[0]->tcsr = s;
>}
____________________________________________________________________
Robin Birch robin at ruffnready.co.uk
M1ASU/2E0ARJ/M5ABD Old computers and radios always welcome
More information about the TUHS
mailing list