Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

realia cobol. exe returns dos16m error under windows 98

Status
Not open for further replies.

rambleon

Programmer
Mar 6, 2004
130
IL
Hi,
I have a large realia cobol program - over 20,000 lines of code exe size 650K - in Windows 2000 it runs like a dream. Under Windows 98 it bombs out with a DOS16M error.
We're using a Realia compiler 4.105 and OptLink/Segmented 2.31
Can someone please point me in the right direction to create a Windows 98 compatible exe.

Thanks

Rambleon
 
I guess it is only a runtime error, isn't it?

Did you use REALBIND the right way?

==> REALBIND /E

Are your settings of your DOS box ok? You can change the total amount of memory for your dos box. I have never had such a problem, but the dos box I am working with, has maximized memory settings.

Are you using a SORT? Change the realia parms to leave some memory after starting it.

Regards,

Crox
 
Crox Hi,

Thanks for your input. I haven't used REALBIND before, and
never had any problems running realia execs under Windows 98
Just this rather large program has always been a problem.
I tried the following:

LINK bigprog,,,C:\COB\REALOS2+C:\COB\REALCOB+C:\COB\DOSCALLS;

REALBIND/E bigprog.exe

When I run this in a DOS box under Windows 98 I get the following error:

DOS/16M error: Program must be built -AUTO for DPMI

Any help greatly appriciated

Thanks

Rambleon


 
Hi,

I am not familiar with that message. On the other hand, I use perhaps an other procedure to link: LINKCOBM.

Without REALBIND, it is not possible to use more memory than 640k.

Also, when you are at the dos prompt, you can type:
MEM /C You get info how much memory there is available. You need EMS. You can change the properties of your dos box.

Perhaps you can find something here: or here: ftp://ftp.ca.com/pub/realia/

You can do a search using:
But... on the product CD there are extra manuals. You can search them.

Regards,

Crox
 
Crox I need more, dig deeper!!!!

Everybody here who runs this program - we're a service bureau doing payrolls and bigprog is the payroll program - needs 2 PC one old pure DOS machine and one Windows 98, we'll all be very grateful if you can come up with a solution.
I'm checking the links you suggested, haven't found anything yet.
One othere thing whats OS2 ?

Thanks for your help - it's good to have someone to talk to

Rambleon

 
Hi Rambleon,

The thing is what is the big deal with windows '98, what is the difference between the other dos boxes and your '98 box?

Did you try also to put the command FORCEDOS before the executable, so something like:

FORCEDOS URBIGPRG

I don't experience problems with big programs. I use the 4.2 release. I have also some programs with more than 22000 lines and also with sorts included. With sorts I had a similar problem, but that can be solved using realia parms behind the filename between [....], I guess you know them.

If this all doesn't help, does it help to update the win98 system to a win2000 system....?

OS/2 is the operating system of IBM which was the rival of Windows 3.1. OS/2 was much better, but the public's choice was Microsoft. Very much of a pitty, because the IBM's systems are much more stable.

I hope this helps.

Regards,

Crox
 
Did you execute the program using REALDBUG? You compile with /H. On what statement did it stop?
 
Crox Thanks for the quick reply,

I won't be able to check out your suggestions till
Sunday.
Like I said this program never worked on any Windows platform apart from Windows 2000. About the realia parms for the files can you give me any guide lines. Apart from the format parms like X,N,T ect. I'm not clear about how the otheres influence performance.
I see there's a DPMI parameter in the DOS window properties
that has an AUTO option, which is what I recieved an error on
do you know the meaning of this parameter>
Again thanks


Rambleon

 
I see there's a DPMI parameter in the DOS window properties that has an AUTO option, which is what I received an error on do you know the meaning of this parameter>

That is about the amount of dos protected mode memory. You can give the program 16384kb.

Now I remember that I had a similar problem with the protected mode when I used windows NT for the first time. I used to snatch the dos-screen to reshow/restore the old screen again at the end of the program. The snatch used the address of the screen, something like B000 or B800 or so but I could not do that in protected mode, unless I used FORCEDOS. But forcedos is not available with WINDOWS 98.

If you use from the DOS prompt the command HELP, you can find EMM386.EXE. There you can find the statements you need to config for EMS which is needed for the usage of DOS with extra memory like you enable with REALBIND /E.

I hope this helps.

Regards,

Crox
 
Crox Hi,
I checked out the threads you posted - I understand the problem is with the compilation and not the DOS box settings.
EMM386 is unable to turn on - protected mode software already running - this is also specified in the dos box properties so maybe it cann't be set from the command line.
What does the message "Program must be built -AUTO for
DPMI" mean? Is there LINK switch for this ?

Thanks again

Rambleon

 
The difference between Windows 98 and 2000 Dos command lines
is 98 uses COMMAND.COM - which doesn't work - and 2000 uses CMD.EXE which does. So can I run CMD.EXE under windows 98 ?
 
The normal compilationprocess for a mainprogram is:

compile the normal way.
REALCOB <yourprog>;
That should not make any difference on any system. If you feel unsure, try REALMENU.

Link the mainprogram as a mainprogram. That means that batchfile LINKCOBM is used: link-cobol-main.

Now because your program needs extra memory, you use

REALBIND /E <yourprog>

to make it possible to work with that extra memory.

Now you have to be sure that your win98 system is able to work with the extra memory.

You don't change the dos parms from the commandline, you can only check if there is extra memory. You can give the command:

MEM /C

The output tells you how much memory there is. You should read one line that tells something about expanded EMS available which is in my case
16.777.216 (16M)

When you create a link to command.com on your desktop, you can change the properties. One of the properties is about memory. Change it in such a way that on the commandline of that session started by that link, you see enough EMS memory. You can chance all the options into automatic for example.

This should work.

Regards,

Crox
 
On my win98 there is no CMD.EXE.

If you use the START button on your win98, you can start HELP. Use the index and search for memory. Choose problems with... Start the problemsolver.
 
size 650K
===> so you need EMS

Can someone please point me in the right direction to create a Windows 98 compatible exe
===> normal compilation, link with LINKCOBM and use REALBIND /E to be able to work with EMS.

I see there's a DPMI parameter in the DOS window properties that has an AUTO option
===> put it on auto!

I understand the problem is with the compilation and not the DOS box settings.
===> There are two things here: 1) the link-edit + realbind to make it possible to work wit EMS. 2) The availability of EMS. Dos has only 640k. When you need more, you use EMS.

You should be able to solve the problem now!

 
Crox Hi,
I have Optlinks' LINK not LINKCOBM, but I understand RealBind/E enables use of EMS so that should be OK.
The othere thing is adjusting EMS this is only possible thru the DOS box settings not from the command line correct??.
The DOS box settings are only important for execution they do not effect the compilation or the resulting exe file correct??

Excuse my ignorence this is all a bit esoteric for me.
 
The othere thing is adjusting EMS this is only possible thru the DOS box settings not from the command line correct??.
Yes!
The DOS box settings are only important for execution they do not effect the compilation or the resulting exe file correct??
yes!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top