joncampbell123 / dosbox-x

DOSBox-X fork of the DOSBox project
GNU General Public License v2.0
2.81k stars 383 forks source link

Win 9x "invalid page fault" with PC Gamer, July 1998 Demo Disk #4271

Open exoscoriae opened 1 year ago

exoscoriae commented 1 year ago

Describe the bug

The July and August issues of PC gamer had a switch to a new format for their demo disk. They ditched the win3x compatibility and went to 9x only.

Both of the July and August (1998) disks give the following error when you try to start them: PCGAMER caused an invalid page fault in module KERNEL32.DLL at 0137:bff9a28c (note, this last number tends to change)

I have tested this in both a Win 95 and Win 98 install using DOSBox-X. We then tested it in PCem and got the same error. At that point we tested it on real hardware, and it started up just fine.

The September disk (and subsequent disks) no longer behaves this way, and it loads fine in our DOSBox-X installs.

Steps to reproduce the behaviour

Load the July '98 PC Gamer demo disk in a Win9x install https://archive.org/details/pcgamer-disc-4.1-july-1998

Open the CD folder

Attempt to run the executable that resides in the root folder (pcgamer.exe)

image

Expected behavior

A menu should load showing the contents of that months disk.

image

What operating system(s) this bug have occurred on?

Windows 10 Pro 22H2 (as well as several other OS's that my staff tested it on)

What version(s) of DOSBox-X have this bug?

0.83.25

Used configuration

[sdl]
autolock=true
windowresolution=1280x960

[dosbox]
title=Windows 95
memsize=64

[video]
vmemsize=8
vesa modelist width limit=0
vesa modelist height limit=0

[dos]
ver=7.1
hard drive data rate limit=0
floppy drive data rate limit=0

[cpu]
cputype=pentium_mmx
core=dynamic_x86
cycles=100000

[sblaster]
sbtype=sb16vibra

[fdc, primary]
int13fakev86io=true

[ide, primary]
int13fakeio=true
int13fakev86io=true

[ide, secondary]
int13fakeio=true
int13fakev86io=true
cd-rom insertion delay=4000

[render]
scaler=none

[autoexec]
@echo off
@imgmount c .\Magazines\PCGamerUS\PCGamer_1998_07\c.img 
@imgmount d .\Magazines\PCGamerUS\PCGamer_1998_07\cd\pcgamer.iso
cls
boot c:

Output log

No response

Additional information

I have tried tweaking memsize, core, cputype, and cycles to no avail. The fact it does the same thing in PCem but not on real hardware is quite interesting to me.

Have you checked that no similar bug report(s) exist?

Code of Conduct & Contributing Guidelines

Torinde commented 1 year ago

Maybe a newer DOSbox-X version will behave differently? There are a lot of changes between 0.83.25 (from 1 year ago) and 2023.05.01.

FYI, VHD support got recent improvements and maybe dynamic image support #3996

grapeli commented 1 year ago

I confirm. Does not start. Of course, under the latest version of DOSBox-X. I am getting exactly the same error message. The same pcgamer.exe runs fine under Qemu and from the same Win98SE image.

Torinde commented 1 year ago

2023.09.01 release has "Enhanced Dynamic and Differencing VHD support". Not related to this issue, but helpful for eXoWin9x, I assume.