joncampbell123 / dosbox-x

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

Unable to start win95/win98 crash quit unexpectedly #4191

Closed yxmline closed 1 year ago

yxmline commented 1 year ago

Describe the bug

Unable to start win95/win98 crash quit unexpectedly on mingw64 build sdl1/sdl2 version

vsbuild and mingw32 ok

Steps to reproduce the behaviour

use mingw64 build version start win95/win98

Expected behavior

No response

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

Windows 10 22h2

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

mingw64 not work https://github.com/joncampbell123/dosbox-x/commit/2218b065373ac2f0c922d756c3c1cd960f15de5c to latest commit mingw64 latest work https://github.com/joncampbell123/dosbox-x/commit/29cffb8f48f0aa80fc41bd5456bcdf4af184664e

Used configuration

win95
[sdl]
autolock=true
mapperfile=mapper-git.map
mapperfile_sdl1=mapper-git.sdl1.map
mapperfile_sdl2=mapper-git.sdl2.map

[dosbox]
title=Windows 95
memsize=480

[video]
vmemsize=64
vesa modelist width limit=0
vesa modelist height limit=0
vga bios use rom image=false

[dos]
# Set this to 7.1 if using Win95 OSR2 or later
ver=7.1
hard drive data rate limit=0
floppy drive data rate limit=0

[cpu]
fpu=auto
cputype=pentium_iii
core=auto
cycles=max

[midi]
midiconfig=1
mt32.romdir=.\rom\mt32\

[sblaster]
sbtype=sb16vibra
irq=5

[ipx]
ipx=false

[ne2000]
ne2000=false
nicirq=10
backend=auto
macaddr=CC:BC:2F:05:58:1D

[ethernet, pcap]
realnic="Qualcomm Atheros Ar81xx series PCI-E Ethernet Controller"

[ethernet, slirp]
restricted=false
disable_host_loopback=false
mtu=0
mru=0

[fdc, primary]
int13fakeio=true
int13fakev86io=true

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

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

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

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

[render]
scaler=none

[voodoo]
voodoo_card=auto
voodoo_maxmem=true
glide=true
splash=false
lfb=full_noaux

[autoexec]
IMGMOUNT 2 "F:\xxx\Win95JPN_hdd.img" -t hdd -fs none
IMGMOUNT 3 "F:\xxx\Win95JPN_hdd_b.img" -t hdd -fs none
boot c:

win98
[sdl]
autolock=true
mapperfile=mapper-git.map
mapperfile_sdl1=mapper-git.sdl1.map
mapperfile_sdl2=mapper-git.sdl2.map

[dosbox]
machine=svga_s3vision968
title=Windows 98 JPN
memsize=512

[video]
vmemsize=64
vesa modelist width limit=0
vesa modelist height limit=0
vga bios use rom image=false

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

[cpu]
fpu=auto
cputype=pentium_iii
core=auto
cycles=max

[midi]
midiconfig=1
mt32.romdir=.\rom\mt32\

[sblaster]
sbtype=sb16vibra
irq=5

[ipx]
ipx=false

[ne2000]
ne2000=false
nicirq=10
backend=auto
macaddr=CC:BC:2F:05:58:1D

[ethernet, pcap]
realnic="Qualcomm Atheros Ar81xx series PCI-E Ethernet Controller"

[ethernet, slirp]
restricted=false
disable_host_loopback=false
mtu=0
mru=0

[fdc, primary]
int13fakev86io=true

[ide, primary]
int13fakeio=true
int13fakev86io=true
enable pio32=true
cd-rom insertion delay=4000

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

[render]
scaler=none

[voodoo]
voodoo_card=auto
voodoo_maxmem=true
glide=true
splash=true
lfb=full_noaux

[autoexec]
@echo off
IMGMOUNT 2 "F:\xxx\Win98JPN_hdd.img" -t hdd -fs none -ide auto
IMGMOUNT 3  "F:\xxx\Win98JPN_hddb.img" -t hdd -fs none -ide auto
BOOT C:
echo.

Output log

Logging: opened logfile '.\Logs\runwin98jpn.log' successfully. All further logging will go to this file.
Win32 EnumDisplayDevices #0: name=\\.\DISPLAY1 string=NVIDIA GeForce GTX 1070 Ti
Win32 EnumDisplayDevices #1: name=\\.\DISPLAY2 string=NVIDIA GeForce GTX 1070 Ti
Win32 EnumDisplayDevices #2: name=\\.\DISPLAY3 string=NVIDIA GeForce GTX 1070 Ti
Win32 EnumDisplayDevices #3: name=\\.\DISPLAY4 string=NVIDIA GeForce GTX 1070 Ti
DOSBox-X version 2023.03.31 (Windows SDL1)
         0       MISC:Copyright 2011-2023 The DOSBox-X Team. Project maintainer: joncampbell123 (The Great Codeholio). DOSBox-X published under GNU GPL.
         0       GUI:Press Ctrl-F10 to capture/release mouse, Alt-F10 for configuration.
Windows keyboard layout ID is 0x0409
Host keyboard layout is now us (US English)
Mapper keyboard layout is now us (US English)
The default output for the video system: direct3d
Configured windowposition: -
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
SDL_mapper: US keyboard detected, set usescancodes=false
ISA BCLK: 8333333.333Hz (25000000/3)
monopal: green, 
Active save slot: 1 [Empty]
USING AVI+ZMBV
Max 3670016 sz 524288
Final 524288
Glide:LFB access: read-write (no aux)
MIDI:win32 selected Microsoft GS Wavetable Synth
MIDI:Opened device:win32
Pentium CMPXCHG8B emulation is enabled
         0       FPU:FPU core: x86 FPU
One joystick reported, initializing with 4axis
Using joystick Controller (XBOX 360 For Windows) with 5 axes, 10 buttons and 1 hat(s)
         0 WARN  MISC:Can't find matching event for hand_debugger =  yet. It may exist later when registered elsewhere in this emulator.
         0       MISC:MAPPER: Loading mapper settings from mapper-git.sdl1.map
VOODOO LFB now at d0000000
Serial1: BASE 3f8h
Serial2: BASE 2f8h
Parallel1: BASE 378h
MPU-401 Registering I/O ports as if IBM PC MPU-401 at base 330h
         0       MISC:MPU IRQ 9
Memory I/O complexity optimization enabled aka option 'memory io optimization 1'. If the game or demo is unable to draw to the screen properly, set the option to false.
The 'scanline render on demand' option is available and may provide a modest boost in video render performance if set to true.
         0       VGA:Video RAM: 16384KB
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Allocated APM BIOS pm entry point at f000:ce20
Writing code to fce20
Writing code to fce40
         0       KEYBOARD:Keyboard AUX emulation enabled
         0       SBLASTER:DSP:Reset
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Windows: IID_ITaskbarList3 is available
         3       INT10:Set Video Mode 3
         3       VGA:Blinking 8
         3       VGA:Blinking 0
         3       MOUSE:INT 15H PS/2 emulation enabled
ISA Plug & Play BIOS enabled
VGA ROM BIOS init callback
         8       INT10:Set Video Mode 3
         8       VGA:Blinking 8
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c4
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c5
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c6
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c7
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c8
        13 WARN  MISC:MEM_SlowPath called within system RAM at page c9
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ca
        13 WARN  MISC:MEM_SlowPath called within system RAM at page cb
        13 WARN  MISC:MEM_SlowPath called within system RAM at page cc
        13 WARN  MISC:MEM_SlowPath called within system RAM at page cd
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ce
        13 WARN  MISC:MEM_SlowPath called within system RAM at page cf
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d0
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d1
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d2
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d3
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d4
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d5
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d6
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d7
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d8
        13 WARN  MISC:MEM_SlowPath called within system RAM at page d9
        13 WARN  MISC:MEM_SlowPath called within system RAM at page da
        13 WARN  MISC:MEM_SlowPath called within system RAM at page db
        13 WARN  MISC:MEM_SlowPath called within system RAM at page dc
        13 WARN  MISC:MEM_SlowPath called within system RAM at page dd
        13 WARN  MISC:MEM_SlowPath called within system RAM at page de
        13 WARN  MISC:MEM_SlowPath called within system RAM at page df
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e0
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e1
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e2
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e3
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e4
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e5
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e6
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e7
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e8
        13 WARN  MISC:MEM_SlowPath called within system RAM at page e9
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ea
        13 WARN  MISC:MEM_SlowPath called within system RAM at page eb
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ec
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ed
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ee
        13 WARN  MISC:MEM_SlowPath called within system RAM at page ef
        17       INT10:Set Video Mode 12
        17       VGA:Blinking 0
        17       VGA:Blinking 8
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
     14999       VGA:VGA refresh rate is now, 59.940
pixratio 1.000, dw false, dh false
Aspect ratio: 640 x 480  xToY=1.333 yToX=0.750
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Aspect ratio: 640 x 480  xToY=1.333 yToX=0.750
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
  14109312       INT10:Set Video Mode 3
  14109315       DOSMISC:DOS clipboard device (dummy access) is enabled with the name CLIP$
WARNING: No translation support (to host) for code page 0
XMS: 50 handles allocated for use by the DOS environment
  14109315       MISC:UMB assigned region is 0xcc00-0xdfff
EMS page frame at 0xe000-0xefff
COMMAND.COM env size:             720 bytes
COMMAND.COM environment block:    0xcc01 sz=0x002d
COMMAND.COM main body (PSP):      0xcc2f sz=0x009a
COMMAND.COM stack:                0xcc49
  14109315       FILES:file open command 2 file CON
  14109320       FILES:file open command 2 file CON
  14109325       FILES:file open command 2 file CON
  14109330       FILES:file open command 2 file PRN
  14109330       MOUSE:INT 33H emulation enabled
  14130955       VGA:VGA refresh rate is now, 70.087
pixratio 1.350, dw false, dh false
Aspect ratio: 720 x 540  xToY=1.333 yToX=0.750
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
  14135844       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14135844       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14135844       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14135844       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14135844       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14135844       FILES:file search attributes FFF7 name "Z:\SYSTEM"
  14135847       EXEC:Execute Z:\SYSTEM\IMGMOUNT.COM 0
  14135847       FILES:file open command 0 file Z:\SYSTEM\IMGMOUNT.COM
IDE: index 0 slave=0
  14136647       DOSMISC:Mounting image as C/H/S 1023/130/63 with 512 bytes/sector
WARNING: Unable to reduce heads to 16 and below
If at all possible, please consider using INT 13h geometry with a head
count that is easier to map to the BIOS, like 240 heads or 128 heads/track.
Some OSes, such as Windows 95, will not enable their 32-bit IDE driver if
a clean mapping does not exist between IDE and BIOS geometry.
Mapping BIOS DISK C/H/S 1023/130/63 as IDE 8312/16/63 (non-straightforward mapping)
  14137818       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14137818       FILES:file search attributes FFF7 name "Z:\SYSTEM"
  14137821       EXEC:Execute Z:\SYSTEM\IMGMOUNT.COM 0
  14137821       FILES:file open command 0 file Z:\SYSTEM\IMGMOUNT.COM
IDE: index 0 slave=1
Failed to autodetect geometry, assuming LBA approximation based on first partition type (FAT with LBA)
  14138621       DOSMISC:Mounting image as C/H/S 2088/255/63 with 512 bytes/sector
WARNING: Unable to reduce heads to 16 and below
If at all possible, please consider using INT 13h geometry with a head
count that is easier to map to the BIOS, like 240 heads or 128 heads/track.
Some OSes, such as Windows 95, will not enable their 32-bit IDE driver if
a clean mapping does not exist between IDE and BIOS geometry.
Mapping BIOS DISK C/H/S 522/1020/63 as IDE 33278/16/63 (non-straightforward mapping)
  14139807       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14139807       FILES:file search attributes FFF7 name "Z:\SYSTEM"
  14139810       EXEC:Execute Z:\SYSTEM\IMGMOUNT.COM 0
  14139810       FILES:file open command 0 file Z:\SYSTEM\IMGMOUNT.COM
IDE: index 1 slave=0
IDE: index 1 slave=0
  14139820       MISC:MSCDEX: Mounting iso file as cdrom: D:\Program Files (x86)\GamEmulators\PC98\Qemupc98\img\Windows 98 Second Edition [Japanese] (Retail).iso
  14141981       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14141981       FILES:file search attributes FFF7 name "Z:\SYSTEM"
  14141984       EXEC:Execute Z:\SYSTEM\IMGMOUNT.COM 0
  14141984       FILES:file open command 0 file Z:\SYSTEM\IMGMOUNT.COM
IDE: index 1 slave=1
IDE: index 1 slave=1
  14141994       MISC:MSCDEX: Mounting iso file as cdrom: C:\Users\Public\Documents\Daemon Tools Images\LEGEND_OF_ROUGE.mdf
  14143585       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
  14143585       FILES:file search attributes FFF7 name "Z:\SYSTEM"
  14143588       EXEC:Execute Z:\SYSTEM\BOOT.COM 0
  14143588       FILES:file open command 0 file Z:\SYSTEM\BOOT.COM
Booting guest OS stack_seg=0x7000 load_seg=0x07c0
Removing UMB block 0xcc00-0xdfff
Alright: DOS kernel shutdown, booting a guest OS
  CS:IP=0000:7c00 SS:SP=7000:0100 AX=0000 BX=7c00 CX=0001 DX=0080
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
Aspect ratio: 720 x 540  xToY=1.333 yToX=0.750
Screen report: Method 'Win98base' (1920.000 x 1080.000 pixels) at (0.000 x 0.000) (508.000 x 285.750 mm) (20.000 x 11.250 in) (96.000 x 96.000 DPI)
  14158182       BIOS:BIOS INT14: port 3 does not exist.
  14158193       BIOS:BIOS INT14: port 2 does not exist.

Additional information

No response

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

Code of Conduct & Contributing Guidelines

joncampbell123 commented 1 year ago

Windows 95/98 support is commonly tested with either core=normal or core=dynamic. Please try either one. Also, Windows 95 only supports up to the Pentium MMX and Windows 98 the Pentium II. You need to install at least Windows 98 SE if you're going to use the Pentium III cputype.

yxmline commented 1 year ago

core=normal or core=dynamic,cputype=pentium_ii or cputype=pentium_mmx not work some dos game so not work The symptoms of Dosbox-x are freezing first and then CTD autobuild so not work

https://user-images.githubusercontent.com/4246694/232847980-3ed974a0-1be8-44fc-a40a-526762a578fd.mp4

Uploading 2023-04-19 00-35-04.mp4…

https://user-images.githubusercontent.com/4246694/232850068-e7f9b8d5-e44c-437d-8b91-25ac5605bf2f.mp4

yxmline commented 1 year ago

thanks fix at https://github.com/joncampbell123/dosbox-x/commit/72237faf4776f966a1138a1b11518a0bfd6ced78 and https://github.com/joncampbell123/dosbox-x/pull/4229/