VOGONS


First post, by darkgamorck

User metadata
Rank Member
Rank
Member

All,

Everytime I try to compile an EXE file using either some version of QBASIC of VBDOS1, DOSBox crashes and gives me a "CALL: Descriptor type 12 unsupported" error in the console. The error seems to be related to the linking process as manually executing the binary for that in VBDOS1, results in the same error.

As far as I know, this issue has existed in every version of DOSBox I've used for quite awhile (since before 0.60). The question is, is there anyway around this and if not, would it feasible to fix this with minimal effort?

Thanks for your time and all of your effort.

Note: This latest test was performed using DOSBox 0.70. I've used a variety of settings but all result in the same issue.

Reply 1 of 13, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

can you provide the compiled executable (if the license permist it ?)

Water flows down the stream
How to ask questions the smart way!

Reply 2 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Found that compiler suit, happens in the linker. They want an exception
when calling data-only segments and then dynamically change the
segment type to code+data. Linker works fine then, so does the
resulting executable.

Reply 3 of 13, by darkgamorck

User metadata
Rank Member
Rank
Member

I never get a resulting executable. DOSBox dies before I can get quite that far. There are some temporary files, of which I assume one is likely the initial compiled object module. Even executing the LINK.EXE file, I get an immediate crash.

It seems as if my initial post was inaccurate however. I was under the impression Quick Basic had the same issue, but that is apparently not the case. It is only VBDOS 1.0 that has the issue. I apologize for the inaccuracy, but it's been so long since I've tried QB, the problem with that one must've been fixed at some point while the problem with VBDOS 1.0 stayed around. I just assumed they were related.

Reply 4 of 13, by darkgamorck

User metadata
Rank Member
Rank
Member

Ok after some more testing... I have found a way to make programs for VBDOS 1.0 compile. It comes with two math libraries and choosing the "alternate" library allows compilation to happen successfully. It is only when I use the "80x87 or Emulator Math" library that things go bad. So it seems like the issue is FPU related to say the least. Still it seems odd that whenever the LINK.EXE file is run, the same error occurs immediately.

Reply 5 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I never get a resulting executable.

I didn't say it works in plain 0.70. Also it's no fpu issue.

Reply 6 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

If you/sb else needs vbdos+fpulib or encounters the same error message
with other vbdos libraries, write a pm or something.

Reply 7 of 13, by darkgamorck

User metadata
Rank Member
Rank
Member

So wd, does that mean that the next version of DOSBox will have a fix for this? That would make my crappy day a far better one. No pressure though 😀 If the answer is yes, could you tell me whether or not the code is in CVS yet and if so, what the commit date was?

Thanks a lot guys...

Reply 8 of 13, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

There is no commit for that. If you really need to use that vbdos i can
send you a build that is fixed. If you're on linux/can compile sources
yourself i might put up a diff.

Reply 9 of 13, by darkgamorck

User metadata
Rank Member
Rank
Member

Don't worry about it then. I use Linux about a third of the time, but since I've found a way to make it work, that is all that matters. I appreciate you looking into this for me though. If you want go ahead and post the diff, if anything it'll give me more insight into the internals of DOSBox.

Reply 10 of 13, by haegar

User metadata
Rank Newbie
Rank
Newbie

Hi,
I had the same problem with the QBasic-Compiler.
However, I found a workaround 😀
Use these parameters in your DOSBox config file:

xms=false
ems=false
umb=false

I would also recommend to use separate config files for different purposes. I start my DOSBox with
dosbox -conf compiler.conf (for QBasic).
For other purposes (e.g.) games I have different configs, like frogger.conf or windows.conf.

Have fun!

Reply 11 of 13, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

ah thanks. But for future reference it will work in 0.71

Water flows down the stream
How to ask questions the smart way!

Reply 12 of 13, by Chipder

User metadata
Rank Newbie
Rank
Newbie

Will DosBox run VBDos 1.0. I have written programs in VBDOS, but I am thinking of getting a new Computer with dual core processors like Intel or AMD. I run VBDOS on an AMD laptop, but when I tried it on my Intel Desktop it Crashes. The programs are in Text Format. Will DOSBox run VBDOS under Windows 7 on the Intel or do I need an AMD processor. Which version do I need of Windows 7.