; Mex patches for ATR8000 with MDM7 overlay ; These patches allow MEX to test the atr's ; Parelell port status - Select a baud rate ; Automatically from MEX's PHONE library. ; ; To install, use DDT and overlay the .HEX files over MEX. ; ; ; Ex. DDT MEX112.COM ; -IMXO-ATR1.HEX ; -R ; -IMXO-SM13.HEX ; -R ; -S0D11 ; -94 D5(<- YOU TYPE D5) ; -46 1D(<- YOU TYPE 1D) - - - You just installed the printer! ; -G0 ; ; DDT Will return to the logged drive at which time type SAVE 95 ATRMEX.COM ; at cp/m's comand prompt. ; ; ; My thanks to the author of M7ATR ; ; also ; ; to Ron Fowler author of MEX ; ; ; PATCHES ; Authored by Rich Gortatowsky [72376,2153] ; ; (12/22/84) ; .Z80 ORG 01D5H ;Place printer status routine in LOGON ;as MEX does'nt use that area. PSTAT: IN A,(20H) ;Get printer status RLCA ;If busy = 0BFH.. Carry set on busy JR NC,PRED ;If 3FH, printers ready LD A,00H ;A REAL busy code back to MEX. RET PRED: LD A,0FFH ;A REAL ready status back to MEX. ; ; This next routine allows for auto-baud selection from the PHONE command ; This has only been tested in MEX112.COM, Mex passes a value from 0 to 9 ; to the routine in the A register, 0 corresponding to 110 baud and 9 ; corresponding to 19.2k baud. ; ; * HOW CONVIENIENT! considering the ATR's SETCMD: routine uses these * ; * same values! * ; NBAUD: ORG 06ADH ;Right after physical modem ovly PUSH HL PUSH DE ;Save all regs. PUSH BC LD HL,03F0H ;Time values for CTC (baud values) PUSH AF ;Save the Baud select value passed from MEX ADD A,L ;Add to get offset to baud rate. LD L,A ;Store back to L. LD B,(HL) ;B now contains the Baud value LD HL,06AAH ;Parity values? HA! CTC init bytes! LD A,(0683H) ;Index from SETCMD. ADD A,L ;Must keep parity (?) the same LD L,A ;HL now points to it. LD C,(HL) ;C contains ctc control. POP AF ;Get Baud select value (from MEX) CP 06H ;greater than 1200 bps? JR NC,GRTR ;If > 1200 SET 5,C ;Pre-scale of 256, not 16. GRTR: LD (02BAH),BC ;Set up parameter for use by COMINIT LD (0398H),A ;Set SETCMD:'s counter. LD (0107H),A ;Set MSPEED in modem ovly (MEX looks at it). CALL 02BCH ;Call COMINIT, will init CTC. POP BC POP DE ;Restore regs (DE used by COMINIT) POP HL RET ;All DONE! ; ; ; ORG 0107H ;Newbaud vector. DW NBAUD ; END