LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!)TABLE INFORMATIONCI4Current date is Hd*Bƣed on U.  P ? Apple //X @{BB@6bBB@ijpbZb ԳԳ@dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@Lv&<B 0\ 7PASCALSYUSERPROGDEBUGGERPRINTERRINITIALIGETCMD UCSDFILE EXTFILEMEXTFILEM!!!(š]9W.TEXTת .CODEתš!!Ȅ!!P!x!P ( >ˡ 뚹  8P.TEXTׯ7צ.CODE$.BACKׯצ.ASCIaF*:˄/˄&ڲ#áצ:áD9>/ת(.Ä !á צ[š@תP4á74צ7848@צ/74צ:.Í7šצ/44š>474ȓ7.784884צ/46744ȩ4å.ˍo˩4ń\844á47צ:4*å#Í%Í4ōM4á@7Pá/á *á?@%áΪ@:ץ44ȡAá+#Ó7צ/ˍ7A P @6d\8P6ת@ת/š[ץ44š7]ץ114á7g14š^743355 5073331é731é14Ä3*á74147Í7!ץnue% " ,Í ˫T \$ á (ȡ*龫 ȡazȄaA3>/ء7ت /6: á :@7 @  5& |" "%: ˡ J#鿥  &'azȄaAB%Type to contiá+ ɡ _" ġ5 5fj <65 &ˡ 5 56!ˡ 5Rˡ 5=˄+&ȡš B5  ,á0 1ت2S# 2أ d0, P# 2أd0, I# 2أ 01@3! áצ IO error # 2 d0צ Exec err # 2d01  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK>?@O^^;COPYRIGHT APPLE COMPUTER INC. 1981-1983 RELEASE VERSION 1.1צ`&Ꟛ š#ńW   0  𓍡ńȄ (˫/ ˡ   Í wˡ ˡ ! ˡ(  ,  & "ë 넡6 & Í< š˄ u 8 hFF >"ˡFFTFN áEF > 섡/ F >"ˡFFFFFAN A=" "ˡ)á á áˡ á ń# Ȅ ꚹ~á^"Ä<7@+ > ˍ >  &ʂ)ʂ)ʂ($ʂ($Pd@ šš > "ˡ "Lá"  ë   rp ,p "ˡq*   > "á=ˡ땏  šá áK?"á83 ɻ  X\Hب&̂(ʂ( ʂ(ʂ(ʂ($ʂ(̂)ʂ)! š땫ĻD?ꓡ"á삫ûš > "ˡ˫   ɡĻ2꓄ > >"ˡ ꄓr?Lá ?š?ۂˡ 3ء #צ ۂ #ء >  >݂"ˡ ޕ݂ނɡ  ?Ąɡ낫š ꓡ@ >=@ >=!@ >'@ >> )#%0ë>>@@@| V  )šá4 VVPVU _VP>=+>P=X>髁@@@˄@#@ˡ @@#>@@ O@ ˡ? @ ?>@ > ? @ ?>쓡 @ ?>@ > á@ > =a(: [L&á'횩)ˡ8 >#> \ˡآآآ*=UU šC+P aaaaO@á ( ˄ ë <:ץaššë 铄˄dS: ?  ڢڢצڢ ڢ  آأأآآآ <Pš8P8>뫀 8a a:a Äڡɡá >ʁ@ צ" ˄ Ʉ;>ʁ@"ؚ"álʁ@&ʁ@ > "áVʁ@ ʁ@"Ä:ʁ@铡-@ ʁ@ >ʁ@ @>ʁ@ @>ʁ@{ :( آڢ  ڕ0قPSYSTEMPW\PIj ;́@́AƁAa@ƁAǐƁAP:ץaá:/Pa8ʁ@ >"á"ʁ@ˡ ʁ@ʁ@ʁ@ צʁ@ ʁ@á áÍáɡ 럚肚`諁6"  >  >b) á إaaġ00000תȡ v  ꫀ𩀄򩀄"7ũ  @š& "ˡ鿩/ȡšš  A ; ɡ'áצ-32768 ` 逫-ġ@00ń0ˡ ɡc ȡꫀNo debugger in systemתP:o@ Compiling... NNRRRSYSPASCAL/SYSTEM.CODE:JJ>z;t^; NNRRP ^5PECommand: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,)No user programתP4text? o@ Compiling... NNRRRSYSPASCAL/SYSTEM.CODE:JJ>zzˡD-F;̀̀آE'ʀˡFʀáʀá>??>D;TPVvn (D 4N RH "#%T%%%%l Fx\~ F! !"""^!z,r v Bn @ $ < L n0$FDt!-ǀ@? ? צP6z>ׯ{ yD  ?ACEGIKMǀ$ á"ˡ"" ''E>zˡD-F;̀̀آE'ʀˡFʀáʀá>??>D;TPVvn (D 4NצError # . closing FILE or DEVICE opened by last program$>"z>Dt!-ǀ@? ? צP6z>ׯ{ yD š3ġ  CwCvCá>pq+u"ˡ closingBuC!dt -!ˡ !蟚dt ,.z>>"ȡ{ˡo!>+u uu"˶u reading fromB+söusÄ+f,u迶u"ˡצ writing toB+sársá+rL*ˡ ؞!؟C!C CˡMxC蕿@šQȡ2 š:X fצError  exec fileFBpp) rs* rs*q q{]\ ȡ*ńȄ4šáRתPńȄ ,ń.áš:00áQP 0á0 é000+-Í-ë0^ 000á'6á 000  ] |Nš 3"#쾿 A 9dá. 6ááZš "1諀멀ȡ!뾿 9šš A | á1á6 '7SYSPASCAL/SYSTEM.TEXT*tZt^+ZRt^DEVO/SYSPASCAL"JJ*.r;t^JJ:>;t^; NNRRP ^5PECommand: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,)צUnknown run-time error(צValue range error(צNo proc in seg-table(Exit from uncalled procת(Stack overflowת(צInteger overflow(Divide by zeroת(צNIL pointer reference(צProgram interrupted by user( Current date is  --  צ'Copyright Apple Computer Inc. 1981-1983 Copyright U.C. Regents 1979 צVersion: April 1983 *| צ,| Apple /// Pascal 1.1 | צ,|__________________________________________|44ȡ44 l#צSYSTERM:(>z آأ% š  + __________________________________________ |A$    H2צ*צ:צ??"?[צ0Bצ0tצ0SYSTEM.WRK.TEXTײ[2 SYSTEM.WRK.CODEײB* , צCONSOLE:(ȡ"5555vu -? ܪPAƂg/0̂gƂg*ƂgQƂg A0"ˡ\٦׷T0̂gƂgPƂg:QƂg`Ƃg š/0 0 /A0؞"Ú/ۧ?PצPUP.P1 Ƃ;P צPGתPˡǀ?P:ײP)@B$$$  wx55 ʂd.áʂdʂdʂd ˻عcʂdצCONSOLEjʂdSYSTERMתYʂdצGRAPHICHʂdPRINTERת7ʂdצREMIN(ʂdREMOUTתk\M B3&ʂdʂdضáoʂdšf?ʂdצ*SYSTEM.STARTUP"ë1Ƃ;צ*SYSTEM.STARTR צ#4:SYSTEM.EDITOR צ#4:SYSTEM.FILER #4:SYSTEM.LINKERת ̂dʂdȡ+٤ ̂eʂeתʂeʂe Ȅ٤ ̂d ʂdʂd >ʂd׷ړ ؞&"ڡؿʂdá ʂdE ʃE ʃE  ʃEʃD̃EʃEʃEʃEʃEʃEʃEʃEʃE  ʃE 4$Ƃ+צ#4:SYSTEM.ASSMBLER צ#4:SYSTEM.COMPILEܣʃDܢʃD%ܢ% ʃD>ʃDʃD+ >&?̃DʃDʃDʃDʃD%̃E ʃEʃEʃEʃEʃE ʃEʃE ʃ٢ š٢ ٢٢ 4$  ؗ(/  ؗ(Ƃ+ ƃ*SYSTEM.MISCINFOתPƃ"á̃DܢʃDʃDܢʃDצUnimplemented instruction(צFloating point error(uString overflowת(]Programmed HALTת(EProgrammed break-pointת(&|dI+oYC ád0 *R#,n volת(צ vol not found(צfile not found( dup dir entryת(file already openת( file not openת(wbad input formatת(^צwrong disk format(Dצdisk write protected(' }hO2qZBצ IO error: (צSystem IO error(צ# (out of filename storage spaceת(illegal unit #ת(צillegal IO request(illegal directory specת(צvol went off-line(צfile lost in dir( bad file nameת(no room on vo Based on U.C.S.D. Pascal II.1 ë0???JanFebMarAprMayJunJulAugSepOctNovDec?????????ר d't!צPΦתP22>  pq%sy!{P{ 1 %System re-initialized. j:@|N 8 f   Copyright U.C. Regents 1979 צVersion: April 1983! + + }+}( á צAssembling... צ Compiling...  á̀̀ʀW+̀ƀƀ:ƀ[@ƀצ/Aƀ2PƀP[á + ÁPdۤC1Cáۤ&./0000ˡc0 DDPDת0&;2EEDE:E&E 2C ۤ2 00ÍCC1CáۤC11 Ä  צ Linking...vܡ  # צMust L(ink firstƁ1ƀ:צ.Conflict between intrinsic and user segment(s)?ƀƀƀ 1v -ƁP-צNo file ̂iv̂jʂj@ʂjˡ  not codeʂj1ʂjHʂj ƁE> ƁEƁ5>ʁAáʂj 1>  not code"ˡצ Bad block #011Ɓ1 cݡ;ުP-vƁnPvƁΪPƂ;PƂ;ƂƁƂgƂf̂dƂPʂd ΦתPצ:Ƃáצ:ƂPƂצ/ƂPƂ̂iƂiƂPƂiƁǠƂiP?̂e?>ʂe?>"ˡCۡ>"áIllegal file name-Error: Required library files are not present33Error: These required intrinsic(s) not available: 1, 0?̂.0ʂ.ȡ@0|0,'0  111 á00LvX  w.3nw w.w.b43 n4ńV54̂.5ʂ.ȡ;5575)ʂ 5554 Ƃצ*SYSTEM.LIBRARYPxƂʂx.3:ZȡIP  ٲ7)؞7)ؿ؂پ$áڸ444Z ȡ+ؾaġ +ز+ؾ $ 2تPww"ájw ++L+IÄ)++LIBRARY FILES:ׯ  "تP"á 3Gצ&Warning: Cannot open the library file .<.צ Warning: צ is not usedRپ$ò$Äخ  تP "á T(n$2$ $š$$צ.CODE $$ š$$ צ:š/:n@A$P.LIBTPZ> X أأ أ > , ȡ۲$ڤܾ# 411ȡs1d1ٲ ٲپ1Ä  ٗ 111w ޢ ȡڤ ˡpݢڤ?Xܢ0ۤ ݢ`ڤáޣ!ݢ`ڤˡ  ޣ  ȡ6ݤˡ&ޢ`ݤۼޢݤ!&ءdt >uˡpq- ? ? ȡoڢܤ ܤ˄R slot   is not from Apple III Compiler Based on U.C.S.D. Pascal II.1 ë0???JanFebMarAprMayJunJulAugSepOctNovDec?????????ר d't!צPΦתP22> Assemble what text? Compile what text? +P+>+ׯ+,á+( T+P +"ˡ)+>צ Can't find +*SYSTEM.WRK.CODE[*]תPצTo what codefile? +P+>+׷W+,áD+$á/+TP.TEXT+}}}+Ä+}+P +P"ˡ%> Can't open *SYSTEM.WRK.CODE׷P+*~+:+ }+ƀ}ƀB+ƀ}+}     ˡצECommand: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,? [A3/1.1]P#%!?á^GCommand: U(ser restart, I(nitialize, O(ptions, H(alt, M(ake exec, Q(uitתP#%!&jf Apple II disk routines #C) Change file name display format צO(ptions: A, B, C, Q(uitP#%سQˡع! ACQá$p $ǀ#`[!0System will re-boot to reallocate Graphics space׮Ǹ ȡ ' $  !צ$A) Change Graphics space allocation!צ+B) Change status o5Error: New options could not be saved on system disk.צ*Graphics space allocation has not changed.8(Other options have changed until reboot.$ƁƁ0# ˸ ?Ɓ*SYSTEM.MISCINFO""˄Ʉ9צ!Error: must insert system disk. P#$ááRƁá<" ""Ɓˡ ! ! A!BCD Currently you have option "צGraphics Options: A, B, C, D, QP#%ٳٹ!ADt Z!ƁƄ------------צ A) 0K bytes (No Graphics)B) 8K bytes׮C) 16K bytes׮D) 32K bytes׮"ءt  Currently  K bytes reserved for Graphicsá (No Graphics)ident8ؓ@ؓ! צSOSצApple II Pascal &Currently file names are displayed in & 6 צ format= ؓP צ%Option Bytes reserved for Graphicsצ%------ ---------------R"צChange this? Y)es, N)oٶ,@@ٳH vؓ! צ NOT ת ,Currently Apple II Pascal disk routines are ,0צres,>9<<<<;67>%sצ Terminator=sצ, change it ? ٶ,áu-ٳ@@YyÍ)צNew terminator:s rqs* تP  ء  <צNew exec name:P/á>šF.á<,צ[á==P=צ[8]S=P-uu"á 9>-uu"áps,P  !UUUצ:U*UPBš!צ/PBP) Running...ءá.צNested exec commands illegal&-צError opening exechءPؓ5צExecute what file? PGתPšš,,ȡپaġ پ ,,צEXEC//Hqƀ0   áث-P   š, š!y*SYSTEM.WRK.CODE׷N"tB0*š5**צ.CODE:* * "͓쓡 Linking... vá% Can't Restart$צ Restarting...!-Do you wish to exit the Pascal system? (Y/N) %Yá>>OKpq7AX0J5*3; &(,.R C~  < DjvlJ~B~Nn H$תP#%!&jɄ  $ $ $šš$%&$۞$$ۂۂەߓf%%&"ˡ|ɡ& & "ˡN$ߡá4 á,á"$࣡ $ $šš&$۞$$ۂۂە R%%&"ˡ.&"ˡ$  " áP$ނ š: - ݓۤ ۤ Äݓ š ۤ  ɍX ޚ "ˡ8ˡޚ   dܓڢڢ   "ġ$ނ#˄ɡۤ  dáߢ  dá ߢ &ޣ˄ ߢ  ߢ ۤ ߢޣ"ߢ ޣ#ޢ ޢۤ ޢ á٢á( ת$&(0!    š ڪ 0ޢߢšáޢޣߢ  dޣ"ޢ#ޣ$)ޣߢ  dÍÍޢ  ܓۤ ۤ Äܓۤ  dÄÍߢۢڤ   ڪP44444444"ߚ44 4 4!4"d4$4% 4#44#4á74-4& 4&44&4T ڢڢ& ڢ&ڣڣڢ$ڢڣ"ڢÄڢá     á ۢڤ š sá ŶÄ)ڤ ܢɡ ڶá  á ġMáš6 ܂ۻݪ d ( ڣ"ڣ١ڢڣڢ#ڣ$ڣáڣ$ڣ#š ڢ#ڣ$ڣ%fڢ%ڢ١ڢ&ڣ$ڣ$ ڢ&ڣڣڢÄڣ% ܣġ ۤ ٤ ڨ ܢܣ*@ٕ۶š ڸ۸۶ š۸ ڸ:   ȡQ  ȡ   ȡ? ȡ  ġܡ=" áܡ ܓצ $  ޓ(ݤ ߢܯߢ  d˯7 H ۣȡڤ  ۣ צۣۢ0H dō (ܓ(*(ܡ )*) *)* ܓ)ת) (!($IKPz(  Íܡ  , Ąܓ"á    (( )(á (((ܡ( **(( *Ä(*Ä**Ȅ*Ą*MȄ*)v*ȡO(ۤ +++ō++ɍ+ ō+ ȍ+ ( ́ ́ ʁ ʁ צ ʁ ʁ ˄ʁ @˄ʁ ˄3 ʁ ! ʁ Þ"Ä  = &)ʁ á ʁ   "ń,ʁ !  ʁ ޾쓡 Linking... vá% Can't Restart$צ Restarting...!-Do you wish to exit the Pas$M l 0 nL T "&"ˡ.&"ˡ$  " áP$ނ š: -ٳ ا?ǀǓ ا?ǀ:1!&ÍXÍc(ÍEÍ QáG'á@=+á3@á)Fá Gá Há >z? ؚ21!$4YP>3߻5޻5ݻ5ܻ56; ; ;  <  3 5=(=2hx? ?"? ? ?  . /202hh%hh%HH`%ʎ%HHXWɡ?#X?#XW?"XWš?#X?#XW?"X?"W?"?#VVVU2 R2 ػ%2تP3+&+2T'á  ܚ2"  P ٨ ب5 5#0á-=?#?"?#?"?"?"002 ,٪PتPZ,PƀPZ3ƀ3ZƀU$UáVV?"ɡYV?"YB?#V,á?#VZ,,ZYYV?#VVY,W?"Wǐš ?"VUiV, ;?  ō> ? 0*2 )2ܪP/ۻ0/ٻ1 23/3"32\ 6۪Pá? ?"11ǐȡs. .ٻ..3P33? 223.20;> > ;>c> 0Ʉ  廹> ō> 0 0,?? 19 c? ??á>0 ;? ?,2-2ȡ ނ0ō>- >>+2ȡ09ō>0 ˡ c> >>0Ʉ廹> ٪P3-, ,á55תآ1آ 0 5 6633 ȡ 6363 dȡ 6 3 65 4/ á5  5 -5 ---525 ˡ 5. 5.2,2h  ػ!2 jڝ?"ɡ6?#?#ھá?#٧?#ڝ?"ٕ?"ڕ?"?J=á=2áˡL2" ۝?"ܓ?#۾á ?#ܡ$?#RšR?#ئתPVdá;<:PP#PC/š:7צ:P; ./Ad ?3 1ˡI á+ݢˡڦתRáצ!צ2ڧ? š ǀڧ?ǀǀ Ǔš@:צ!á צ!P$;ئ00000תP  0ڂȡ۾0Ʉ< R<87  áG:/ |77áBš2@/áf9šoá+ھ.á ھ/á 2á9&á9á  áán8ڧ? á 6ȡ/ݾ!á ݾ /P޾ /P 5RR3ۂɄݓVá(۾'ۂ@n: צ/˄5ȡ0ƀƀP̀ʀȡ0ܾaġ 00ܾ 87CONSOLE1:7SYSTERM2:7GRAPHIC3:7PRINTER6:5REMIN7:6REMOUT8ת802Ȅ&0á݂0 4 6ȡ4 0.  á5٪P,6YتPš  ȡ޾ *:Í#Í*á ޾:ˍ צ:P?P#áL۾ ݏ۾0 4ޕ P5:Ä:P.á` hhL&ȑ`W CL& hʈL&fi` hhHj*H*HHL&SOS-PARAM-TABLE{@H?hhhhhhjWȑ jȑ(!Hh0?H&h*0HH`?  hh *h < L+*(" B?  hh * <PRbRINTEGER R CREAL $X CHAR 6b BOOLEAN fhe STRING P TEXT $vMEINTERACTL|ouINPUT xvSTOUTPUT bv KEYBOARDv0FALSE hTRYPRESS: BOOLEAN; !FUNCTION RANDOM: INTEGER; !PROCEDURE RANDOMIZE; !PROCEDURE NOTE(PITCH,DURATION: INTEGER); !Copyright (C) 1980 Apple Computer] ;Clear the Buffer 0LDA #16. 'b'b)Rb  !TYPE "DSTR8=STRING [8]; "TSTR6=STRING [6]; "SSTR18=STRING [18]; " !FUNCTION PADDLE(SELECT: INTEGER): INTEGER; !FUNCTION BUTTON(SELECT: INTEGER): BOOLEAN; !PROCEDURE JOYSTICK(SELECT: INTEGER; VAR X,Y: INTEGER; VAR B0,B1: BOOLEAN); !FUNCTION KELNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ggbbbb: AMB 07/09/85 H)@6DE8 TkAPPLESTULONGINTICHAINSTUPASCALIOGENUTIL GENUTIL BTREE MLMUTIL PLUTIL SOSIO  !3;LbǰȑHH`0&# L? zD<F`"tL>nRJRl: * ( 2  R     6&>@). Calls the SOS routine GET_MARK.}  :?  hhҰ L0? hhhh Ӱ HHL#6?e ?hhhhhhưȑHH`# D?hhhhhhhh   * <L*?   d *hhhhL#"!6?   * <L*?   * <b L%$:?   * <c L%$j** * <LedbVRQPONMLKJIHFDCA>963?  hhhhhhꍴ0 ȩhh * <Ȱ ȩLa`XMJ0-*('& ~? * <LGF=:43-,+*%" f?   d *hhhhL#"!6?  hhhhϰ j쭳j*쭲L=<40.-,% V?  hhhh왺ED<:520.-+*)$ f?  hh * <hhL'&$"<?  hhhhHH * <İ ȑjȑ*ȑLedbROLJI |?  hh왺 ȑL54)&#!  L?  hhhh * <Ű 깷LCB1.-,*)&# ^?  hhL  ?  hhhh * <hhʰ 쭷ȑLUE hxNIL :pMAXINT |RRKBYTESTREWORDSTRE .WOR 0BN DY  P  V  STA READ!PROCEDURE SOUND(PITCH,DURATION,VOLUME: INTEGER); !PROCEDURE DATE(VAR D: DSTR8); !PROCEDURE TIMEOFDAY(VAR T: TSTR6); !PROCEDURE CLOCKINFO(VAR YR,MON,DAY,DAYOFWK,HR,MIN,SEC,THOU: INTEGER); !PROCEDURE SETTIME(T: SSTR18); !  IMPLEMENATION E TRƀLV~HHL,~HH~HHHHHHL,~ʈƅFHHHH恥HL,0~}ʈƅ0I愊iʈؚH恥LŁ|} ƅLw ~~8ʭ==` 5l 5 l 5lhzh{hƁhhhƁ}eʆƀƀ|ʊe~8偅z{lzhhhhhh8冐 0 h HHHL,LGIL,h hBCʈ _.ł( Ł|} ŀ}|z Z   :    ( tV8$@hvhwhhxylxh:vwlv8<<+-Í-۲0ݡߑ ع       &  * عteVG8  )   uh[NA4'á NTEGER[36]) /END; ' " "PROCEDURE FREADDEC(VAR F: FIB; VAR D: STUNT; L: INTEGER); "PROCEDURE FWRITEDEC(VAR F: FIB; D: DECMAX; RLENG: INTEGER); "  IMPLEMENTATION L E ^JECommand: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem, $ "TYPE DECMAX = INTEGER[36]; STUNT = RECORD CASE INTEGER OF 12:(W2:INTEGER[4]); 13:(W3:INTEGER[8]); 14:(W4:INTEGER[12]); 15:(W5:INTEGER[16]); 16:(W6:INTEGER[20]); 17:(W7:INTEGER[24]); 18:(W8:INTEGER[28]); 19:(W9:INTEGER[32]); 110:(W10:I qr80bHH`' <<EBi[ZXGFD@2  FdhFd  P  V  STA READe*)eLL`pMK hh hhHH`'6hh  ;C hhȥ ߥHH`  87M9\hhhh᭙0:0D0  !"#$%&'()*+0123456789:;@ABCDEFGHIJKPQRSTUVWXYZ[`abcdefghijkp@=97)('%#  zhh ?hh)HH`*c<`&&&e?L' hhh)?hȼhhhhHH`hhhhWV) ) 02@*P"`pL&&&LFfFfFfFfHH`P.AUDIO,d`hXȑhhWȑhhHH`_`O?/!hhhhhh9.:.;.<0(0(099JH;HHH`Z310/$ Thh   MyMz { | y z {U|HH`A<62,('&% `hh hhhhhhh)h' 1H)/HHH`,d+`,+#Lhhhhhhh)h) YH)U)HHH` !<hhi )n YhhV)ȑhhU)ȑhUE hxNIL :pMAXINT |RRKBYTESTREWORDSTRE .WOR 0BN DY  P  V  STA READƅ  ILL, _LwLL,E0LL _Lw ILL,ELL _LwEe8刅刪ʈʈݒ&~ʈƅFyʈƅ}ʈƍƎƋƊЌإL2d|e~28ʈƅyʈƅƉ` _LWŁ|}ƅLwE||怦}ʚH恺8倅偪@ȡ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ɡ'VV0hhƀ 0ȑƀ0hJJJJ 0ȑ) 0ȑƀĆLOL,3-'~{vvvvvvvvvvvZTNlb3 `\[TOG@;:3(  T[Fc= YP12 &%& FTYP13 &%& FT ei|ʽ 8襁i}ƅ|L,hƀhhh8hohlhXhhhFffff80)ƅܥ#FfII懥HHL,LGhhhhhƀhh-Ȅʈƅ})H揥>ʈƅ ~擥  抦|ɥ8包~ƅLII懩&&u`hh HHHHHL,}Vb < 0ݪPܪP0š YY0PYǠYPF D ۮ   ڪPXP šEצ:š  >#צ*צ:á >š{-NVWf-N PROCEDURE FSEEK(VAR F: FIB; RECNUM: INTEGER); PROCEDURE FREADREAL(VAR F: FIB; VAR X: REAL); PROCEDURE FWRITEREAL(VAR F: FIB; xx: REAL; e1, e2: INTEGER); FUNCTION SUPER_MOD(A,B : INTEGER) : INTEGER; FUNCTION SUPER_DIV(A,B : INTEGER) : INTEGER;  function Sˡ/14 ڡؼáڡؼZš0áۀ š ۀ*ByO7>zS8ȡ ȄPšPMšM/(<<<0Eá4+á4-á4.1.Ǹ ɡ ۏ01ۑ+-4.L0Ná=;á/Ä ڡؼ1A3N3'Ä!4' Ä1./-+á -á0Ná1. 2 .á0Eáa4.12,ɡ1.0آ  "10ˍ8,ɡ 1ɡؿ 0ÄL2٢10ˡ103آ1 41á?˄??&@ۂ"ˡu??š???#?$???$?#ń ?#?$?ۚ?$ܚ?AAA?AˡA  5~ 09Ȅ.!~Ȅ/azōaA??@ɡ??"@?Ä?á?????,? >"Má? > >? >á @@@ Ą @ ?ˡ\?%,?%???&@?"% ,    ݂܂F  -    ޏݏ@܏ޏ@ݏ܏ޏݏ܏܏ ݏ ܏- +$&!&%š#$ە##š##$"$##ɡ#"ɡ2ݓ&&Í&&&á&"&!)&%&&Í&&"&!)$%&&!!$$#ȡ!ˡ ء##ȡ''0'Q'Pˡǀġg/  ( ǀ > *ڨ ɡ(MMMM܏M܏T+ܨ ء '$' \)  ɡ-Í á ܑ ) '!Í ) % ɡ    ~ɡ  ~"(&آڢ٢آ&'ڢڢá ޡ?šڢڢ'ޡڢڢڢ~ڢ n( ȡ ۞$(@ $( $( ۡ#š #ȡšڢۑڢ.!ɡܢڕܢښ $"ڢܢۢڢ`` ڢ 2#آڢ٢آ*$آڢ٢آ(%آڢ٢آɄɡ& 8ݍ á ބݍݍܓ܄>ۢۢۢۢۢNۢۢۢܕ( trToNum(VAR decstr: string; poweroften: integer ): real;  procedure NumToStr( r: real; fixed: boolean; placecount: integer; 4var s: string; var expon: integer );  IMPLEMENTATION E and: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,)ȡ<Ä;;/>;,ɡ#??P?0Q?P>>.P>8??P?8U?P/ؑ>,>Nš N>>š3=>?=?ȡ#@@P@צ0Q@P==ȡ5=?=?ȡ#@@0@Q@P==.Pؕ<áNAN''תP<áR/8-8+??צ ?8?8 ?צ ?Pɡ 8P_0.0תPȡ)ɡ??P? Q?P'ɡ??P?צ Q?PNTEGER xD;REAL  SCHAR G BOOLEAN v2STRING 0WHTEXT :$5INTERACT*RGINPUT &$ TOUTPUT 8$L KEYBOARDN$BEFALSE 2TRUE H&NIL bMAXIN CHARSET += SET OF CHAR; ) )SCRCOMMAND += (NULLCMD, .CLRLINE, .CLRSCREEN); ) )CTRLTYPE += (NOTCTRL, .DUPCHR, .BACKSPACE, .INSCHR, .BEGFLD, :'')PBBI # &USES )APPLESTUFF; ) &CONST )NULLSTRG += ''; )SPACE += ' '; )DASH += '-'; )SCRCOLS += 80; ) &TYPE )ACCESS += (RETRIEVE, .STORE); ) )DIRECTION += (CENTER, 0LEFT, 0DOWN, 0RIGHT, 0UP);  )LONG += INTEGER[12]; + # v :2D"\.< z 048VID K6ANU8HVIDS ZA\A!8H@DIRRANGEA~AA8MTID CAAN8HFULLID VJAA8H HH`7hhhhhhhh訪 H & *HHH`6hhhhhhhhHHHH`&hhhhhheȑȦ0+L4-I8i  L6i0i0HH`.`4j rXJF8IȱjE Ȅ橀إHH`zhhhhhhhhhh[ȱ)uD*&**u&L&*** ʈHH5qjȑHHHH`\hhhhhhhh  0<Ȱ& u E   ؠ ) JJJJ 0ȑ ) 0ȑᘠHH`hhhhhhR0H*v  u&&v&E& &詀&L&&ť&&ʈHH`o'hhhhhhhhhhhh bL)5Ffeyumꩀ5JA1SKQL51QF55(5ȱ0 fLfJJJi䨩ȩ50,8 &5&  6 F5L L5HH`~u$hhhhhhhhhh訪 横 Ji&&0 fL]fJJJi&&⠊hhhhhhhhhhhh&FffHHHHHH`Phhhhhh⨥HH`,hhhhhhhhhh訪 横v E 詀 vE 詀  LjH`:hhhhhhH50HHH`*hhhh LHH`4hhhhhhhhhhhhhhhhȑ**ȩȑ&HHHH`h hhhhhhhhHHHHHH`(0 2) l` 0 2) l` 0 2) l` 0 2) l` hhhhhh404)@ 4) HHH š)  ȡ0ˡ š  *ݡ W~ ٦***תP(š_ۡɡڑ ɡá0PÄ,ߡצ-QP<ˡ $ ؿ ٿING); &FUNCTION VALIDDATE(DATESTRG: STRING; VAR DATE: DATEINT) /: BOOLEAN; &PROCEDURE FMTDATE(DATESTRG: STRING; VAR FMTSTRG: STRING; :FMTSPECS: ATTRIBSET); &FUNCTION DATECOMPARE(LEFTDATE, RIGHTDATE: STRING) /: INTEGER; &PROCEDURE STDSCREEN(BANNER: STRING); #IMPLEMENTATION L E TEGER; FMTSPECS: ATTRIBSET); &PROCEDURE SCREENMSG(XPOS, YPOS: INTEGER; COMMAND: SCRCOMMAND; =MESSAGE: STRING); &PROCEDURE RESPOND(MSGKIND: MSGTYPE; MESSAGE: STRING); &PROCEDURE STRGDATE(DATE: DATEINT; VAR DATESTRG: STRING); &FUNCTION VALIDDATE(DATESTRG: STRING; VAR DATE: DATEINT) /: BOOLEAN; &PROCEDURE FMTDATE(DATESTRG: STRING; VAR FMTSTRG: STRING; :FMTSPECS: ATTRIBSET); &FUNCTION DATECOMPARE(LEFTDATE, RIGHTDATE: STRING) /: INTEGER; &PROCEDURE STDSCREEN(BANNER: S9HOWJUST: DIRECTION; 9MAXLEN: INTEGER; FMTSPECS: ATTRIBSET); &PROCEDURE SCREENMSG(XPOS, YPOS: INTEGER; COMMAND: SCRCOMMAND; =MESSAGE: STRING); &PROCEDURE RESPOND(MSGKIND: MSGTYPE; MESSAGE: STRING); &PROCEDURE STRGDATE(DATE: DATEINT; VAR DATESTRG: STRTLEN, PAGELEN, RESRVD, DISPLACE: INTEGER; 9VAR PAGENUM, POSNUM: INTEGER); &PROCEDURE PROMPT(RSPX, RSPY, RSPLEN: INTEGER; DEFAULT: STRING; 8VAR RESPONSE: STRING; 8RSPKIND: ATTRIBSET); &PROCEDURE FMTNUM(RAWSTRG: STRING; VAR FMTSTRG: STRING; EVALUATE(STRG: STRING; VAR VALUE: LONG; VAR CURPOS: INTEGER); # FUNCTION EVALINT(STRG: STRING; VAR CURPOS: INTEGER) /: INTEGER; &PROCEDURE LONGDIV(DIVIDEND, DIVISOR: LONG; VAR LQUOTIENT, LREMDR: LONG); &PROCEDURE LOCATE(BLOCKED: BOOLEAN; 9ENTNUM, ENDURE MAKESTRG(CH: CHAR; VAR STRG: STRING); &PROCEDURE JUSTIFY(SRCSTRG: STRING; VAR DSTSTRG: STRING; :HOWJUST: DIRECTION; PADCHR: CHAR; :NEWLEN: INTEGER); # FUNCTION FIRSTNON(HOWJUST: DIRECTION; PADCHR: CHAR; SRCSTRG: STRING) /: INTEGER; &PROCEDURE )REPORTCTRL +: RPTCTRL; )OUTTEXT +: TEXT; & &PROCEDURE DELAY(DURATION: INTEGER); &PROCEDURE SOUNDBELL; # PROCEDURE GETCHR(NUMDELAYS: INTEGER; WITHBELLS: BOOLEAN; 9VALIDCHR: CHARSET); &PROCEDURE CHGLEN(VAR STRG: STRING; NEWLEN: INTEGER); &PROCEORE +: CHAR; )ESCTYPED +: BOOLEAN; )ERRNUM, )MINDIGITS, )NUMPLACES +: INTEGER; )ALTCHR, )CTRLCHR, )DIGITS, )NORMALCHR, )NULLSET +: CHARSET; )CTRL +: PACKED ARRAY[0..255] OF CTRLTYPE; )DATEDELIM +: STRING[1]; )TODAY +: STRING[6]; PRINT, SKIP); & )RPTCTRL += RECORD 0PRINTAREA: INTEGER; 0PHYSICAL: INTEGER; 0LINESONPAGE: INTEGER; 0PAGENUMBER: INTEGER; 0OUTPUTTO: OUTDEVICE; 0RPTBANNER: STRING; 0END; (* RECORD *) & &VAR )BACKGROUND, )ESC, )NULL, )RSPCHR, )RET, )UNDERSCDMY, /YMD); ) )ATTRIBSET += SET OF ATTRIBUTE; & )DATEINT += PACKED RECORD 0DAY: 0..31; 0MONTH: 0..13; 0YEAR: 0..99; 0END; (* RECORD *) & )MSGTYPE += (QUIET, ERROR, WARNING, ATTENTION); + )OUTDEVICE += (PRINTER, SCREEN); * )LINETYPE += ( .Zr  ټ< ߡQ ە݆š ݆  M   ە   [ػ;;ٗ خ8 +; K   ȡؗǀIǀBǀEǀDǀCǀA@تP+.P++"P+צ+pP++ZتPٹ,,,,KTT _*צ&\X n F n 6;;1;P$;;1;;6 ;P";;6 ; ;1 ;P;;P;,Q;P;;P;Q;3U;P8`d.۪PڪP.... Q6Octoberת A6Novemberת 06צDecember  ~sh[K=.6צUNKNOWN 66;; 1;; 1. ..1 3;;3;;צ19;3;6;;3;;2 4 1c44 4 c۪P06;;  6. ... Ȅ.6Januaryת 6Februaryת 6צMarch 6צApril 6צMay 6צJune 6Julyת r6צAugust c6 Septemberתd'd P P\|۪P044/ 244/ 344/ 122 Ȅ 2P 211ˏ00330Ȅ..4. 4347צ)R7P&67767Q76R7P@  .06-67767Q7P ۝y تPٹ RD٨'1$11š,P111.P )06-677P76Q7Pڝ  ۝77$7Q7PV0%77(7QA=9 5!1#-$)%%'!( 31/-+)'%#!425)b   -*ݪP021 22202  2P ܦתP 11ɡ0Rn)۪P327צ)8 O 28+ 88  888K;88&58;l[43 44˄4,E#52$5á52%P5"5&&'52(٪P H*H7H7ءצH HH55ؿ55555á ظ5HP   5ɡ HP"!5HHHP4"5ɡ"5š5 555š55 6-˶Ä%45ɡ 55 5áo356á 5^-5HȡH ^563;5š4á53HP 9K5á2G5á 32 (+-˶5Ä5ء3á ǀR  jعa5ɡ54˶4˶56Í,צ^P5i*zڶšھ 3 5-Äɡ&5š D j J p  T`> <2J\T*6 ;P";;6 ; ;1 ;P;;P;,Q;P;;P;Q;3U;P8`d.۪PڪP.... #USES % APPLESTUFF, &GENUTIL; # #TYPE &SRCHTYPE (= (FIRSTEQ, +FIRSTGE, +NEXTEQ, +NEXTGE); & &PPAGE (= ^PAGE; & &INDIVKEY (= RECORD -RGTSUBTREE: PPAGE; -KEY: STRING[16]; -END; (* RECORD *) , &PAGE (= RECORD -NUMONPAGE: INTEGER; -LFTBv@(\,2Rr. ڮɚ nڟˡخخ+ۮ ɚ\ٟá[ ڡ2ݟáɚܕ خ nءá ڢ*ܪPڦתP޹   R6ܪPR تP-,fتP-,fނ ڮ ڮ߂2 ނ ڮɚ nڟˡخخ+ۮ ɚ\ٟá[ ڡ2ݟáɡ  š?  ܮܮߕ߂ޮ ޚ߂/ ٕ ܮɚá  šQ߂  ߕ ضض آؚڟá' ۡ J ءٚ6آ٢ؚ á"ȡ  ۢ Bɡ5 ȡTá  3  Iٚ8 آ آآÍ-:öÍáy ܟá/ړ&šڡ ړá ۡڡPy R  š?šܢڢݞܢڢݞ R ߓ6  ޓ á X r آ ٢آآؚۢۢۢۢۢ.۹ޢޢ #D۹آܚ 2ڨ 0(8"<&&UNDKEY: STRING) ,: BOOLEAN; #PROCEDURE INSERTKEY(VAR TREE: TREEPARS; SRCHVAL: STRING); :'')PBBINTEGER xREAL #CHAR BOOLEA#PROCEDURE DELETEKEY(VAR TREE: TREEPARS; SRCHVAL: STRING);   IMPLEMENTATION L E ORD *) # #PROCEDURE OPENTREE(VAR TREE: TREEPARS; KEYLENGTH, MINONPAGE: INTEGER); #FUNCTION FINDKEY(VAR TREE: TREEPARS; SRCHVAL: STRING; SRCHKIND: SRCHTYPE; 6VAR FOUNDKEY: STRING) ,: BOOLEAN; #PROCEDURE INSERTKEY(VAR TREE: TREEPARS; SRCHVAL: STRING); :'')PBBINTEGER xREAL #CHAR BOOLEAOT, -CURPAGE, -REUSABLE /: PPAGE; -STACK /: ARRAY[1..10] OF STACKITEM; -END; (* RECORD *) # #PROCEDURE OPENTREE(VAR TREE: TREEPARS; KEYLENGTH, MINONPAGE: INTEGER); #FUNCTION FINDKEY(VAR TREE: TREEPARS; SRCHVAL: STRING; SRCHKIND: SRCHTYPE; 6VAR FOSUBTREE: PPAGE; -KEYS: PACKED ARRAY[1..2] OF CHAR; -END; (* RECORD *) 0 &STACKITEM (= RECORD -PAGEPTR: PPAGE; -INDEX: INTEGER; -END; (* RECORD *) & &TREEPARS (= RECORD -CURINDEX, -KEYLEN, -MINPERPAGE, -PAGELEN, -NUMONSTACK /: INTEGER; -ROɚܕ خ nءá ڢ*ܪPڦתP޹   R6ܪPR تP-,fتP-,f # &TYPE sort_field = array [1..3] of integer; , 3phone_field=packed array [1..20] of 0..15; ?{Initialized to 13, x"d" } 9 3indx_entry = record 9rec_num: integer; {001} 9sort_1: sort_field; d; {128} $ procedure PHONEFLD (phone_strg: string; {Decoded phone number, lgth 20} 4var phone_code: phone_field);{MLM data record phone field } Q{Packed array [1..20] of 0..15} Q{Initialized to x' {001} 9line_length: packed array [1..6] of 0..63; {107} 9phone: phone_field; {113} 9label_code: packed array [1..6] of char; {123} 9 {Initialized to " ", x"20" } 9en9 {1 if name is sort1} {303} 9wrk: array [0..12] of indx_entry; {305} 9end; {512} ( 3data_rec = packed record - data_val: string [105]; {299} 9s2_zip_sort2: integer; {0 if zip is not sort2} {301} 9 {1 if zip is sort2} {301} 9s1_name_sort1: integer; {0 if name is not sort1} {303} _entry: integer; {291} 9s2_line_num: integer; {293} 9s1_line_num: integer; {295} 9s2_name_num: integer; {297} 9s1_name_num: integer; 1..12] of record Hdata_name: string [11]; {097} Hline_entry: integer; {109} Hline_num: integer; {111} Hend; {288} 9s2_line_entry: integer; {289} 9s1_line9lbl_width: integer; {Default 30} {089} 9lbl_lines: integer; {Default 5} {091} 9line_length: integer; {Default 30} {093} 9line_count: integer; {Default 4} {095} 9data_group: array [ -2} {079} 9lbl_margin: integer; {Default 0} {081} 9lbl_across: integer; {Default 2} {083} 9lbl_spacing: integer; {Default 4} {085} 9lbl_skip: integer; {Default 1} {087} : sort_field; {071} 9dunno_2b1: integer; { '0000'= 0} {077} 9dunno_2b2: integer; {Init '0000'= 0} {079} <{If sort1 is most recent,then 'FFFF'= -1} {079} <{If sort2 is most recent,then 'EFFF'= {049} 9s2_low_val: sort_field; {055} 9dunno_2a1: integer; {'FFFF'= -1} {061} 9dunno_2a2: integer; {'1000'= +1} {063} 9s1_high_val: sort_field; {065} 9s1_low_val- dunno_1b: integer; { 0 } {013} - int_960: integer; { 960 } {015} - list_name: string [31]; {017} 9s2_high_val: sort_field; :'')PBBINTEGER xckREAL  oCHAR iaBOOLEAN vlaSTRING 0onTEXT :$inINTERACT* INPUT &$ OUTPUT 8$AL integer; {001} 9mlm_id: string [ 5]; {'MLMgr'} {003} 9dunno_1a: integer; { 16 } {009} - rec_count: integer; {011}  {003} 9soundex: integer; {009} 9sort_2: sort_field; {011} 9end; {016} , 3indx_hdr = packed record - dunno_1: D', blank } 3{MLM Phone Field from String Phone Number } I  procedure PHONEVAL (phone_code: phone_field; {MLM data record phone field } Q{Packed array [1..20] of 0..15} 4var phone_strg: string); {Decoded phone number, lgth 20} 3{String Phone Number from MLM Phone Field } ( procedure SORTFLD (sortfld: sort_field; {MLM sort field, 3 integers } 4var sortstrg: string); {Length-9 string--.ʀ..x ٪P/BFPVת/צCGJKQSXZ/DTת/L/MNת/R/ - p-pȡg- - š~,/q-qg- ƀƀƀƀ--ƀƀ  -̀-ʀġƀƀ-ƀ ƀƀƀ ƀ-ƀ-ɡƀ-ƀ-ƀƀƀ-ƀġؼ# T ٪P/( ()-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZתP,ƀ.̀.ʀȡ-̀-ʀȡ,,ƀ(ƀ-ƀ ƀƀ,ƀ/ƀ ƀƀ#ƀ " - -X̀Xʀġ -XƀԼ-X XXNAMEׯ-ƀƀ -ƀP- ġ-ƀ ƀP+-P ɡ̀ƀPƀ QƀP(2 š ޞ ////.ƀ/.ƀP/.̀ƀPƀ, RƀǢƀPYצ)̀ƀPƀ, RƀYǢƀPٮVp ȡ,ٛ ٛٛ 4 D -ڪP٪PƀԳ̀--ʀ0IIIׯ0IIׯ0esqׯ0צEsq0ESQׯ0צINC0Incׯ0צATC0DEDׯ0צDEd0EDDׯ0צEdD̀ʀDỲƀYPƀ QƀƁ/.ƁǡƀP/.ʀ ,//š0Yƀ//ƀPƀ/ƀP̀  ////.0ƀ/.ƀPצ.0--šCỲƀYPƀ Qƀ0ǡƀPƀ/.ƀP̀ʀ̀-.̀-ʀȡ0-ƀ(ݛ F'ݛ S' 4צ šצ š áš áK `ڪPƀ " " ٦תPئתP YצPS  +SSǙ SS  FS@ SSF@ݛ F'FS( SSF& j٨ ( ()-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZئ תPWWȡRSRSSRSSRSSR٪P,0123456789-() XxתPWXWXȡW WWš VWXWXȡ<YWY,UUġVVVUWWE ٨0123456789-() Xxئ תPȡTSTRG } 4var soundfld: integer); {Soundex value of "sortstrg" } 3{Returns fullword MLM soundex fr sortstrg } IMPLEMENTATION L E ng); 3{Returns MLM sort string from sort field } procedure SORTVAL (sortstrg: string; {Length-9 string from SORTSTRG } 4var sortfld: sort_field); {MLM sort field, 3 integers } 3{Returns 3-integer MLM sort value } procedure SOUNDEX (sortstrg: string; {Length-9 string from SOR from sort field} 3{Alpha value from 3-integer MLM sort value } ( ,  procedure SORTSTRG (instring, fldname: string; var outstring: string); 3{Returns MLM sort string from sort field } procedure SORTVAL (sortstá6,,q-q/,šg- ,g- š g- --.-,.-g, -šr,,, š--.-Mg, š=g, g, ˡ --.-g, .J.2|jX   ٪P/BFPVת/צCGJKQSXZ/DTת/L/MNת/R/ - p-pȡg- - š~,/q-qg-  procedure X_TO_Y (x: long_12; y: integer; var result: long_12); 3{Returns X to the Yth Power }  procedure OPEN (var FILENAME: FILETYPE; {FILENAME: Internal name of file} N{FILETYPE:User-defined data TYPE} N{ } procedure UPPERSTR (var str: string); 3{Change string variable to upper case }  procedure UPPER1 (var str: string); 3{Change string to mixed case } rs, or range of chars } 4 dest: string); {Dest chars, or range of chars } * {Transliterate chars in string } procedure UPPERCHR (var ch1: char); 3{Change char variable to upper case anks if lengthened } procedure NIBBLEX (inchar: char; var outhex: string); 3{Returns 2-nibble representation of char field } ( procedure TRANSLIT (var xstring: string; {String to be transliterated } 8source: string; {Source cha* procedure NEWLEN (var STR: string; {I/O string whose lgth is to be changed} 4LGTH: integer);{New string length. } 3{Change length of a string, pad with blt MI Last, Suffix format. } 4var out_name: string; {Last, First MI, Suffix format. } 4var out_last: string); {Last name. } 3{"First I Last, Suff" name to "LFIS" & "Last Name" } teger; 3{Integer from a numeric string }  procedure IOERROR (IO_ERR_NUM: integer; var IO_ERR_NAME: string); 3{Return the name of an I/O Error from its number } procedure LNAME (in_name: string; {FirsX4 (value : integer; var str : string); 3{Return hex representation of fullword } procedure INC (var counter: integer); 3{Increment a counter }  function INTSTR (strg: string): in3{End Include VARIANT} 3 function BASE_TEN (strg: string): integer; 3{Base-10 representation of a hexadecimal string }  procedure BLANK1 (var strg: string); 3{Strip double/lead/trail blanks from string }  procedure HEPUT 8$maKEYBOARDN$ FALSE 2TRUE H&NIL bMAXINT * BYTESTRELWORDSTREd@\ 3{  ival }  :'')PBBINTEGER xppREAL : CHAR  BOOLEAN v{ STRING 0 TEXT :$ INTERACT* INPUT &$inOUT] of 0..255); <3: (nybl: packed array [0..3] of 0..15); <4: (bit: packed array [0..15] of boolean); <5: (bool: boolean); <6: (octl: packed array [0..4] of 0..7); <7: (word: char); <8: (ch: packed array [0..1] of char); Fצ,PōצInvalid error codePT ɡI@ɡ#--(SOS)-U-P!--צ(SOS)-U-Pצ(SOS) צError not in tableP  ////.2/.P2צInvalid sys buffer parmPئDuplicate volume errorתPئNot a block deviceתPئ Invalid levelתPצInvalid bit map addressPf@Z6jV@,t`E6&n[zǀɄצSystem call errorP Pj V ead after endfileתPئFile position out of rangeתPئIllegal accessתPئUser buffer too smallתPצ File busyPئVolume not SOS or Apple-2תPצInvalid length in parm listPئOut of memory for sys bufferתPئBuffer table fullתPצles openתPצInvalid file reference noPئPath not foundתPئVolume not foundתPئFile not foundתPئDuplicate file nameתPצOverrun on volumePئDirectory fullתPئIncompatible file formatתPئUnsupported storage typeתPئRdPצInvalid byte countPtצInvalid block noP\צ Disk switchedPG .!gO9/@Ʉצ Device errorP PL v@ڹצInvalid pathname syntaxPئToo many char files openתPئToo many block fi+ t^G P1  ?ڹצInvalid request codePצInvalid status or control codePצInvalid control parm listPئDevice not openתPצDevice not availablePצResource not availablePצDevice write protecteal pathnameתPئNo room on disketteתPצUnit not onlinePئ No such fileתPئDuplicate pathnameתPئFile already openתPצ File closedP~ئBad input formatתPfئWrong disk formatתPMצDiskette write-protectedP-"ybF /qs  ڹצNo errorPצNo filename storage spacePئBad unit numberתPצIllegal operationPئIllegal directory specתPئUnit no longer onlineתPצFile no longer in directoryPئIlleg/-7-7ȡ38-8צ 12345678903 3  3//3-$--.///   /  š áK `צ0123456789ABCDEFPئ0000תP..ȡڕ(X ZڪP.á-á.77P+á77PšڪP/-0š-Ʉ11צ0123456789ABCDEF..á(11צ0123456789abcdef..á/-.--/ צ šצ š á for the file. } 4DISPLAY_NAME: string; {English title of for display } 4IO_METHOD: string; {Either RESET or REWRITE. } 4var PATHNAME: string); {In: Default PATHNAME or null} N{Out: Actual PATHNAME if OK. } -.-ȡ!2---2IIIׯ2צII2esqׯ2Esqׯ2ESQׯ2INCׯ2Incׯ2ATCׯ2DEDׯ2DEdׯ2EDDׯ2EdDׯ6[2P Q[ǡP/.צ á&g/JڪPƀ " " ÍPō٦תPئתP[צP š  11צ.š. 00/1ˡ1/0ˡ/á { 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_WPW ʀƀʀ ƀ̀ʀ̀ʀ̀ʀʀġʀʀ̀WצQUITצP̀WצABORT ʀá j:Pr . F` ( 8Th.2"̀ʀáWPʀˡʀ  invalid̀ʀƀERROR: ƀצPress RETURN to retryצEnter "QUIT" for no file' or "ABORT" to terminate this programWתP̀ʀXצEnter pathname of the .: N.. צ#̀צNo file}צREWRITE"̀_"̀ʀŦ.TEXTÄ;ẀƀPƀ.TEXTUƀPW"̀ʀpassed = "צ".צ Fix the calling program, please.צEXIT triggered by subroutine.̀ƀƀƀƀ ?̀ƀƀצ** ̀ʀƀʀ ƀš =/|P<< =0 /<<m 72468":.ڪP٪P צREWRITEצRESETצ,Procedure OPEN error: Invalid IO_METHOD parmצI/O method =ܛܛ|?06á7á =#/ܛܛ|>0;á-/<š = <<0:á5ɡ =<<>V0809Í>/<</' !0 ڦתP< 05˄0/0<á = P<<ܛ0M<š<<AAPA QAPܛ0ɡ? =07áP<š =;/'<š3 P</ NšNɡš ɡقPšPٕ1113335678Lj:Ǖ; @> ?=9ڪP0ڡ ٛٛ hš ġؼ# T11 []<Mš @3  & ȡ,ٛ ٛٛ 4 D   ȡaٛړ ٛٛ ,ٛƀ/WW...ƀƀ., -٪PتP-VƀVƀš5ƀ́XƁXƀƁXƀƁƀƁƁX́ẂXʁWʁXȡ7ƁYʁWƁYV́VʁVšʁWƀʁVʁẂWB9ABCDEFPئ00תPTR ٪P-*..W.W.ȡW-WWɄOW,W/,/ȡ*-,000-0,,)///ƀW0/ 0/š0////.ƀ/.ƀP/.צ š̀ƀPƀ, RƀǢƀP[צ)̀ƀPƀ, Rƀ[ǢƀPrPō ؿɡ ڕ 0 צ012345678D_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; Function 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; ,Copyright 1 {$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 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 Priorlean; 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; ean; 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 Pathnam981 1982 1983 Apple Computer Inc.rce): INTRINSI''')xPxxINTEGER xREAL &J~CHAR \ ) : 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} YL) 5h(h)hhhhhhhh^_h]hh\h[[ xȑ)H(H`G0-+($"!`h(h)hhhhhhhhhh[\][ x^ȑ)H(H`+(%#"Zh(h)hhhhhhhhhhH` 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)hhhhh)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`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ȑ)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)hhhhhh:.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} FMLMOTHER צ3Remove write protect tab. Press any key when ready.&+}צMLMUTIL/SYS.CONFIG,,ȡi--Do you have program -)d-?e-P+}+}}צ4RepɡEצ-ERROR in menu. Line > 80 columns. Pgm aborts.yXZ@R)ȡn|) ^) @R) 䩑šF.ERROR in menu. More than 18 lines. Pgm aborts.L)תP@R)תPȡ楃|)š|)^)š^)@R)š!@R)@R)š!P@R) R)PȡȡU|)P |)[ |)R ]TPꥑ|)צ[ Q ]P^)QUITתP@R}MLMUTIL/SYS.CONFIG"ˡ!ȡY0ȡ}}}ȡYá^))P)^)P@R) R)"Convert an MLM file to ApplewriterתP R)!or DIF or other ASCI file format.תP)צMLMUPLDP^)2-CתP R)צ"Create an MLM file from an ASCII P R)צ!text, DIF, or NAME:VALUE file. PMail List Manager fileP R)into another format.תP)MLMERGEתP^)צ2-BP R)$Merge two MLM files via the ProFile.תP R)תP)MLMASCIתP^)צ2-CP R)t Manager file.P R)צP)צMLMLISTP^)2-AתP R)צ#Formatted listing of your Mail ListP R) Manager file.תP)צMLMCNVTP^)2-CתP R)צ#Convert your &-  )MLMINFOתP^)צ2-BP R) Consolidated data sheet for yourתP R)Mail List Manager file.תP)צMLMSORTP^)2-BתP R)צ$Re-sort your Mail LisڪP&.Bš/B/PBצ (Y | N) --> --@@-Yš- -.i&צPlease answer "Y" or "N."Bצ PRESS ANY KEY-.pQ88n_dlace write protect tab. Press any key when ready.&+^ȡPȡ_ȡ|)^)@R)@R) A@R)ɡġ9_ ڦתP< 05˄0/2<á = P<<ܛ0O<š<<AAPA QAPܛ0ɡ? =07áR<š ==/)<š=P</ NšNɡš ɡقPšPٕ1113335678Lj:Ǖ; @> ?=9ڪP0 !0تP&Aš,A,Pצ Press any key.+&~11 []<Mš @33 p88nD_dL^!MLMERGE ss ESCAPE to abortP/ P/צ{U.CODEץá!P.QPLoading Program ]`P/ P /&}U:צMLMUTIL/]X.CODE]P{U"ˡ{Please put Boot Disk ")f" in the built-in drive}P/ P /צPress RETURN when readyP/ P/צPreצá:%{}U{Χ:X X++X00%Apple /// Mail List Manager Utilitiesצš]^)PTá3^)TQéT Í橁TQ۩Í š۫&l~uZצצPress RETURN To TerminateP/ P /צ"Press ESCAPE for the PASCAL SystemP/ P/۩ġšɡ ^)^))TQT T   TꩁTá쩁T תP^)T á۩šɡ^)T T橑^)תP&P..ȡ_$Select an item by number or up/down &arrow. ESCAPE edits menu. "Q" quits.Tܛܛ|?06á9á =%/ܛܛ|>0;á//<š =<<0:á7ɡ =<<>Z0809ÍB/<</)š =/|P<< =0 /<<{ E02460H۪P/P צEnter 2 drive (1-4 for standard drive, 5 for other drive)/M/f job. Press RETURN. End of job. Press RETURN."  橄ȡRRH ȡ``Hڨب=P 3 3צ contains  צ records. &áéɄ_P ,,צRemove disk 1 from ".D,f,". Press RETURN.v,P^éÄ1Pצ End of first pass. Press RETURN. End o" to "Sצ". ɡ F F 򥚯򥙬ɡ  צOutput Mail List Manager File  צ,   ϥ̥ǥĥB á!ܩA P|Ϩ̨'áܩ@ P|ǨĨ|*S Sort field "צ" ranges in value from "*צ9Not enough space. RETURN to continue, or ESCAPE to abort.V-Press RETURN to continue, or ESCAPE to abort.,P/ˡWWPW/QWPWWPWצ MLMERGE.TMP[WPMLMUTILv 5 ' ',MLMERGE.CODE$ 3,MLMINFO.CODE!9,MLMSORT.CODE"!t,RWP,* צP+ũō;צ0Program aborts due to errors. Press RETURN.U穏ˡUUVצ'Enter SOS device name of your hard disk,צ.PROFILEP, C,* ˡVT*ɡLV Input File 1ץ祇襈תPɡ0,P ,WWצ.DW,RWP,* +PVMLM Input File 2ץ襏/(Both files cannot have the same pathnameVV ɡ2,P ,WWצ.DW @ ٪P: VáJ Volume in צ is named ة_. error. SOS error number  צ: .R MLMʀȡq,ʀ̀ʀ ʀ̀3ʀZáÀ&ʀ ʀ̀ ʀ9á0̀,ʀʀʀ̀,:UU,Pw&Rename failed,return code  . Press any key.Records to hard disk  ɩɍ-צ&Remove input MLM volumes. Press RETURN^V̀ƀצ.Two volumes with the same name. I am changing .ƀצsecond vol name.>ƀPV٪P,٪P,̀̀ʀ̀ʀDATAUYP>  צEnd of Merge Phase.File 1 records read  File 2 records read  Duplicates bypassed  XXXɄXXɡ-/YY.DY/RYצ/MLMGRXYP/צPצEnter pathname of /&%/ /צ.INDX/XXš/X.DATA/XXš/XYY/PYצ.INDXUYPYY/PYצ.>P 3 ۨڨá=  = B,: á PPVP-P̀ƀצ**ƀRƀPVP V̀ƀצMLM Input File ƀV_ƀPVRESET->צChanged pathname. I cannot copeášMail List Manager File آצ contains   records.,ȡc , HH,FH@F,áᩕ驕,,- --HצFH`:R,:ߚ-ߥHH--ȡ-צ&Writing from hard disk to output file - Processing MLM Record Number,--- HR`橏HɡKצ+Number of output MLM files? (1 | 2-Default)&K2. .š.- K á`` &צMerging to Hard Disk.Processing File-1 Record NumצProcessing File-2 Record Num--ȡ(--Files using Hard Disk (v.04/87)P ,:#˩"ˍEצ:The files sort fields differ. Program aborts. Press RETURNˡIצ>The files are sorted differently. Program aborts. Press RETURNRR 쥗Fl@>HnH@`:`@Rx,RΧ:ױתP ssxxצ6MLMERGE: Merge Two MLM K!DH e5iK HCH@HN~ 橄ȩȄMR`< R(> `R`ȡ `橄ȡ R.  FF Empty FilekJ^ bC٨ب@KåD åH  dš=4100+ duplicate keys. Output may have duplicate recs.d e5iL Le5LL š   records.ˡ+ Is it OK to destroy this file? צ("N" - default, or "Y")7P+&K@@Nצ+ K +y+YFFAצ Changed pathname. I cannot cope.򥙬}"ˡ>3Write protected disk. Program aborts. Press RETURN.}šצMail List Manager File  contains צOutput file number TcP+éÄA7~צ/Second file can not have same path as the first~+P**RP+צRESETׯ1&No file. Program aborts. Press RETURN.+he ƀV\ƀצ file you want to merge? vƀצ("Y" - default, or "N")ǍƀPV&K@@NצV K VnVN צ Empty File g"8TP ~+ieldƀVUƀPآ0أ V V̀ƀThe file is sorted by ƀآ0أ !ƀצ."ƀPEצ:The file is not sorted. Program aborts. Press RETURN.VáVצfirstP VצotherPV̀ƀ Is this tأ'áVآ0أ PVVצDأVP V̀ƀFieldƀVUƀPآ0أ V V̀ƀצThe file is sorted by ƀآ0أ !ƀ."ƀPأ'áVآ0أ PVVׯDأVP V̀ƀצF:"-Cb*0P `T<86* P  .ȡ-צ&Writing from hard disk to output file - Processing MLM Record Number,-4MLMINFO abels (0-99) = ) U)שr)0Width of Physical Labels in Characters (1-99) = ) S)שr)0 Characters Between Labels (0-99) = ) R)שr)0 cations())שr)--------------------()yprinterׯ)V)שr)0 Height of Physical Labels in Lines (1-99) = ) T)שr)0 Lines Between L)S)צ.")yצprinter)áH š ) = Default)) = Default))yצprinter)xyצprinter))שr)Print Specifi)3sPáY PY PPá |L|D|*Pá |I|A|S)שr) Sort field "))צ" ranges in value from ")*)" to "yprinterׯ)צ ---------------------P)שr) --------- VVȡ)ꥃ))שr)5The notations "(S1)" and "(S2)" refer to the primary )צand secondary sort fields.-P yz  ɡ-XX X-QXPXXצ [X-RX] TXyz  _X `Xyz  dXPá  š%))צr)צ ))r) --------- VVȡ))yprinterׯ)xVVȡ쥃)צryzlá)צLabel # )צComment ) )צ yzWWȡyz  Ɣʀń$yʀzʀ  צ(S2)es yprinterׯ) Field Name (Sort) תP)צr)צ Line Num. VVȡ))yצprinter)צ ---------------------P) PƁƁׯEʁƁP Ɓ́.Ɓ.FieldƁ.ƁUƁ.P2ʁ Ɓ yxzʁ  2ʁ  yxzʁ   yxzʁ  ʁʁ́ʀʀń$yʀzʀ  (S1)תʀ))צrTOUTUȡ)-TT)yprinterׯ)= bب́ ́-ʁʁ-ȡ2ʁ 2ʁ ń2ʁ xx1ȡyxzlyxzc2ʁ ́yxzʁƁ2ʁتPPצ.CONSOLE צE))שrTOUTUȡ)-TT))UUצ!Apple /// Mail List Manager File !UqUP+ >)שr) MLMINFO: )I)+>)yprinterׯpU88nD_d Number of Labels Across Page (1-4 ) = ) Q)שr)0 Left Print Margin (0-99) = ) 11 []<Mš @33  P</ NšNɡš ɡقPšPٕ1113335678Lj:Ǖ; @> ?=9p88nD_dLMLMSORT )W )צ characters.)yצprinter)PéPÍצ End of FileP.CONSOLEׯ&צRETURN to clear/end) צ))O f  š1P )yצprinter)))שr)Each of the file's ). )צ data records has )X )צ label lines of up to )W )צ characters.)yצprinter)PéPÍצ End of FileP.CONSOLEׯ&צRETURN to clear/end) צ)) K š r)š1P )yצprinter)))שr)Each of the file's ). )צ data records has )X )צ label lines of up to ESET P.CONSOLEׯryotherתPHPצ.QUMEP.PRINTERׯ ryצprinterPryprinterתPr P UUצLeft margin? (Default = "U jUצ"kUPK&K ation v.04/87צ-For screen output, use the keyword ".CONSOLE"P.PRINTERתP)צ Output DeviceצREWRITEPP .D2/MLMGR.INDXתP MLM Data Fileץ UUצ**URUPצ MLM Data FileצRXPXX.PX.DATAUXP?  )O)Χ˦ױ˦תPs UUsUsUI5MLMINFO: List Mail List Mgr File Informer drive.M.WWWɄWɡ-.XXצ.DX.RX/MLMGRXXP.תPEnter pathname of .('. ..INDX.WWš.Wצ.DATA.WWš.WXX.PX.INDXU09ÍB/<</ )š =/|P<< =0 /<< { E02460HڪP.2PצEnter 1 drive (1-4 for standard drive, 5 for oth==/)<š=ܛܛ| ?06á9á =%/ܛܛ| >0;á//<š =<< 0:á7ɡ =<<> Z08ڪP 0 !0 ڦתP< 05˄0/2<á = P<<ܛ0 O<š<<AAPA QAPܛ0 ɡ? =07áR<š ٨́ ́-ʁʁ-ȡ3ʁ š)3ʁ PƁ3ʁ PƁƁׯEʁƁP Ɓ́.Ɓ.FieldƁ.ƁUƁ.P3ʁ Ɓ ) ʁ́N)PHONEתPO" ranges in value from "*צ" to "S". 11 []<Mš @33 P<DWѠAWѠ. H Pá!Y P|LI>Pá!Y P|DARP*PSͪPPˡ|*Sצ Sort field "rK6 Qš OPPáOPYQ YQ QRצNAMELWѠIWѠ.OPYQ YQ QRZIP CODEׯ Ѡj   ѠѠ  `ѠjؕɡݡšáȡצSort Completed  Pͥ . Pc[ f  צSorting Rצ as Sort Field P צSorting.š.ؕ(á .؂   ` .ȡQáDWPá$WWYWPá;WWW   P  bѠICIƀP{תPKQNá :{8QOá/{ C̀Cʀȡ{C?CCC$P\pצLoading Rצ as Sort Field P צProcessing MLM Record Numberب@QȡYQ EYQ H7EšFEBDB̀DʀȡF7DFDDF7EGHDCFBCDɡBáCBBICIBCá'BGšBCBáBCB{ƀss RETURN}P٦תPá&Pצ is the other Sort Field. j, Do you want this? ("Y" or "N" - Default) ǖPK@@K YÝyÍ ٦תP. Press RETURNȡ٥)ښág&Pצ is not a data _צ!item in this record. Press RETURNǀPצPéPPÄf&This file is already sorted by oצ. PreT Pá  PP צData Name of Sort Field hצ (RETURN accepts default)DžP&A Y  צ٥Y P )&No name enteredresent SortP|}~}~ȡ(|}})}}$ P צ&Select the MLM Sort Field, "1" or "2"?&KKצ K  Í-&Must enter either 1 or 2. press RETURN)`.aP' PéQńQצSort Field 2 is )`צ.aP' d}~}~ȡ})צP}}צPPá$P)<---- Present SortתP!P)צ<---- P)צ LABEL CODESPFT $MLM File Data Itemsץ-Pȡ*Aš)ץ-PL PéQńQSort Field 1 is / NšNɡš ɡقPšPٕ1113335678Lj:Ǖ; @> ?=9ڪP0 !0 ڦתP< 05˄0/2<á = P<<ܛ0O<š<<AAPA QAPܛ0ɡ? =07áR<š ==/)<š=ܛܛ|?Nצ K yY) )NPNW)f8m  cord Number.llȡD )WѠ)) & Press RETURN.llצAnother sort with this file? lצ("Y", or "N" - default)5lP&K@@ Wllȡ  )) ) צWriting sorted file to diskצProcessing MLM ReRecord NumberW6.llȡWWWW{RQȡNPá0WWW   mmPm  bmѠ&ꥥ楨 W}@)O)Χ__ױ_)QéQÍ  Encoding Rצ as Sort Field P צProcessing MLM  P    k)PQPRQQš צ8Neither PHONE nor LABEL CODES is a valid MLM sort field. 5The file will be sorted, but MLM won't know about it.~ !Reading current file information.Processing MLM Record Number.ȡ)W)kZPáW'PáWתP  +  the file you want to sort? $T("Y" - default, or "N");TP&K@@Nצ K nN )צ Empty FileLjצ+) ) T+ǪT records.dzTPPáGTTצThe file is sorted by TY !Tצ."TPmPáGTTThe file is sorted by TY !T."TPThe file is not sorted.תP TTצ$Is this fileRESETץ  J ? P.INDX6TTPT.DATAUTP צ)š1P TTצMail List Manager File TgTP.+P TTPTצ contains Zk Ǐ TTƀƀTƀƀT `-צ.MLMSORT: Sort Mail List Manager File (v.11/86)PצMail List Mgr file 6 P TT**T RTPצMail List Mgr.DY/RY/MLMGRXYP/תPEnter pathname of /(' / /.INDX/XXš/Xצ.DATA/XXš/XYY/PY.INDXUYPYY/PY.DATAUYP? << =0 /<<{ E02460H ۪P/P Enter צ2 drive (1-4 for standard drive, 5 for other drive)/M /XXXɄXɡ-/YYצ06á9á =%/ܛܛ|>0;á//<š =<<0:á7ɡ =<<>Z0809ÍB/<</)š =/|PrN$.llȡD )WѠ)) & Press RETURN.llצAnother sort with this file? lצ("Y", or "N" - default)5lP&K@@:Pd2U>N 8("ˡ{Please put Boot Disk ")f" in the built-in drive}P/ P /צPress RETURN when readyP/ P/צPrer" (Version 1.0 or 1.1). A mass storage disk is necessary for MLMERGE. This disk is a self-booting Pascal disk and requires 3BLM-08 and 10. Completely documented. See additional information on disk 3UTL-10 (side two). s are an integrated system. The programs are invoked from, and return to, a master menu for ease of use. Full use of "MLM Utilities" requires a 256K Apple /// with an external disk drive, and "Mail List Manageame:Value, and DIF. 7. MLMUPLD uploads (creates) MLM files from other systems and programs. MLMUPLD accepts four input formats: ASCII text, Name:Value, DIF, and "comma separated value." The utilitie 6. MLMASCI converts MLM files to formats that can be loaded into other systems -- AppleWriter, Keystroke, PFS, /// Easy Pieces, etc. MLMASCI has four output formats: Apple Writer mail/merge, ASCII text, Ne records of a two-disk MLM file. Dupli- cate records are not merged into the resulting output file. The result may be combined or equally divided between two output files for easy record insertion. - ing an MLM file into another layout. You may rename and reorganize the data in an MLM record, delete obsolete fields, combine and split fields, and create new fields. 5. MLMERGE merges th attractive and meaningful display of MLM data. This utility allows you to list any MLM file data items in an informative layout of your own choosing. 4. MLMCNVT allows you to respond to changing needs by convertl-purpose sort to your MLM system. It resequences a file in any order you desire, using any of the up to 14 data fields in an MLM record. 3. MLMLIST is a flexible and sophisticated list facility for 1. MLMINFO consolidates all the important information about an MLM file on a single page -- your file's content, structure, sort fields, and print-control specifications. 2. MLMSORT adds the power of a generaSK ID#: 3BLM-09 BOOTABLE?: Bootable MLM Utilities are a set of very useful utility programs for Mail List Manager, the original mail list manager program for the Apple ///. Developed by Dr. Al Bloom. MLM Utilities consists of seven modules: WAP /// SIG PUBLIC DOMAIN LIBRARY 12022 Parklawn Drive Rockville, MD. 20852 (301)-984-0300 PDS NAME: Mail List Manager Utilities - Disk 02 by Bloom DIss ESCAPE to abortP/ P/צ{U.CODEץá!P.QPLoading Program ]`P/ P /&}U:^)@R)@R) A@R)ɡġ9_rK6 Qš OPPáOPYQ YQ QRצNAMELWѠIWѠ.OPYQ YQ QRZIP CODEׯ Ѡj   ѠѠ  `ѠjؕɡݡšáȡצSort Completed  Pͥ . Pc[ f  צSorting Rצ as Sort Field P צSorting.š.ؕ(á .؂   ` .ȡQáDWPá$WWYWPá;WWW   P  bѠICIƀP{תPKQNá :{8QOá/{ C̀Cʀȡ{C?CCC$P\pצLoading Rצ as Sort Field P צProcessing MLM Record Numberss ESCAPE to abortP/ P/צ{U.CODEץá!P.QPLoading Program ]`P/ P /&}U::Pd2U>N 8("ˡ{Please put Boot Disk ")f" in the built-in drive}P/ P /צPress RETURN when readyP/ P/צPress ESCAPE to abortP/ P/צ{U.CODEץá!P.QPLoading Program ]`P/ P /&}U:צMLMUTIL/]X.CODE]P{U"ˡ{Please put Boot Disk ")f" in the built-in drive}P/ P /צPress RETURN when readyP/ P/צPreצá:%{}U{Χ:X X++X00%Apple /// Mail List Manager Utilitiesצš]^)PTá3^)TQéT Í橁TQ۩Í š۫&l~uZצצPress RETURN To TerminateP/ P /צ"Press ESCAPE for the PASCAL SystemP/ P/۩ġšɡ ^)^))TQT T   TꩁTá쩁T תP^)T á۩šɡ^)T T橑^)תP&P..ȡ_$Select an item by number or up/down &arrow. ESCAPE edits menu. "Q" quits.TDWѠAWѠ. H Pá!Y P|LI>Pá!Y P|DARP*PSͪPPˡ|*Sצ Sort field "" ranges in value from "*צ" to "S". 11 []<Mš @33 P< Wllȡ  )) ) צWriting sorted file to diskצProcessing MLM ReRecord NumberW6.llȡWWWW{RQȡNPá0WWW   mmPm  bmѠ&ꥥ楨 W}@)O)Χ__ױ_)QéQÍ  Encoding Rצ as Sort Field P צProcessing MLM  P    k)PQPRQQš צ8Neither PHONE nor LABEL CODES is a valid MLM sort field. 5The file will be sorted, but MLM won't know about it.~ !Reading current file information.Processing MLM Record Number.ȡ)W)kZPáW'PáWתP  +  the file you want to sort? $T("Y" - default, or "N");TP&K@@Nצ K nN )צ Empty FileLjצ+) ) T+ǪT records.dzTPPáGTTצThe file is sorted by TY !Tצ."TPmPáGTTThe file is sorted by TY !T."TPThe file is not sorted.תP TTצ$Is this fileRESETץ  J ? P.INDX6TTPT.DATAUTP צ)š1P TTצMail List Manager File TgTP.+P TTPTצ contains Zk Ǐ TTƀƀTƀƀT `-צ.MLMSORT: Sort Mail List Manager File (v.11/86)PצMail List Mgr file 6 P TT**T RTPצMail List Mgr.DY/RY/MLMGRXYP/תPEnter pathname of /(' / /.INDX/XXš/Xצ.DATA/XXš/XYY/PY.INDXUYPYY/PY.DATAUYP? << =0 /<<{ E02460H ۪P/P Enter צ2 drive (1-4 for standard drive, 5 for other drive)/M /XXXɄXɡ-/YYצ06á9á =%/ܛܛ|>0;á//<š =<<0:á7ɡ =<<>Z0809ÍB/<</)š =/|P 05˄0/2<á = P<<ܛ0O<š<<AAPA QAPܛ0ɡ? =07áR<š ==/)<š=ܛܛ|?/ NšNɡš ɡقPšPٕ1113335678Lj:Ǖ; @> ?=9ڪP0 !0 ڦתP