home *** CD-ROM | disk | FTP | other *** search
- M7KP-2.MSG -- Kaypro II overlay file for MDM724. 2/18/84
-
- M7KP-2.ASM is a modified overlay of M7KP-1.ASM. It has been written
- to work with any MDM7xx.COM file from MDM711 to MDM724. This overlay has
- modified the set command to allow the user to change:
-
- - baud rate (300 or 1200), (300 baud at startup)
- - word length (7 or 8) (8 bit word at startup)
- - number of stop bits (1 or 2) (1 bit stop bit at startup)
- - parity (none, even, or odd) (no parity at startup)
- (A null line will not change the value from the last change.
-
- You will want to look the file over carefully. There are a number of
- options that you can use to configure the program to suit your taste. This
- file adapts the Kaypro II (and most likely Kaypro 4 and 10 and Xerox 820)
- computer to the modem program (MDM724.COM).
-
- TO USE:
- 1. Load down the .COM file (MDM724.COM in MDM724.LBR)
- 2. Load down the overlay file (M7KP-2.AQM may be in M7OVL-2.LBR)
- 3. Load down the phone number overlay file if you want to
- change the menu. Current version is M7NM-6 for MDM724.
- Use M7NM-5 FOR MDM720.
- (you may change phone numbers later with M7LIB)
- 4. Un-squeeze the AQM files.
- 5. Edit M7KP-2.ASM filling in values for your own needs.
- 6. Assemble with ASM.COM or equivalent assembler.
- 7. Use DDT to overlay the results of this program to the
- original .COM file (suggest you save in new .COM file):
-
- A>DDT MDM724.COM
- DDT VERS 2.2
- NEXT PC
- 4900 0100
- -IM7KP-2.HEX (note the "I" command)
- -R ("R" loads in the .HEX file)
- -IM7NM-6.HEX * if you want to change the
- -R * name overlay also
- NEXT PC
- 4900 0000
- -G0 (return to CP/M)
- A>SAVE 72 MDM7.COM (now have a modified .COM file)
-
- NOTE: The value "72" is the number of 256 byte blocks that the
- program requires. This value is for MDM724. To calculate the value for
- other versions, use the hi-order byte under "NEXT" and convert to
- decmial and, if the low order byte is zero, subtract one. If the low
- order byte is not zero do not subtract one. (ie: 4 x 16 + 9 - 1 = 72)
-
- Values you may want to change are listed below. (The location, in
- hex, is listed to the right so you can patch the values with DDT.)
-
- TOUCHPULSE: DB 'T' T=touch, P=pulse (Smartmodem-only) 105H
- TOGGLEBK: DB NO yes=allow toggling of bksp to rub 112H
- ADDLF: DB NO no=no LF after CR to send file in 113H
- terminal mode (added by remote echo)
- TOGGLELF: DB YES yes=allow toggling of LF after CR 114H
- XOFFTST: DB NO yes=checks for XOFF from remote while 11AH
- sending a file in terminal mode
- XONWAIT: DB NO yes=wait for XON after CR while 11BH
- sending a file in terminal mode
- TOGXOFF: DB YES yes=allow toggling of XOFF checking 11CH
- IGNORCTL: DB NO yes=CTL-chars above ^M not displayed 11DH
- BRKCHR: DB '@'-40H ^@ = Send a 300 ms. break tone 120H
- NOCXNNCT: DB 'N'-40H ^N = Disconnect from the phone line 121H
- LOGCHR: DB 'L'-40H ^L = Send logon 122H
- LSTCHR: DB 'P'-40H ^P = Toggle printer 123H
- UNSAVE: DB 'R'-40H ^R = Close input text buffer 124H
- TRANCHR: DB 'T'-40H ^T = Transmit file to remote 125H
- SAVECHR: DB 'Y'-40H ^Y = Open input text buffer 126H
- EXTCHR: DB '^'-40H ^^ = Send next character 127H
-
-
- SYSVER: CALL JMP$ILPRT N: EQU 03H ;even parit 1A7H
- DB 'M7KP-2, Version for Kaypro II',0 1AAH
- RET
-
-
- You can put in a message at this location which can be called up with
- CTL-L if TRANLOGON has been set YES. You can put in several lines if
- desired. End with a 0.
-
- LOGON: DB 'LOGON',CR,LF,0 1C9H
-
- NOTE: You can change the SYSVER message and LOGON message to be
- longer or shorter. The end of your last routine should terminate by
- 0380h when using the Hayes Smartmodem. When assembled, this overlay
- is 37Eh bytes long, this leaves 2 bytes (dec) to play with.
-
- You may also want to change the file transfer size at location
- 0DEFFh IN MDM722 or 0CFFh in MDM720.
-
- (SAVSIZ) 20 = 4k file transfer buffer size
- 40 = 8k file transfer buffer size
- 80 = 16k file transfer buffer size
-
- = = = = = = = = = = = = = = = = = = = = = = = = =
-
- Some time sharing systems send extra characters for timing. Most of
- the time the null (hex 00) character is chosen but some systems use a
- <DEL> (hex 7F) character. The following routine in MDM724.COM bypasses
- null characters.
-
- TERML: CALL RCVREADY ;character on the receive-ready line?
- JNZ TERM ;if not, exit
- CALL IN$MODDATP ;get the character
- ANI 7FH ;strip parity
- JZ TERM ;don't bother with nulls
- MOV B,A ;store temporarily
- LDA IGNORCTL ;* ;ignoring all but necessary ctl-chars?
- ORA A ;*
- JZ GIVLF ;* ;if zero, display them all
- MOV A,B
- CPI ' '
- JNC GIVLF ;display all printing characters
- CPI 'G'-40H ;^g for bell
- JC TERM ;ignore ctl-characters less than ^g
- CPI CR+1
- JNC TERM ;ignore ctl-charsacters more than ^m
- ;
- GIVLF: EQU $
-
- If you choose to ignore all but necessary control characters the
- following patch will also bypass <DEL> characters:
-
-
- B0>ddt mdm724.com
- DDT VERS 2.2
- NEXT PC
- 4900 0100
- -a1ee1
- 1EE1 cpi 7f
- 1EE3 jz 1fee
- 1EE6 nop
- 1EE7 nop
- 1EE8 <cr>
- -G0
-
- B0>save 72 mdm724.com
-
- = = = = = = = = = = = = = = = = = = = = = = = = =
- The attached code is in the routine to send a LOGON
- message. If the system is working with half-duplex,
- could this routine slow down the transmission of the
- LOGON message? Seems to go to try to get the ECHO
- character from the host.
-
- LOGLP1: MVI B,1
- CALL RECV change to nop
- RC change to nop
- ANI 7FH change to nop
- JMP TYPE
-
- Think this routine is used also in the new function
- key support for MDM724.
-
-
- The following patch may clear this problem
- for MDM724.
-
- B>ddt mdm724.com
- DDT VERS 2.2
- NEXT PC
- 4900 0100
- -A1E40
- 1E40 nop
- 1E41 nop
- 1E42 nop
- 1E43 nop
- 1E44 nop
- 1E45 nop
- 1E46 <cr>
- -g0
- B>save 72 mdm724.com
-