HomeSearchContactlegal Notedisclaimer

NeoMedia's Product Support

WISP Frequently Asked Questions (FAQ)

What is the latest release of WISP?

What release of WISP supports Acucobol-GT 7.x?

What release of WISP supports Vista?

How does the 2007 U.S. Daylight Savings Time changes effect WISP?

What release of WISP supports HP-UX 11?

What does "Terminating on an error detected by ACUCOBOL." mean?

What does "WISP-E-NOMSG WISP error, message number xxxxx" mean?

What does error "(59836) %SHAREMEM-F-SHMAT Error getting PUTPARM shared memory address, shmid=xxxx, errno=13" mean, and how do I fix it?

How do you build an ACUCOBOL runtime system that includes ACU4GL, ORACLE, and WISP? The supplied WISP makefile doesn't work.

If I upgrade to the latest version of WISP do I need to re-translate and re-compile my applications?

How does $UNIX_CODE work? Is there a $NT_CODE?

What release of WISP supports Acucobol Vision 4 files?

Does WISP support LBM's UniQue on NT?

If we are running multiple different terminal emulators do we need different videocap files?

Can you modify a user's Print Mode Defaults such that the print request sent to UniQue is Hold and Requeued(ie. ulp -M re,hold ...)?

What causes a "Load error" with Micro Focus COBOL and how do I fix it?

How do you turn off the UniQue title message so it doesn't appear in the wisperr.log file?

What causes "%WEXITINT-F-SIGNAL User signaled interrupt,(1)"?

What guidelines do you use for sizing a UNIX machine for WISP migrated applications?

What does the message "License file 'wisp.4200/acu/wruncbl.alc' inaccessible" mean?

How do you map a volume name to a share name so that it works with both NT and 95?

After a backup is restored the create date from READFDR is wrong. The "ls" command works, why doesn't READFDR?

Can I map the ESC key to be the HELP key in my videocap file?

The new version of PROCTRAN doesn't handle binary numbers correctly. Can we continue using the old versionsof PROCTRAN?

What version of CRID and CREATE support Micro Focus IDX4 files?

On Windows how do you print files with embedded printer control codes?

Why does my terminal emulator show BOLD fields as the same color are BOLD+BLINK+UNDERLINE fields?

What GETPARM's are issued by the wfopen3 routine?

How do you tell a WISP migrated application it is running in background?

On Windows 95 I get an "Out of Environment Space" when I run the VCVARS32.BAT file.

What are the differences between WISP on UNIX and WISP on Windows (WIN32)?

How do you determine the SIGN characteristics for zoned numeric data fields?

Is WISP Year 2000 compliant?

If I upgrade to a Y2K compliant version of WISP will my applications then be Y2K compliant?

On Windows how do you define the Floppy as a volume in the LGMAP?

What is the latest release of WISP?

The latest release of WISP is 5.0.01.

The latest release of KCSI (C.R.I.D. and CREATE) is 4.1.00.

Date Updated: 11/13/2003

To top

What release of WISP supports Acucobol-GT 7.x?

Patches for WISP 5.0.01 are available to support Acucobol-GT 7.2.x at

ftp://ftp.neom.com/public/wisp/patches/Acucobol720/

Patches for WISP 5.0.01 are available to support Acucobol-GT 6.2.0 at

ftp://ftp.neom.com/public/wisp/patches/Acucobol620/

WISP Release 5.0.00 and later support Acucobol-GT 6.0 and Acucobol-GT 6.1.0.

Date Updated: 7/26/2007

To top

What release of WISP supports Vista?

Patches for WISP 5.0.01 are available to support Vista at ftp://ftp.neom.com/public/wisp/patches/Vista/

Date Updated: 8/8/2007

To top

How does the 2007 U.S. Daylight Savings Time changes effect WISP?

There is no patch to the WISP software needed to support the changes to Daylight Savings Time.

The WISP runtime libraries use the Unix Standard C Library Function localtime() to convert the universal time to local time. The function localtime() is used in the various DATE vssubs and all places where the time is returned or displayed.

You may need to apply the latest patches to your Operating System to get the updates to the localtime() function and other timezone software. You may also need to rebuild your Cobol Runtime System to ensure you are using the latest patch to the localtime software. This step may or may not be required depending on how the localtime function is implemented on your OS. If localtime dynamically retrieves its timezone information then it will not be required, if localtime statically includes the timezone information in the program then you will need to rebuild the Cobol Runtime. I do not have a breakdown on how each OS and OS version behave so I am unable to provide you with a definite answer as to weather a rebuild is required on any particular OS.

Date Added: 2/15/2007

To top

What release of WISP supports HP-UX 11?

The earliest release that supports HP-UX 11.00 is WISP 4.4.01.

Earlier releases of WISP for Acucobol may appear to run but usually have problems. The most common problem reported is a "blank user name".

Date Added: 11/7/2003

To top

What does "Terminating on an error detected by ACUCOBOL." mean?

The message "Terminating on an error detected by ACUCOBOL." means that Acucobol detected a problem and terminated the application. WISP is simply reporting that it's Acucobol (and not WISP) that decided to terminate the application.

The most common reason for this is a CALL statement where the called program is not found.

To capture the actual ACUCOBOL error message use the "+e" runtime option to redirect the errors to a file. You can then examine the error file to find out what program was not found or what other error has occurred.

Edit the WRUN Configuration file in the $WISPCONFIG directory. Add "+e acuerr.log" to the "options=" line.

e.g.: options= -b +e acuerr.log

Rerun your application and when the error occurs you can then examine the acuerr.log file to see the Acucobol error message.

NOTE: You will often get this message when quitting out of the ACUCOBOL debugger, this is expected because your program is not terminating normally.

Version effected: All

Date Added: 11/13/2003

To top

What does "WISP-E-NOMSG WISP error, message number xxxxx" mean?

What does "WISP-E-NOMSG WISP error, message number xxxxx" mean?

If you get this message it means that WISP was unable to find the message number in the message database file. This either means the file wispmsg.dat file is missing or corrupted. You can get the message text from the file wispmsg.txt and you can recreate wispmsg.dat by running the wispmsg program.

Version effected: WISP 4.4.07 and earlier.

Date Added: 7/23/2003

To top

What does error "(59836) %SHAREMEM-F-SHMAT Error getting PUTPARM shared memory address, shmid=xxxx, errno=13" mean, and how do I fix it?

PUTPARM's on UNIX are stored in shared memory ($ ipcs -m). Control files ($ ls /usr/tmp/wpparms) are used to locate the shared memory segments, and process group id's are used to name the control files. This error indicates that the control files are out-of-sync with the shared memory segments. A control file is pointing to the wrong shared memory segment; the "errno=13" means access is denied to the segment. This condition can occur if programs are crashing, usually with a SIGNAL and not properly cleaning up shared memory segments.

To fix the problem, root can delete the shared memory segment indicated by "shmid=xxxx" in the error message using the "ipcrm -m" command. In an actual error message the "xxxx" will be a number.

# ipcrm -m xxxx

The problem can also usually be worked around by logging out and logging back in. This should reassign a new process group id and thus a new control file.

Once this error occurs, the shared memory segments and control files should be re-synchronized at the earliest opportunity. The easiest way to do this is to reboot the computer and run "wsysinit". To re-synchronize without reboot get all users out of the applications, run "wsysinit", run "ipcs -m |grep 0xd5" to find orphaned shared memory segment created by the WISP runtime. Use "ipcrm -m xxxx" to delete any shared memory segments that have a KEY starting "0xd5".

Version effected: WISP 4.4.07 and earlier.

Date Updated: 9/17/2003

To top

How do you build an ACUCOBOL runtime system that includes ACU4GL, ORACLE, and WISP? The supplied WISP makefile doesn't work.

The makefile that comes with WISP is only a guideline. Changes to ACUCOBOL, ORACLE, and difference platforms will require changes to the makefile.

First try to build an ACU4GL runtime without WISP using the Makefile.ora that gets created by the ora_inst script supplied with Acucobol. If this does not succeed then call ACUCORP 1-800-COBOL85 and they will help you though this step.

Once you can successfully build an Acucobol runtime with Oracle and without WISP then you know you have all the libraries and flags you need. You can then take that info from Makefile.ora and modify the wruncbl.umf file to build with WISP.

To top

If I upgrade to the latest version of WISP do I need to re-translate and re-compile my applications?

No, you only need to re-link your COBOL runtime system.

To top

How does $UNIX_CODE work? Is there a $NT_CODE?

The $UNIX_CODE conditional is active when the WISP translation is done on a UNIX machine. This was basically a bad idea as it is based on where the code was translated not where it will be run. It is perfectly valid to do the WISP translation on UNIX and run on NT or other systems.

There is no $NT_CODE conditional as we didn't want to perpetuate a bad idea. You can use the $ACU_CODE and $MF_CODE for COBOL specific features then use the new "WISPPLAT" routine to retrieve the platform information at runtime. You can then write your own conditional code based on the platform information returned at runtime.

To top

What release of WISP supports Acucobol Vision 4 files?

WISP 4.3 adds support for ACUCOBOL Vision 4 files. A Vision 4 file consists of two (or more) physical files that consists of a data portion and an index portion. The main data file by default has no extension and the main index file has an extension of ".vix". The WISP routine "wfname" (used by "wfopen3") will generate the filename path (used in the ASSIGN TO clause) to the main data file without any extension. ACUCOBOL allows Vision 4files to be separated so that the multiple physical files can exist in different directories. If a Vision 4 file consists of more then the two main physical files or if the physical files do not exist in the same directory then the routines "RENAME", "SCRATCH", "FILECOPY" and the utility WCOPY will not work correctly.

To top

Does WISP support LBM's UniQue on NT?

Yes, in version 4.3.02.

To top

If we are running multiple different terminal emulators do we need different videocap files?

It depends. If your terminal emulators all do a good job of emulating one terminal type (say vt220) then it's possible to all use the same videocap file.

 

See the WISP manual Appendix D "VIDEOCAP" for a full description.

To top

Can you modify a user's Print Mode Defaults such that the print request sent to UniQue is Hold and Requeued (ie. ulp -M re,hold ...)?

You can't do what they are asking with the Print Mode. It can be done with the "PRINT" vssub. You would need to print with K=KEEP then call "PRINT" to queue it with Hold and Requeue options.

To top

What causes a "Load error" with Micro Focus COBOL and how do I fix it?

You get the "load error: PUTPARM" message when the routine has not been included into the runtime. The wrunmf.c file references every WISP routine which is callable from COBOL and thus should be included in runtime.

In the past we have encountered several "releases" of Micro Focus which did not properly link routines into the runtime. Micro Focus has been good about fixing these once reported. If they have a newer release, get it.

To check if a routine actually made it into the runtime: rebuild the runtime with the "-g" flag on the "cob" command. This will cause the cob command to NOT strip symbol information from the runtime. You can then use the "nm" command to display the symbols and grep for the routine name.

$ nm wrunmfe7 | grep PUTPARM

A properly linked routine will have at least 2 symbols, for "text" and "data". A symbol marked as "extern" without either a "text" or "data" tag is a reference to the symbol not the routine itself, this means the symbol is unresolved.

Compare the results with a routine which is working correctly (e.g. wfname).

$ nm wrunmfe7 | grep wfname

If MicroFocus doesn't have a fix you can force a symbol to be included by using the "-I" option on the cob command "-I PUTPARM". (All the symbols needed are listed in wrunmf.c.)

FYI: If you include "-vDDD -Q -bloadmap:loadmap" on the cob command you get two things: a loadmap named "loadmap" which can help you resolve duplicate symbols. The -vDDD cause the tmp file not to be deleted and you can then examine the ldtab.s file which is the assembler file generated which contains all the entry points. If entry points are missing then ldtab.s usually has been generated wrong. So you can search it for "PUTPARM" and "wfname" and compare the results.

To top

How do you turn off the UniQue title message so it doesn't appear in the wisperr.log file?

The UniQue messages can be turned off by adding the "-q" flag to the ulp command by setting the UNIQUE_PRINT environment variable. (This is the default behavior in version 4.3.02.)

$UNIQUE_PRINT="ulp -q"

$ export UNIQUE_PRINT

To top

What causes "%WEXITINT-F-SIGNAL User signaled interrupt,(1)"?

A hangup signal (1) can be generated by the user by turning off his terminal or by a modem line dropping connection or killing a terminal emulator without first exiting the running application.

For a description see "man 4 signal" and "man signal".

To top

What guidelines do you use for sizing a UNIX machine for WISP migrated applications?

Generally the most important factor is amount of memory which is based on the number of simultaneous users. A "safe" guideline is 32 meg plus 2 meg per user.

Disk space can be calculated as:

  • 1gig for OS and temp space
  • plus 4 times memory for swap space
  • plus 3 times Wang disk space

To top

What does the message "License file 'wisp.4200/acu/wruncbl.alc' inaccessible" mean?

The ALC file is Acucobol's license file. not ( WISP license )

See your Acucobol installation instructions for further info.

They will need to copy and rename the Acucobol license file.

$ cp $ACUDIR/bin/runcbl.alc $WISPDIR/acu/wruncbl.alc

To top

How do you map a volume name to a share name so that it works with both NT and 95?

You don't. On NT you would need a trailing slash, on 95 a trailing slash is invalid. The problem is you are mapping a volume name to a "share name" instead of to a directory name. In this example "\\myserver\myshare" is what is know to windows as a "share name", it is not considered a directory and it does not look like a directory to the programs.

MYVOL \\myserver\myshare

This is fine when a full file name is constructed because "\\myserver\myshare\library\file" would be a valid filename. However, if your program attempts to access the volume by itself it will be dealing with a share name not a directory. NT and 95 treat share names slightly different, they are also treated different if you are running on the server.

The safe way to set up LGMAP volumes is to add an additional directory layer under the share name.

MYVOL \\myserver\myshare\myvol

This should work properly in all cases.

To top

After a backup is restored the create date from READFDR is wrong. The "ls" command works, why doesn't READFDR?

Unix does not maintain the "Create date" for a file. It maintains 3 dates for each file, they are: access time (st_atime), data mod time (st_mtime), and status change time (st_ctime). READFDR function "CD" returns st_time, and function "MD" returns st_mtime. This is all the info that is available on UNIX.

It appears that the ls command is reporting st_mtime. If this is what you want then change your program to use "MD" instead of "CD".

For further info on st_ctime, and st_mtime see the "stat" routine in your unix manuals.

Refer to READFDR in chapter 5 of the WISP manual.

To top

Can I map the ESC key to be the HELP key in my videocap file?

The ESC key in VT220 (or any "terminal" emulation) sends the escape character (\E, or x1b). WISP can not map this character because it is the lead-in character for every function key and every special key.

If you are using Co*STAR it is possible to change the keyboard file vt220.kbd definition so that the ESC key sends a different value. You should be able to map it to ^e (x05) the generic help key.

esc=x05

To top

The new version of PROCTRAN doesn't handle binary numbers correctly. Can we continue using the old versions of PROCTRAN?

Yes you can continue to use the old version of PROCTRAN if it works for you.

There has always been many things that PROCTRAN did not fully handle and the change you report corrected a different problem.

PROCTRAN is an obsolete utility which has been replaced by WPROC. No further enhancements will be made to PROCTRAN.

It is recommended they use WPROC instead of PROCTRAN.

To top

What version of CRID and CREATE support Micro Focus IDX4 files?

CRID version 2.90, CREATE version 3.0 for Micro Focus support IDX4 files.

To top

On Windows how do you print files with embedded printer control codes?

The WISP print facility is intended to work with files that contain plain text data. It reads the text and uses standard Windows GDI facility to format the text and sends it to a Windows printer driver. If you wish to print anything other then plain text, such as postscript or PCL, then you need to use the "raw" print facility available in WISP 4.3 and later. Starting with WISP 4.3 the FORMS file on Windows supports a new option "raw=1" that allows printing of a file that contains raw (fully rendered) data. This option is useful if your applications generate print files that contain printer control codes for a specific printer such as a postscript or PCL printer. If this option is specified then the file is sent to the printer without processing using the RAW print driver. If the "raw=1" options is used then all other FORMS options will be ignored so none should be specified.

Example FORMS file:

012 pagelength=66 pagewidth=96 cpi=12 lpi=6 landscape=0

017 cpi=16 lpi=8 lpp=88 pw=133 landscape=0

200 raw=1

Date Updated: 9/17/2003

To top

Why does my terminal emulator show BOLD fields as the same color are BOLD+BLINK+UNDERLINE fields?

Terminal emulators often map the attributes BOLD, BLINK, UNDERLINE, REVERSED to individual colors. Low-end terminal emulators often don't allow you to map combinations of attributes (e.g. BOLD+BLINK) to unique colors.

The problem is that, attributes are cumulative, and colors are not. It is possible to set multiple attributes but you can only set one color. Normally the last color that gets set is used.

A high-end emulator like Co*STAR does not have this problem.

To top

What GETPARM's are issued by the wfopen3 routine?

The WFOPEN routine issues an initial "hidden" GETPARM (type=ID). This GETPARM will not be displayed unless there is a matching PUTPARM of type "DISPLAY", they are generated from a procedure RUN statement with a DISPLAY clause. If there is missing info or the OPEN fails then a "respecify" GETPARM (type=R) is issued, this one is always displayed unless the NORESPECIFY clause was in the SELECT statement. If a PUTPARM had been specified then a type=RD GETPARM is issued to update it.

To top

How do you tell a WISP migrated application it is running in background?

WISP converted applications are expecting to be submitted to background using the SUBMIT vssub, or the SUBMIT statement in a procedure or the WSUBMIT utility. If you are running a application in background via some other mechanism (e.g. usubmit) then you need to tell the application it is running in background by setting the WISPBACKGRD variable to "true".

 

$ WISPBACKGRD=true

$ export WISPBACKGRD

 

Setting the WISPBACKGRD variable will tell the WISP converted applications that they are running in background.

To top

On Windows 95 I get an "Out of Environment Space" when I run the VCVARS32.BAT file.

Click the "Properties" button for the MS-DOS box, select the "Memory" tab, then set the "Initial Environment" value from "auto" to "4096". You then need to close and re-open the MS-DOS box and you should be able to run VCVARS32.BAT without the error.

To top

What are the differences between WISP on UNIX and WISP on Windows (WIN32)?

The two versions of WISP are almost identical. There are no COBOL source code differences between UNIX and WIN32, in fact the WISP translator is identical with both products. The WIN32 version has a number of enhancements over the UNIX product to support the graphical nature of Windows, these include built-in mouse and color support. There is also direct support for the Windows print queue including enhanced print forms facilities for fonts, paper sizes, orientation etc.

The following facilities from the UNIX product are not available or behave substantially different on WIN32:

  • Micro Focus COBOL is not currently supported.
  • The ACP routines are not available.
  • The LOGOFF VSSUB terminates all of the link-levels but does not log the user off.
  • The BLDMF utility is not available, it has been replaced by WISPTRAN.EXE a graphic front-end to the WISP translator and the COBOL compiler.
  • The VSX utility is not provided as there is no O/S support for tape drives.
  • The VIEWKEY and VCAPKEYS utilities are not provided as there are no "terminal" types.
  • The WDELWRK utility is not provided as all work libraries are automatically deleted.
  • The obsolete UNIX shell utilities are not available (WDELAY, WEXISTS. WFIND, WPUTPARM, WRENAME, WRETCODE, WSCRATCH, WSUBMIT). All of their functionality is available through WPROC the Wang Procedure Interpreter.
  • The WSYSINIT utility is not provided as it is not required.
  • The WSYSCONF utility is not provided as all cleanup is automatically performed.
  • The VSEDIT utility does not allow you to translate and compiler from within it, on WIN32 you would do this in a separate window.

To top

How do you determine the SIGN characteristics for zoned numeric data fields?

With signed zoned data fields (USAGE IS DISPLAY) you have a choice of how and where the sign is stored. The sign can be LEADING or TRIALING and it can be SEPARATE or buy default included.

 

These options can be specified with a SIGN clause on the data field or they can be (and usually are) specified as compiler options. Experience shows that it is very rare to actually see a SIGN clause. This means that you can not tell what the sign characteristics are from simply looking at the COBOL source code. You need to look at the data files (using a hex editor) and determine how the sign is being stored. You can then lookup in the COBOL manual to find the compiler options needed to use the data as it was stored on the Wang.

 

As an example the Acucobol manual there is a section on Compiler Data Storage options that explains each of the options, the "-Ds" option specifies that the sign is TRIALING SEPARATE.

To top

Is WISP Year 2000 compliant?

WISP Version 4.2.00 and later are Year 2000 compliant. However, the applications migrated by WISP may not be. See the document "WISP Toolkit Year 2000 Compliance" for a complete description.

CRID version 2.91 and CREATE version 3.1 are also Y2K compliant.

To top

If I upgrade to a Y2K compliant version of WISP will my applications then be Y2K compliant?

No, your applications may be using 2-digit year fields.

To top

On Windows how do you define the Floppy as a volume in the LGMAP?

In the LGMAP add an entry like FLOPPY below:

FLOPPY A:\.

You can't use "A:" as it is not a directory. Nor can you use "A:\" as it does not follow our rules for defining a volume. The syntax "A:\." with the dot (.) is another way of referencing the root directory.

Date Updated: 9/17/2003

To top

For further support, please use our online form.