LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!)/^dkz6>CHAINSTUTRANSCENREALMODEPRIMS2 PRIMS2 SOSIO DIRSTUFFDIRSTUFF bs/COMPARE.OPTIONS58A1 7/.PASMAT.OPTIONS 7#.PROCNAMES.CODE 7!PROCNAMES.LIB7/PNAMES.OPTIONS48.,COMPARE.CODE8'COMPARE.LIB8/III.PCL.2u' )TOOLS.LIB454,)XREF.CODE65 XREF.LIB6/,XREF.OPTIONS69+PASMAT.CODE&J6PASMAT.LIB >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@Lg9g&':./3Copyright Apple Computer, Inc., 1983 - Ira L. Ruben  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ USES {$U FLOATLIB/REALMODES.CODE} REALMODES; FUNCTION SIN(X:REAL):REAL; FUNCTION COS(X:REAL):REAL; FUNCTION EXP(X:REAL):REAL; FUNCTION ATAN(X:REAL):REAL; FUNCTION LN(X:REAL):REAL; FUNCTION LOG(X:REAL):REAL;  IMPLEMENTATION E Vb < 0ݪPܪP0š YY0PYǠYPF D ۮ   ڪPXP šEצ:š  >#צ*צ:á >š{-NVWf-N@ȡQ-Pצ:-á:ײPN? XP ??زP>پ/ˡ צ/P?8??زP>? pp~*0< 0ݪPܪP0š YY0PYǠYPF D ۮ   ڪPXP šEצ:š  >#צ*צ:á >š{-NVWf-NتPRš+R+PP4تPRšG+R+PGP4GRšزGRPزGPR0ȡپ á* š*۾١:/˄ /P /áadditions} &PROCEDURE stop_exec; #IMPLEMENTATION X E te stringlength must be even or else change code} &PROCEDURE setchain {tytle: string} ; {$p} )BEGIN {setchain} ,IF length(tytle)>sizeof(chainfile)-2 THEN /chainfile := copy(tytle, 1, sizeocval(VAR val: string); &{Pascal 1.1 additions for application support} &FUNCTION set_prefix(new_prefix: string): boolean; &PROCEDURE get_prefix(VAR current_prefix: string); &PROCEDURE get_pathname(VAR pathname: string); &{Pascal 2.0 additions} &PROCEDURE stop_exec; #IMPLEMENTATION N E &PROCEDURE getcval(VAR val: string); &{Pascal 1.1 additions for application support} &FUNCTION set_prefix(new_prefix: string): boolean; &PROCEDURE get_prefix(VAR current_prefix: string); &PROCEDURE get_pathname(VAR pathname: string); &{Pascal 2.0 צNot a block devicePצSegment request deniedPצSegment table fullPצInvalid segment numberPצSegment not foundPئInsufficient heap spaceתPצ?No files were selected from directory or the directory is emptyPئ%Pathname does nfoundתPئFile not foundתPئDirectory is fullתPצIncompatible file formatPצEnd of file would be exceededPئPosition out of rangeתPצAccess not allowedPצ File is busyPצNot a SOS volumePצDuplicate volume errorPVV.VVVVצ.V šڹئDevice name not foundתPצResource not availablePצ I/O errorPئDevice is write-protectedתPצInvalid pathname syntaxPئPath not foundתPئVolume not &PROCEDURE setchain(tytle: string); &PROCEDURE setcval(val: string); 1073 lines compiled in 2.30 minutes. . 7.088.225.226.227.228.251.252.253.ǾV ɡ(VVצ00VV.VGdɡ'VV0ETFLOATLIB/TRANSCEND.TEXT*:>twt{+w LPot{ DEVO/FLOATLIBtJJ|rXt{JJXt{X //d- ^ -ECommand: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,G9 9 آ9 9آ99آ9 9آ99آ9 9آ99n ب9 9999990 /9 9 >ߡڑ9!,ب"! .ء1ٹ#($$% &'( .ٹ)'*#+,-. jء1ٹ/(0$1 234 eal): boolean; function isNaN(x: real): boolean; function integral(x: real): boolean; function unordered(x, y: real): boolean; function infinity: real; function maxreal: real; function minnorm: real; '^'^function minreal: real; function makeNaN(signal: boolean): real; function copysign(x, y: real): real; function logb(x: real): real; function scalb(x: real; n: integer): real; function nextafter(x, y: real): real; Implementation E unction finite(x: real): boolean; function isNaN(x: real): boolean; function integral(x: real): boolean; function unordered(x, y: real): boolean; function infinity: real; function maxreal: real; function minnorm: real; '^'^thalt(e: xcpn; b: boolean); function gethalt(e: xcpn): boolean; procedure setround(x: rmode); function getround: rmode; procedure setclos(x: closure); function getclos: closure; procedure setdnorm(x: denorm); function getdnorm: denorm; function finite(x: re list to the front n.j. 7/26/82}  function sqrt(x: real): real; function rem(x, y: real): real;  procedure savenv(var e: numenv); procedure restenv(e: numenv); procedure setxcpn(e: xcpn; b: boolean); function getxcpn(e: xcpn): boolean; procedure se type numenv = array[0..2] of integer; rmode = (rnear, rpos, rneg, rzero); closure = (proj, affine); denorm = (warning, normalizing); xcpn = (invop, underfl, overfl, div0, inxact, cvtovfl);  {these function definitions have been moved from the end of th  ??ܳ1? ?=~@:?ܳ^  9   9 á   9q99 á  H9/9á  9 A     >[hhhhhhhhHHHHHH`(6> Fh&jF ????2 ?  ??ܳ1? ?=~@:?ܳ^  9   9 á   9q99 á  H9/? ?> ??    >9ܑ95?.????2 ??L=[?9  J 9 9$ ? ?8 ?? ġ,@ነ 9 9/9 á   9 ?Br99B 9?;ܳ1?ܳ^; S>9߳I@߳}:#{9L.6ZO$<=*      < ?  &.ٹ5'6#789: jع;<=>* á?@ áABDDE *Dá HB  6GCF D Ná(EF I!  F) \0 0  2)22)*`%Р0 % 2)8`%0Ԡ0 ffff쩀%A0 4)4074)@E0iii2)8`2)`$%ʥjŐ8Lti i&&&eeP 3b88 E50V&&jfHHHHHH`*$Pߠ0 2)HHHH l%L0 HHHH2)L2)4)@:4hhhhHHHHHH`$hhhhhhHHHHHH`"hhhhhhhhhh&&8ffff8e080 HHHH`HHThhhhhhhhhh8&&&HiHHH`8hhhhhhhhhhhh**HHHH`8hhhhhhhhhhhh&ffHHHHHH`>hhhhhhhhhhhh&&jfHHHHHH`BhhhhhhhjhHjjHHHHH`*hhhhhhHHHHHH`"hh5)`hhhhhhH5)@HHH`,hhhhhhH50HHH`*hhhhhhhhhhH&*HHH`.hhhhhhhhhhH**)HHH`0hhhhhhhhhh*J2)ʢ2) HHHH`4`@4` 4`4`hhhhhh404)@ 4) HHHH`:5)`5 @`5 ``2)ߑ`hhhhhhhh0)YU0)HD0)730)&"0)ʢ0) HHHH`hhhhhhhh2)YU2)HD2)732)&"0)ߑ`2 `2 `2 `2 `2 `2 `2)`2)`2)`2)`2) 0 2) l` 0 2) l` 0 2) l` 0 2)  l` 0)`0)`0)`0)`0)`H`"hhhhhh3HHHH`"hhhhhh1HHHH`"hh4hhHH`hh2hhHH`hh0hhHH`0 2) l` 0 2) l`RM M"MfOM1S Q "-!ǀ@ hhhhhh5HHHÄNM-ܡܑP  š  <R  ȡ  $H ZS.KL"M(N (OM/   NMz fNMNt   \ < J K$L92hhhhhhhhhhhh&*8f$3C$&&jHjHHHHH`8ߥץ0ϊLIHHHHhhhhhhhhh hFfff8 @| e e e e Ffff Ffff  e e e e &&&8 LAFfff Ffff  e eee e e e e &&&e eeeLH  )right_arrow = 146; {2nd right arrow char} )up_arrow = 147; {up arrow char for "more above"} )down_arrow = 148; {down arrow char for "more below"} )up1 = 149; {1st third of "more" for "more above"er for window frames} )bot_right = 143; {bottom right corner for window frames} )bar = 144; {vertical bars on window frames} )dash = 145; {1st char of the right arrow} n} )right_side = 139; {right side bar/dash intersection} )top_left = 140; {top left corner for window frames} )top_right = 141; {top right corner for window frames} )bot_left = 142; {bottom left corng} )err_d_arrow = 135; {down arrow used in error msg} )err_l_arrow = 136; {left arrow used in error msg} )err_r_arrow = 137; {right arrow used in error msg} )left_side = 138; {left side bar/dash intersectio)f_char = 3; {}  f_code = 4; {}  )maxstr = 132; {max length of a "strng"}  ){Special font characters defined by define_new_font} )err_u_arrow = 134; {up arrow used in error ms /BEGIN {with cursor at end of line we can support lines longer 6than the viewport width} /cp := length(line)+1; /x0 := x0-length(line); /WHILE x0<0 DO 2BEGIN {[g+]} 2x0 := max_x+x0+1; y0 := y0-1; 2END; {[g-]}  END ,ELSE {if cursor)f_ascii = 2; {} ine := line; ,inserting := false; ,maxstr1 := maxstr+1; ,get_viewport_limit(max_x, max_y); ,getxy(x0, y0); ,highest_y := y0; , ,first_time := true; ,erase_setting := NOT curs_at_eol; ,IF curs_at_eol THENn = 12; {max number of open files allowed}  )ioread = 0; {read mode for a file} )iowrite = 1; {write mode for a file}  )f_avail = 0; {file types} )f_text = 1; {}   &{$p---------------------------------------------------------* '| PRIMS2 - String Version of Primitives - Updated 08/28/83 | '*----------------------------------------------------------*}  &USES sosio, chainstuff;  &CONST {[j=13/40]} )max_ope X 8>*9SGEMPTYHEA\YINPUTFIBBOUTPUTFIBbYSYSTERM BxYSWAPFIB BYDKVID rkTHEDATE +DEBUGINFYSTATE ^>PL ``]VO)&%  XMLI#x&T|( l r  & < R | $ < T l ,Rx4X|$N x>z \ x8  Lb HH`hhhhh*68jh*vHH` `hh00 2)hh ljH*vjHHHHH`Vvvv`666``8`yyyy`8  L     SL   JL 0 S LL 5ӥ L 5Ll  E  6ELI  SEU 0   &&&%e   e e e e  FJH HHHHH`4)@ 4  0 2)hh l` ^hhhhhh x x   88 e   } )up2 = 150; {2nd third of "more" for "more above"} )up3 = 151; {3rd third of "more" for "more above"} )down1 = 152; {1st third of "more" for "more below"} )down2 = 153; {2nd third of "more" for "more below"} )down3 = 154; {3rd third of "more" for "more below"} # &TYPE {$p} )filedesc = integer; {file descriptors - NOT SOS ref num}  )strng = string[140]; {string )have_error: boolean; {true==>and error was detected} ) )cons_bufr: ^cons_buffer; {ptr to big console buffer} )cons_len: integer; {number of bytes in "cons_bufr"} ) )open_tbl: ARRAY [1..max_open] OF fct; {File Control Ta , a_dc3 { 19 } , )a_dc4 { 20 } , a_nak { 21 } , a_syn { 22 } , a_etb { 23 } , a_can { 24 } , )a_em { 25 } , a_sub { 26 } , a_esc { 27 } , a_fs { 28 } , a_gs { 29 } , )a_rs { 30 } , a_us { 31 } , a_sp { 32 } : char; ) stx { 02 } , a_etx { 03 } , a_eot { 04 } , )a_enq { 05 } , a_ack { 06 } , a_bel { 07 } , a_bsp { 08 } , a_ht { 09 } , )a_lf { 10 } , a_vt { 11 } , a_ff { 12 } , a_cr { 13 } , a_so { 14 } , )a_si { 15 } , a_dle { 16 } , a_dc1 { 17 } , a_dc2 { 18 }char} )tab: char; {$09 tab character} )newline: char; {$0D new line character} )escape: char; {'\' special char trigger}  ){Ascii codes $00 to $32} {[j=0/0,f-]} )a_nul { 00 } , a_soh { 01 } , a_)valid_chars: setofchars; {valid read_keyboard chars} ) ){Universal Character Constants} )endstr: char; {$00 end of string char} )endfile: char; {$03 end of file char} )backspace: char; {$08 backspace at '*' as *system.library.} )err_bell_sw: boolean; {true==>let write_error ring the bell} )dot_text_code: boolean; {true==>add .text/.code if required} )codef_setup: boolean; {true==>setting up a codefile} ) x/y set by mustgetarg which are Hused by mustopen and mustcreate} H )sel_menu_x, sel_menu_y: integer; {selector menu x/y coordinates} )sel_menu_len: integer; {nbr of names shown in menu at any time} ) )lib_sw: boolean; {true==>trerefix} )exec_prefix: string; {executing program prefix}  )must_prefix: strng; {"$" prefix for mustopen and mustcreate} )must_suffix: strng; {"$" suffix for mustopen and mustcreate} )must_x, must_y: integer; {screen)stdout: filedesc; {standard output file descriptor}  )console: integer; {.CONSOLE SOS I/O ref nbr} )cons_d_num: integer; {device number for console}  )curr_prefix: string; {current Pascal system filename p setofchar; {command options} )ret_to_shell: boolean; {true==>return to shell}  shell_name: string; {shell name (default *shell/shell.code)}  )stdin: filedesc; {standard input file descriptor} PACKED ARRAY [0..2048] OF char; {big buffer for screen} ) )setofchar = SET OF char; {a parameter type to some Primitives} & &VAR {[j=15/40]} {$p} )nargs: integer; {total number of arguments} )options: ;buffer: bufr_ptr; ;bufr_cp: 0..1025; ;bufr_size: 0..1024; ;end_of_file: boolean; 8END; & )io_blk_ptr = ^io_blk; {pointer to standard I/O blocks} ) )io_blk = PACKED ARRAY [0..511] OF 0..255; {a standard I/O block} ) )cons_buffer =8RECORD {File Control Table} ;ref_nbr: integer; ;ft: f_avail..f_code; ;ct: (c_console, c_printer, c_silent, c_other); ;mode: ioread..iowrite; ;filename: strng; ;curr_line: strng; ;line_len: integer; ;line_cp: integer; ;pvt_bufr: boolean; format}  )bufr_ptr = ^io_buffer; {I/O buffer pointers}  )io_buffer = PACKED ARRAY [0..1025] OF char; {I/O buffers with 2 Ynulls at 1024-5}  )f_entry_bufr = PACKED ARRAY [0..38] OF 0..255; {file entry buffers} ) )fct = bles} @{$p-----------* A| Primitives | A*------------*} A &PROCEDURE str(n: integer; VAR s: string); & &PROCEDURE trim_blanks(leading: boolean; VAR s: strng; trailing: boolean); & &PROCEDURE get_td(VAR s: string); & &FUNCTION open_directory(dir_name: strng; bufr: io_blk_ptr): integer; & &PROCEDURE close_directory; & &FUNCTION next_dir_entry(VAR file_entry: f_entry_bufr): boolean; & &FUNCTION dev_or_vol(name: strng): boolean; & &PROCEDURE setup_filename(VAR name: strng; VAR ftype: integئתPġّڞڿ'  áۡڞ-> `š2ڡ  šńۑ D:#//   : ::ed, rc: integer): boolean; & &PROCEDURE get_options(valid_options: setofchar; options_file: strng; VAR delim: char; curs_at_eol: boolean); & &PROCEDURE getxy(VAR x, y: integer); & &PROCEDURE get_viewport_limit(VAR x, y: integer); & &FUNCTION dEDURE p_message(s: strng; fd: filedesc); & &FUNCTION open_odometer(name: string; x, y: integer): integer; & &PROCEDURE display_odometer(od: integer); & &PROCEDURE set_odometer(n, od: integer); & &PROCEDURE close_odometer(od: integer); & AR c: char): char; & &PROCEDURE putc(c: char); & &PROCEDURE putstr(s: strng; fd: filedesc); & &PROCEDURE putline(VAR s: strng; fd: filedesc); & &PROCEDURE get_sos_error(sos_rc: integer; VAR msg: strng); & &PROCEDURE p_error(msg: strng); & &PROCtline(VAR s: strng; fd: filedesc): boolean; & &PROCEDURE closef(fd: filedesc); & &PROCEDURE remove(name: strng); & &FUNCTION set_echo(on_or_off: boolean; fd: filedesc): boolean; & &FUNCTION have_input(fd: filedesc): boolean; & &FUNCTION getc(V:VAR eoff: boolean); & &PROCEDURE flush_buffer(fd: filedesc); & &PROCEDURE put_out_line(fd: filedesc; VAR line: strng; len: integer); & &FUNCTION getcf(VAR c: char; fd: filedesc): char; & &PROCEDURE putcf(c: char; fd: filedesc); & &FUNCTION geer); & &FUNCTION openf(VAR name: strng; mode: integer; bufr: bufr_ptr): filedesc; & &FUNCTION createf(VAR name: strng; mode: integer; bufr: bufr_ptr): filedesc; & &PROCEDURE next_page(fd: filedesc; bufr: bufr_ptr; VAR size: integer; Z۪M OL: LwOO˄aN'L:LG'ML:L+'ڝ'#'۝'$'ܝ''''ġ ':'٭$'ɡ'á%'ٝ': &'ޝ'ڝ'޾ˡ''š''ڝ'ݞ'ޝ'ۂ'ޝ''ݝ'ݝ'š'ˡ ڪKKš-K/ˡ$./ÍKKK/ KPצQ   Ȅ2ʀ'_r'ʀQ˄ʀˍʀ':QʀDŽšʀDŽʀʀ'=ʀ'\áL'? ':QʀáLʀILˡCR̀ƀʀnjƀצ: ǎƀRƀ.ƀ'? ':QLáʕڢڣڢKڣٿڢڣٝ'=ٝ'9Í ڢKڣR'c̀ʀʀġʀá''? ':Qʀʀʀ:ʀá"ʀ'_ʀ ʀá>ʀʀʀ'_ʀʀ ʀO؂ܕġROOč <OOO۞O ٪ە؞š,OO'OOO OOݕOO؞ޡOO؂Oá OO<ٝ':ˡB'cv'cKKšKá*KšKKڝ'_ KKKK: K;LLKnjL: ǎLLצ.L 'cOOá   *Oؾ'=ÄOQˍ ؝'Uš'? ':'_áVLˡ=OONnjO: ǎOOצ.O'? ':  'cܣܣܢܣ'_á<ܣܣܢܢ ܣܢ۝':ܢܣL :  :á⢀á>⢀ˡ*⣀''''⣀ޑ  'cNNá''? ':N:pNáV'Q˄NˍN':DŽšDŽ'=DŽ'\á'_ 9:;<=O>?^:#@ 00 00 00A@'c!>=š'c : ᓡ E˄ RˡÂÏá :  áá:sá:Kצ.CONSOLE8 '? :'? :ǀ'=:áˡ-''''ݑ9   NSOLEׯ9צ .SILENTYPE.PRINTERׯۚᢀᢀڟˡᢀ0ᢀ'á ''''ᢀښᣀ'_ᣀ'_ᢀᢀᢀ ō, B==š'cDE'5̀ƀ5ƀҦ.TEXTƀҪ5Lš?̀ƀ5ƁR;ƁRƀҦ..ƀҪ5OQSx|~ 'c ˡ ܪá nj צ.Ǎ .CO55.5/˄5#˄&5̀ƀҧ'@Pƀ5ƀҪ55߾.á'(''5ɡ ƀתƀ5ƀƀҪ'(V''Nƀ.TEXTׯ 5ƀ.CODE׷'5̀ƀ5ƀҦ.CODEƀҪM''Dƀ.TEXT׷ƀצ.COƀҦ QƀҪá@55̀ƀҧ'@Pƀ5ƀҪ5 5/á5š~5 ˡ(5/5̀ƀצ/ƀ5ƀҪL55̀ƀצ.ƀ5ƀҪ555 :5/& 55'(š5 Ą.0ܝ'ڝ'ŕȡ ڂ 5 ܳ ƀǀǓ ƀǀš ƀ :š\55 ˡ,5̀ƀ Pƀצ/Qƀ5ƀҪ5̀ƀ Pƀצ QƀҪ5̀ƀ P  ߿5̀ƀnjƀҦ ǍƀҪ5%á'55̀ƀҧ'iPƀ5ƀҪ:55*áV5á%5̀ƀҦ#4:ƀ5ƀҪ"5̀ƀצ#4ƀ5ƀҪ5#áƀ  ʀʀ'=ʀʀ ʀʀʀ'OʀÄYʀʀ š š'DŽšDŽʀʀ%šDŽšDŽʀʀʀߚʀʀʀˍۍʀʀ? ?Lˡ0DŽɡ(š#ނDŽšDŽ ޞނj( ?'cݣL ݢ?Lá ݢ>''á ȡ'c ˡ}áFࣀš'= :<+ác++Ǜ ̀ʀȡ+'?+:!#š"#"'Wáp š[  'W$B  Ǜ 'W'W 'XLjd šO@  A$e (if any)-'&nCw$DŽ$#%ؓ"ء* ɡ #Ä! ٝ'D'`5  '`ٝ'R á '`.%a%&Ǜǀ&< +צ5 (or CTRL-D) and (or CTRL-F) delete charactersL..I (or E or CTRL-E) for . . mode%.AAצ3D (or CTRL-Y) deletes from cursor to end of line, 3AצCTRL-X deletes whole lineLAצ'ESCAPE restores original lin08@š0 ؂؏0A$ ġ% 'W%@A0bB$replaceת insertת'&'&צ and move cursor, 'ڣ,ڢڣ1'ڣ-Bڣ-š#ڢڣ/ ڢڣ0 ڢڣ1'ڣ-ڢڣ/ ڢڣ0 ڢڣ1 ' ؤ3ۢ'Nۣۢ* '>ۣۢ*:< '''?:*! ؂š ؕ022ۿ2ڿ2 /020202*010ō  Z "' ؤ3'ڢ+ڣ+ڢ,dڣ,dڢ- ڢ.ڣ- ڢڣ2'ڣ.ڣ+š5ڢڣ/'ڣ+ڢڣ0'ڣ,ڢڣ1'ڣ-uڣ,š,ڢڣ/ ڢڣ0KJKȡJJJ'= 6ܪP10' 032200012ɡOšOɡš//JšJ//JšJ/2+2,2-2.2//202/212022212/2/ 2mptyئ%Pathname does not specify a directoryתZ0mP<&u_C+bVVצ SOS error VV_f Jت'X'M'N9R٪Juplicate volume errorצNot a block deviceצSegment request deniedצSegment table fullצInvalid segment numberצSegment not foundئInsufficient heap spaceתצ?No files were selected from directory or the directory is et foundתئVolume not foundתئFile not foundתئDirectory is fullתצIncompatible file formatצEnd of file would be exceededئPosition out of rangeתצAccess not allowedצ File is busyצNot a SOS volumeצDVGdɡ'VV0VV.VVVVצ.V šڹئDevice name not foundתצResource not availableצ I/O errorئDevice is write-protectedתצInvalid pathname syntaxئPath no'cۣš'=ۣۣۢ'=ۣڿN צ8016.037.039.043.064.068.069.070.073.074.076.077.078.080. VV ǖVצ(082.087.088.225.226.227.228.251.252.253.ǾV ɡ(VVצ00VV.SCAPE to terminate.ם'R'DK-K'Dá9L ''cá'"'cˡ'?:6ڝ'<؝'=٪JKJKȡJJJ 0ˡ :á::ࣀ''''ࣀ'  تJ JˡI:IL̀ƀצCannot remove ƀǚƀ̀ƀLnjƀ.Ǎƀ .Press RETURN to continue, E0Ǜ'W0'W 'Xá$U ɡ=     Ǜ'W 'XV DŽš%Line is too long!צצ-) š      Ǖ`$  ȡ4@A$ Ǜ0 'X$  K$B$@AǛ0á0ġB\$H ƀצ.ǍƀaYSSɡ ƀתƀƀSƀƀ.CODE׷!̀ƀnjƀ.ǍƀSS/S RRSˡ,ƀSRƀƀSRRƀ.ˡ צܪ ܪצjHJL,(1٪$á1/á̀ƀnjƀƀ$á]/צ:Ä!̀ƀnjƀ/Ǎƀ̀ƀnjƀƀܦ׷ צč*צ=/Í 5&1Q '''()Qá!̀ƀǾ̀ƀnjƀƀ$ ̀ƀnjƀƀġ^áU۪USSá UצBS/US RRSá Uת#UUƀSRƀU/Uצצ^ˍצ/Ä̀ƀUnjƀƀ8`J.۝'ō:''ݾ'9ˡܧ'ݾ-T//GMMnjM ǍM۾ ܏۾0* `0 ߪצ*%Í5$Ä&<ƀFƀF]FFʁ;'&'X))'2ʁ9Ɓ<ʁ8ʁ2 Ɓ<ʁ7ʁ6F'>Ɓ3Ɓ4:́:!؝'D 'X.E* f-'`<#''''+''?':)'&'2Lʁ2''ʁ2'ʁ5''ʁ5'ʁ;>''''+''?'Ɓ4:́:)ʁ2ʁ5,́9Ɓ7Ɓ6#Ɓ<'ʁ2Ɓ<R Ɓ<''M'́8Ɓ<ʁ8ʁ2'NƁ<ʁ8ʁ2'́9''& 'X; 9*(39<82 <8<99pFƀƀ].%́;ʁ;'`'?Ɓ:Ɓ4:́:ƀ׷ƀ׷]׷׷́5ƀ́2ƀʁ2šƀ́2]ʁ2š]́2ʁ2š́2ʁ2LšLZ'?:))*nj)66ȡ Ǒ)Ǎ)*ǎ)66ȡ Ǒ)Ǐ)))*66ȡ'U)ǐ)*66ȡ'U)ǐ)''?:,Td,ئ׷`2š2':'!'a 'ɡ'߭V&'bš'>'a'b:'b*'تII'bš''a'bI'bI'b<('bġ''a'bؿ'b'b())))*)*)*)+ |DǏ Dǐ DǑDǒ ? DǓ"UDǔU"DǕ6***"D'?:ǖF)))&DǗ3HxpDǘ6***"DǙF)))&Dǚ3HxpD'?:T %''ߝ'á/'?':'?'.'Z'?':'F'a'b'':,' dž*IDLJI*DLjDlj  DNJnjnjnjnjnjnjnjDNjnjnjnjǏnjnjnjnjDnj| DǍ D'?:ǎ)+-/1357V&("'?:$##O#$ؓؿ$E࿶EEEEEEEE0D''ߝ'š&%(ɡ''&%' 'X#" DŽ$Ą%צLine is too long!צצ-$K @  AǛ0'V?#צ š    $B'?&:!#%'ˡ'T 'XǛ}$á תwˡ'Tؓ"ء   ǯǿC#"')'!/צM̀ƀ Argument ƀMǕƀ is missing.ǡƀ צ.Press RETURN to continue, ESCAPE to terminate.ם'R'DL-L'Dá9ئתh'Xצڡ'!' 59;'!' #؝'R'DL"L'Dá9l ,2ڪƀާ'ƀ'٪'!' ƀƀ19 NNȡNPׯ'!Ʉf'X'Mצ: P.'N9́%Ɓ%צ Cannot open SnELName File Type Blocks Modified Time Created Time Length תPL Lnnھ/ánڞ'M'Nn ?'n  Un ɡType = תProDos=תn ooo(o^ ڕڞ-' -   ת  R Z J ڕڞ:0 ڕڞxM)٢(ء'N)'R)>MڟɄM'U)ښڟˡMښ'S)5@Ná'U)M.Oá'T)M.P    ʁ:á ʀݸʀݚʀݸ H)*)))) LˡǘǙǚ'# '"LǑǑǑ'# '"LˡǘǙǚ'# '" LǑǑǑ'# '" L|K ) Ǒ)ǒ) ) )ء'ƀʀˡ &HƁ&Ɓ&̀ƀʀܿƁ&ƀʀܞƁ&á%ƀ́:Ɓ:ƀnjƁ:/ǍƁ:IJ(4ɡ &Hƀʀ́:ʁ:ƀߪʁ: Ɓ&Ɓ&ʁ: Ɓ&ʁ:Ɓ&ʁ:Ɓ&!ʁ:ʁ:ʁ:NɡNݕN bG۶šL0Iڶš!ܶڕ:Jƀ۪Lڪ٪L̀̀ƀ''/ƀ%ƀ́:Ɓ:ƀnjƁ:צ.ǍƁ:؍N ܑ/ ܑá۪ۧ'@'@)á צN݂ݑN݂ڦת٦תئתá&Gܾ/á!NNnjNצ/ǍN&Gܑ/ ܑˡN݂ݑNšNNצ=šNZ'Rá'%*ۦ*SYSTEM.LIBRARY.תצTSƀ\1&5VUWWšW.áWWƁWƁTS#RQ$SQátxX5á ۧ'@''NNnjN.nue, ESCAPE to terminate.'R'D[-['Dá&5́ƁnjƁƁxǝƁW''fW/ˡ^Wɡ \ת\ƁWƁ\.TEXT׷\.CODE׷!́ƁnjƁצ.ǍƁVUWWšW=áWǍƁVU'UZƀ'\'٪Z'RˡƁ1۪''!́ƁnjƁ.ǍƁצTSƀ\1&5''PƁxPO6Ɓ1OˡOƀ́ƁƀnjƁ.ǍƁ צ.Press RETURN to contiړVUTƁ')Y Y'UZ')G'9۝'D'R'U'TZ"')ƁZ'Dá&5צ=š'UZZ'UZ'TÍ/Íj!́ƁnjƁצ/ǍƁ́ƁnjƁ=te.'R'DO-O'Dá9'!' 59Nš'!' ݧ''19'!Ne0f 4ުġ ׷ VU#VUצ=šY2/á&ÝƁnjƁ=ǍƁY NNȡNPׯ'!Ʉf'X'Mצ: P.'N9́%Ɓ%צCannot create Ɓ%ǚƁ%́sƁsPnjƁsצ.ǍƁs צ.Press RETURN to continue, ESCAPE to terminaƁ%ǘƁ%́rƁrPnjƁrצ.ǍƁr צ.Press RETURN to continue, ESCAPE to terminate.'R'DO-O'Dá9'!' 59Nš'!' ݧ''19'!Nc0d 3ڪƀާ'ƀ'٪'!' ƀƀ19۪n #ڕڞn%Rn/Sn5Rn?SnǀnIڕڞI:nnJ'&'&E -'&Q `ƀG'#9ŝ'#ɍ9'#'"ŝ'"ɍ'"'$ɡ'$'"'$š '"'$`ƀ Hȡ!á ᑚ&6'$š'$ #Ɓ9Z'?Ɓ9:%!&6'#'"'#'"+''?Ɓg:),)'#'"*()*NJ) ̂ʂȡ Ǒ) Nj)ϭL_ ,]٪צEnter option letters׷4 (type צ ? for help): \[#ƀתƀ')aeźeʁȡBe deddeá'?:'X) *'U)`á'?:'X) 'S)'T)` L+''?;:'? :[N+*V $zF  bbצ and move up and downצ-ޡo more informatiońhƁh for the " Ɓh Ɓh" optionƁhצ-&]# Z'? : L+''?;:), ,+ *)*)'S) a'`^''>:!'` á'Rߝ'RÝ'`.))) _ˡǕǖǗ5 _ ǑǑǑ5 _ˡǘǙǚ5_ ǑǑǑ5_L^'bš'٢'a'b'b'b'R)>`ڟɄڮ`'U)ښڟˡڮ`ښ-8a.'ál  آצNmm'U)Yġ 'T)V [nánnmm'T)Y ˡiá]ڟ˶m˄-ٶnánnmm'T)Yġ 'U)V \)*)) ) )ء'M)'bš'ۢ'a'b'b'bء'N)'R)YڟɄY'U)ښڟˡYښ'S)5@Zmánnmm'U)Y ˡjá]ڟ˶n˄-ٶmánn} vo}v o v o v o v o  V'b š''a'b 'b 'b.XˡXvXˡ}XoX.W˄) )ۢڳ ڶ Ǒ)ǒ[*\ٶ)ض^č))+ FU[ Ǔ[ Ǖ ǖ Ǘ }}}}}ǘ}Ǚ}ǚ}}} } } ǔKKIkI"ˍfKFšKFKKKKáJ JJlI ák JkJjlKš(KKK)šK)KKKK KKlkLLáLJlJJlT)\irectory infoƁ$-á˄ʂ Ʉ+ߞ߂ ̂ƂnjƂ/ǍƂ!jAl 6تJ)JKKKá  ʁ #Ɓצfrom the list.Ɓƀ-'#'"'#'"+''?Ɓg:&'?Ɓ9:( U "$qqǕáQ[ and move up and downצ selects, unselects gives dá'ˡ ˄  á0 #'S) ̂ʂġ 'U) M*MƁ̂ƂƂ is no longerƂ#ƀ selected.ת#ƁƁ š1ƀ̂ƂƁ#Ƃצ $ƂƀGƂ#elected Ƃ#Ɓá!Ɓ̂ƂƁ#Ƃצ $Ƃ#'` KM''> :! '` á'Rޝ'RÝ'`.޹á'?:'X) MOá'?:'X) MP*)*)'S)ʂN'`ȡáCƁ$Select only one fileת#ƁOnly one file may be selectedת#Ɓ6Ɓ$̂ƂצSelect max of ƂƁ6Ƃצ filesƂ#Ɓ̂ƂצOnly ƂƁ6 Ƃ files may be see')ƀ'R'Dǯǿe"')ƀe'Dá9eǯǿצ̀  ̀ʀȡʀá$Ɓ*No help file exists.תƀ TƁ*́ƁצFile ƁǑƁʀƀƀ́ƁƀnjƁ.ǍƁצHelp file not available, sorry.Ɓ*ƀצ.Press RETURN to continue, ESCAPE to terminate.'R'De-e'Dá9ee'RǯǿZƀ́ZʁȡBƀZddd dd ˡ ؼdZZe'Rá &7f nm '?';''<9'('''`'&''%''?''!9'#'"'$') XhZh[hhhhhuhno^alȑk)t\n]ok[HZH`pb.CONSOLExma>a<Íc'\a]]\\d'\'9]]c}''֝'a'֝''֝''e/b''a<á'<eצSTDIN: 3'<'=eצSTDOUT: 4'=''@'٦תR&(>8.'š'&'?ġ]]a'9á''*SHELL/SHELL.CODEתP']'9ˡ'] á]]']'9ˡ'''֝']]\dc'] ˧']'9˄']aa'>ç']'9˄@]]']aaná '\'=atá '\'< '\ad '^'צ' '7ڡNParameter(s): 'צ''R'Da"a'Dá^^'9'̀ƀ'njƀ^Ǒƀa'צ']aa''a ''a,',,,צ.CONSOLEP '<'<STDINc '='=STDOUTc,'>*:*צ odometersc'ZZfb۪b'']''@'٦ת^^^'9^^'9^'9''צtaWPfile Sosfile Type = 13Type = 14DirectoryתP,-,-ȡ ,', ,,6RPS Data RPS IndexAFDiscardAFModel AFReptFMTScreenLibתP,-,-ȡ ,', ,,'...JanFebMarAprMayJunJulAugSepOctNovDecתP, -,-ȡ+/'i+ ,,+á+:'i+ ,,+á 'i'@P 'i+,'?ɡ 'D'?':'ǀ''HUnknown Badfile Codefile Textfile AsciifileDatafile Binary Fontfile תP,-,-ȡ ,', ,,HFotofile BasicprogBasicda'R'=\'>''R''U ' ''0'1'2'3'4'5'6'7'8' 9' 0,-,-ȡ' ,3,,, -,-ȡ'c,,,''@'i'i++á 'i'@PBّ .'NRc'_'^']'\'['Z'Y'X'W 'V 'U 'T 'S 'R'Q'P'O'N'M'L'K'J'I'H'G'F'E'D'C'B'A'@ '?'_'9'\':'W';'V'eZ_:`!'`ee á'Ree'RÝ'`e.egddij́́klƁqƁqƁq\Ɓq[Ɓq Ɓq?ƁqZƀʀHZá3'>Ɓq_:`ƁqáƁq Ɓq? ƁqƁq ƀTZZʀƁqƁq?'>Ɓq_:`jápf!\['X'MצInvalid options file fokmk፴vwȑ୳୴`~}lec`^[XWTGD'h*h+hh/0h-h,+H*H`20'$"J'hhhhifi+e,eii\i/dਊ L\Zi/bਊ LZXi/`ਊ LXVi/^ਊ LVXZ\^਩ `਩ b਩ d਩ -.;T>:HH`z0ean; Function SOS_Set_B_Mark ( RefNumb, Base, BlockNumb : Integer; Var RetCode ) :: Boolean; Function SOS_Set_B_EOF ( RefNumb, Base, BlockNumb : Integer; Var RetCode ) 8: Boolean; Function SOS_Get_Mark ( RefNumb : Integer; Var Low, Hi, RetCode ) : Boor; Var RetCode ) : Boolean; Function SOS_Flush ( RefNumb : Integer; Var RetCode ) : Boolean; Function SOS_Get_B_Mark ( RefNumb : Integer; Var BlockNumb, RetCode ) :: Boolean; Function SOS_Get_B_EOF ( RefNumb : Integer; Var BlockNumb, RetCode ) 9: Bool Function SOS_Write ( RefNumb : Integer; Var OutputBuf; NumbBytes : Integer; 7Var RetCode ) : Boolean; Function SOS_S_Write ( RefNumb : Integer; Var OutputBuf; OffSet, 9NumbBytes : Integer; Var RetCode ) : Boolean; Function SOS_Close ( RefNumb : Integemb : Integer; Var InputBuf; BytesReq : Integer; 6Var BytesRead, RetCode ) : Boolean; Function SOS_S_Read ( RefNumb : Integer; Var InputBuf; OffSet, 8BytesReq :Integer; Var BytesRead, RetCode ) : Boolean; Integer; Var RetCode ) 9: Boolean; Function SOS_Open ( Var Path; ReqType, Pages : Integer; Var SysBuf, RefNumb, 6RetCode ) : Boolean; Function SOS_New_Line ( RefNumb, Flag : Integer; NewCh : Char; Var RetCode ) 7: Boolean; Function SOS_Read ( RefNue, FileList; ListLeng : Integer; :Var RetCode ) : Boolean; Function SOS_Volume ( Var DevName, VolName, TotalBlks, FreeBlks, RetCode ) 5: Boolean; Function SOS_Set_Prefix ( Var Prefix, RetCode ) : Boolean; Function SOS_Get_Prefix ( Var Prefix; Length : Function SOS_Destroy ( Var Pathname, RetCode ) : Boolean; Function SOS_Rename ( Var OldPath, NewPath, RetCode ) : Boolean; Function SOS_Set_Info ( Var Pathname, FileList; ListLeng : Integer; :Var Retcode) : Boolean; Function SOS_Get_Info ( Var Pathnam81Compiler [A3/1.1]tion in source): t_Info ( Var Pathname, FileListINTRINSI' Integ; :Var RetCode );'')xPxxINTEGER xx,REAL &J~ceCHAR \n SOS_D_Info ( DevNo : Integer; Var DevName, DevList, RetCode ) 5: Boolean; {$ENDC} {$IFC SOS_File_IO} Function SOS_Create ( Var Pathname; FileID, AuxID, Storage, EOFBlk : Integer; 8Var RetCode ) : Boolean; C Copyright 19D_Status ( DevNumb, StatusCode : Integer; 9Var StatusList, RetCode ) : Boolean; Function SOS_D_Control ( DevNumb, ControlCode : Integer; :Var ControlList, RetCode ) : Boolean; Function SOS_Get_D_Num ( Var DevName, DevNumb, RetCode ) : Boolean; Functio { Set to TRUE to compile SOS calls for: } {$SETC SOS_File_IO := TRUE} {$SETC SOS_Device_IO := TRUE} {$SETC SOS_Utility_IO := TRUE} {$SETC SOS_Memory_Mgt := TRUE} {$SETC SOS_Plus_IO := TRUE} {$IFC SOS_Device_IO} Function SOS_MJC><99j%hhhhhh    eȄ HH`T% ,r>^.#x$<"6%j%%%&*&n((&(:??DFG"H\HSZ\Ph P*f/1237 8n88;<<<<*=Z==$@F@p@HIJIdJ6@7 :;(;@;n;;;<<>>>BGrGGHI2JJN.OdOxOOOOPQT:HH`,z012345678901234567890MJC><99j'hhhhhh    eȄ HH`T'^ >^ P*`p#4$!$&%Z%%d&%&(f(&(x9@>>D*FFFQ0Y[Phn (*.,013066lean; Function SOS_Get_EOF ( RefNumb : Integer; Var Low, Hi, RetCode ) : Boolean; Function SOS_Set_Mark ( RefNumb, Base, Low, Hi : Integer; Var RetCode ) 7: Boolean; Function SOS_Set_EOF ( RefNumb, Base, Low, Hi : Integer; Var RetCode ) 6: Boolean; Function SOS_Set_Lev ( Level : Integer; Var RetCode : Integer ) : Boolean; Function SOS_Get_Lev ( Var Level : Integer ) : Boolean; {$ENDC} {$IFC SOS_Utility_IO} Function SOS_S_Fence ( Priority : Integer ) : Boolean; Function SOS_G_Fence ( Var Priorȑ)H(H`A:7431.*(' hh(h)hhhhЍL h(h)hhhhύ1hhhhhhh\h[`[ x]_ȑ^`)H(H`M;7421.+$! th(h)hhhhэL_ h(h)hhhh΍5hhh[ xȑ)H(H`"@h(h)hhhhύ&hhhhh\h[[ xm]m^^m_j^jȑ)H(H`MA=;:2/.,) th(h)hhhhэNL7 h(h)hhhh΍7hhh _h*`^ah]hh\h[[ xh(h)hhhhhhh_h`hhh\h^][[ xȑ)H(H`86.*'$"!^h(h)hhhhhhh_h`hhheheL :h(h)hhhhhhh\h[[ xȑ)H(H`"@h(h)hhhhhhh\h[hh^hh]hh\h[[ xȑ)H(H`,)&" Nh(h)hhhhhhhhh_h`hh^]h\h[[ xaȑb)H(H`B@742.,+(! rh(h)hhhhhhhhh_h`hhheheLj @Lh(h)hhhhhhh^hhh]\[[ xȑ)H(H`0&# Rh(h)hhhhhhhhhhe]dhcha[t_u`hbhhh\[ x^ȑ)H(H`SROMIHGFEDB8652h(h)hhhhhȑ)H(H`QA10-*'%$lh(h)hhhhhhhhhhhhhh_]^\[[ xb`ȑca)H(H`A@=:7541.'$ h(h)hhhhhhhh]\[[ xȑ)H(H`%"hh]\[[ xȑ)H(H`%"Lh(h)hhhhhhhhhh_]^\[[ xȑ)H(H`-,)&#! ^ÍL č>h(h)hhhhhhh`hhhhh_]^\[[ xh\h^`]_ a[[ xȑ)H(H`8430-*'%$ lh(h)hhhhhhh fh*geh]hdhhbhchah`r^s_hh\[[ xȑ)H(H`]ZWVUSPNLHGFED;865h(h)hhhhhhYL) 5h(h)hhhhhhhh^_h]hh\h[[ xȑ)H(H`G0-+($"!`h(h)hhhhhhhhhh[\][ x^ȑ)H(H`+(%#"Zh(h)hhhhhhhhhh ) : Boolean; Function SOS_G_Seg_Info ( SegNumb : Integer; Var FiveInts ) : Boolean; Function SOS_G_Seg_Numb ( SegAddr : Integer; Var SegNumb, RetCode ) : Boolean; Function SOS_Rel_Seg ( SegNumb : Integer; Var RetCode ) : Boolean; {$ENDC} {$IFC SOS_Plus_IO} Function Up_Load ( Var Char_Set ) : Boolean; Function At_Sign ( Var Object ) : Integer; {$ENDC} Implementation E Integer; Var FiveInts ) : Boolean; Function SOS_Change_Seg ( SegNumb, ChgMode : Integer; Var Pages, =RetCode ) : Boolean; Function SOS_G_Seg_Info ( SegNumb : Integer; Var FiveInts ) : Boolean; Function SOS_G_Seg_Numb ( SegAddr : Integer; Var SegNumb, RetCode ) : Boolean; Function SOS_Rel_Seg ( SegNumb : Integer; Var RetCode ) : Boolean; {$ENDC} ory_Mgt} Function SOS_Request_Seg ( Base, Limit, SegId : Integer; Var SegNumb, =RetCode ) : Boolean; Function SOS_Find_Seg ( SrchMode, SegId : Integer; Var FiveInts ) : Boolean; Function SOS_Change_Seg ( SegNumb, ChgMode : Integer; Var Pages, =RetCodeity : Integer ) : Boolean; Function SOS_Set_Time ( Var Time ) : Boolean; Function SOS_Get_Time ( Var Time ) : Boolean; Function SOS_Get_Analog ( Mode : Integer; Var Value, RetCode ) : Boolean; Function SOS_Terminate : Boolean; {$ENDC} {$IFC SOS_Mem`hah^h_h]hh\h[[ xȑ)H(H`?97531.*(' fh(h)hhhhЍ L h(h)hhhhhhh\h[[ xȑ)H(H`"@h(h)hhhhhh[[ x\ȑ)H(H`>h(h)hhhhh\h[`[ x)H(H`2h(h)hhhhhh[a[ x\ȑ)H(H`>h(h)hhhhhhii[\]b[ x)H(H`Lh(h)hhhhhhii[\]c[ x)H&FUNCTION expand_filename(prompt: string; VAR x, y: integer; @VAR fname, prefix, suffix: string): boolean; & &FUNCTION open_directory(dir_name: string; bufr: dir_bufr_ptr): integer; & &PROCEDURE close_directory; & &FUNCTION next_dir_entry(VAR fir(line1, line2, line3, line4: string; setting up a codefile} )dot_text_code: boolean; {true==>add .text/.code if required} )error_is_up: boolean; {true==>an windowed error is displayed} )err_bell_sw: boolean; {true==>let write_er} )error_is_up: boolean; {true==>an windowed error is displayed} )err_bell_sw: boolean; {true==>let write_error ring the bell} )lib_sw: boolean; {special switch for "libmap" and "library"} )esc_to_stop: char; {esefix: string; {current Pascal-system filename prefix} )exec_prefix: string; {executing program prefix} )prev_prefix: string; {"$" global prefix} )prev_suffix: string; {"$" global suffix} .text/.code if requirede to some routines} )dir_bufr_ptr = ^dir_bufr; {pointer to directory I/O buffers} )dir_bufr = PACKED ARRAY [0..511] OF 0..255; {a standard dir buffer} & f_entry_bufr = PACKED ARRAY [0..38] OF 0..255; {file entry buffers} & &VAR )curr_pr # &{$p--------------------------------------------------------* '| DirStuff - Directory Processing Unit - Updated 09/20/83 | '*---------------------------------------------------------*} &TYPE {[j=15/40]} )setofchar = SET OF char; {a param typ:.oolean; Function SOS_G_Seg_Info ( SegNumb : Integer; Var FiveInts ) : Boolean; Function SOS_G_Seg_Numb ( SegAddr : Integer; Var SegNumb, RetCode ) : Boolean; Function SOS_Rel_Seg ( SegNumb : Integer; Var RetCode ) : Boolean; {$ENDC} H` Dh(h)hhhh)H(H`Copyright 1981,1982,1983 Apple Computer, Inc.2347h*h+HH+H*H`&&&&v~.T4JPVz :@* : 8 R  x]L( )H(H`40-+*!Vh(h)hhhhhhhhh\h][D[ x^ȑ)H(H`,*'%$Th(h)hhhhhhh\h[E[ xȑ)H(H`"@h(h)hhhhhh  x)H(hh]hh\h[e^ȱ_A[ x^L8 )H(H`DA=:7310' lh(h)hhhhhhhhh]hh\h_^[B[ x^ȑ_)H(H`<93/,*)& jh(h)hhhhhhh\h[dC[ x(H`Rh(h)hhhhhhhhh\h[d[ xȑ⨪])H(H`0,*)Veh(h)hhhhhhhhh`hh^h_h\h][@[ xaȑ)H(H`:7531.,+& hh(h)hhhhhle_entry: f_entry_bufr): boolean; & &PROCEDURE read_keyboard(VAR line: string; max_len: integer; >delimiters: setofchar; VAR delim: char; >curs_at_eol: boolean); > &FUNCTION prompt_for_filename(prompt: string; VAR x, y: integer; DVAR fname: string; curs_at_eol: boolean): boolean; &FUNCTION search_directory(VAR name: string; VAR selections: bytestream; AVAR max_selected, rc: integer): boolean; # PROCEDURE get_pas_error(iorslt: integer; VAR msg: string); & &PROCEDURE get_sos_error(sos_rc: iǀš ƀ š\66 ˡ,6̀ƀ PƀӦ/Qƀ6ƀӪ6̀ƀ PƀӦ QƀӪ6̀ƀ Pƀצ QƀӪá@66̀ƀӧ/Pƀ6ƀӪ6 6/á6š}6 ˡ(6/6̀ƀ6ƀӪ:66*áV6á%6̀ƀӦ#4:ƀ6ƀӪ"6̀ƀצ#4ƀ6ƀӪ6#áƀ  6 Ą.0ܝ/ڝ/ŕȡ ڂ 6 ܳ ƀǀǓ ƀVVP_f J š%۾/ˡ./Í/ @צQ   Ȅ2  ߿6̀ƀPƀӦ QƀӪ6%á'66̀ƀӧ/*PumberPצSegment not foundPئInsufficient heap spaceתPצ?No files were selected from directory or the directory is emptyPئ%Pathname does not specify a directoryתPZ0mP<&u_C+bVVצ SOS error le would be exceededPئPosition out of rangeתPצAccess not allowedPצ File is busyPצNot a SOS volumePצDuplicate volume errorPצNot a block devicePצSegment request deniedPצSegment table fullPצInvalid segment nndתPצResource not availablePצ I/O errorPئDevice is write-protectedתPצInvalid pathname syntaxPئPath not foundתPئVolume not foundתPئFile not foundתPئDirectory is fullתPצIncompatible file formatPצEnd of fi76.077.078.080. VV ǖVצ(082.087.088.225.226.227.228.251.252.253.ǾV ɡ(VVצ00VV.VGdɡ'VV0VV.VVVVצ.V šڹئDevice name not fouئ File is busyתPئ&Volume format neither SOS nor Apple ][תP}ئDuplicate volume errorתP_ئNot a block deviceתPE&8" ~P3 bF33P3T3PJ ( צ8016.037.039.043.064.068.069.070.073.074.0te-protect errorPئ(Too many files open for system to handleתPئDevice is not availableתPצPath not foundPצVolume not foundPצFile not foundPצDirectory is fullPئ Attempt to read past end of fileתPئAccess not allowedתP33.3333צ.3 šڹئIllegal pathnameתPئNo room on deviceתPצUnit is not on linePئ#No such file in specified directoryתPצDuplicate pathnamePצFile is already openPצWriئתPġّڞڿ0 áۡڞ-8Zš2ڡ  šńۑ D  צ907.08.09.10.11.12.16.19.36.68.69.70.73.76.78.80.82.87.88.P ɡ'330nteger; VAR msg: string); & &PROCEDURE init_dirstuff; & #IMPLEMENTATION 4{$p----------------------------------* 5| Declarations hidden from the user | 5*-----------------------------------*} &CONST {[j=14/40]} X E & &PROCEDURE get_sos_error(sos_rc: integer; VAR msg: string); & &PROCEDURE init_dirstuff; & #IMPLEMENTATION 4{$p----------------------------------* 5| Declarations hidden from the user | 5*-----------------------------------*} &CONST {[j=14/40]} ƀӦ/ƀ6ƀӪK66̀ƀӦ.ƀ6ƀӪ666 6/.66/š6š6ƀƀצEXEC//  6.6/˄6#˄Ⓞ&6̀ƀӧ/Pƀ6ƀӪ66߾.á//6ɡ ƀצƀ6ƀƀӪ/Y/ⓄNƀ.TEXTׯ 6ƀ.CODE׷'6̀ƀ6ƀӦ.CODEƀӪM/Dƀ.TEXT׷ƀצ.CODE'6̀ƀ6ƀӦ.TEXTƀӪ6Lš?̀ƀ6ƁS;؏0.'#ġ! /!-.,! Z/'replaceת insertת//צ and move cursor, צ5 (or CTRL-D) and (or CTRL-F) delete charactersLƀ̀/¡؝// //ƀQ* t/</ܝ/ޝ/۝/*&//(&%/J#؂""š#ؕ,","8-"š,#؂"/ʀƀR ƀǝ//Ŀ/̀ƀʀʀ/ſƀʀʀ/̀// /ƀƀ,h,?,,ʀá//((&.ʀƀʀʀ ƀʀʀc/ƀƀ//ƀʀ//ƀƀ̀ƀצh׷?׷׷̀ƀ̀hʀšh̀?ʀš?̀ʀš̀ʀLšL̀Lʀ/ܝ/ʀ/ʀ/ޝ/ʀ/ʀá>/ܝ/ޝ/۝/*&//ƀ̀(ʀʀ+̀ƀƀƂ66ȡ/(ǐ()66ȡ/(ǐ(&/,Td+ئ׷^šá )'1Ƕ Ƕn,ƀPhP?PP"̀//+/+/T<'/ġ&//ؿ//((((()()()(*Z/(()nj(66ȡ Ǒ(Ǎ()ǎ(66ȡ Ǒ(Ǐ((()ǖF)))&#Ǘ3Hxp#ǘ6***"#ǙF)))&#ǚ3Hxp#/T "//֝/á//////؞!/ /ɡ/֭V%/š////*&تP++/š&#lj  #NJnjnjnjnjnjnjnj#NjnjnjnjǏnjnjnjnj#nj| #Ǎ #/ǎ |#Ǐ #ǐ #Ǒ#ǒ ? #Ǔ"U#ǔU"#Ǖ6***"#/̶ؿ$$࿶$$$$$$$$0#//֝/š."(ɡ//."/؞ /./Z///F///// dž*I#LJI*#Lj" /ɡ/á$/Н/ . /՝/ѝ/վˡ/'š'/ѝ/ݞ/՝/҂/՝//ԝ/ԝ/š/ˡ /$O!ؓbP.ˡ ۦתPܪP ܪPڦתP,.0XT۪P /1..u11˄_0/..F//.. +/ѝ/#/ҝ/$/ӝ///h/ġ //Э׷ צč*צ=/Í  .3/|/!3ábbPb.QbPTL55ɡ _צ_b5b_צ.CODEbbPb.QbP55/5 445ˡ(b54bPb544 445á 6תP!66b54bP6/6צPצ^ˍצ/Äbb6PbǠbP2$á+/ábbPbǠbP$áO/צ:ÄbbPbצ/QbPbbPbǠbPܦƁSƀӦ..ƀӪP6POQS ߪP צ*%Í/$Ä bbPbǠbP$bbPbǠbPġ^á6۪P655á 6צP@5/65..I (or E or CTRL-E) for . . mode%.AAצ3D (or CTRL-Y) deletes from cursor to end of line, 3AצCTRL-X deletes whole lineLAצ'ESCAPE restores original line (if any)/n0/)/ZZ'ɡPšP!(ؓ%ء*#ɡ#! ! Ä/¡/ٝ/5  /ٝ/ǚ á //(i(ƀǛǀƀ ƀƀácˡǘǙǚ/ / 6ǑǑǑ/ / 6|5 ( Ǒ(ǒ( ( (ء/(٢'ء/(/(>7ڟɄ7/(ښڟˡ7ښ/(5@8á/(7.9ƀʀ̀ʀ¢ƀʀ¢ ƀƀʀ¢ ƀʀ¢ƀʀ¢ƀ!ʀ¢ʀŸʀ¢=ʀ¢>á ʀ>=ʀʀ=  2()(((( 6ˡǘǙǚ/ /6ǑǑǑ/ /6R:4W۪P.ڪP٪P.̀̀ƀ/(WẀƀWPƀצ.QƀªPWʀˡ .2>=ƀ ƀ̀ƀʀƀƀʀƀá!ƀ̀ƀƀPƀצ/QƀªP34(@ɡ .2á00P0צ/Q0P.1ܑ/ ܑˡ0݂ݑ0Pš00Pצ=š00Pɡ0ݕ0P^1š.R03š!6543!53árl  áۧ/P/00P0.Q0Pܑ/ ܑá#۪Pۧ/P//ܾ/á)á צP0݂ݑ0P݂ڦתP٦תPئתPá.1ܾ/Ɓצ.QƁP8799š9=á9=/á/*ۦ*SYSTEM.LIBRARY.תP/Sׯ/|ׯ#mתZ?צZ65m?;צ65ۧ/S/|;;. 8799š9.á99Ɓ9Ɓˡ1ƀ́ƁƀZƁצ.[Ɓ צ.Press RETURN to continue, ESCAPE to terminate.ם/Ǘ/>>/á. ́ƁPƁƀaƁP9/b9/ˡZ9ɡ ?תZ?Ɓ9ƁZ?.TEXT׷?.CODE׷́ƁP=w=/=/Í/Í^́ƁPƁ/QƁṔƁPƁצ=QƁP87/==/ˡƀ۪Z/́ƁPƁ.QƁPm/SZ?/|Zצ65m?. /2ƀ21 ƀɪP1787 צ=š<./á"<́ƁPƁ=QƁP<ړ876Ɓ/< @(( ުPġ ׷ 8ƹǛu'á תPZPˡ/ؓ%ء # #ǯǿ0&%//&%#'Ą%Line is too long!צצ'CǛ,!  /'##G'>'-.Ǜ, á!,ġ  ! /T'B#! ˡ/!  /! / /á'M#ɡ7#####Ǜ/ /S#š%Line is too long!צצ'#š ## ###ǕX'###ȡ.-.' ƀƀǛ ̀ʀȡƀ/ƀ$!  š %&%/ád#šQ##/':##Ǜ#// /LjZ#šG-##.',Ǜ/,á/(7.:    ^ ڕڞ-/ -   ת  < Z J ڕڞ:0 ڕڞx=nELName File Type Blocks Modified Time Created Time Length תPL Lnnھ/ánڞ/Ŀ/ſn;;ȑ)H(H`SROMIHGFEDB8652/h(h)hhhhhhhhh;h;hh;;h;h;; ;;ȑ;)H(H`B@742.,+(! r/h(h)hhhhhhh;h;hhh;h;;;; ;ȑ)H(H`;; ;ȑ)H(H`8430-*'%$ l/č>h(h)hhhhhhh;hhhhh;;;;;; ;ȑ)H(H`QA10-*'%$l/h(h)hhhhhhhhhh;;;h;h;;;;;;h;hhh;; /5h(h)hhhhhhhh;;h;hh;h;; ;ȑ)H(H`G0-+($"!`/h(h)hhhhhhhhhh;;;; ;;ȑ)H(H`+(%#"Z/h(h)hhhhhhhhhhh;h;;;; ;//ȡ ڏ/ڂ '...JanFebMarAprMayJunJulAugSepOctNovDecתP //ȡڏ////////Ч/S/P/|תP9//// s0 ;8L 8  AsciifileDatafile Binary Fontfile תP//ȡ ڏ/ڤ HFotofile BasicprogBasicdataWPfile Sosfile Type = 13Type = 14DirectoryתP//ȡ ڏ/ڂ 6RPS Data RPS IndexAFDiscardAFModel AFReptFMTScreenLibתPš[/"//////Q/P/پ/ˡ////P//Q/P/*ΪP/*>/*š[/*"/*/////*Q/P/*پ/ˡ/*///*P//Q/P?HUnknown Badfile Codefile Textfilê?Ƃ?PƂ?/QƂ?P/ƀ!nFq , //// / / / / /////ö,/ / /.CONSOLEתP/#/??/P/>/ٹ( V "$rrǕá;[ and move up and downצ selects, unselects gives directory infoƀá~˄ʂ> Ʉ+ߞ߂ ̀̂?Ƃ?Ƃ?צ is no longerƂ?#ƀצ selected.#ƀƀ š1ƀ̂?Ƃ?ƀ#Ƃ? $Ƃ?ƀGƂ?#ƀ #ƀfrom the list.ƀƀ////*&/Ɓ%/ƀ޹á//( 79á//( 7:á&ˡ ˄  á0 /( ̂?ʂ?ġ /( 7)7ƀ̂?Ƃ?צSelect max of Ƃ?ƀƂ?צ filesƂ?#ƀ̂?Ƃ?צOnly Ƃ?ƀ Ƃ? files may be selected Ƃ?#ƀá!ƀ̂?Ƃ?ƀ#Ƃ?צ $Ƃ?#/ 57&/ /¡ // á/ޝ/Ý////*&/Ɓ(+(//)'()NJ( ̂?ʂ?ȡ Ǒ( Nj()()(/(ʂ>8/ȡáCƀʦSelect only one fileת#ƀOnly one file may be selectedת#ƀ//E /; Bk1/9ŝ/ɍ9//ŝ/ɍ//ɡ///š //Bk 2ȡ!á ᑚ. /š/ ƀZ/ƀ"!. / ƀ// ?/n  Un ɡType = תProDos=תn ooo(on #ڕڞn%*.!f###'t'\(|((()4)++),P==@ : &'X'MSet mark error ( צ) on 'c棏'N棏棏 : &'X'M Write error ( ) on 'c棏'N梏棏棏á梏梏ޤ棏۩.;=?Y&9 "*楀/צ%00000 0 1 2 3%צ+ 襂6%%&&ꩲ.56';˄({   "$&(*,.02KMOQSUWY[]_acegikmoqsuwy{}hjlnpr'MCannot get at interface for צ in T'N9;..8 ë8.@OܓɄdEM.LIBRARY.Tצ*SYSTEM.LIBRARY ōo'X'Mצ is not in T'N'c pá :'Xy in T'M &  d&'X'M Cannot open T (SOS open error d)'N ȡ> / צ*SYST`y ō<  T ٨ب  š &á & š & 'X'MCannot read segment dictionar.M/,'S'=&'9'=&  &  $á}˩' 66& *á( $á*˩' )é'66%&&( @ۨ  6656 á6656(6  쿩6656 ؾ.ˡ  . ؿT T   -Ʉp 'X'MUnable to read ;'Na  *á 66668/ ::ۮ ث8ڡ666656g;Q'='_ <;Ǎ&(   6656@@'='_ <6656 á á6656(5 ;쿩6656;ٿ; & ȡg2 2771|/,Hߥ;ߢGá۫Gۚ۫L  7&ٕٞ.;;ٞق'=&.969ګڤؚث4 ڤ5ڤG;(&  ڞ85ؾ'Oá"5 š ڞڂ6ؕšڂDŽšDŽٕ5 ڞ ڂ '=& &!/ (&)&99::66ء&56'_á 6856'Oá66\ 6656'='_  5699(& 5644&4'ٓ 45& ١š 6'5؝'_5'_68P :&   ڕڞ197š7& ڕڞ9& ک:+'X'MCould not release segment (SOS צrelease_seg error  )'N&9(& 27;G ;Ǎ&(. 4 5 6 7 PR62 error ( צ) on 'c棏'N棏棏 : &'X'M Write error ('=á 665666Z*R ) ; "$&(*,.S2M68:<a@eDFHYLNsXlp|g ás'X'Mצ*** Too many id's צ (was on line 9 )'""*&á 0ߩ:ߩ9ߢߢ7%& ߢߢȡܥ%ܤá. ߢߢߢ ܫ+&  ޾'=& total referencesם'=&'='=&,&Cf\^!%( .dDO רdIF dIN רdOF  - - gצ-.- 01234 . 89ר #̀ʀȡ%ڤ'='=&,&*** End Xref: ם'=&# & ̀ʀȡ ޾'=& identifiers ם'=&" & ̀ʀ&,1/'S'=&'9'=&/ ,&'S'=&'9'=&7 ˡo&!77  7 &  ܕܞ.̀ʀʀܞ܂ʀG '=&,&2&0áP4W'(ɡ( DŽšDŽũ1)& (& Y'12345 Plotting 67ר F hash.plot.ת צ&4 ̀ʀȡPPá+'=&'>: á%ޤá.&*&'=&&צ Xref listing linesODŽ ,& ZZ *=Z &  -FZá4Z & ()  Z á'=&,& +& *& %ߤ%ݤ%ݤ ܕI2٨  aġ zȡ ˡ?g'='=&,&g'=&,&'> :DŽ   &!á%'=&ڤˡ ɡ %ڤ%ۤ%ۤ %ۤ ߩ#ȡ ߂܂š#ܕȡ&!ġdá#'>: á܂ %ߤ  %ݤ ' %ߤrt$'=á 66 i12345 Sorting 56רG #ˡ&!##dá#'>: áᓡ%''=Í666666&66&666656=ˡ&" ˡ ٢66'{z =?ACEGIKMOeu,024cegikmoqsuwy{}lpؓ <3) ;%*MIN^[`'566656v0el  "$&(*6.02468:<>@BDFHJLNPRTVXZ\^`bdfhjvؓ6656\_ˡEAġ Zȡ ٿɡaġ zȡ 쿹$쿩66560z  "/13579;=?ACEGIKMOQSUWY[]_aXZ\^kboqsuwy{}aġ zȡ 쿩ɡ쿹$쿩66560z  "/13579;=?ACEGIKMOQSUWY[]_aXZ\^kboqsuwy{}ؓɡɡaġ zȡ 쿹$쿩66560z  ".02468:<>@BDFHJLNPRTVXZ\^`XZ\^jbnprtvxz|~ؓɡJ_ˡ3á#ߢޢߢۂát'X'Mצ*** Too many id's צ (was on line 9 )'ڡ &Ϩר3ɡJ_ˡ3쿩 dOR רdTO dAND רdDIV d END רd FOR d MOD רd NIL d NOT רdSET dVAR רdCASE dELSE רdFILE dGOTO רdTHEN dTYPE רdUNIT dUSES רdWITH dARRAY רdBEGIN dCONST רdLABEL  Xref Options ------------ D Delete all underscores in identifiers. " The default is to retain the " underscrores and treat them as " significant identifier characters. I Do not process include fiLIBRARY FILES: %tools.lib $$ (hhhhhhHH`hhhh6a{8 HH` HH`-B6 .& F!6!!"#"t%&& ''L((0z0@ȡ'X&'::'&Je.*hhhhh hhhh hfHH`!rhhhhhhhhh hhhh h HHLq HHLqHHHH`9צPascal Xref (Ver 3.7צ) - &R%xref.options.&8*'(d婁ȡ'X&'::'&Jf.*..... Initializing .. B VVȡV%٤W&!dá#'>:áWWꚩ&%o8 :&  pages available.'N&9   I'-N'.P'/T'0D'$S'110L'3U'33"# ר ר KING.STORE..2Z' XREF.PLOT.&9&9}~:''X'MCannot allocate } -page segment for symbol table.'N'MצThere are only .LIBRARY & ' Total linesO&)VVצ V;ǍV&( Total referencesO&*צ Total id's&+Output: &2'=&Output: &4'=2&/צBACKING.STORE..-צBAC6)6*6+%6,'6-&VVȡ ٤צInput: ;&2; Input: &3 564G;9:72 צ*SYSTEM.LIBRARY.Tצ*SYSTEM"666 666 6)6*6$66666!6#6+6 ,6!6"6#6$6% 6&(6'6( PROCEDURרd*OTHERWISd+EXTERNALרd,INTERFACd-IMPLEMENר666666666  6  6 6 6 66dUNTIL רdWHILE dCYCLE רd LEAVE d!DOWNTO רd"PACKED d#RECORD רd$REPEAT d%FORWARD רd&SEGMENT d'PROGRAM רd(FUNCTIONd)les. " The default is to process all include " files. L Force all letters in identifiers to lower case. " L should not be used if U is specified, " but if it is, the U option is ignored. " The default is to retain the casing of " letters so that lower- !$%'(* + - . . . . ]b SD ?C~~b] yyb] @/~~yyAyyi d_d~2`yC0?* IB$?I:  hDu XD ND@P_dGPASMAT ied) overriding the W option. * Ring bell to signal that Xref is finished. The order for the parameters are: input output [backing] [width] o upper case. " The U option should not be used if L is " specified. W Default output width for Xref is to be 132 instead of 80. " Any width from 40 to 132 may be " specified as the 3rd or 4th parameter " (3rd if the "backing" parameter is not " specift " interested in knowing the positions in " the included files. However, the " include information is still displayed " (if S, I or N are not specified). This " option is implied if the S option is " specified. U Force all letters in identifiers tclude/USES information. " The T option is implied by specifying S " since the total line number count is the " only reasonable tag that can be used. T Xref by total line count instead of include file line count. " The T option can be used if you are nocase letters are " not the same as upper-case letters. N Do not process USES declarations. P Print the input source as it is being processed. S Suppress include and USES information in all displays. " The various displays will not contain " any of the in. . . .//do רif in רof or רto and רdiv  end ר for  mod ר nil  not רset var רcase else R1Comment too wide on the following output line(s):[\ˡצ&The following include files could not צ be processed:\٣I  ٢\\áH f*)Z[\'6ˡ š  ؟ˡ ,؟áEP&ZˡPצ/Token too wide on the following output line(s):Z[˓+B',H'2K'4V'=Q'9F'0G'1E'/N'7I'3U'X'?Y'@Z'AL'5P'8A'%%é%xō%%&'驅!"!#!$(!LLȡW٤ ghiJLLȡ٤צInput: &2 Input file: &3'cצ****** Duplicate id bypassed.;ʀꄡ&d LLȡ:ڤښ:ڤښAZLLȡ:ڤaA:aAښS';M'66&0!!é!xōP!&0L& LƀLƀƀƀšLL&ƀLƀצ Lƀƀáf̀  ƀ****** Second id is missing.rƀƀè  ƀ۪ڪџá⫅ѹH ۯ۵  Íߡ! ޡ⚹ߓJ צ"M option - need xlate table name: &2צ Rename file: &3̀ƀ&L̀ƀƀnjƀ Ǎƀ쪌Ƥ "( )!"#$%&&'*(+),* +,-%.H/$ ⟚ ȡܥ:ܾ     !  '-# /implementationר<*cycle ר *leave 'methods ר(creation )subclass ר%*segment  %segment ר&program '*methods ר(*creation )*subclass ר*function +otherwise ר,procedure -interface ר.const רlabel until רwhile cycle ר leave !downto ר"packed #record ר$repeat רfile goto רthen type רunit uses רwith array רbegin  ƥƼzɥҩɤƼ{ á)̩ʩ;˹áʩ; ˹&!&9Ƽ{ Kš#ّ šپ'Oáٿ̩&DŽ ʩ ʹ ̩ʝ'O̩ ʩ;{Ƽ{ Hš#ّ  šپ'Oáٿ'=&DŽ &ڕڞ˩B&ޢؚii    ҩɤ٢ؚثi⫄h᫄gXZn " {˄ i'gg$š%i!'ɡ' i)ɡ)g)i  {Í{} (**H$áH[á{áHˡ H5H*ˡ HEH)ˡE۫E*ګ$ ixȡ:! Ƽ {Í{} (**H$áH[á Há h g hg{áHˡ H5H*ˡ HEH)ˡE߫E*ޫEH)áݮ {˄) j$H H H]á>DHN0ueƼ!ەɡ ܩhšhz zܚۂii!š 0-i!yy0~~yyAAyyyy|Aztqlgb]XS83*pkfx68:<>@xs5E7!x!"!#!$89:H%x%&=>??F~~b] yyb] 2~~b]yyb]@@2~~šۚ= ^HiHٹ+,-./ H+éH-Í1(x2H+éH-Í3 x%ڏxɄ۫h۫gHH=áH/ˡ*xH/á)x))45\\\HE^A]H 83/HiéHIÍH V% `H+á H-á"H=áH0ĩH9Ȅ=H0ĩH9Ȅ ȡ H0ɡ \HHHH HHHHH H(@@-IHJIJȡ IIII^]EH Ä\צEH\Ƽiؕxšyiؕ!š!ؕ ɡ٩g š g Ҳz zڢٚ؂iF0G á;3i!Ų  ƼؕJ5H'_á+& ء'Oá  JEGE0J B& HDš6& KJEF HFJm F0"Ei!šJ E 8!g gɡgJpgHH'_áPFؓ & ء':H+ٝ'_HH'OáH JH':ˡH'=ˡJJ0H &!&9JYHH'Oá tected, Vá+Too many indentation levels, &צCould not format comment, צ!processing aborted at input line  .'N &9xš饄pgg؂gg!šؾ'Oáؿ'=&DŽ ˭ oȡWؤ  .٩٢ZثZ"٩٢[ث[ H &'X'Má%Syntax error de* 0Gń Gj2 0+ ҩɤġ٢ؚ٢i؂i8 yȡ š#ؑ šؾ'Oáؿ̩&DŽ ʩ;Lš#ؑ  šEH)áٮ {˄)!GETVj #ȡڤ& Ś&Jܩ\ܢ\ܢܢI]٫\jEC; KJګڤۚ۫ڤ EJ0 m $^E. 0 ڡ"#䫅0 ^ $<EH éEE!i!ɡ !i jDGnA ХWФؚ%i!ġ g& 0H &&H éF'EDFOH%pO3EO  37@O]3ؓi#ń7Ob3ؓi$ń7 <OX؄3BO4á37*2DO@á 73á3C5VODá+CO@á 3i$ȡ ig=A5$O3p43w EOXݩgágݩg߂߆ߏg ੄gÄƼz੄ig!ȄKz z ݕ੄igi:ODá3O4á37 A< BO OBm"7٥Ƽ٢i٢28٨0ƼzÄig݂!ɄNz zߢig݂i 9٨0ء !g(i؂iؚۢ 0ȡWڤ Ono! 1OHˡ o103O 4Oá35GÍg ɡgh346 jƼiƼjzةЂgim!ȄOҥjjz zۢgimgi$!Е٩gšg ɡ jҩɤášY0jƼ ?ҥjjz z_acegikmoqsuwy{}tz|Há H%+D $"0ۥڥۥ~ڥy42On2ةЂi!š0j  ".H(á+(%H*áЩEJH E@OD EJHF/DoF HODH á'H-+./#|!#%'13579;=?AC=?ACE:IOQSUWY[]8OH%@BDFHJLNPRTVXZ\^`bdfhjlnptz|~-DEH.OH%/OH%0OH%H*á KOH%1OH%IOH%JOH%LOH%3OH%IW.>OH.á >OH%I4OH%5OH%6OH%H=á 2OH%7OH%9OH%H=á :OH%H>á +EDEOH~~ :H%( <,EDEOH*H%H.á-H%H.áIH*H%HEéHeÍ*E%H+éH-ÍH%H*H%HbéHBÍB% H#á,3j ȡP )ODáw6ڡ*ک58/W>*ȡWؤ:Wؤ(ȡWؤ:Wؤ]:*ȡWؤ:Wؤ.5(ȡWؤ:Wؤ"T   Í&ȡWڤھX(*EDH*q8/=H_á/H%١:H% :H%H%ۄP:WФH'á H%H'E؍ؓ) @(ĩȄ`P ɄP _ODODOW |) ˡתȡ3צ ڥ:Wڤ5éo1ⓡ&(š:1DÄDÄ੅$Ȅ:O5á0 O]Fة4%6-1gh0%6Fgٕ 5FGg &CO2á*3i$ɡ iggh55gh?0yy~~Y%6ODáeg 4A65ig*ɡ*ig i$ȡig%>gh55ghv 75i$ɡ igghBghO5á1(ݓ:3gh?0yy~~ Xyy~~%6ODáTg 3ig*ɡ*igVaZ`bdfhjlnprtvx|~gh $>%6i$ɡ igOEá 3O4á355DWyy~~%6ODá8g 3(ȩig*Ʉ*ig@ثg 5(pV&Oá83S4OOUT35>3Oá3>BO>á3BOBá3BC53>SVFR W "$&(*,.02C6:<>@BDFHJLNPRTg 3%ghg Rg 5 S%37B5ODBO>á3BO4á37C55>2FT3i$ȡ ig&AA5*U%35D5%ghO g R쩅O%ghg D65%ghg @5RA5ghO5á3Og ODghg Rب%0 ƼzKz zޢggiܕiOWyO@éi"ńg ٫۫OW~y1oثګOWyO@áQO4á37O6á3D5O5á377g A5 QODéO5Í/O5ˡ&A65>O5á3ODág Oáءg 3&D5O6á3D55KPD2/ ;;5 "$&(*,.02J68:<>@TRFHJLXZRTVXZ\^`bdfhjlnprtvxz|~gh  ;3igOODˡ3ODˡODárO~Wy0g&@BDSHJLWPRughOéꩄ덓GG ?Oá^SO'á ] "I=n", to control the initial indenting " (n is the indent level) at the start of " an input file. This directive can be " used when it is desired to retain the " individual include files and to format " them separately. With the I option (or " thput is eventually compiled, the "I" " in the directive is not output. It is " recommended the include compiler " directive be specified with no other " compiler directives. " " Note, PASMAT also has a numeric " directive (not an option) in the form "ear as part of " the output. The directive comment " containing the include specification " will be output on the line before the " output of the included source. " However, to avoid reprocessing of this " directive, by the compiler when the " outt follows a FOR, " WHILE or WITH, the default is to place " it on the same line if it fits. I Set I+ to process compiler $I include directives. " The I Pascal compiler directives will " be processed for included files. They " will be formatted and app. " Also see P option. F Set F- to disable formatting. G Set G+ to group assignment and call statements. " As many assignment and call statements " are placed on a line as possible. H Set H- to disable FOR, WHILE, and WITH bunching. " If a single statmen on the same line as previous word. D Set D- to disable the replacement of (* *) with { } delimiters. E Set E+ to capitalize the first letter of id's and letter after "_"s. " The "_"s are retained in the id's. The " E option overrides the L and W options PASMAT Options -------------- A Set A- to disable placement of CASE label on same line as statment. B Set B+ so that statement following THEN/ELSE is put on same line. C Set C+ for placement of BEGINLIBRARY FILES: %tools.lib $$ K.Jb  x ^6|V0hxl V~Px2t!!V""""#V$v%`&&z**,'+n+n,,,-&#-n///0 1H1|1>2|2224,66`:R<=>E`צ%PASMAT.OPTIONS.&80 0` Formatting complete,  צ lineˡ sצ output.*'( d] ]ȡ'X  &9&'::'&O3á3?O?%?O ág6O5á3O3á3O:Fh`:&Pasmat /// (Ver 3.1צ) - &e I+ PASMAT directive) a single " output is generated with the include " compiler directives effectively " deleted. If you decide to use the I=n " directive, you can use the utility " Procnames to determine the values for " "n" (which sets the initial indenting " column to t*n, and t is the tabbing " value. K Set K+ to indent statements between BEGIN/END pairs. " Normally the statements are indented to " the same level as the BEGIN/END pair. " The C option determines the actual " placement of t_PROCNAME as it is processed (if I+ set). ! Suppress the display of the "odometers". * Ring bell to signal that PASMAT is done. Parameters are: input output [rename] [width] [tab] [>listing] on each " side of these operators. This option " has no effect on the "=" in CONST and " TYPE declarations. Y Set Y+ to suppress space around assignment operator (":="). Z Set Z+ to suppress space after commas. < Display the name of each include filewill be " aligned with the IF. W Set W+ to upper case identifiers. " This option overrides the L, P and E " options. X Set X+ to suppress space around operators. " The operators are as follows: " " + - * / < > <= >= = <> " " Normally one space is placed erved words. It also causes the " words SEGMENT, CYCLE, and LEAVE " (reserved words for the Apple ///) to " be treated as normal identifiers. V Set V+ to put THEN on separate line. " The THEN will be indented on the next " line after the IF and the ELSE irected to the specified file. U Input file is assumed to be a Lisa (Clascal) source file. " You must use this option if your source " has Lisa Clascal classes and methods. " This option causes Pasmat to recognize " SUBCLASS, METHODS, and CREATION as " resutput reserved words " in lower case. S Generate a listing of the formatted output. " The default listing file is .CONSOLE, " but by specifying ">pathname" (a ">" " immediately followed by a pathname) on " the parameters line, the listing can be " redally. " Normally an IF following an ELSE will " put on the same line as the ELSE. By " using Q the IF is treated like any " other statement and will be put on the " next line after the ELSE. R Set R+ to upper case reserved words. " The default is to ot be " specified exactly how it is to appear " in the output. Reserved words cannot " be renamed. N Set N+ for grouping formal parameters. P Set P+ for "portability" mode (underscores are deleted from id's). Q Set Q+ to not treat ELSE IF sequence speciers; the first is the " identifier to be renamed, and the " second is the replacement name. There " must be one space between the two id's, " and the first id must start in column " one. The case of the first id doesn't " matter, but the second mus specified. M Rename identifiers according to file specified by third parameter. " The M option requires that the 3rd param " specify a file containing a list of " id's and their corresponding new names. " Each line in this file contains two " identifihe BEGIN, which will " normally be on a separate line unless C " is used. If C is used, do not specify " this option. L Set L+ for literal copy of reserved words and identifiers. " The L option overrides the R and W " options and is ignored if P is "ijjj'_áHٓ hi& ١j':i؝'_i'_ij':á򩁴šh&ꩁhi򩁴j& lGצ lǍ&ij'=á ' (reserved for "CODE") ר'CONST 'LABEL ר' BEGIN ' FORWARD ר' PROG(-!.,'&'?{B_ h 'VAR 'END ר'CASE 'TYPE ר'UNIT  0 - (.؟ੁlj+á  á,'&ک Oá  / á Lj# 䩁 ר, %$0lP%),'&ک/ // +w*p' CODE is no longer valid רá@0'N Í~ˡt'X'Mצ*** "END" expected in 'Nȍ  ,+* ˡ;,á1*+'CODE  )á ˄ná/ ۣۣ  5,  ˡv'X'Mצ*** "BEGIN" expected in ؚٚáZ    Í! Y, ܨۚˡ/   á1 J; ˄ á'ń áܕܞ&ܕܞc1&ܕܞ&ܕܞ,ń*ۂ)ۂ)020[ނ]ޞܿ'=& ۨ H%H%ȶ=' &7ˡHn ؄3 'á'Í= J DŽ $&ܕܞ%& jثؤٚ٫hjؤiؤGl& צ lǍ&  {(áC*ˡ 5k$éɄ*˩)ék 3{á,k$éɄ}˩k [] <   (lؤ& ȡh'X'MUnable to read l'Ny򩁴 é+ 0(Z | <+á -á:D ~c# V@@&&%á s ~@@𩁷 < éU ÄllkH\  U & 'Oáijjj'_á'=á-&!&9&& \mw %%ɡ$%%%azȄ %%&ġ%&& & &RAM ' SEGMENT ר' EXTERNAL 'FUNCTION ר'PROCEDURE 'INTERFACE ר'IMPLEMENTATION 777777777 7 7 7  7 77 7 7 HHHHHH:'g:'Z,Cannot allocate segment (SOS find_seg error  )襄 梅:+Yצ1Could not release segment (SOS release_seg error  p_^dI(COMPARE t [output] The default output file is .CONSOLE Procnames Options ----------------- N Suppress the procedure and segment information in the output. * Ring bell to signal that Procnames is finished. The order for the parameters are: inpuLIBRARY FILES: %tools.lib $$ :r$d&&/'=&Output: &4'=ת& Í'  this will allow exit(program) ^]^] '='=&*** End Procnames: ם'=&_&^_d^dȡ_^'=&^^צ procedures and functions'=&'='=&&צ *** "PROGRAM" or "UNIT" expected&*'(^dd^dȡ'X^^&9&'::'&FFP/Z` F  l  8ndlǍd&&/'=&Output: &4'=ת& Í'  this will allow exit(program) ^]^] '='=&*** End Procnames: ם'=&_&@%pnames.options.&8N'c^d^dȡ^^^Input: ץl&2lצInput: &3ijhGl Total Lines:O&ddצ  H H H H H H H HH ȡH B:&Procnames /// (Ver צ3.0) - &͞ )nȡš š٩ة񚩄ڂL٫áڢ"ޢޢޢáٚj۟Íݓܡڢٚڢٚˡۢٚh  ٚۓ˄3>L &!&9SSˡCSSSS$SSˡ SS&S&SSá"(ɡة>?󏂫󂫁 󏂫Bd'LšL'=&šO4ٕؕȡ '=&'=&'='=&Hצ File #1: '=&L'=&'='=&צ File #2: '=&'=&'='=&q *** Eof on both files ****** Files match ***M**** Eof on both files at the same time ****+צ=*** Eof condition forced due to insufficient memory space ***file  Extra lines in 2nd before ת>צ in 1st צ' Non-matching lines צ*** Nothing seems to match ***i*** Eof on file 1 ***"*** Eof on file 2 ***'Mצ Invalid column range - reenter: 'Nnjڡ!V'=צ' Extra lines in 1st file Z Extra lines in 1st before תצ in 2nd צ' Extra lines in 2nd ݍ  &/-šپ پ0پ-áu'9پ پ0پ'9á$ááȡړh'Xک ᓡ嫀䫀gړܥ ٓۥ ީلީ@ފ@ ١!ۥ ݓۥ ݓ0 ړ!ܥ ݓܥ   ˡ '='=&Äء ڍٍ&ل ڡ ١  &ˡ ˡ  $ á ݢݢ ńE  ߍÄ ń 󓄡%.ȡ*'=&Ɲ'='=& '='=&+Be>cX 0W *8 '='=& '='=&Ä á á  2ˡ áˡ '='=&ˡ  3áiȡi۾'=&ֹ"ȡ"۾'=&Թȡ۾'=&ҹȩ#ȡ۾'=&й!MȡM۾'=&ιDȡ۾'=&̹! \xUHBȡ9𩀝'=& >'=& '=&š ȡ۾'=& '=&ȡ۾'=&ޝ'='=&ȩ@ȡ '=&ܹ&ȡ '=&ڹȡ۾'=&عȡ۾'=&Hȡ۾'=& >ȡ>۾'=&ȩȡ۾'=&ȡ$ۥš '=& ۾'=& '=&<'=& ȡ &&š&&ȩ󓄡9.ȡ*'=&ȡ '=& Ȅ '='=&ٹ؟á%ȡ۾'=&HZȡZ۾'=& ȡ۾'=&؟á%.'Oá   ޿TTTTTɡةTTT.  & ȡ '=& ȡپ'=&7 P &!&90š  ةT& ة횹$SSˡ SS&S&SSSSTSTSˡSSSšBš צ*šUݩUa ȡF߾ á COMPARE /// (Ver צ2.4) - & A%compare.options.&8N'B'H'P': צ File #1: L&2L File #1: &3צ File #2: &2 File #2: &3&0&0S'ɡ:šצ-COMPARE terminated due to insufficient memory&ǀُ5Maximum number of lines that can be "out-of-sync" is rs". P Format output for 132-character wide printer devices. " This is the same as the H option, " except that a larger portion of each " line is displayed side-by-side. S Static (fixed) grouping factor as specified in the parameters. The parameters arline " is displayed side-by-side. If the H " (or P) is not specified, entire lines " are displayed, with lines of the first " file displayed before the lines of the " second file for each group of " mismatches. N Suppress display line count "odomete COMPARE Options --------------- B Delete trailing blanks are runs of blanks are treated as one blank. H Horizontal form of the display (lines shown side-by-side). " Only a portion of each mismatched LIBRARY FILES: %tools.lib $$ NUP3 NDOWN1 INNDOWN2 JNDOWN3 NFILEDESC.gJN*JSTRNG XOR8JGN^BUFRPTR listing]