!E"f1 !xw#>2:o2!":K![!: ! >! &>! &>O! &2!2! 2!@2!`2!2!2!2! !>)!>)! >)> !& !B bootplusBASICPGM(c)1992 by M.A.L.Boot byS.Swift.Re-designed by M.A.L....Sprites by PJH & M.A.L. ALL RIGHTS RESERVED...ColecoADAM UBOOT DIRECTORY BASICPGMTWbootplusT WbudgetA#2WFINCREPA2WnameAzeH:WamortizeAAWDataAALEFTIqACKS LEFTJDataBALEFTK?HELLOaADHLHELLOAADHMWBLOCKS LEFTNRĠΠĠĠŠŠŠŠŠ PERSONAL ACCOUNTANT by:SOFTSYNC,INC. Maine ADAM Library Ý>O'd GOSUBGOTOINPUTLETNEXTPRINTREAD REM FOR IF DATA DIMONONERRSTOPRETURNENDDEFCLEARRESUMENEWPOPRUNLISTTRACENOTRACEDELCALLCONTCLRERR GET!POKE"RESTORE#HOME$DRAW%XDRAW&FLASH'INVERSE(NORMAL)TEXT*GR+HGR,HGR2-HLIN.VLIN/HPLOT0PLOT1HTAB2VTAB3SHLOAD4RECALL5STORE6WAIT7SPEED8ROT9SCALE:COLOR;HCOLOR<IN=P ]ѷ 7 8 ! ] & Y$$* -T <K'&O,_B"J }#t'%F*w-1mA4q7P;e<>~JlAE2w8HfK|O5$4RB.aU ̼ Y /\[_A_p cw+f֔Vi7mG'pYQsnw= #zL} Hz@PC$t >(kn@C:h* 52_c/1:k ^# x-÷&X2x?h)SaQYԺo%(Ny9?!I@|o|稭7EW߄v |Η@½pQv!w?:&? 60+6:%? 6-#2%?&:&?<0 ! ]%W!? ~0{2?ment Bad SubscriptRedimensioned ArrayDivide by Zero Type MismatchString Too LongFormula Too ComplexUndefined FunctionIncorrect Function Usage Illegal ModeBreakCan't Continue*5EMMZkx  32 | OGO Oͼ !v?N//:.?2.?:&?*.?8K+?[-?*%?SK"?[$?(D:%?2?!%?.g<<<( iHCZ% ( := }*"? DM*$?Z0 S0 »»,»$S:?"$?C"?D*"?BDM*$?R_0:?2?!BDM!R_:&?W| ehAK<!.?˾Dogg /!Ͷ:&? <R :.? ! #:%?>|,K3?[5?Y>@|:%?>!%?˾2B?!]K"?[$?:&?ւ8(+ 88:<®!= C3?S5?:B?W! ˺r(!BDM!R*R8 *B!0&!BDM!@R!)x(>=! ˺2&?C"?S$?8r"7?,`*7?ͶY`!͸ 84!͸ 8 <!Ù! !<*%?$"%?! !!!< !!!!`~#+?"7?*"?"9?*$?";?:&?2=?*9?"+?*;?"-?:=?2/?`*7?+?"7?/$?>2&?!.? !%?>w!/? !&?~/ 6+w+w+w+wɯw:&?a ֐e D*$?|<=J X ɯo>g!7!/?r !&?zʧ ʪ {D_z/?Wʫ >>=# w+ ˺r+s+w+wSz> Ø [%?*.?z | } z { $?!-? + + :%?<ɴ } 72?GOW_oO+(- =2?E(je(f.  ( 0 g} ͔ }o͔ ُ͔ ُ DMZٍo|فO0    7}o( / `i)DMbkjɯGO+(-  0 0gx 0VGGí xDG ehAS"?J"$? *"?*$?&M0)O!; R>HIMEM?LOMEM@BREAKARSTOREL?B&+-*/^<><=>=<>=ANDORNOTGOTOGOSUBSTEPATTHENTHENTO:#(),;=<=>><:=;;;==:[>::c::;<<<:i;w>=<:<:C>:y:::C>::::C>:i>:6>:N>:'>:Hi CathyFATAL SYSTEM ERRORLoading... RUN budget CO?0Ҹ ">>2>s Inc]: NEXT without FORSyntaxRETURN without GOSUB Out of DATAIllegal QuantityOverflow Out of MemoryStack OverflowUndefined State/?` :2?_''_! R5/ :&?K"?[$?ք( :< :2?z0w#zW=(`i)DMj)j)j DMZG :2?G+~0 +~:? 8 > 6.DG#60#w G( w#6. 60# %6E#:?+ -Dp#/ p#:< p#+v?R}:&? :%? !?4! ]*%?|}>2&?!!,!!Y!C<!!րog7g /!]:&?!&?5:/? :&?͂!.?~(˾!<,(ͳ)2B?͸ (>2B?h80;!.?˾`;JY`:B?/ !]h89D!zW(02&?(#z2&?é*+?""?*-?"$?*.?"%?[%?*.?}2?".?S%?!&?4;z|(0 ց}(ց82&?PY:"?Ͱ:#?Ͱ:$?Ͱ:%?Ͱ|¥è(&70*+? DM*-?Z:? yHCZ;|z ƀ( ƀ2&?!"?"?"'?")?"?" ? !'?? # # # # # # # ڴ7!?###!.?>+++++++:?*?)""?*?j"$?:?:%?2%?:&?<2&?*?""?*?"$?Ð!'?? # # # # # # # N!%?˾:&?:%?!""?"*"?"+?*$?"-?*%?".?+?! "?*%?*#?*!?"!?"#?"%?*.?*,?**?"*?",?".?2 |x} }? !%?~:&?˾r1);8In"ITy445-@K.|OGX}fё~ L~  l]-q|oetv/wvzXc|u~r1їyJv3#}]Ijv6٪{J靁yV^d 8v;8[%?K>?*@?z(8{(K#?C+?"-?!ͬ2>?ͬ2??ͬ2@?ͬ2A?K>?*@?2?_~Ͱ#}|*%?*#?*!?,- go*"?!9}w#|wo}|,-"!?"#?"%? go*"?6"WY >!>   *F#~#+  !30Ʒ ̓2 8͚ A x_0{ ͚͹q#pyٷL}!9ҭ8)|x" ?S ?Ay7O ͏BoDM*>(R?rsr+s+qDM+">[ ?* ?_0(1(?(3((8(_x=  > O&o0$͏yK> ">`iq#p#w++!.9>K> ڤK>B'K> K>B`/*>K> ͓4N x yٷ( !)yٷ(*>| ?!+?yON#x /*+?["?## !"?`""?###>'`p:&?:/?:&?G:/? ͸ 8<X ͸ 8L(J* ͸ 8(8 ͸ 0* ͸ (>2&?!""?"$? ͸ (2&?*"?*+?##?.%3 7̓7 ̓7 d͵3Gx r̓1̓Cyٷ( ֠ 0 OO )\cjqx Av AwI>> >> >2?S>">0@’c_`/>?.:? >2?G!( ~#o0$N/:?0!N/p(!N/+++V+^ͧ2`/!""?"+?:?£>ːæ>HK>Þ  Error In ˀp( C> %*>+">*># K>x >(DO8Ww#w+:> :>(T]K>">*>BDMS>*>">"> p*~0 #!   ֌*~ q#p p(H( ˈ*>[>  CO?0Ҹ ̀>} D!}=ʖ -  yك_̓ C*>OzH>g "gk"% m!  !4 y -!:'$x' %R+^,,*+/+4+9+>+C+H+++,+8,B,M+--'P*,,[+o+4//+v*Y' 7~G#N#^} ~#N#F(- ~#fo_}o+DM##(## w !͏*>6++++DM+">p+q_ +o(R?p+q~G#N#^} A! ͚̓_0{ ͚͹p+q  8";Wz0T]œ) DM o͵;" ?* ?!`iF#  :303 0Kz^#V#͚8%2 8$%+R8#6?*%?".?*#?",?*!?"*?,-*+?6+#6?*.?"%?*,?"#?**?"!?,-*"?6"#6?^!coQ$~oY$~#fo>R 7&og 7 &og 7 ogg !"?͟!+?͠PY   W_r o g##~`}|##~O#(>7/2 ?͵: ?/2!?Gxw *  32  32>  3  ~ N O# ͟{zYP!9+!&?W_3!9ѯ!"?!+? y#NOybk`s#rx#+>!"((yٷo `iyٷ} Bo"O?0CO?0}iO|`GWB( N͓4BXXCO?0͓4)yٷ*>|   yٷ`i y ٷ xDgyMoB"O?000$"O?0[>R( +++V+^R81*>|(ã>`i1ã>3+:&?6=6 Ö ̀ AfkDo-ck (> .-    W=<  3x¸yٷx`/*"?##N/îAfO> . yٷx!!9>> >> >>>2*?`ì' '͵#2!? :!?#~#foyٷ̓2!?̀T2!? [>">x@Gpʢ[>}|0##^#V#Ox $p( ːS>">33æ>(Oxp(++++>#.͡2> .xG(*> %[>">!X˘PWHW̓.yٷj.˰!HÖ `NO! ~#fo2͵/͞C͛t 3K"?q#p#K$?q#p#:&?w 32 DMq#p 3*"?}| q#p˸ˠWt.!">ã>>xD[>O?0Ҳ "!!9̀/>"!B >}=X!- J!D!  ̓͛!     B! #x+ y­!!##N#~##+ y0+~+ngÕ! 3K"?q#p#K$?q#p#:&?w 3*%?*#?:"?3yٷ"" 3*%?*#?:"?3!1"!9H" x`(yٷv"͛N"     ~ ~(!9>`i!9~#fo"?!9+?/!"?+?͸ ~ (0#|+(!1"H"!9yٷ k" 'K>BK>B">!3f&!f!!'f!H!M/I >M(I>' >'E͞J>' >'}g >'}_uI>' >'}g >'}_I2 |>'  >'EJogg MOf}>Mkffyٷ( > >E]g͹fyٷ( > >E]i Mf Mf =- > >|###w*>">2>2>2>:>j%*>K>@%K>B##N#F# .% W%O@%@% C>">@%2>͛2&w%%Y&͒M&T]ø%*>:>O~ ž% '&#Ð%,ʂ%"%T]"? %#~,­%# ">y2>R-}`^#V+}|##~%#[?OM&#">#ý% '&#T]"?~" & %#% &#~,& &  #">#ý%y2>">o%Y&`iK"?q#p#K$?q#p#:&?wyٷ %:>O[> p& &b&,&y2>S>,ʴ& }&*>w?:>O">x2>w?  ʨ&[> bk[>">R:>O*>~,&  &#&y2>S>2&?ɯ2&?bk# ">y2 f:0?21?:?G < L >)U? ~#fo"I? >)e? ~#fo"E?~O#~. T/!~N/*E?2`/!yN/:nB2nB:pB :lB2lBu?>N##i/ 8,0(ẅ́0#xڤ/6x͓0:pB 2lB2nB!Q0 !b0 ~#fo>>̈́0ä/wó/xʤ/+>̈́0ä/:;Bw>̈́0ó/͸GzD6 #xһ/> ̈́0= ä/>\̈́0͓0à/  /////////D0//00$00/*K?2!~F#~̈́0!O 8l.)8 DM)8)8 0͐.Number Too Bigbk bkByO##~()O ָx) ()gO  yLw)ڢ)GyHv)( 9)E  ڢ)9)9)yAOx = G!"?y<(%`""?##N####xo0$ѯw#wɯ!"?`""?Ý):&?K$?x(*"?*$?*%?!* **"?8<)%)˸C$?""?}2 g }!%?".?"-?"+?͸ (!".?!"+?",?/:?!o0$n&g }2? Afo&g Hfo&g '*>B**>[>RT] DM*>+BzPG{YO*>">">">S>*!k+BPY*>K>BDM*>S>">">">*>T]))[>">&# bkN/~DO~_# /# >?./BKE#!?b ( *#7S?y2?͛l#x$ $#T] ~#t# BK["?s#r#[$?s#r#:&?w ,(ʯ# #Ý#yٷ *#yٷ( M#!#N/`/@ !$N/[?:?O`/*#>?Extra Ignored?Reenter0 ~ #$S ?T]("h$>#~,(-$S ?ѷR}`i`}|##~#(ODM[ ? "#Ý##~"7$7$#j$#~ #$T] 2 }|BKÝ#i/͛$$$o.(E(e(-(+( 0 : e &og K%?w#w#w#q#p`i>`}Eyٷ]- > >SYDMVdyٷ > >Ed3-d2 |}Oiogg *~( ~###GOx7|gDM ) K> F#@G(@ /ʹ- > >ô--0(͚|`G}iO̓-̓-hѷ!8FO#y.Hy*.,.# x.;. ;.".7 .7.oe.A?[a?{0?:!">!">">!@">?!"@?7ͬM!v?N/`/w?RE> .>^.`/N/!.N/`/ã> Expected*I?2f ( :1?= > f>>3:&?(*8&ͳ)*$?:&?| ֑<<&'X $'!'̓2ѯ̓*?'~ogg ' }*?B yٷʫ' }gxʬ'̓*?2'*>K>Bg *>">T]*>S>K>B=(^#V+0(0(:>:>]T##~"(O*>S>'##~#o'$'*>">*"?##~ #Ow?v? ( *"?##~#n&g 2 |M ָ ^#V*O?R.19100*> *>7100A1DM[>*>B`i[>R:M?O*>T]BK>B1">xʙ1:O?:P? xʲ1sr:M?O*>#">))">*>">">*>+">!."O?0##^#V0K>*> BKR`iPY=O x&2K>x2V^RY2b2 82:N?_b2rs~w~w 82">+">*>+">))">:?^#V#2Q?!>=(18 (:Q?7{0.N#F#| }8B:?3  >?.8:C>:>8;3;͑.'FN'FN [5y!0;K.[5Ï:͑.'GOTO' or 'GOSUB'>88>80͌=88[5ʗ=Ç>ͧ;ͧ;͑.Line Number Range[5(888[5×=͗=Ͱ;. $( %(>.(y͐.Illegal Variable Name<͑.Variable<<[5?y8!0;K. &[50 D68x8G;G78Q8x@j<|8}8 ( y8 (^.0 8 €<͜*>###">##~#o0o&͏*>:> :>(P ##N848*>65O ">">.X.ڱ5l.ڦ5:(.< '<(@G(?ʓ5>=¡5 7<ʔ5>7 l.ڥ57 X.ڰ5l.ڰ577>!5>!2_A~5N#K.5+R7~yo5$555!">!w@">z6͑66L6͐.'Meaning Of Line Unclear ':' Expected ?8*>w@B|o6͐. Line Too Long}2M?͓8w@K>8ͨ6*>B}=.:ʜ6.:ʜ67[57x6&(͐.Illegal Command5688#~#fo6>8!~7#N#F#!6=6  PP CC / /RC /.- / / / / /CCCCCCCCSPC TAB ERRNUM>*ABSASCo(ATNTCHR(COSjEXPFRE'INT)LEFT )LEN(LOGMIDC)PDLc-PEEKk'POS\*RIGHT!)RNDXSCRN,SGNSINrSQR^STR(TANHUSRY'VALE(VPOSi*JFU@JL[@GYY|p.z}!>"u?bkN#yo0$~#~#fo͍7!>w!0AfF>2oB9+t.2lB2vBGf> 2:B>_29B2qBͨͱZͪZͣZ͸Z!#"I!A w!Aw c!A)Aи7?88780 88$9?0$980 888?08 9!Q90!f:[5S97%=#<.%="=88͹98Ұ<[5050 0887B0͐.Illegal Equation;9Gg;9ҥ9g.|9.0#֠!9o0$~og>oDM9}8Y x8 x8p7˄!5Ð.O:O:͑.Numeric EquationL:L:͑.String Equation!͹9|33r:r:͑.Equation͹9338:>8:C>:<6>(͑. Real Variable<>:6::͑.'THEN'>88"8[5ҹ6( ¹6>8z6>8>Ì=>8:> (:?.C4N/ G$3!(.4xN3V3a33l33ʥ4!(.0._ͧ2 ^#Vͧ2 xgoT]))[>~Wz@3z(2G###~.B ( `G .D x0 >$.>%.###~#foyK> ON/Ô3!/;N/N/N >".F yON/>".yH Ox14> .xM4N/.x4e4)4>.>.:?x(?!T4!2 b4^#W4O2 > .3ys4&o#e4!|N/|4͟2^#V#|4`/2"?2#?2$?2%?2&?yO*>N#F+ : 5 ##~`i`N#F+}|##~(#*>###O"( l.8X.>8<͐.Number Too Big 8:&?ʥ=C=C=*"?|f=>8*"?}8|8*$?}8|8:&?8:$?C=2 7g ͸ C=|=>8X Ú=!>[5ͣ0|·=} Ҭ=8>8}8>8}8|8:!>=>"78*>8= >"> 8=x"(q>͑.'"': 0?>8ù6>8.:–>>8͑.'='8͑.','>8͑.'#'>8͑.'TO'>8͑.'AT'>8͑.'GOTO'͑. Line Number͑.':'1~a@Wv/!>/w?.l.> 6ͣ0"O?͑6> 6J11kkkkk*>xG*>5~~x###B7y8>77yN#F*> OF#GOK.P7##|+733+++~*>+B|g7!">͐.Too Many Variables Declared!7/8*>#> >5*>T]K>BDM!">(+#S>Ay82 ?@: ?7Hw@y#q#p#O8<5*>[>Rs#r*>q#S>^.0 w8*>#">+>g!">͐.Statement Too Complex*>| >!>`">###6*>###^4#>)8)DM) p#q#r#s#K>p#q*>|###F#~#N#V#^#͊7F#Nz{!">*>w#">g}w|^6 >>>> >>>g[5D5>2A(!;N/`/>.!)AA ]HELLOA:pB =2rB:qB{E:sB=jA*tB>g"tB>)> 2sB2rB#g_ yB    !>)!>)! >)!)!8>)>!&>! &>! &8!JC!xAO͔K!JO ^#V@K8KWK8K!@K8K!WKCI!wA:wA????!wA:wA:pB>ZC~#^#V#)sK~G#N# ÆKP((xGA)a0oz!wA:AO>!wAwxA!wA!wA:AO>!wAwK*I!RC"I?!"BN/"I?`/!vBV K(8O:pB:?(͞C< !:kB!? =2?͞C< :kB!? >yZC͸Gzѷ> 2vB (*Iw#"IHB_*I2vBw#R}SI*AL.L!NL[5L!NFx(G#K.(#xo0$ðL*C?"E?*G?"I?xo0$8.N!sO ~#fo͘RL(O8_(-GTD*iB:=B($E:?BʭD,:BʭD-:=BgE>2oBaE:pB >2oBaE::B2;BZDͥF:;Bw T]+:9B>2oB͔E:pBZD>2oB͔EZDͥFT]#::B~2;B:9Bw:aBG*cBOF::B2;BG*cBTDFZDF*iB,:>BO:aBZDG:B(ҭD:?B(ڭDE:/O>y>y>y!+| >yíD!@B ::Bw#>F:bBO>2oBlF:pB>2oBZG!@B,>2oB͑F:pB>2oBͥFA:F::B2;B*iB:=B2oBF:pB>2oB*cBZG:aBG,ZG:bBO!@B!@BSAVEBLOADBRUNCLOSEMON NOMON"LOAD$SAVE&FP(INT*INIT,RUN.RECOVER0NN!N(N/N6N=NDNKNRNYN`NgNnNwNNNNMMTMbM[MiMpMwMLLMMMMM#M*M1M8M?MFMMMMMMIllegal Form Of OS Command>>!>]2z7[D[>A[:A!A7>H[:A!A7^[[D[>A[>A[:AA!A7>H[>H[:AA!A7^[D[>A[:AA!A7>H[:AA!A7 A!A>a[>A[:AA!A7>h[>H[:AA!A7^7[D[>A[!AA:AP>H[!AA:A^:BGX x/2B!AA:A7^L!A>&!5>&!>&! `5;I2A6I2A!]I!MI ~!lIy  IIII:pB=yHGSyIYHCDXGCJ͔KO!mIO ^#V( y y!ͰKèIK!ͰK!K!ͰK!K1J>JUJqJ:pB=yHGSyJYHCDXHGBK͔K!IO ^#VͰK(̓JK!ͰK(̓J!K!ͰK(̓J!K(̓JA !!ˁJJJJ:pB=xAO͔K!JO ^#VͰKüJK!ͰKüJ!K!ͰKüJ!KüJKK%K0K:pB=> !&> !&!"tB! "sB!>>ͶC >2qB8xG:pBx:mB  80 !lB(DDz :mB C͞C< :kBDÉCK2kB>0 (ͨͨ> CaBScBSiB"eB2gB2hBz2B=2?B::B2;B:9BGO2qByC:9B>UC!G !G G~#foCG*iB$:=B0:o&)))KgB :nB2nBxG2nB:pB :rB{>2qB2oBF: GTD> F*iBWD*iB:>B(O(͡P(͠P(qQ(R(͔R($`(Z(Z(ͨ](](ͱ_(S(ͷW(!V(T(fa(oaLLOLLOLLͳbLL]LL4PLw?.N_!N N[5N!NFx(/#K.( #xoM$Mxo0$8.N!AO ~#foˀ͘R0ã>(O8!O(O(͡P(͠P(qQ(R(͔R($`(Z(Z(ͨ](]NONNONNͳbNN]NN4PNOAWPCDRLUBNMSIFOPENAPPENDREADWRITEPOSITIONPR IN CATALOGDELETERENAMELOCKUNLOCKB>F!@B:bBO:;B*iBGZG!@Bp:pB zW:nB!@Bw*iB>2oBZG!;B\b)))))[eB:oBWo&)))KgB   GzEBED E&EDDEEEFEEDD&E[iB[iB:BD_G*cBKaBxAOZG!@B::B!@B +G(##6!@Bc> f> f,GZD!9B>w!:B>w2pB2lB2mB2nB͖B>2pB2mB>2lB!9Bw>!:Bw ͱHͱH!>0>ͶC 8 !HsK!H͆K>2pB!>&!A6!  !H H ͠f!.,Q.ߨ.$ #.YQ!oYQ0)8 )8)8)&Q?m.ͣ0xAA(As#r7m. '? ?[PPD[["B:A*A :A*B^:A*B^2A*B͔a!"A>2A:A!A^:AKA*A^:A^:AGa>HS\7[.(,Q.A P*A"A7D[0>H[:A!A^2A!A͔a:A!A^:A%_8*A"A:A*A( ^:A:AGa*A7^R!"AD[:A!S^!S͔a2A!A^SS:A!A^%:A!A 6!BF 6(X^ V( [7?.,7?[!A!A .Z8[Z8Z86A#67.(, .͉[yx!Zȷ CG8.m..(, .!Zk[ .1!Zo0$~2A> ++!A!A͵[w!Z!Z"_>A[:A!A2A>H[:A!A^2A!A 2:A= KA:A!A  x :A:A%_:A^ A!A>A[:AA!A(>H[:AA!A ?>a[:A!A(>h[:A!A!A͵[~!A͵[ w:AA!A^[:A[B!A^:A!A x!A~ ^!Aw:A:A!A^2A!A:A͔a*A|7MD:A?bo g}| \\_ x 7*A*AURC! /"I?>2vBRC :wB (>2wB:A2A?b\G"(?####^#Vr+sz(- *\x\\z ##^#V++r+sU\:A2A\_:A?b"(+####^#Vr+sz( \z ##^#V++r+s[>A[.(͋Y8q!Ab"_!A(:A!A^~#(2A!A͔a*E?>S >U7"C?!SU"E?*K?"A!V"K?7O>y(%a!2A2A/շY~#(g!A(:A!A^2A!A͔aF+N\x z  x \>>>$>>>>>>>>> >!2?p(S>">@’c_`/:?G!>^( ~#o0$N/`/ã>! /"I?!C"E?!RC"K?!A#~#(+w#~#~#fo]T ~!Aw[P8!"AD[>A[A!A:A(^!APY:A(^!A ^!A~("_!A *As#r7[D[>A[!A(E!Akb !A~#N(8`(^#V+EM!AL.i(##:AAay?b0Oa```0\\ :A:AGa!C"E?^:A[B*B"B>A[>AS\a! /"I?,!C"E?!RC"K?! /"I?^2A!A͔a["B:A*BPY:A^:A*B^2A!"A*B͔a:A?b##N#F:A^b:A2A:A2A\\x X!Ab"_,‰Y.B_(R‰YYM*A"A.( Y. >B([A*A(>7ɸ( *A7[A!>7[._ GQ!dZ!lZ_!tZ D`i aZ <<< ͨ2͠S+6 !B ~#.`/:B>*8> .B > B ~(#+~DIRECTORYVolume: Blocks Free [D[>A[+B!A q#q!Ab0/!A:A 7B~`!7B~#  !"A`:A!A^2A!A͔axP(p!AbV#^SA["B:A*B:APY^*B:A^2A2A*B͔a+B^b\\ :A^:AGaa X[!"A. 7RP>A[!Ab"_!A(^*I?!\"I?[z]D[z]["B:Awb:A*BKA[A^:A^2A*B͔a#^:A^:AGa:A[B^>AS\7"I?\*A"E?*A"I?*A"K?:A^:AGa> ]!]"E?*K?"A*A"K?*I?"A!]"I?]!]][D[[:A!A͔a*E?"A\*A"E?*A"I?*A"K?:A^:AGa2?*>K>͓4 x > 2? Range ErrorWrite Protected End of DataFile Not Found I/O Error No More Room File Locked Syntax ErrorNo Buffers AvailableFile Type MismatchControl Buffer Overflow (, (((((%(z :A?bq#pjV%_!A(!A:A^2A!A͔adO> jy2A?b##~#fo N#F ^#V ~#fo|gB(| _}l _ _g _`iRjV0:A2A\x jVy%a$W[>A[.(͋Y8X!Ab"_!A%a:A!A^^~#x0 2A!A͔a*I?>O >U7"G?!OU"I?7շY~#X!A%aA:A^!A:A^2A!A͔a["B:A*B:APY^*B:A^F+NCA*B2A2A͔a:A2A\\x z  x \\z :A?bq#p X%_!A%a!A:A^:AA^a!Ab? 67bFOa( AaKawGa`ã`!A (+~za'/7zaA/7ɷ.# .m.0o&!A ~("_p#w 1#s#r( X b"_#++xRwAx!A # +6#kbA>AL.( != ! 7O!A ~(#~+( _~?b q#p> # *I?!b"I?!"A"A#^"I?*AJ"A*A#"ABASICPGM[D[!Ab:A7!Akb w!A:Aͽ:A!c^!c^jjjjjjjj,eDMz=dKfeU&ezS_M/e{D_E8ezDW{_zWCe:pB( y8ïe!{Ap#qe! Kfy³ex³ey_! fNxG7G:Axʜe/wïew!f>G:Aw"fe! f!!fveY5KX5Q2)))! fPY!!f>2lB2nB:pB2lB2nB>2nB:pB2lB͸Gz͸G{ͳGyWy_}f>ZCͳG Y}f>ZC:B8_:?B_!&#< :pB!Af!A˾:pB!{AV#^gyf>2}AA>?G///O:f=g>:pB!Ag!A˾i>!A>!A>>!i ~#fo~(]>çi~Gi~Gi~Gi~0:8=( ; >#çi>*çiçi~di~çi~çi~~ ~~ :i:i:i:iiiiiiiDiOiUi[iai~iiiii!A>>!A>>~!jO ~#fo~!jj!ij j!ij j!ij j!ij j!ij#j j!ij#j j!ij#j j!ij#j j!ijj!ijj!ijj!ijj!ij#jj!ij#jj!ij#jj!ij#jj>0>w~0w jj,j>j#j jXj j5jKj j jejjrjjj{j^7^WBOOT>2pB2mB>2lB YcYc 8  !{A6#6!DcsK!Tc͆K! >&!>&!A6͠f>2pB2mB>2lB!9Bw>!:Bw YcYc!>&!5>&! `5!>&!>0>ͶC :pByHGe! Sf! f!!fPYCeKfeyHG{ZWx y  d:pBe! Sf! f!!f˅ˍ˕z0DW{0D_8zS_dQX!{AF#Ns+r\d!z/DOe$k&JeJBDM!g= g>!g=g>!g=g>!g>A-gG>G!AySg>Sg>Sg>Sg!`g_^#Vpgzgggggggp6g6xDwg6pgp6gxDw6g6pg6xDwgxDw6##6?$$--66?:pByKXWe! Sf! f!!f*~AyO ^#V*~A~dhGuh̓hx_huh̓hx_huh̓h#~/hKfeW88x_8!Ax'oґh$~#ngy:}AG®hCeˏxGxʺhDhxhhxhDGyOyhDhyhhyhDO 8DD8(D"w>>>**>* 08<> 9=~$$$|@  @|0pp0P0ll0000   ~|<<$$88$$8 <8 <8   8x PPPPPPPP xp(  @@@h @@  pp @  @pȈp ` pp0@0p0Pp8@p @@@ppppx @ @@ @  @p #E               *~ ! ":=2 0*#F|2*~>>>>##" 8DD8(D"w>>>**>* 08<> 9=~$$$|@  @|0pp0P0ll0000   ~|<<$$88$$8 <8 <8    PPPPPPPP xp(  @@@h @@  pp @  @pȈp ` pp0@0p0P   `||"; nm: te=INT((FRE(0)-1999-(21*nm))/33) 610 IF nm>71 THEN 600 620 ? " MAX Entries = "; te 630 DIM f$(nm, 1): nu=12: IF nm:2A:d :  Sl0px Ppppxp ppبȨppph𠐈ppp pP ؈P PP  @@  P@ `pp@@@p @بȨ```Pp` `P P PP @`@ @` 0 0@9 d=2: GOTO 600 20 DIM tl$(2) 100 DATA JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC,END 200 RESTORE 210 FOR j=1 TO m: READ m$ 230 IF m$="END" THEN m=1: y=y+1: GOTO 200 240 NEXT j 250 IF y=100 THEN y=0 255 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 256 m=m+1: RETURN 300 d=2 320 INPUT "PRINTER OUTPUT? "; y$: IF LEFT$(y$, 1)="y" THEN d=1 335 RETURN 350 pd=VAL(RIGHT$(i$(x), 2)): IF pd<>VAL(RIGHT$(i$(x), 2)) THEN 350 355 RETURN 400 c0=0: a$=STR$(a): c$=RIGHT$(a$, 3): IF LEFT$(c$, 1)="." THEN RETURN 420 c??χ????0`p8 x pp000000000000pp000001111100~?`p08x~ 00~000000000200````00p  pUQQQHHX(x0@x`@ @` 0 0@PPPx7=1 780 FOR x=1 TO nu: IF x<3 THEN f$(x, 0)="d" 783 IF x>2 THEN f$(x, 0)="l" 785 IF x>4 THEN f$(x, 0)="e" 786 IF x=12 THEN f$(x, 0)="i" 788 NEXT x 791 DIM n$(nm): n$(0)=STR$(nu) 792 FOR j=1 TO 13: READ a$: NEXT j 793 FOR x=1 TO nm: n$(x)="*": NEXT x 795 FOR x=1 TO nu 796 f$(x, 0)=f$(x, 0)+"000+0000000.00": READ n$(x): NEXT x 800 DATA "checking","savings","charge card","car loan","car repair","childcare","rent","entrtnment","clothing","utilities" 801 DATA "food","pay" 830 GOTO 997 880 FOR x=1 632 1636 q$=STR$(x): IF LEN(q$)<2 THEN q$="0"+q$ 1640 i$(x)=a$+"y"+q$ 1650 NEXT x: x7=nu+1: i$(x7)="" 1660 ret=33: GOTO 3040 2000 a$(1)=" * LOADING FILES *": a$(2)="": GOSUB 900: ? 2020 ?: ? "This will Destroy Data": ? "Now in Memory" 2035 ?: INPUT "VERIFY (y or n)?"; z$ 2040 IF z$<>"y" THEN 1000 2050 CLEAR 2060 INPUT "Name of File>"; n1$ 2065 DIM tl$(2): d$=CHR$(4) 2080 ? d$; "open "; n1$ 2090 ? d$; "read "; n1$ 2100 INPUT nm$: nm=VAL(nm$) 2120 INPUT te$: te=VAL(te$) 2130 DIM i$(te), n$(nm), f$(nm, 17 1140 ? "Enter Number": ?: ? "1. LOAD FILES (TAPE)": ? "2. SAVE FILES (TAPE)" 1150 ? "3. MAKE ENTRIES": ? "4. READ A FILE": ? "5. LIST DIRECTORY" 1160 ? "6. CHANGE OR DELETE AN ENTRY": ? "7. CHANGE FILE NAME OR TYPE" 1170 ? "8. OPEN A NEW FILE": ?: ? "A. FORWARD BALANCES": ? "B. PREPARE FINANCIAL REPORTS " 1270 INPUT ch$ 1275 IF ch$="c" THEN HOME: ? CHR$(4); "catalog": GOTO 995 1280 IF ch$="a" THEN 1500 1290 IF ch$="b" THEN 10000 1300 ch=VAL(ch$) 1310 ON ch GOTO 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9"write "; n1$ 3080 nm$=STR$(nm) 3082 ? nm$ 3085 te$=STR$(te) 3087 ? te$ 3090 FOR x=0 TO VAL(n$(0)): a$=n$(x) 3100 ? a$: NEXT x: ? STR$(x7) 3120 FOR x=1 TO VAL(n$(0)): ? f$(x, 0): NEXT x 3140 FOR y=1 TO x7-1: ? i$(y): NEXT y 3180 ? "end" 3190 ? d$; "close "; n1$ 3200 GOTO 995 4000 d=2: a$(1)=" * POSTING ENTRIES *": GOSUB 900 4002 IF x7>=te-1 THEN ? "FULL": GOTO 995 4008 ? TAB(10); "Entry>"; x7: ?: ? "A POSITIVE NUMBER WILL:" 4010 ? "Increase a DEPOSIT acct" 4015 ? "Increase a LOAN acct": ? "Increase N 1500 a$(1)=" * FORWARDING BALANCES *" 1511 a$(2)="": GOSUB 900: VTAB 12: ret=0 1550 ?: ? " This will leave Forwarded": ? " Balances in Computer ONLY" 1580 ?: INPUT "Verify (y or n)?"; z$: IF z$<>"y" THEN 1000 1590 GOSUB 900 1600 VTAB 12 1620 FOR x=1 TO nu 1622 a$=LEFT$(f$(x, 0), 1)+"001"+RIGHT$(f$(x, 0), 11) 1624 b$=LEFT$(f$(x, 0), 1)+"001"+RIGHT$(f$(x, 0), 11): IF a$<>b$ THEN 1622 1630 f$(x, 0)=a$ 1632 a$="000000fwd bal"+RIGHT$(f$(x, 0), 11): b$="000000fwd bal"+RIGHT$(f$(x, 0), 11): IF a$<>b$ THEN 1TO 6: a$(x)="": NEXT x: RETURN 900 HOME: ? 905 s$="******************************" 910 GOSUB 950 915 FOR x=1 TO 6 920 IF d=1 AND a$(x)<>"" THEN ? SPC(24); a$(x): HOME: GOTO 935 930 IF a$(x)<>"" THEN ? a$(x) 935 NEXT x 940 GOSUB 950: COLOR =8: RETURN 950 FOR x=1 TO 2 960 IF d=1 THEN ? SPC(24); s$: HOME: GOTO 980 970 ? s$ 980 NEXT x 990 RETURN 995 d=2: PR #2 997 ? "Press any Key" 998 GET k$: IF k$="" THEN 998 1000 d=2: PR #2: ret=0 1100 a$(1)="*** THE PERSONAL ACCOUNTANT **" 1110 a$(2)="": GOSUB 900: VTAB ) 2144 INPUT n$(0): nu=VAL(n$(0)) 2151 FOR x=1 TO nu: INPUT n$(x): NEXT x: INPUT x$: x7=VAL(x$): IF x7=0 THEN ? "FILE NOT FOUND": GOTO 2000 2160 FOR x=1 TO nu: INPUT f$(x, 0): NEXT x 2180 FOR y=1 TO x7-1: INPUT i$(y): NEXT y 2220 ? d$; "read "; n1$ 2230 ? d$; "close "; n1$ 2235 GOTO 1000 2500 GOTO 1000 3000 a$(1)=" * SAVING FILES *": a$(2)="": GOSUB 900: ? 3035 ? "type `q` to return to menu" 3040 INPUT "Name for file>"; n1$ 3045 IF n1$="q" THEN 1000 3050 d$=CHR$(4) 3060 ? d$; "open "; n1$ 3070 ? d$; 000 1400 GOTO 1000 1440 IF si$="-" THEN am=am*(-1) 1450 si$="+" 1451 IF am<0 THEN si$="-" 1452 am=ABS(am): am$=STR$(am): b=LEN(am$) 1476 IF b=2 THEN am$="."+am$: GOTO 1481 1477 IF b=1 THEN am$=".0"+am$: GOTO 1481 1478 am$=LEFT$(am$, b-2)+"."+RIGHT$(am$, 2) 1480 IF LEN(am$)<>b+1 THEN 1440 1481 FOR w=1 TO LEN(am$) 1482 w1=ASC(MID$(am$, w, 1)) 1483 IF w1<>46 AND (w1<48 OR w1>57) THEN 1440 1484 IF am$=".00" THEN RETURN 1485 NEXT w 1489 IF LEN(am$)<>b+1 THEN 1440 1490 IF si$="-" THEN am$=si$+am$ 1498 RETURan INCOME acct": ? "Decrease an EXPENSE acct": ? 4050 INPUT "Date of Entry (mmddyy)?"; d$: IF d$="q" THEN 1000 4060 IF LEN(d$)<>6 THEN 4050 4061 IF VAL(LEFT$(d$, 2))<1 OR VAL(LEFT$(d$, 2))>12 THEN 4050 4062 IF VAL(MID$(d$, 3, 2))<1 OR VAL(MID$(d$, 3, 2))>31 THEN 4050 4063 INPUT "Particulars>"; p$ 4064 IF LEN(p$)>8 THEN p$=LEFT$(p$, 8) 4065 IF LEN(p$)<8 THEN p$=p$+" ": GOTO 4065 4070 INPUT "Amount ?"; am 4072 am$=STR$(am) 4075 IF am>9999999.99 OR am<-9999999.99 THEN 4070 4076 GOTO 4130 4080 s$="+": IF am<0 "Post to Account (#2)"; tl$(2) 4811 ac=1 4812 IF tl$(2)<>"" THEN ac=2 4813 IF tl$(2)="q" THEN POP: GOTO 1000 4815 RETURN 5000 a$(1)=" * READING FILE *": a$(2)="": GOSUB 900: ? 5025 ? "Enter `q` for menu" 5030 INPUT "Which File ?"; tn$ 5035 IF tn$="q" THEN 1000 5040 GOSUB 20000: IF k=0 THEN ? "FILE NOT FOUND": GOTO 5030 5050 a$(1)=tn$ 5055 IF LEN(a$(1))<30 THEN a$(1)="*"+a$(1)+"*": GOTO 5055 5060 IF LEN(a$(1))>30 THEN a$(1)=RIGHT$(a$(1), 30) 5070 GOSUB 900 5080 ne=VAL(MID$(f$(k, 0), 2, 3)): IF ne$(f$(k, 0), 11)): bsl=VAL(RIGHT$(f$(k, 0), 11)): IF bsl<>bal THEN 4250 4255 IF d=2 OR l=2 THEN a(2)=a(2)*(-1) 4257 IF d=2 OR l=2 THEN IF a(1)<>a(2)*(-1) THEN 4250 4261 am=a(g) 4262 GOSUB 1450: am=VAL(am$) 4265 GOSUB 4080 4266 am=a(g): bal=INT(bal*100+.1): bal=INT(bal+am+.1): s$="+" 4285 IF bal<0 THEN s$="-" 4286 bal=ABS(bal) 4288 a1=am 4290 am=bal: GOSUB 1450: ba$=am$ 4292 am=a(g) 4295 IF LEN(ba$)<10 THEN ba$="0"+ba$: GOTO 4295 4300 ba$=s$+ba$ 4305 g$=LEFT$(f$(k, 0), 4): b$=LEFT$(f$(k, 0), 4): IF g$<>b$), 14)) 5195 as=INT(as*100+.1) 5198 IF as<>am OR ps$<>p$ OR ds$<>d$ THEN 5180 5200 GOSUB 1450 5210 IF d=1 THEN GOSUB 5455 5221 t$=LEFT$(i$(x), 1) 5225 t=31-LEN(am$) 5230 IF VAL(am$)<0 THEN t=24-LEN(am$) 5235 IF VAL(am$)<0 THEN am$=RIGHT$(am$, LEN(am$)-1) 5238 IF d=1 THEN 5410 5239 ? d$; " "; p$; 5240 ? TAB(t); am$ 5250 st=st+1: IF st"" THEN tn$=tl$(2): GOSUB 20000: IF k=0 THEN 4750 4190 d=0: l=0 4195 am=INT(am*100+.1): a(1)=am: a(2)=am: a(4)=am 4200 FOR g=1 TO ac 4210 tn$=tl$(g): GOSUB 20000 4220 t$=LEFT$(f$(k, 0), 1): g$=LEFT$(f$(k, 0), 1): IF g$<>t$ THEN 4220 4230 IF t$="d" THEN d=d+1: GOTO 4250 4235 l=l+1 4250 bal=VAL(RIGHT<>VAL(MID$(f$(k, 0), 2, 3)) THEN 5080 5090 ? n$(k); " contains "; ne; " entries" 5095 IF ne=0 THEN GOTO 995 5100 INPUT "Enter number you wish to view "; en 5105 IF en>ne THEN 5090 5120 GOSUB 300: PR #d: GOSUB 900: ? 5151 IF d=1 THEN GOSUB 5400 5170 x=1: st=0 5172 GOSUB 350: IF pd=k THEN 5180 5174 x=x+1: IF x>x7 THEN 5259 5176 GOTO 5172 5180 d$=LEFT$(i$(x), 6): p$=MID$(i$(x), 7, 8) 5190 am=VAL(RIGHT$(i$(x), 14)) 5191 am=INT(am*100+.1) 5192 ds$=LEFT$(i$(x), 6): ps$=MID$(i$(x), 7, 8) 5194 as=VAL(RIGHT$(i$(x THEN 4305 4310 f$(k, 0)=g$+ba$ 4312 ne=VAL(MID$(f$(k, 0), 2, 3)): ns=VAL(MID$(f$(k, 0), 2, 3)): IF ne<>ns THEN 4312 4313 ne=ne+1: ne$=STR$(ne) 4320 IF LEN(ne$)<3 THEN ne$="0"+ne$: GOTO 4320 4325 g$=LEFT$(f$(k, 0), 1): IF g$<>LEFT$(f$(k, 0), 1) THEN 4325 4330 f$(k, 0)=g$+ne$+ba$ 4331 l$=STR$(k): IF LEN(l$)<2 THEN l$="0"+l$ 4332 i$(x7)=en$+"y"+l$: x7=x7+1 4340 NEXT g 4350 INPUT "Any Other Entries ?"; z$ 4360 IF z$<>"y" THEN 1000 4370 GOTO 4000 4650 ? "No Files Available" 4660 ? "Entry Aborted" 4670 GOTO 99f$(k, 0), 11)) 5270 as=INT(as*100+.1) 5275 IF as<>am THEN 5262 5280 GOSUB 1450 5285 IF ret=99 THEN RETURN 5290 ? TAB(31-LEN(am$)); am$ 5300 GOTO 995 5400 ?: ? "DATE"; TAB(20); "PARTICULARS"; TAB(54); "AMOUNT": ?: RETURN 5409 IF d$="000000" THEN ? SPC(16); p$; : GOTO 5470 5410 m=VAL(LEFT$(d$, 2)) 5420 y=VAL(RIGHT$(d$, 2)) 5430 GOSUB 200 5440 d$=m$+" "+MID$(d$, 3, 2)+" "+y$ 5450 ? d$; SPC(10); p$; 5451 GOTO 5470 5455 t=45-LEN(am$) 5460 IF VAL(am$)<0 THEN t=20-LEN(am$) 5465 RETURN 5470 ? SPC(t); am$ 5475 H ? x; " "; LEFT$(i$(x), 6); " "; 7726 t$=MID$(i$(x), 7, 8): IF t$<>MID$(i$(x), 7, 8) THEN 7726 7728 ? t$; 7730 am=VAL(RIGHT$(i$(x), 14)): ab=VAL(RIGHT$(i$(x), 14)): IF am<>ab THEN 7730 7735 am=INT(am*100) 7740 GOSUB 1450 7750 ? TAB(31-LEN(am$)); am$ 7752 IF ret=6 THEN ret=0: RETURN 7755 IF sc/20<>INT(sc/20) THEN 7760 7756 ?: ? "Press Any Key" 7757 GET k$: IF k$="" THEN 7757 7760 NEXT x 7770 RETURN 7900 d$="******": p$=d$+"**" 7905 am=0: ret=20: GOSUB 7330 7920 FOR i=x TO x7-1 7921 i$(i)=i$(i+1) 7925 NEXT900: VTAB 12 7015 INPUT "Which Account? "; tn$ 7016 GOSUB 20000 7017 IF k=0 THEN ? "Account Not Found": GOTO 7015 7020 ?: ? "Which Entry Number" 7021 ? "Enter `q` for Main Menu": ? "Enter `u` if Unknown" 7023 INPUT en$: IF en$="q" THEN 1000 7025 IF en$="u" THEN GOSUB 7700: GOTO 7020 7030 en=VAL(en$): IF en=0 THEN 1000 7235 IF x7k THEN 7021 7270 ? "Present Entry:" 7275 ret=6: x=en: GOSUB 7725 7280 ?: ? "NEW ENTRY": ? "date (mmddyy)? ": ? "enteEN ? "File Not Found": GOTO 8030 8060 GOSUB 900: ? 8065 t$=LEFT$(f$(k, 0), 1) 8066 GOSUB 20500 8067 ot$=t$ 8070 ? "PRESENT FILE"; TAB(25); "TYPE": GOSUB 20500: ?: ? n$(k); TAB(25); ot$ 8100 ?: ?: ? "NEW NAME OF FILE " 8115 INPUT "Type `*` to delete>"; tn$ 8116 IF tn$="*" THEN tn$="* delete *" 8120 k1=k 8125 IF tn$="* delete *" THEN 8130 8129 GOSUB 20400 8130 k=k1: n1$=tn$: t$=LEFT$(f$(k, 0), 1) 8150 GOSUB 20500: GOSUB 900 8170 ?: ? "PRESENT"; TAB(25); "TYPE" 8180 ? n$(k); TAB(25); ot$ 8190 ?: ? "NEW"; TAB$(i$(x), 14)) THEN 7350 7360 oa=INT(oa*100+.1) 7370 bal=bal-oa 7380 GOSUB 1450 7385 am=VAL(am$): GOSUB 4080: o$=am$ 7390 am=bal: GOSUB 1450 7395 am=VAL(am$): GOSUB 4080: x$=am$ 7396 c$=RIGHT$(i$(x), 2): IF c$<>RIGHT$(i$(x), 2) THEN 7396 7400 en$=d$+p$+o$+"y"+c$ 7401 IF LEN(en$)<>28 THEN jl=1 7402 IF jl=1 THEN jl=0: GOTO 7270 7410 i$(x)=en$ 7420 f$(k, 0)=LEFT$(f$(k, 0), 4)+x$ 7425 IF ret=20 THEN ret=0: RETURN 7430 GOTO 995 7700 sc=0: HOME 7720 FOR x=1 TO x7: GOSUB 350: IF pd<>k THEN 7760 7721 sc=sc+1 7725OME 5480 st=st+1: IF stVAL(MID$(f$(k, 0), 2, 3)) THEN 7930 7945 ne=ne-1 7950 ne$=STR$(ne) 7955 IF LEN(ne$)<3 THEN ne$="0"+ne$: GOTO 7955 7960 g$=LEFT$(f$(k, 0), 1)+ne$+RIGHT$(f$(k, 0), 11): IF g$<>LEFT$(f$(k, 0), 1)+ne$+RIGHT$(f$(k, 0), 11) THEN 7960 7965 f$(k, 0)=g$ 7970 GOTO 995 8000 a$(1)=" * CHANGE FILE NAME/TYPE *": a$(2)="": GOSUB 900 8025 ? "Enter `q` for main menu" 8030 ?: INPUT "PRESENT NAME>"; tn$ 8035 IF tn$="q" THEN GOTO 1000 8040 GOSUB 20000 8050 IF k=0 THr `*` to delete entry" 7283 INPUT d$ 7284 IF d$="*" THEN 7900 7286 IF d$="q" THEN 1000 7290 IF LEN(d$)<>6 THEN 7283 7295 IF VAL(LEFT$(d$, 2))<1 OR VAL(LEFT$(d$, 2))>12 THEN 7281 7300 INPUT "Particulars? "; p$ 7310 IF LEN(p$)>8 THEN p$=LEFT$(p$, 8) 7315 IF LEN(p$)<8 THEN p$=p$+" ": GOTO 7315 7320 INPUT "Amount? "; am 7330 bal=VAL(RIGHT$(f$(k, 0), 11)): IF bal<>VAL(RIGHT$(f$(k, 0), 11)) THEN 7330 7335 bal=INT(bal*100+.1) 7336 am=INT(am*100+.1) 7340 bal=bal+am 7350 oa=VAL(RIGHT$(i$(x), 14)): IF oa<>VAL(RIGHT(25); "TYPE" 8200 ? tn$; TAB(25); t$ 8210 ?: INPUT "Verify (y or n)"; z$: IF z$<>"y" THEN 8000 8220 b=LEN(f$(k, 0)) 8221 f$(k, 0)=LEFT$(t$, 1)+RIGHT$(f$(k, 0), b-1) 8222 IF LEFT$(tn$, 1)="*" THEN f$(k, 0)=LEFT$(t$, 1)+"000+0000000.00" 8230 n$(k)=tn$ 8240 GOTO 995 9000 PR #2 9010 a$(1)=" * OPENING A FILE *": a$(2)="": GOSUB 900: ? 9030 nu=VAL(n$(0)): IF nu=nm THEN ? "no files available": GOTO 995 9035 ? "Enter `q` to return to menu" 9040 INPUT "NAME OF FILE "; tn$ 9045 IF tn$="q" THEN 1000 9050 GOSUB (4) 515 ?: ? "Insert DATA tape and Press 'c'" 516 GET a$: IF a$<>"c" THEN 516 520 ? d$; "OPEN "; n1$ 530 ? d$; "READ "; n1$ 540 INPUT a$: nm=VAL(a$): INPUT b$: te=VAL(b$) 550 DIM i$(te), n$(nm), f$(te, 1) 560 INPUT n$(0): nu=VAL(n$(0)) 570 FOR x=1 TO nu: INPUT n$(x): NEXT x: INPUT x$: x7=VAL(x$) 580 FOR x=1 TO nu: INPUT f$(x, 0): NEXT x 590 ? d$; "read "; n1$ 600 ? d$; "close "; n1$ 610 RETURN 900 HOME: ?: s$="*****************************" 910 GOSUB 950 915 FOR x=1 TO 6 920 IF d=1 AND a$(x)<>"" THEN ? SPC REPORTS)": ? 10040 GET x$: IF x$<>"q" AND x$<>"c" THEN 10040 10045 IF x$<>"c" AND x$<>"C" THEN 1000 10120 ? "Please Wait...." 10130 ? CHR$(4); "RUN FINCREP" 10160 RUN 16000 ba=VAL(RIGHT$(f$(x, 0), 11)) 16020 ba=INT(ba*100+.1) 16030 am=ba: GOSUB 1450: RETURN 20000 nu=VAL(n$(0)) 20010 FOR k=1 TO nu 20020 IF tn$=n$(k) THEN RETURN 20030 NEXT k: k=0: RETURN 20200 FOR k=1 TO nu: IF n$(k)="*" THEN RETURN 20230 NEXT k 20240 nu=nu+1: k=nu 20250 n$(0)=STR$(nu) 20260 RETURN 20400 ?: ? "FILE TYPE :": ?: ? "`d` = dep" THEN am=am*(-1) 1450 si$="+" 1451 IF am<0 THEN si$="-" 1452 am=ABS(am): am$=STR$(am): b=LEN(am$) 1476 IF b=2 THEN am$="."+am$: GOTO 1481 1477 IF b=1 THEN am$=".0"+am$: GOTO 1481 1478 am$=LEFT$(am$, b-2)+"."+RIGHT$(am$, 2) 1480 IF LEN(am$)<>b+1 THEN 1440 1481 FOR w=1 TO LEN(am$) 1482 w1=ASC(MID$(am$, w, 1)) 1483 IF w1<>46 AND (w1<48 OR w1>57) THEN 1440 1484 IF am$=".00" THEN RETURN 1485 NEXT w 1489 IF LEN(am$)<>b+1 THEN 1440 1490 IF si$="-" THEN am$=si$+am$ 1498 RETURN 9999 HOME: GOSUB 500 10000 PR #10 GOTO 9999 100 DATA JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC,END 105 IF ch$<"1" OR ch$>"7" OR (x7<2 AND ch$<"6") THEN 10000 200 RESTORE 210 FOR j=1 TO m: READ m$ 230 IF m$="END" THEN m=1: y=y+1: GOTO 200 240 NEXT j 250 IF y=100 THEN y=0 255 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 256 m=m+1: RETURN 500 CLEAR: ? " Enter name of SAVEd file:": ?: INPUT n1$: IF n1$="q" THEN n1$="": GOTO 10000 501 IF n1$="c" THEN HOME: ? CHR$(4); "catalog": GOTO 500 503 IF n1$="" THEN 500 510 DIM tl$(2): d$=CHR$20000: IF k<>0 THEN ? "File Exists ! ": GOTO 9040 9060 GOSUB 20200 9065 IF LEN(tn$)>18 THEN tn$=LEFT$(tn$, 18) 9070 n$(k)=tn$: GOSUB 20400 9090 f$(k, 0)=t$+"000+0000000.00" 9095 IF ret=3 THEN ret=0: RETURN 9100 GOTO 995 10000 PR #2 10010 a$(1)=" * FINANCIAL REPORTS *": a$(2)="": GOSUB 900: VTAB 8 10020 IF x7<2 THEN 10030 10025 ? "Did you SAVE Current File (y/n)": ? 10026 INPUT a$: IF a$<>"y" THEN 1000 10030 ? "Please place Program Tape into": ?: ? TAB(11); "Tape Drive." 10035 ?: ? "('q' = MENU - 'c' =(24); a$(x): HOME: GOTO 935 930 IF a$(x)<>"" THEN ? a$(x) 935 NEXT x 940 GOSUB 950: COLOR =8: RETURN 950 FOR x=1 TO 2 960 IF d=1 THEN ? SPC(24); s$: HOME: GOTO 980 970 ? s$ 980 NEXT x 990 RETURN 995 d=2: PR #2 997 ? "Press any Key" 998 GET k$: IF k$="" THEN 998 1000 d=2: PR #2: ret=0 1010 GOTO 10000 1100 HOME: ?: ? "Place Program Tape into Drive": ?: ? "Press (c) to Cont (a) to Abort" 1110 GET a$: IF a$<>"c" AND a$<>"a" THEN 1110 1115 IF a$="c" THEN ? CHR$(4); "RUN budget" 1117 GOTO 10000 1440 IF si$="-osit": ? "`e` = expense" 20422 ? "`l` = loan": ? "`i` = income": INPUT t$ 20430 IF t$<>"d" AND t$<>"e" AND t$<>"l" AND t$<>"i" THEN GOTO 20400 20440 RETURN 20500 IF t$="i" THEN t$="income" 20511 IF t$="d" THEN t$="deposit" 20512 IF t$="e" THEN t$="expense" 20513 IF t$="l" THEN t$="loan" 20514 RETURN 020 IF x7<2 THEN 10030 10025 ? "Did you SAVE Current File (y/n)": ? 10026 INPUT a$: IF a$<>"y" THEN 1000 10030 ? "Please place Program Tape into": ?: ? TAB(11); "Tape Drive." 10035 ?: ? "('q' = MENU - 'c' =2: HOME 10010 a$(1)=" * Financial Reports *": a$(2)="": GOSUB 900: VTAB 7: ? "File>"; n1$: ? 10030 ? "Choose by Number": ?: ? "1. Trial Balance": ? "2. List Expense Accts" 10040 ? "3. Assets & Liabilities": ? "4. Income & Expenses": ? "5. Prepare ALL Reports": ? "6. Return to Main Program" 10045 ? "7. Change Data File" 10100 INPUT ch$: IF ch$="q" THEN 1000 10105 IF ch$<"1" OR ch$>"7" OR (x7<2 AND ch$<"6") THEN 10000 10110 ch=VAL(ch$): IF ch=6 THEN 1100 10120 IF ch=7 THEN RUN 10130 GOSUB 900: ?: ?: INPUT ? TAB(35); "Assets": ? 13050 nu=VAL(n$(0)): bl=0 13060 FOR x=1 TO nu 13070 t$=LEFT$(f$(x, 0), 1) 13080 IF t$<>"d" THEN 13150 13090 GOSUB 16000 13091 IF VAL(am$)=0 THEN 13150 13092 am=INT(VAL(am$)*100+.1) 13095 bl=INT(bl+am+.1) 13100 ? n$(x); 13110 ? SPC(40-LEN(n$(x))-LEN(am$)); am$ 13150 NEXT x 13160 ? TAB(30); "-----------" 13180 ? "Total Assets "; 13190 am=bl: GOSUB 1450 13195 ? SPC(62-LEN(am$)); am$ 13200 ?: ? TAB(32); "Liabilities": ?: br=0 13230 FOR x=1 TO nu 13240 t$=LEFT$(f$(x, 0), 1) 13250 IF t$<; "Type"; TAB(55); "Balance": ? 11040 nu=VAL(n$(0)) 11045 bl=0: br=0 11050 FOR x=1 TO nu: IF LEFT$(n$(x), 1)="*" THEN NEXT x 11060 nu=VAL(n$(0)) 11070 ? n$(x); : t$=LEFT$(f$(x, 0), 1): GOSUB 20500: ? TAB(21); t$; : GOSUB 16000 11110 am=VAL(am$): am=INT(am*100+.1): GOSUB 11500 11150 bl=INT(bl+.1): br=INT(br+.1) 11160 IF t$="deposit" OR t$="expense" THEN t=73-LEN(am$): GOTO 11180 11170 t=55-LEN(am$) 11180 ? TAB(t); am$: HOME 11190 NEXT x 11200 ? TAB(45); "----------------------------": ? 11220 ? "List TotalO 995 14000 a$(1)=" * Income and Expenses *" 14020 d=1: PR #1: GOSUB 900 14040 ?: ? TAB(34); "Income": ? 14060 bl=0: nu=VAL(n$(0)) 14070 FOR x=1 TO nu 14080 t$=LEFT$(f$(x, 0), 1) 14090 IF t$<>"i" THEN 14150 14100 GOSUB 16000 14110 am=INT(VAL(am$)*100+.1) 14120 IF am=0 THEN 14150 14130 bl=INT(bl+am+.1) 14135 ? n$(x); 14138 ? SPC(40-LEN(n$(x))-LEN(am$)); am$ 14150 NEXT x 14160 ? TAB(31); "----------": ? "Total Income "; 14175 am=bl: GOSUB 1450 14180 ? SPC(63-LEN(am$)); am$ 14200 ?: ? TAB(32); "Expenses": 12080 t$=LEFT$(f$(x, 0), 1) 12090 IF t$<>"e" THEN GOTO 12200 12100 ? SPC(14); n$(x); 12105 GOSUB 16000 12108 am=VAL(am$): am=INT(am*100+.1)*(-1): bl=INT(bl+am+.1) 12120 GOSUB 1450 12130 ? SPC(50-LEN(am$)-LEN(n$(x))); am$ 12140 HOME 12200 NEXT x 12210 ? TAB(50); "-----------------": ? 12230 ? SPC(20); "Total Expenses "; 12231 am=bl: GOSUB 1450 12240 ? SPC(29-LEN(am$)); am$ 12250 HOME 12255 IF ret=100 THEN RETURN 12260 GOTO 995 13000 a$(1)=" * Assets and Liabilities *" 13008 d=1: PR #1: GOSUB 900: ? 13030 "Enter Date (mmddyy):"; d$: IF d$="q" THEN 1000 10170 IF LEN(d$)<>6 OR VAL(LEFT$(d$, 2))>12 OR VAL(MID$(d$, 3, 2))>31 THEN 10130 10180 m=VAL(LEFT$(d$, 2)) 10185 y=VAL(RIGHT$(d$, 2)) 10190 GOSUB 200 10200 d$=m$+" "+MID$(d$, 3, 2)+"/"+y$ 10210 a$(2)=d$ 10230 IF LEN(a$(2))<31 THEN a$(2)="*"+a$(2)+"*": GOTO 10230 10240 IF LEN(a$(2))>30 THEN a$(2)=LEFT$(a$(2), 30) 10250 ON ch GOTO 11000, 12000, 13000, 14000, 15000 11000 a$(1)=" * Trial Balance *": d=1: PR #d: GOSUB 900: ? 11020 ? "Account Name:"; TAB(20)>"l" THEN 13300 13260 GOSUB 16000 13265 IF VAL(am$)=0 THEN 13300 13268 am=INT(VAL(am$)*100+.1) 13270 br=INT(br+am+.1) 13280 ? n$(x); 13285 ? SPC(40-LEN(n$(x))-LEN(am$)); am$ 13300 NEXT x 13320 ? TAB(30); "-----------" 13334 am=br: GOSUB 1450 13340 ? "Total Liabilities"; 13350 ? SPC(58-LEN(am$)); am$ 13360 ? TAB(62); "--------------" 13370 ? "Assets over Liabilities"; 13380 bt=INT(bl-br+.1) 13390 am=bt: GOSUB 1450 13400 ? SPC(52-LEN(am$)); am$ 13410 HOME 13420 PR #2 13425 IF ret=100 THEN RETURN 13430 GOTs "; 11230 am=bl: GOSUB 1450: bl$=am$ 11240 am=br: GOSUB 1450: br$=am$ 11250 ? TAB(55-LEN(bl$)); bl$; : ? SPC(18-LEN(br$)); br$ 11260 IF ret=100 THEN RETURN 11265 HOME: GOTO 995 11500 IF t$<>"expense" THEN 11550 11520 am=am*(-1): br=INT(br+am+.1): GOSUB 1450: RETURN 11550 IF t$="deposit" THEN br=br+am: RETURN 11560 bl=INT(bl+am+.1): RETURN 12000 a$(1)=" * Expense Accounts *": d=1: PR #1: GOSUB 900: ? 12040 ? TAB(15); "Account Name"; TAB(58); "Balance": ? 12060 nu=VAL(n$(0)): bl=0 12070 FOR x=1 TO nu ? 14220 br=0 14230 FOR x=1 TO nu 14240 t$=LEFT$(f$(x, 0), 1) 14250 IF t$<>"e" THEN 14300 14260 GOSUB 16000 14265 am=INT(VAL(am$)*100+.1) 14266 IF am=0 THEN 14300 14267 am=INT(am*(-1)) 14268 GOSUB 1450 14269 am=INT(VAL(am$)*100+.1) 14270 br=INT(br+am+.1) 14280 ? n$(x); 14285 ? SPC(40-LEN(n$(x))-LEN(am$)); am$ 14300 NEXT x 14305 ? TAB(31); "----------" 14310 am=br: GOSUB 1450 14320 ? "Total Expenses "; 14330 ? SPC(61-LEN(am$)); am$ 14340 bt=INT(bl-br+.1) 14350 am=bt: GOSUB 1450 14351 ? TAB(66); "-----------OTO 935 930 IF a$(x)<>"" THEN ? a$(x) 935 NEXT x 940 GOSUB 950 944 COLOR =8 945 RETURN 950 FOR x=1 TO 2 960 IF d=1 THEN HOME: ? SPC(24); s$: GOTO 980 970 ? s$ 980 NEXT x 990 RETURN 995 PR #2 996 ? "press any key for menu" 997 GET k$ 998 IF k$="" THEN 997 1000 ret=0: d=2 1004 ret=0: d=2 1005 PR #2 1010 a$(1)="** THE PERSONAL ACCOUNTANT ***" 1020 a$(2)="********* DATABASE ***********" 1030 GOSUB 900 1040 ?: ? "Memory Remaining> "; FRE(0)-500; " bytes" 1100 VTAB 12 1110 ? "1. List all files.": ? "2. Enter ne$(f$(x, 0), 11)): bd=VAL(RIGHT$(f$(x, 0), 11)): IF bd<>ba THEN 16000 16010 ba=INT(ba*100+.1) 16030 am=ba: GOSUB 1450: RETURN 20000 nu=VAL(n$(0)) 20010 FOR k=1 TO nu 20020 IF tn$=n$(k) THEN RETURN 20030 NEXT k: k=0: RETURN 20200 FOR k=1 TO nu: IF n$(k)="*" THEN RETURN 20230 NEXT k 20240 nu=nu+1: k=nu 20250 n$(0)=STR$(nu) 20260 RETURN 20500 IF t$="i" THEN t$="income" 20511 IF t$="d" THEN t$="deposit" 20512 IF t$="e" THEN t$="expense" 20513 IF t$="l" THEN t$="loan" 20514 RETURN 51 ? TAB(66); "-----------OTO 995 2060 ? "1. List ALL Fields" 2070 ? "2. List a Specified Field ONLY" 2080 ? 2085 ? "FOR PRINTER OUTPUT ` " 2090 ? "PRECEDE ANSWER BY `p`" 2100 INPUT z$ 2105 IF LEN(z$)<1 OR LEN(z$)>2 THEN 2110 2110 d=2: IF LEFT$(z$, 1)="p" THEN d=1 2130 IF LEN(z$)<>2 THEN 2150 2140 z=VAL(RIGHT$(z$, 1)): GOTO 2160 2150 z=VAL(z$) 2160 IF z=1 THEN GOTO 2500 2170 HOME 2190 ? 2200 INPUT "WHICH FIELD # "; f 2210 HOME 2220 a$(1)="******* DATA LISTING *******" 2230 a$(2)="****** FIELD NUMBER "+STR$(f): GOSUB 500 2240 PR1 REM rmd12/84 dbase 5 PR #2 10 CLEAR 20 d=2 30 nu=0 40 DIM f$(150, 6) 50 FOR x=1 TO 100 60 f$(x, 1)="*" 70 NEXT 100 GOTO 1000 300 d=2 320 INPUT "OUTPUT TO PRINTER?"; y$ 330 IF LEFT$(y$, 1)="y" THEN d=1 335 RETURN 500 REM pad strings 510 FOR x=1 TO 6 511 IF LEFT$(a$(x), 1)=" " THEN 530 520 IF LEN(a$(x))<30 THEN a$(x)=a$(x)+"*": GOTO 520 530 NEXT x 540 RETURN 900 HOME 901 ? 905 s$="******************************" 910 GOSUB 950 915 FOR x=1 TO 2 920 IF d=1 AND a$(x)<>"" THEN HOME: ? SPC(24); a$(x): G" 14360 ? "Income over Expenses"; 14370 ? SPC(55-LEN(am$)); am$: ? 14390 IF ret=100 THEN RETURN 14400 HOME 14410 GOTO 995 15000 HOME: ret=100 15030 FOR rp=1 TO 4: PR #2: GOSUB 15500: PR #1: ret=100 15070 ON rp GOSUB 11000, 12000, 13000, 14000 15100 NEXT rp 15200 PR #2: HOME: VTAB 12: GOTO 995 15500 PR #2: HOME 15520 VTAB 12 15530 ? "Press 'q' to quit": ? 15550 ? "Any Other Key for Report # "; 15560 ? rp 15570 GET k$: IF k$="" THEN 15570 15580 IF k$="q" THEN POP: GOTO 1000 15590 RETURN 16000 ba=VAL(RIGHTw information." 1130 ? "3. Search for information." 1140 ? "4. Make changes to files. " 1150 ? "5. Delete a file." 1160 ? "6. Save files." 1170 ? "7. Load files." 1200 INPUT x 1205 IF x=5 AND nu=0 THEN 1000 1210 ON x GOTO 2000, 4000, 6000, 8000, 10000, 12000, 14000 1215 GOTO 1000 2000 REM flist 2010 HOME 2020 za$(1)="******* FILE LISTING *********" 2030 a$(2)="" 2035 ret=1 2040 GOSUB 500: GOSUB 900 2050 VTAB 12 2051 IF nu=0 THEN ? "no files found ": GOTO 995 2055 IF nu=0 THEN ? "no files found ": G" 14360 ? "Income over Expenses"; 14370 ? SPC(55-LEN(am$)); am$: ? 14390 IF ret=100 THEN RETURN 14400 HOME 14410 GOTO 995 15000 HOME: ret=100 15030 FOR rp=1 TO 4: PR #2: GOSUB 15500: PR #1: ret=100 15070 ON rp GOSUB 11000, 12000, 13000, 14000 15100 NEXT rp 15200 PR #2: HOME: VTAB 12: GOTO 995 15500 PR #2: HOME 15520 VTAB 12 15530 ? "Press 'q' to quit": ? 15550 ? "Any Other Key for Report # "; 15560 ? rp 15570 GET k$: IF k$="" THEN 15570 15580 IF k$="q" THEN POP: GOTO 1000 15590 RETURN 16000 ba=VAL(RIGHT #d 2250 GOSUB 900 2255 ? 2260 GOSUB 3000 2265 ? 2270 GOTO 995 2500 PR #d 2510 a$(1)="***** LISTING ALL FILES ******" 2520 a$(2)="" 2530 GOSUB 900 2535 k=0 2540 FOR j=1 TO 3 2550 k=k+1 2560 GOSUB 16500 2570 ? 2580 IF k=nu THEN 995 2590 NEXT j 2595 GOSUB 18000 2600 GOTO 2540 3000 k=0 3010 FOR x=1 TO 20 3020 k=k+1 3025 IF f$(k, f)="*" THEN 3040 3026 IF d=1 THEN ? SPC(24); 3030 ? x; " "; f$(k, f) 3040 IF k=nu THEN RETURN 3050 NEXT x 3060 GOSUB 18000 3070 GOTO 3010 3100 IF k$="a" THEN RETURN 4000 REM n5 FOR y=1 TO 6 10180 f$(f, y)="*" 10185 NEXT y 10190 INPUT "OTHER DELETIONS ?"; z$ 10200 IF z$="y" THEN 10000 10210 GOTO 1000 12000 REM save 12005 ret=0 12010 HOME 12020 a$(1)="******** Save Files **********" 12030 a$(2)="" 12040 GOSUB 900 12050 VTAB 10 12055 IF nu=0 THEN ? "No Files Found ": GOTO 995 12060 INPUT "Name of File? "; n$ 12070 GOSUB 15000 12080 ? d$; "write "+n$ 12090 nu$=STR$(nu) 12100 ? nu$ 12110 GOSUB 16000 12120 ? "end" 12160 ? CHR$(4); "close "+n$ 12165 PR #2 12200 GOTO 1000 14000 R60 ? "Press `a` to Abort " 6070 INPUT f$ 6080 f=VAL(f$) 6090 IF f=0 THEN 1000 6100 a$(2)="****** Searching Field "+f$: GOSUB 500: GOSUB 900 6110 ? 6120 INPUT "STRING TO BE LOCATED?"; l$ 6130 l=LEN(l$) 6140 GOSUB 900 6150 GOSUB 300 6160 PR #d 6170 GOSUB 900 6180 ? 6185 b=0 6190 FOR k=1 TO nu 6200 IF l$=LEFT$(f$(k, f), l) THEN b=b+1: GOSUB 16500: ? 6205 IF b=3 THEN GOSUB 18000 6210 NEXT k 6220 PR #2 6230 GOTO 995 8000 REM changes 8010 a$(1)="******* FILE CHANGES *********" 8020 a$(2)="": GOSUB 900 803 16000 REM print files all 16010 FOR k=1 TO nu 16020 GOSUB 16500 16040 NEXT k 16050 RETURN 16500 REM ? file 16510 FOR y=1 TO 6 16520 IF ret=1 THEN IF LEFT$(f$(k, 1), 1)="*" THEN 16540 16524 IF d=1 THEN ? SPC(24); 16525 ? f$(k, y) 16530 NEXT y 16540 RETURN 17000 REM empty file 17005 IF nu=0 THEN nu=1: k=nu: RETURN 17010 FOR k=1 TO nu 17020 IF LEFT$(f$(k, 1), 1)="*" THEN RETURN 17030 NEXT k 17040 nu=nu+1 17050 k=nu 17060 RETURN 18000 REM WAIT 18005 IF d=1 THEN RETURN 18010160 10000 REM DEL 10010 HOME 10020 a$(1)="******* FILE DELETION ********" 10030 a$(2)="" 10040 GOSUB 900 10050 VTAB 10 10060 ? "WHICH FILE NUMBER" 10065 ? "TYPE `a` TO ABORT" 10070 INPUT "TYPE `u` IF UNKNOWN:"; z$ 10075 IF z$="a" THEN 1000 10080 f=VAL(z$) 10085 GOSUB 900: ?: ? 10090 IF f=0 THEN f=1: GOSUB 3000: GOTO 10060 10100 HOME 10105 GOSUB 900: ?: ? 10110 FOR y=1 TO 6 10120 ? f$(f, y) 10130 NEXT y 10140 ?: ?: ?: ? 10150 ? "IS THIS THE PROPER RECORD" 10160 INPUT z$ 10170 IF z$<>"y" THEN 10000 1017ewinfo 4010 a$(1)="***** ENTER INFORMATION ******" 4020 a$(2)="": GOSUB 500 4030 GOSUB 900 4040 VTAB 9 4045 IF k>199 THEN ? "Full File": GOTO 995 4050 GOSUB 17000 4060 FOR y=1 TO 6 4070 ? "Enter field number "; y 4080 INPUT f$(k, y) 4090 IF LEN(f$(k, y))>40 THEN 4070 4100 NEXT y 4110 ? 4120 INPUT "Other Data to Enter?"; z$ 4130 IF z$="y" THEN 4000 4140 GOTO 1000 6000 REM search 6010 a$(1)="********* FILE SEARCH ********" 6020 a$(2)="" 6030 GOSUB 900 6040 ?: ? 6050 ? "WHICH FIELD SHOULD BE SEARCHED" 60EM load files 14010 a$(1)="********* load files *********" 14020 a$(2)="" 14030 HOME 14040 GOSUB 900 14050 VTAB 12 14060 INPUT "Name of File ? "; n$ 14070 GOSUB 15000 14080 ? CHR$(4); "read "+n$ 14090 INPUT nu$: nu=VAL(nu$) 14100 FOR k=1 TO nu 14200 FOR y=1 TO 6 14210 INPUT f$(k, y) 14220 NEXT y 14230 NEXT k 14246 ? 14260 VTAB 20 14280 ? CHR$(4); "write "; n$ 14290 ? CHR$(4); "close "; n$ 14330 GOTO 1000 15000 REM open files 15010 d$=CHR$(4) 15020 ? d$; "open "; n$ 15030 RETURN0 ?: ? 8040 ? "WHICH FILE NUMBER ?" 8050 ? "PRESS `a` TO ABORT" 8060 ? " `u` IF UNKNOWN" 8070 INPUT z$: IF z$="a" THEN 1000 8080 f=VAL(z$) 8090 IF f=0 THEN f=1: ?: ?: GOSUB 3000: ?: GOTO 8040 8100 GOSUB 900 8110 ?: ? 8120 FOR y=1 TO 6 8130 ? f$(f, y) 8135 NEXT y 8140 ?: ? "Is this the Correct File?" 8150 INPUT z$: IF z$<>"y" THEN 8000 8160 INPUT "Field # to be Changed? "; fi 8170 ? "NEW FIELD #"; fi 8180 INPUT f$(f, fi) 8190 INPUT "Other Changes to this File?"; z$ 8200 IF z$<>"y" THEN 1000 8210 GOTO 8 ?: ? "press `c` to continue" 18020 ? " `a` to abort" 18030 GET k$: IF k$="" THEN 18030 18040 IF k$="a" THEN POP: GOTO 1000 18050 RETURN "Name of File ? "; n$ 14070 GOSUB 15000 14080 ? CHR$(4); "read "+n$ 14090 INPUT nu$: nu=VAL(nu$) 14100 FOR k=1 TO nu 14200 FOR y=1 TO 6 14210 INPUT f$(k, y) 14220 NEXT y 14230 NEXT k 14246 ? 14260 VTAB 20 14280 ? CHR$(4); "write "; n$ 14290 ? CHR$(4); "close "; n$ 14330 GOTO 1000 15000 REM open files 15010 d$=CHR$(4) 15020 ? d$; "open "; n$ 15030 RETURN 1000 REM loan amort 1005 GOSUB 880 1010 HOME 1020 a$(1)=" LOAN AMORTIZATIONS " 1030 GOSUB 900 1035 VTAB 9 1040 INPUT "Principal Amount ?"; p 1050 a=p: GOSUB 400: p$=a$ 1060 INPUT "Number of Payments ?"; n 1065 IF INT(n)<>n THEN 1060 1070 INPUT "Interest Rate ? "; r 1080 HOME: GOSUB 900 1090 a$(1)="***** Amount $"+p$+" " 1095 r$=STR$(r)+" %" 1100 a$(2)="***** Rate "+STR$(r)+" % " 1110 a$(3)="***** # Payments "+STR$(n)+" " 1120 r=r/1200 1130 pay=p*(r/(1-(1+r)^(-n))) 1140 pay=INT(pay*100)/1001 REM RMD 12/84 amort 9 d=2 10 GOTO 10000 100 DATA JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC,END 200 RESTORE 210 FOR j=1 TO m 220 READ m$ 230 IF m$="END" THEN m=1: y=y+1: GOTO 200 240 NEXT j 250 IF y=100 THEN y=0 255 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 256 m=m+1 260 RETURN 300 d=2 320 INPUT "OUTPUT TO PRINTER?"; y$ 330 IF LEFT$(y$, 1)="y" THEN d=1 335 RETURN 350 VTAB 21 360 ? "Shall I Prepare a Growth Table (y or n)"; 365 INPUT y$ 370 IF y$<>"y" THEN RETURN 380 INPUT "Starting D=p-p1+.1: p=INT(p) 1325 ro=pay-p1-i: IF ro<>0 THEN p1=p1+ro: p=p-ro 1326 GOSUB 1450 1340 GOSUB 1500 1355 IF re=1 THEN 1430 1356 p=VAL(p$) 1360 NEXT x 1370 p1=p*100 1380 i=pay-p1+.1: i=INT(i) 1390 re=1 1392 a$(1)="0000": a$(2)=STR$(p1): a$(3)=STR$(i) 1400 GOSUB 1460 1410 ? m$; " "; y$; TAB(19-LEN(py$)); py$; 1420 GOSUB 1500 1430 HOME 1435 PR #2 1440 GOTO 9990 1450 a$(1)=STR$(p): a$(2)=STR$(p1): a$(3)=STR$(i) 1460 FOR q=1 TO 3 1470 b=LEN(a$(q)) 1475 IF b=1 THEN 1490 1480 a$(q)=LEFT$(a$(q), b-2)+"."+RIGHT$(a TO 6 511 IF LEFT$(a$(x), 1)=" " THEN 530 520 IF LEN(a$(x))<30 THEN a$(x)=a$(x)+"*": GOTO 520 530 NEXT x 540 RETURN 880 REM clear 890 FOR x=1 TO 6 891 a$(x)="" 892 NEXT x 895 RETURN 900 HOME 901 ? 905 s$="******************************" 910 GOSUB 950 915 FOR x=1 TO 6 920 IF d=1 THEN ? SPC(24); 925 IF d=1 THEN PR #2: HOME: PR #1 930 IF a$(x)<>"" THEN ? a$(x) 935 NEXT x 940 GOSUB 950 944 COLOR =8 945 RETURN 950 FOR x=1 TO 2 960 IF d=1 THEN ? SPC(24) 965 IF d=1 THEN HOME 970 ? s$ 980 NEXT x 990 RETURN 16000 REM print files all 16010 FOR k=1 TO nu 16020 GOSUB 16500 16040 NEXT k 16050 RETURN 16500 REM ? file 16510 FOR y=1 TO 6 16520 IF ret=1 THEN IF LEFT$(f$(k, 1), 1)="*" THEN 16540 16524 IF d=1 THEN ? SPC(24); 16525 ? f$(k, y) 16530 NEXT y 16540 RETURN 17000 REM empty file 17005 IF nu=0 THEN nu=1: k=nu: RETURN 17010 FOR k=1 TO nu 17020 IF LEFT$(f$(k, 1), 1)="*" THEN RETURN 17030 NEXT k 17040 nu=nu+1 17050 k=nu 17060 RETURN 18000 REM WAIT 18005 IF d=1 THEN RETURN 18010 1145 a=pay: GOSUB 400 1150 a$(4)="***** Payment $"+a$+" " 1155 py$=a$ 1160 GOSUB 500: GOSUB 300 1165 PR #d 1170 GOSUB 900 1180 PR #2 1190 GOSUB 350 1200 IF y$<>"y" THEN GOTO 9990 1210 REM grow amort 1220 HOME 1240 PR #1 1250 ? 1260 ? "DATE PAYMENT PRINCIPAL INTEREST BALANCE" 1270 ? 1280 FOR x=1 TO (n-1) 1285 RESTORE 1290 GOSUB 200 1295 re=0 1300 ? m$; " "; y$; TAB(19-LEN(py$)); py$; 1301 pay=VAL(py$)*100 1310 i=p*r: i=i*100: i=INT(i) 1315 p1=pay-i+.1: p=p*100: p1=INT(p1) 1320 pate (mmyy) ?"; d$ 385 IF LEN(d$)<>4 THEN ? "Invalid Date ": GOTO 380 390 m=VAL(LEFT$(d$, 2)): y=VAL(RIGHT$(d$, 2)) 392 IF m<1 OR m>12 OR m<>INT(m) THEN 380 395 RETURN 400 REM pad # 405 c0=0: a$=STR$(a) 410 c$=RIGHT$(a$, 3) 415 IF LEFT$(c$, 1)="." THEN RETURN 420 c0=c0+1: a$=a$+"0" 425 IF c0<2 THEN 410 430 b=LEN(a$)-2 435 b$=LEFT$(a$, b)+"."+RIGHT$(a$, 2) 440 a$=b$ 445 FOR f=1 TO LEN(a$) 450 IF MID$(a$, f, 1)="." THEN a$=LEFT$(a$, f+2): RETURN 460 NEXT f 470 RETURN 500 REM (c)1984 Softsync 510 FOR x=1$(q), 2) 1485 IF LEN(a$(q))<>b+1 THEN 1450 1486 FOR z=1 TO b+1 1487 w=ASC(MID$(a$(q), z, 1)) 1488 IF w<>46 AND (w<48 OR w>57) THEN 1450 1489 NEXT z 1490 NEXT q 1495 p$=a$(1): i$=a$(3): pn$=a$(2) 1498 RETURN 1500 ? TAB(32-LEN(pn$)); pn$; TAB(16-LEN(i$)); i$; 1510 ? SPC(18-LEN(p$)); p$ 1520 RETURN 4000 REM future 4010 CLEAR 4015 RESTORE 4020 a$(1)="******* FUTURE VALUES *******" 4030 GOSUB 900 4040 VTAB 9 4050 INPUT "Initial Amount ?"; p 4060 INPUT "Interest rate ?"; i 4070 INPUT "Number of Years ?"; y 40"*Annual Int. Rate "+STR$(ai)+" " 7150 a$(4)="*Annual Increment $"+ic$+" " 7160 a$(5)="*Periods Per Year "+STR$(cp)+" " 7170 GOSUB 8900 7180 fv=INT(fv*100+.1): fv=fv/100: a=fv: GOSUB 400: fv$=a$ 7185 a$(6)="*Future Value $"+fv$+" " 7190 GOSUB 500 7200 GOSUB 900 7205 p3=ic 7210 GOSUB 300 7215 PR #d 7220 IF d=1 THEN GOSUB 900 7225 PR #2 7230 GOSUB 350 7235 IF y$<>"y" THEN GOTO 9990 7240 PR #1 7250 ? 7255 GOSUB 200 7260 ? "DATE INTEREST INCREMENT BALANCE" 72OSUB 500: GOSUB 900 4230 GOSUB 300 4240 PR #d 4250 IF d=2 THEN GOTO 4280 4260 GOSUB 900 4270 PR #2 4280 GOSUB 350 4290 IF y$<>"y" THEN 9990 4300 PR #1 4305 ? 4306 RESTORE: FOR x=1 TO m: READ m$: NEXT x 4310 ? "DATE INTEREST BALANCE" 4320 ? 4340 ? " Opening Balance ........"; SPC(20-LEN(p$)); p$ 4350 FOR j=1 TO cp 4355 GOSUB 4950 4360 IF j=cp THEN GOTO 4800 4370 i=p*int*100: i=INT(i) 4380 p=INT(p*100+.1) 4390 p1=p+i+.1: p1=INT(p1) 4400 GOSUB 1450 4450 p+.1) 7440 p=fv 7445 p1=INT(p3*100+.1) 7450 i=INT(p-p4-p1+.1) 7480 ret=1: GOTO 7362 7490 PR #2 7500 GOTO 9990 8800 FOR x=1 TO 12/c 8810 READ m$: IF m$="END" THEN y=y+1: RESTORE: GOTO 8810 8815 NEXT x 8820 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 8830 IF y=100 THEN y$="00" 8840 RETURN 8900 REM fval w/ainc 8910 ai=ai/100: ai=ai/cp 8920 p2=p 8930 FOR r=1 TO ny 8935 FOR j=1 TO cp 8940 p1=p2*ai+p2: p2=p1 8950 NEXT j 8955 p2=p2+ic 8960 NEXT r 8970 fv=p2 8975 p2=p 8980 RETURN 9990 ? "Press Any Key for Index" 99nnual 7010 HOME 7020 a$(1)="**FUTURE VALUE WITH INCREMENT*" 7030 GOSUB 900 7040 VTAB 8 7050 INPUT "Beginning Balance ?"; p 7054 INPUT "Number of Years ?"; ny 7055 IF ny<>INT(ny) THEN 7054 7060 a=p: GOSUB 400: p$=a$ 7070 INPUT "Periods Per Year ?"; cp 7075 IF cp<>INT(cp) THEN 7070 7080 INPUT "Annual Increment ?"; ic 7085 a=ic: GOSUB 400: ic$=a$ 7090 INPUT "Annual Interest Rate ?"; ai 7100 np=ny*cp 7110 RESTORE 7120 a$(1)="*Beginning Balance $"+p$+" " 7130 a$(2)="*Number of Years "+STR$(ny)+" " 7140 a$(3)=80 INPUT "Compoundings Per Year ?"; c 4090 IF c<>1 AND c<>2 AND c<>3 AND c<>4 AND c<>6 AND c<>12 THEN 4080 4100 cp=y*c 4110 int=i/c 4120 int=int/100 4130 a=p: GOSUB 400: p$=a$ 4135 a=i: GOSUB 400: i$=a$ 4140 a$(1)="*** Present Value $"+p$+" " 4150 a$(2)="*** Interest Rate "+i$+"% " 4160 a$(3)="*** Number of Years "+STR$(y)+" " 4170 a$(4)="*** Periods Per Year "+STR$(c)+" " 4180 fv=p*(1+int)^cp 4185 fv=INT(fv*100) 4190 fv=fv/100 4195 a=fv: GOSUB 400: fv$=a$ 4200 a$(5)="*** Future Value $"+fv$+" " 4220 G70 ? 7275 p2=p 7280 FOR r=1 TO ny 7290 FOR j=1 TO cp 7295 IF r=ny AND j=cp THEN 7435 7300 IF j<>cp THEN ic=0 7310 IF j=cp THEN ic=p3 7320 int=p2*ai: int=INT(int*100+.1) 7330 p2=INT(p2*100+.1) 7340 ic=INT(ic*100+.1) 7350 p4=int+p2+ic 7360 p=p4: p1=ic: i=int 7362 c=cp: GOSUB 8800 7365 GOSUB 1450 7370 ? m$; " "; y$; 7380 ? SPC(20-LEN(a$(3))); a$(3); 7390 ? SPC(25-LEN(a$(2))); a$(2); 7400 ? SPC(25-LEN(a$(1))); a$(1) 7410 p2=VAL(a$(1)) 7415 IF ret=1 THEN 7490 7420 NEXT j 7430 NEXT r 7435 fv=INT(VAL(fv$)*100=VAL(pn$) 4460 ? m$; " "; y$; SPC(30-LEN(i$)); i$; SPC(30-LEN(pn$)); pn$ 4500 NEXT j 4510 STOP 4800 REM last 4810 fv=VAL(fv$) 4820 fv=INT(fv*100+.1) 4825 p=INT(p*100+.1) 4830 i=fv-p+.1: i=INT(i) 4835 p1=fv 4840 GOSUB 1450 4850 ? m$; " "; y$; SPC(30-LEN(i$)); i$; SPC(30-LEN(pn$)); pn$ 4860 HOME 4865 PR #2 4870 GOTO 9990 4950 FOR x=1 TO 12/c 4952 READ m$: IF m$="END" THEN y=y+1: RESTORE: GOTO 4952 4953 NEXT x 4954 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 4955 IF y=100 THEN y$="00" 4960 RETURN 7000 REM a95 GET a$: IF a$="" THEN 9995 10000 REM main 10010 CLEAR 10020 DIM a$(6) 10040 COLOR =8 10050 HOME 10060 s$="******************************" 10070 GOSUB 950 10110 ? " THE PERSONAL ACCOUNTANT" 10120 ? " AMORTIZATION" 10125 GOSUB 950 10130 VTAB 9 10140 ? "1. LOAN AMORTIZATIONS": ?: ? "2. FUTURE VALUES": ? 10160 ? "3. FUTURE VALUES WITH INCREMENT" 10170 ?: ?: ? 10180 INPUT "Choose by Number>"; ch 10190 ON ch GOTO 1000, 4000, 7000 10200 RUN 1 THEN 7490 7420 NEXT j 7430 NEXT r 7435 fv=INT(VAL(fv$)*100 2727 North Loop West Suite 120 Houston, TX 77008 Singapore Airlines Robert Maxfield 1111 W Mockingbird Lane Suite 925 Dallas, TX 75247 Swissair Gio Fischer 8585 Stemmons Frwy 920 South Tower Dallas, TX 75247 44 286 15 checking savings charge card car loan car repair childcare rent entrtnment clothing utilities food pay LydiaIncome Texaco Telephone 19 d009+0003003.75 d000+0000000.00 l001+0000110.00 l000+0000000.00 e000+0000000.00 e000+0000000.00 e001+0000750.00 e000+0000000.00 e000+0000000.00 e000+0000000.00 e001+0000017.65 i002+0002035.50 i002+0000032.40 e001+0000037.20 e001+0000021.00 010889BalFwd +0000001200y01 010889BalFwd +0000001200y12 010889JanRent +0000000750y07 010889JanRent +0000000750y01 010889Typing +00000017.4y01 010889Typing +00000017.4y13 010889Busi Exp+00000037.2y14 010889Busi Exp+00000037.2y01 010889 +0000017.65y11 010889 +0000017.65y01 010889 +0000000110y03 010889 +0000000110y01 011489 +00000835.5y01 011489 +00000835.5y12 010889 +0000000021y15 010889 +0000000021y01 011589tutoring+0000000015y01 011589tutoring+0000000015y13 end " THEN 1000 10030 ? "Please place Program Tape into": ?: ? TAB(11); "Tape Drive." 10035 ?: ? "('q' = MENU - 'c' =Piedmont Airlines Terry Ehrlich 12100 Ford Road Suite 154 Dallas, TX 75234 Qantas Airways C. B. Dagilis 1990 Post Oak Rd Suite 790 Houston, TX 77056 Sabena Belgian Air Robert Griffin 8585 Stemmons Frwy 306 South Tower Dallas, TX 75247 ScandinavianAirlines Randy Pauer+.1) 7440 p=fv 7445 p1=INT(p3*100+.1) 7450 i=INT(p-p4-p1+.1) 7480 ret=1: GOTO 7362 7490 PR #2 7500 GOTO 9990 8800 FOR x=1 TO 12/c 8810 READ m$: IF m$="END" THEN y=y+1: RESTORE: GOTO 8810 8815 NEXT x 8820 y$=STR$(y): IF LEN(y$)<2 THEN y$="0"+y$ 8830 IF y=100 THEN y$="00" 8840 RETURN 8900 REM fval w/ainc 8910 ai=ai/100: ai=ai/cp 8920 p2=p 8930 FOR r=1 TO ny 8935 FOR j=1 TO cp 8940 p1=p2*ai+p2: p2=p1 8950 NEXT j 8955 p2=p2+ic 8960 NEXT r 8970 fv=p2 8975 p2=p 8980 RETURN 9990 ? "Press Any Key for Index" 9944 286 ingJsavingsL c 1 d001+0003003.75 end dcare rent entrtnment clothing utilities food pay LydiaIncome Texaco Telephone 19 d009+0003003.75 d000+0000000.00 l001+0000110.00 l000+0000000.00 e000+0000000.00 e000+0000000.00 e001+0000750.00 e000+0000000.00 e000+0000000.00 e000+0000000.00 e001+0000017.65 i002+0002035.50 i002+0000032.40 e001+0000037.20 e001+0000021.00 010889BalFwd +0000001200y01 010889BalFwd +0000001200y12 010889JanRent +0000000750y07 010889JanRent +0000000750y01 010889Typing +00000017.4y01 010889Typing +00000017.4y13 010889Busi Exp+00000037.2y14 010889Busi Exp+00000037.2y01 010889 +0000017.65y11 010889 +0000017.65y01 010889 +0000000110y03 010889 +0000000110y01 011489 +00000835.5y01 011489 +00000835.5y12 010889 +0000000021y15 010889 +0000000021y01 011589tutoring+0000000015y01 011589tutoring+0000000015y13 end " THEN 1000 10030 ? "Please place Program Tape into": ?: ? TAB(11); "Tape Drive." 10035 ?: ? "('q' = MENU - 'c' =10? " To run the accounting programs on this disk" 20? " version prepared for ADAM emulator," 30? " run SmartBASIC first, then run these programs." 2WFINCREPA2WnameAzeH:WamortizeAAWDataAALEFTIqACKS LEFTJDataBALEFTK?HELLOAADHLWBLOCKS LEFTOQ? CHR$(4); "RUN "; LEFT$(fl$(x+y), LEN(fl$(x+y))-1):IF d%=4 THEN ? 5 655? 1 660END 680? "SELECT ANOTHER"; :NORMAL:FOR de=1 TO 2500:NEXT 681VTAB 2:HTAB 1:? " "; 690VTAB v:HTAB h:? " "; :GOTO 340 700 e=ERRNUM(0):CLRERR 710IF e=8 THEN ? " READ ERROR. RE-INSERT MEDIA.":CLRERR:FOR t=1 TO 1400:NEXT:RUN 720TEXT:? "ERROR#"; e 790POKE 16953, 95:END 1000POKE 16953, 95:TEXT:END =161 AND h=3 THEN HTAB h:? " "; : h=18:HTAB h:? CHR$(27); 440IF p>163 THEN ? CHR$(7); :GOTO 340 490GOTO 350 60010? " To run the accounting programs on this disk version" 20? "prepared for ADAM emulator," 30? " run SmartBASIC first, THEN run these programs under it." FINCREPA2WnameAzeH:WamortizeAAWDataAALEFTIqACKS LEFTJDataBALEFTK?HELLOAADHLWBLOCKS LEFTOQREM run file 610 x=h/18: y=(v-3)*2 615HTAB 1 620IF fl$(x+y)="" THEN VTAB 2:FLASH:? CHR$(7); " CANNOT ACCESS-"; :GOTO 680 630IF RIGHT$(fl$(x+y), 1)="A" THEN 648 632IF RIGHT$(fl$(x+y), 1)="H" THEN 634 633VTAB 2:FLASH:? CHR$(7); " *** '"; RIGHT$(fl$(x+y), 1); "' FILE-"; :GOTO 680 634ONERR GOTO 700:IF PEEK(257)<>255 THEN POKE 16953, 95 635? CHR$(4); "brun "; LEFT$(fl$(x+y), LEN(fl$(x+y))-1) 640ONERR GOTO 700 645IF PEEK(257)<>255 THEN POKE 16953, 95 648ONERR GOTO 700:IF PEEK(257)<>255 THEN POKE 16953, 95 650