ÿ-`� *** INITILIZE ROUTINES FOR MAID-III (I/O BOARD) ***q`� *** INITILIZE PROGRAMMABLE PERIPHERAL INTERFACE (PPI) ***¨`dˆ CTRLWRD1$ ð ÿš(€) :� HEX 80=PORTS(A,B,C=OUTPUT)Þ`nˆ CTRLWRD2$ ð ÿš(›) :� HEX 9B=PORTS(A,B,C=INPUT)axˆ CTRLWRD3$ ð ÿš(¾) :� HEX BE=PORTS(A,B=INPUT & C=INTR.)Ua}ˆ CTRLPRT0$ ð ÿš(#) :� HEX 23=CNTRLPORT(PPI0,IC10)Ža‚ˆ CTRLPRT1$ ð ÿš(') :� HEX 27=CNTRLPORT(PPI1,IC11)ÇaŒˆ CTRLPRT2$ ð ÿš(+) :� HEX 2B=CNTRLPORT(PPI2,IC12)b–ˆ CTRLPRT6$ ð ÿš(G) :� HEX 47=CNTRLPORT(PPI6,IC56)9b ˆ CTRLPRT7$ ð ÿš(K) :� HEX 4B=CNTRLPORT(PPI7,IC57)rbªˆ CTRLPRT8$ ð ÿš(O) :� HEX 4F=CNTRLPORT(PPI8,IC58)¤b´ˆ CTRLWRD1 ð € :� HEX 80=PORTS(A,B,C=OUTPUT)Õb¾ˆ CTRLWRD2 ð › :� HEX 9B=PORTS(A,B,C=INPUT)cȈ CTRLWRD3 ð ¾ :� HEX BE=PORTS(A,B=INPUT & C=INTR.)Bc͈ CTRLPRT0 ð # :� HEX 23=CNTRLPORT(PPI0,IC10)vcÒˆ CTRLPRT1 ð ' :� HEX 27=CNTRLPORT(PPI1,IC11)©c܈ CTRLPRT2 ð + :� HEX 2B=CNTRLPORT(PPI2,IC2)ÝcሠCTRLPRT5 ð C :� HEX 43=CNTRLPORT(PPI5,IC55)dæˆ CTRLPRT6 ð G :� HEX 47=CNTRLPORT(PPI6,IC56)Edðˆ CTRLPRT7 ð K :� HEX 4B=CNTRLPORT(PPI7,IC57)ydúˆ CTRLPRT8 ð O :� HEX 4F=CNTRLPORT(PPI8,IC58)©dþˆ PPI0A ð  :� HEX 20=DATAPORTA(PPI0,IC10)Ùdÿˆ PPI0B ð ! :� HEX 21=DATAPORTB(PPI0,IC10) eˆ PPI0C ð " :� HEX 22=DATAPORTC(PPI0,IC10)9eˆ PPI1A ð $ :� HEX 24=DATAPORTA(PPI1,IC11)ieˆ PPI1B ð % :� HEX 25=DATAPORTB(PPI1,IC11)™eˆ PPI1C ð & :� HEX 26=DATAPORTC(PPI1,IC11)Ée"ˆ PPI2A ð ( :� HEX 28=DATAPORTA(PPI2,IC12)ùe,ˆ PPI2B ð ) :� HEX 29=DATAPORTB(PPI2,IC12))f6ˆ PPI2C ð * :� HEX 2A=DATAPORTC(PPI2,IC12)Yf9ˆ PPI5A ð @ :� HEX 40=DATAPORTA(PPI5,IC55)‰f;ˆ PPI5B ð A :� HEX 41=DATAPORTB(PPI5,IC55)¹f=ˆ PPI5C ð B :� HEX 42=DATAPORTC(PPI5,IC55)éf@ˆ PPI6A ð D :� HEX 44=DATAPORTA(PPI6,IC56)gJˆ PPI6B ð E :� HEX 45=DATAPORTB(PPI6,IC56)IgTˆ PPI6C ð F :� HEX 46=DATAPORTC(PPI6,IC56)yg^ˆ PPI7A ð H :� HEX 48=DATAPORTA(PPI7,IC57)©ghˆ PPI7B ð I :� HEX 49=DATAPORTB(PPI7,IC57)Ùgrˆ PPI7C ð J :� HEX 4A=DATAPORTC(PPI7,IC57) h|ˆ PPI8A ð L :� HEX 4C=DATAPORTA(PPI8,IC58)9h†ˆ PPI8B ð M :� HEX 4D=DATAPORTB(PPI8,IC58)ih�ˆ PPI8C ð N :� HEX 4E=DATAPORTC(PPI8,IC58)�hšˆ EF ð € :� INPUT TAG (MAID-III)µh¤ˆ IA ð � :� INPUT TAG (MAID-III)Ûh®ˆ OA ð ‚ :� INPUT TAG (MAID-III)i¸ˆ EI ð  :� OUTPUT TAG (MAID-III)+iˆ ODR ð @ :� OUTPUT TAG (MAID-III)Sï IDR ð  :� OUTPUT TAG (MAID-III)ci¼ˆ DATA1 ð siƈ DATA2 ð ‹iè� CTRLPRT1,CTRLWRD1£iò� CTRLPRT2,CTRLWRD1»i÷� CTRLPRT5,CTRLWRD3Óiü� CTRLPRT6,CTRLWRD2ëi� CTRLPRT7,CTRLWRD2j� CTRLPRT8,CTRLWRD3j� CTRLPRT8,DATA1-j$� CTRLPRT8,DATA2Bj)� CTRLPRT5,DATA1Wj+� CTRLPRT5,DATA2kj.ˆ X ð ÿ�(PPI8A)j8ˆ X ð ÿ�(PPI8B)“j:ˆ X ð ÿ�(PPI5A)§j;ˆ X ð ÿ�(PPI5B)Øj<� *** INITILIZE WAIT-STATE GENERATOR ***k>ˆ MEMIO ð  :� HEX 03=NO WAIT-STATES FOR MEMORY & I/O*kB� CTRLPRT0,CTRLWRD1:� ERR ANLYS + RECOVERYÇràWEF ð :� RESET TIMERÍräŽìr� *** IN ROUTINE (AFW) ***s � ),@:� RAISE ODRs!S ð :� STATE 2 = AFW(s#� ¼4Hs*� 4,:� POLL ON NEXT READZs4ˆ IR ð ÿ�(4)rs;� E:� COUNT POLLS†s>‹ IR ñ € Ï *°sH‹ IR ð € Ï R :¢ ˜ :� LOOK FOR EFÁsRAFA ð ÿ�(D)Òs\AFB ð ÿ�(E)ãsfAFC ð ÿ�(F)ôspAFD ð ÿ�(H)tzAFE ð ÿ�(I)t}� ­6t~X ð ÿ�(@)-tX ð ÿ�(A)?t�� 4, :� EOIVt„� ),:� LOWER ODR`t‡�  5vt‰� †B:� COUNT AFW�t‹WAF ð :� RESET TIMER–tŽޱt˜� ¸B:� CNT TOTAL ERRSút¢‘"I WAS EXPECTING AN ADDRESS FUNCTION INTERRUPT (EF - CONTROL TAG) "u§� €>:� ERR ANLYS + REC0u©WAF ð :� RESET TIMER6u¬Ž_u;� *** MAID-III IN ROUTINE (DATA) ***wu@� ),@:� RAISE ODR‘uAS ð :� STATE 3 = IDW›uC� ¼4»uJ� 4,:� POLL ON NEXT READËuTIR ð ÿ�(4)ãuY� jE:� COUNT POLLS÷u^‹ IR ñ € Ï J!vh‹ IR ð ‚ Ï r :¢ º :� LOOK FOR OA1vrDA ð ÿ�(D)Av|DB ð ÿ�(E)Qv†DC ð ÿ�(F)av�DD ð ÿ�(H)qvšDE ð ÿ�(I){v�� 13ŠvŸX ð ÿ�(L)™v X ð ÿ�(M)«v¡� 4, :� EOIÂv¤� ),:� LOWER ODRÌv§�  5âv®� šB:� COUNT IDWüv³WID ð :� RESET TIMERw¸Žwº� ¸B:� CNT TOTAL ERRShw‘"I WAS EXPECTING AN OUTPUT ACKNOWLEDGE INTERRUPT (OA - CONTROL TAG) "„wÇ� €>:� ERR ANLYS + RECžwÉWID ð :� RESET TIMER¤wÌŽÎwÖ� *** MAID-III OUT ROUTINE (DATA) ***îwà� 4,:� POLL ON NEXT READxäS ð :� STATE 4 = ODWxêIR ð ÿ�(4)Qxô‹ IR ñ € Ï þ :¢ � :� SHOULD NOT HAVE INTERRUPTS^xþ� $,ODAkx � %,ODBxx � &,ODC…x � (,ODDœx! ODEIDR ð ODE ø IDRÄx& � ),ODEIDR:� OUT ODE AND RAISE IDRÎx3 � ¡8îx: � 4,:� POLL ON NEXT READþxD IR ð ÿ�(4)yH � ÄE:� COUNT POLLS*yN ‹ IR ñ € Ï : TyX ‹ IR ð � Ï [ :¢   :� LOOK FOR IA^y[ � l9myb X ð ÿ�(L)|yl X ð ÿ�(M)Žyv � 4, :� EOI¥y€ � ),:� LOWER IDR¯yƒ � Ð9Åy… � �B:� COUNT ODWßy‡ WOD ð :� RESET TIMERåyŠ Žz� � ¸B:� CNT TOTAL ERRS+z” ‘"I RECEIVED AN UNEXPECTED INTERRUPT "oz™ ‘"I WAS ABOUT TO RAISE INPUT DATA REQUEST (IDR - CONTROL TAG) "“z› ‘"AND TRANSMIT A DATA WORD = ";�zœ � J3µz� � €>:� ANLYS + REC»zž ŽÖz  � ¸B:� CNT TOTAL ERRS{£ ‘"I WAS EXPECTING AN INPUT ACKNOWLEDGE INTERRUPT (IA - CONTROL TAG)"7{¨ � €>:� ANLYS + RECQ{« WOD ð :� RESET TIMERW{­ Žƒ{4!� *** MAID-III OUT ROUTINE (STATUS) ***£{>!� 4,:� POLL ON NEXT READÀ{A!S ð :� STATE 5 = STATUSÐ{H!IR ð ÿ�(4) |R!‹ IR ñ € Ï \! :¢  " :� SHOULD NOT HAVE INTERRUPTS|\!� $,SA!|f!� %,SB-|p!� &,SC9|z!� (,SDE|„!� ),SE\|Ž!� ),:� RAISE EIf|˜!� ’3†|¢!� 4,:� POLL ON NEXT READ–|¬!IR ð ÿ�(4)®|±!� F:� COUNT POLLSÂ|¶!‹ IR ñ € Ï ¢!ì|À!‹ IR ð � Ï Ê! :¢   :� LOOK FOR IAö|Ê!� l9}Ô!X ð ÿ�(L)}Þ!X ð ÿ�(M)&}è!� 4, :� EOI<}ò!� ),:� LOWER EI„}÷!� OUT 41,64 - RAISE ODR, DONT MISS EF IF MAID-II IS IN RECYCLE MODE�}ù!� ),@š}ü!� Ì3¹}"� ¤B:� COUNT STATUS WORDSÓ}"WST ð :� RESET TIMERÙ}"Žô} "� ¸B:� CNT TOTAL ERRS~"‘"I RECEIVED AN UNEXPECTED INTERRUPT "b~"‘"I WAS ABOUT TO RAISE EXTERNAL INTERRUPT (EI - CONTROL TAG) "ˆ~$"‘"AND TRANSMIT A STATUS WORD = ";’~."� ˜:ª~3"� €>:� ANLYS + RECÄ~5"WST ð :� RESET TIMERÊ~8"Žë~Ã2� *** PRINT ROUTINE (EF) *** Å2‹ PTG$ ð "Y" Ï È2 :¢ Ï2NÈ2‘"I RECEIVED AN EXTERNAL FUNCTION INTERRUPT (EF - CONTROL TAG) "jÊ2‹ PEF$ ð "Y" Ï Í2 :¢ Ž‚Í2‘ "ALONG WITH AN ";ŒÎ2‰ Ò2¨Ï2‹ PEF$ ð "Y" Ï Ð2 :¢ Ž¿Ð2‘"I RECEIVED AN ";çÒ2‘"EXTERNAL FUNCTION WORD (EFW) = ";€Ü2‹ B$ ð "H" Ï æ2 :¢ ú28€æ2‘ ÿš(EFE);ÿš(EFD);ÿš(EFC);ÿš(EFB);ÿš(EFA);" HEX">€ð2ŽD€ú2�s€,3� *** PRINT ROUTINE (MAID-III IN DATA) ***‘€13‹ PTG$ ð "Y" Ï 63 :¢ >3×€63‘"I RECEIVED AN OUTPUT ACKNOWLEDGE INTERRUPT (OA - CONTROL TAG) "ó€83‹ POD$ ð "Y" Ï ;3 :¢ Ž �;3‘"ALONG WITH AN ";�=3‰ @30�>3‹ POD$ ð "Y" Ï ?3 :¢ ŽG�?3‘"I RECEIVED AN ";i�@3‘"OUTPUT DATA WORD (ODW) = ";…�J3‹ B$ ð "H" Ï T3 :¢ h3µ�T3‘ ÿš(DE);ÿš(DD);ÿš(DC);ÿš(DB);ÿš(DA);" HEX"»�^3ŽÁ�h3�å��3� *** PRINT ROUTINE (CE,DE) ***‚’3‹ PST$ ð "Y" Ï •3 :¢ ¡3Q‚•3‘"I SENT OUT CHANNEL END & DEVICE END STATUS (CE,DE - BITS 10,11,27,28) "h‚—3‘"STATUS WORD = ";r‚›3� ˜:Ž‚œ3‹ PTG$ ð "Y" Ï ž3 :¢ Ž¥‚ž3‘"ALONG WITH AN ";¯‚Ÿ3‰ ¤3Ë‚¡3‹ PTG$ ð "Y" Ï ¢3 :¢ ŽÝ‚¢3‘"I RAISED "; ƒ¤3‘"EXTERNAL INTERRUPT (EI - CONTROL TAG) "ƒ®3Ž8ƒÂ3� *** PRINT ROUTINE (LOWER EI) ***TƒÌ3‹ PTG$ ð "Y" Ï Ö3 :¢ ŽŒƒÖ3‘"I LOWERED EXTERNAL INTERRUPT (EI - CONTROL TAG) "’ƒà3Žºƒ·4� *** PRINT ROUTINE (RAISE ODR) ***Öƒ¼4‹ PTG$ ð "Y" Ï Á4 :¢ Ž„Á4‘"I RAISED OUTPUT DATA REQUEST (ODR - CONTROL TAG) "„Æ4Ž9„5� *** PRINT ROUTINE (LOWER ODR)U„ 5‹ PTG$ ð "Y" Ï *5 :¢ Ž�„*5‘"I LOWERED OUTPUT DATA REQUEST (ODR - CONTROL TAG) "•„>5Ž·„«6� *** PRINT ROUTINE (AFW) ***Õ„­6‹ PTG$ ð "Y" Ï °6 :¢ ¶6…°6‘"I RECEIVED AN ADDRESS FUNCTION INTERRUPT (EF - CONTROL TAG) "5…²6‹ PAF$ ð "Y" Ï ´6 :¢ ŽL…´6‘"ALONG WITH AN ";V…µ6‰ º6r…¶6‹ PAF$ ð "Y" Ï ·6 :¢ މ…·6‘"I RECEIVED AN ";°…º6‘"ADDRESS FUNCTION WORD (AFW) = ";Ì…Ä6‹ B$ ð "H" Ï Î6 :¢ Ø6†Î6‘ ÿš(AFE);ÿš(AFD);ÿš(AFC);ÿš(AFB);ÿš(AFA);" HEX"†Ø6Ž †â6�=†Ÿ8� *** PRINT ROUTINE (MAID-III OUT DATA) ***[†¡8‹ PID$ ð "Y" Ï ¤8 :¢ Ç8y†¤8‘"I SENT A DATA WORD = ";•†®8‹ B$ ð "H" Ï ¸8 :¢ à8ʆ¸8‘ ÿš(ODE);ÿš(ODD);ÿš(ODC);ÿš(ODB);ÿš(ODA);" HEX"憽8‹ PTG$ ð "Y" Ï Â8 :¢ Žý†Â8‘"ALONG WITH AN ";‡Ä8‰ Ì8#‡Ç8‹ PTG$ ð "Y" Ï É8 :¢ Ž5‡É8‘"I RAISED ";d‡Ì8‘"INPUT DATA REQUEST (IDR - CONTROL TAG) "j‡Ö8Žp‡à8�™‡g9� *** PRINT ROUTINE (RECEIVE IA) ***µ‡l9‹ PTG$ ð "Y" Ï v9 :¢ Žú‡v9‘"I RECEIVED AN INPUT ACKNOWLEDGE INTERRUPT (IA - CONTROL TAG) "ˆ€9Ž(ˆË9� *** PRINT ROUTINE (LOWER IDR) ***DˆÐ9‹ PTG$ ð "Y" Ï Ú9 :¢ Ž}ˆÚ9‘"I LOWERED INPUT DATA REQUEST (IDR - CONTROL TAG) "ƒˆä9޵ˆ*:� *** PRINT ROUTINE (MAID-III OUT STATUS) ***Óˆ/:‹ PST$ ð "Y" Ï 4: :¢ p:÷ˆ4:‘"I SENT OUT A STATUS WORD = ";‰>:‹ B$ ð "H" Ï H: :¢ \:C‰H:‘ ÿš(SE);ÿš(SD);ÿš(SC);ÿš(SB);ÿš(SA);" HEX"_‰R:‹ PTG$ ð "Y" Ï \: :¢ Žv‰\:‘"ALONG WITH AN ";€‰f:‰ „:œ‰p:‹ PTG$ ð "Y" Ï z: :¢ Ž®‰z:‘"I RAISED ";܉„:‘"EXTERNAL INTERRUPT (EI - CONTROL TAG) "≎:ŽŠ—:� *** PRINT STATUS WORD ***Š˜:‹ B$ ð "H" Ï ¢: :¢ ¶:NŠ¢:‘ ÿš(SE);ÿš(SD);ÿš(SC);ÿš(SB);ÿš(SA);" HEX"TЬ:ŽZж:�ŠÊ:� *** PRINT ROUTINE (COUNTS) ***�ŠÏ:‘" ":‘" "ÁŠÞ:‘"TOTAL EXTERNAL FUNCTION WORDS = ";CEF;" DEC "ôŠè:‘"TOTAL ADDRESS FUNCTION WORDS = ";CAF;" DEC "-‹ò:‘"TOTAL OUTPUT DATA WORDS (MAID-III) = ";COD;" DEC "e‹ü:‘"TOTAL INPUT DATA WORDS (MAID-III) = ";CID;" DEC "Ž‹;‘"TOTAL STATUS WORDS = ";CST;" DEC "±‹;‘"TOTAL PACKETS = ";CP;" DEC "Õ‹;‘"TOTAL ERRORS = ";CERR;" DEC "Œ$;‘"TOTAL RECOVERY RETRIES = ";CRET;" DEC " Œ-;Ž6Œ7;� *** PRINT ROUTINES (ERROR SECTION) ***„Œ`;‘"INSTEAD, I RECEIVED AN EXTERNAL FUNCTION INTERRUPT (EF - CONTROL TAG) "ŠŒj;ŽØŒt;‘"INSTEAD, I RECEIVED AN INPUT ACKNOWLEDGE INTERRUPT (IA - CONTROL TAG) "ÞŒ~;Ž-�ˆ;‘"INSTEAD, I RECEIVED AN OUTPUT ACKNOWLEDGE INTERRUPT (OA - CONTROL TAG) "3�’;Žp�œ;‘"INSTEAD, I RECEIVED AN INTERRUPT THAT IS NOT IN USE. "š�°;‘"POLL VALUE OF IR = ";IR;" DECIMAL " �Ä;ŽÈ�ö;‘" ":‘" * * * TIME-OUT * * * ":‘" "Î�<ŽŽ <‘"I SHOULD HAVE RECEIVED AN EXTERNAL FUNCTION INTERRUPT (EF - CONTROL TAG) "CŽ<‘"AFTER WAITING ";WEF;" TIMES "IŽ<Ž™Ž(<‘"I SHOULD HAVE RECEIVED AN ADDRESS FUNCTION INTERRUPT (EF - CONTROL TAG) "¼Ž2<‘"AFTER WAITING ";WAF;"TIMES "ÂŽ<<Ž�F<‘"I SHOULD HAVE RECEIVED AN OUTPUT ACKNOWLEDGE INTERRUPT (OA - CONTROL TAG) "8�P<‘"AFTER WAITING ";WID;" TIMES ">�Z<Ž��d<‘"I SHOULD HAVE RECEIVED AN INPUT ACKNOWLEDGE INTERRUPT (IA - CONTROL TAG) "³�n<‘"AFTER WAITING ";WOD;" TIMES "¹�x<Ž �‚<‘"I SHOULD HAVE RECEIVED AN INPUT ACKNOWLEDGE INTERRUPT (IA - CONTROL TAG) ".�Œ<‘"AFTER WAITING ";WST;" TIMES "4�–<Žj�¾<‘" ":‘NAM$;" - PUSH THE START BUTTON ON MAID-II "p�È<ަ�Ò<‘" ":‘"RECOVERY SOFTWARE IS NOT YET IMPLEMENTED "¬�Ü<ŽÙ�ð<‘"FURTHER RECOVERY IS NOT YET POSSIBLE "ß�ú<Ž‘€>� *** RUN-TIME ANALYSIS AND RECOVERY ROUTINES ***@‘ø>‹ IR ð € Ï � `; :¢ ?:� IS IT AN EF[‘ý>� ˆ@:� GOSUB RECOVERY~‘?Ž:� WILL GOTO RECOVERY ROUTINE©‘?‹ IR ð � Ï � t; :¢  ?:� IS IT AN IAÄ‘?� ˆ@:� GOSUB RECOVERYç‘ ?Ž:� WILL GOTO RECOVERY ROUTINE’ ?‹ IR ð ‚ Ï � ˆ; :¢ ?:� IS IT AN OA-’?� ˆ@:� GOSUB RECOVERYP’?Ž:� WILL GOTO RECOVERY ROUTINEt’?� œ;:� INTERRUPT IS NOT IN USE�’?� ˆ@:� GOSUB RECOVERY²’ ?Ž:� WILL GOTO RECOVERY ROUTINEÉ’o@� *** RECOVERY ***ï’t@‹ CEF ð  ÷ CERR ñ  Ï u@ :¢ ƒ@“u@CRET ð CRET ò “v@TEF ð è:� WAIT LONGER)“w@� ¾</“~@ŽK“ƒ@‹ CRET ð  Ï ˆ@ :¢ °@|“ˆ@� Ò<:� DISPLAY-RECOVERY NOT YET IMPLEMENTEDš“’@� Ê::� DISPLAY XFER CNTS²“œ@� :� NO PLACE TO GO¸“¦@Žò“°@� ð<:� DISPLAY-FURTHER RECOVERY NOT YET IMPLEMENETED”º@� Ê::� DISPLAY XFER CNTS(”Ä@� :� NO PLACE TO GO.”Î@Žx”hB� *** COUNTING ROUTINES (EFW,AFW,ODW,IDW,STATW,PAC,ERRS,RET) SOFT ***˜”|BCEF ð CEF ò :Ž:� COUNT EFW¸”†BCAF ð CAF ò :Ž:� COUNT AFWã”�BCOD ð COD ò :Ž:� COUNT ODW (MAID-III)•šBCID ð CID ò :Ž:� COUNT IDW (MAID-III)7•¤BCST ð CST ò :Ž:� COUNT STATUS WORDS[•®BCP ð CP ò :Ž:� COUNT PACKETS†•¸BCERR ð CERR ò :Ž:� COUNT TOTAL ERRORSµ•ÂBCRET ð CRET ò :Ž:� COUNT RECOVERY RETRIESÕ•\D� *** TIME-OUT ROUTINES ***ð•»D� *** TIME-OUT EFW *** –ÊD‹ WEF ï LEF Ï LEF ð WEF)–ÔD‹ WEF ñ TEF Ï ÞD :¢ èD;–ÞDWEF ð WEF ò A–ãDŽ^–èD� ¸B:� INC. TOTAL ERRS.€–òD� ö;:� DISPLAY TIME-OUT MSG.ž–üD�  <:� DISPLAY ERR. MSG.¾–E� t@:� GOSUB ERR. RECOVERYÄ–EŽß–E� *** TIME-OUT AFW ***û–$E‹ WAF ï LAF Ï LAF ð WAF—.E‹ WAF ñ TAF Ï 8E :¢ BE*—8EWAF ð WAF ò 0—=EŽM—BE� ¸B:� INC. TOTAL ERRS.o—LE� ö;:� DISPLAY TIME-OUT MSG.�—VE� (<:� DISPLAY ERR. MSG.­—[E� ˆ@:� GOSUB ERR. RECOVERY³—`EŽÙ—jE� *** TIME-OUT IDW (MAID-III) ***õ—~E‹ WID ï LID Ï LID ð WID˜ˆE‹ WID ñ TID Ï ’E :¢ œE$˜’EWID ð WID ò *˜—EŽG˜œE� ¸B:� INC. TOTAL ERRS.i˜¦E� ö;:� DISPLAY TIME-OUT MSG.‡˜°E� F<:� DISPLAY ERR. MSG.§˜µE� ˆ@:� GOSUB ERR. RECOVERY­˜ºEŽÓ˜ÄE� *** TIME-OUT ODW (MAID-III) ***ï˜ØE‹ WOD ï LOD Ï LOD ð WOD ™âE‹ WOD ñ TOD Ï ìE :¢ öE™ìEWOD ð WOD ò $™ñEŽA™öE� ¸B:� INC. TOTAL ERRS.c™F� ö;:� DISPLAY TIME-OUT MSG.�™ F� d<:� DISPLAY ERR. MSG.¡™F� ˆ@:� GOSUB ERR. RECOVERY§™FŽÅ™F� *** TIME-OUT STATUS ***á™2F‹ WST ï LST Ï LST ð WSTþ™!žŒP PB ð Ëž Pƒ PAÖž´PPA ð àžÈP‰ àQŸÜP� *** OUTPUT PACKET (MAID-III) ***ŸQ‚ PA ð  Î RP8Ÿ Q� ®B:� UPDATE PACKET CNT.VŸQ‘" ":‘"PACKET # ";PA:‘" "bŸ,Q � XnŸ@Q �  „ŸTQ ‚ PB ð  Î WC”ŸhQ � ࡟|Q ƒ PB­Ÿ�Q � >!ºŸ¤Q PB ð ߸Qƒ PAΟÌQPA ð ìŸàQ� Ê::� DISPLAY XFER CNTS' ãQWEF ð :WAF ð :WOD ð :WID ð :WST ð :� RESET TIMERSp åQTEF ð ô:TAF ð :TID ð :TOD ð :TST ð :� SET TIME LIMIT FOR WAITSàæQCEF ð :CAF ð :COD ð :CID ð :CST ð :CP ð :CERR ð :CRET ð :� RESET CNTS.Ì ôQ‘" "Õ R‘" "ó R‘"TEST PACKET COMPLETED "3¡0R…"TYPE R OR N (R = REPEAT SAME PACKET,N = NEW PACKET) ";ZZ$I¡DR‹ ZZ$ ð "R" Ï $OS¡XR‰  Np¡lR� *** INITILIZE USER ***|¡€R‘ÿ–( )…¡”R‘" "¨¡¨R…"HI, WHAT IS YOUR NAME ";NAM$µ¡¼R‘ ÿ–( )î¡ÐR‘" MAID-II TEST PROGRAM "¢äR‘" ":‘" ":‘" ":¢øR‘ NAM$;",":‘" ":‘" TYPE CTRL - H :TO BACK SPACE. "k¢ S‘" TYPE CTRL - S :TO STOP SCROLL (XOFF). "œ¢ S‘" TYPE CTRL - Q :TO START SCROLL (XON). "Ý¢4S‘" TYPE CTRL - C :TO START PROGRAM OVER, THEN ENTER RUN. "£HS…" TYPE RETURN TO CONTINUE ";XX$£\S‘ ÿ–( )"£pSIP$ ð "DONE"(£„SŽ\£èS� *** GET USER SPEC. OUTPUT DATA WORD (DEC) ***„£òS‘"ENTER THE OUTPUT DATA WORD ":‘" "¬£üS…"INPUT BITS 0 - 7 IN DECIMAL ";ODAÕ£T…"INPUT BITS 8 - 15 IN DECIMAL ";ODBÿ£T…"INPUT BITS 16 - 23 IN DECIMAL ";ODC)¤T…"INPUT BITS 24 - 31 IN DECIMAL ";ODDS¤$T…"INPUT BITS 32 - 35 IN DECIMAL ";ODEY¤.TŽ_¤8T�TS 16 - 2