SIDEDIRZ XPRG formatted GEOS file V1.0!!!!!9Q))YStudentForthV1.0Hank WilkinsonSideways directory printer made with Student Forth (c) 1990 Hank Wilkinson/, N `O < P L`P``.  w m  i8& 75 6  m 4 <    ¥   8 ` 4 m 4L<5 6  8   `L<` `` 9Dž  ? $      `~ʽ. 8       H HHH    © hhh h `   q t­ ©~} ŽP" Ž~} x w`SCREENFILE0rh!!!!!I\LL^XxYY"LI,pHpqppqʝhpppipqLCLI$hpH uvu`EXECUT_LBRANCȀpepHȱpeqqhpLH0BRANCț(pipqLF(LOOP hhhhL(+LOOP HH}h}hL (DO S HHHHLFJ % DIGIj z 800 08 0 HL?HL?(FINDp  nvQx)?2ȱvQx (ievewvHL=ȱvȱvȱvwvvаHL=ENCLOSţ   n8ȱxvxLFxvߘLFEMI YKE_ u?TERMINAh Cp CMOV~  nvwLFzx{yL U vw>>>v}w}}LFU Hh Hh*v>>8>>vLe AN P =H=L?OH i HL?XOb ]H]L?SP{ HL=SP rLFRP rLF;Ӵ hphqLFLEAV LF> HHLFR  hhLF % HL=0 ;  LFLF04 ` *LFY u }}LFDo }}}}Lc MINUӍ 8LFDMINUӼ 8L OVE HL=DRO e SWA  vwvwLFDU E HL=+= V vwqvvqvvLc TOGGLO  vwv]vLc t vwvHȱvL?C vwvLF vwvȑvLc C vwvLc S  gqHpHipeqLF ,  CONSTAN/,gHȱL=VARIABLALgiHeL=USEcLgerHesL=VVVVB̵V C/̽V@FIRSVldLIMIVxB/BUVB/SCV+ORIGI*s TI WIDT WARNINFENC(D5VOC-LIN@BLHIVOU_SCgOFFSEpCONTEXy CURRENԅ"STATŒ$BASş&DP̪(FLĴ*CSн,R.HL01s 2s HERE ALLOET   C  ) s :>9 UF>^ Re8HhPILe Le _ c ROԍ    SPACřf -DUЫC C TRAVERSŻ s f c  LATES LFf> CF> NFf>* PF$fs !CS9  ?ERROL 1 ?COM] 9 ff ?EXEx ff ?PAIRӏ>ff ?CSФ  >ff ?LOADINǸ\ 9 ff COMPIL C    f SMUDGf } HE#f DECIMA7f  (;CODEH ? ;COD]g ,  > > (."# C  s  .Ff" M   EXPECa s Q n C f  J f n JC  >s >'C f J  C n n  f  QUERُ fPd \ *\T d \   9     FIL C  > ERASV] BLANKu] HOLą*T  PAĖfDs WORį\  \ = d s   f"dT > #  s  UPPE s  Q n f`n f{c n f }  (NUMBER C  x ,     T   NUMBEEC  f-JC s * PC >C f.>f   -FINĒ C 9    (ABORT ERRO2 ^ #M ?    d \ R ID)f_f ]C ?  > fN  CREAT`fs Wf *ffC % :E fJC f} >f}   [COMPILEݑ9 f  LITERA * DLITERA  %% ?STAC7 fWf fWff INTERPRET c ] B %]IMMEDIATxf@} VOCABULAR* S S  FORT =\DEFINITION  $f) QUI>\  X 9 MOK ABORK R MStudent Forth 1.02RCOLy   !rs rqpةlL S->ĦC ^ +^  D+^  ABC  DABC  MI%   MA4 c  ML     Md ,#   #      /MOĨ     MO */MO i  *  M/MO #    USttlPRE$tld+BU.*s C J C 5 > UPDAT95 *g 5 FLUS`>fs Q *  EMPTY-BUFFER >} DR DR* BUFFE* C @* # ^ # # *N # # 5   BLOC s 5 C # >C s 4@9  # C # >C # >C s 9 C 5    (LINE5  s =s  .LINŕ MESSAGŸ2 f > MMSG #  LOA\ d d \  d  \ --d \ >\T 8qrrȩqrr aLe `L L aLF-DIS7 LF-BCĪf fg R/׾* * *}  9 f % FORGE*C = Wff S # W2 C S C f>?  C # W > 9  E BAC > BEGIx ENDIƉ > THEΛ DϷQ  LOO +LOO  UNTI EN AGAI REPEA" *  > I8 ELSU  WHILjZ SPACEӋR Q  < #    > SIG^ f-  f cfs f0s  # g 9  D.!  ,& > D8> .\  > ka |  LISԈRC v MSCR # fQ n pn v  INDEؔ  Q n pn |  f f TRIA s  Q n  f f f VLIS fm  m  m C f?  C 9 | g  SETPATTER>  9Le PIXĖ  J8 3Lc ?PIXE̥  ?*L LIN !   iJ8 0LFREC ;!   i $LFFREC2!s!   Hi h 'LFCHARWIDTi!!. LFSTRINGئ!VSTRING!VXPO!V YPO!V GETFIL!" ŠL INITFORPRIN!%" yLFPRINTBUFFE"A" yLFSTOPPRIN1"[" yLFPRINTASCIM"v" yLFSETNLg"" yLFSTARTPRINԂ"" yL STARTASCIə"" yL GETDIMENSIONӵ"" yHL=DONEWITHI"# _®LFINITFORI"# \®LFJS #/#Hh Le CAL'#M#q#r#HHh( HhhLFREADBYTD## LFNEXTRECORċ## zŠL TRACKSECTOҪ#VDISKBLOC#VPOINTERINDE#VDISKBYT#VDISKERRO#VGETBLOC $'$  i L FINDFIL$Y$ ŠLFSAVEPTRL$$    LFRESTOREPTRw$$    LFTHRե$ Q  Rn  n |   CREAT$ BY%%L,‚S% S!% SCHA8%C * c  * C *~ * f DUMS% = Q C =%C *Q C &% *Q C [% |  *   DEPTȉ% * > .% %& >*Q *n s *  MEmpty SHOW_NAM&C  *s *  SHOW_NAMEF&*Q n *  s R& GETDIRHEAt&*G-# SHOW_ENTRIEӡ&&* * * * *%$ *&* 9  SHOW_OFF_PAGŸ&&* * *%$ *& DI' '& FRE1' => GETPDRIVEA'*e*  "C 9  Mdisk error message  SCREENBAS^'VPBP'%ALLOT 71PBP'%ALLOT P/C*V@SENDSCREENBIT,J** ',,s ]*Q ' 'n *@s ', ?" LLIS,*f , LTRIA'-k'#""Y"C /-C /-/-Y" POSITIO=-! *s ! CARDROh-,'s MOVEROׇ-- - , SLINŝ- p DO-*Q -     4LINE-*f *Ps- -  - MOVE-* -*-* -*-* *-**-* *-**-**-** - SEND.J** ' ?"',,s s  ?"',*s  ?"',*s  ?"',*s  ?" 2ACROSӂ.*Q n n  -"..*   SCRNHD.*f J** ' ?"*Ps- MSCR # p*`s-MSCR # p* -* -* -* -J** ' ?"',,s s  ?" 6LIS/C  $/ . s C  $/ . s C  $/. CUR_DIR_HEAĦ/VYEA/VMONT/VDA0VHOU0VMINUTE0VOFF_DISK_NAM)0VPGHD70*f *Ps-M#Student Forth SCREENFILE from disk /G0s *Q C n s C *J  f  M, on 0 p*/f 0 p*/f 0 pM @ %0 p*:f 30 p CRTOGGLK0tPRT1k'#""Y"* 1 *8* S0J** *- ?"* - ?"* - ?"/1 * Y" ASCI1 % WITHI{1 > > W BETWEEΓ11 =OҬ1  Jg CASž1C O1Z EXI1  FALS1VTRU1VINV_RECOR 2VTA2V BFR_OVERFLO%2V CAR_RE/2V NEWCARDSEB2VESC_RULEP2VESC_GRAPHICa2VPAGE_BREAq2V EOƄ2VDISKBLKBUƕ2VFILEHEADEҟ2VCURDIRHEAİ2VFILETRSCTA2VDIRENTRYBU2VR2VR2VR12VR3VR3V R3V R$3VBYTECOUNTE-3tCHARCOUNTE63tPAGECOUNTEH3tVERSIONHEADEZ3tMAXPAGEl3tSTARTPAGŀ3tENDPAGŏ3tPAGş3tTEXTBUƭ3ttlFN3%SAVEFORTHGETNAM3 Mtype file name and return 3*]3* OPENVLI32 *tK#    CLOSEVLI$4*w-# PREVIOUSRECORM4*}K#   NEXTRECORc4*zK#   POINTRECORĎ4*K#   READRECORĵ43 23 *K#   GETPAG4>3/4C Y4M open error #  4C 'Y4Mrecord pointing error #  3 *4 9  3 Y4 STRI 5 d s ]dT FILTERTEXԑ5 d s 1*  dT 11+2JL21  511]2J  *511m2J  *5112J  *5112J 2 d s 1 FILTERPAGű55 d 3  d 5 d s 9  d s   d   TESTFILTET6 d  d 5 d   6 d s dT C 9  *{Jg  PAGECOMPIL6 d 3  = d 6 d   PAGECOMPIL7"7 TEXTLOAV73**>Q n *=s J9 *=@ >3 n a6d7|   SETDEVICl7*K#    OPENDIS7*K#    DRIVESTOR7tSETDIS87 8 GOBY+8'8 58% WAIA8*aQ  DOERROU81*!J M Close DOOR!\8\821 MDisk Error Number M Encoutered MWrite it down, we're aborting\8\8I8 ?DISKERROl8C  v88 9  CURDRIVETYPE8VCURDRIVETYPE9VCURDRIVETYPE)9VDR=9%9  *7 88 DRQ999  * 7 88 DRo9M9  * 7 88 PRNTFILENAMō9VeCURDRIVū9VR9VCURRENTDRIV9tLOADDRIVERMESSAG9 MInsert disk with printer drive 9**,f M+ close door and hit any key but period (.) M(Period will return to deskTop) FINDPDRIVE99W$8W99W$(u99W$99W$22222 LOADPDRIVE҉::89n *.JI8:9n *.JI8:I899 2 "8MGetFile error #  MHit any key to abort| I8 DSKIMAG:%ٜ DRVIMAGw;%ͳ8ٳlٳ|ٞ`< OPNIMAG;%`ommm   CNCLIMAG?<%xmmml ʉLOADIMAGť<3/4M Open errorR4M Point errorR9 M empty errorR4M Read errorR9 M empty recordY4 ROTCAR ==xj>8XLFPUTIT+=V=ROTCO̼== * *Q =*@*T *=T  8=>>>>LF32>%>>>>>>LFCURDIRBLKBUFADDRES>tCURDIRBLKBUF>\> HEADERARRAYADDRES`>tHEADERARRAw>> R>VGETFHDRINFϦ>V)ŽREADENTRYBLOC˯>>*>}o> o> o>%$ *Q o>n #>s C  > >-#2>n #>>s *   (BITMAPUP>VBDRAWICO.?C #>>>s *s 2 C ** 3  *X3 3 *3 ;?-# CBMICO??%Ⴣ/TITLEICOΠ?%!!!!!9Q))DRAWTITLEICO??2 3 3 3 *3 ;?-# DRAWCB>@?2 C ** 3  *X3 3 *3 ;?-# ROz@* *s YRO@ *s @! COLUM@C C *>C 19  11J  *P11J  *1 * XCOLUMA A! #EMI`A& 2#EMItA& PUTA*/f PUTˣA*kf PUTA*:f PUTA*,f PUTSIZA A*s ! @#>o>s *s C |AAs *|AA PUTTIME&DATA A*s ! @C #>o>s *s AAC #>o>s *s AA#>o>s *s A SHOWNAM)B*Q n s C >f   ^B̊BVPUTFILENAMBjA@#>o>s s *Q n s C BJ  f  PUTPERMNAMBjA@#>>>s *Ms B PUTPAR/AUTHOCC #>o>s *s *J jA*@#>>>s *as B PUTPARAPGCC #>o>s *s *J jA*@#>>>s *us B PUTTRACK/SECTORӕCjA*@C #>o>s C |AA |Af #>o>s *s C |AA |A PUTSTRUCTURCjA*@#>o>s *s 9  MSEQ  MVLIR PUTTYP8DjA*!T *@#>o>s *s 19  MNot_GEOS11J MBASIC11J MASSEM11J  MDATA11*J MSYSTEM11*J MDESK_ACC11*J M APPLICATION11*J MAPP_DATA11*J  MFONT11* J MPRINTER11* J M INPUT_DEV11* J MDISK_DEV11* J MSYS_BOOT11* J  MTEMP11*J M AUTO_EXEC1 ENTRY|D#>o>s  GEOS'F#>o>s *s DRAWICON>F*Q n 0Fn FF n J?n @ PUTSIZEZF*Q n 0Fn A PUTTIME&DATEӒF*Q n 0Fn FFn 8B PUTFILENAMEӹF*Q n 0Fn B PUTPERMNAMEF*Q n 0Fn FFn -C PUTPAR/AUTHORG*Q n 0Fn FFn WC PUTPARAPPKG*Q n 0Fn FFn C PUTTRACK/SECTORSӀG*Q n 0Fn C PUTSTRUCTUREӱG*Q n 0Fn GD PUTTYPEG*Q n 0Fn D #OFBLOCK Ht#OFDISKBLOCK4Ht#OFFILEDHt#OFPAGEXHtROWSPRINTEgHtOFFPAGvHtPAGEHtCOUNTBLOC˖H*Q n #>o>s  cHT n #>o>s *s THT  NAMEBUFFEҢH%ALLOT DRIVEBUFFEH%ALLOPENTEXTBUFFEI%ALLOT CANCELTEXTBUFFE.I%ALLOT #OFDRIVEKItDISKNAMoIVDRIVETYPIVCOUNTDRIVEӎI{I *Q In s {IT  NEXTDRIVŞI{I 1J 11J 9 *Ju9W91 9 1*J u911* J 911* J W91 (PRINTIM(Print) SETOPENTEXXJ?I*}*dJ?I (TODESKTOPpJM (to deskTop) SETCANCELTEXԘJ^I* }*J^I SETNAMEBUFFEҹJ*:H IH* H*s 9 1*J *AH 11* J *BH 11* J *CH 1 SET3DRIVEBUFFEJ*(&I *)&I &I 9 1*J *B&I 11* J *C&I 11* J *A&I 1 SET2DRIVEBUFFEgK*(&I *)&I &I 9 1*J *B&I 11* J *A&I 1 SETDRIVEBUFFEK{I 1J yK11J L1 COUNTENTRIEaL@H TH cH rH H H &2*s o> 2*s o> >HcH @H H @H H 2 o> 2 o> >H@HT o> 9 @H rH @H rHT JrL BOLĜL*@*. PLAIeM*. YzMVIĎMVDRAWTITLŗMN@jA @ lMMSIDEDIR MjA @ M On disk: lMIBMjA @ cH |AM files using TH s *|AM kjA @ M AAM AAM Af Ms AAM*s AAM*s Af f MPage H |AM of rH |A RA͠MtDIS˟NtCALCBLKSFREũNVCALCFREŴN2)3 N-# 3 ->RANN 58 ->DISKNN 58 INITRAM/DISN9 N %9 *N *N M99 *N * N 3M9 *N * N MNeed RAM Disk!!!\8I8NNO*}c=*f * Q M Need 32k free on RAM Disk!! \8I8 TMP OMTEMP PUTO*s SAVEFILOVAPPENDRECOROVŠDELETEFIL PV8ŠCREATETEMP3*}*Os 3 3O Os *Os **?s O*s O*Ds * O*Es O*Fs O*Gs *O*Is O*Ks O* * P-#3/4 *(Q P-#Y4 DELETETEM-P32 )P-# PRINTBUP'2 J*3 3 ?"| Y4Y"I8 PUTBUQ4  '*4  $Q PRTTEMHQ3/4 *(Q n QQY4 (WRITERECORDiQV‹WRITERECORďQ3 23 QK#    ROTTITLECỌQ* '*xs = *Q =*@*T *=T  ROTTITLQ3/4 *(Q 'n >s Qn 4  '*Xs *(Q Y4 ROTTOPSCREER3/4 *(Q n 4  '*Xs *(4  'n >s '*Ps ='*s *Q Y4 ROTMIDSCREEZR3/4 *(Q n 4  '*s *4  'n >s '*s ='*s *Q Y4 ROTBOTSCREEνR3/4 *(Q n 4  '*s *4  'n >s '*s ='*Q Y4 SENDBLANKRO S'*}$Q SHOWDIRECTORYBLOC}SfFFFF'G\GGGGH MOVEINFϚSH HT 19  iR11J R11JZ /SSsQ Q:PH *9 Y"* Q SHT H rH *f OMN R1 FINISHHALSH 19  H *9 Y"11J *f R/SsQY"11J *f /SsQY"1 DOALfTO~JJLN:PO*f MN RO*f &2*s o> 2*s o> H *f >SNSO2 o> 2 o> *f >So> NSOo> o> 9 NsT QO DBTXTSTTV DBVARST}UV DBGETSTRINnjUV DBSYSOP֛UVDBGETFILEӭUVDBGRPHSTҼUVDBOPVEUVDBUSRICOUVDB_USR_OUUVSYS_DB_ICON_WIDTUVSYS_DB_ICON_HEIGH VVDEF_DB_PO$VVSYSDBDAT=VVRSTRFRMDIALONVVŠ(DODLGBOX^VV V¦Le DSKICONSERVICrV%LŽDRVICONSERVICŕV%LŽOPNICONSERVICŲV% LCNCLICONSERVICV% L‡DSKICOV%;VDRVICO W%;VOPNICO W%N<VCNCLICO6W%<WDIRDLGBOLW%W  .W 0DW HCI0[W HbIDOACTIOcW1*J 88JrL11*J  IJrL11* J 88JrLT11* J I81I8 RUΜW*s \> o>*s > ~JJJrL9 '8 I:#""I8L*f ! *! lMMStudent Forth MMSideways Directory Lister M for GEOS users *! *! lMMSIDEDIR*P! *! Mcopyright 1990 Hank Wilkinson M M*For Info About Student Forth Send SASE to: MAnticipatory Design Science MFreeman Building, Suite 303 M612 Pasteur Drive M Greensboro, North Carolina 27403H* &I> oWVZV W{