Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
Rugxulo(R)

Homepage

Usono,
25.07.2011, 21:26
 

UIDE etc. (July 22) (Announce)

Johnson Lam has posted a new 7-22-2011 DRIVERS.ZIP file
on his website at:

http://johnson.tmfc.net/dos/driver.html

In it, UIDE and UIDE-S now have a /E "emulator" switch,
for use with VirtualBox. /E makes both drivers "call
the BIOS" on hard disk I-O requests. This permits the
drivers to go-around most of their hard-disk init logic
and prevents VirtualBox trouble (it may not emulate ATA
Identify-Device commands and EDD-BIOS calls correctly).

Users who had been running UIDE /N1 (no hard-disks), to
avoid VirtualBox problems, can now try UIDE /E instead.
/N1 causes UIDE to totally ignore all hard-disks, while
/E does permit hard-disk data to get cached, after UIDE
"calls the BIOS" to do disk I-O. This is much better!

Note that "calling the BIOS" may cause a BIG speed loss
if using JEMM386 or other protected-mode setups. Many
cheap BIOS programs omit DOS "Virtual DMA" support, and
in protected-mode they can only do SLOW "PIO mode" data
transfers! VirtualBox users who use UIDE /E shouldn't
enable protected-mode, if possible, to avoid such hard-
disk speed losses.

david(R)

28.07.2011, 13:34

@ Rugxulo

UIDE+jemm+VCPI

Hi,
It is possible establish VCPI for 16-bit protected apps, using
EDR-DOS, JEMMX + UIDE ?? or XMGR.SYS JEMM386 + UIDE ??
Otherwise Can I use HX Extender for 16-bit protected apps like>
Can I launch turbovision trumpet news reader
or can be added DLL import to rtm.dll
There is problem with import DLL driver by rtm.exe in safe mode,
when I use rtm.dll and patch -r borland apps.exe I get error
improper driver:-(

Rugxulo(R)

Homepage

Usono,
28.07.2011, 22:38

@ david

UIDE+jemm+VCPI

> Hi,
> It is possible establish VCPI for 16-bit protected apps, using
> EDR-DOS, JEMMX + UIDE ?? or XMGR.SYS JEMM386 + UIDE ??
> Otherwise Can I use HX Extender for 16-bit protected apps like>
> Can I launch turbovision trumpet news reader
> or can be added DLL import to rtm.dll
> There is problem with import DLL driver by rtm.exe in safe mode,
> when I use rtm.dll and patch -r borland apps.exe I get error
> improper driver:-(

I'm probably the wrong guy to respond, but since others are probably busy with more important things ...

VCPI is 386+ ring 0 stuff only (unlike DPMI). Now, I guess in theory that doesn't rule out 16-bit apps, but I'm not sure. Anyways, DPMI is newer and preferred by most things because of Windows compatibility. But EMM386 (unlike real EMS) requires a 386 due to MMU for remapping memory. XMS can exist on 286s (e.g. FDXMS286) but usually is 386 (XMGR, HIMEMX).

HDPMI16 exists and can run 16-bit Borland pmode apps (e.g. GVFM). But otherwise I'm not sure what you're trying to do.

P.S. What is "safe mode", is that Windows or something else? To be honest, your best bet isn't to run in Windows at all. I mean, if something doesn't already work there, it's unlikely there's an easy way (if any!) to fix it.

DOS386(R)

29.07.2011, 09:20

@ Rugxulo

FYI: DEATH (of Jack)

http://www.drdosprojects.de/forum/drp_forum/posts/10411.html 07/15/2011, 01:14:35 :-(

Singuirito wrote:

> J.R. Ellis has deceased today.
> Rest in peace

> Johnson Lam has posted a new 7-22-2011 DRIVERS.ZIP file
> on his website at:

:confused:

david wrote:

> It is possible establish VCPI for 16-bit protected apps, using
> EDR-DOS, JEMMX + UIDE ?? or XMGR.SYS JEMM386 + UIDE ??

NO. VCPI is 32-bit only. But you can put (at your own risk) a 16-bit DPMI host (HDPMI16) between the VCPI host and you crappy 16-bit DPMI app.

> Can I use HX Extender for 16-bit protected apps

Only HDPMI16 and DPMILD16.

> Can I launch turbovision trumpet news reader
> or can be added DLL import to rtm.dll

There is no Win16 emulation in HX.

> There is problem with import DLL driver by rtm.exe in safe mode,
> when I use rtm.dll and patch -r borland apps.exe I get error
> improper driver

I don't understand. Anyway:

- UIDE should NOT conflict with your crappy DPMI16 apps (FYI: Win16 apps won't work)
- I DEPRECATE DPMI16 (even more than VCPI and DPMI32)

---
This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft ***

Japheth(R)

Homepage

Germany (South),
30.07.2011, 07:57

@ DOS386

FYI: Jack still alive

> Singuirito wrote:
>
> > J.R. Ellis has deceased today.
> > Rest in peace

IMO one shouldn't spread rumors posted by unknown people in an obscure forum. If I may cite Mr Ellis' post in FD-user:
-------------------------------------------------------------------------
Re: recent EDR-DOS forum posts, I say the same as our author Mark Twain once did -- "The rumors of my demise are greatly exaggerated"!
-------------------------------------------------------------------------

> NO. VCPI is 32-bit only. But you can put (at your own risk) a 16-bit DPMI
> host (HDPMI16) between the VCPI host and you crappy 16-bit DPMI app.

VCPI works - and is needed - on 80386+ machines only, but is not "restricted" to 32-bits.

> - I DEPRECATE DPMI16 (even more than VCPI and DPMI32)

Is this good or bad? Will you come up with some cool replacements for DPMI soon?

---
MS-DOS forever!

DOS386(R)

30.07.2011, 16:12

@ Japheth

FYI: Jack still alive

> IMO one shouldn't spread rumors posted by unknown people in an
> obscure forum. If I may cite Mr Ellis' post in FD-user:

I missed that one http://www.mail-archive.com/freedos-user%40lists.sourceforge.net/msg11125.html :-(

> VCPI is not "restricted" to 32-bits

Seems you solved david's problem :-)

---
This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft ***

david(R)

31.07.2011, 18:31

@ DOS386

BORLAND DPMI-16bit

> > Can I use HX Extender for 16-bit protected apps
>
> Only HDPMI16 and DPMILD16.

Yes I do.

>
> > Can I launch turbovision trumpet news reader
> > or can be added DLL import to rtm.dll
>
> There is no Win16 emulation in HX.

etc...dll are parts of DOS Borland 16-dpmi, no any Windows!

>
> > There is problem with import DLL driver by rtm.exe in safe mode,
> > when I use rtm.dll and patch -r borland apps.exe I get error
> > improper driver
>
> I don't understand. Anyway:

etc...dll is driver for Borland aplication, it is as exe file, which
is run into Borland application and manage by Borland rtm.exe

>
> - UIDE should NOT conflict with your crappy DPMI16 apps (FYI: Win16 apps
> won't work)
> - I DEPRECATE DPMI16 (even more than VCPI and DPMI32)

I don`t know, but when I load device UIDE in config.sys, every Borland
16-DPMI application crashes :-(

Japheth(R)

Homepage

Germany (South),
31.07.2011, 21:09

@ david

BORLAND DPMI-16bit

> I don`t know, but when I load device UIDE in config.sys, every Borland
> 16-DPMI application crashes :-(

I verified this behavior. Starting Borland Pascal or Tyrian 2000 on a true DOS system with UIDE loaded usually causes an immediate reboot. Without UIDE the applications run as expected

By running HDPMI16 just before BP/Tyrian 2000, the problem disappears. Somehow the Borland 16-bit extender and UIDE are incompatible.

Is this problem new?

---
MS-DOS forever!

david(R)

02.08.2011, 17:10

@ Japheth

BORLAND DPMI-16bit

> By running HDPMI16 just before BP/Tyrian 2000, the problem disappears.
> Somehow the Borland 16-bit extender and UIDE are incompatible.

When I use DPMILD16, application crashes, starts, but hang up on some internal err

> Is this problem new?

I think that is new problem, older UIDE works with 16-bit DPMI

Rugxulo(R)

Homepage

Usono,
13.08.2011, 01:35

@ david

BORLAND DPMI-16bit

> > By running HDPMI16 just before BP/Tyrian 2000, the problem disappears.
> > Somehow the Borland 16-bit extender and UIDE are incompatible.
>
> When I use DPMILD16, application crashes, starts, but hang up on some
> internal err
>
> > Is this problem new?
>
> I think that is new problem, older UIDE works with 16-bit DPMI

GVFM, by default, runs fine for me (but not under HDPMI16?). It's other versions of older RTM.EXE + DPMI16BI.OVL (e.g. 1993, 1998) that seem to cause a reboot, e.g. Chasm: The Rift (both demo and shareware editions) or Cash Invaders. Note that I didn't try removing UIDE. If I use the same RTM + DPMI16BI as GVFM, it doesn't crash or reboot, but it still doesn't work for those: runtime 200 error (which Veit's R200FIX TSR doesn't help, sadly).

It could be Jack's bug, but I doubt it. It's probably Borland's bug. They had a lot of bugs, and IIRC they were one of the main holdouts for 16-bit DPMI (besides Win 3.x). IIRC, even CWSDPMI never bothered with 16-bit support because no apps consistently used "pure" DPMI but instead always assumed some kind of built-in extender. Even various 32-bit things (e.g. Doom and/or DOS/4GW) had bugs, and almost everybody was more interested in that anyways. :-/

Or it could be BIOS bugs. This (huge RAM) machine here seems to choke a few different "old" DOS tools, e.g. DOS-Minix 2.0.4 (dunno, bad return from int 15h, 88h or E801h ???) for some reason incorrectly handles itself ("cannot fork ... no core") despite having way way way too much RAM free and apparently requires manually setting "memory" in the monitor before booting (see man page for example).

So, again, we need to isolate a particular Borland app (preferably something publicly available) and test under various setups and machines before claiming that "UIDE is buggy". It's probably moreso the app's fault (or similar, PEBKAC). ;-)

bretjohn(R)

Homepage E-mail

Rio Rancho, NM,
13.08.2011, 17:30

@ Rugxulo

BORLAND DPMI-16bit

> If I use the same RTM + DPMI16BI as GVFM, it doesn't crash or reboot, but
> it still doesn't work for those: runtime 200 error (which Veit's R200FIX
> TSR doesn't help, sadly).

Have you tried PROT200 instead of R200FIX? I don't know if they work exactly the same way or not, but it might be worth a try. I think there may even be a few other programs besides those two specifically designed to address the Runtime Error 200.

Also, the Runtime Error 200 is actually a speed problem (the CPU is too fast, which indirectly causes a divide overflow), so a CPU slowdown program (like my SLOWDOWN.COM) or possibly even FDAPM with a SPEEDn option might help.

Rugxulo(R)

Homepage

Usono,
14.08.2011, 00:13

@ bretjohn

BORLAND DPMI-16bit

> > If I use the same RTM + DPMI16BI as GVFM, it doesn't crash or reboot,
> but
> > it still doesn't work for those: runtime 200 error (which Veit's
> R200FIX
> > TSR doesn't help, sadly).
>
> Have you tried PROT200 instead of R200FIX?

No, I didn't try any of the various patch utils, only the aforementioned TSR. Maybe one of those (e.g. PROT200) would work, but I'm skeptical. :-/

> I don't know if they work
> exactly the same way or not, but it might be worth a try. I think there
> may even be a few other programs besides those two specifically designed to
> address the Runtime Error 200.

There are several, but they don't always work.

> Also, the Runtime Error 200 is actually a speed problem (the CPU is too
> fast, which indirectly causes a divide overflow), so a CPU slowdown program
> (like my SLOWDOWN.COM) or possibly even FDAPM with a SPEEDn option might
> help.

True, it's something to do with the timer or delay overflowing a 16-bit value on "fast" (250 Mhz?) cpus, heh, and this one (3200 Mhz) is definitely too fast!

Honestly, for something as heavily patched (and presumably with much 386 internals) as Chasm: The Rift, I have no idea what is needed. I'm not sure it can be run on real hardware. Maybe DOSBox is the only answer. The only reason I even tried was due to the alleged UIDE bug (and admittedly I can't think of a lot of public BP7 programs offhand). I just assume BP7 is buggy because it barely ever works, but perhaps it's just rarely tested anymore. Even DOSEMU (x64) didn't like any of it at all (no surprise, their 16-bit emulation would have to be very precise).

I don't know, what else can we do? Without emulators, we're screwed. We don't have sources (or even necessarily the compiler), so it's pretty much dead if it doesn't work with a little tweaking. I hate that, but that's the way it is.

But what other BP7 apps are people on this forum actively running? It would be nice to know what is considered worth preserving or essential, esp. by fellow DOS-heads. ;-)

Laaca(R)

Homepage

Czech republic,
14.08.2011, 12:07

@ Rugxulo

BORLAND DPMI-16bit

I don't have any problems with BP7 compiled programs under newest version of UIDE.
However I am not using standard RTM and dpmi16rm files but NEWRTM package.

---
DOS-u-akbar!

Khusraw(R)

E-mail

Bucharest, Romania,
14.08.2011, 18:04

@ Laaca

BORLAND DPMI-16bit

> I don't have any problems with BP7 compiled programs under newest version
> of UIDE.
> However I am not using standard RTM and dpmi16rm files but NEWRTM package.

Can you provide a link to this NEWRTM package?

Rugxulo(R)

Homepage

Usono,
14.08.2011, 18:36

@ Khusraw

BORLAND DPMI-16bit

> > I don't have any problems with BP7 compiled programs under newest
> version
> > of UIDE.
> > However I am not using standard RTM and dpmi16rm files but NEWRTM
> package.
>
> Can you provide a link to this NEWRTM package?

Here's a copy (or two, actually), but it's quite old (1993, 1994), so I'm not sure how "new" it is. I'm fairly certain newer versions exist. (And like I said, Cash Invaders used 1998, IIRC, and also crashed. Of course, that could just be spurious file dates, esp. since BP7 wasn't further developed after 1993 or such.)

http://www.merlyn.demon.co.uk/pas-bptp.htm#DPMI

P.S. No, PROT200 didn't work for Chasm: The Rift, but I haven't tried FDAPM SPEEDn yet ....

bretjohn(R)

Homepage E-mail

Rio Rancho, NM,
14.08.2011, 18:48

@ Rugxulo

BORLAND DPMI-16bit

> I'm not sure it can be run on real hardware. Maybe DOSBox is the only answer.

I really doubt that the ONLY answer is a VM like DOSBox. VM's are definitely popular these days. But, they are still very far from where they need to be, and don't seem to be getting much better (at least for DOS applications).

Japheth(R)

Homepage

Germany (South),
15.08.2011, 16:29

@ david

BORLAND DPMI-16bit - a workaround for this issue

> > Is this problem new?
>
> I think that is new problem, older UIDE works with 16-bit DPMI

No, the problem is old - I tested with some old versions of UIDE and even an old UDMA; they all crash.

It's a bug in the Borland DOS-extender. For unknown reasons it crashes if the physical address of the XMS memory block that the extender allocates is beyond the 16MB border.

Here's a work-around that requires 2 changes in config.sys:

1. Option /R63 for UIDE, which makes UIDE not use extended memory from the first 64 MB, must be set.
2. Option /X2MAX32 for HimemX, which makes HimemX restrict XMS v2 max. memory to 32 MB, must also be set.

---
MS-DOS forever!

Rugxulo(R)

Homepage

Usono,
15.08.2011, 22:29

@ Japheth

BORLAND DPMI-16bit - a workaround for this issue

> > > Is this problem new?
> >
> > I think that is new problem, older UIDE works with 16-bit DPMI
>
> No, the problem is old - I tested with some old versions of UIDE and even
> an old UDMA; they all crash.
>
> It's a bug in the Borland DOS-extender. For unknown reasons it crashes if
> the physical address of the XMS memory block that the extender allocates is
> beyond the 16MB border.

I don't know if "unknown" is the word here. 16-bit pmode never strictly targeted beyond 286 (16 MB), did it? I know you know this, just saying, BP7 is old old old and was presumably never designed to handle even the awareness of gigs of RAM!

> Here's a work-around that requires 2 changes in config.sys:
>
> 1. Option /R63 for UIDE, which makes UIDE not use extended memory from the
> first 64 MB, must be set.
> 2. Option /X2MAX32 for HimemX, which makes HimemX restrict XMS v2 max.
> memory to 32 MB, must also be set.

Isn't there possibly a better way at runtime without having "yet another" CONFIG.SYS option? Perhaps loading a big RAM disk (temporarily), e.g. SHSURDRV, to eat up some RAM? Or maybe "SET DPMIMEM=MAXMEM 16383" or whatever? (untested)

Japheth(R)

Homepage

Germany (South),
16.08.2011, 03:37
(edited by Japheth, 16.08.2011, 03:50)

@ Rugxulo

BORLAND DPMI-16bit - a workaround for this issue

> I don't know if "unknown" is the word here. 16-bit pmode never strictly
> targeted beyond 286 (16 MB), did it?

Yes, but the Borland extender is not really "286 only", because then it would restrict itself to allocate 16 MB - or 15 MB. However, it tries to allocate almost 64MB (65535 kb).

My guess is: the Borland extender uses the 16-bit version of LGDT or LIDT, which works with 24-bit addresses only. If you can find the occurances of these instructions in the extender, a patch may be possible. However, the patch may be tricky, because the 32-bit versions of these instructions requires an additional byte (66h).

---
MS-DOS forever!

Rugxulo(R)

Homepage

Usono,
16.08.2011, 07:51

@ Rugxulo

BORLAND DPMI-16bit - a workaround for this issue

> Isn't there possibly a better way at runtime without having "yet another"
> CONFIG.SYS option? Perhaps loading a big RAM disk (temporarily), e.g.
> SHSURDRV, to eat up some RAM? Or maybe "SET DPMIMEM=MAXMEM 16383" or
> whatever? (untested)

No, DPMIMEM= didn't seem to help here at all, but admittedly I didn't test every combination.

Well, for CHASM-SW.RAR, at least, the answer is as follows:


md chasm
cd chasm
unrar x \zips\games\chasm-sw.rar
hdpmi16.exe
fdapm.com speed3
chasm.exe


Otherwise, something somewhere decides to reboot the computer (seemingly using FDAPM, but it could be something else). Of course, this specific BP7 example by itself never rebooted, only wouldn't run due to "Runtime 200" error, which no other fixes seemed to help.

Anyways, this way (HDPMI16 + FDAPM SPEED3) seems to work with or without UIDE regardless. But of course YMMV for other BP7 stuff. (And of course this doesn't fix lack of sound card support, *sniff*, not even PC speaker works for this game.)

P.S. Honestly the few times I've weakly tried to use HDPMI16 recently, it seemed to act weird or not work at all. Perhaps it was other stuff, though I just blindly assumed it couldn't handle seeing all my RAM. But it works here, at least. Very confusing.

Laaca(R)

Homepage

Czech republic,
16.08.2011, 22:24

@ Khusraw

BORLAND DPMI-16bit

> Can you provide a link to this NEWRTM package?

Oops. I was wrong. Usually I am not using NEWRTM but just newer version of RTM.EXE grabbed from some version of Turbo C compiler. Works without problems and I uploaded it here: http://www.laaca.borec.cz/temp/myrtm.zip
However NEWRTM I also have but routinely not use it. Uploaded here: http://www.laaca.borec.cz/temp/newrtm.zip

And today I made fresh test on my both DOS machines and both have no problems with mentioned RTM versions and with UIDE from 22.7.

---
DOS-u-akbar!

Back to the board
Thread view  Mix view  Order
15243 Postings in 1372 Threads, 251 registered users, 12 users online (0 registered, 12 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum