Code Comments
Programming Forum and web based access to our favorite programming groups.My company is currently using QCTerm as a unix emulator, when I try to run the anim command (animate command in MF Cobol) it works, but I am not able to use important function keys like F4 to monitor. If I press function keys the session just freezes and I have to do a hard reset from the QCTerm drop-down menus. Not sure hw much knowledge anyone here has in Unix Emulators or if I am posting in the right area. Anyway, any help would be appreciated it. It appears the function keys are clashing with the animator function keys.
Post Follow-up to this messageIn article <1106314584.933149.249500@f14g2000cwb.googlegroups.com>, "Jeff" <jmoore207@hotma il.com> writes: > My company is currently using QCTerm as a unix emulator, Unix *terminal* emulator, I think you mean. A "Unix emulator" would presumably be some software that emulated Unix itself, like cygwin, perhaps. I draw the distinction because what you're experiencing is a classic terminal definition issue, and "terminal" will be the key word when you go looking for more information. > when I try to > run the anim command (animate command in MF Cobol) it works, but I am > not able to use important function keys like F4 to monitor. If I press > function keys the session just freezes and I have to do a hard reset > from the QCTerm drop-down menus. What's probably happening is that the key you're pressing is sending the current suspend-output or discard-output character, and the Unix tty driver is complying by not sending any more output back to your terminal emulator. Unix has evolved to support a tremendous range of (character-mode, ASCII) terminals, from very basic to highly sophisticated, and other interfaces that emulate or otherwise mimic terminals. Part of that means the tty driver doesn't know how function keys, or other special sequences, work. Instead, the OS provides a place where terminal manufacturers and others can describe how their terminals work - for example, what sequence of bytes they send when the user presses the F4 key (if the terminal has an F4 key). And the development environment includes a library to help applications (like anim) read and understand that information, so they can recognize those special sequences. This system is powerful and extensible, but it's fragile. It depends on: - having the correct and complete definitions for your terminal installed, - the application using them correctly, and - the correct terminal type being communicated to the application In this case, we know anim is a well-established application that works correctly with a lot of terminals; that doesn't mean it's bug-free in this respect, but odds are that the first or last item is where the problem lies. With a TELNET connection, which I'll assume you're using, the terminal emulator sends a terminal type name to the server when the conversation begins, as part of TELNET option negotiation. This is just a string like "vt100" (for DEC's popular VT-100 terminal). The telnetd server on the Unix system will then set the TERM environment variable to that name. When a program like anim wants to do fancy things with the terminal, like recognize function keys, it looks at the value of $TERM to find out which terminal definitions to load. It also looks at some other environment variables to find out, for example, where to load definitions from. (Also, there are some settings in the tty device's configuration that can affect things at a lower level, depending on what mode the application sets the tty device to.) So here are some possibilities: - QCTerm is not sending the right terminal type string. - Something changed the value of the TERM environment variable between the time you connected and the time you ran anim. This is actually very common; lots of people have .profile files and the like that set TERM when they shouldn't. - The terminal type QCTerm is sending doesn't have a correct definition on your system. Maybe the correct definition exists under a different name; maybe it's just not there at all. I don't know QCTerm, but many TELNET terminal emulators emulate a variety of terminals, and let you set the terminal type string they send. Diagnosing this sort of problem is usually fairly easy for an experienced Unix system administrator, so if you have one handy you should probably ask. (If you don't ... well, it's not the way I'd recommend doing things, to put it mildly.) Or you can cheat. anim and the other MF COBOL full-screen utilities let you use slash-number in place of the function keys: hit slash, then 4, for F4. -- Michael Wojcik michael.wojcik@microfocus.com It does basically make you look fat and naked - but you see all this stuff. -- Susan Hallowell, TSA Security Lab Director, on "backscatter" scanners
Post Follow-up to this messageThe QCTerm emulator looks like a really nice emulation of an HP700/92 terminal. There are a couple of issues that make working with the HP700/92 terminal a little more challenging than some other terminal emulators. One issue is that the 700/92 terminal has a couple of modes i.e. block mode and character mode - Block mode is not really usable when connected to UNIX systems. Additionaly the function keys themselves can operate in either NORMAL mode or in TRANSMIT mode you should define NORMAL mode when defining keys for use on UNIX systems. The terminal can also be placed in User mode or in System mode via escape sequences typed on the keyboard or by using CTRL and a Function key, this makes it possible to accidentily change modes and can make using the terminal a lot less fun in comparison to some other terminals/emulators. The HP700/92 termianal is/was made for use with HP3000 systems and can be pretty fussy when connected to UNIX systems. I would recommend that you use an alternative emulator, I recommend that your evaluate 'PowerTerm' from a company named Eriicom The PowerTerm emulator is capable of emulating a SCO ANSI color terminal, it provides for 128 function keys (right out of the box) give it a try, set it up for SCO ANSI emulation and set your TERM environment variable = at386. You will not need to set either TERMINFO or COBTERMINFO variables and it will work perfectly with Micro Focus tools and applications. "Jeff" <jmoore207@hotmail.com> wrote in message news:1106314584.933149.249500@f14g2000cwb.googlegroups.com... > My company is currently using QCTerm as a unix emulator, when I try to > run the anim command (animate command in MF Cobol) it works, but I am > not able to use important function keys like F4 to monitor. If I press > function keys the session just freezes and I have to do a hard reset > from the QCTerm drop-down menus. Not sure hw much knowledge anyone here > has in Unix Emulators or if I am posting in the right area. Anyway, any > help would be appreciated it. It appears the function keys are clashing > with the animator function keys. >
Post Follow-up to this messagePowered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.