Discussion:
Compiler problems - (the saga continues).
(too old to reply)
budgie
2006-03-12 06:06:40 UTC
Permalink
Yes, unfortunately I'm back ...

This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.

Thinking it may be caused by corruption, I reinstalled VBDOS from scratch - same
result. To test if it was something about this platform (P3-666 Win98SE), I
built another app about half the size, and it compiled and ran fine. That of
course is not conclusive.

Before resorting to troubling the resident gurus here, I also tried stripping
down the app to two forms and removing about 80% of the SUBs and REMing their
calls, in case there was a tainted module or SUB. Removed all file access
references. Still no go.

This is a simple app, no interrupt calls or anything fancy.

Is there an issue with compiling VBDOS in a P3 (or any other specific platform)?

Is there any other known comp issues I need to be aware of?

All help appreciated. What I hoped would be a short exercise has started to
haunt me.
Dan Barclay
2006-03-12 08:10:20 UTC
Permalink
Man, it's been way too long since I fooled with this so I can't give you a
complete answer. I can give you some direction to try though.

Execute BC from the command line with /? to get a list of command line
switches. One of those switches will affect how memory is used (I remember
something like /R but I don't trust that memory).

Also check the exit status when you do get a compile for free space etc. In
the environment you're running in a pcode interpreter. BC compiles to
native. There's a difference in how big a module they can handle and your
module may simply be too big for BC. You can create very large exe's with
VBDOS but individual modules have limits. Technically the limit is 64k of
executable code, but you'll hit internal compiler memory limits first.

If you're hitting those limits, the solution is to break the larger modules
into more modules.

Dan
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Thinking it may be caused by corruption, I reinstalled VBDOS from scratch - same
result. To test if it was something about this platform (P3-666 Win98SE), I
built another app about half the size, and it compiled and ran fine. That of
course is not conclusive.
Before resorting to troubling the resident gurus here, I also tried stripping
down the app to two forms and removing about 80% of the SUBs and REMing their
calls, in case there was a tainted module or SUB. Removed all file access
references. Still no go.
This is a simple app, no interrupt calls or anything fancy.
Is there an issue with compiling VBDOS in a P3 (or any other specific platform)?
Is there any other known comp issues I need to be aware of?
All help appreciated. What I hoped would be a short exercise has started to
haunt me.
budgie
2006-03-12 11:07:20 UTC
Permalink
Post by Dan Barclay
Man, it's been way too long since I fooled with this so I can't give you a
complete answer. I can give you some direction to try though.
Execute BC from the command line with /? to get a list of command line
switches. One of those switches will affect how memory is used (I remember
something like /R but I don't trust that memory).
Also check the exit status when you do get a compile for free space etc. In
the environment you're running in a pcode interpreter. BC compiles to
native. There's a difference in how big a module they can handle and your
module may simply be too big for BC. You can create very large exe's with
VBDOS but individual modules have limits. Technically the limit is 64k of
executable code, but you'll hit internal compiler memory limits first.
If you're hitting those limits, the solution is to break the larger modules
into more modules.
Thanks for the pointers. I'm not getting any exit codes of course compiling
from the IDE - just a solid machine lockup from DOS(7) or a Win error from the
DOS box.

I can see the command line that the IDE generates when starting from DOS, so
that'll be something to consider vis-a-vis the /? listing.

I don't think any of the modules would exceed 64k compiled - the largest .FRM is
only 9k, the biggest .BAS module is 8k (and half that is comments!).

Peter
A***@NOT.AT.Arargh.com
2006-03-12 19:43:01 UTC
Permalink
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)

Try compiling it from the command line. It that fails, time to split
the program into seceral source files. BTDT.
<snip>
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
Bob O`Bob
2006-03-12 20:02:39 UTC
Permalink
Post by A***@NOT.AT.Arargh.com
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)
Try compiling it from the command line. It that fails, time to split
the program into seceral source files. BTDT.
<snip>
I hope he has the "Pro" version of VBDOS ... he may end up needing the overlay linker.



Bob
A***@NOT.AT.Arargh.com
2006-03-12 21:26:22 UTC
Permalink
On Sun, 12 Mar 2006 12:02:39 -0800, Bob O`Bob
Post by Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)
Try compiling it from the command line. It that fails, time to split
the program into seceral source files. BTDT.
<snip>
I hope he has the "Pro" version of VBDOS ... he may end up needing the overlay linker.
That depends upon the runtime memory requirements. I have several
projects that only just barely run in the IDE, and can no way be
compiled as a single source file, which runs 250+k. Because of the
large number include files, I can't have multiple source files in the
IDE -- it won't even finish loading. So, I develop as a single large
source file, and use a custom program to split it up into multiple
sources to compile, and then link the whole mess together. The EXEs
run about 400k. It's somewhat of a kludge, but it works.
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
budgie
2006-03-12 23:18:17 UTC
Permalink
Comments in-line ...
Post by A***@NOT.AT.Arargh.com
On Sun, 12 Mar 2006 12:02:39 -0800, Bob O`Bob
Post by Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)
There are precious few strings used - short "help"s and prompts in MSGBOXes etc,
and filenames for I/O is about it.

One array - integer x2K and not REDIMmed (well, not knowingly).
Post by A***@NOT.AT.Arargh.com
Post by Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Try compiling it from the command line. It that fails, time to split
the program into seceral source files. BTDT.
The actual command line used from the IDE is /E/X/O/T/C:512. The only thing I
would have done differently is omit the T. The C: is academic as there is no
use of COM ports.

But I will try.

Question: From the IDE the internal call to BC presumably compiles each module
and invokes the linker to link all the .OBJ files and required system bits into
the resultant .EXE. From the command line I don't seem to have the facility to
do other than compile one module at a time.
Post by A***@NOT.AT.Arargh.com
Post by Bob O`Bob
I hope he has the "Pro" version of VBDOS ... he may end up needing the overlay linker.
Unfortunately no.

As I mentioned in my reply to Dan, the largest module is <10k and there are
currently five modules plus a small $INCLUDE file housing COMMOM SHARED
definitions. One integer array size 2K elements. Nothing that i would have
anticipated would challenge VBDOS.
Post by A***@NOT.AT.Arargh.com
That depends upon the runtime memory requirements. I have several
projects that only just barely run in the IDE, and can no way be
compiled as a single source file, which runs 250+k. Because of the
large number include files, I can't have multiple source files in the
IDE -- it won't even finish loading. So, I develop as a single large
source file, and use a custom program to split it up into multiple
sources to compile, and then link the whole mess together. The EXEs
run about 400k. It's somewhat of a kludge, but it works.
A***@NOT.AT.Arargh.com
2006-03-13 02:17:04 UTC
Permalink
Post by budgie
Comments in-line ...
Post by A***@NOT.AT.Arargh.com
On Sun, 12 Mar 2006 12:02:39 -0800, Bob O`Bob
Post by Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)
There are precious few strings used - short "help"s and prompts in MSGBOXes etc,
and filenames for I/O is about it.
One array - integer x2K and not REDIMmed (well, not knowingly).
Post by A***@NOT.AT.Arargh.com
Post by Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Try compiling it from the command line. It that fails, time to split
the program into several source files. BTDT.
The actual command line used from the IDE is /E/X/O/T/C:512. The only thing I
would have done differently is omit the T.
/T shouldn't make much difference.
Post by budgie
The C: is academic as there is no use of COM ports.
Makes no difference. All these 'NO'something files wouldn't exist for
no reason. You get library support for everything, unless you include
the correct 'NO' file. At least that's the way it worked in PDS, and
I can't see MS having changed things.

NOCGA .OBJ 137 08-19-92 5:59p
NOCOM .OBJ 502 08-19-92 5:59p
NOEDIT .OBJ 551 08-19-92 5:59p
NOEGA .OBJ 164 08-19-92 5:59p
NOEVENT .OBJ 533 08-19-92 5:59p
NOFLTIN .OBJ 457 08-19-92 5:59p
NOFORMS .OBJ 1,182 08-19-92 5:59p
NOGRAPH .OBJ 700 08-19-92 5:59p
NOHERC .OBJ 125 08-19-92 5:59p
NOISAM .OBJ 331 08-19-92 5:59p
NOLPT .OBJ 216 08-19-92 5:59p
NOOGA .OBJ 124 08-19-92 5:59p
NOTRNEM .LIB 14,879 08-19-92 5:59p
NOVGA .OBJ 168 08-19-92 5:59p
Post by budgie
But I will try.
Question: From the IDE the internal call to BC presumably compiles each module
and invokes the linker to link all the .OBJ files and required system bits into
the resultant .EXE. From the command line I don't seem to have the facility to
do other than compile one module at a time.
You would have to create a make file to do it for you. And looking, I
see that MS didn't bother to supply MAKE with VBDOS. Well, you could
always create a batch file.

Something like:

BC <opts> <src1>,<obj1>,<lst1>;
BC <opts> <src2>,<obj2>,<lst2>;
BC <opts> <src3>,<obj3>,<lst3>;

LINK <all the objs>,<exename>,<mapfile if you want it>,<libs>;


More than likely that will wind up being too long (>127 chars), and
wou will have to resort to the reponse file option.

LINK @<response file> (where the responce file can be just one line
that looks like the command line. IIRC)


I am not sure which libs that would be needed, probably VBDRT10E.LIB
at a minimum.




I always use one of these two methods. I don't think that I have EVER
used the IDE to compile anything.
Post by budgie
Post by A***@NOT.AT.Arargh.com
Post by Bob O`Bob
I hope he has the "Pro" version of VBDOS ... he may end up needing the overlay linker.
Unfortunately no.
As I mentioned in my reply to Dan, the largest module is <10k and there are
currently five modules plus a small $INCLUDE file housing COMMOM SHARED
definitions. One integer array size 2K elements. Nothing that i would have
anticipated would challenge VBDOS.
No, it doesn't sound like it.

<snip>
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
budgie
2006-03-13 06:28:53 UTC
Permalink
Post by A***@NOT.AT.Arargh.com
Post by budgie
Comments in-line ...
Post by A***@NOT.AT.Arargh.com
On Sun, 12 Mar 2006 12:02:39 -0800, Bob O`Bob
Post by A***@NOT.AT.Arargh.com
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Probably a memory size issue. That error message is the one I get in
the PDS IDE when I try to use too much memory (either string or
redimmed arrays)
There are precious few strings used - short "help"s and prompts in MSGBOXes etc,
and filenames for I/O is about it.
One array - integer x2K and not REDIMmed (well, not knowingly).
Post by A***@NOT.AT.Arargh.com
Post by A***@NOT.AT.Arargh.com
Try compiling it from the command line. It that fails, time to split
the program into several source files. BTDT.
The actual command line used from the IDE is /E/X/O/T/C:512. The only thing I
would have done differently is omit the T.
/T shouldn't make much difference.
Post by budgie
The C: is academic as there is no use of COM ports.
Makes no difference. All these 'NO'something files wouldn't exist for
no reason. You get library support for everything, unless you include
the correct 'NO' file. At least that's the way it worked in PDS, and
I can't see MS having changed things.
NOCGA .OBJ 137 08-19-92 5:59p
NOCOM .OBJ 502 08-19-92 5:59p
NOEDIT .OBJ 551 08-19-92 5:59p
NOEGA .OBJ 164 08-19-92 5:59p
NOEVENT .OBJ 533 08-19-92 5:59p
NOFLTIN .OBJ 457 08-19-92 5:59p
NOFORMS .OBJ 1,182 08-19-92 5:59p
NOGRAPH .OBJ 700 08-19-92 5:59p
NOHERC .OBJ 125 08-19-92 5:59p
NOISAM .OBJ 331 08-19-92 5:59p
NOLPT .OBJ 216 08-19-92 5:59p
NOOGA .OBJ 124 08-19-92 5:59p
NOTRNEM .LIB 14,879 08-19-92 5:59p
NOVGA .OBJ 168 08-19-92 5:59p
I meant C academic in the sense that specifiying a buffer size is academic ;-)
Post by A***@NOT.AT.Arargh.com
Post by budgie
But I will try.
Question: From the IDE the internal call to BC presumably compiles each module
and invokes the linker to link all the .OBJ files and required system bits into
the resultant .EXE. From the command line I don't seem to have the facility to
do other than compile one module at a time.
You would have to create a make file to do it for you. And looking, I
see that MS didn't bother to supply MAKE with VBDOS. Well, you could
always create a batch file.
The amount of work makes the "compile from IDE" approach seem so much easier.
But certainly it is another avenue.
Post by A***@NOT.AT.Arargh.com
Post by budgie
As I mentioned in my reply to Dan, the largest module is <10k and there are
currently five modules plus a small $INCLUDE file housing COMMOM SHARED
definitions. One integer array size 2K elements. Nothing that i would have
anticipated would challenge VBDOS.
No, it doesn't sound like it.
Re MAKE:

Running BC from the command line without arguments causes it to prompt for a
.FRM or .BAS source file. Instead I fed it the name of the .MAK file to see
what explodes. It duly offered name.OBJ as the output file, then proceeded to
report errors as follows:

Source listing [nul.lst]:

0030 0006 PSTART.FRM
^ Equal sign missing
0030 0006 etc for the remaining modules.
-and-
0 Warning error(s)
6 Severe error(s)

Any idea what it is on about? Is this just BC choking on a .MAK as as
undecipherable format, thinking the module names are LHS of expressions?
A***@NOT.AT.Arargh.com
2006-03-13 07:47:54 UTC
Permalink
On Mon, 13 Mar 2006 14:28:53 +0800, budgie <***@privacy.net> wrote:

<snip>
Post by budgie
I meant C academic in the sense that specifiying a buffer size is academic ;-)
Yes, but the library code is still there.
<snip>
Post by budgie
Running BC from the command line without arguments causes it to prompt for a
.FRM or .BAS source file. Instead I fed it the name of the .MAK file to see
what explodes. It duly offered name.OBJ as the output file, then proceeded to
0030 0006 PSTART.FRM
^ Equal sign missing
0030 0006 etc for the remaining modules.
-and-
0 Warning error(s)
6 Severe error(s)
Any idea what it is on about? Is this just BC choking on a .MAK as as
undecipherable format, thinking the module names are LHS of expressions?
BC doesn't know anything about .MAK files. Also, the VBDOS .MAK file
format is not compatible with a real make file. And, make doesn't
come with VBDOS -- even the Pro version.

A REAL makefile looks more like:

(begin makefile)
# makefile generated on 09-21-1996 @ 03:06:20 by GenMake
# command$="BC71N [nam]"

LFLG=/map /info /co
BFLG=/o /Zi

.bas.obj:
<tab>bc.exe $(BFLG) $(*B).bas, $(*B).obj, $(*B).lst;

all:<tab>[nam].exe

[nam].exe:<tab>[nam].obj
<tab>link $(LFLG) $** ,[nam], [nam], @y:\libs\jlib71nr.rf; >[nam].lnk
(end makefile)

Where [nam] is your source file name, and <tab> are real tab chars.
(some versions of make actually care about that)

This sample is incomplete, and is for a single source file, but will
give you the idea.


GenMake is a program I wrote, a long time ago -- looks like sometime
in 1996. It is way too specific to the way I do things, and so would
not be too useful to anyone else.

Just did some checking - it seems that nmake ver 1.11 came with PDS
7.10 - I wonder why it was dropped from VBDOS.



Anyway, if you want, zip up all of your source, .mak and include
files, and email to my (unscrambled) email address, I will write up
the necessary batch file, and see if it works. Except for compiling
it, I probably wouldn't even bother to look at the files (except to
fix errors, if any).

arargh
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
budgie
2006-03-13 13:28:45 UTC
Permalink
Post by A***@NOT.AT.Arargh.com
<snip>
Post by budgie
I meant C academic in the sense that specifiying a buffer size is academic ;-)
Yes, but the library code is still there.
<snip>
Post by budgie
Running BC from the command line without arguments causes it to prompt for a
.FRM or .BAS source file. Instead I fed it the name of the .MAK file to see
what explodes. It duly offered name.OBJ as the output file, then proceeded to
0030 0006 PSTART.FRM
^ Equal sign missing
0030 0006 etc for the remaining modules.
-and-
0 Warning error(s)
6 Severe error(s)
Any idea what it is on about? Is this just BC choking on a .MAK as as
undecipherable format, thinking the module names are LHS of expressions?
BC doesn't know anything about .MAK files.
I fully expected that, but figured i couldn't break it by trying ;-)

(snip)
Post by A***@NOT.AT.Arargh.com
Anyway, if you want, zip up all of your source, .mak and include
files, and email to my (unscrambled) email address, I will write up
the necessary batch file, and see if it works. Except for compiling
it, I probably wouldn't even bother to look at the files (except to
fix errors, if any).
Tnx for the offer - winging its way as I type this. Don't look to closely.

Tnx and good luck making sense of it.
Dan Barclay
2006-03-13 18:05:07 UTC
Permalink
While VBDOS didn't come with a MAKE file, the MAKE file from any C compiler
will work. If you have VS you'll have a copy of it. You can also find free
MAKE's (open source) around.

VBDOS should have come with MAKE and LIB (I don't remember if it came with
LIB or not). When our app outgrew the IDE we set up a complete build for
out DOS apps, used Brief for an editor, and quit using the IDE completely.
The MOVE overlay manager with VBDOS Pro is great as well, though you'll have
to go find an old C compiler to get decent docs for it.

Dan
Post by budgie
Post by A***@NOT.AT.Arargh.com
<snip>
Post by budgie
I meant C academic in the sense that specifiying a buffer size is academic ;-)
Yes, but the library code is still there.
<snip>
Post by budgie
Running BC from the command line without arguments causes it to prompt for a
.FRM or .BAS source file. Instead I fed it the name of the .MAK file to see
what explodes. It duly offered name.OBJ as the output file, then proceeded to
0030 0006 PSTART.FRM
^ Equal sign missing
0030 0006 etc for the remaining modules.
-and-
0 Warning error(s)
6 Severe error(s)
Any idea what it is on about? Is this just BC choking on a .MAK as as
undecipherable format, thinking the module names are LHS of expressions?
BC doesn't know anything about .MAK files.
I fully expected that, but figured i couldn't break it by trying ;-)
(snip)
Post by A***@NOT.AT.Arargh.com
Anyway, if you want, zip up all of your source, .mak and include
files, and email to my (unscrambled) email address, I will write up
the necessary batch file, and see if it works. Except for compiling
it, I probably wouldn't even bother to look at the files (except to
fix errors, if any).
Tnx for the offer - winging its way as I type this. Don't look to closely.
Tnx and good luck making sense of it.
Stephen Howe
2006-03-13 19:08:43 UTC
Permalink
Post by Dan Barclay
While VBDOS didn't come with a MAKE file, the MAKE file from any C compiler
will work. If you have VS you'll have a copy of it. You can also find free
MAKE's (open source) around.
VBDOS should have come with MAKE and LIB (I don't remember if it came with
LIB or not).
It does. At least the Professional version does, not sure about Standard
version (but can find out).
If Professional should have

LIB.EXE
NMAKE.EXE

Stephen Howe
A***@NOT.AT.Arargh.com
2006-03-13 20:55:39 UTC
Permalink
On Mon, 13 Mar 2006 19:08:43 -0000, "Stephen Howe"
Post by Dan Barclay
Post by Dan Barclay
While VBDOS didn't come with a MAKE file, the MAKE file from any C
compiler
Post by Dan Barclay
will work. If you have VS you'll have a copy of it. You can also find
free
Post by Dan Barclay
MAKE's (open source) around.
VBDOS should have come with MAKE and LIB (I don't remember if it came with
LIB or not).
It does.
Don't think so. I have the Pro version, and while it has LIB and
LINK, there is no MAKE or NMAKE.

Here is a list of ALL the EXEs from VBDOS 1.0 Pro version - where is
it?

BIN\BC.EXE
BIN\BUILDRTM.EXE
BIN\CUSTGEN.EXE
BIN\CV.EXE
BIN\CVPK.EXE
BIN\DECOMP.EXE
BIN\FD.EXE
BIN\FT.EXE
BIN\ISAMCVT.EXE
BIN\ISAMIO.EXE
BIN\ISAMPACK.EXE
BIN\ISAMREPR.EXE
BIN\LEARN.EXE
BIN\LIB.EXE
BIN\LINK.EXE
BIN\PATCH87.EXE
BIN\PLIST.EXE
BIN\PREP.EXE
BIN\PROFILE.EXE
BIN\PROISAM.EXE
BIN\PROISAMD.EXE
BIN\TRACE.EXE
BIN\TRNSLATE.EXE
BIN\VBDOS.EXE
BIN\VBDPROF.EXE
BIN\VBDRT10A.EXE
BIN\VBDRT10E.EXE

<snip>
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
Dan Barclay
2006-03-13 22:16:57 UTC
Permalink
I think that's what he meant. I think he was answering my "I don't
remember" part.

They should have included both. Considering that it supported the MOVE
overlays you'd think MAKE would be an automatic.

Dan
Post by A***@NOT.AT.Arargh.com
On Mon, 13 Mar 2006 19:08:43 -0000, "Stephen Howe"
Post by Dan Barclay
Post by Dan Barclay
While VBDOS didn't come with a MAKE file, the MAKE file from any C
compiler
Post by Dan Barclay
will work. If you have VS you'll have a copy of it. You can also find
free
Post by Dan Barclay
MAKE's (open source) around.
VBDOS should have come with MAKE and LIB (I don't remember if it came with
LIB or not).
It does.
Don't think so. I have the Pro version, and while it has LIB and
LINK, there is no MAKE or NMAKE.
Here is a list of ALL the EXEs from VBDOS 1.0 Pro version - where is
it?
BIN\BC.EXE
BIN\BUILDRTM.EXE
BIN\CUSTGEN.EXE
BIN\CV.EXE
BIN\CVPK.EXE
BIN\DECOMP.EXE
BIN\FD.EXE
BIN\FT.EXE
BIN\ISAMCVT.EXE
BIN\ISAMIO.EXE
BIN\ISAMPACK.EXE
BIN\ISAMREPR.EXE
BIN\LEARN.EXE
BIN\LIB.EXE
BIN\LINK.EXE
BIN\PATCH87.EXE
BIN\PLIST.EXE
BIN\PREP.EXE
BIN\PROFILE.EXE
BIN\PROISAM.EXE
BIN\PROISAMD.EXE
BIN\TRACE.EXE
BIN\TRNSLATE.EXE
BIN\VBDOS.EXE
BIN\VBDPROF.EXE
BIN\VBDRT10A.EXE
BIN\VBDRT10E.EXE
<snip>
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html
To reply by email, remove the garbage from the reply address.
A***@NOT.AT.Arargh.com
2006-03-13 23:04:18 UTC
Permalink
Post by Dan Barclay
I think that's what he meant. I think he was answering my "I don't
remember" part.
They should have included both. Considering that it supported the MOVE
overlays you'd think MAKE would be an automatic.
Considering that I can't figure out how to include a .DEF into the
VBDOS program, which you kinda need to create an overlay exe.

<snip>
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
Dan Barclay
2006-03-13 23:45:48 UTC
Permalink
Post by A***@NOT.AT.Arargh.com
Post by Dan Barclay
I think that's what he meant. I think he was answering my "I don't
remember" part.
They should have included both. Considering that it supported the MOVE
overlays you'd think MAKE would be an automatic.
Considering that I can't figure out how to include a .DEF into the
VBDOS program, which you kinda need to create an overlay exe.
Somewhere I've got a sample "mini project" using MOVE with a DEF file. If
you want I can find it and email it to you. It was posted on Compuserve
years ago. It's got a few source files DEF file and a batch file to build
an overlaid exe.

I don't think I can post binaries here.

Dan
A***@NOT.AT.Arargh.com
2006-03-14 00:43:06 UTC
Permalink
Post by Dan Barclay
Post by A***@NOT.AT.Arargh.com
Post by Dan Barclay
I think that's what he meant. I think he was answering my "I don't
remember" part.
They should have included both. Considering that it supported the MOVE
overlays you'd think MAKE would be an automatic.
Considering that I can't figure out how to include a .DEF into the
VBDOS program, which you kinda need to create an overlay exe.
Somewhere I've got a sample "mini project" using MOVE with a DEF file. If
you want I can find it and email it to you. It was posted on Compuserve
years ago. It's got a few source files DEF file and a batch file to build
an overlaid exe.
Thanks, but no need. I can't ever see needing to build another
overlayed DOS EXE again, and in any case, I already have all the tools
and documentation.
Post by Dan Barclay
I don't think I can post binaries here.
You probably could, but some NNNTP servers would drop the post.
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
A***@NOT.AT.Arargh.com
2006-03-13 19:50:01 UTC
Permalink
On Mon, 13 Mar 2006 21:28:45 +0800, budgie <***@privacy.net> wrote:

<snip>
Post by budgie
Tnx for the offer - winging its way as I type this. Don't look to closely.
Tnx and good luck making sense of it.
Reply has been sent
--
ArarghMail603 at [drop the 'http://www.' from ->] http://www.arargh.com
BCET Basic Compiler Page: http://www.arargh.com/basic/index.html

To reply by email, remove the garbage from the reply address.
budgie
2006-03-14 01:56:03 UTC
Permalink
Post by A***@NOT.AT.Arargh.com
<snip>
Post by budgie
Tnx for the offer - winging its way as I type this. Don't look to closely.
Tnx and good luck making sense of it.
Reply has been sent
and is being digested - thanks again.
Stephen Howe
2006-03-13 13:21:35 UTC
Permalink
Post by budgie
Running BC from the command line without arguments causes it to prompt for a
.FRM or .BAS source file. Instead I fed it the name of the .MAK file to see
what explodes.
It won't work. It knows nothing about MAK files. It is looking at MAK file
as if it was a BASIC source file.
Post by budgie
Any idea what it is on about? Is this just BC choking on a .MAK as as
undecipherable format, thinking the module names are LHS of expressions?
Yup, exactly that.

Stephen Howe
Stephen Howe
2006-03-13 12:32:08 UTC
Permalink
Post by budgie
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Thinking it may be caused by corruption, I reinstalled VBDOS from scratch - same
result. To test if it was something about this platform (P3-666 Win98SE), I
built another app about half the size, and it compiled and ran fine. That of
course is not conclusive.
I think what you ned to do is provide VBDOS a PIF or alter _DEFAULT.PIF.
What you want to do is provide it as much EMS and XMS memory as possible.
That might enable VBDOS to run.

Stephen Howe
budgie
2006-03-13 13:06:10 UTC
Permalink
On Mon, 13 Mar 2006 12:32:08 -0000, "Stephen Howe"
Post by budgie
Post by budgie
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the
IDE.
Post by budgie
But when I attempt compilation, it faults. If I try in the DOS box (under
98SE)
Post by budgie
it exits with a Windows error message "tried to execute an invalid
instruction".
Post by budgie
If I boot to command prompt and run VBDOS from there, it just locks up
while
Post by budgie
presumably still in BC.EXE. In each case I am attempting to compile from
with
Post by budgie
the IDE, not command line.
Thinking it may be caused by corruption, I reinstalled VBDOS from
scratch - same
Post by budgie
result. To test if it was something about this platform (P3-666 Win98SE),
I
Post by budgie
built another app about half the size, and it compiled and ran fine. That
of
Post by budgie
course is not conclusive.
I think what you ned to do is provide VBDOS a PIF or alter _DEFAULT.PIF.
What you want to do is provide it as much EMS and XMS memory as possible.
Both are currently set to "AUTO" in the Properties->Memory tab
Post by budgie
That might enable VBDOS to run.
Ileana Garza Tovar
2006-04-17 04:15:11 UTC
Permalink
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Are you tried to compile EXE requiring Run-Time Module? It compiles very
different.
--
¡Saludos!

Ileana P. Garza Tovar
budgie
2006-04-17 08:34:25 UTC
Permalink
On Sun, 16 Apr 2006 23:15:11 -0500, "Ileana Garza Tovar"
Post by Ileana Garza Tovar
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
Are you tried to compile EXE requiring Run-Time Module? It compiles very
different.
Both selections were tried. When the files were saved as ascii, the
compile_from_IDE worked fine. When the files were re-saved as binary
(tokenised) the comp went fine too. Conclusion: corrupted binary saved file
(at least one).

Project now much further advanced ....
Ileana Garza Tovar
2006-04-17 04:20:47 UTC
Permalink
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
I wonder, did you state at Autoexec.bat the environment variables of VB-DOS,
as they are in the NEW-VARS.BAT sample file?
--
¡Saludos!

Ileana P. Garza Tovar
budgie
2006-04-17 08:35:11 UTC
Permalink
On Sun, 16 Apr 2006 23:20:47 -0500, "Ileana Garza Tovar"
Post by Ileana Garza Tovar
Post by budgie
Yes, unfortunately I'm back ...
This olde QB45 app is now 3/4's converted to VBDOS, and runs fine in the IDE.
But when I attempt compilation, it faults. If I try in the DOS box (under 98SE)
it exits with a Windows error message "tried to execute an invalid instruction".
If I boot to command prompt and run VBDOS from there, it just locks up while
presumably still in BC.EXE. In each case I am attempting to compile from with
the IDE, not command line.
I wonder, did you state at Autoexec.bat the environment variables of VB-DOS,
as they are in the NEW-VARS.BAT sample file?
No, not needed. See reply to your previous post for fix and presumed cause.
Continue reading on narkive:
Search results for 'Compiler problems - (the saga continues).' (Questions and Answers)
13
replies
ten points can be yours by answering this?
started 2006-08-26 14:28:50 UTC
history
Loading...