'=========================================================================== ' Subject: ARROWHEAD CO. ADDRESS BOOK Date: 07-19-97 (14:43) ' Author: Michael G. Stewart Code: QB, QBasic, PDS ' Origin: mikegs@juno.com Packet: MISC.ABC '=========================================================================== DECLARE SUB edits () DECLARE SUB views () DECLARE FUNCTION incen$ (row%, text$) DECLARE SUB enters () DECLARE SUB drawformat () DECLARE SUB center (row%, text$) DECLARE SUB intro () DECLARE SUB mainmenu () DECLARE SUB coolbox () DECLARE FUNCTION key$ () DECLARE SUB opens () DECLARE SUB new () CONST true = 1 CONST false = NOT true TYPE newfile person AS STRING * 7 names AS INTEGER adds AS INTEGER csz AS INTEGER phone AS INTEGER mail AS INTEGER END TYPE TYPE info names AS STRING * 36 address AS STRING * 30 city AS STRING * 10 state AS STRING * 2 zip AS STRING * 10 phonearea AS STRING * 3 phonepre AS STRING * 3 phonesuf AS STRING * 4 phoneext AS STRING * 4 mail AS STRING * 36 END TYPE DIM SHARED options AS newfile DIM SHARED form AS info intro mainmenu SUB center (row%, text$) LOCATE row%, 41 - (LEN(text$) / 2) PRINT text$ END SUB SUB coolbox LOCATE 1 PRINT " Û"; STRING$(70, "ß"); "Û" PRINT " ÛßÛ"; STRING$(70, "ß"); "ÛßÛ" PRINT "ÛßÛßß"; SPACE$(70); "ßßÛßÛ" FOR a% = 4 TO 20 LOCATE a%, 1: PRINT "Û Û"; SPACE$(74); "Û Û" NEXT a% PRINT "ÛÜÛÜÜ"; SPACE$(70); "ÜÜÛÜÛ" PRINT " ÛÜÛ"; STRING$(70, "Ü"); "ÛÜÛ" PRINT " Û"; STRING$(70, "Ü"); "Û" END SUB SUB drawformat title$ = "Address Book For " + options.person center 4, title$ IF options.names = true THEN LOCATE 6, 20 PRINT "Name: ____________________________________" END IF IF options.adds = true THEN LOCATE 7, 20 PRINT "Address: _________________________________" END IF IF options.csz = true THEN LOCATE 8, 20 PRINT "City: __________ State: __ Zip: _____-____" END IF IF options.phone = true THEN LOCATE 9, 20 PRINT "Phone: (___) ___-____ Ext. ____" END IF IF options.mail = true THEN LOCATE 10, 20 PRINT "E-Mail: __________________________________" END IF END SUB SUB edits COLOR 12 coolbox COLOR 13 OPEN "files.add" FOR RANDOM AS #1 LEN = LEN(options) * 10 a$ = incen$(4, "Your Name: ") DO a% = a% + 1 GET #1, a%, options IF options.person = a$ THEN EXIT DO LOOP COLOR 12 coolbox CLOSE #1 filename$ = options.person + ".add" OPEN filename$ FOR RANDOM AS #1 LEN = LEN(form) * 100 DO COLOR 13 drawformat a$ = incen$(5, "Number To Change: ") a% = VAL(a$) COLOR 14 IF options.names = true THEN LOCATE 6, 20: INPUT "Name: ", name$ form.names = name$ END IF IF options.adds = true THEN LOCATE 7, 20: INPUT "Address: ", address$ form.address = address$ END IF IF options.csz = true THEN LOCATE 8, 20: INPUT "City: ", city$ form.city = city$ LOCATE 8, 37: INPUT "State: ", state$ form.state = state$ LOCATE 8, 47: INPUT "Zip: ", zip$ form.zip = zip$ END IF IF options.phone = true THEN LOCATE 9, 20: INPUT "Phone: (", phone$ form.phonearea = phone$ LOCATE 9, 31: INPUT ") ", phone$ form.phonepre = phone$ LOCATE 9, 36: INPUT "-", phone$ form.phonesuf = phone$ LOCATE 9, 41: INPUT " Ext. ", phone$ form.phoneext = phone$ END IF IF options.mail = true THEN LOCATE 10, 20: INPUT "E-Mail: ", mail$ form.mail = mail$ END IF PUT #1, a%, form center 12, "dit Another | ew Entry | ain Menu" DO a$ = UCASE$(key$) IF a$ = "E" THEN EXIT DO IF a$ = "N" THEN enters IF a$ = "M" THEN CLOSE #1: mainmenu LOOP LOOP END SUB SUB enters COLOR 12 coolbox COLOR 13 OPEN "files.add" FOR RANDOM AS #1 LEN = LEN(options) * 10 a$ = incen$(4, "Your Name: ") DO a% = a% + 1 GET #1, a%, options IF options.person = a$ THEN EXIT DO LOOP COLOR 12 coolbox CLOSE #1 filename$ = options.person + ".add" OPEN filename$ FOR RANDOM AS #1 LEN = LEN(form) * 100 a% = 1 DO COLOR 13 drawformat COLOR 14 IF options.names = true THEN LOCATE 6, 20: INPUT "Name: ", name$ form.names = name$ END IF IF options.adds = true THEN LOCATE 7, 20: INPUT "Address: ", address$ form.address = address$ END IF IF options.csz = true THEN LOCATE 8, 20: INPUT "City: ", city$ form.city = city$ LOCATE 8, 37: INPUT "State: ", state$ form.state = state$ LOCATE 8, 47: INPUT "Zip: ", zip$ form.zip = zip$ END IF IF options.phone = true THEN LOCATE 9, 20: INPUT "Phone: (", phone$ form.phonearea = phone$ LOCATE 9, 31: INPUT ") ", phone$ form.phonepre = phone$ LOCATE 9, 36: INPUT "-", phone$ form.phonesuf = phone$ LOCATE 9, 41: INPUT " Ext. ", phone$ form.phoneext = phone$ END IF IF options.mail = true THEN LOCATE 10, 20: INPUT "E-Mail: ", mail$ form.mail = mail$ END IF PUT #1, a%, form a% = a% + 1 center 12, "ew Entry | dit Entry | ain Menu" DO a$ = UCASE$(key$) IF a$ = "N" THEN EXIT DO IF a$ = "E" THEN edits IF a$ = "M" THEN CLOSE #1: mainmenu LOOP LOOP END SUB FUNCTION incen$ (row%, text$) LOCATE row%, 41 - ((LEN(text$) + 5) / 2) PRINT text$; INPUT "", temp$ incen$ = temp$ END FUNCTION SUB intro CLS COLOR 1 coolbox COLOR 2 center 5, "Arrowhead Corporation's" COLOR 3 center 7, "ÜÜÜÜÜ ÜÜÜÜ ÜÜÜÜ ÜÜÜÜ ÜÜÜÜÜ ÜÜÜÜ ÜÜÜÜ" center 8, "Û Û Û Û Û Û Û Û Û Û Û " center 9, "ÛßßßÛ Û Û Û Û ÛÛßß Ûßßß ßßßÜ ßßßÜ" center 10, "Û Û Û Û Û Û Û ßÜ Û Û Û" center 11, "ß ß ßßßß ßßßß ß ß ßßßßß ßßßß ßßßß " center 13, "ÜÜÜÜ ÜÜÜ ÜÜÜ Ü Ü" center 14, "Û Û Û Û Û Û Û Üß " center 15, "ÛßßßÜ Û Û Û Û ÛÛ " center 16, "Û Û Û Û Û Û Û ßÜ " center 17, "ßßßß ßßß ßßß ß ß" COLOR 20 center 19, "Press Any Key" DO WHILE INKEY$ = "": LOOP END SUB FUNCTION key$ DO kbd$ = "" kbd$ = INKEY$ IF kbd$ <> "" THEN EXIT DO LOOP key$ = kbd$ END FUNCTION SUB mainmenu COLOR 5 coolbox COLOR 6 center 4, "MAIN MENU" center 5, "-------------" COLOR 7 center 6, "ew " center 7, "pen" center 8, "uit" DO a$ = UCASE$(key$) IF a$ = "N" THEN new IF a$ = "O" THEN opens IF a$ = "Q" THEN COLOR 8: coolbox: center 12, "Copyright (C) 1997, Arowhead Corporation": SYSTEM BEEP LOOP END SUB SUB new COLOR 8 coolbox COLOR 9 center 4, "New Address Book" center 5, "--------------------" COLOR 10 person$ = incen$(6, "Your Name: ") options.person = person$ name$ = LCASE$(incen$(7, "Name Line? [y,n] ")) IF name$ = "y" THEN options.names = true ELSE options.names = false END IF add$ = LCASE$(incen$(8, "Address Line? [y,n] ")) IF add$ = "y" THEN options.adds = true ELSE options.adds = false END IF ctstzp$ = LCASE$(incen$(9, "City,State,Zip Line? [y,n] ")) IF ctstzp$ = "y" THEN options.csz = true ELSE options.csz = false END IF phone$ = LCASE$(incen$(10, "Phone Line? [y,n] ")) IF phone$ = "y" THEN options.phone = true ELSE options.phone = false END IF mail$ = LCASE$(incen$(11, "E-Mail Line? [y,n] ")) IF mail$ = "y" THEN options.mail = true ELSE options.mail = false END IF OPEN "files.add" FOR RANDOM AS #1 LEN = LEN(options) * 10 DO a% = a% + 1 GET #1, a%, a$ IF a$ = "" THEN EXIT DO LOOP PUT #1, a%, options CLOSE #1 COLOR 11 coolbox COLOR 12 center 12, "File Created!" center 13, "Press Any Key To Begin Entering People" a$ = key$ enters END SUB SUB opens COLOR 12 coolbox COLOR 13 OPEN "files.add" FOR RANDOM AS #1 LEN = LEN(options) * 10 a$ = incen$(4, "Your Name: ") DO a% = a% + 1 GET #1, a%, options IF options.person = a$ THEN EXIT DO LOOP COLOR 12 coolbox CLOSE #1 filename$ = options.person + ".add" OPEN filename$ FOR RANDOM AS #1 LEN = LEN(form) * 100 a% = 1 DO GET #1, a%, form COLOR 13 drawformat COLOR 14 IF options.names = true THEN LOCATE 6, 26 PRINT form.names END IF IF options.adds = true THEN LOCATE 7, 29 PRINT form.address END IF IF options.csz = true THEN LOCATE 8, 26 PRINT form.city LOCATE 8, 44 PRINT form.state LOCATE 8, 52 PRINT form.zip END IF IF options.phone = true THEN LOCATE 9, 28 PRINT form.phonearea LOCATE 9, 33 PRINT form.phonepre LOCATE 9, 37 PRINT form.phonesuf LOCATE 9, 47 PRINT form.phoneext END IF IF options.mail = true THEN LOCATE 10, 28 PRINT form.mail END IF center 12, "ext Entry |

revious Entry | ain Menu" DO a$ = UCASE$(key$) IF a$ = "N" THEN a% = a% + 1: EXIT DO IF a$ = "P" THEN a% = a% - 1 IF a% = 0 THEN a% = 1 EXIT DO END IF IF a$ = "M" THEN CLOSE #1: mainmenu LOOP LOOP END SUB