9:2 3BKMSMAINNAMETEMPSEARCHNAMESEARCHCITYFIRMADDCITYZIPPHONEQ2CATCCAT1CAT2CAT3CAT4CAT5CAT6CIVCIV2NAME2B4BFLAGFLAGFLAGOOPMENDISBRREBRTITLLQDUMMMARNLFLAGFLAGLXXLQLABELCLQFLAGSTSTRENNL1L1L2L2QPAGL1LNKEL1L1L2L1QL1L1IVLLLLTERERRLVERRXYB  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV ""** CHRISTMAS MAILING LIST **BY BILL LUKEROTHd##REVISION 0.3,WRITTEN 10/07/82MEMORY USED:32K==DESCRIPTION:mailing list,prints labels or address booksX;@(,$-@@(167<,._5 A6-BTXallows for 140 namesWW;,;A,;A,;@(,;@(,;@(,;@(,;@(,~~;@,;@,;@,;@,;@,;@%,;@%,;@%,;@%,;@%,;@%,Q<;@,;@,;A,;@,;@,I6. Q6. D6- 6. CATAGORY #,6-86-D6-76-A6-A +6-A76-AP+@%@)0@@C0@@]0@h(@(@ ӡ(@M!(@ MAILING LIST,(@7(@B(@M(@O-@@0,F:B2y,"@/'9 AOcheck start button=-@A '"36-@= A6- 0@@" ,#@@#+6(( CHOOSE ONE:(@SS(J .SEARCH FOR A LISTING(IN ORDER TO PRINT A MAILING LABEL,OR CHANGEJ$$( OR DELETE A LISTING).T( .ADD A LISTING.^,,($ .PRINT A COMPLETE 'ADDRESS BOOK'.h??(7 .PRINT MAILING LABELS FOR EVERYONE ON THE LIST.rII(A .CREATE A COMPLETELY NEW ADDRESS LIST(A NEW DATA BASE).|""( .CREATE A BACK-UP TAPE.( .END.$( (TYPE 1,2,3,4,5,6 OR 7$ X+' @)!@K(ANSWER MUST BE BETWEEN 1 AND 7.N(X AC CA0A0A0A0AA A %6-%@%!@AQQ(IINSERT THE DATA CASSETTE,REWIND TO START,PRESS 'PLAY' AND HIT 'RETURN'A#@@C:Aget data from cassette file`-@A($)@( `this loop does nothing but is required by Atari BASICQ@@*@7@D@Q@'@'4>:AS,A(67B:,%@,.6.( Ap%2@`@@9-@AP= _2b((2TURN RECORDER OFF,THEN PRESS 'START' TO CONTINUE. F:B2y,@A@+ ''A AAAp&&(WHAT NAME ARE YOU LOOKING FOR?6-@( A 6.6.&33(*WHAT CITY?(OPTIONAL.IF NOT NEEDED TYPE'N')06-@( A: 6.6.?6-@D-B:,&A AI& Ax"@'& AN"6.7<%A ,"6-S@@line 600 compares name$ and search$ character by characterX<-@B:,6.7<,*6.7<,36-@:,<6-@:,]!*%A(!6-@b "@A0l,6-%A' A,names matchv ))(!NO RECORD FOUND.ARE YOU SURE THAT.($(IS THE CORRECT SPELLING?. A4NAP&6.7@W<@,&6--@B:,! Ax!"@A7<,07<,6-@ "APM( FOUND ONE IN:(@("STILL SEARCHING FOR THE RIGHT ONE.C(M Av6.7@<@(,16.7@)<@V,H6.7@W<@,_6.7@<@,v6.7@<A,6.7A <A,O +'0@@@+ 1(7(=(C(I(O( t-@@)(DO YOU WANT TO:>( .PRINT A LABELY( .DELETE THIS LISTINGt( .CHANGE THIS LISTING( .RETURN TO MENU (CHOOSE 1,2,3 OR 4*!! @)!@A4''A@A A PAClabel printing routineH ApR/#@@P:/6-\ Arf Afile deletion routineH(D(8ARE YOU SURE THAT YOU WANT TO DELETE THIS(ENTER Y OR N)H0YA Au A[# 6.[(IIF LINE IS O.K. PRESS RETURN.IF NOT MAKE CHANGES AND THEN PRESS RETURN-#((HERE ARE YOUR CATAGORIES:)- Ab-@-@@! Ax!"@Ap ") B:,!(>:AS,#') Ap, B:, "67B:,%@,. , A@ A67B:,%@,.$ .(67&A<&@,.( AB$$new data base creation routineLc0@@@c(ATHIS IS GOING TO ERASE ANY ADDRESSES NOW IN MEMORY.IS THAT O.K.?V((ENTER Y OR N)`0YAj\ 6.\(IYOU'RE GOING TO HAVE TO FURNISH THE NAMES FOR 6 CATAGORIES.IF YOU DON'TtAA(9WANT TO NAME A PARTICULAR CATAGORY JUST PRESS 'RETURN'~((1 (2 (3 (4 (5 (6Z(V(JDOUBLE CHECK THE CATAGORIES,IF THEY ARE O.K. ENTER 'Y',IF NOT ENTER 'N'.Z7 0Y+-(LET'S TRY IT AGAIN:7 A0add a file routineM +'0@@@36-@?6-@F6.I#M ) B:,"(ALL FILES FULL) A<<(YOU MAY NOW ADD UP TO +&B:,,'A ADDRESSESm(ź(Ժ,(ٯԺM( Рź7@<@,m(Š7@<@,$$( ٺ7@<@,( ( ( Ab##@@K:-@@& Ax"@#& A8 "-(8move cursor to correct position AP 67B:,%@,. @E67B:,%@,.(A(!WANT TO ADD ANOTHER(ENTER Y OR N)E(#4YA2 Anaddress book routinexU0@@@U(3DO YOU WANT THE BOOK SORTED ALPHA- BETICALLY BY:4( .LAST NAME(.CITY%(OR4( .UNSORTED((ENTER 1,2 OR 3)! Ax!"@AP +'0@@@+ <( DO YOU WANT:F AbP Ab4 +((0( PLEASE STAND BY4 O6-@6-@'6-@36-@(OA`APA/6-@W6-@W'6-@/city$%%-B:,&A@6A0@'A"' A6--@AE6.7<%A ,16.7%A<%A,E"@A7-@@("6.7<,1@:,!AY76- 7-@@("6.7<,1@:,!AY76- 7<,/7<,A0=67<%A ,.167%A<%A,.=6-@  sorting completedn +6-@!6.Y.6-6@:6-Z@@P:d ARn Ae8($(DO YOU WANT ANOTHER COPY?8"@A((ENTER Y OR N)&4YA0 ADmass mailing routineNA0@@@A(DO YOU WANT MAILING LABELS FOR:X Ab Abb Apl:6-6A0@@P:: Aev A80@@@$6.8"AIee(]SINCE YOU HAVE CHANGED SOME FILES(OR CREATED NEW ONES)YOU MUST NOW SAVE THE DATA ON TAPE.aa(YINSERT THE CASSETTE,REWIND TO START,PRESS 'PLAY' AND 'RECORD' AND HIT 'RETURN'.MC(;MAKE SURE THAT YOU USE THE DATA TAPE, NOT THE PROGRAM TAPE.M AU##@@C:.-@A(**@. Q(@(@*(@7(@D(@Q(@H"P:B:,'A,B:,'A>6.7@:AS,$@*H(D(8DO YOU WANT TO MAKE A/ANOTHER BACK-UP TAPE(ENTER Y OR N)H44YA >"@A+ +(((PROGRAM TERMINATED.+ 6.6-@:)@$"AUAP:check return buttonG"A&*!@'6-&@367<,.;(>:,GbackspaceE!@* A#'6-&@2Econvert lower case to upper6! @2)!A#AP6mask out bad input)!!A"* A`AP)ditto567<,.>:,(>:,'6-%@5!AP AP, B:, "67B:,%@,. , AP$P7,(@ CATAGORY INDEX7(@Zo(@1.'(@2.9(@3.K(@4.](@5.o(@6.dq-@@ "(@& :-@@@J(@-N b-@@m(@q n$|]B7u@5'B7h@@9B7dKB7f]B7sA%H$Hper Atari this routine is necessary to help prevent tape errorsp:-@(>:@1,# :move cursor to rightz$89 (.(.(.'(.0(.9(.=$B=(.ALL OF THE ABOVE.9((ENTER 1,2,3,4,5,6 OR 7)=L$d*6-*printing control routinen$$-@B:,&A As Ax"@'$x6.7<%A ,}$$7@<@,4@Ae`"@AeP%%A:7A <A ,,Ae`t6-%@"@)6-=-@@@M(@-Q e-@@p(@t J-@B:,6.7<,(6-@:,4!AYJ67<,.>:&A(,M Mthis changes inverse characters back to normal,so we can print them Ar @$XI(E(9DO YOU WANT THE PHONE NUMBER ON THE LABEL(ENTER Y OR N)Ib(HOW MANY COPIESl$ -@% Ax"@'$*#(@7@<@(,C(@7@)<@V,c(@7@W<@,(@7@<@,46-@>J 4Y>(@7@<A,7A <A ,J6-@C"@6-@H -@(@ R   $L*6-@67<,.@*delete fileV$xF6-$F:B2y,"@06-@Fcheck option button$/!99routine to convert lower case letters to upper case4!H-@B:,"6-@:7<,,.!@D67<,.>:&@2,H 9! B:,!6.7@<,>!$(#error trapping routine2#36-F:A,3error # stored in location 195<#i%6-F:A,$AV%F:A,16-ierror line # stored at these locations,low byte firstF#Y0@@@*(>:AS,. Yturn screen pink,sound buzzer,reset trapP#!!!@* A8AZ#"AAAd#!!@*@An#OO(GINPUT ERROR.EITHER THE VALUE WAS OUTSIDE THE EXPECTED RANGE OR YOUs#H9(1INPUT A LETTER WHERE A NUMBER WAS CALLED FOR.<(H &@x#A8A#SS(KPRINTER OR TAPE ERROR.MAKE SURE THAT THE DEVICE IS TURNED ON AND ALL CABLE#5+(#CONNECTIONS SECURE,AND THEN CHOOSE:5 A0#!! A@)!ACA#**("TAPE ERROR.REWIND AND THEN CHOOSE:#( .RETURN TO MAIN MENU#( .END#O(((ENTER 1 OR 2) !Oreset trap before returning to main program#ApA#46-@%@0@4 # +# +'0@@9AR@M-@@turn screen red,turn cursor off;all hope is lost#\-@@%( FATAL ERRORG2@G@@\make warbler sound$-@@% $G-@@%( ̠G2@d@@$-@@% "$ ,$G('( FATAL ERROR  AT LINE =(DEBUG AND RESTART@(DG%""routine to disable break key%D6-F:@,!A',6-&A(8@DB7t%$'!!supplies data for line 1270'$$6,28,8,28,9,28,10,10,9,14,10,2 D2:XMASLIST