IMD 1.16: 1/09/2008 12:18:00 async mux product diskette f43301 2/6/79 00-93433-01 (x0)    @0r %1rh`g b }lA V@MZOS4 MOS790207212221OS790207212221 790207212221F43301    ZZMmqxhhuh`CIC C @F+i g5UQ7. _GGJVG‹N @AJ@PV EG CG=@#<==ơ( 0 " }5Ƃ”,,՟_/6A%%&@!! b ~$  GGƱƆ+n | | q+3ѦA\ —EGbVސƐފ%'ܟaSԆ @{ o m OD ,p- %# $#X ^ZQQQDINSrR!¦LEޡޟxIޛޙ|Cޒ}<@G@AƉބz.OS:: SYS @0EAJQIm %1jV@XbRRh`CZIC C @F+U SoUQ7 GGG1V.¾N @AJ@7ƷVϞ G-G'#&t h` b }!A۟r b╢GƏG~Ƌ+k* }RA^JywEGgVppnފ7nOS:: SYS | | qlbJ3¦_L]F%'aWp ~$ JAC:RSB AC:SND AC:SNDCKJAC:SNDQ AC:SNDFNAC:OPNCKJAC:STUP AC:MEMTSAC:WOT JAC:RDCK AC:T6AX AC:SNDSQJAC:FUN AC:RD AC:WRT O0SEGMENTBLANK oyKI:NEOB I:ECTT I:FINI KI:VCNT I:WAIT I:RPF KI:SIV I:STUP I:EMEM KI:RET igF8 }}"! }}}nI} JEKD  JL ֞QAJJ u}/Yn{@ SKD A DBEh iSKJD D[[[# Zd` RKD A DBECoooDg RKJ aD D]...# - 70 L  B Jg  F/6M A + HrJE KDFCL F 6ƠCXĀ@ XI S@6ArL  LGG un EKD A DmJlllߞ{ AJL ____ B݅L @g  F }F  ڂJK D J /*  B?? 6= D FG }GB ؠB ?@}X NADIN Up@TQtqtttt Ir# g I o# BN2C 6 p܀ B# ]MY @#  g AS# O# g  T# :;C F0 C@6 # @pKUCR+S TVDD# ttt DQR@AQEF@6+@ K% C B+Qy'# J HC #  FX0LVQ # gCC # g W# g  L@X# p܀I  # ܀ # `@gNr`I# g KDg JN @6FK# g  `+ # 6G@|G# g F@F# F6A# tt tu/{@JAC:CNFG O0SEGMENTBLANK oKAC:SND AC:WOT AC:RDCK KAC:SNDSQig RĀB6RX āI} f  xI nKKKK KNrRG @} Y Nu@ 6 R ֒YY ĀR@6A #  > # F D# F J `+ K D`y # N I# PARITY (Y/N) ? ttLtttJAC:FIO O0SEGMENTBLANK o KI:TRTB I:VCNT AC:RSB KAC:SNDCKAC:SNDSQAC:SNDQ KAC:RDCK AC:T6AX AC:SNDFNKAC:OPNCKAC:STUP AC:MEMTSig FND֠N.8 *E %E'JQ  DOPE JB6݁EN @6Ar@N@6AEOJO + - 1 0GG K DJ ODGNFEKJPI # t t t tttV @FNP LDOE jjjLOKD JNFLzO LDELN6@F@6A   KJ➑OLVttOt @6I_LLL L =L 9LȞ5 L L I> \\\ \ SL4EOON GOLǠLP E% 'LOOI PE %r+' #  # /*`AOL`# ttt + - 1 0GG K DJ ODGNFEKJPI # t t t  TITL *** IOS ASYNC MUX IOB EQUATES *** ... (93433-11-X0) *************************************************************** *  * * MACRO FILE TO DEFINE NEW MNEMONICS FOR ASYNC MUX IOS DRIVER * *  * *************************************************************** SPACE 5 ** ** NEW MNEMONICS FOR IO:FC (FUNCTION CODE WORD) ** SPACE 2 * MNEMONICS FOR OPTIONS FIELD OF IOB:A MACRO SPACE 2 TO: EQU 7 BIT NUMBER IN IO:FC TO INHIBIT HARDWARE WRITE ON WOT, WSC ID: EQU 7 BIT NUMBER IN IO:FC TO INHIBIT DATA TRANSFER ON RBF SPACE 2 * MNEMONICS FOR OPERATION MODIFIER FIELD OF IOB:A MACRO SPACE 2 RBF: EQU 4 READ BUFFER AE: EQU 8 FIRMWARE AUTO ECHO OPTION (ADD TO RBF:) CM: EQU 1 SPECIAL CHARACTER MATCH OPTION (ADD TO RBF:) RM: EQU 2 RANGE MATCH OPTION (ADD TO RBF:) RMR: EQU 2 READ MODEM REGISTER ROT: EQU 1 READ OPTION TABLE * SBF: EQU 4 SEND BUFFER SNL: EQU 6 SEND END-OF-LINE SEQUENCE ('SEND NEW LINE') SBK: EQU 5 SEND 'BREAK' SCC: EQU 7 SEND CONTROL CHARACTER WMR: EQU :C WRITE MODEM REGISTER WOT: EQU :D WRITE OPTION TABLE WSC: EQU :E WRITE SPECIAL CHAR TABLE SPACE 100 ** ** NEW SOFTWARE STATUSES FOR IO:ST ** SPACE 2 * CONCURRENT BITS SPACE 2 LBK: EQU 7 BIT #, TRANSMIT STATUS ONLY, LINE BREAK SEEN BY RECV HALF CHARM: EQU 7 BIT #, CHARACTER MATCH OCCURRED ON RECEIVE RANGM: EQU 8 BIT #, RANGE MATCH OCCURRED ON RECEIVE SPACE 2 * NEW STATUS CODES (UNRECOVERABLE) SPACE 2 LDSR: EQU :28 DSR NOT UP BRKDT: EQU :2A  'BREAK' DETECTED ON RECEIVE PE: EQU :2B PARITY ERROR ON RECEIVE OE: EQU :2C OVERRUN ERROR ON RECEIVE SAVE END ABLE WSC: EQU :E WRITE SPECIAL CHAR TABLE SPACE 100 ** ** NEW SOFTWARE STATUSES FOR IO:ST ** SPACE 2 * CONCURRENT BITS SPACE 2 LBK: EQU 7 BIT #, TRANSMIT STATUS ONLY, LINE BREAK SEEN BY RECV HALF CHARM: EQU 7 BIT #, CHARACTER MATCH OCCURRED ON RECEIVE RANGM: EQU 8 BIT #, RANGE MATCH OCCURRED ON RECEIVE SPACE 2 * NEW STATUS CODES (UNRECOVERABLE) SPACE 2 LDSR: EQU :28 DSR NOT UP BRKDT: EQU :2A  TITL *** IOS ASYNC MUX DIBS,CIBS,OPTIONS MACROS *** ... (93433-12-X0) * * MACRO TO GENERATE A SPECIAL INTERRUPT CODE SEQUENCE IN THE CIBS * INT MACRO EXTR I:EOB JST R:SA12 COPY =$-CI:EOB-1,X JMP *$+1 WORD I:EOB ENDM * * MACRO TO CONDITIONALLY GENERATE A SYMBOLIC REFERENCE OR ZERO WORD * COND MACRO 0 COND1 MACENT 1 IFT #2 IF CONDITION TRUE WORD #1 GENERATE SYMBOLIC REFERENCE ENDC IFF #(0) IF ALTERNATE ENTRY, DON'T ASM IFF #2 IF CONDITION FALSE WORD 0 GENERATE ZERO WORD ENDC ENDC ENDM * * USEFUL VALUES * DIF:DC EQU 3 BIT NUMBER FOR DYNAMIC CONFIGURATION DIF:FA EQU 4 BIT NUMBER TO SELECT FA: HANDLER DIF:AB EQU 7 BIT NUMBER TO REQUEST AUTO-BAUDING OPT:DC EQU 1%DIF:DC SET THE BIT OPT:FA EQU 1%DIF:FA SET THE BIT OPT:FC EQU 1%DIF:FC SET THE BIT FOR FORM CONTROL OPT:AB EQU 1%DIF:AB SET THE BIT * * BAUD RATE VALUES * BD:50 EQU 0 BD:75 EQU 1 BD:110 EQU 2 BD:135 EQU 3 BD:150 EQU 4 BD:300 EQU 5 BD:600 EQU 6 BD:1200 EQU 7 BD:1800 EQU 8 BD:2000 EQU 9 BD:2400 EQU :A BD:3600 EQU :B BD:4800 EQU :C BD:7200 EQU :D BD:9600 EQU :E BD:19200 EQU :F TITL MACRO FOR ASYNC DIB * * THIS MACRO GENERATES A DIB FOR AN ASYNC MUX CHANNEL * * THE CALLING SEQUENCE IS * * D:AC CCDD[,OPTS] * * WHERE 'CCDD' IS THE 4 CHAR IDENTIFIER TO FORM DIB ENTRY * POINT NAME 'D:CCDD'. * A REFERENCE TO CIB NAME 'C:CCDD' WILL BE GENERATED. * THE OPTIONAL 'OPTS' FIELD MAY CONTAIN THE OPTION SPECIFIERS: * * OPT:DC MEANING, DYNAMICALLY CONFIGURE AT FIRST OPEN * OPT:FA MEANING, LOAD FA: HANDLER * OPT:AB  MEANING, REQUEST AUTO-BAUDING DURING CONFIG * OPT:FC MEANING, 1ST CHAR IS FORM CONTROL * * IF MORE THAN ONE OPTION IS TO BE SPECIFIED, THE OPTIONS ARE SEPARATED * BY PLUS (+) SIGNS. * AUTO-BAUDING IS EFFECTIVE AT THE FIRST OPEN ONLY IF DYNAMIC CON- * FIGURATION IS ALSO SPECIFIED. * D:AC MACRO NAM D:#1 ASYNC CHANNEL DIB ENTRY POINT NAME EXTR AC:CNFG DYNAMIC CONFIGURATION ROUTINE ENTRY POINT EXTR AC:FIO FORMATTED I/O ROUTINE ENTRY POINT D:#1 WORD 0 DI:PER PEER POINTER (NO PEERS) D:: SET #(2)+0 EVALUATE OPTIONS WORD D:: ASSEMBLE FLAGWORD WORD C:#1 DI:CIB CIB ADDRESS WORD 0 DI:FCB FCB ADDR (NOT USED) BYTE '##1' DI:NAM DEVICE NAME RES 1,0 RESERVED RES 1,0 RESERVED WORD 0 DI:SPB WATCHDOG SHIFTS/BYTE WORD -1 DI:WBT WATCHDOG BASE TIME (NO WATCHDOG) * EQU $ DI:DSW DEVICE SPEC WORDS WORD -1 SELECTION IS BY DRIVER WORD -1 ETC. WORD 0 NO FUNCTION ALLOWED WORD -1 SELECTION IS BY DRIVER RES 2,0 LAST TWO WORDS OF STANDARD DIB * IFT D::&OPT:DC ASSEMBLE IF DYNAMIC CONFIG CALLED FOR COND AC:FIO,D::&OPT:FA REFERENCE FIO OR SPACER WORD AC:CNFG REFERENCE CONFIGURATOR ENDC IFF D::&OPT:DC ASSEMBLE IF NO CONFIGURATION COND1 AC:FIO,D::&OPT:FA REFERENCE FIO OR ASSEMBLE NOTHING ENDC ENDM TITL MACRO FOR ASYNC CIB * * THIS MACRO GENERATES A CIB  FOR AN ASYNC MUX CHANNEL * * THE CALLING SEQUENCE IS: * * C:AC CCDD,DA,CN,IV * * WHERE 'CCDD' IS THE 4 CHAR IDENTIFIER TO FORM CIB ENTRY * POINT NAME 'C:CCDD'. * A REFERENCE TO CIB EXTENSION NAME 'CX:ACDD' WILL * BE GENERATED. * 'DA' IS THE 'DIO' STYLE DEVICE ADDRESS (4 BITS), * 'CN' IS THE CHANNEL NUMBER (0-7), AND 'IV' IS THE INTERRUPT * ADDRESS SET BY THE INTERRUPT VECTOR ADDRESS SWITCH ON THE BOARD * C:AC MACRO NAM C:#1 ASYNC CHANNEL CIB EXTR AC:WRT TRANSMIT DRIVER EXTR AC:RD RECEIVER DRIVER EXTR AC:FUN FUNCTION DRIVER C:#1 CHAN CIB: CI:PER PEER LINK WORD 0 CI:FLG FLAGWORD WORD 0 CI:MST MASTER LINK WORD D:#1 LINK TO DIBS (CI:DIB) WORD :7400 CI:PRI REQUEST PRIORITY WORD #2%3+#3%1 DEVICE ADDR WORD #4%-7%4+#3%3 CI:IV INTERRUPT VECTOR ADDR RES 1,0 CI:UNI RESERVED * * SIMPLY REFER TO ALL DRIVER MAIN ENTRIES SINCE THEY ARE ALL * IN THE SAME CONTROL SECTION AND WILL ALL BE LOADED * WORD AC:RD READ ENTRY WORD AC:WRT WRITE ENTRY WORD 0 NO POSITION ENTRY WORD AC:FUN FUNCTION ENTRY INT INTERRUPT SEQUENCE RES 1,0 CI:T1 TEMP RES 1,0 CI:T2 TEMP RES 1,0 CI:APR REQUESTORS SAVED PRIORITY RES 1,0 CI:TIB ADDR OF TIB WORD 1 CI:USM CONTROLLER USAGE SEMA4 WORD 0 CI:TIM WATCHDOG COUNTS WORD 0 CI:CSM COMPLETION SEMA4 WORD 0 CI:CFL COMPLETION FLAG WORD CX:AC#(1,3,4) CI:OPT ADDR OF OPT+SPEC CHAR TBL ENDM TITL MACRO FOR ASYNC CHAN OPTION TABLE * * OPTION TABLE CIB EXTENSION FOR ASYNC MUX CHANNEL * * CALLING SEQUENCE IS: * * CX:AC DD,BAUD * * WHERE 'DD' IS A TWO DIGIT STRING USED TO FORM THE CIB EXTENSION * ENTRY POINT NAME 'CX:ACDD' * 'BAUD' IS THE TERMINAL BAUD RATE * CX:AC MACRO NAM CX:AC#1 TABLE ADDR CX:AC#1 WORD :21CD  WORD BD:#2%8+:3037 WORD :7F5F SPECIAL CHAR TABLE, ,_ ENDM SAVE END OMPLETION SEMA4 WORD 0 CI:CFL COMPLETION FLAG WORD THIS DISKETTE (F43301) CONTAINS SOFTWARE TO SUPPORT THE ASYNCHRONOUS MULTIPLEXER. THE ASYNCH MUX MAY BE USED WITH AN RTX/IOS APPLICATION OR CAN BE CONFIGURED INTO THE OS4 OPERATING SYSTEM. THE FOLLOWING FILES ARE CONTAINED ON THIS DISKETTE:  IOSAMX.HLP - THIS HELP FILE. IOSAMX.OBJ - OBJECT CODE OF THE ASYNCH MUX DRIVER. THIS FILE IS LINKED WITH THE RTX/IOS APPLICATION OR THE OS4 OPERATING SYSTEM (DURING SYSTEM GENERATION) TO PROVIDE ASYNCH MUX SUPPORT THROUGH IOS. AMXOPS.MAC - DEFINITION FILE CONTAINING EQUATES NEEDED TO  DEFINE ASYNCH MUX OPERATIONS NOT SUPPORTED UNDER STANDARD IOS RULES. AMXDIBCIB.MAC - DEFINITION FILE CONTAINING MACROS AND EQUATES NEEDED TO GENERATE DIBS, CIBS, AND CIB EXTEN- SIONS. THIS FILE WILL GENERALLY BE USED IN CONJUNCTION WITH IOSD.MAC FOR DETAILED INFORMATION ON ASYNCH MUX SOFTWARE CONSULT THE ASYNC MUX IOS4 DRIVER SPECIFICATION MANUAL (93433-00-X0) C - DEFINITION FILE CONTAINING EQUATES NEEDED TO  DEFINE ASYNCH MUX OPERATIONS NOT SUPPORTED UNDER STANDARD IOS RULES. AMXDIBCIB.MAC - DEFINITION FILE CONTAINING MACROS AND EQUATES NEEDED TO GENERATE DIBS, CIBS, AND CIB EXTEN- SIONS. THIS FILE WILL GENERALLY BE USED IN CONJUNCTION WITH IOSD.MAC FOR DETAILED INFORMATION ON ASYNCH MUX SOFTWARE CONSULT ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZ  ZZZZZZZZZZZZZZZZZZZZZZZZZZ! ZZZZZZZZZZZZZZZZZZZZZZZZZZ" ZZZZZZZZZZZZZZZZZZZZZZZZZZ# ZZZZZZZZZZZZZZZZZZZZZZZZZZ$ ZZZZZZZZZZZZZZZZZZZZZZZZZZ% ZZZZZZZZZZZZZZZZZZZZZZZZZZ& ZZZZZZZZZZZZ?e; 790207212221790207212221790207212221e@790207212221790207212221790207212221e:' 790207212221790207212221790207212221e790207212221790207212221790207212221790207212221790207212221790207212221e 7902072130577579020721310225de p7902072131077579020721311125de 7902072131167579020721312125d e?7902072131270079020721313000d( ) * + , - . / 0 ?. IOSAMX OBJAMXOPS MACAMXDIBCIB MAC IOSAMX HLP1 ZZZZZZZZZZZZZZZZZZZZ2 ZZZZZZZZZZZZZZZZZZZZZZZZZZ3 ZZZZZZZZZZZZZZZZZZZZZZZZZZ4 ZZZZZZZZZZZZZZZZZZZZZZZZZZ5 ZZZZZZZZZZZZZZZZZZZZZZZZZZ6 ZZZZZZZZZZZZZZZZZZZZZZZZZZ7 ZZZZZZZZZZZZZZZZZZZZZZZZZZ8 ZZZZZZZZZZZZZZZZZZZZZZZZZZ9 ZZZZZZZZZZZZZZZZZZZZZZZZZZ: ZZZZZZZZZZZZZZZZZZZZZZZZZZ; ZZZZZZZZZZZZZZZZZZZZZZZZZZ< ZZZZZZZZZZZZZZZZZZZZZZZZZZ= ZZZZZZZZZZZZZZZZZZZZZZZZZZ> ZZZZZZZZZZZZZZZZZZZZZZZZZZ? ZZZZZZZZZZZZZZZZZZZZZZZZZZ@ ZZZZZZZZZZZZZZZZZZZZZZZZZZA ZZZZZZZZZZZZZZZZZZZZZZZZZZB ZZZZZZZZZZZZZZZZZZZZZZZZZZC ZZZZZZZZZZZZZZZZZZZZZZZZZZD ZZZZZZZZZZZZZZZZZZZZZZZZZZE ZZZZZZZZZZZZZZZZZZZZZZZZZZF ZZZZZZZZZZZZZZZZZZZZZZZZZZG ZZZZZZZZZZZZZZZZZZZZZZZZZZH ZZZZZZZZZZZZZZZZZZZZZZZZZZI ZZZZZZZZZZZZZZZZZZZZZZZZZZJ ZZZZZZZZZZZZZZZZZZZZZZZZZZK ZZZZZZZZZZZZZZZZZZZZZZZZZZL ZZZZZZZZZZZZZZZZZZZZZZZZZZ