Dosbox Bug


Pickle

Mega GP Mania
Joined
May 30, 2006
Messages
5,527
Location
Detroit, Michigan
Website
Visit site
I re-creating the this thread in the correct spot.

Dobox build's 0.70 and my build of 0.72 are showing this error. Ive had to happen to me in both. I can not isolate the problem. It might have something to do with glib.
Im using the open2x toolchain with prebuilt libs + a newer SDL lib with touch screen support added.
There are no errors in my compilation.

: error while loading shared libraries: cannot create search path array: Cannot allocate memory

Here is my configure command (I have tried without any of the optimization flags):
CODE

./configure --host=arm-open2x-linux --target=arm-open2x-linux --build=`uname -m` CPPFLAGS="-I$GP2XDEV/arm-open2x-linux/include" CXXFLAGS="-O3 -fmerge-all-constants -ffast-math -funswitch-loops" LDFLAGS="-static -L$GP2XDEV/arm-open2x-linux/lib"



This is difficult, Ive proven that the application code isnt being executed. I cant figure out for the life of me why these errors are occuring.

I really need help on this one.
 
Well if anyone does come along that is well versed in cross compiling to try and try to compile dosbox. I would really like to know what the problem is and to learn from it.
 
Have you tried compiling with a different toolchain? I'd like to help, but I have no idea what's going on here... There are a few posts on the Italian and German GP2X forums where people have run into the same problem, but no one seems to have come up with a solution :(
 
Looking through Google shows that this may be an error that occurs at runtime.

I'd look through the DOSBox code for:

QUOTE

: error while loading shared libraries: cannot create search path array: Cannot allocate memory



and see which bit of the DOSBox code gives the above message on error.

Dunno if this'll help.
 
namco said:
Looking through Google shows that this may be an error that occurs at runtime.
I think your right on that. Although I think the error is coming from glib, its not coming from dosbox. I added a printf statement right after the main function, so the binary isnt even stated to really execute. Typically the error's ive seen from searching are because a library that is dynamically linked can be found and usually the name of the lib is given in the error.
In this case no name is given.
I going to try again to compile though codeblocks and not use autotools and the generated make files. Ive noticed if you dont do some things right the autotools will actually grab info from the host machine and not the target.
 
Last edited by a moderator:
I have a working binary compiling through codeblocks.

Im blaming either open2x, or the autotool makefiles. Most likely its the makefiles since this is the way Boing made his versions and I run those and had the same problem.
 
Pickle said:
This really sucks!

It appears my binaries will work on a F200, but they never work on my F100. This is so absurd!
:blink:

Is it the same error you were receiving before, or something different? Do other apps compiled through Codeblocks work on your F100?
 
Last edited by a moderator:
fishybawb said:
Pickle said:
This really sucks!

It appears my binaries will work on a F200, but they never work on my F100. This is so absurd!
:blink:

Is it the same error you were receiving before, or something different? Do other apps compiled through Codeblocks work on your F100?


I think i was given a false positive with the F200 tests as later versions didnt work.
This is the only application ive had show this problem. Everything else ive compiled seems to work ok, at least they run.
Im always getting the same error from the first post.
 
Last edited by a moderator:
I don't know exactly what the error is about, but the culprit is probably high memory requirements of dosbox.

When I apply some of the tips for reducing memory requirements (written in file docs/PORTING), dosbox starts working.

For example setting RENDER_USE_ADVANCED_SCALERS to 0 instead of 3 (in file render.h) gets rid of the error.
 
M-HT said:
I don't know exactly what the error is about, but the culprit is probably high memory requirements of dosbox.

When I apply some of the tips for reducing memory requirements (written in file docs/PORTING), dosbox starts working.

For example setting RENDER_USE_ADVANCED_SCALERS to 0 instead of 3 (in file render.h) gets rid of the error.
:eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek: :eek:
QUOTE
If memory is a constraint:
- in paging.h reduce the size of the TLB:
#define TLB_SIZE (64*1024)
the 64 gives access to the first 256mb of linear memory
drawback: some protected mode games won't work then
gain: reduces memory requirements about ~15mb


This the kind of reponse ive been looking for, I didnt even know that Porting file was there. Thanks!
Im off to study that thing.
 
Last edited by a moderator:
I ran on my F100 last night and the problem is solved. At first I did both changes and then rolled back the TLB change and it still works. Thank you very much M-HT!

Ive also fixed the cursor from appearing. Next is to link in touchscreen for mouse support (I did have this working at one point)

The speed is about the same as the previous releases. Hopefully this one might be a little more stable for everyone.
 
Pickle, are you using the upper memory regions of the GP2X or just the lower 32MB?

How much memory is used?

Is there any chance that DOSBOX would run on a GP32? The largest limitation is the 8MB RAM by the looks of things, however I think it would be interesting to port a cut-down version of DOSBOX which just supports a simple PC XT type computer - 640KB, CGA graphics, single floppy, beeper sound and either 8088 at 4.77Mhz or maybe 8086 at 8Mhz.

The same spec as an old Amstrad PC 20 or Sinclair PC 200.

I wonder if MESS would be a better starting base for this kind of thing?
 
slaanesh said:
Pickle, are you using the upper memory regions of the GP2X or just the lower 32MB?

How much memory is used?

Is there any chance that DOSBOX would run on a GP32? The largest limitation is the 8MB RAM by the looks of things, however I think it would be interesting to port a cut-down version of DOSBOX which just supports a simple PC XT type computer - 640KB, CGA graphics, single floppy, beeper sound and either 8088 at 4.77Mhz or maybe 8086 at 8Mhz.

The same spec as an old Amstrad PC 20 or Sinclair PC 200.

I wonder if MESS would be a better starting base for this kind of thing?
Im not using the upper 32mb. I dont know the exact amount of memory that was being used. The one change I did though freed up an expected 15mb, which is huge.
Does the GP32 have 32mb? I think its possible, the other thing you have to consider is the screen resolution does the GP32 SDL library down scale 640x400?
 
Last edited by a moderator:
Back
Top