I've worked on legacy DOS systems, and virtualising them is generally the right approach. You can use just about any modern hardware, and the VM will nicely abstract it away. Plumbing hardware through to the VM can be a challenge, but not impossible to overcome.