[net.micro] MDM727 Function Key Patch

ABN.ISCAMS%usc-isid@sri-unix.UUCP (03/12/84)

Netlandians,

Just  downloaded  and installed the latest  Christensen  protocol
 MODEM program  --  MDM727 -- from SIMTEL20.  Our author, Irv Hoff, 
and his compatriots continue to do great work!

I  particularly  wanted to learn how to implement function  keys,
and sure 'nuff,  found the MDM727 implementation was incompatible
with  my  nice (but somewhat limited in some  ways)  Freedom  100
terminal.

The  Freedom 100 produces the following code set when a  function
key (unshifted) is pressed:

^A @ CR    for F1
^A A CR    for F2
  ... and so on up through
^A I CR    for F10
  
And of course -- they aren't programmable and can't be changed!

The  following wee little patch to MDM727 (sorry,  guys - it's in
the guts of the thing,  so you gotta download MDM727.ASM.  No way
I can do this in the overlays!) ...  anyway,  it fixes it for the
Freedom 100 -- and the basic idea should work for you others  who
have fixed Function Keys.

I  kind  of wonder what happens to the trailing  carriage  return
(0DH) that the Function Keys send.  MDM727 grabs the Function Key
Intercept Character (changed by M7FNK.COM very nicely, thank you,
Sigi  Kluger),  and then grabs the next character well enough  --
and,  thanks  to  my patch,  changes it down to a 0..9 scale  and
sends the appropriate chunk of text associated with that value --
but darned if I know where the CR goes to!   It may turn up after
a  bit  of  operation by overflowing my  stack  or  trashing  the
directory  or  some horrible side-effect - but no sign if  it  at
present!   Nope,  doesn't  seem  to  be grabbed and  sent  on  in
Terminal Mode as the next character either!   The key definition,
and ONLY the key definition is sent.  Any ideas, Sigi or Irv?

Regards to all -- hope you can put this to use.
David Kirschbaum
Toad Hall
(ABN.ISCAMS @ USC-ISID)

(Incidentally, wonder how I get those @ signs (the Intercept Character
for my TAC) through the TAC in a straight text upload into my host text
editor?  Ho ho, the World Famous Toad Hall TAC Trap, of course!)


Toad Hall Patch to MDM724, 10 Mar 84
Changes  Function Key implementation from "^0" ASCII through "^9"
ASCII to ^A"@" through ^A"I".

NOTBKSP:LDA	FNKFLG		;get function key active flag
	ORA	A
	JZ	NOF		;if not set yet, exit
	MOV	A,B		;get character
	cpi	'@'		;Freedom 100 for F1 unshifted
;	CPI	'0'

	JC	NOFNK1		;ignore invalid key codes
	cpi	'I'+1		;Freedom 100 for F10 unshifted
;	CPI	'9'+1
	JNC	NOFNK1
; Just can't get that masking business right.  [Toad Hall]
	sui	'@'		;This oughtta make it a zero.
;	ANI	0FH		;make 0..9
	JMP	SENDFK

... and that's it, folks!