Back to home page

DOS ain't dead

Forum index page

Log in | Register

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

Homepage

Germany (South),
02.12.2007, 20:38
 

SHSUCDX v3.04 bug (Users)

Hello,

playing with XCDROM32 I found a bug in Jason Hood's SHSUCDX v3.04 (dated 1. October 2006). When it is loaded without the /C option, there is a risk that it's local stack will corrupt other DOS upper memory blocks. The effects vary, depending on what has been loaded before SHSUCDX into DOS upper memory and how much of the stack is effectively used.

I reported this bug to Jason Hood, but since he's looking for a new maintainer it is pretty unsure that it will get fixed (soon). There is a workaround, instead of loading the driver with

INSTALL=SHSUCDX.COM

it should be done this way:

INSTALLHIGH=SHSUCDX.COM /C

---
MS-DOS forever!

Rugxulo(R)

Homepage

Usono,
04.12.2007, 09:55

@ Japheth

SHSUCDX v3.04 bug

> I reported this bug to Jason Hood, but since he's looking for a new
> maintainer it is pretty unsure that it will get fixed (soon). There is a
> workaround, instead of loading the driver with
>
> INSTALL=SHSUCDX.COM
>
> it should be done this way:
>
> INSTALLHIGH=SHSUCDX.COM /C

Is this still an issue if not loaded via CONFIG.SYS?

Japheth(R)

Homepage

Germany (South),
04.12.2007, 10:58
(edited by Japheth, 04.12.2007, 13:26)

@ Rugxulo

SHSUCDX v3.04 bug

> Is this still an issue if not loaded via CONFIG.SYS?

Most likely.

SHSUCDX's local stack has a size of 180h bytes. AFAIU it tries to use 0C0h bytes from its PSP, so if it is loaded without /C, the true stack size is just 180h - 0C0h = 0C0h. That's still sufficient for most cases, but if a mouse is used and the current application has installed a mouse event proc, it might be too small. The game KYRANDIA 3: "Malcolm's Revenge" is such a case (it's one of my favorite test cases for Jemm).

[edit]
even if SHSUCDX is loaded with /C there is still sometimes a problem - an indication that a local stack of 180h bytes is too small. What then helps is:

1. don't set STACKS=0,0 in config.sys
2. use Jack's SHCDX33C. This has a local stack of > 200h bytes.
[/edit]

---
MS-DOS forever!

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