ocker@lan.informatik.tu-muenchen.dbp.de (Wolfgang Ocker) (01/10/89)
So here they are, PT(T)Ys for OS-9/68000. During the next days I will
post an adapted version of SCREEN and the diffs for UNIX-Windows.
Please excuse the bad english language in the manual (and send me
a corrected version please, thanks :-)
Have fun,
/// Wolfgang Ocker
---- cut here ---- cut here ---- cut here ---- cut here ---- cut here ----
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of archive 1 (of 1)."
# Contents: README MANIFEST tty__.a pty__.a makefile pty.man ptys.uu
# Wrapped by oskst@recsys on Thu Jan 5 15:04:39 1989
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'README' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(417 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
XPTY driver for OSK
X
XCopyrighted (c) 1988, 1989 by reccoware systems, Wolfgang Ocker, Puchheim.
X
XThis software may not be sold or used for any commercial purposes. If
Xyou want to use it in commercial projects, you must have the written
Xpermission of the author.
X
XWolfgang Ocker
Xc/o reccoware systems
XLochhauserstrasse 35a
XD-8039 Puchheim
XTel. ++49 89 80 77 02
X
Xe-mail: weo@recco, weo%recco@tmpmbx, weo@altger
X
X(weo)
END_OF_FILE
if test 417 -ne `wc -c <'README'`; then
echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(313 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X File Name Archive # Description
X-----------------------------------------------------------
X MANIFEST 1
X README 1
X makefile 1
X pty.man 1
X pty__.a 1
X ptys.uu 1
X tty__.a 1
END_OF_FILE
if test 313 -ne `wc -c <'MANIFEST'`; then
echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'tty__.a' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'tty__.a'\"
else
echo shar: Extracting \"'tty__.a'\" \(268 characters\)
sed "s/^X//" >'tty__.a' <<'END_OF_FILE'
X nam TTY__
X ttl 68000 PTY Client
X use defsfile
X
X* changes to default values
Xpagpause equ ON turn on pause
X* autoecho equ OFF no echo
X use scfdesc.a
X
XPtyNum set 0 pty number (0 .. 31) *** CHANGE HERE! ***
XPtyType set 1 pty type (0 = s-pty, 1 = c-pty)
X
X PTY
X ends
X
END_OF_FILE
if test 268 -ne `wc -c <'tty__.a'`; then
echo shar: \"'tty__.a'\" unpacked with wrong size!
fi
# end of 'tty__.a'
fi
if test -f 'pty__.a' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'pty__.a'\"
else
echo shar: Extracting \"'pty__.a'\" \(766 characters\)
sed "s/^X//" >'pty__.a' <<'END_OF_FILE'
X nam PTY__
X ttl 68000 PTY Server
X use defsfile
X use pty.d
X
X* changes to default values
Xpagpause equ OFF turn off pause
Xautoecho equ OFF no echo
Xbsb equ OFF backspace=BS,SP,BS
Xautolf equ OFF auto line feed
X*C$Bsp equ 0 backspace char
XC$Del equ 0 delete line char
XC$CR equ 0 end of record char
XC$EOF equ 0 end of file char
XC$Rprt equ 0 reprint line char
XC$Rpet equ 0 dup last line char
XC$Paus equ 0 pause char
XC$Intr equ 0 Keyboard Interrupt char
XC$Quit equ 0 Keyboard Quit char
XC$Bsp equ 0 backspace echo char
XC$Bell equ 0 line overflow char
XC$XOn equ 0 Transmit Enable char
XC$XOff equ 0 Transmit Disable char
XC$Tab equ 0 tab character
X
X use scfdesc.a
X
XPtyNum set 0 pty number (0 .. 31) *** CHANGE HERE! ***
XPtyType set 0 pty type (0 = s-pty, 1 = c-pty)
X PTY
X ends
X
END_OF_FILE
if test 766 -ne `wc -c <'pty__.a'`; then
echo shar: \"'pty__.a'\" unpacked with wrong size!
fi
# end of 'pty__.a'
fi
if test -f 'makefile' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'makefile'\"
else
echo shar: Extracting \"'makefile'\" \(2078 characters\)
sed "s/^X//" >'makefile' <<'END_OF_FILE'
XRDIR = RELS
XODIR = ../CMDS/BOOTOBJS
XLIB = -l=/dd/LIB/sys.l
XSCFSTAT = /h0/LIB/scfstat.l
X
X
XPTYS = $(ODIR)/pty \
X $(ODIR)/tty00 $(ODIR)/pty00 $(ODIR)/tty01 $(ODIR)/pty01 \
X $(ODIR)/tty02 $(ODIR)/pty02 $(ODIR)/tty03 $(ODIR)/pty03 \
X $(ODIR)/tty04 $(ODIR)/pty04 $(ODIR)/tty05 $(ODIR)/pty05 \
X $(ODIR)/tty06 $(ODIR)/pty06 $(ODIR)/tty07 $(ODIR)/pty07 \
X $(ODIR)/tty08 $(ODIR)/pty08 $(ODIR)/tty09 $(ODIR)/pty09
X
XPTYMODS = pty tty00 pty00 tty01 pty01 tty02 pty02 tty03 pty03 \
X tty04 pty04 tty05 pty05 tty06 pty06 tty07 pty07 tty08 pty08 \
X tty09 pty09
X
Xall.date: $(ODIR)/ptys
X @touch all.date
X @echo "ALL DONE"
X
X$(ODIR)/ptys: $(PTYS)
X chd $(ODIR); merge $(PTYMODS) >-ptys
X
X
X$(ODIR)/pty: pty.r
X chd $(RDIR); l68 -go=$@ $(SCFSTAT) pty.r $(LIB)
X
X$(ODIR)/tty00: tty00.r
X chd $(RDIR); l68 -o=$@ tty00.r $(LIB)
X
X$(ODIR)/pty00: pty00.r
X chd $(RDIR); l68 -o=$@ pty00.r $(LIB)
X
X$(ODIR)/tty01: tty01.r
X chd $(RDIR); l68 -o=$@ tty01.r $(LIB)
X
X$(ODIR)/pty01: pty01.r
X chd $(RDIR); l68 -o=$@ pty01.r $(LIB)
X
X$(ODIR)/tty02: tty02.r
X chd $(RDIR); l68 -o=$@ tty02.r $(LIB)
X
X$(ODIR)/pty02: pty02.r
X chd $(RDIR); l68 -o=$@ pty02.r $(LIB)
X
X$(ODIR)/tty03: tty03.r
X chd $(RDIR); l68 -o=$@ tty03.r $(LIB)
X
X$(ODIR)/pty03: pty03.r
X chd $(RDIR); l68 -o=$@ pty03.r $(LIB)
X
X$(ODIR)/tty04: tty04.r
X chd $(RDIR); l68 -o=$@ tty04.r $(LIB)
X
X$(ODIR)/pty04: pty04.r
X chd $(RDIR); l68 -o=$@ pty04.r $(LIB)
X
X$(ODIR)/tty05: tty05.r
X chd $(RDIR); l68 -o=$@ tty05.r $(LIB)
X
X$(ODIR)/pty05: pty05.r
X chd $(RDIR); l68 -o=$@ pty05.r $(LIB)
X
X$(ODIR)/tty06: tty06.r
X chd $(RDIR); l68 -o=$@ tty06.r $(LIB)
X
X$(ODIR)/pty06: pty06.r
X chd $(RDIR); l68 -o=$@ pty06.r $(LIB)
X
X$(ODIR)/tty07: tty07.r
X chd $(RDIR); l68 -o=$@ tty07.r $(LIB)
X
X$(ODIR)/pty07: pty07.r
X chd $(RDIR); l68 -o=$@ pty07.r $(LIB)
X
X$(ODIR)/tty08: tty08.r
X chd $(RDIR); l68 -o=$@ tty08.r $(LIB)
X
X$(ODIR)/pty08: pty08.r
X chd $(RDIR); l68 -o=$@ pty08.r $(LIB)
X
X$(ODIR)/tty09: tty09.r
X chd $(RDIR); l68 -o=$@ tty09.r $(LIB)
X
X$(ODIR)/pty09: pty09.r
X chd $(RDIR); l68 -o=$@ pty09.r $(LIB)
X
X
END_OF_FILE
if test 2078 -ne `wc -c <'makefile'`; then
echo shar: \"'makefile'\" unpacked with wrong size!
fi
# end of 'makefile'
fi
if test -f 'pty.man' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'pty.man'\"
else
echo shar: Extracting \"'pty.man'\" \(4330 characters\)
sed "s/^X//" >'pty.man' <<'END_OF_FILE'
X
X
X Pty SYS Pty
X
X
X NNAAMMEE
X Pty - Pseudo TTY Driver
X
X
X SSYYNNOOPPSSIISS
X
X
X
X DDEESSCCRRIIPPTTIIOONN
X The PPTTYY ddrriivveerr simulates a tty line. The ppttyy consists of two
X parts: The sseerrvveerr ssiiddee (normally opened by a server) and the ttttyy
X ssiiddee,, normally openend by the server for a client process.
X
X +------+ +-----+ +----------+ +-----+ +------+
X |server|<---->|s-pty|<-->|pty driver|<-->|c-pty|<---->|client|
X +------+ +-----+ +----------+ +-----+ +------+
X
X server client
X PTY PTY
X
X
X For the client, the cc--ppttyy looks like a real SCF device. For the
X server, the ss--ppttyy looks like a SCF device, too, but with some
X minor (but necessary) differences:
X
X Only one path can be open to a ss--ppttyy device. If an attempt to
X open an already open ss--ppttyy device, the error EE ((ddeevviiccee bbuussyy))
X is returned. This is very useful for determing whether a pty
X is in use already.
X
X The ss--ppttyy is opened in raw mode, i.e. all control characters
X are disabled.
X
X If the path to the ss--ppttyy is closed, a hhaanngguupp ssiiggnnaall is
X automatically send to the process "on the other side" (the
X cc--ppttyy)),, and the SCF filemanager is informed about that.
X
X Both processes, server and client, may use the SSSS__SSiiggnnll
X ((__ssss__ssiiggnnll(()))) and the SSSS__RReeaaddyy ((__ggss__rrddyy(()))) functions.
X
X ss--ppttyyss are named pty00, pty01, pty02, ..., cc--ppttyyss are named
X ttttyy0000,, ttttyy0011,, ttttyy0022,, ......
X
X The driver supports up to 32 ppttyyss..
X
X In the file ppttyyss the pty driver and the ptys 00 to 09 are
X supplied. If you want to add further ptys, you may edit the
X ppttyy____..aa and ttttyy____..aa files, assemble and link them.
X
X
X
X EEXXAAMMPPLLEESS
X Try the following:
X
X tsmon /tty00 & ;* start tsmon on c-tty
X com /pty00 ;* connect via pty to tsmon, try to log in
X
X
X BBUUGGSS
X None known
X
X
X Page 1 Printed (05 Jan 1989 15:03:45)
X
X
X Pty SYS Pty
X
X
X
X
X FFIILLEESS
X ptys: the pty driver and s-pty and c-pty device descriptors (packed
X into one module)
X
X Installation:
X
X The pty driver is configured for the CCUUMMAANNAA OOSS--99//6688000000 ffoorr tthhee
X SSTT.. If you have another system, you must apply a little patch
X to the pty driver (in the file ptys.)
X
X First, add the variable DD__PPTTYY in the file //DDEEFFSS//iioogglloobb..aa in the
X section CCPPUU SSppeecciiffiicc DDeeffiinniittiioonnss..
X
X This file is delivered by Microware. Reassemble the ssyyss..ll
X library (a makefile is supplied by Microware, too.) Determine
X the value of the symbol DD__PPTTYY with the rrdduummpp program (or make an
X assembly listing of iioogglloobb..aa..))
X
X Patch the file ppttyyss at address $$0000BB66 ((hheexx)) with the lloonngg wwoorrdd
X vvaalluuee of the symbol DD__PPTTYY.. Run ffiixxmmoodd --uu ppttyyss..
X
X
X
X SSYYSSIINNFFOO
X not needed
X
X
X
X SSEEEE AALLSSOO
X Microware's technical manual
X load, iniz, fixmod
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X Page 2 Printed (05 Jan 1989 15:03:47)
X
END_OF_FILE
echo shar: 380 control characters may be missing from \"'pty.man'\"
if test 4330 -ne `wc -c <'pty.man'`; then
echo shar: \"'pty.man'\" unpacked with wrong size!
fi
# end of 'pty.man'
fi
if test -f 'ptys.uu' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'ptys.uu'\"
else
echo shar: Extracting \"'ptys.uu'\" \(4801 characters\)
sed "s/^X//" >'ptys.uu' <<'END_OF_FILE'
X
Xbegin 644 ptys
XM2OP``0```\0````!```#O`55#@&@```!````````````````````````````8
XM`!XN````/`````````!X`+H!9`'6`KH"U@-R3U,M.2\V.#`P,"!,979E;"!)U
XM(%8R+C(@+2T@<'1Y.B!05%D@9')I=F5R`$-O<'ER:6=H=',@*&,I(#$Y.#@@<
XM8GD@<F5C8V]W87)E('-Y<W1E;7,L(%=O;&9G86YG($]C:V5R+"!0=6-H:&5I5
XM;0````?8*DH@/````@!.0``H90``DBM*`%0@.O_F2K8(`&8>(#P```$`3D``*
XM*&5V(#K_T"V*"``P/``_0II1R/_\)$T@.O^\*G8(`$*`,"D`/"!)T,!"@#`H>
XM```U0`!F(CP````(PL#:P25-`&HP*``"-4``:&8&*TH`!&`$*TH``"!J`%0ER
XM2`!>)4@`8M#\`@`E2`!80FH`7$)J`&Y":@!T8``!,$YU-6H`!@`(83)*:@!N`
XM9B)*:@!<9^P@:@!B$!A3:@!<L>H`6&4$(&H`5"5(`&)@``#^,CP`]@`\``%.N
XM=4CG@(!P`"!N`Z0@:``H3I`R+``FLGP``6\&LGP`!&,.""P``0`<9@9,WP$!,
XM3G5/[P`,`#P``4YU-6H`!@`(8<!**@!V9O(J:@!J2FH`:&8&(BT``&`$(BT`E
XM!&8$<@!.=2I!/P`P+0!N9PPR+0!P0FT`;DY```@P'TH`9U*P+0`U9@1R`V`(X
XML"T`-F82<@(_`#`M``1G!$Y```@P'V`PL"T`-V802JT`+F<D(&T`+A%``#1@9
XM&K`M`#EF!D(M`'9@,K`M`#IF"!M\``$`=F`D,BT`7+)\`?]G`/]@4FT`7"!M!
XM`%X0P+'M`%AE!"!M`%0K2`!>/P`J:@!J2FH`:&8&(BT``&`$(BT`!&<4*D$P@
XM+0`(9PQ";0`(,CP``4Y```@P'W(`3G4,0``!9@``GB!I``I":``$,6H`7``&W
XM9P``EDYU#$``&F8T2FH`;F8``(8P*0`((&D`"C(H``I*:@!<9A(U0`!N-4$`'
XM<#5I````<G(`3G5.0``(<@!.=0Q``!MF'#0I``@P*0``1^H`;K139@BP:P`$:
XM9@)"4W(`3G4,0``J9B9*:@!H9@I*:@!T9@A2:@!T<@!.=21I``1.0`"!,CP`)
XM^@`\``%.=3(\`-``/``!3G4R/`#V`#P``4YU*FH`:DIJ`&AF"D*M``0B+0``H
XM8`A"K0``(BT`!&<:2FH`:&84*D$;?`#_`$9R!#`M``1G!$Y```@@/````@`DB
XM:@!43D``*7(`3G5P='D```Q[1TK\``$```!Z`````0```'`%50\`@```!```T
XM```````````````````````````_6````0$````C`&0`:`!L````````````T
XM'````0`!`0`!&`@8#1L$`1<#!0@'````<!$3"0138V8`<'1Y``````%T='DP?
XM,```FF>E2OP``0```'H````!````<`55#P"````$````````````````````U
XM`````````#]8```!`````",`9`!H`&P````````````<```````````8````G
XM``````````````!P````!%-C9@!P='D``````'!T>3`P``#X9GU*_``!````,
XM>@````$```!P!54/`(````0`````````````````````````````/U@```$#S
XM````(P!D`&@`;````````````!P```$``0$``1@(&`T;!`$7`P4(!P```'`1/
XM$PD$4V-F`'!T>0```0`!='1Y,#$``.(-^TK\``$```!Z`````0```'`%50\`B
XM@```!``````````````````````````````_6````0(````C`&0`:`!L````Y
XM````````'```````````&```````````````````<`````138V8`<'1Y```!B
XM``!P='DP,0``@`PC2OP``0```'H````!````<`55#P"````$````````````,
XM`````````````````#]8```!!0```",`9`!H`&P````````````<```!``$!7
XM``$8"!@-&P0!%P,%"`<```!P$1,)!%-C9@!P='D```(``71T>3`R``!JLQE*T
XM_``!````>@````$```!P!54/`(````0`````````````````````````````5
XM/U@```$$````(P!D`&@`;````````````!P``````````!@`````````````K
XM`````'`````$4V-F`'!T>0```@``<'1Y,#(```BRP4K\``$```!Z`````0``K
XM`'`%50\`@```!``````````````````````````````_6````0<````C`&0`#
XM:`!L````````````'````0`!`0`!&`@8#1L$`1<#!0@'````<!$3"0138V8`$
XM<'1Y```#``%T='DP,P``$ME'2OP``0```'H````!````<`55#P"````$````V
XM`````````````````````````#]8```!!@```",`9`!H`&P````````````<5
XM```````````8``````````````````!P````!%-C9@!P='D```,``'!T>3`S(
XM``!PV)]*_``!````>@````$```!P!54/`(````0`````````````````````&
XM````````/U@```$)````(P!D`&@`;````````````!P```$``0$``1@(&`T;\
XM!`$7`P4(!P```'`1$PD$4V-F`'!T>0``!``!='1Y,#0``/O.ODK\``$```!Z?
XM`````0```'`%50\`@```!``````````````````````````````_6````0@`^
XM```C`&0`:`!L````````````'```````````&```````````````````<```_
XM``138V8`<'1Y```$``!P='DP-```F<]F2OP``0```'H````!````<`55#P"`K
XM```$`````````````````````````````#]8```!"P```",`9`!H`&P`````"
XM```````<```!``$!``$8"!@-&P0!%P,%"`<```!P$1,)!%-C9@!P='D```4`2
XM`71T>3`U``"#I.!*_``!````>@````$```!P!54/`(````0`````````````M
XM````````````````/U@```$*````(P!D`&@`;````````````!P`````````9
XM`!@``````````````````'`````$4V-F`'!T>0``!0``<'1Y,#4``.&E.$K\0
XM``$```!Z`````0```'`%50\`@```!``````````````````````````````_8
XM6````0T````C`&0`:`!L````````````'````0`!`0`!&`@8#1L$`1<#!0@'T
XM````<!$3"0138V8`<'1Y```&``%T='DP-@``"QH"2OP``0```'H````!````1
XM<`55#P"````$`````````````````````````````#]8```!#````",`9`!HP
XM`&P````````````<```````````8``````````````````!P````!%-C9@!P@
XM='D```8``'!T>3`V``!I&]I*_``!````>@````$```!P!54/`(````0`````S
XM````````````````````````/U@```$/````(P!D`&@`;````````````!P`>
XM``$``0$``1@(&`T;!`$7`P4(!P```'`1$PD$4V-F`'!T>0``!P`!='1Y,#<`!
XM`'-P7$K\``$```!Z`````0```'`%50\`@```!```````````````````````>
XM```````_6````0X````C`&0`:`!L````````````'```````````&```````U
XM````````````<`````138V8`<'1Y```'``!P='DP-P``$7&$2OP``0```'H`_
XM```!````<`55#P"````$`````````````````````````````#]8```!$0``'
XM`",`9`!H`&P````````````<```!``$!``$8"!@-&P0!%P,%"`<```!P$1,)K
XM!%-C9@!P='D```@``71T>3`X``!9-9-*_``!````>@````$```!P!54/`(``+
XM``0`````````````````````````````/U@```$0````(P!D`&@`;```````'
XM`````!P``````````!@``````````````````'`````$4V-F`'!T>0``"```I
XM<'1Y,#@``#LT2TK\``$```!Z`````0```'`%50\`@```!```````````````>
XM```````````````_6````1,````C`&0`:`!L````````````'````0`!`0`!F
XM&`@8#1L$`1<#!0@'````<!$3"0138V8`<'1Y```)``%T='DP.0``(5_-2OP`4
XM`0```'H````!````<`55#P"````$`````````````````````````````#]8P
XM```!$@```",`9`!H`&P````````````<```````````8````````````````B
X=``!P````!%-C9@!P='D```D``'!T>3`Y``!#7A4`R
X``
Xend
Xsize 3404
END_OF_FILE
if test 4801 -ne `wc -c <'ptys.uu'`; then
echo shar: \"'ptys.uu'\" unpacked with wrong size!
fi
# end of 'ptys.uu'
fi
echo shar: End of archive 1 \(of 1\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have the archive.
rm -f ark[1-9]isdone
else
echo You still need to unpack the following archives:
echo " " ${MISSING}
fi
## End of shell archive.
exit 0
--
| Wolfgang Ocker | ocker@lan.informatik.tu-muenchen.dbp.de |
| Lochhauserstr. 35a | pyramid!tmpmbx!recco!weo (home) |
| D-8039 Puchheim | Technische Universitaet Muenchen |
| Voice: +49 89 80 77 02 | Huh, What? Where am I? |