Sig/M.028 A Small Library for Pascal/Z Life/Wumpus Update NAD Accounts Receivable System Simple Doctor Billing Programs Home Remote Control Programs compiled by Charlie Foster -CATALOG.028 contents of Sig/M.028 -CATA028.ACK acknowledgement file CRCKLIST.028 checksum file index size names notes 28.01 4K LIBRARY.DOC A Small Library 28.02 2K ASL.REL / 28.03 1K CHAIN.REL / 28.04 1K CHAIN.SUB / 28.05 1K COMPILE.SUB / 28.06 1K HALT.REL / 28.07 1K HALT.SRC / 28.08 10K LIFE.COM variations of LIFE 28.09 9K LIFE.PAS / 28.10 10K LIFE-C.COM / 28.11 7K LIFE-C.C / 28.12 1K CAVE0 CAVE update 28.13 1K CAVE1 / 28.14 1K CAVE2 / 28.15 1K CAVE3 / 28.16 1K CAVE4 / 28.17 1K CAVE5 / 28.18 6K WADUZIT.COM waduzit do? 28.19 4K WADUZIT.DOC / 28.20 7K WADUZIT.PAS / 28.21 18K NAD.COM NAD Accounts Receivable System 28.22 12K NAD.PAS / 28.23 6K NAME&ADD.DOC / 28.24 25K RECEIVAB.COM / 28.25 17K RECEIVAB.PAS / 28.26 12K ACTTREC.DOC / 28.27 20K DISKBILL.PAS simple doctor billing programs 28.28 9K RECMAKE.PAS / 28.29 1K ANDMSK.SRC home remote control programs 28.30 2K EXORG.SRC / 28.31 3K COMPARE.PAS / 28.32 1K ORMSK.SRC / 28.33 2K REMOTE.SRC / 28.34 2K PROG.DOC / Thió disë ió aî importanô one® Raù Penleù haó beeî aô iô again® Reaä hió Library.Doã anä you'lì seå whaô hå haó iî mind® É agreå witè hií anä verù sooî wå wilì havå á LIBRARÙ DISK® Ho÷ tï pasó up-dateó ió ouò onlù problem® Sï iæ yoõ havå anù suggestions¬ speaë up® Theså arå thå starô oæ ouò ASÌ (Á Smalì Library© mostlù bù Raù Penley. LIBRARY.DOC ASL.REL HALT.REL CHAIN.REL CHAIN.SUB HALT.SRC COMPILE.SUB Raù haó giveî uó ouò firsô gamå updatå also® Thå caveó arå froí Wumpuó whicè ió oî Sig/M.021® Cave³ haä ° recordó iî it® Sï no÷ Wumpuó wilì bå complete® Thå Lifå programó arå gameó alsï buô witè á educationaì slant® You'lì noticå thaô onå ió iî Pascal/Ú buô thå otheò ió iî "C"® Thå Ã versioî seemó tï bå faster® Thå thoughô wå havå ió thaô iô ió thå waù Ã ió writteî ratheò thaî aî inherenô superiority® Doeó anyonå havå anù commenô aó tï thå pro'ó oò con'ó oæ whù thaô is? LIFE.COM LIFE-C.COM CAVE0,1,2,3,4,5 LIFE.PAS LIFE-C.C Foò thoså whï likå tï mesó around¬ thå followinç prograí waó publisheä anä theî converteä tï "C"¬ Pascaì anä É don'ô kno÷ whaô otheò languages® Itó á real¬ short¬ simplå language® Raù seú itó aî examplå oæ whaô á higè languagå likå Pascaì caî do® Reaä thå Doc. WADUZIT.COM/PAS/DOC Craiç Rudliî takeó crediô foò theså wonderfuì programs® Craiç isn'ô tï faò ofæ froí beinç ablå tï puô hió programó uð oî á commerciaì footing® Thå firsô ió á NAÄ prograí witè somå interestinç technques® You'lì havå tï bå alerô however¬ theù arå slightlù hardwarå dependent® Thå Cursoò controì ió foò á Soroã oò á Televideo® Naturally¬ witè thå blocë structurå oæ Pascaì thå changeó arå easù tï make® Thå seconä prograí ió á smalì accountó receivablå modulå thaô workó witè thå NAD® Iî additioî tï thå programó themselves¬ bå surå anä looë aô Craig'ó functionó anä procedureó (iî facô paù attentioî tï anyone'ó foò ne÷ sampleó tï use)¬ hå haä á probleí witè EOÆ anä founä á waù arounä it. NAD.PAS/COM RECEIVAB.PAS/COM NAME&ADD.DOC ACTTREC.DOC Sincå Craiç donateä thió kerneì foò á starô iî Pascal/Ú businesó softwarå É havå beeî lookinç arounä foò thingó tï add® É founä á UCSÄ prograí calleä Diskbill® Iô ió á simplå billinç prograí foò á Doctoò sï É addeä iô tï thió bunch® Thå firsô onå whï convertó iô tï "Z¢ wilì oæ courså wiî á freå disk. Š DISKBILL.PAS Boâ Miller¬ oæ Saî Jose,Ca¬ donateä theså foò ouò use® Reaä thå Prog.Doã first® Iô provideó somå morå tooló foò us® Aî interestinç piecå ió thå Remote.SRC¬ iô foò thå home remote control units. ANDMSK.SRC EXORG.SRC COMPARE.PAS ORMSK.SRC REMOTE.SRC PROG.DOC LIBRARY MAINTENANCE by Ray Penley Wå havå founä thaô somå oæ thå memberó arå havinç problemó creatinç theiò owî librarieó oæ commonlù useä routines® Aó yoõ kno÷ iô ió oæ primarù importancå tï havå á librarù oæ routineó thaô yoõ don'ô havå tï keeð writinç oveò anä oveò again® Wheî yoõ writå youò prograí yoõ onlù havå tï referencå thå routinå aó an external and then use the routine freely in your program. Wå arå goinç tï creatå á librarù oæ commonlù routineó presentlù founä iî thå "Ú Useró Group¢ librarù anä calì thió new library ASL.REL (A Small Library). Tï makå á librarù yoõ musô firsô havå á subroutinå assembleä intï á .REÌ file® Iæ yoõ neeä helð witè thió procedure¬ thå texô filå MAKEREL.DOÃ founä oî volumå #± shoulä be most helpful. Ruî thå linkeò buô enteò thå librariaî modå bù typinç /L:filename® Sincå wå wanô tï calì ouò librarù ASÌ letó starô bù typing: A>LINK /L:ASL No÷ yoõ specifù thå fileó tï bå includeä iî thå library® *** REMARKS *** *KEYIN found on volumes #3 and #4 *CHAIN found on Pascal/Z library disk *INPORT found on volume #3 *OUTPORT found on volume #3 *DELAY found on volume #3 *RANDOM found on volume #3 *HALT found on this volume */E Typing /E closes the output file NOTES: Iæ yoõ makå á mistakå yoõ caî alwayó restarô thå linkeò bù typing /R. Iæ á filå witè thå samå namå alreadù existó oî thå disë iô wilì bå deleteä anä theî á ne÷ filå wilì bå created¬ sï bå verù carefuì aô thió step. Thå ordeò oæ entrù intï thå librarù maù bå oæ somå importance® Sincå thå librarù ió loadeä iî onå pass¬ á modulå shoulä appeaò afteò iô haó beeî referenceä bù aî externaì symboì iî otheò modules. .pa Š No÷ iô ió á simplå matteò tï uså ouò ne÷ library® Letó uså the routine KEYIN in a sample program. Program DRead; { A program to directly read a char from the keyboard.} LABEL 1; VAR CH: CHAR; Procedure KEYIN(VAR C:CHAR); EXTERNAL; BEGIN WHILE TRUE DO BEGIN WRITE('ENTER A CHARACTER '); KEYIN(CH); IF ( ORD(CH)=3 ) THEN GOTO 1; WRITELN('YOU ENTERED A ',CH); END; 1: {EXIT HERE ON CONTROL-C} END.{ of DREAD } Now compile the program: A>PASCAL DREAD.BBB A>ASMBL MAIN,DREAD.BB/REL A>LINK /N:B:DREAD B:DREAD ASL/S /E That'ó alì therå ió tï it¡ Noticå thaô thå ne÷ librarù ió oî thå samå disë aó PASCAL.COM¬ ASMBL.COM¬ LIB.REÌ ANÄ LINK.COM® É havå writteî á submiô filå thaô wilì allo÷ yoõ tï compilå á prograí anä uð tï ³ additionaì librarù files® Executå thå submiô filå likå so: A>SUBMIT COMPILE PROGRAM DRIVE LIBRARY/S A>SUBMIT COMPILE my PROGRAM on DRIVE using LIBRARY/S We can compile and link our sample program in one step: A>SUBMIT COMPILE DREAD B ASL/S Isn'ô thaô easy¡ Thå .COÍ filå wilì bå placeä oî thå samå drivå aó thå Pascaì sourcå program® Notå thaô yoõ musô calì foò thå librarù filå witè thå /Ó optioî elså yoõ loaä iî thå wholå library. .pa ŠCall this file COMPILE.SUB Pascal $1.$2$2$2 asmbl main,$1.$2$2/rel ERA $2:$1.SRC link /n:$2:$1 $2:$1 $3 $4 $5 lib/s/E ERA $2:$1.REL : FILES $2:$1.* That'ó alì foò now® Iæ yoõ havå anù questionó feeì freå tï calì må oò droð á note® RAYMOND E. PENLEY 1263 ALLEN COURT WALDORF, MD 20601 (301) 645-9632 (evenings or weekends only) .pa Š WADUZITDO How to write a language in 256 words or less. From BYTE magazine, September 1978. It is highly recommended that you obtain the above magazine. This program is only provided as a learning experience. If you make any changes to the program please provide a copy to your Pascal Users Group. -------------------------------------------------------------- Statement Format What it does -------------------------------------------------------------- type T:text Display text on the terminal. -------------------------------------------------------------- accept A: Input one character from the terminal keyboard. -------------------------------------------------------------- match M:x Compare x to last input character and set match flag to Y if equal, set to N if not equal. -------------------------------------------------------------- jump J:n If n = 0 jump to last accept. If n = 1 thru 9 jump to nth program marker forward from the J. -------------------------------------------------------------- stop S: Terminate program and return to text editor. -------------------------------------------------------------- subroutine S:x Call user machine language program. (Requires program modification). -------------------------------------------------------------- conditionals May precede any operation code. Y Execute only if match flag is 'Y'. N Execute only if match flag is 'N'. -------------------------------------------------------------- program * May precede any statement, serves marker as a jump destination. -------------------------------------------------------------- Table 1: Program instructions for the WADUZITDO -------------------------------------------------------------- Edit character HEX Meaning -------------------------------------------------------------- $ 24 Start program execution -------------------------------------------------------------- \ 5C Move edit pointer to program start. -------------------------------------------------------------- / 2F Display next line of program. -------------------------------------------------------------- % 25 Erase line. Pads with nulls. -------------------------------------------------------------- bs or <- 08 or 5F Backspace to correct typing error. -------------------------------------------------------------- cr 0D End of current statement. -------------------------------------------------------------- any others Character stored in program and edit pointer advances. -------------------------------------------------------------- Table 2: Editing characters used by the built-in text editor. ACCOUNTS RECEIVABLE RECEIVABLE ió á simplå accountó receivablå prograí foò uså bù aî individuaì oò smalì business® Thå prograí permitó eitheò postinç tï aî account¬ oò generatinç á monthlù statement. RECEIVABLE requireó á namå anä addresó filå previouslù createä bù thå useò witè thå prograí NAD ® Thå prograí ió initiateä bù typinç RECEIVABLES ¬ anä á carriage return. The screen is cleared and the message ACCOUNTS RECEIVABLE PROGRAM PACKAGE CHOSE FROM EITHER: (1) POST TO AN ACCOUNT (2) GENERATE AN STATEMENT ENTER THE NUMBER OF YOUR CHOICE ió displayed® Regardlesó oæ youò choice¬ thå prograí wilì prompô with the message: ENTER NAME & ADDRESS FILE AS DRIVE:NAME.EXT Enteò thå namå oæ thå filå aó iô waó createä bù thå namå anä addresó prograí (e.g® B:OFFICE.NAD)® RECEIVABLES wilì nexô asë for the name of the account: ENTER THE NAME OF ACCOUNT _____________________________ Yoõ shoulä enteò thå namå preciselù aó iô ió listeä iî thå filå oæ namå anä addresses® Notå thaô uð tï 3° letteró oò spaceó maù bå useä (numberó arå treateä aó letters)® Thå prograí wilì theî ask IS THIS A NEW ACCOUNT? Y/N Iæ yoõ enteò á 'Y'¬ Versioî 1.° oæ RECEIVABLES ¬ wilì prompô yoõ tï exiô tï thå CP/Í operatinç systeí (bù typinç á controì C)¬ anä enteò thå namå anä addresó (account© intï thå appropriatå filå prioò tï runninç RECEIVABLES. Enterinç aî 'N§ wilì permiô thå program to search the file for the account. Iæ yoõ havå selecteä thå firsô menõ option-- posô tï aî account-- RECEIVABLES wilì prompt IÓ THIÓ THÅ FIRSÔ INVOICÅ EVEÒ POSTEÄ TÏ THIÓ ACCOUNT¿ Y/N Š 1 Bå careful¡ Notå thaô thå questioî isº ió thió thå firsô invoicå EVER posteä tï thió account® Excepô foò thå verù firsô timå thå prograí ió ruî foò á particulaò account¬ thå answeò tï thió questioî shoulä bå 'N' . Iæ yoõ havå selecteä thå seconä menõ option-- generatå á statement-- thå latteò questioî ió noô asked. Aô thió poinô iî ouò discussion¬ iô ió necessarù tï elaboratå á littlå oî ho÷ RECEIVABLES anä NAD actuallù work® Eacè timå á namå anä addresó ió entereä tï thå file¬ NAD assignó aî accounô numbeò tï thå record® (Thå accounô numbeò ió actuallù thå recorä number.© Afteò yoõ enteò thå namå oæ thå file¬ anä thå account¬ RECEIVABLES locateó thå accounô iî thå namå anä addresó file¬ anä readó thå accounô number® Iæ yoõ arå generatinç á statement¬ iô searcheó thå assigneä disã (iô assumeó thaô botè thå namå anä addresó file¬ anä thå filå oæ invoices¬ arå botè oî thå samå drive!© foò á filå whoså namå ió thå accounô number¬ anä whoså extensioî ió 'INV'® Foò example¬ iæ thå thirä recorä oæ thå namå anä addresó filå B:OFFICE.NAD¬ ió 'ACMÅ LUMBEÒ YARDÓ 234µ BROADROCË ROAÄ RICHMONÄ VIRGINIÁ 2322¹ SALEÓ MANAGER'¬ RECEIVABLES wilì posô invoiceó tï thå filå 'B:0003.INV'¬ anä reaä froí thió filå wheî generatinç á monthlù statement. Iæ yoõ wisè tï seå thå currenô invoices¬ anä balance¬ foò á particulaò account¬ buô dï noô wisè tï generatå á statement¬ do NOT selecô menõ optioî twï (generatå á statement)¡ Rather¬ choså thå firsô optioî (posô tï aî account)¬ anä exiô directlù tï thå filå listinç aó detaileä below. Thió ió becauså RECEIVABLES automaticallù (l© writeó thå entirå .INÖ filå foò thå accounô tï á ne÷ filå identifieä bù thå montè oæ thå statement¬ anä (2© re-createó thå .INÖ filå witè thå balancå duå froí thå statement® Foò example¬ iæ á statemenô ió generateä foò Acmå Lumbeò Yards¬ foò thå montè oæ September¬ and thå totaì duå foò thaô montè (statement© ió 126.89¬ theî alì thå invoiceó previouslù fileä iî B:0003.INÖ wilì bå writteî intï thå filå B:0003.SEP¬ anä thå filå B:0003.INÖ wilì contaiî onlù thå balancå 126.89® Iî October¬ thå olä balancå wilì bå identifieä oî thå statemenô aó 'PREVIOUÓ BALACE§ anä addeä tï anù invoiceó posted during October, to equal the balance due for October. Iô ió suggested¬ thaô wheî yoõ posô thå paymenô foò thå previouó month'ó statement¬ thaô yoõ uså thå wordó 'PRIOR§ 'BAL- ANCE§ foò thå invoicå numbeò anä purchaså ordeò number¬ respec- tively® Thió wilì neatlù identifù á paymenô oî thå subsequenô statement (and distinguish a payment from any other credit). Wheî thå seconä menõ optioî ió selected¬ thå prograí prompts across the top of the screen with MO/DA/YR INVOICE # PURCH ORDER # AMOUNT CORRECT Enteò eacè piecå oæ informatioî followeä bù á carriagå return® Š 2 Excepô foò thå amount¬ letteró anä numberó arå considereä thå same® Hencå aî invoicå numbeò oæ R6574-Á ió permissible® Onlù twï characteró arå permitteä foò thå month¬ daù oò year® Thå invoicå numbeò maù havå uð tï siø characters¬ anä thå purchaså ordeò number¬ uð tï l0® Thå amounô ió considereä á 'real§ number¬ anä maù havå thå rangå -99,999.9¹ tï +99,999.99® Enteò á '-§ sigî iî fronô oæ thå amounô iæ iô ió á crediô tï thå account® Á positivå sigî ('+'© doeó noô neeä tï bå entereä iæ thå amounô ió á debiô tï thå account® Thå prograí wilì automaticalù positioî thå cursoò afteò eacè entrù (carriagå return)® Thå lasô entry¬ undeò thå 'CORRECT§ column¬ ió eitheò á 'Y§ oò aî 'N'¬ distin- guishinç whetheò thå informatioî ió correcô oò incorrecô aó entered¬ respectively® Iæ yoõ enteò á 'N'¬ thå prograí wilì prompô witè á menõ representinç eacè entry® Selecô thå numbeò correspondinç tï thå firsô piecå oæ incorrecô information¬ anä enteò thå numbeò followeä bù á carriagå return® Thå prograí wilì eraså thå incorrecô entry¬ repositioî thå cursoò anä awaiô thå re-entrù oæ thå information® Yoõ maù continuå tï correcô thå informatioî untiì iô ió entirelù correct® Aô thaô point¬ selecô thå numbeò correspondinç tï 'Alì informatioî ió correcô aó en- tered'® Thå prograí wilì eraså thå correctioî promptó anä posi- tioî thå cursoò foò thå nexô linå oæ information® Versioî 1.° doeó noô permiô correctioî oæ thå informatioî afteò iô haó beeî writteî tï thå disã filå (i.e® afteò yoõ havå answereä 'Y§ tï thå 'CORRECT§ prompt)® Versioî 1.° oæ RECEIVABLES haó onå peculiarity® Thå verù firsô timå ever¬ yoõ posô invoiceó tï á particulaò account¬ yoõ maù enteò onlù threå beforå thå prograí asë yoõ whetheò yoõ wanô á listinç oæ thå file® Iæ thió ió alì yoõ havå tï post¬ theî decidå whetheò yoõ wanô thå listing¬ and/oò exiô froí thå prograí aó describeä below® However¬ iæ yoõ havå morå invoiceó tï post¬ answeò 'N§ tï thå listinç prompt¬ anä 'Y§ tï thå nexô prompô askinç whetheò yoõ wisè tï posô tï anotheò account® Re-enteò thå account name when prompted, and continue posting. Oncå yoõ havå posteä tï á giveî account¬ yoõ maù subsequentlù enteò aó manù invoiceó aó yoõ desirå aô anù onå time® RECEIVABLES wilì noô permiô scrollinç oæ thå screeî durinç entrù oæ thå information® Wheî thå screeî ió full¬ iô wilì cleaò thå screen¬ rewritå thå prompts¬ anä repositioî thå cursor¬ foò you to continue. Wheî yoõ havå finisheä enterinç alì thå invoiceó yoõ havå foò á particulaò account¬ enteò á '00' foò thå month¬ á carriagå return¬ anä á carriagå returî foò thå day¬ year¬ invoicå number¬ anä purchaså ordeò number® Enteò á '0' foò thå amounô anä á 'Y' foò 'CORRECT'® Thå prograí wilì theî prompt DO YOU WANT A LISTING OF THE FILE? Y/N Iæ yoõ saù 'Y'¬ iô wilì asë whetheò yoõ wanô á 'HARDCOPY'® Á 'Y§ wilì causå thå prograí tï lisô thå filå (includinç thå currenô balance© oî youò printer® Aî 'N§ wilì causå thå prograí tï lisô thå filå anä balancå oî youò CRT® Aó usual¬ scrollinç wilì bå Š 3 inhibited¬ anä wheî thå screeî ió full¬ yoõ wilì bå askeä tï enteò á carriagå returî tï continue® Iæ therå ió morå thaî onå pagå oæ listing¬ thå pageó arå numbered® Iî addition¬ thå ac- counô namå anä addresó ió printeä oò displayeä aô thå toð oæ thå firsô page® Thå balancå ió writteî aô thå bottoí oæ thå lasô pagå oæ thå statement® Creditó arå clearlù identified. Afteò thå listinç ió complete¬ oò iæ yoõ havå decideä noô tï lisô thå file¬ thå prograí wilì asë yoõ whetheò yoõ wisè tï posô invoiceó tï anotheò account® Iæ yoõ do¬ enteò á 'Y'¬ anä thå accounô namå wheî askeä tï dï so® Iæ yoõ dï noô wisè tï enteò anù furtheò invoices¬ enteò aî 'N'¬ anä thå prograí wilì exiô tï thå CP/Í operatinç system® Iæ yoõ havå selecteä menõ optioî twï (generatå á statement)¬ thå prograí will¬ afteò promptinç yoõ foò thå accounô name¬ anä whetheò iô ió á ne÷ account¬ asë yoõ foò thå month¬ daù anä yeaò oæ thå statement® Enteò thió informatioî NUMERICALLY¡ Foò example¬ iæ thå datå oæ thå statemenô ió Septembeò 5¬ l981¬ enteò '09§ carriagå return¬ '05§ carriagå return¬ '81§ carriagå return® RECEIVABLES useó thió datå tï generatå thå extensioî oæ thå monthlù filå (aó describeä above» e.g® B:0003. SEP )¬ anä aó the date for the 'PRIOR BALANCE' written to the .INV file. Aó witè thå firsô optioî (postinç tï aî account)¬ yoõ maù eitheò lisô thå statemenô oî thå CRT¬ oò prinô thå statemenô on your printer. Afteò thå prograí generateó thå statement¬ yoõ wilì agaiî havå thå opportunitù tï eitheò generatå additionaì statementó foò otheò accounts¬ oò exiô tï thå CP/Í operatinç system® DÏ NOÔ FORGEÔ THAÔ THÅ .INÖ FILÅ IÓ RE-WRITTEÎ EACÈ TIMÅ Á STATEMENÔ IÓ GENERATED® Thå informatioî ió noô lost® Iô ió writteî intï thå accounô filå witè aî extensioî representinç thå firsô threå letteró foò thå montè oæ thå statement® Alsï remembeò thaô thå .NAD¬ .INÖ anä monthlù filå arå alì maintaineä oî thå 'B' drive. 4 THIS DISKETTE CONTAINS THE FOLLOWING FIVE DIFFERENT FILES: 1) ANDMSK.SRC- AN EXTERNAL FUNCTION WHICH WILL DO A BIT-BY-BIT LOGICAL 'AND' FUNCTION OF ITS TWO INTEGER ARGUMENTS. 2) COMPARE.*- A PROGRAM WHICH WILL DO A COMPARE OF TWO DIFFERENT FILES AND LOG THE DIFFERENCES IN A THIRD FILE. ( NOTE THAT CHARACTER COUNT IS IN DECIMAL WHILE THE CHARACTERS ARE IN HEXADECIMAL. ) I CREATED THIS PROGRAM AFTER I USED THE CK.COM FILE FROM A PREVIOUS USER'S GROUP DISK BECAUSE THE CK PROGRAM SAID THE TWO FILES WERE THE SAME. MY PROGRAM SAID AN ENTIRE SECTOR WAS BAD. ( I'D LIKE TO SEE THE SOURCE OF THAT PROGRAM AND FIND OUT WHY THE ALGORITHM DIDN'T FIND SUCH AN OBVIOUS PROBLEM). 3) EXORG.SRC- AN EXTERNAL FUNCTION THAT WILL RETURN THE ADDRESS OF THE ARGUMENT VARIABLE. VERY USEFUL FOR DMA TO GET AN ARRAY'S ADDRESS. 4) ORMSK.SRC- AN EXTERNAL FUNCTION THAT WILL RETURN A LOGICAL BIT-BY-BIT 'OR' OF THE TWO INTEGER ARGUMENTS. 5) REMOTE.SRC- AN EXTERNAL PROCEDURE DESIGNED TO BE USED WITH THE SCITRONICS/BSR HOME REMOTE CONTROL UNITS. ONE INPUTS THE HOUSE CODE, UNIT CODE AND THE FUNCTION TYPE AND THIS PROCEDURE WILL PERFORM THE FUNCTION THRU THE SCITRONICS CONTROLLER.