Originally posted by: gbs@voder.UUCP (George Smith)
Message-ID: <455@voder.UUCP>
Date: Fri, 12-Oct-84 01:26:42 EDT
Article-I.D.: voder.455
Posted: Fri Oct 12 01:26:42 1984
Date-Received: Sat, 13-Oct-84 06:41:22 EDT
Distribution: net
Organization: National Semiconductor, Santa Clara
Lines: 71
Let me state that we think that the kermit package for the
IBM PC is SUPER!
We have found a couple of problems with the
h19 emulator portion of the code, however. These problems
show up when using vi or vnews. The first is that a real h19
has a non-destructive tab where the emulator just used spaces.
When vi used a tab for positioning, characters would be erased.
The second is that the emulator used the IBM PC ROM BIOS to scroll
up the screen for a delete line command; when the cursor was
on the bottom line, a lot of garbage is output to the screen.
The code below fixes both problems in file "msyibm.asm".
One last change is in the termcap entry used with vi - the `am'
capability must not be specified since the kermit h19 emulator
does not do line wrap (i.e. automatic margins in termcap jargon).
I should say that we have an IBM PC/XT with 640k running DOS 2.1.
Again, thanks to all the people that provided the public with
such a fine program.
old code for outputting a tab:
outtab: mov dl,byte ptr cursor ; get initial column
outta1: mov dh,dl ; save column ptr
push dx
mov al,' ' ; output a space
call outtty ; convenient, huh?
pop dx
new code for outputting a tab:
outtab: mov dl,byte ptr cursor ; get initial column
outta1: mov dh,dl ; save column ptr
push dx
mov al,chesc ; output a cursor forward
call outtty
mov al,'C'
call outtty
pop dx
old code for deleting a line:
dellin1:mov ch,dh ; start at current row
xor cl,cl ; column 0
mov dx,low_rgt
; mov dx,174fh ; to bottom of screen
mov ah,6h ; scroll up.
mov bh,curattr ; attribute
int screen
ret
new code for deleting a line:
dellin1:mov ch,dh ; start at current row
xor cl,cl ; column 0
mov dx,low_rgt ; ... and end at bottom of screen
cmp ch,dh ; check for cursor at bottom
jb dellin2 ; if not at bottom then scroll
mov dx,cx ; else clear end of line
call clreol
ret
dellin2:
mov ah,6h ; scroll up.
mov bh,curattr ; attribute
int screen
ret
--
George B. Smith
National Semiconductor
{apple, nsc, ucbvax}!voder!gbs