Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!mcvax!unido!coma!axel From: axel@coma.UUCP Newsgroups: net.micro.atari16 Subject: GEM-Kermit (Part 3 of 6) Message-ID: <600012@coma.UUCP> Date: Thu, 19-Jun-86 23:04:00 EDT Article-I.D.: coma.600012 Posted: Thu Jun 19 23:04:00 1986 Date-Received: Mon, 23-Jun-86 03:34:14 EDT Sender: notes@unido.UUCP Lines: 1000 Nf-ID: #N:coma:600012:000:53434 Nf-From: coma!axel Jun 20 04:04:00 1986 #! /bin/sh # This is a shell archive, meaning: # 1. Remove everything above the #! /bin/sh line. # 2. Save the resulting text in a file. # 3. Execute the file with /bin/sh (not csh) to create: # rsc # This archive created: Fri Jun 20 02:58:01 1986 export PATH; PATH=/bin:/usr/bin:$PATH if test ! -d 'rsc' then mkdir 'rsc' fi cd 'rsc' if test -f 'kermit.doc' then echo shar: "will not over-write existing file 'kermit.doc'" else cat << \SHAR_EOF > 'kermit.doc' 1. GEM ATARI/ST Kermit Author: Bernhard Nebel, Technische Universitaet Berlin Contributions by: Bill Catchings, Bob Cattani, Chris Maic (Columbia Univ.), who wrote the 'minimal' C-Kermit and Glean Seaton, Robert A. Larson, who modified from UNIX Kermit to OS9 Kermit Language: DRI C Documentation: Bernhard Nebel Version: 1.01 Date: June 1986 GEM Kermit capabilities at a glance: Local operation: Yes Remote operation: No Transfer text files: Yes Transfer binary files: Yes Wildcard send: Yes ^X/^Y interruption: Only simple abort Filename collision avoidance: Yes Can time out: Yes 8th-bit prefixing: Yes Repeat count prefixing: No Alternate block checks: No Terminal emulation: Provided by accessory Communication settings: Yes (RS232 par. by accessory) Transmit BREAK: If accessory can Handshaking (for IBM): Yes Transaction logging: Yes Session logging: Yes Raw transmit: Yes Act as server: No Talk to server: Yes Advanced server functions: No Advanced commands for server: No Local file management: Yes Handle attribute packets: No Command/init files: Yes (only for non-RS232 par.) Command macros: No GEM Kermit is a program that implements the KERMIT file transfer protocol for ATARI/ST micros running GEM. It is written in DRI C. The implementation is based on OS9 Kermit, Version 1.5, a modified 'minimal' implementation of Kermit in C. The main advantage of GEM Kermit compared with DRI's Kermit is that it is able to talk with IBMs and that it uses the GEM user interface. 2. Program operation GEM Kermit can be evoked as any other GEM application just by clicking on the icon twice. A resource file 'KERMIT.RSC' has to present in the same directory as Kermit resides for proper opertation. Otherwise the program will abort with an error message. If a file 'KERMIT.INI' exists it is used to setup the communication parameters (except for RS232 parameters). After the program is started the familiar desktop and a menu bar should appear on the screen. Now you can start to transfer everything back and forth between your ATARI/ST and the other machine. If it does not work, you probably forgot to connect both with the appropriate wires (use the RS232/modem plug!), or some communication parameters are wrong, or you are really stupid (or there is a bug in the program). In any case it might be helpful to study the next few chapters. 3. Commands Kermit commands are evoked by selecting a drop down menu item. These items will be discussed briefly in the following. 3.1 DESK menu That is the familiar DESK menu. The first item (KERMIT-Info) tells you something about the program itself and how I can be reached by e-mail. The other items should give you the capabilty to configure the RS232 interface and to open a virtual terminal connection to the other computer. If this is not the case, ask your ATARI dealer what's wrong. But be aware of a really strange bug in GEMDOS! If your are talking with a computer which uses only seven bits with the 8th bit always mark, you loose the '{' if 7 bits with 8th bit = mark is selected. Isn't that strange? But with 8 bits selected everything works fine. 3.2 FILE menu This menu gives you the ability to DELETE, RENAME and TYPE files. Files are selected by the standard file selection dialog box. Be aware that wilcards in a delete command do not have the expected effect, but they will select the first file matching the specification. Additionally, you can get information about free space on a disk. And of course, the QUIT command is also present in this menu. 3.3 TRANSFER menu All transfer commands (SEND, RECEIVE, GET, PUT, LOGOUT server, QUIT server) can be found in this menu. Files and directories for these commands are again selected by the standard file selection dialog box. SEND and PUT handle wildcards in the right way. RECEIVE and GET will use a file specification as a name for the first file to receive, all other files will be stored under names sent by the remote host. If you do not input a file name also the first file transferred will be stored under the name provided by the remote host. In any case the files are stored in the selected directory. 3.4 OPTION menu In this menu commands for changing switches (e.g. BINARY TRANSFER, IBM MODE), starting and stopping logs (DEBUG and SESSION LOG), saving and restoring parameters (SAVE and RESTORE STATE) as well as evoking a parameter changing dialog are found. The details of these commands are not provided here, the interested user will find information about these in other Kermit publications or will learn how to use them by trial and error, hopefully. The only thing I will mention is that the RS232 communication parameters (e.g. baud rate, byte format) are not included. 4. How to install GEM Kermit If you got the program and the resource file (for German or English) as a binary excutable file, perhaps as a uudecoded file, everything should work out fine. Otherwise all the files with the STK prefix have to be compiled and linked (using STKERM.INP). The resource file must be renamed to KERMIT.RSC and you are ready. Currently, the following files are necessary: STKERM.C main program STKFIO.C file I/O on the ATARI STKGEM.C GEM interface STKGMO.C GEM interface for changing options STKGMT.C GEM interface for transfer STKGCM.C QUIT/LOGOUT server STKGET.C GET from server STKSEN.C SEND protocol STKREC.C RECEIVE protocol STKUTL.C utility functions for Kermit protocol STKINC.H common include file for all Kermit modules STKOBJ.H object definitions for GEM Kermit STKOBJ.DEF for RCS (if you want to change the resource) STKOBJ.RSC (uudecoded) the German resource file or STKOBE.RSC (uudecoded) the English resource file one of them has to be renamed to KERMIT.RSC The following files of the DRI C kit have to be modified: GEMSTART.S enlarge stack to 2k bytes and assemble DEFINE.H introduce the definition of NULL as 0L and change NIL to 0L 5. Problems - As said above, there seems to be a bug in GEMDOS eating all '{' when the 7 bit mode is selected. - If you move the mouse during a transfer, it can happen that key clicks appear. I don't know why. 6. Whish list I spent a lot of time to adopt OS9 Kermit to GEM. As a matter of fact, I wrote more code than I used from the original program. Finally, I discovered that it would have been worth the effort to use the more recent C-Kermit. However, it's done now. If there is anybody out there, s/he is invited to adopt C-Kermit to GEM using my first hack. Besides that, there are a lot of other wishful improvements I probably will not work on: - GEM Kermit seems to be rather slow on fast connections, i.e. 100-150 bytes/secs on a 9600 baud connection. - It would be nice to get the logs on a scroll window. - The RS232 parameters should also be saved and restored by the STATE SAVE and RESTORE commands. However, I was not able to figure out how this could be done. SHAR_EOF fi if test -f 'stkobe.h' then echo shar: "will not over-write existing file 'stkobe.h'" else cat << \SHAR_EOF > 'stkobe.h' #define KERMENU 0 /* TREE */ #define MDESK 3 /* OBJECT in TREE #0 */ #define MFILE 4 /* OBJECT in TREE #0 */ #define MTRANS 5 /* OBJECT in TREE #0 */ #define MOPTION 6 /* OBJECT in TREE #0 */ #define TSEND 25 /* OBJECT in TREE #0 */ #define TRECEIVE 26 /* OBJECT in TREE #0 */ #define TGET 29 /* OBJECT in TREE #0 */ #define TFINISH 30 /* OBJECT in TREE #0 */ #define TBYE 31 /* OBJECT in TREE #0 */ #define OBINTRAN 34 /* OBJECT in TREE #0 */ #define OTRANLOG 35 /* OBJECT in TREE #0 */ #define KERPARAM 4 /* TREE */ #define ABOUTKER 9 /* OBJECT in TREE #0 */ #define OFILWARN 40 /* OBJECT in TREE #0 */ #define OHANDSHA 42 /* OBJECT in TREE #0 */ #define OPADDING 41 /* OBJECT in TREE #0 */ #define OPARCHAN 43 /* OBJECT in TREE #0 */ #define OPARSAVE 38 /* OBJECT in TREE #0 */ #define KPSPCKL 5 /* OBJECT in TREE #4 */ #define KPRPCKL 6 /* OBJECT in TREE #4 */ #define KPSTIMO 8 /* OBJECT in TREE #4 */ #define KPRTIMO 9 /* OBJECT in TREE #4 */ #define KPSEOL 13 /* OBJECT in TREE #4 */ #define KPREOL 14 /* OBJECT in TREE #4 */ #define KPSPADC 16 /* OBJECT in TREE #4 */ #define KPSPCKST 20 /* OBJECT in TREE #4 */ #define KPRPCKST 21 /* OBJECT in TREE #4 */ #define KPRTURN 23 /* OBJECT in TREE #4 */ #define KPSQUOTE 25 /* OBJECT in TREE #4 */ #define KPRQUOTE 26 /* OBJECT in TREE #4 */ #define KPEXITOK 27 /* OBJECT in TREE #4 */ #define KPABORT 28 /* OBJECT in TREE #4 */ #define KERDISPL 5 /* TREE */ #define KDSEND 1 /* OBJECT in TREE #5 */ #define KDRECEIV 2 /* OBJECT in TREE #5 */ #define KDFILNAM 4 /* OBJECT in TREE #5 */ #define KDCNVFIL 7 /* OBJECT in TREE #5 */ #define KDFCNT 10 /* OBJECT in TREE #5 */ #define KDBCNT 22 /* OBJECT in TREE #5 */ #define KDPNUM 25 /* OBJECT in TREE #5 */ #define KDBPS 13 /* OBJECT in TREE #5 */ #define KDNAKCNT 16 /* OBJECT in TREE #5 */ #define KDTIMCNT 19 /* OBJECT in TREE #5 */ #define FDELETE 18 /* OBJECT in TREE #0 */ #define FRENAME 19 /* OBJECT in TREE #0 */ #define FQUIT 20 /* OBJECT in TREE #0 */ #define KPMAXTRY 11 /* OBJECT in TREE #4 */ #define KRABORT 7 /* TREE */ #define KRABOK 5 /* OBJECT in TREE #7 */ #define KRABMESS 4 /* OBJECT in TREE #7 */ #define ODEBUG 37 /* OBJECT in TREE #0 */ #define KPPADL 18 /* OBJECT in TREE #4 */ #define KRINIERR 0 /* STRING */ #define KRABOUT 6 /* TREE */ #define KRABOUOK 2 /* OBJECT in TREE #6 */ #define KRFILEX 1 /* STRING */ #define KRFILNEX 2 /* STRING */ #define OPARGET 44 /* OBJECT in TREE #0 */ #define KRDABORT 27 /* OBJECT in TREE #5 */ #define FTYPE 22 /* OBJECT in TREE #0 */ #define TPUT 27 /* OBJECT in TREE #0 */ #define KERNYI 3 /* STRING */ #define KRMDOTYP 8 /* TREE */ #define KRMDODEL 1 /* TREE */ #define KRMDOREN 2 /* TREE */ #define KRMDORE2 3 /* TREE */ #define KRMESSS 9 /* TREE */ #define MSMORE 1 /* OBJECT in TREE #9 */ #define MSEOF 2 /* OBJECT in TREE #9 */ #define KRDELDON 5 /* STRING */ #define KRRENDON 4 /* STRING */ #define KRODOSAV 10 /* TREE */ #define KRODOGET 11 /* TREE */ #define KRDELERR 6 /* STRING */ #define KRRENERR 7 /* STRING */ #define KRTDOSND 12 /* TREE */ #define KRTDOREC 13 /* TREE */ #define KRTDOPUT 14 /* TREE */ #define KRTDOGET 15 /* TREE */ #define KRTRAERR 8 /* STRING */ #define KRODODEB 16 /* TREE */ #define KRODOTF 17 /* TREE */ #define KRDBCLSD 9 /* STRING */ #define KRTFCLSD 10 /* STRING */ #define KERRFOPN 11 /* STRING */ #define KRSAVDON 12 /* STRING */ #define KRGETDON 14 /* STRING */ #define KRDEBDON 15 /* STRING */ #define KRTFDON 16 /* STRING */ #define KDPCNT 29 /* OBJECT in TREE #5 */ #define MSGSNDBG 3 /* OBJECT in TREE #9 */ #define MSGFILNX 5 /* OBJECT in TREE #9 */ #define MSGSNDRD 4 /* OBJECT in TREE #9 */ #define MSGSNDFD 7 /* OBJECT in TREE #9 */ #define MSGERRPK 6 /* OBJECT in TREE #9 */ #define MSGTLNPS 8 /* OBJECT in TREE #9 */ #define MSGDATPS 9 /* OBJECT in TREE #9 */ #define MSGTLNPR 20 /* OBJECT in TREE #9 */ #define MSGDATPR 21 /* OBJECT in TREE #9 */ #define MSGCHKER 10 /* OBJECT in TREE #9 */ #define MSGUSRAB 11 /* OBJECT in TREE #9 */ #define MSGTIMOU 12 /* OBJECT in TREE #9 */ #define MSGDSTAT 13 /* OBJECT in TREE #9 */ #define MSGTRAER 14 /* OBJECT in TREE #9 */ #define MSGSTATE 15 /* OBJECT in TREE #9 */ #define MSGFOPN 16 /* OBJECT in TREE #9 */ #define MSGERRFO 17 /* OBJECT in TREE #9 */ #define MSGSFASF 18 /* OBJECT in TREE #9 */ #define MSGTREOF 19 /* OBJECT in TREE #9 */ #define MSGFNEXT 22 /* OBJECT in TREE #9 */ #define MSGNEWFI 23 /* OBJECT in TREE #9 */ #define KRCONFAB 13 /* STRING */ #define KDSENDS 32 /* OBJECT in TREE #5 */ #define KDRECEIS 31 /* OBJECT in TREE #5 */ #define KRAVMM 7 /* OBJECT in TREE #6 */ #define KRAVDAT 8 /* OBJECT in TREE #6 */ #define MSGWOPER 25 /* OBJECT in TREE #9 */ #define MSGERSNA 26 /* OBJECT in TREE #9 */ #define MSGPROER 24 /* OBJECT in TREE #9 */ #define MSGRECRD 27 /* OBJECT in TREE #9 */ #define MSGFATFE 28 /* OBJECT in TREE #9 */ #define MSGFRASF 29 /* OBJECT in TREE #9 */ #define KRPROERR 17 /* STRING */ #define KRWOPERR 18 /* STRING */ #define KRFATFER 19 /* STRING */ #define MSGRECBG 33 /* OBJECT in TREE #9 */ #define MSGRECFD 34 /* OBJECT in TREE #9 */ #define FDFREE 23 /* OBJECT in TREE #0 */ #define KRDFREE 18 /* TREE */ #define KRDFID 1 /* OBJECT in TREE #18 */ #define KRDFBY 2 /* OBJECT in TREE #18 */ #define KRDFOK 3 /* OBJECT in TREE #18 */ #define MEGHNDFA 31 /* OBJECT in TREE #9 */ #define KRDRDYOK 34 /* OBJECT in TREE #5 */ #define KRDRFCTI 33 /* OBJECT in TREE #5 */ #define MSGCHSND 30 /* OBJECT in TREE #9 */ #define MSGCHFLU 32 /* OBJECT in TREE #9 */ #define MSGCHRD 35 /* OBJECT in TREE #9 */ #define MSGCHPAD 36 /* OBJECT in TREE #9 */ #define MSGCHWHC 37 /* OBJECT in TREE #9 */ #define MSGHNDOK 38 /* OBJECT in TREE #9 */ #define OTIMOUT 45 /* OBJECT in TREE #0 */ #define KRTASKG 19 /* TREE */ #define KRTGFILN 2 /* OBJECT in TREE #19 */ #define KRTASKOK 4 /* OBJECT in TREE #19 */ #define KRTASKAB 5 /* OBJECT in TREE #19 */ #define KDFINISH 35 /* OBJECT in TREE #5 */ #define KDBYE 36 /* OBJECT in TREE #5 */ #define MSGGETBG 39 /* OBJECT in TREE #9 */ #define MSGGETRD 40 /* OBJECT in TREE #9 */ #define MSGGETFD 42 /* OBJECT in TREE #9 */ #define MSGSRVFI 41 /* OBJECT in TREE #9 */ #define MSGFINRD 47 /* OBJECT in TREE #9 */ #define MSGFINFD 45 /* OBJECT in TREE #9 */ #define MSGSRVBY 46 /* OBJECT in TREE #9 */ #define MSGBYERD 48 /* OBJECT in TREE #9 */ #define MSGBYEFD 49 /* OBJECT in TREE #9 */ #define KSVFERR 20 /* STRING */ #define KSVBERR 21 /* STRING */ SHAR_EOF fi if test -f 'stkobj.h' then echo shar: "will not destroy link to 'stkobj.h'" else ln stkobe.h stkobj.h fi if test -f 'stkdef.uuc' then echo shar: "will not over-write existing file 'stkdef.uuc'" else cat << \SHAR_EOF > 'stkdef.uuc' begin 777 stkobj.def M * )+15)-14Y5 P$ 341%4TL 0! $U&24Q% M % 0!-5%)!3E, !@$ 34]05$E/3@ !D! %13 M14Y$ : 0!44D5#14E610 '0$ 5$=%5 !X! M %1&24Y)4T@ ? 0!40EE% (@$ 3T))3E1204X M ",! $]44D%.3$]' $ -+15)005)!30 "0$ 04)/551+15( M "@! $]&24Q705). J 0!/2$%.1%-(00 *0$ 3U!!1$1) M3D< "L! $]005)#2$%. F 0!/4$%24T%610 $!0$ 2U!3 M4$-+3 ! 8! $M04E!#2TP 0( 0!+4%-424U/ $"0$ M2U!25$E-3P ! T! $M04T5/3 0. 0!+4%)%3TP $ M$ $ 2U!34$%$0P !!0! $M04U!#2U-4 05 0!+4%)00TM35 M $%P$ 2U!25%523@ !!D! $M04U%53U1% 0: 0!+4%)154]4 M10 $&P$ 2U!%6$E43TL !!P! $M004)/4E0 % -+15)$ M25-03 % 0$ 2T1314Y$ !0(! $M$4D5#14E6 4$ 0!+ M1$9)3$Y!30 %!P$ 2T1#3E9&24P !0H! $M$1D-.5 46 M 0!+1$)#3E0 %&0$ 2T103E5- !0T! $M$0E!3 M 40 0!+1$Y!2T-.5 %$P$ 2T1424U#3E0 !(! $9$14Q%5$4 M 3 0!&4D5.04U% % $ 1E%5250 ! L! $M034%8 M5%)9 ' -+4D%"3U)4 '!0$ 2U)!0D]+ !P0! $M2 M04)-15-3 E 0!/1$5"54< 4P $$@$ 2U!0041, %, M!$M224Y)15)2 & %+4D%"3U54 & @$ 2U)!0D]53TL M $ !$M21DE,15@ " 1+4D9)3$Y%6 + $ 3U!!4D=%5 M !1L! $M21$%"3U)4 6 0!&5%E010 &P$ 5%!55 M , !$M%4DY920 ( %+4DU$3U194 0 !2U)- M1$]$14P ( 4M2341/4D5. # %+4DU$3U)%,@ "0 # M2U)-15-34P "0$! $U334]210 D" 0!-4T5/1@ M!0 $2U)$14Q$3TX 0 !$M24D5.1$]. * %+4D]$3U-!5@ M "P !2U)/1$]'150 8 !$M21$5,15)2 ' 1+4E)%3D52 M4@ # !2U)41$]33D0 T 4M25$1/4D5# . %+4E1$ M3U!55 #P !2U)41$]'150 @ !$M25%)!15)2 0 %+ M4D]$3T1%0@ $0 !2U)/1$]41@ D !$M21$)#3%-$ * M 1+4E1&0TQ31 "P $2T524D9/4$X P !$M24T%61$]. M . 1+4D=%5$1/3@ #P $2U)$14)$3TX ! !$M25$9$3TX M 4= 0!+1%!#3E0 ) P$ 35-'4TY$0D< "04! $U31T9) M3$Y8 D$ 0!-4T=33D121 )!P$ 35-'4TY$1D0 "08! $U3 M1T524E!+ D( 0!-4T=43$Y04P )"0$ 35-'1$%44%, "10! M $U31U1,3E!2 D5 0!-4T=$05104@ )"@$ 35-'0TA+15( M"0L! $U31U534D%" D, 0!-4T=424U/50 )#0$ 35-'1%-4050 M "0X! $U31U120452 D/ 0!-4T=35$%410 )$ $ 35-'1D]0 M3@ "1$! $U31T524D9/ D2 0!-4T=31D%31@ )$P$ 35-' M5%)%3T8 "18! $U31T9.15A4 D7 0!-4T=.15=&20 #0 $ M2U)#3TY&04( !2 ! $M$4T5.1%, 4? 0!+1%)%0T5)4P & M!P$ 2U)!5DU- %, !@@! $M2059$050 D9 0!-4T=73U!%4@ M )&@$ 35-'15)33D$ "1@! $U31U!23T52 D; 0!-4T=214-2 M1 )' $ 35-'1D%41D4 "1T! $U31T9205-& 1 1+4E!2 M3T524@ $@ $2U)73U!%4E( !, !$M21D%41D52 DA 0!- M4T=214-"1P )(@$ 35-'4D5#1D0 ! 'stkrsc.uuc' begin 777 stkobj.rsc M <.A2N%*X4KA16 "045@ ,'H V 4 $4 !8 ##*($1EBXN+@ @(%-E;F1E+BXN " @16UP9F%N9V4N+BX ("!396YD92]3 M97)V97(N+BX +2TM+2TM+2TM+2TM+2TM+2TM+0 @($5M<&9A;F=E+U-E&-O9&4I 7U\ 7U\ 3DX 4&%D9&EN9RA,A&YG M92D !?7P!?7P Y.0!086-K971S=&%R="A(97AC;V1E*0 %]? %]? $Y. M %]? %]? $Y. $AA;F1S:&%K92A(97AC;V1E*0 %]? %]? $Y. %%U;W1E M*%IE:6-H96XI 7P!? %@ 7P!? %@ 3TL 04)"4E5#2 !396YD96X !% M;7!F86YG96X !?7U]?7U]?7U]?7U]?7U]?7U]?7U\ 7U]?7U]?7U]?7U]? M7U]?7U]?7U]? %A86%A86%A86%A86%A86%A86%A86 !$871E:3H !?7U]? M7U]?7U]?7U]?7U]?7U]?7U\ 7U]?7U]?7U]?7U]?7U]?7U]?7U]? %A86%A8 M6%A86%A86%A86%A86%A86 "!8BX@3F%M93H !?7U]?7U]? %]?7U]?7U\ M6%A86%A86 !$871E:65N((%B97)T'AX> !697)S:6]N7U\N7U\ .3DY.0!X>'AX>'@ M7U\M7U\M7U\ .3DY.3DY $1I97-EF5U9W0@ M=V5R9&5N+@!$871E:2 G)7,G(&5X:7-T:65R="X@3F5U97(@3F%M93H@)R5S M)RX 16UP9F%N9V5N(&5R9F]L9W)E:6-H(&)E96YD970N "HJ*D9A=&%L97(@ M1&%T96EF96AL97(N $1A=&5I(""4P,G@^('PE8WP 2V5I;B!(86YD#X@?"5C? !"96=I;FX@9&5S($5M<&9A;F"4P,G@^('PE8WP (" M/B!P861D:6YG.B E9" J(#PP>"4P,G@^ " @ M+3X@:&%N9'-H86ME('=A#X@?"5C? @("T^($AA;F1S M:&%K92!:96EC:&5N(&5M<&9A;F=E;BX ($1A=&5I("5S(&%N9V5F;W)D97)T M("A09F%D/25S+$1A=&5I/25S*0!%;7!F86YG96XH4V5R=F5R*2!E# 'A % 8 !& #__P C $ M >% 'K0 !ZX P & 1@ __\ * ! 'KP !\X ?/ , !@ M$8 /__ !\ 0 !] ?1 'T@ # 8 !& #__P ! $ ?3 ' M_ ""4 P & $1@ __\ *0 I / P #P4 \I , !@ $8 /__ M ( ) #RL \T /0P # 8 1& #__P ) \ ]/ /8 #V$ M P & 1@ __X $0 ! /8@ #V, ^, , !@ $8 /__ $ *0 M#[4 _= /W@ # 8 A& #__P H '__P ! < &0 M !0 !D !P " ( % !$ !0 @$ 0 # 8 &0 M ( F P$ !/____\ ( D + P$ !?____\ ( M P L ' P$ !O____\ ( X !( * P$ O____\ ( M !# !P * P$ ( "$ &0 # 0!0 !, $0 ) ! M% _Q$ ( 4 @ "O____\ ' !. 4 $ "___ M__\ ' @ !< 0 4 $ #/____\ ' !Q @ 4 $ M#?____\ ' "& P 4 $ #O____\ ' "; ! 4 M $ #_____\ ' "P !0 4 $ $/____\ ' #% M!@ 4 $ "/____\ ' #: !P 4 $ & 2 !< % _Q$ M T 2 8 $_____\ ' #O 2 $ %/____\ ' M #\ 0 2 $ %?____\ ' $, !0 2 $ %O____\ ' M @ $3 ! 2 $ %_____\ ' $F @ 2 $ $?____\ M' $T P 2 $ (0 9 " % _Q$ !0 3 @ &O__ M__\ ' %& 3 $ &_____\ ' %1 0 3 $ M'/____\ ' %? P 3 $ '?____\ ' @ %Q @ 3 M $ 'O____\ ' &% ! 3 $ '_____\ ' &9 M!@ 3 $ (/____\ ' &G !P 3 $ &/____\ ' @ &W M !0 3 $ !P B "T % _Q$ !X : P (_____\ ' M '+ : $ )/____\ ' '? !@ : $ )?____\ ' M @ 'V " : $ )O____\ ' (1 !P : $ )_____\ M' (F "@ : $ */____\ ' @ (Z !0 : $ *?__ M__\ ' )5 0 : $ *O____\ ' )N P : $ M*_____\ ' )X @ : $ +/____\ ' *$ "0 : M $ +?____\ ' *: "P : $ (?____\ ' @ *M M! : '__P ! $ % ! A$ 86!@$ /____\ ' @ *_ M 0$# 5 '__P ! $ % ! A$ 8"0$ /____\ ' @ M +5 $$ 6 '__P ! $ % ! A$ !< " $ !/____\ '@ ( !4Z " " M $ "@ ( D %@ !56 8 !0 B $ "?____\ '@ ( !5R !< M " $ !_____\ '@ ( !6. " " $ # + L %@ !6J M 8 !@ B $ "O____\ '@ ( !7& " " $ #P - X %@ M !7B 8 !P B $ #O____\ '@ ( !7^ !< " $ #/____\ '@ ( M !8: " " $ $0 0 ! %@ !8V 8 " B $ #_____\ M'@ ( !92 !< " $ $P 2 !( %@ !9N 8 "0 B $ $?__ M__\ '@ ( !:* !< " $ %@ 4 !4 %@ !:F 8 "@ B $ M%?____\ '@ ( !;" !< " $ $_____\ '@ ( !;> " " M $ & 7 !< %@ !;Z 8 "P B $ %O____\ '@ ( !<6 " M " $ &P 9 !H %@ !& < 0 7 $ _____\ M%@" " !>B < 0 7 $ !@ $ 4 % _Q$ , P @ $ !?__ M__\ '0 ( !>^ L 5 $ _____\ %0 !?: & $ M"0 ' @ % _Q$ , ! @ $ "/____\ '0 ( !?V L 5 M $ !O____\ %0 !@2 ) $ # * L % _Q$ , M!@ @ $ "_____\ '0 ( !@N !D ' $ "?____\ %0 !A* M 3 $ #P - X % _Q$ , "@ @ $ #O____\ '0 ( M !AF !L % $ #/____\ %0 !B" + $ $@ 0 !$ % M _Q$ , "P @ $ $?____\ '0 ( !B> !L % $ #_____\ M%0 !BZ 3 $ %0 3 !0 % _Q$ , # @ $ %/__ M__\ '0 ( !C6 !L % $ $O____\ %0 !CR 5 $ M& 6 !< % _Q$ , " @ $ %_____\ '0 ( !D. !D ' M $ %?____\ %0 !DJ 3 $ &P 9 !H % _Q$ , M#0 @ $ &O____\ '0 ( !E& !X " $ &/____\ %0 !EB M 4 $ '/____\ &@ ! 7W !H #P ) $ 'P = !X % M_Q$ , !P @ $ 'O____\ '0 ( !E^ !D ' $ '/____\ %0 M !F: 3 $ (/____\ %@" " !FV < 0 7 $ (?____\ M%@" " !G2 < 0 7 $ (O____\ &@ ! 90 \ #P ) $ (___ M__\ &@ ' @ 99 , #P ) $ )/____\ %@" " !GN < 0 7 $ M /____\ %@"@ " !H* < 0 7 '__P ! T % ! A$ 0A M"PX O____\ '0 ( !HF H P + $ _____\ &@ ' :!! P+ M# ( $ !/____\ %0 !I" " A $ !?____\ %0 !I> M !P A $ !P & 8 % ! Q'Q < 0 3 ( !?____\ %0 M !IZ ,( - $ "/____\ '0 !J6 @ &! 0@ @$ "?____\ '0 M !JR P )!0,@ @$ "O____\ &0 ! A$ ! 0, P$8!@4 "_____\ M%0 !K. 00*"088!@ #/____\ %0 !KJ 00$"@8;!@ #?__ M__\ %0 !L& 00-"@0 $ !/____\ '0 ( !MV H M P + $ !?____\ '@ ( !N2 4 !0 H $ /____\ &@ G A. M !0 " ( '__P ! $ % ! A$ 8!P$ /____\ ' @ M A1!0 $ 46#P#__P ! "L % A$ !. !4 O____\ ' M AH , $ _____\ ' AU 0 , $ !/____\ M' B" @ H $ !?____\ ' BK ! ; $ !O__ M__\ ' C' P > $ !_____\ ' CF !@ H $ M"/____\ ' D/ !0 3 $ "?____\ ' DC !P A M $ "O____\ ' E% " 0 $ "_____\ ' E6 M"P H $ #/____\ ' E_ # < $ #?____\ ' F< M #0 7 $ #O____\ ' FT #@ 9 $ #_____\ ' M G. #P F $ $/____\ ' GU $ 1 $ $?____\ ' M H' $0 A $ $O____\ ' HI $@ D $ $_____\ M' I. $P B $ %/____\ ' IQ % H $ %?__ M__\ ' J: "0 A $ %O____\ ' J\ "@ 0 $ M%_____\ ' K- "D ! = $ &/____\ ' KK "D P 7 M $ &?____\ ' L# "D @ ; $ &O____\ ' L? "4 M H $ &_____\ ' M( "4 0 G $ '/____\ ' MP M "D !0 > $ '?____\ ' N/ "D !@ 7 $ 'O____\ ' M NG "D !P C $ '_____\ ' O+ "D "P < $ (/____\ ' M OH "D "@ A $ (?____\ ' P* "D # > $ (O____\ M' PI ", " H $ (_____\ ' Q2 "D "0 6 $ )/__ M__\ ' QI ", #0 @ $ )?____\ ' R* "D #@ ; $ M)O____\ ' RF "D #P D $ )_____\ ' S+ "D $ A M $ */____\ ' SM ", $0 H $ *?____\ ' T6 "4 M$@ F $ *O____\ ' T] "D % 9 $ *_____\ ' U7 M "8 $P > $ L #$ % " _Q$ !. !4 +?____\ ' M UV !0 & $ +O____\ ' U] 0 F $ +_____\ ' M VD @ ; $ ,/____\ ' W F $ ,?____\ M' WG P C $ *_____\ ' @ X+ ! H '__P ! M $ % ! A$ 83!P$ /____\ ' @ XT 0$" 2 '_ M_P ! $ % ! A$ 89!P$ /____\ ' @ Y' $# 8 M '__P ! $ % ! A$ 8+!P$ /____\ ' @ Y@ @$# M * '__P ! $ % ! A$ $/!@$ /____\ ' @ YK M!@ " - '__P ! $ % ! A$ 4>!@$ /____\ ' @ M YY @$# = '__P ! $ % ! A$ 0A!@$ /____\ ' @ M Z7!@ # @ '__P ! $ % ! A$ 8B!P$ /____\ M' @ ZX!P # A '__P ! $ % ! A$ 0 ! G $ !?____\ &@ ' M _? < "0 ( $ /____\ &@ E _B "$ "0 ( $ !PZ @B@ M(+H "#J A&@ (]( "=* HF@ *2H "E: N"@ +CH "YJ N 9F@ +LH "[Z O*@ +UH "^* OZBH end SHAR_EOF fi if test -f 'stkorsc.uuc' then echo shar: "will not over-write existing file 'stkorsc.uuc'" else cat << \SHAR_EOF > 'stkorsc.uuc' begin 777 stkobe.rsc M 9F!(,$@P2#!&T "01LP +=@ V 4 $4 !8 "XH($1E7!E+BXN " @1G)E92!3<&%C92XN+@ @(%-E;F0N M+BX ("!296-E:79E+BXN " @4'5T*%-E2!4'@ 5F5R'AX>'AX M %]?+5]?+5]? #DY.3DY.0!4:&ES('!R;V=R86T@:7,@<'5B;&EC(&1O;6%I M;@ '-O9G1W87)E(&%N9"!I2P@3F5W(%EO7!E/25C+"!L96X])3)D+"!N=6T])3 R> !34$%#2SH@9&%T83U\)7-\ M "HJ*D-H96-K2!T#X@?"5C? !3=&%R="!R96-E:79I;F2!E M>&ES=',N75M!0D]25%T 6S-=6U1H:7,@9FEL92!D;V5S(&YO="!E>&ES="Y= M6T%"3U)470!;,UU;3F]T('EE="!I;7!L96UE;G1E9"Y=6U-/4E)970!;,%U; M1FEL92!R96YA;65D+EU;3TM= %LP75M&:6QE(&1E;&5T960N75M/2UT 6S-= M6T5R2!A8F]R="!T # 8 !& #__P + M $ 5_ %AP !8\ P & $1@ __\ " ( %EP !:P 6M , M!@ $8 /__ !4 0 !:X 6Z %NP # 8 A& #__@ , $ 6\ M %R !4 7F , !@ "$8 M /_^ T 0 !>< 7V %]P # 8 A& #__@ / $ 7X %^0 M!?H P & 1@ __\ 0 ! %_@ !A0 85 4 !@ "$8 /__ !8 M 0 !A8 8E &)@ % 8 A& #__P / $ 8G &-0 !C8 P & M (0< __\ #@ ! &-P !CP 9) , !@ "$8 /__ 4 #0 !DX M 95 &7@ # 8 A& #__P ' D 9E &@P !H0 !0 & 1@ M__\ '@ ! &A0 !JD :J 4 !@ $8 /__ "0 0 !JL ;- & MS@ % 8 !& #__P B $ ;/ &\0 !O( !0 & 1@ __\ (@ ! M &\P !Q@ <9 , !@ $8 /__ "4 0 !QH 1 , !@ !$8 /__ "D *0 #7P U^ -E # 8 !& #_ M_P " !8 V6 -GP #:X P & $1@ __\ "0 / -N@ #<\ W0 M , !@ "$8 /_^ !4 0 #=$ W2 -^P # 8 !& #__P ! "D M XD .20 #DH P & (1@ __\ )0 !__\ 0 ' !D M 4 9 < @ " !0 1 4 (! $ P & !D M " 'P,! 3_____ " ) !@,! 7_____ " M *P & !@,! ;_____ " ,@ , "@,! +_____ " M /0 6 "0,! " A !D P$ 4 3 !$ "0 0 M !0 /\1 " % ( K_____ !P 1P % ! O_ M____ !P ( 50 $ % ! S_____ !P :@ ( % ! M W_____ !P ?P , % ! [_____ !P E 0 M% ! ______ !P J0 4 % ! !#_____ !P O@ M 8 % ! C_____ !P TP < % ! !@ $@ 7 !0 /\1 M ( $@ & !/_____ !P Z $@ ! !3_____ !P M ] $ $@ ! !7_____ !P ! 4 $@ ! !;_____ !P M ( !!P 0 $@ ! !?_____ !P !&@ ( $@ ! !'_____ M !P !) , $@ ! "$ &0 @ !0 /\1 . $P ( !K_ M____ !P !- $P ! !O_____ !P !/@ $ $P ! M !S_____ !P !2P , $P ! !W_____ !P ( !7 ( M$P ! ![_____ !P !< 0 $P ! !______ !P !@0 M 8 $P ! "#_____ !P !D < $P ! !C_____ !P ( ! MH0 4 $P ! < (@ M !0 /\1 8 %@ , "/_____ !P M !M0 %@ ! "3_____ !P !QP 8 %@ ! "7_____ !P M ( !V @ %@ ! ";_____ !P ![P < %@ ! "?_____ M !P !_@ H %@ ! "C_____ !P ( "#@ 4 %@ ! "G_ M____ !P ")0 $ %@ ! "K_____ !P ".0 , %@ ! M "O_____ !P "0P ( %@ ! "S_____ !P "3@ D M%@ ! "W_____ !P "90 L %@ ! "'_____ !P ( "=0 M 0 %@ !__\ 0 ! !0 0 (1 '"@4! #_____ !P ( " M?P0 P "@ !__\ 0 ! !0 0 (1 ""P @ @ ! !$ $ 0 !8 3E & @ (@ ! ______ M !X " 3L 7 @ ! !, $@ 2 !8 3S & D (@ ! !'_ M____ !X " 3Z 7 @ ! !8 % 5 !8 4! & H (@ ! M !7_____ !X " 4( 7 @ ! !/_____ !X " 4/ @ M @ ! !@ %P 7 !8 46 & L (@ ! !;_____ !X " 4= @ M @ ! !L &0 : !8 4D & P (@ ! !K_____ !X " 4 MK 8 0 ! !C_____ !X " 4R A 0 ! !S_____ !H !P M #\@ & X " ! #_____ !H )0 #]0 @ X " !__\ 0 D !0 M 0 (1 )@ 2 +_____ !8 @ @ 4Y ' $ %P ! /_____ M !8 @ @ 5 ' $ %P ! 8 ! % !0 /\1 # , ( ! 7_ M____ !T " 5' * %@ ! /_____ !4 5. !0 ! M D !P ( !0 /\1 # 0 ( ! C_____ !T " 55 * M%@ ! ;_____ !4 5< "@ ! P "@ + !0 /\1 # M 8 ( ! O_____ !T " 5C 9 !P ! G_____ !4 5 MJ % ! \ #0 . !0 /\1 # H ( ! [_____ !T " M 5Q ; !0 ! S_____ !4 5X "P ! !( $ 1 !0 M /\1 # L ( ! !'_____ !T " 5_ ; !0 ! ______ M !4 6& !P ! !4 $P 4 !0 /\1 # P ( ! !3_ M____ !T " 6- ; !0 ! !+_____ !4 64 "0 ! M !@ %@ 7 !0 /\1 # @ ( ! !?_____ !T " 6; 9 M!P ! !7_____ !4 6B % ! !L &0 : !0 /\1 # M T ( ! !K_____ !T " 6I > @ ! !C_____ !4 6 MP "@ ! !S_____ !H 0 %>0 : \ "0 ! !\ '0 > !0 M /\1 # < ( ! ![_____ !T " 6W 9 !P ! !S_____ !4 M 6^ % ! "#_____ !8 @ @ 7% ' $ %P ! "'_____ M !8 @ @ 7, ' $ %P ! "+_____ !H 0 %R@ / \ "0 ! "/_ M____ !H !P ( %T@ # \ "0 ! "3_____ !8 @ @ 73 ' $ %P ! M #_____ !8 H @ 7: ' $ %P !__\ 0 - !0 0 (1 $ M(0L. +_____ !T " 7A * , "P ! /_____ !H !P %^P0, M"PP " ! 3_____ !4 7H @ (0 ! 7_____ !4 7 MO < (0 ! < !@ & !0 0 ,1\0 ' $ $P " 7_____ !4 M 7V #" #0 ! C_____ !T 7] ( !@0$( (! G_____ !T M 8$ , "04#( (! K_____ !D 0 (1 0$# ,!& 8% O_____ M !4 8+ $$"@D&%08 S_____ !4 82 $$! H"&@8 W_ M____ !4 89 $$#0H&& 8 #_____ !4 ( 8@ $$!@L&& 8 M__\ 0 % !0 0 (1 ,@ * +_____ !4 8G ' $ M) ! /_____ !4 8N * ( 'P ! 3_____ !T " 8U * M , "P ! 7_____ !X " 8\ % 4 * ! #_____ !H )P ' MN@ 4 @ " !__\ 0 ! !0 0 (1 ""0 !, 'P ! !3_____ !P )F !0 (0 ! !7_ M____ !P )N@ D (0 ! !;_____ !P )W H $ ! M !?_____ !P )[0 I 0 &0 ! !C_____ !P *!P I , M%P ! !G_____ !P *'P I ( & ! !K_____ !P *. E M 'P ! !O_____ !P *6 E $ (@ ! !S_____ !P * M>P I 4 (0 ! !W_____ !P *G0 I 8 & ! ![_____ !P M *M@ I < (P ! !______ !P *V@ I L & ! "#_____ !P M *\P I H ( ! "'_____ !P +% I P &P ! "+_____ M !P +, C @ )@ ! "/_____ !P +5P I D $@ ! "3_ M____ !P +:@ C T )P ! "7_____ !P +D@ I X &P ! M ";_____ !P +K@ B \ * ! "?_____ !P +UP I ! M(@ ! "C_____ !P +^@ C !$ )@ ! "G_____ !P ,(0 E M !( 'P ! "K_____ !P ,00 I !0 &P ! "O_____ !P , M70 F !, $ ! + Q !0 /\1 3@ 5 "W_____ !P M ,;@ 4 !@ ! "[_____ !P ,=0 $ &0 ! "______ !P M ,CP ( &0 ! ##_____ !P ,J0 * ! #'_____ M !P ,T@ , )@ ! "O_____ !P ( ,^0 0 %P !__\ M 0 ! !0 0 (1 '#P8! #_____ !P ( -$04 P #@ ! M__\ 0 ! !0 0 (1 '#P8! #_____ !P ( -( ! P M#@ !__\ 0 ! !0 0 (1 "@8! #_____ !P ( -+P(! M P " !__\ 0 ! !0 0 (1 $# 8! #_____ !P ( - M. 8 @ "P !__\ 0 ! !0 0 (1 $"0@ M !X8 >2 'G@ "$P DJ )?@ ":( FN *V@ "N8 KR :*_@ "PH L6 +(@ "RX LZ +4B( end SHAR_EOF fi cd .. exit 0 # End of shell archive