[GUIDE] The Starter's Guide to PCem and 86Box

Tutorials for Operating Systems, Applications etc can be posted here.
Post Reply
BF10
User avatar
Posts: 219
Joined: Wed Nov 22, 2017 5:39 pm
Contact:

[GUIDE] The Starter's Guide to PCem and 86Box

Post by BF10 »

Apparently, I am now seeing that many people are having a hard time getting the PCem family (PCem and 86Box) to be installed or run. This guide is meant to show how you will use this series of emulators. Using PCem or 86Box can help ease installation of DOS Windows and Windows 9x builds, but can also do good work for early NT versions, OS/2, and even the Apple Rhapsody releases.

---------
1: Installation
Installing this family doesn't look that easy at first but is very simple in the end.

Here is a reasonable list of prerequisites to install practically anything in the family:
  1. Windows 7 or above. PCem and 86Box is also capable of running on Linux systems.
  2. DirectX9 or above runtime. 86Box will refuse to load without the runtime.
  3. 4GB of RAM. This will ensure that when you're running the emulator that your computer's memory won't get filled.
  4. At least a 4.0 GHz processor if you plan on getting full performance on Pentium level BIOS. At about 2.0 GHz you can only get best performance on 486 level BIOS. You probably should get a better computer if you have anything slower than 2.0 GHz.
NOTE: The PCem family requires ROM images to be able to run, which cannot and will not be provided here. You'll be finding those on your own.

Now, to installing these emulators. Follow below on which emulator you want to install:

1.1: PCem
PCem (v15 as of this posting) when first installed and unzip (assuming that you can go to https://pcem-emulator.co.uk/downloads.html and download their current version) will look something like this:
Image
You might not see the "screenshots" or "configs" folder yet, but you'll see almost everything else there. Inside this folder is also a "roms" directory. You will need to copy the ROM files to the right folders in the "roms" directory. Load up PCem and you'll get this window, with no configurations:
Image
Click the "New" button on the bottom left. If you don't get a "No ROMS detected" error, then you installed PCem correctly.

1.2: 86Box
86Box is a bit harder to install. While the Github has instructions, that's for building 86Box, not installing it. First thing's first is to get the "last stable build" from http://ci.86box.net/job/86Box/. Then, unzip it and you'll get the executable and a bunch of files, like so:
Image

You're almost done, all you need to do is grab a "roms" folder with their required files and unzip it to the same directory of 86Box. If successful, you will get the same directory, but with a "roms" folder that contains everything needed.

If you started up 86Box but only get an error about a DLL file/driver being missing, you didn't install the DirectX runtime yet. Install it from the Microsoft website or the VARCem installer. If it loads to the emulator itself without a "No ROMS detected" error, you installed it correctly!
---------
2: Configuration
It is now time to configure your first system to be able to run your designated operating system.

It is worth knowing that the PCem family can support the 8088 up to a Pentium. Some builds of 86Box and VARCem may also support the Pentium II Overdrive as well. Alongside, ACPI is not supported in 86Box and PCem v14 and older so you'll likely get a "Power down" or "Safe to shutdown" screen after shutting down operating systems such as Windows 9x/NT or Linux. Thus, you should be able to install mostly any common x86 operating system you like up to around a Windows XP (Longhorn pre-reset builds can also be installed at your own risk, as they will take quite a long time to install and you won't be able to get DCE or any of its goodies to run) or Ubuntu 9.10. With ACPI support in PCem v15, you'll be able to install Windows Vista RTM as well (again, at your own risk. You need to use CD installation and the computer is nearly unusable for productive use after it installs). Depending on your board, the max amount of RAM possible might be limited (on Pentium boards you might be maxed at 128MB, but PCem v14 and older maxes at 256MB).

Now, to install our operating system. One thing to say is that the faster the processor is, the more CPU you would need. Don't set up anything in the triple digits if you don't have a 4.0GHz processor unless you're okay with dealing with lag. From what I tested, Windows 9x and 2000 and higher will usually use more CPU than anything below it.

When you press the new button you'll get this window in PCem:
Image

86Box is different but has similar settings:
Image

Do note that unlike VirtualBox or VMware, the virtual HDD images made by PCem and 86Box is fully allocated and can take a while for larger drives. They can support up to 127GB disk size (although I do not recommend sizes larger than 8GB). You should save these files as an .img format. Alongside, PCem and 86Box doesn't support DVD or 8-inch floppies. Also, when in 86Box, check to make sure your hard drive is in IDE bus and the CD-ROM is in the ATAPI bus with the HDD set to channel 0:0 and CD-ROM set to channel 0:1, or very likely the BIOS will not detect it.

What configuration you use is up to you, although do note of limitations of each OS and file system - for example don't try to install Windows 95 on a FAT32 drive.

2.1: Recommended Configs
I recommend the following configs for specific builds and versions (most major versions are listed). For most configs, a floppy drive and CD-ROM is also recommended. These aren't exactly what everyone recommends, are likely way above the minimum or even recommended requirements, and your settings will vary on your liking, although some configs don't play nicely with certain software if they aren't set properly:
  • MS-DOS 3.x: 8088 processor, 512KB memory, ~4MB hard drive
  • MS-DOS 6.x: 386 processor, 8MB memory, ~8MB hard drive
  • Windows 1.0 DR5 and Alpha: 8088 processor, 512KB memory, CGA or Hercules graphics card, no sound or network card, ~8MB hard drive, serial mouse
  • Windows 1.0: 8088 processor, 640KB memory, EGA graphics card, no sound or network card, ~8MB hard drive, serial mouse (VGA display and PS/2 mouse support is available in the IBM OEM of Windows 1.04)
  • Windows/386: 386 processor, 1MB memory, VGA graphics card, no sound or network card, ~8MB hard drive, PS/2 mouse (non-386 versions will likely only detect 640KB RAM max)
  • Windows 3.0: 386 processor, 8MB memory, VGA graphics card, no sound or network card, ~15MB hard drive, PS/2 mouse (Windows 3.0 can only detect 16MB RAM max)
  • Windows 3.0 MME/3.1/Chicago: 386 processor, 16MB memory, Trident TVGA8900D graphics card, Sound Blaster 1.0, NE2000 network card, ~100MB hard drive, PS/2 mouse
  • Windows 95: 486 processor, 64MB memory, S3 Trio32 graphics card, Sound Blaster 16, NE2000 network card, ~200MB hard drive, PS/2 mouse
  • Windows 98/ME: Pentium processor (166MHz), 128MB memory, S3 VIRGE graphics card, Sound Blaster 16, NE2000 network card, ~1GB hard drive, PS/2 mouse (not recommended on slower host CPUs due to slow emulation speed)
  • Windows NT 3.1 October 1991 beta/build 239: 386 processor, 32MB memory, VGA graphics card, no sound or network card, ~512MB hard drive, PS/2 mouse (SCSI must be used in 86Box if you want GUI setup)
  • Windows NT 3.1/3.5x: 486 processor, 64MB memory, Trident TVGA8900D graphics card, Sound Blaster 1.0, NE2000 network card, ~512MB hard drive, PS/2 mouse
  • Windows NT 4.0: Pentium processor, 128MB memory, S3 Trio32 graphics card, Sound Blaster 16, NE2000 network card, ~1GB hard drive, PS/2 mouse
  • Windows 2000: Pentium processor (166MHz), 128MB (or 256MB if possible) memory, S3 VIRGE graphics card, Sound Blaster 16, NE2000 network card, ~2GB hard drive, PS/2 mouse (not recommended on slower host CPUs due to slow emulation speed)
  • Windows XP/Longhorn: Pentium processor (300MHz), 128MB (or 256-512MB if possible) memory, S3 VIRGE graphics card, Sound Blaster 16, NE2000 network card, ~8GB hard drive, PS/2 mouse (not recommended due to long install time and slow CPU)
  • Windows Vista: AMD K6 processor, 512MB memory, S3 VIRGE graphics card, Soundblaster PCI 128, Realtek RTL8029AS network card, ~8GB hard drive, PS/2 mouse (not recommended due to long install time, requirement of CDs and vLite, and high system instability)
  • IBM OS/2 1.x: 386 processor, 16MB memory, VGA graphics card, ~300MB hard drive, serial mouse (may crash on faster CPUs up to version 1.30.1, CD not recommended, cannot detect more than 16MB RAM and more than 500MB disk space)
  • IBM OS/2 2.x and above: Pentium processor, 128MB memory, S3 VIRGE graphics card, Sound Blaster 16, NE2000 network card, ~500MB hard drive, PS/2 mouse
  • Apple Rhapsody Developer Releases: Pentium processor, 48MB memory, Diamond Stealth 3D 2000 graphics card, Sound Blaster 16, no network card, ~1GB hard drive, serial mouse
  • Ubuntu/Debian/Fedora: Pentium processor, 128MB memory, S3 VIRGE graphics card, Sound Blaster 16, NE2000 network card, ~8GB hard drive, PS/2 mouse (varies based on what version you use, earlier versions may need less RAM and disk space. Ubuntu and Fedora not recommended due to long install time and slow CPU)
---------
3: BIOS and installation
If you're just installing some final release version of Windows or OS/2 on a newer bios like a Pentium BIOS, chances are it might automatically detect your virtual HDD. In that case, all you have to do is maybe enter the BIOS to change the boot order if you need to boot to a CD, and that's it - just install your OS normally.

But when you're installing betas starting with Chicago build 216 and NT 5.0 build 1627.1, you'll need to change the BIOS date due to timebomb. Make sure your config doesn't allow time synchronization and then enter the BIOS and change the BIOS date as desired. While some BIOS won't go back certain years like 1994, the minimum date required to install Chicago 216 is 1994-10-27, and every board I tested are able to be set to that time.

After that, just install each build as normal. Some builds will require quirks that needs to be worked around (use TheCollectionBook or BetaWiki for help and BIOS dates), and most builds will require you to have a boot disk ready that can partition and format a drive. I recommend using a Windows 95 bootdisk for most betas before Millennium or Whistler, you can use a Windows 98SE bootdisk for later builds (you can use it on earlier builds too if you know what you're doing, i.e. know when to use FAT16 and when to use FAT32). Windows 95 (unless OSR2. Memphis betas also support FAT32) and NT 4.0 (most NT 5.0 betas do not support FAT32) or below will not install on FAT32 partitions!

After installation, your build should happily boot to the desktop. Congratulations! You may now install additional software and set up drivers as needed.
---------
4: FAQ and Troubleshooting
Q: Should I get PCem or 86Box?
A: It really depends on what you really need. If you need SCSI support, access to additional options, and better support for systems, 86Box is what plenty of people will use. PCem still has its perks, including ACPI support and a more simpler interface. PCem also comes with a Configuration Manager by default, although Overdoze created an 86Box Configuration Manager that can work for 86Box.

Q: I get "No ROMs detected!" when I start PCem/86Box.
A: Check to make sure you have some ROMs in the roms folder of the PCem/86Box install. Refer to the readme if you need help on where to place things.

Q: I get an error that I'm missing a DLL when I start 86Box.
A: Install the DirectX9 runtime, restart the computer, and try again.

Q: I'm confused; how exactly do you set up the config?
A: Personally, if you're new, you probably should only touch the machine type, RAM, CPU, BIOS time, sound card, hard drive, and floppy/CD settings for now. Eventually, you'll learn to setup the network and other goodies to maximize your experience. Some options may require additional drivers in the VM.

Q: When I change the BIOS date, it keeps reverting back after a while.
A: Disable "Synchronize time to host clock" on PCem or set "Time synchronization" to Disabled on 86Box in your config and try again.
Image

Q: PCem or 86Box doesn't detect floppies.
A: Make sure you have appropriately set the floppy size and format in the config and configured the BIOS to abide by that configuration.

Q: 86Box doesn't detect the hard drive/CD-ROM drive.
A: Make sure the hard drive is in the IDE bus and the CD-ROM drive is enabled to the ATAPI bus. The HDD should be on channel 0:0 and the CD-ROM should be on channel 0:1. Earlier boards may also need a hard disk controller to detect a hard disk.
Image
Image

Q: How do I uncapture the mouse?
A: On PCem press Ctrl+End, on 86Box press F8+F12. You may need to use the FN key on some laptops to press F8+F12 properly.

Q: The VM runs very slowly. Is there any way to speed it up?
A: Chances are you probably set it on a faster processor that your host computer might not be capable of running at full speed. Most triple digit Pentium speeds should run optimally on 4.0GHz host processors. If your host processor is slower than 4.0GHz, setting to a speed in the double digits might help you. Enabling Dynamic Recompiler when available could also help. Also even though the VM is running slowly, it's still processing, so if you have the time you can be patient and let the VM run.

Q: Sometimes when I load this floppy or boot to this CD, PCem/86Box crashes.
A: PCem and 86Box are prone to problems when running certain software, and not all software might work. Most often, when PCem crashes, it will place a pcem.log file in the PCem directory which has the reason why the emulator crashed. Most often when you're installing Windows builds, the error will be "Device failed to request command".

Q: On PCem, I get an error when I try to fdisk on OS/2.
A: It is a known bug in PCem because PCem doesn't emulate an IDE instruction that OS/2 requires to format the drive. Use 86Box to get past the fdisk.

Q: What network card should I use?
A: If you're new, you can set up the SLiRP network and select the emulated network card. Install the network card in the VM and it will start working for you.

Q: My disk can't be partitioned larger than ~504MB.
A: Some BIOS boards tends to have this problem due to having no geometry translation support. Try a different BIOS.

Q: I have another question that's not on here.
A: Feel free to post your question on this thread if you need help.
---------
This guide should help enable you to install builds on PCem and 86Box, and eventually, you'll notice notable better stability and driver support when installing builds onto PCem or 86Box! I recommend that if a Windows 9x build doesn't work well on VirtualBox or VMware, you use 86Box or PCem. Thanks for reading!
Image

BetaWiki contributor.

TheCollector1988
User avatar
Donator
Posts: 3604
Joined: Wed Feb 23, 2011 12:11 am
Location: Italy
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by TheCollector1988 »

For the ATAPI one, it's usually on 1:0 (Secondary Master).

Darkstar
User avatar
Donator
Posts: 1212
Joined: Fri May 14, 2010 1:29 pm
Location: Southern Germany

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Darkstar »

I'm curious about how you came up with the "configs" that you use. I would suggest something more realistic for most configs...
I upload stuff to archive.org from time to time. See here for everything that doesn't fit BA

Battler
User avatar
Donator
Posts: 2117
Joined: Sat Aug 19, 2006 8:13 am
Location: Slovenia, Central Europe.
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Battler »

A small correction: while PCem indeed does not support DVD's, 86Box does (it's not really 100% perfect but it's good enough normal data DVD usage).

Edit: Single-thread performance (IPC) matters as well, so for example 3.2 GHZ on a Gainestown (Nehalem-era) Xeon will perform worse than 3.2 GHz on a Haswell i5, for example.
Main developer of the 86Box emulator.
Join the 86Box Discord server, a nice community for true enthusiasts and 86Box supports!

The anime channel is on the Ring of Lightning Discord server.

Check out our SoftHistory Forum for quality discussion about older software.

MCpillager12
User avatar
Posts: 362
Joined: Wed Apr 17, 2019 12:44 pm

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by MCpillager12 »

PCem works perfectly fine on XP x64 and Vista x64, and so does 86box.
PCem/86Box works fine on win2k but ignores keyboard input.
Also I have 2 computers with only Pentiums clocked at 2,30GHz and 2,60GHz and 300MHz emulation is pretty fast.

And here are the ROMs for PCem: https://github.com/BaRRaKudaRain/PCem-ROMs

Overdoze
User avatar
Posts: 1762
Joined: Mon Feb 24, 2014 10:28 am
Location: Slovenia

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Overdoze »

Nice guide, I'm in the process of preparing something similar for the official 86Box website. Just a correction though, unlike PCem, 86Box will not run on Linux natively (a port is planned eventually, though), only through Wine.

You may also want to change the "serial mouse" for Windows 1.0 DR5 to "Microsoft serial mouse", since that's the only kind of serial mouse it supports (there's also Logitech and Mouse Systems serial mice that it doesn't support). The Alpha system requirements suggest it can work with a mouse.sys-compatible DOS driver as well, so other mice may or may not work (this would need to be tested).
All roads lead to Neptune™

KRNL386 - my site about retro computing | My site about Windows 1.0 | My blog | 86Box Manager | LeakDB - list of PC OS warez leaks

TheCollector1988
User avatar
Donator
Posts: 3604
Joined: Wed Feb 23, 2011 12:11 am
Location: Italy
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by TheCollector1988 »

Overdoze wrote:Nice guide, I'm in the process of preparing something similar for the official 86Box website. Just a correction though, unlike PCem, 86Box will not run on Linux natively (a port is planned eventually, though), only through Wine.

You may also want to change the "serial mouse" for Windows 1.0 DR5 to "Microsoft serial mouse", since that's the only kind of serial mouse it supports (there's also Logitech and Mouse Systems serial mice that it doesn't support). The Alpha system requirements suggest it can work with a mouse.sys-compatible DOS driver as well, so other mice may or may not work (this would need to be tested).
Logitech Bus Mouse works on Windows 1.00 DR5.

AlphaBeta
User avatar
Donator
Posts: 2439
Joined: Sun Aug 12, 2012 4:33 pm
Location: Czechia

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by AlphaBeta »

BF10 wrote:4. At least a 4.0 GHz processor if you plan on getting full performance on Pentium level BIOS. At about 2.0 GHz you can only get best performance on 486 level BIOS. You probably should get a better computer if you have anything slower than 2.0 GHz.
I actually wonder how you came up with these numbers - clock speed alone is hardly any representative of actual computation speed since at least Pentium II. The CPU core in both 86Box and PCem runs on a single thread, so instructions per cycle are a pretty important benchmark here as well. My Haswell i3 can handle a 100 MHz Pentium pretty well even though it's clocked at 3.6 GHz, and as Battler mentioned earlier, a Kaby Lake i3 clocked at the same speed would perform even better.
Last edited by AlphaBeta on Tue Aug 27, 2019 4:25 pm, edited 1 time in total.
AlphaBeta, stop brainwashing me immediately!

Image

Battler
User avatar
Donator
Posts: 2117
Joined: Sat Aug 19, 2006 8:13 am
Location: Slovenia, Central Europe.
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Battler »

- Overdoze: The Logitech serial mouse starts in Microsoft mode (and further ensures that made when doing the RTS toggle as well), so it should work fine with Windows 1.0 DR5's Microsoft serial mouse driver.
Main developer of the 86Box emulator.
Join the 86Box Discord server, a nice community for true enthusiasts and 86Box supports!

The anime channel is on the Ring of Lightning Discord server.

Check out our SoftHistory Forum for quality discussion about older software.

Overdoze
User avatar
Posts: 1762
Joined: Mon Feb 24, 2014 10:28 am
Location: Slovenia

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Overdoze »

Battler wrote:- Overdoze: The Logitech serial mouse starts in Microsoft mode (and further ensures that made when doing the RTS toggle as well), so it should work fine with Windows 1.0 DR5's Microsoft serial mouse driver.
Ah, I was unaware of that. Thanks for the correction.
All roads lead to Neptune™

KRNL386 - my site about retro computing | My site about Windows 1.0 | My blog | 86Box Manager | LeakDB - list of PC OS warez leaks

bitslasher
Posts: 3
Joined: Sat Dec 19, 2020 5:30 am

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by bitslasher »

This is a great write-up! Thanks for taking the time to create this.

Just one thing I noticed, I think the Windows Vista specs are waaay low especially for CPU and RAM. 512MB is too low. Vista needs at least 2GB. Vista is more memory intensive than Windows 7 was, due to inefficiencies of Aero in Vista that were addressed in 7.

win.exe
Posts: 2
Joined: Fri Jul 31, 2020 5:13 am

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by win.exe »

bitslasher wrote:
Fri Jan 22, 2021 10:02 am
This is a great write-up! Thanks for taking the time to create this.

Just one thing I noticed, I think the Windows Vista specs are waaay low especially for CPU and RAM. 512MB is too low. Vista needs at least 2GB. Vista is more memory intensive than Windows 7 was, due to inefficiencies of Aero in Vista that were addressed in 7.
The maximum amount of memory that PCem can support is 512MB.

Joet BERNARD
User avatar
Posts: 288
Joined: Wed Nov 25, 2020 7:27 pm
Location: Tours, France
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Joet BERNARD »

The last versions of PCem can't access to more ram ??
86box can access to 768 MB (with Celeron for instance) and probably more (I haven't test all the features
French only
Home of Signé JARB
My hardware collection not totally up to date...
My NEW Discord server

WarpedMarioBros
Posts: 2
Joined: Wed Sep 15, 2021 1:20 am

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by WarpedMarioBros »

Every time I try to run Windows NT 3.1 on my PCem, it keeps saying "This version of Setup requires a CD-ROM drive connected to a SCSI adapter recognized by Windows NT." If it helps, here's the link to the Windows NT 3.1 build I use: https://winworldpc.com/download/416e2fc ... e284a2c3a5

Joet BERNARD
User avatar
Posts: 288
Joined: Wed Nov 25, 2020 7:27 pm
Location: Tours, France
Contact:

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by Joet BERNARD »

Try with SCSI card.
Or use floppy version, or IDE driver from here
http://www.win3x.org/win3board/viewtopi ... 6&style=30
Note, you need to use the Aztech IDE driver and the patched files to support ISO less than 150 MB (I don't know why, but original Aztech driver don't work with ISO less than 150 MB :? )

BTW, what's the host and guest configs ?
French only
Home of Signé JARB
My hardware collection not totally up to date...
My NEW Discord server

WarpedMarioBros
Posts: 2
Joined: Wed Sep 15, 2021 1:20 am

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by WarpedMarioBros »

How do I use the IDE driver for the PCem?

ahmed yasser
Posts: 4
Joined: Fri Sep 17, 2021 9:04 pm

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by ahmed yasser »

the link for the pcem roms is here

https://github.com/BaRRaKudaRain/PCem-ROMs

ahmed yasser
Posts: 4
Joined: Fri Sep 17, 2021 9:04 pm

Re: [GUIDE] The Starter's Guide to PCem and 86Box

Post by ahmed yasser »

also the link to the 86box roms is here:

https://github.com/86Box/roms

Post Reply