[comp.os.minix] Problems with RS232 stuff in Atari Minix

powers@devcim.dec.com (Bill Powers HLO2-1/B07 DTN 225-7094) (01/12/89)

     I have installed the new files/patches for rs232 & midi support for the
Atari ST version of minix.  At first they didn't compile, cause there was
stuff in them for the bms clock, and I don't have one of those.  I removed
that stuff (I think I got it all, at least everything compiles/links with
no problems) and added the entry 101 to the /etc/ttys file, and rebooted.
The system appears to be using the RS232 stuff, my system has slowed down
considerably, but when I do a CTRL-ALT-F1, I only see one process who is
running sh.  I am new to the UNIX evironment, but as I understand how it
should be, is a second process running sh should have been created for the
serial port.  Also I tried running cu, and the system responded with 
cannot execute.  Does this mean the system thinks it's not an executable
file, or that cu actually started running, but failed cause it couldn't
do something to maybe the serial port?  Any pointers to where I might look
to find out the problem, and what I might be looking for?

     I think the midi stuff is working, I don't know absolutly for sure,
but at least when I run Minix, and turn on my synth, Minix no longer
crashes when I play. Do you think it was trying to tell me something? 8-)

thanks in advance

Bill_who_understands_VMS_but_is_having_a_hard_time_with_Minix Powers

#include disclaimer.h
/*******************************************************************************
* If you had a VAXstation like me, you would be able to see the incredible 3d  *
* graphics I've inserted at this point, but you don't, so you can't!!!         *
*------------------------------------------------------------------------------*
* all flames to NL: or /dev/null since I use VMS on my VAXstation, and Minix   *
* on my micro.                                                                 *
*------------------------------------------------------------------------------*
* The opinions expressed herein are mine, and mine alone, but they can be made *
* yours if you send $19.95 plus $2.50 S&H to POWERS%DEVCIM.DEC@DECWRL.DEC.COM  *
*******************************************************************************/

hcj@lzaz.ATT.COM (HC Johnson) (01/13/89)

I just seen two articles one for PC one for ST where the author
is changing /etc/ttys and then discussing cu.

THis is how it is (I think).

1. if you want to log into the minix box from the rs232 line:
	then put 101 (ST) or 1?1 (PC) [?= ???] in etc/ttys
2. I never see a login process, its burried in init.  Only after
	the line becomes active, and has logged in (past tense)
	will a sh line show up.
3. CU and any other terminal program cannot be used as long as init
	wants to try to login the line.  To use such a program
	I have to edit /etc/ttys, and reboot!!!

PS. I am about to repost the rs232/midi/bmsclock package.  It has been
	ifdeffed in such a way that you can build any or all that you
	want.

PPS. per character io using rs232 is S L O W ! ! !.  MINIX is not nearly
as fast as TOS.

Howard Johnson
ATT-BL
lzaz!hcj
 

viljanen@kreeta.cs.Helsinki.FI (Lea Viljanen UNIX88) (01/14/89)

In article <366@lzaz.ATT.COM> hcj@lzaz.ATT.COM (HC Johnson) writes:
>
>
>
>I just seen two articles one for PC one for ST where the author
>is changing /etc/ttys and then discussing cu.
>
>THis is how it is (I think).
>
>1. if you want to log into the minix box from the rs232 line:
>	then put 101 (ST) or 1?1 (PC) [?= ???] in etc/ttys

If you want to use a modem thru the RS-port and call out? 
I tried with the original setting (100) and then I tried with 101 too. 
Cu did't work with themat all. ("Cannot open /dev/tty1" or something 
similar).

>3. CU and any other terminal program cannot be used as long as init
>	wants to try to login the line.  To use such a program
>	I have to edit /etc/ttys, and reboot!!!

Something should be done about that.

>PS. I am about to repost the rs232/midi/bmsclock package.  It has been
>	ifdeffed in such a way that you can build any or all that you
>	want.

That would be nice. I don't have the BMS-clock and I tried to delete
all the BMS-stuff from the sources, but (Friday the 13th strikes again)
I forgot the stdmp.c... Now my dump table is a bit weird, but that's life.

>PPS. per character io using rs232 is S L O W ! ! !.  MINIX is not nearly
>as fast as TOS.

I noticed... *SIGH* 

>Howard Johnson
>ATT-BL
>lzaz!hcj
> 


"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Lea 'LadyBug' Viljanen           ____     University of Helsinki, Finland
viljanen@finuha.bitnet       \  / . '     Dept. of Computer Science
viljanen@cs.helsinki.fi       \/  |_      'Small is beautiful'

evans@ditsyda.oz (Bruce Evans) (01/14/89)

In article <366@lzaz.ATT.COM>, hcj@lzaz.ATT.COM (HC Johnson) writes:
> 2. I never see a login process, its burried in init.  Only after

On PC's, there is a login process, but its name is blank.

> 3. CU and any other terminal program cannot be used as long as init
> 	wants to try to login the line.  To use such a program
> 	I have to edit /etc/ttys, and reboot!!!

This is painful. Init should probably reread /etc/ttys and reopen the
tty every time it starts a new login. On Xenix, there are commands
'enable' and 'disable' which as far as I know do nothing but change
the permissions of the ttys. Init can interpret the permissions and
let them override /etc/ttys.

> PPS. per character io using rs232 is S L O W ! ! !.  MINIX is not nearly
> as fast as TOS.

It's not just rs232, single char io is slow on all *ix systems, with
message-passing systems like Minix probably among the slowest. The actual
speed is 10 to 15 millsec on a 5MHz PC. The solution is to do io in blocks.
Minix then goes from much slower than DOS to much faster. Unfortunately,
this is less convenient to program.
-- 
Bruce Evans		evans@ditsyda.oz.au
D

magore@watdcsu.waterloo.edu (Mike Gore, Institute Computer Research - ICR) (01/17/89)

Hi,
	Just a few notes. Re: comments on enable/disable on many unix systems. 
These utilities also send a HUP signal to init and _that_ is what causes init
to reread /etc/ttys. 

	There is a common trick one can do if you want to speed up serial 
I/O - on many older unix systems it's called pseudo-dma. You basically
make a _simple_ block I/O interrupt routine that does serial I/O - then 
transfer whole blocks it collects, or sends, to and from the upper level tty 
task/structures. A block is either N characters or X system clock ticks - 
which ever comes first.  The idea is that it is MUCH faster to transfer 
blocks between tasks [ or install into a queue ] then single characters 
[ nearly the same overhead if done right ] . Note, other then simple 
character I/O the only "complex" task at this lower level is flow control - 
all character transformations, signaling [ say SIGINT in V7,etc ] and even 
echoing are controled from the upper level tty code.  [ When I say echoing I 
don't  mean the actual I/O to the device rather I mean that the ttys routine 
only tansforms the block if nead be and then passes it back to the lower 
level to be sent out. Of course you have to adjust N and X so that the user 
doesn't see the delay. ] This method also has an advantage that you can help 
keep machine dependent code out of the the higher level code. 

Good Luck,

# Mike Gore 
# Institute for Computer Research. ( watmath!mgvax!root - at home )
# These ideas/concepts do not imply views held by the University of Waterloo.