Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

DPMILD32 issues (DOSX)

posted by Japheth Homepage, Germany (South), 19.02.2008, 04:25
(edited by Japheth on 19.02.2008, 04:36)

> - Seems DPMILD32 (and also DPMILD32.BIN, and even HDLD32.BIN) do
> unconditionally support 32-bit NE, while PE is optional :no:

Yes.

> - - Is the 32-bit NE useful at all ? Maybe it could get kicked :clap:
> - - Seems that for a PE, DPMILD32 (if PE-enabled at all) first tries a NE
> (open file, read $40 bytes, test for MZ, read next EXE position at $3C,
> seek (and fail :lol3:) , read, compare against "NE", close file), and then
> retries with PE (reopen and repeat all the fun). This could be optimized at
> least :-)
> - - NE code is hard-merged into main module, PE is separate - probably
> could be better also ...

NE support was first.

I'm not sure if it is worth to analyze DPMILD32 too deeply. There will be a significant change in next hx: a simplified PE loader stub - LOADPE.BIN, size just 1.25 kB. This stub will make DPMILD32.EXE obsolete for 32bit DOS applications which don't need dll support ... which are virtually all.

> - Spawning still doesn't work at all, see shot:
>
> Fails with CC386 as well as with FreeBASIC :-(
>
> What's wrong here ? :crying:

DPMILDR=8 prevents DPMILD32 from trying to load another application, but it doesn't tell HDPMI32 to supply separate address spaces for clients. Therefore you either

a) must supply base relocations with your PE binary ("/FIXED:NO") or
b) set HDPMI=32 to tell HDPMI to supply separate address spaces.

---
MS-DOS forever!

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 258 users online (0 registered, 258 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum