HSH HST0SH11 COM (ASH11 DOC1)SH11 ZZ0Am History of SH.COM Author: Richard Conn Current version: 1.1 ---------------- Version: 1.0 Date: 3/4/84 Original release. ---------------- Version: 1.0 Date: 3/6/87 Modifications: 1) Fixed failure to resolve a variable reference at beginning of line. 2) Looks in directory named "ROOT" for shell variable file, and at root of memory-based path if no such named directory exists. 3) Doesn't automatically install SH.VAR if another variable file is defined. 4) Stays resident if no following commands on MCL. 5) Allows quote and apostrophe characters to delimit a shell variable name. 6) Includes a scrolling line editor responding to cursor keys, and with recall of the previous command. Modified by: Dreas Nielsen 16713 SE 12th St. Bellevue, WA 98008 ----------------  Z3ENV* """͠ cNo Shell Stacks*"m] (X (|6!xAw#y 08r#0w4( #!ͨ cShell Installed* cShell Stack FullcShell Stack Entry Size!!!g>w#{w#zw~wD(~(w#~w6xAgy (>:g~# g X(c; c>> >=~ݖ=w>L=*X(~! #~/;/S&! U (̓c CL Ovfl /X>2!"!͌*~%3 (OX(ygy#/ ͥ| =*"#~%!> w~ͺ( #~#ͺ +͌(&( !ͫ (ͥ*yO~:=2*s#r#"ѯ=:<2*+V+^"G!~((#xx<>;:,.=-_'" *""wwwV ʋ ͭ ͽ   " " *~( ͖   6 \ [*R}>͵*i>5 8G>^x~G>͕͵*""W*~ݾ0~# +F+~ 0("͵~(#" 0~ݖ0 22 ~ݾ 2͠͵[*#"R|(~͠#W*~ݾ(@~( 0O~ݖ > %y͠#~ݾ0> ~ݾ0> x͕*~#"~[~ *R|SSWS 0͕͕O~ݾ*~GyHw# ͭ4W*~]Tw# 5W*[R|ͽ *~ ( ;(ͭͭ (;(ͭͽͽ*~G[R}x (;(ͽ*~G[R}x (; ͭ&!ͫ [*R}(G~#[ O~(# *RuW͵~Aww*w""*w[Ru~ݖA_4* >2&! ͻOG> A>ɯH !=~ # ~#fo X!o Cc Exiting ShelljXOWy/m/c Echo of Shell Commands is OXOWy/m(cN/cFF/c SH Commands -- !=~/c ~g# y##? SHCMT SHECHO SHEXIT SH VARA00:SH ROOTLASTCMD PSH VARROOT:("C u ͱ*6̀   *͐ ͜ (IK ͱ>*! ͻX~  : =S *~([  #ɯ =: = *>+~# >: -ͫ ("R >RDM=: =CS ͱ Y;(<*>[R%($D!##[ xIKS ͱ!& ͻX~  ͏ ~ $ #~+$ ##=  2 ͠ ѯ2 : t * ~Y d #V p*  : 2 >2  ͠ \͠  : 2 !   : 2 " ~Y ʹ #î " 5 \ 5 l2 2 2 y2 h ~2 :* 2 #:  ͕   :  ͕ : ͦ ѯ2 h ~2 :  .@ #h  : : c ~!c Y c #=Q : > *{ >?͎  #?̎ h > #Æ ! 4͝ && #dG~A @ 2 #~ ͔ ~ ͔ # ~ ́O ` 2 = ͏& #&  # )   =2 2 ~# 5 +~!^ =_.:,<>ȷ;ɯ~> ʍ #͔ ڑ Wyڑ ڑ ڑ ڑ ڑ Od y70 Ҟ ?7ɯͦ  > ͹ y¹ ~# COM2_`5:_#L/ͼ/1ͼ/L>C#5> C&ʸx2hy2idG~A}Ҹ2h#ʪSڸʗSڷ#€·́O ڸҸ2i:hG:iO=͏# OG=~!=_.:,<>ȷ;ɯ~L#SPWyPPPPPO#y70 ]?7ͨʚO~ʡX6yʕ w#‰>>͠ ~#´͠~͠xK+xw+ ͠w#>>>r###~>==rwr###wr xo|g~r xo|gw’G~ʣ#•Í~;ʺʺ>;~#º6Ís#r~#=*^#V*~#fo~#fo~*/F##x_*.~*$~#fo|*~!V=ɯ*G*,~*"~#fo*-~*^#V#~ѷͨXG*^#V#~#Fѷ* ^#V|~$G#~#$O"w >YVi~#ʽ ʧ ) ʔ ʙʙʝnn nyn nyG>GO> g³nd 0g _y{y0g{>.gg> g> g gggg g g>^g@g*. cO*. v2 2ê:_:_ Y X OG~w#HW#HW#r# x#CH L HL|l]}l~# x] ~+ xrg~#ʌ͟ʀ+~#ʌ͟ÌO !ʳ#©y  a{_*}$.͂,*O0|/g}/o#"U *O0"U+661 CHANGES TO SH.COM MADE IN VERSION 1.1 1) Fixed failure to resolve a variable reference when the '%' flag was in the first position in the line. 2) Changed to look for shell variable file (default: SH.VAR) in the directory named "ROOT", and only if that directory does not exist, to look at the root of the memory-based path. 3) Changed so that if invoked without a shell variable file name as a parameter, will use whatever shell variable file is already defined rather than automatically using, and defining, SH.VAR as the shell variable file. 4) Upon invocation, now stays resident if no commands follow it in the multiple-command-line buffer. 5) Included quote and apostrophe characters as delimiters of a shell variable name. 6) Added a scrolling line editor with the following commands: ^S : cursor left (overridden by TCAP definition of cursor key) ^D : cursor right (overridden by TCAP definition of cursor key) ^A : to beginning of previous word ^F : to beginning of next word TAB : to end of line, or if at end, to beginning ^H : delete char behind cursor DEL : delete char behind cursor ^U : delete char under cursor ^E : delete to end of line ^X : delete entire line ^R : recall previous command. The line will scroll within a window determined by the screen width of the currently defined CRT device. Up to 127 characters may be entered. The editor is always in "insert" mode. Only the single previous command may be recalled, and it will OVERLAY the current line from the cursor position forward. For instance, if you enter "DIR *.BAK" and then enter "ERA ^R", the result will be "ERA *.BAK". The previous command is stored in a shell variable named "LASTCMD"; this variable may be accessed just as other shell variables are. Dreas Nielsen 16713 SE 12th St. Bellevue, WA 98008 vSH11.Z80# AC@o3&ЀH'Sr&3AdtP@V2f4@b.H Ma`b9 h4h4T2 4 S8 !\g7 aA.6 㙠UMC(rgɄAJnfM2'-u6 6(o6L7aa]&SLd͖n!4LVfe z 5^؜!wQ7@fS\nnω[i4e;K1) =Er һ ' c!,Л!Ҍ.MZD(@K*pSPJκ'jdP)MA8C31mL00hL ,Vt[JWV^|OpZ03 TΧ$,W/1y .%iC AZ^M-%4@+zCs*+Jp17$^N hڐ,dG1[59 %tQۀ tظ+-Qp y8kz(REJ a$'\La V !@ N aX +g(Gk[xAĹ`Y&@ *dArCB5X2R!0@fBpVc*ZRҵNU3:E˟hjͱ*rgI?H* <[ ʇ pl $4X 4+7@%ҵ Kv٢F.xy:* @o^#.3G- @ 0N*`R @LY4 H-o'q:_8OeyUj*0EZP/4X9|:yOsɂ/pL2˟ H%n5 y+vgM-ze `$%RV8N|3oo @*!ËS7 }̓iokhHJ @$7ˣxm%=xh|C<5pX -uH^8ᅥ9t(L `†;0 A'ԺhZ K= W05,4ݚmuFFB≗Voo!3[2Yĵ%E;əA#} 46&);Nhsε8_XpUY SoZ7`C'O3ƍt1n=7k0MEAAkTk5CVZ,]+,Uq\x =Qz!v7[EO x)mҦVx b%:FTZGiA`EVX9qpaiy ;"v7p RWa1gGrj6W6 N\OTAf%j C,8Aw#-elI'YP)Z{1fZSZsA'0,HTuX2}Bp:a:fnK&N2cv`C?Zk@F}:|Ew_PhҋGROa"t3rkiӭWD(p,5ꋨrR1`z&E8`t/m%i_= \iVRQq,0wQrX7Kk.D\nsCG!qt y ?SEʎ#Mb2~Ci5r`eƫ&2#\p,9?\趎Dt1i-pY^;&1Mb (Zp:f/(a1:,[A^_XriAxwj#Yfp[f|t"͆qBC‹u w9|A 9_j/Q(`;yu@8\pr܌gDGm|Y h9."_o:/Y6Vuy֌pSK0flpIoRJtx.]Yg'znGo {ZaP1(2e1qF!rEcßa12͂x)Eh2"PzAP#m;t_'`)q4y;aIHx7xwhmNT6t@Swx_ S ^3 c~j3sGDAڠ0?4kzgSF: ~eWg1:ZSCuzGwazhCSQs+S{Q<߀4: vfpetSڒ\A!@*:Qza75! cE!B||uCL`oA#XI=,|<'&yҙA7X$[RP2B4J2Y'l xEDjحRIPbX- I/O2gㄱ:jCTE1*L0SYaxeE>T/*#)qdR'a`BEw0OZ0003r#.J:n m>\W ad65CV!YѪ+khdǎDLvq1n*'CCÑD*-/1a{{k3uϢ0b&$E2,Ixh9 :(8@9'n1X/Q8l wo׷x蓹]=ODRrJ|wTHH(10 n5 hY9O/0EnP }7(O~JJp* h~[)C+'ID)Vriy볂i e搙$[Kj]%[ABLjٯ0i^RĴTR%ņj:R2'%#{&%quޜY4Mo3Eя OYi[c%ƽjl~ 0cfIz̶)#ns9 ̤u v 2i;!)%!:AϜԡoSPBrⅱ#B{Ƀh.Ů>p 2tHN:Rn1ѹ#o׃Xl)j/aXt&:N!W~wc7;·mFּ^dy(ǒȇDȨH%<>Z"|Vol ֪7*R6͌lL~c51R̘'MLE eǸ6Q+L5fq:7p{'BL1Q!Qޱc3 fybi&&gZ#nǷ-c53}&۷]>'Mpq`3ա_̛L`hفs_9ծ_ݙ,({07uB7Ds[v{d6ea n,AbCۄMoDd6~dO`}eڍ{!iBtC%"d[]d,ѽ}LÝ: 0M:>&Zd`3TK{@m:$)Ԧ)1΁f=J2ijQ&Ed>]aG(OLl:qӇ@ⴶ\5r?O㑶n5~kb*D~oh}勆,(==Nյ&J)_1yT>X1Gv-۔<4sM^+H&Y}GIZ}\iJvhO~^d@ew0Hpv\4nP[pxɴ> S &h]QҝL.i5>ј,]aisFI rs/ o%!&?C#/?)+֞iض&snuYqS%Q^gln۸q)@;-.b'&>ur` o&EK^c §,?/t̉܋xѪEgm>p^)ʣQO¹$j@ pf!Œ`'&[Hi7AoAA&^:gBp(| ̓Ȓ nP5S)%D_K⟝QF &o/R9R(eJw8I" % %6BI WfY/O 'Mt dM޾pQUB o~rǸ#3F/_kNa.&\Cga@0F^pm IJpZm])߲G[?SoK]6e)t tdD喀2'?Q@0=K=(o%r!m2bVscw*nPtr,+vAךck.ϼvsLǵ_ v4w4q4gǺ_0$V(XCejo!^و@c&@9^%o̶{oY}Jc.RQ?WEH{k>p9Uo_n8f2[޾y66QP!Rߡ% ޼rsB\Pca^RǾ cI.7?"z∃6v?([o@,vJ\pqVv6Z~w1)OYa,tKyO lYR_7XMͪ5*B:ˌdմn^b=%&Y(BC~tﶩݐC1*!Kn5y"~,$O6˙b.O]sd=[L$6 d[.1%Q^#L]B`r͒Iz[QQ#R-AdviT~ n gY1XBqyKo=+BY)W0 r xI\CbO 5ݠ:Z^ޤM|=Paƽw3to檦ۢu{a36IT؃%7\]1d/.D[o۰9J+dy.[o«~2ǸuW?,vI*Wa6 fW2usԀ,I<&rvir^As1X΄% u밼'R|>xM|g'>:.-'p"ZʖS(T'EۀXO. m6׶`CPR Pyf E}BN^4=[iSw7YЮ-,?=QhW)AP +H,)?Ukܾ@d&aVKVқ ,,U@Y4Ӌ3 }uDRaYNTPRv6RuFu([ĉؚк,a_ܕ0KPP`ȯPN(QRugAv#Nay\\-{ڪUD8K}9A+$b mBPHaW {[,C≉$}uQ1^\&ؚ7X BÃK7[FTLMgM^A7@W6Ƙ#RݧTihzT75LRT5&X`O.\ܵ" Peei=DzкE)_ 2y*v 7@XnXFsX;'- E. 'ͦ" U2evn4غ9vTCDY59@U\OgB"-q܍ܐNa\>,? ZX2B"1#1\|c`-9VooS|(-=u*Cm|Ğݧ=ZS7bbyv4zz@0Whݼ,Xn,e 'A Ƙ BLWm,bNڕVTX$T PQo~iW oԯZP@|P ̟/MQs:qx(!}3DzɷA2yإe +!,~ C'8?\?*>2yak@tGZizAZ傉ؤ{8&XB9+;E`JALba_7y.1}tWԡ>uNc2v(LBๅܱ^-D,k'@ɆT{'rkSsn`'-.$M }]ye]vPP@TX$ Ѫoat;9QJġN"),'E])H?lyL