6-Feb-85 15:57:11-EST,4177;000000000000 Date: Wed 6 Feb 85 15:57:10-EST From: Frank da Cruz Subject: [Walt Lamia : Re: DECmate Kermit question] To: OC.Charles@CU20B.ARPA, PRDLB@CUVMD, CU.RWJ@CU20B.ARPA Here's the answer to the pernicious DECmate vs "IBM-Mode" problem. The analysis he's referring to below is that the DECmate's I/O processor swallows CMS's XON line turnaround handshake character before DECmate Kermit gets a chance to see it. I trust the fix he provides will be in the next release. Aren't networks wonderful? - Frank --------------- Date: Wed 6 Feb 85 14:33:39-EST From: Walt Lamia Subject: Re: DECmate Kermit question To: SY.FDC@CU20B Cc: Charles@ACC.ARPA, Eiben@DEC-MARLBORO.ARPA, LAMIA@DEC-MARLBORO.ARPA In-Reply-To: Message from "Frank da Cruz " of Tue 5 Feb 85 19:08:26-EST Yup, your analysis is essentially correct. The 6180 (PDP-8 chip) processor does all of the I/O for the Z80 in the DECmateII, including the comm. line. This is basically good, since it's a 12 MHz, good I/O processor, so you (almost) never loose any characters on the comm. port. However, the default condition is for the 6120 to completely handle xon/xoff protocol, and never pass them on to the Z80. It's easy to turn this off, however, by sending a message to the 6120 "operating system" with the extended bios's. Now that I've explained all this, I'll give you the code that does it. It is an extract from the standard MDM730 overlay for DECmates, in the initialization routine. You should endeavour to have this code executed during Kermit initialization. NOTE -- this method is "sticky", in that once the XON/XOFF handling by the 6120 is disabled, it stays that way until another >cold boot<, unless you run another program to turn it back on. The good news is that I have never found it necessary to turn it on, i.e. everything seems to work ok either before or after running it. So I just don't worry about it. Good luck, and thanks for Kermit! %Walt ;===================================================================== ; M7VT-4.ASM -- DEC Micro Overlay File for MDM7xx / MEX. 29-Aug-84 ; ; ;This Overlay File supports the DEC Micros VT180, Rainbow and ;DECmate II with CP/M. ; ;We use the COMM-Port of the Micro's. Baud-rates are "parallel" ;to the console Baud-rates - no need for a "special" baud-rate ;routine. Since the COMM-port is I/O-wise Reader/Punch, we use ;the BDOS calls. ; ;To test for COMM-status , we use I/O byte redirection in ;conjunction with direct BIOS-CONSTAT call. ; ;This technique although a little bit slower than direct I/O ;using Interrupt on INPUT is general enough to be system ;independent. Set one of the following switches to TRUE: ; ;RAINBO1 for (old) Version 1 CP/M 80/86 ;RAINBO2 for (current) Version 2 of CP/M 80/86 ;DECMATE for DECmate II with CP/M option ;ROBIN for the VT180 (aka ROBIN) ; ; - B. Eiben DEC Large System Marketing Marlboro Mass ; ;*********************************************************************** ;................ ; IF DECMATE DEFIO EQU 81H ; the "standard" setting BATIO EQU 42H ; ENDIF ; DECMATE ; ;..... ; ; ; You can use this area for any special initialization or setup you may ; wish to include. Each must stop with a RET. You can check the other ; available overlays for ideas how to write your own routines if that ; may be of some help. ; INITMOD: LHLD 1 ; Get BIOS Jump-table adress LXI D,3 DAD D ; CONSTAT routine in BIOS SHLD BCONST+1 ; modify our "routine" IF DECMATE nocixon equ 016h ; turn off comm. input XON/XOFF cixon equ 015h ; enable comm. inp XON nocoxon equ 001h ; turn off comm. output XON coxon equ 000h ; enable comm. output XON lxi b,(nocoxon * 100h) + prtctl ; c/prtctl, b/no out. xon call outbyt1 ret ; and return outbyt1: lhld 1 ; get warm boot address lxi d,oboff ; offset of outbyt routine dad d ; compute address pchl ; branch there (a callret) ENDIF;DECMATE RET ------- -------