10 MODE7:TIME=0:VDU23;8202;0;0;0;23;8,144,0;0;0;23;9,9,0;0;0;29;10,&69,0;0;0;23;11,9,0;0;0;:PROCinfo:PROCmenu:END 20 DEFPROCmenu:VDU26:CLS:OSCLI"FX15,0":*FX21,0 30 PROCtitle:ch=0: 40 IFH=50 H=51 50 PRINTTAB(0,0); 60 VDU132,157,141:PRINT"‡1 ";CHR$(156)"creste dsts":VDU132,157,141:PRINT"‡1 ";CHR$(156)"CreAte dAtA" 70 VDU132,157,141:PRINT"‡2 ";CHR$(156)"sesrch for dsts by nsme":VDU132,157,141:PRINT"‡2 ";CHR$(156)"seArCh fOr dAtA by nAme" 80 VDU132,157,141:PRINT"‡3 ";CHR$(156)"sesrch for sddress":VDU132,157,141:PRINT"‡3 ";CHR$(156)"seArCh fOr Address" 90 VDU132,157,141:PRINT"‡4 ";CHR$(156)"sesrch for dste of birth":VDU132,157,141:PRINT"‡4 ";CHR$(156)"seArCh fOr dAte Of birth" 100 VDU132,157,141:PRINT"‡5 ";CHR$(156)"chsnge sex":VDU132,157,141:PRINT"‡5 ";CHR$(156)"ChAnge sex" 110 VDU132,157,141:PRINT"‡6 ";CHR$(156)"chsnge telephone number":VDU132,157,141:PRINT"‡6 ";CHR$(156)"ChAnge telephOne nUMber" 120 VDU132,157,141:PRINT"‡7 ";CHR$(156)"look st dsts":VDU132,157,141:PRINT"‡7 ";CHR$(156)"lOOk At dAtA" 130 VDU132,157,141:PRINT"‡8 ";CHR$(156)"ssve dsts":VDU132,157,141:PRINT"‡8 ";CHR$(156)"sAVe dAtA" 140 VDU132,157,141:PRINT"‡9 ";CHR$(156)"losd dsts":VDU132,157,141:PRINT"‡9 ";CHR$(156)"lOAd dAtA" 150 VDU132,157,141:PRINT"‡A ";CHR$(156)"ststus":VDU132,157,141:PRINT"‡A ";CHR$(156)"stAtus" 160 A$=INKEY$(1) 170 IF A$="1" OR A$="!" PROCcreate ELSE IF A$="9" OR A$=")" PROCload ELSE IF A$="A" OR A$="a" PROCstatus ELSE IF A$="*" OR A$=":" PROCsystem ELSE IF A$<>"" AND check1=0 GOTO50 180 IF A$="2" OR A$=CHR$(34) PROCname ELSE IF A$="3" OR A$="#" PROCaddress ELSE IF A$="4" OR A$="$" PROCdob ELSE IF A$="5" OR A$="%" PROCsex ELSE IF A$="6" OR A$="&" PROCtel 190 IF A$="7" OR A$="'" PROClook ELSE IF A$="8" OR A$="(" PROCsave 200 IF A$="8" OR A$="(" PROCsave 210 GOTO50:ENDPROC 220 DEFPROCinfo:PROCvar:printer=0:filename$="NO FILENAME":max=50:max1=300:H=1:DIM nm(max1),st$(max1),town$(max1),country$(max1),name$(max1),DOB$(max1),SEX$(max1),TEL$(max1):check=0:check1=0:ENDPROC 230 DEFPROCcreate:check1=1:CLS:IF H>=max PRINTTAB(0,3);:VDU132,157:PRINT"ƒSORRY,SAVE THE CURRENT DATA AND":VDU132,157:PRINT"ƒWIPE THE MEMORY":GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 240 VDU132,157,141:PRINT"ƒcreste new sddress ";CHR$(156):VDU132,157,141:PRINT"†creAte new Address ";CHR$(156):VDU28,0,24,39,7 250 PRINTTAB(10);:VDU132,157:PRINT"ƒADDRESS No.";H''"ADDRESS"'"•```````" 260 INPUTLINE"‚HOUSE NUMBER :‡"nm(H):IF nm(H)=0 AND nm(H)=VAL(CHR$(13)) VDU11:GOTO 260 270 INPUTLINE"ƒSTREET NAME :‡"st$(H):IF st$(H)="" VDU11:GOTO270 280 PRINT"TOWN NAME":INPUTLINE"(INCLUDE COUNTY):‡"town$(H):IF town$(H)="" VDU11:VDU11:GOTO280 290 INPUTLINE"†COUNTRY :‡"country$(H):IF country$(H)="" VDU11:GOTO 290 300 PRINT'"ƒNAME"'"•````" 310 INPUTLINE"‡NAME OF OCCUPIER: "name$(H):IF name$(H)="" VDU11:GOTO310 320 INPUTLINE"†DATE OF BIRTH :‡"DOB$(H):IF DOB$(H)=""VDU11:GOTO320 330 INPUTLINE"„SEX (M/F) :‡"SEX$(H):IF SEX$(H)="" VDU11:GOTO 330 340 IF SEX$(H)="M" OR SEX$(H)="m" SEX$(H)="MALE" ELSE IF SEX$(H)="F" OR SEX$(H)="f" SEX$(H)="FEMALE" 350 INPUTLINE"‚TELEPHONE No. :‡"TEL$(H):IF TEL$(H)="" VDU11:GOTO 350 360 PROCline2(7):PRINT"†PRESSR†TO RETURN TO THE MENU OR "'"†PRESS ANY KEY TO CARRY ON...":G$=GET$ 370 IF H=max CLS:PROCmenu:ENDPROC 380 H=H+1:IF G$="R" OR G$="r" CLS:PROCmenu:ENDPROC 390 CLS:GOTO 250:ENDPROC 400 DEFPROClook:CLS:Z=1 410 VDU132,157,141:PRINT"ƒlooking st dsts ";CHR$(156):VDU132,157,141:PRINT"†lOOkiNg At dAtA ";CHR$(156):VDU28,0,24,39,5 420 PROCfoundit(Z):PRINT"‡FOR MAIN MENU PRESS‚R‡OR PRESS ANY":PRINT"‡KEY TO CONTINUE";:GT$=GET$ 430 IF GT$="R" OR GT$="r" OR Z=H-1 VDU26:CLS:PROCmenu:ENDPROC 440 Z=Z+1:CLS:GOTO420 450 DEFPROCline:PRINT"’,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,":ENDPROC 460 DEFPROCname:CLS 470 VDU132,157,141:PRINT"ƒsesrching for file ";CHR$(156):VDU132,157,141:PRINT"†SeArching for file ";CHR$(156):VDU28,0,24,39,6 480 PRINT"ƒNAME (SEARCHING FOR) :‡";:INPUT""name1$ 490 T=1 500 IF name$(T)=name1$ check=1:PROCfoundit(T):PROCnameit 510 IF T=H GOTO 530 520 T=T+1:GOTO500 530 PROCline:PRINT"ƒCAN'T FIND IT..SORRY!!":PROCline:GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 540 DEFPROCaddress:CLS 550 VDU132,157,141:PRINT"ƒsesrching for sddress ";CHR$(156):VDU132,157,141:PRINT"†SeArching for Address ";CHR$(156):VDU28,0,24,39,6 560 PRINT"WHICH ADDRESS FILE DO YOU WISH TO ":PRINT"”`````````````````````````````````"'"CHANGE ?"'"”````````":INPUT">>>‡"number 570 IF number>H-1 CLS:GOTO 560 580 CLS:PRINT'"ADDRESS"'"•```````" 590 INPUTLINE"ƒHOUSE NUMBER :‡"nm(number):INPUTLINE"…STREET NAME :‡"st$(number):INPUTLINE"†TOWN NAME :‡"town$(number):INPUTLINE"COUNTRY :‡"country$(number):VDU26:CLS:PROCmenu:ENDPROC 600 DEFPROCdob:CLS 610 VDU132,157,141:PRINT"ƒsesrching for dste of birth ";CHR$(156):VDU132,1S7,141:PRINT"†SeArching for date of birth ";CHR$(156):VDU28,0,24,39,6 620 PRINT"WHICH ADDRESS FILE DO YOU WISH TO ":PRINT"”`````````````````````````````````"'"CHANGE ?"'"”````````":INPUT">>>‡"number 630 IF number>H-1 CLS:GOTO 620 640 CLS:PRINT'"OLD DATE OF BIRTH :‡";DOB$(number):PROCline:PRINT"…NEW DATE OF BIRTH :‡";:INPUT""DOB$(number) 650 VDU26:CLS:PROCmenu:ENDPROC 660 DEFPROCsex:CLS 670 VDU132,157,141:PRINT"ƒchsnging sex ";CHR$(156):VDU132,157,141:PRINT"†ChANgiNg sex ";CHR$(156):VDU28,0,24,39,6 680 PRINT"WHICH ADDRESS FILE DO YOU WISH TO ":PRINT"”`````````````````````````````````"'"CHANGE ?"'"”````````":INPUT">>>‡"number 690 IF number>H-1 CLS:GOTO 680 700 CLS:PRINT'"ƒOLD SEX :‡";SEX$(number):PROCline:PRINT"†NEW SEX :‡";:INPUT""SEX$(number):VDU26:CLS:PROCmenu:ENDPROC 710 DEFPROCtel:CLS 720 VDU132,157,141:PRINT"ƒchsnge telephone number ";CHR$(156):VDU132,157,141:PRINT"†ChANge telephONe NuMber ";CHR$(156):VDU28,0,24,39,6 730 PRINT"WHICH ADDRESS FILE DO YOU WISH TO ":PRINT"”`````````````````````````````````"'"CHANGE ?"'"”````````":INPUT">>>‡"number 740 IF number>H-1 CLS:GOTO 730 750 CLS:PRINT'"‚OLD TELEPHONE No.:‡";TEL$(number):PROCline:PRINT"…NEW TELEPHONE No.:‡";:INPUT""TEL$(number):VDU26:CLS:PROCmenu:ENDPROC 760 DEFPROCfoundit(T):CLS 770 IF check=1 PRINT"†FOUND‡";name$(T):GOTO790 780 PRINTTAB(10);CHR$(132);CHR$(157)"‡ADDRESS FILE :ƒ";T 790 PRINT"HOUSE NUMBER‡";nm(T):PROCline:PRINT"‚STREET NUMBER‡";st$(T):PROCline:PRINT"ƒTOWN NAME‡";town$(T):PROCline:PRINT"„COUNTRY‡";country$(T):PROCline 800 PRINT"…OCCUPIER'S NAME‡";name$(T):PROCline:PRINT"†DATE OF BIRTH‡";DOB$(T):PROCline:PRINT"SEX (MALE = M FEMALE = F)‡";SEX$(T):PROCline:PRINT"‚TELEPHONE No.‡";TEL$(T):PROCline:ENDPROC 810 DEFPROCsave:CLS 820 PRINT"†UNDER WHAT FILENAME SHOULD THE DATA"'"†BE STORED UNDER ?":PROCline:INPUT"…>>>‡"filename$ 830 IF LEN(filename$)>7 PROCline:PRINT"†NAME OF FILE IS TOO LONG !!":PROCline:GT$=GET$:CLS:GOTO 820 840 CH%=OPENOUT(filename$) 850 FOR T=1 TO max 860 PRINT#CH%,nm(T),st$(T),town$(T),country$(T),name$(T),DOB$(T),SEX$(T),TEL$(T) 870 NEXT 880 PRINT#CH%,check,check1,filename$,max1,max,H,printer 890 CLOSE#0 900 PROCline:PRINT"ƒTHE FILE";filename$;"ƒHAS BEEN SAVED":PROCline:GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 910 DEFPROCload:CLS 920 VDU132,157,141:PRINT"ƒloading option ";CHR$(156):VDU132,157,141:PRINT"†lOAdiNg OptiON ";CHR$(156):VDU28,0,24,39,6 930 PROCline:PRINT"†UNDER WHAT FILENAME IS THE DATA"'"†SAVED UNDER ?":PROCline:INPUT"…>>>‡"filename$ 940 IF LEN(filename$)>7 PROCline:PRINT"ƒNAME OF FILE IS TOO LONG !!":PROCline:GT$=GET$:CLS:GOTO 930 950 CH%=OPENIN(filename$) 960 FOR T=1 TO max 970 INPUT#CH%,nm(T),st$(T),town$(T),country$(T),name$(T),DOB$(T),SEX$(T),TEL$(T) 980 NEXT 990 INPUT#CH%,check,check1,filename$,max1,max,H,printer 1000 CLOSE#0 1010 PROCline:PRINT"ƒTHE FILE";filename$;"ƒHAS BEEN LOADED":PROCline:GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 1020 DEFPROCline2(X):PRINTCHR$(144+X)",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,":ENDPROC 1030 DEFPROCnameit:PROCline:INPUTLINE"ƒENTER NEW NAME‡:"name$(T):VDU26:CLS:PROCmenu:ENDPROC 1040 DEFPROCstatus:CLS 1050 PROCtime 1060 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡NO.OF ADDRESSES CREATED :ƒ";H-1;TAB(36);CHR$(156) 1070 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡MAXIMUM NUMBER OF ADDRESSES :ƒ";max;TAB(36);CHR$(156) 1080 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡FILENAME IN MEMORY :ƒ";filename$;TAB(36);CHR$(156) 1090 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"ON MENU PRESSˆ*‰TO ENTER OPERATING";TAB(36);CHR$(156):VDU132,157:PRINT"SYSTEM";TAB(36);CHR$(156) 1100 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡*TELEPHONE :ƒPRINTS OUT ALL ";TAB(36);CHR$(156):VDU132,157:PRINT"‡ ƒTELEPHONE No.'s ";TAB(36);CHR$(156) 1110 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡*PRINTƒ: SENDS DATA TO PRINTER";TAB(36);CHR$(156) 1120 VDU132,157:IF printer=0 PRINTTAB(9)"ƒPRINTER ISOFF";TAB(36);CHR$(156) ELSE IF printer=1 PRINTTAB(9)"ƒPRINTER ISON";TAB(36);CHR$(156) 1130 PRINT"”/////////////////////////////////////":VDU132,157:PRINT"‡*CLRƒ: CLEAR ALL DATA";TAB(36);CHR$(156):VDU132,157:PRINT"‡*MAXƒ: CHANGE NUMBER OF DATA FILES";TAB(36);CHR$(156) 1140 IFch=1 GT$=GET$:VDU26:CLS:PROCtitle:ENDPROC 1150 GT$=INKEY$(1) 1160 IFGT$<>"" VDU26:CLS:PROCmenu:ENDPROC ELSE GOTO1050 1170 DEFPROCsystem:CLS 1180 VDU129,157:PRINT"‡TYPEˆ*HELP‰FOR INFORMATION";TAB(36);CHR$(156) 1190 VDU28,0,23,39,7 1200 INPUT"*"cmd$ 1210 IF cmd$="RETURN" OR cmd$="return" VDU26:CLS:PROCmenu:ENDPROC ELSE IF cmd$="TELEPHONE" OR cmd$="telephone"PROCtel2 ELSE IF cmd$="help" OR cmd$="HELP" PROChelp ELSE IF cmd$="status" OR cmd$="STATUS" ch=1:PROCstatus:GOTO1200 1220 IF cmd$="PON" OR cmd$="pon" printer=1:PRINT"‡PRINTER CONNECTED":GOTO1200 ELSE IF cmd$="POFF" OR cmd$="poff" printer=0:PRINT"‡PRINTER OFF":GOTO1200 1230 IF cmd$="BYE" OR cmd$="bye" PROCbye ELSE IF cmd$="TIME" OR cmd$="time" CLS:PROCwait ELSE IF cmd$="print" OR cmd$="PRINT" PROCprint:GOTO1200 1240 IF cmd$="MAX" OR cmd$="max" PROCmax:GOTO1200 ELSE IF cmd$="CLR" OR cmd$="clr" PROCclear:GOTO1200 1250 ONERRORPRINT"BAD COMMAND.PLEASE TRY AGAIN.":GOTO1200 1260 OSCLI(cmd$) 1270 GOTO 1200:ENDPROC 1280 DEFPROChelp:PROCline2(1):PRINT"‡*RETURN,*TELEPHONE,*STATUS,*PRINT":PRINT"‡*PON,*POFF,*TIME,*BYE,*MAX,*CLR":PROCline2(1):ENDPROC 1290 DEFPROCtel2:VDU26:CLS:PROCtitle:J=1:VDU14 1300 IFname$(1)="" PROCline2(5):PRINT"ƒSORRY,THERE IS NO DATA.":PROCline2(5):GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 1310 PRINT"ƒNAME… TELEPHONE NUMBER":PROCline2(2) 1320 PRINTTAB(0)"";name$(J);TAB(18);TEL$(J) 1330 IF J MOD 15=0 PROCline2(2):PRINT"ƒPRESS ANY KEY TO CONTINUE":J=J+1:GT$=GET$:CLS:GOTO 1310 1340 IF J=H PROCline2(2):PRINT"ƒPRESS ANY KEY TO CONTINUE":GT$=GET$:VDU26:CLS:PROCmenu::ENDPROC 1350 J=J+1:GOTO1320:ENDPROC 1360 DEFPROCtitle:VDU132,157,141:PRINT"address book‚by†s.s.shskoor‡'91 ";CHR$(156);:PRINT::VDU132,157,141:PRINT"‡ADDrESS BOOKƒby…A.S.ShAkOOr‡'91 ";CHR$(156):PRINT"‘ ``````````````````````````````````":VDU28,0,24,39,3:ENDPROC 1370 DEFPROCvar:SEC=(TIME DIV 100)MOD 60:MIN=(TIME DIV 6000)MOD 60:HR=(TIME DIV 360000)MOD 24:ENDPROC 1380 DEFPROCprint:CLS:IF printer=0 CLS:PRINT"PRINTER CONNECTION OFF":ENDPROC 1390 CLS:PRINTTAB(0,3)"PRINTING ALL DATA..ˆ>":vb=1 1400 VDU2,1,27,1,120,1,0,1,27,1,77,1,27,1,69,1,27,1,87,1,1 1410 PRINTSTRING$(39,"-") 1420 PRINT"NAME : "name$(vb)'"SEX..";SEX$(vb)'"DATE/BIRTH : ";DOB$(vb)'"TELEPHONE No. : ";TEL$(vb)''"ADDRESS"'"HOUSE NUMBER : ";nm(vb)'"STREET : ";st$(vb)'"TOWN : ";town$(vb)'"COUNTRY : ";country$(vb):PRINTSTRING$(39,"-") 1430 IF vb=H VDU3:PRINT"‡FINISHED SENDING DATA TO PRINTER..":GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 1440 DEFPROCtime:PROCvar:PRINTTAB(0,0)"”ppppppppppppppppppppppppppppppppppppp":VDU129,157:PRINT"ƒADDRESS BOOK‡has been running for";TAB(36);CHR$(156):VDU129,157:PRINT"†";HR;"ƒHOURS†";MIN;"ƒMINUTES†";SEC;"ƒSECONDS";TAB(36);CHR$(156):ENDPROC 1450 DEFPROCwait 1460 PROCtime:LA$=INKEY$(1):IF LA$<>"" CLS:GOTO1200:ENDPROC ELSE GOTO 1460:ENDPROC 1470 DEFPROCbye:CLS:PRINT"‡THANK YOU FOR USINGƒADDRESS BOOK,"'"‡CREATED BY†A.SATTAR.SHAKOOR":OSCLI("BASIC"):END:ENDPROC 1480 DEFPROCmax:VDU26:CLS:PROCtitle 1490 VDU132,157:PRINT"‡MAXIMUM NUMBER OF DATA FILES IN";TAB(36);CHR$(156):VDU132,157:PRINT"‡CURRENT file is ";max;TAB(36);CHR$(156) 1500 PROCline2(4):VDU132,157:PRINT"ƒMAXIMUM NUMBER OF DATA FILES";TAB(36);CHR$(156):VDU132,157:PRINT"ƒALLOWED is ";max1;TAB(36);CHR$(156) 1510 PROCline2(4):VDU132,157:PRINT"†NEW NUMBER OF DATA FILES :";TAB(36);CHR$(156):VDU8,8,8,8,8,8,8,8,8,8:INPUT""max2 1520 IF max2>max1 OR max2<=0 CLS:GOTO1490 1530 max=max2:PROCline2(4):VDU132,157:PRINT"PRESS ANY KEY TO CONTINUE":GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 1540 DEFPROCclear:PROCline2(4):VDU132,157:PRINT"‡DO YOU WISH TO DELETE ALL THE DATA ";TAB(36);CHR$(156):VDU132,157:PRINT"‡IN THE COMPUTER'S MEMORY (Y/N) ?";TAB(36);CHR$(156):VDU8:GT$=GET$ 1550 IF GT$="Y" OR GT$="y" PRINT:PROCline2(4):VDU132,157:PRINT"ƒPLEASE WAIT...";TAB(36);CHR$(156):PROCdelete:PROCline2(4):VDU132,157:PRINT"†FINISHED DELETING.PRESS ANY KEY";TAB(36);CHR$(156):check1=0:GT$=GET$:VDU26:CLS:PROCmenu:ENDPROC 1560 VDU26:CLS:PROCmenu:ENDPROC 1570 DEFPROCdelete:FOR I=1 TO 300:nm(I)=0:st$(I)="":town$(I)="":country$(I)="":name$(I)="":DOB$(I)="":SEX$(I)="":TEL$(I)="":NEXT:ENDPROC