[comp.sys.amiga.hardware] PLEXUS UNIX BOX and Amiga

gilgalad@caen.engin.umich.edu (Ralph Seguin) (10/03/90)

Hi.  I am about to acquire a PLEXUS 68000 based UNIX box running
Sys V.2 (yech, I know 8-).  I have several questions.
1:  Can I get something akin to DNET to compile on this beast?
2:  Can I get an ethernet board for it?
3:  It has 8 serial ports, so I'm hoping to get SLIP on it.
4:  Any other info anybody may have about this box.

I know that DNET won't compile since V.2 doesn't have sockets.

			Thanks, Ralph


gilgalad@dip.eecs.umich.edu       gilgalad@zip.eecs.umich.edu
gilgalad@caen.engin.umich.edu     Ralph_Seguin@ub.cc.umich.edu
gilgalad@sparky.eecs.umich.edu    USER6TUN@UMICHUB.BITNET

Ralph Seguin		| Drinking a pan-galactic gargle blaster is
536 South Forest	| like being struck over the head by a large
Apartment 915		| brick of gold with a lemon wrapped around it.
Ann Arbor, MI 48104	|		- Zaphod Beeblebrox
(313) 662-4805

david@twg.com (David S. Herron) (10/06/90)

In article <1990Oct3.043213.18022@caen.engin.umich.edu> gilgalad@caen.engin.umich.edu (Ralph Seguin) writes:
>Hi.  I am about to acquire a PLEXUS 68000 based UNIX box running
>Sys V.2 (yech, I know 8-).  I have several questions.
>1:  Can I get something akin to DNET to compile on this beast?

Not very likely .. the reason DNET requires sockets is so that it
can avoid the "blocking" (i.e. hang-until-a-character-arrives) that normally
happens on Unix.  There normally isn't a way to specify that an
I/O channel is able to do asynchronous reads or writes in Unix .. arguably
a lack in its design.

The way select() helps is that it lets the program check the port without
hanging, or to hang for a little while, or to return when *any* I/O
descriptor has characters or any reasonable combination of the above.
System V has never had this, except through add-in packages from
various vendors (ahem) add-in TCP/IP packages :-).  System V r4 will
(I think, haven't read the docs on it yet) have a socket interface in
the native system.  But that's neither here nor there ..

SysVr2 simply didn't have anything similar.  In r3+streams you have
this system call which looks promising: poll().  But it only works
on a "stream", and doesn't work on a real tty device even though the
tty drivers had become streams based.  The interface at the /dev/ttynn
level had gotten the streams-isms stripped away, I suppose.  Sigh..

The closest you get with r2 is to set the VTIM type parameters
using stty (or ioctl() if you're speaking C at the OS).

>2:  Can I get an ethernet board for it?

mebbe tho it might be a bit hard to find one since that machine
probably isn't in production ...

>3:  It has 8 serial ports, so I'm hoping to get SLIP on it.

Plan on porting TCP/IP on your own.  If'n you do port it on your
own you can maybe shove a real select() into it.  On the other hand
I've read through the source for TWG/TCP for 7300/3b1's (a SysVr2 box
based on 68010, should be some similarity to your Plexus) .. All the
code for doing select() on a tty is commented out -- I haven't read
closely enough to see *why* but I suspect that some niggling detail
in the kernel architecture on SysV doesn't support this.  I would
suggest working back and forth between Bach's book on SysV internals
and Karels book on 4.3BSD internals ;-).


Hope this helps ...

[response is in public since I've seen other similar queries in the past]

	David
-- 
<- David Herron, an MMDF & WIN/MHS guy, <david@twg.com>
<- Formerly: David Herron -- NonResident E-Mail Hack <david@ms.uky.edu>
<-
<- Remember:  On System V it's "tar xovf", not "tar xvf"!

peter@sugar.hackercorp.com (Peter da Silva) (10/06/90)

In article <8032@gollum.twg.com> david@twg.com (David S. Herron) writes:
> SysVr2 simply didn't have anything similar.  In r3+streams you have
> this system call which looks promising: poll().  But it only works
> on a "stream", and doesn't work on a real tty device even though the
> tty drivers had become streams based.

As of R3.2.2 the TTY drivers are still not streams based. :-<

One of these days they'll all conform to POSIX.4 and have *real* async
I/O with none of this special-cases-for-streams-and-sockets crapola.

To do the equivalent of a select() on a TTY on System V, you have to open
it O_NDELAY and busy-wait, or set a timeout in V_TIME/V_MIN in the termio
structure and busy-wait :-<. It can be done, but it's a pain.
-- 
Peter da Silva.   `-_-'
<peter@sugar.hackercorp.com>.

filbo@gorn.santa-cruz.ca.us (Bela Lubkin) (10/08/90)

In <8032@gollum.twg.com> David S. Herron wrote in reply to Ralph Seguin:
[Difficult to port DNET to SysV UNIX because you need select() to poll a]
[serial port without hanging until the next character is received.      ]

On SysV, you might fork a coprocess to read the serial port, then
communicate with it through a pipe opened with O_NDELAY.  There are
probably about 5 other more-or-less reasonable ways to do it.  This
should not be an insurmountable obstacle...

This is arguably not an Amiga topic, but if it will get DNET supported
under SysV, it will benefit a lot of Amiga users.  I've redirected
discussion to comp.sys.amiga.tech since this has nothing to do with
hardware.

Bela Lubkin   * *   //  filbo@gorn.santa-cruz.ca.us   Why do I mention CI$??
     @      * *    //  belal@sco.com  ...ucbvax!ucscc!{gorn!filbo,sco!belal}
R Pentomino   *  \X/  Filbo @ Pyrzqxgl +1 408-476-4633, XBBS +1 408-476-4945

jdickson@jato.jpl.nasa.gov (Jeff Dickson) (10/09/90)

Newsgroups: comp.sys.amiga.tech
Subject: MOUNT
Summary: 
Expires: 
References:
Sender: 
Reply-To: jdickson@jato.Jpl.Nasa.Gov (Jeff Dickson)
Followup-To: 
Distribution: na
Organization: Jet Propulsion Laboratory, Pasadena, CA
Keywords: 

	I have a filesystem that I wrote and works very well. Soon I plan
to market it. I never came accross how to use the Mount command, so I put
together a roundabout way of accomplishing the same thing. My way works
fine, but I'd prefer to do it the documented way.

	I have the very first edition of the AmigaDOS Manual by Bantam
books. It touches briefly on how filesystems and devices are begun. 
There seem to be alot of descrepencies, because for one the Mount com-
mand didn't even exist when it was written. I'm familar enough with
AmigaDOS internals to weed stuff like this out. 

	Anyhow, it is talked about a message is sent to the handler. This
message contains the base of the Device list, the startup text stuff,
etc. What is the format of this message? And I suppose if a message is
sent to the handler on startup that means that a message port has already
been created. How does the handler learn of this port ? 

			Really appreciate any tips on this,
						Jeff

--------------------------------------------------------------------------
Jeff S. Dickson				jdickson@zook.jpl.nasa.gov