Page 1 of 1

Loading .iso causes PCem menus to not respond

Posted: Wed 31 Jan, 2018 8:50 pm
by dracolich
Having an odd issue trying to use CD images in 13.1 on Windows hosts. I've been searching but haven't found anything that resembles my problem. First, when I set an IDE drive to CD-ROM in the configuration widget, it does not change the settings in the cfg. Also, the configure buttons are inactive for the 430VX and Standard IDE. This leaves cdrom_enabled = 0 in the cfg and therefore the guest BIOS does not detect a CD-ROM drive.

I can edit the cfg file and set cdrom_enabled = 1, then the guest detects it but when I load an iso image it does not appear in the guest. In addition, attempting to use any PCem menu options does not respond. Even the X button to close the window does not respond. I have to force close PCem from Task Manager. In PCem v12 loading iso files worked. On my Linux host I have to do the same cfg edit to enable a CD-ROM, but in Linux loading and using iso files works.

If I need to configure the CD-ROM by editing the cfg, what are valid values for cdrom_drive and cdrom_channel? Below is the cfg of my MS-DOS 7.1 guest, trying to boot a Puppy Linux liveCD. In the 430VX BIOS boot order is set to CDROM, C, A. My Windows hosts are Win10 64-bit and Win7 32-bit.

Code: Select all

gameblaster = 0
gus = 0
ssi2001 = 0
voodoo = 1
model = 430vx
cpu_manufacturer = 0
cpu = 4
cpu_use_dynarec = 1
cpu_waitstates = 1
gfxcard = virge375
video_speed = 5
sndcard = sb16
cpu_speed = 14
has_fpu = 1
disc_a = 
disc_b = 
hdd_controller = ide
mem_size = 65536
cdrom_drive = 0
cdrom_enabled = 1
cdrom_channel = 1
cdrom_path = E:\PCem\machines\puppy-2.17.1-nolzma-seamonkey-fulldrivers.iso
hdc_sectors = 63
hdc_heads = 16
hdc_cylinders = 4161
hdc_fn = E:\PCem\machines\Win311\Win311.img
hdd_sectors = 0
hdd_heads = 0
hdd_cylinders = 0
hdd_fn = 
hde_sectors = 
hde_heads = 
hde_cylinders = 
hde_fn = 
hdf_sectors = 0
hdf_heads = 0
hdf_cylinders = 0
hdf_fn = 
drive_a_type = 5
drive_b_type = 5
bpb_disable = 0
joystick_type = 0
mouse_type = 0
enable_sync = 1
netcard = 
lpt1_device = none
vid_resize = 0
video_fullscreen_scale = 0
video_fullscreen_first = 1
Thanks in advance for any ideas and suggestions!

Re: Loading .iso causes PCem menus to not respond

Posted: Tue 10 Apr, 2018 4:12 pm
by SarahWalker
A bit late responding to this, but this issue is the fault of bad UI design on my part. Once you've configured a CD-ROM drive in the configuration dialogue, it won't show up in the emulated machine until you've selected something other than 'disabled' in the CD-ROM menu in the main PCem window. This is a holdover from before the CD-ROM IDE channel was configurable, and instead you either had something loaded in the CD-ROM drive or it was disabled.

What you've done by modifying the cfg file manually is enable the CD-ROM drive, but not mounted anything on it. This then causes the issues when you try to load an ISO image, as the emulator will try to close the previous mount, which of course doesn't exist. It's essentially blind luck that you only see this hang on v13.1 on Windows.

Setting cdrom_enabled back to 0 and then selecting something in the menu should (hopefully!) get everything working.

This issue has been fixed for v14 - configuring a CD-ROM drive will always cause one to be emulated, just empty by default. As should always have been the case.