86Box Build: Amstrad PC1640 HD20

by Pete
Published: Updated: 10 minutes read

In the ever-advancing tech landscape, there exists a passionate community committed to preserving digital treasures from the past. The Amstrad PC1640 is one such relic, harkening back to the 1980s when computing was a simpler affair, marked by monochrome screens and sturdy, tactile keyboards. In fact, for many, including myself, the Amstrad PC1640 was their first computer to feature vivid color graphics, opening the door to a world of visual computing.

But how can we access this nostalgic era today, especially when the original hardware has faded into history? Enter 86Box, the emulator that takes us on a journey back in time. In this article, we embark on the adventure of recreating the Amstrad PC1640 experience by constructing a virtual machine with an HD20 hard drive, all through the magic of the 86Box emulator.

To join us on this step-by-step adventure, you’ll need to prepare a few prerequisites, along with a dash of patience. This endeavor requires a working knowledge of emulation and a fondness for vintage computing. Ensure a reliable internet connection for downloading essential resources. You’ll also need the 86Box emulator, your time portal to the past (download it here). Moreover, acquire an Amstrad PC1640 BIOS ROM and the Amstrad PC1640 HD20 hard disk image.

In this guide, we’ll walk you through each step of creating your virtual Amstrad PC1640 and equipping it with an HD20 hard drive. Let’s embark on this nostalgic journey, back to an era where technology was simpler but no less enchanting.

The Nostalgic Journey Begins

Before embarking on this exciting journey, let’s ensure you have everything in place:

Prerequisites

  • A working knowledge of emulation and vintage computing – in particular DOS.
  • 86Box emulator (you can download it here).
  • A little patience – the reward is worth the effort.
  • Make you read my article The interesting case of low-level emulators to understand what 86Box brings to the game.

Building Your Virtual Amstrad PC1640

Let’s get into it!

1
Installing 86Box

If you haven’t already, download and install the 86Box emulator on your computer. It’s your time machine to the past! I’m using the AppImage version for Linux (of course!) and using the 86Box Manager frontend for Linux as well.

2
Virtual PC Configuration and Setup

86Box_1640_config_Screenshot_20231013_131810

In a nutshell, my ‘virtual’ PC1640 looks consists of these components that are as period accurate as possible:

  • NEC V30 Processor @ 10Mhz (Note: the original machine came with an 8086 @ 8Mhz and the original V30 clocked in also at 8Mhz so I’m taking some liberties with 86Box! :) )
  • 640KB memory (locked) as that the option with the PC1640
  • Internal EGA controller
  • Microsoft Serial Mouse (Wheel) on COM1
  • No sound or network
  • IBM PC Fixed Disk Adapter (MFM) as there wasn’t an “internal” controller available
  • MFM configured 20MB HDD (612, 4, 17 configuration)
  • 5.25″ 360k floppy disk
  • Everex EV-159 RAM 3000 Deluxe ISA memory card (adding 64KB UMB – and yes it works on an 8086!!)
  • DR-DOS 6.0 because I ran this back in the day and was solid (and more feature rich that MS’ offerings at the time). Feel free to use FreeDOS or MS-DOS.

3
Amstrad 1640 Notes

  • Original Amstrad System Disks are available from dosdays.co.uk
  • You’ll need the nvr.exe program off the system disks to configure any BIOS settings, or download directly from the link
  • I could only get one 20MB hard drive to work – apparently the machine supports 30MB and 40MB variants according to dosdays.co.uk, however I couldn’t get anything larger than 20MB working. Could be a BIOS or an 86Box thing. Not sure.
  • 8086 machines don’t support EMS memory, however you can use memory cards that can present a small amount of additional RAM in the UMB range as 8086’s can only address up to 1MB of RAM.
  • Back in the day, I ran SuperStor to compress my HDD to gain more than 20MB. Was good (better than Stacker, DoubleSpace IMO), but ate into my precious conventional memory.
  • I never had an Everex EV-159 memory expansion card when I owned my 1640, so I had to micro-manage the 640KB conventional memory to the KB. Adding a little bit of RAM here was amusing!
  • I personally never owned an NEC v30, only the stock 8086 nor did I own a math co-processor either but it’s fun to add them in and test!

4
Amstrad PC1640 with NEC V30 Bootup

Notice the UMB available space? That’s thanks to the Everex EV-159 RAM card. See below for my DR-DOS configuration.

5
Amstrad PC1640 with NEC V30 Benchmark

What’s interesting that the V30 speed is being incorrectly reported by CheckIt. The 8086 did return a more accurate speed of ~7.56Mhz. The results are the same of the V30 reporting a faster speed than the stock 8086.

6
Amstrad PC1640 with NEC V30 + 8087 Math Co-Processor Benchmark

Configuring an 8086 to use UMB with DR-DOS 6.0

The idea is pretty simple: use as much of the free memory segments in the Upper Memory Block area with an expansion card that is able to use that space.

As the PC1640 came with an EGA screen, there are some UMB areas reserved for EGA ROM and other systems that cannot be moved without special drivers.

Using the Everex EV-159 3000 Deluxe card, I can allocate some of the free space in UMB for DOS and some other TSR’s to allow games to run (like Keen4 that need a bigger chunk of conventional memory).

config.sys

DEVICE=C:\APPS\EV159\EMM.SYS 258,00
DEVICE=C:\DRDOS\HIDOS.SYS /CHIPSET=EMSALL /BDOS=AUTO
SHELL=C:\COMMAND.COM C:\ /P /E:256

The EV159 driver (EMM.SYS) is specifically for the Everex card and must be loaded first.

HIDOS.SYS in DR-DRDOS 6.0 allows us to push dos into UMB and allow us to use the EMS memory from the Everex card to do so.

autoexec.bat

@ECHO OFF
PATH C:\DRDOS;C:\XTG;C:\BATCH
PROMPT $P$G
SET TEMP=C:\TEMP
MEM

In Conclusion

As we wrap up our journey into the world of vintage computing, it’s time to reflect on the remarkable experience of building the Amstrad PC1640 with an HD20 hard drive using the 86Box emulator. For many of us, this iconic machine was our inaugural gateway into the world of vivid color graphics and digital exploration.

Recreating this experience in the virtual realm not only rekindles nostalgia but also pays homage to the bygone era of computing where the journey was as captivating as the destination.

So, go ahead, power up your virtual Amstrad PC1640, and let the memories come flooding back. Explore classic software, play timeless games, and immerse yourself in the golden age of computing. Your journey into the past has only just begun, and the possibilities are boundless.