[comp.sys.amiga] Problem with VT100 v2.3

sdl@linus.UUCP (11/28/86)

Hi,

I have encountered a strange problem with Dave Wecker's VT100 emulator
(V2.3 DBW 861101).  I compiled it with Lattice (and set the vt100.h
switches accordingly).  However, when running it, the beep doesn't
work at all--neither audibly nor visibly.  With VOLUME set to 64, I
get no audible beep; and with VOLUME set to 0, the screen doesn't
flash at all.

What is even stranger is that the older version of the VT100 emulator
on Fred Fish Disk #36 exhibits the exact same symptom, even though
that code was already compiled/linked as object code.

Has anyone else encountered this?  (P.S. I'm using Workbench 1.1)


Steven Litvintchouk
MITRE Corporation
Burlington Road
Bedford, MA  01730

Fone:  (617)271-7753
ARPA:  sdl@mitre-bedford
UUCP:  ...{cbosgd,decvax,genrad,ll-xn,philabs,security,utzoo}!linus!sdl

hull@hao.UUCP (Howard Hull) (11/28/86)

In article <67@linus.UUCP>, sdl@linus.UUCP (Steven D. Litvintchouk) writes:
> I have encountered a strange problem with Dave Wecker's VT100 emulator
> (V2.3 DBW 861101).  I compiled it with Lattice (and set the vt100.h
> switches accordingly).  However, when running it, the beep doesn't
> work at all--neither audibly nor visibly.  With VOLUME set to 64, I
> get no audible beep; and with VOLUME set to 0, the screen doesn't
> flash at all.

I suspect that there are two problems, one easy and the other yet unidentified.
If you set VOLUME to 64 in vt100.h and compile under Manx, then setting
VOLUME to 0 in vt100.init produces neither sound nor flash.  But if you set
VOLUME to 0 in vt100.h under Manx, then set VOLUME to 64 in vt100.init,
you get sound, or if you set VOLUME to 0 in vt100.init, you get the flash
like you're supposed to.  That's the easy one.

However, I have heard numerous complaints from otherwise generally competent
individuals using Lattice that they couldn't get sound or flash, which leaves
me to suspect that Lattice is doing something different than Manx.  There was
a net article dealing with compiling VT100 under Lattice (1574@jade.BERKLEY.EDU)
by Mike Meyer; it contained a Fred Fish style makefile.  He said that all he
did was "I twiddled the MANX and LATTICE defines to 0 and 1 (respectively)
in vt100.h"  He then made some changes to the code regarding screen placement.
(He was working with v2.2, which had some problems that were fixed in v2.3.)
Other than that,  I don't recall ever seeing an article showing changes to
the code to fix a possible Lattice no-sound syndrome.
								Howard Hull
[If yet unproven concepts are outlawed in the range of discussion...
                   ...Then only the deranged will discuss yet unproven concepts]
	{ucbvax!hplabs | decvax!noao | mcvax!seismo | ihnp4!seismo} !hao!hull

chas@gtss.UUCP (Charles Cleveland) (12/04/86)

In article <448@hao.UUCP> hull@hao.UUCP (Howard Hull) writes:
>
>I suspect that there are two problems, one easy and the other yet unidentified.
>If you set VOLUME to 64 in vt100.h and compile under Manx, then setting
>VOLUME to 0 in vt100.init produces neither sound nor flash.  But if you set
>VOLUME to 0 in vt100.h under Manx, then set VOLUME to 64 in vt100.init,
>you get sound, or if you set VOLUME to 0 in vt100.init, you get the flash
>like you're supposed to.  That's the easy one.
>
I got a Lattice 3.03 compilation of 2.3 to flash when setting volume to zero
in vt100.init when vt100.h had a finite volume by changing in init.c the line
	if(i > 0) p_volume = i;
which apparently makes it impossible to set the volume to zero if it is not
so set in vt100.h, to
        if(i >= 0) p_volume = i;
I truly don't under stand how, with MANX, setting volume to zero in a .init
file can have any effect on the program's behavior as compared with not
setting it at all.  So I probably missed something.

In any case, I'm still beepless.

I also added support for cursor application keys in addition to keypad
application keys.  Wecker assumes that if keypad application keys are
on that cursor application keys are too (another poster suggested that
the cursor application keys be left off at all times).  Depends on the
host (and what program it's running).  Wecker's method works fine on
my UNIX hosts but not on Cybers, which I also use from time to time.
Since most readers of this column use UNIX, and they *all* could easily
manage this change for themselves, I have refrained from posting the
diffs.  However, if interest demonstrates itself I will do so.

However, I have another problem which I have still not tracked down.
If I use an .init file (mine are never called vt100.init, of course)
my version of vt100 forgets what the keyscript character is and also
forgets what F1 is supposed to do.  I have so far just added these
to my .init files, a crude but effective solution which leaves me
vaguely uneasy.  This was something I hoped would go away with 2.3.
Has anybody else out there seen anything like this?  It predates my
modifications.

Oh yeah, there's one thing that Lattice barfs on.  In kermit.c in
the routine multi_xfer() there is a 'return();'.  Since return is not
a function and () is a pretty peculiar expression, K&R (and Lattice) have
every right to be upset.  I deleted the () and changed the declaration of
multi_xfer to void, since it never returns a value.

Regards.

-- 
Charles Cleveland			chas@ss.physics.gatech.edu
Georgia Tech School of Physics
Atlanta, GA 30332			Georgia Tech Surface Studies

...!{akgua,allegra,amd,hplabs,ihnp4,masscomp,ut-ngp,rlgvax,sb1,
	uf-cgrl,unmvax,ut-sally}!gatech!gtss!chas


-- 
Charles Cleveland			chas@ss.physics.gatech.edu
Georgia Tech School of Physics
Atlanta, GA 30332			Georgia Tech Surface Studies

...!{akgua,allegra,amd,hplabs,ihnp4,masscomp,ut-ngp,rlgvax,sb1,
	uf-cgrl,unmvax,ut-sally}!gatech!gtss!chas