Legacy support in modern computers

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
azblue
Member
Member
Posts: 147
Joined: Sat Feb 27, 2010 8:55 pm

Legacy support in modern computers

Post by azblue »

From what I understand, things like the PIT and PIC are no longer with us, but are usually emulated in modern BIOSes/chipsets, etc, so legacy OSes and software can still work correctly.

I like having good legacy support (I have DOS installed on a partition on my main computer and run other old programs). I'm going to be buying a new computer soon, and I was curious if anyone is aware of any motherboards that have been dropping legacy support that I should avoid, or can I be sure that anything omitted is at least emulated?

In short, is legacy support still universal, or are there pitfalls?
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Legacy support in modern computers

Post by Combuster »

IIRC All x86 macintoshes lack legacy support entirely, so don't get one of those. Saves you quite a bit of money as well.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
bluemoon
Member
Member
Posts: 1761
Joined: Wed Dec 01, 2010 3:41 am
Location: Hong Kong

Re: Legacy support in modern computers

Post by bluemoon »

Run legacy OS within emulators. For instance, DOSBOX can run almost everything in the era including VESA drivers and DPMI support.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Legacy support in modern computers

Post by Brendan »

Hi,
azblue wrote:In short, is legacy support still universal, or are there pitfalls?
Unfortunately; "white box" hardware manufacturers (excluding Apple machines) only really care about Windows. More specifically, they care about the versions of Windows that large companies use (and more recent versions of Windows). Microsoft started supporting UEFI on 80x86 with Vista service pack 1 in 2008.

Currently there's still too many companies still using Windows XP (which doesn't support UEFI). When enough of these companies have upgraded to any newer version of Windows, hardware manufacturers can stop caring about legacy/BIOS compatibility.

My guess is that "legacy free" systems will start being common in the next few years (and once it starts it'll be an avalanche, as there's only a few firmware manufacturers).

Of course this prediction doesn't include Apple (already UEFI) or embedded systems like tablets, smartphones, etc (which are likely to all be "legacy free" when Windows 8 is released next month if they're not already).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Legacy support in modern computers

Post by Owen »

x86 Macs have pretty much all the legacy hardware other than the keyboard controller (whether it does anything useful or not is another matter - but then again, when was the last time you saw a COM port on a machine?)

Windows XP doesn't require the keyboard controller, so machines without one are now viable. As I've reported many times before here, prodding where the keyboard controller would be generally does Very Bad Things (TM) to the machine.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Legacy support in modern computers

Post by Brendan »

Hi,
Owen wrote:x86 Macs have pretty much all the legacy hardware other than the keyboard controller (whether it does anything useful or not is another matter - but then again, when was the last time you saw a COM port on a machine?)

Windows XP doesn't require the keyboard controller, so machines without one are now viable. As I've reported many times before here, prodding where the keyboard controller would be generally does Very Bad Things (TM) to the machine.
To cut costs, x86 Macs use mostly the same "off the shelf" hardware that generic x86 boxes use. It's only really the firmware that is actually different. For this reason x86 Macs share the same fate as generic x86.

Here's a summary of legacy devices (now, and the effect UEFI will eventually have):
  • Keyboard controller - already optional. Lots of new hardware doesn't have one, and it's emulated via. SMM and USB devices. This emulation isn't needed on UEFI.
    Floppy controllers - very optional and missing from a lot of new hardware
    Serial and parallel controllers - also optional (replaced by USB)
    PIT - optional. Not too sure how many computers actually have a PIT and how many emulate it using SMM/HPET. For those that emulate, the PIT emulation isn't needed for UEFI.
    RTC/CMOS - still mostly here (HPET can replace the periodic IRQ, but not the time/date or CMOS). This is probably the only legacy hardware that I can't imagine disappearing.
    PIC - still here, but only for BIOS emulation. Can be removed once BIOS emulation isn't necessary (use IO APIC instead).
    ISA DMA - still here, but I can't really see why if the hardware that uses it (floppy controller, serial/parallel) isn't present.
    IDE/ATA disk controllers - already gone. Replaced by SATA and AHCI (with ATA emulation in hardware that isn't needed once BIOS emulation is gone).
    VGA - still here, but I can't see why it'd be necessary once BIOS emulation is gone
That covers everything I can think of... ;)


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Legacy support in modern computers

Post by Owen »

Brendan wrote:Keyboard controller - already optional. Lots of new hardware doesn't have one, and it's emulated via. SMM and USB devices. This emulation isn't needed on UEFI.
And lots of hardware doesn't have one, and uses the keyboard controller I/O ports to talk to the embedded controller (Hey, it's already built into the chipset!). If ACPI says there is no keyboard controller, there is no keyboard controller, and ignore that at your peril
Brendan wrote: Floppy controllers - very optional and missing from a lot of new hardware
Serial and parallel controllers - also optional (replaced by USB)
Are these actually gone, or is it more a matter of "they exist but have nothing connected to them"? I know, they both pretty much amount to the same :P
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Legacy support in modern computers

Post by Combuster »

There's not much of a problem when something is just missing, it becomes a problem when there's something else responding to the same addresses.

COM ports have traditionally been varied already, typically in number, so you can expect at least COM3/4 to be randomly missing on any hardware from now to 20 years ago. And with lesser probabilites, the same could be said of the remaining serial and parallel ports. There's still the proper way of using the BDA to go looking for them, which means having none is still legacy-compliant.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
bluemoon
Member
Member
Posts: 1761
Joined: Wed Dec 01, 2010 3:41 am
Location: Hong Kong

Re: Legacy support in modern computers

Post by bluemoon »

How can we missed the PC Speaker? (Although mac do come with internal speaker, I guess it's not implemented as "PC Speaker")
rdos
Member
Member
Posts: 3271
Joined: Wed Oct 01, 2008 1:55 pm

Re: Legacy support in modern computers

Post by rdos »

Brendan wrote:Floppy controllers - very optional and missing from a lot of new hardware
That has more to do with floppies being obsolete rather than being an legacy issue.
Brendan wrote: Serial and parallel controllers - also optional (replaced by USB)
Wrong. There is no USB-to-serial converter that has the same stability as the real serial port + many PCs for unattended environments still have 2 or 4 serial ports.
Brendan wrote: PIT - optional. Not too sure how many computers actually have a PIT and how many emulate it using SMM/HPET. For those that emulate, the PIT emulation isn't needed for UEFI.
Software emulation doesn't cost hardware developpers anything and thus is not likely to disappear. A more likely scenario is that the emulations will become more and more broken to a point where they become meaningless. This is what we see with VBE.
Brendan wrote: IDE/ATA disk controllers - already gone. Replaced by SATA and AHCI (with ATA emulation in hardware that isn't needed once BIOS emulation is gone).
Not likely either. In my experience, many AHCI implementations are severely broken and error-prone. For instance, the CQ57 machine that I bought a few years ago, had the BIOS setup for AHCI. When I bought a new machine, it was setup for IDE. Both run Windows 7.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Legacy support in modern computers

Post by Brendan »

Hi,
rdos wrote:
Brendan wrote:Floppy controllers - very optional and missing from a lot of new hardware
That has more to do with floppies being obsolete rather than being an legacy issue.
Brendan wrote: Serial and parallel controllers - also optional (replaced by USB)
Wrong. There is no USB-to-serial converter that has the same stability as the real serial port + many PCs for unattended environments still have 2 or 4 serial ports.
So you're saying that many (not all) PCs for unattended environments (which doesn't include normal PCs) still have serial ports?

Find me a laptop made this year that has a serial port. It should be very easy to find one if serial ports aren't optional.
rdos wrote:
Brendan wrote:PIT - optional. Not too sure how many computers actually have a PIT and how many emulate it using SMM/HPET. For those that emulate, the PIT emulation isn't needed for UEFI.
Software emulation doesn't cost hardware developpers anything and thus is not likely to disappear. A more likely scenario is that the emulations will become more and more broken to a point where they become meaningless. This is what we see with VBE.
So you're saying that a hardware manufacturer wouldn't need to pay for a programmer to implement support for the PIT emulation that nobody will ever want or use for UEFI?
rdos wrote:
Brendan wrote:IDE/ATA disk controllers - already gone. Replaced by SATA and AHCI (with ATA emulation in hardware that isn't needed once BIOS emulation is gone).
Not likely either. In my experience, many AHCI implementations are severely broken and error-prone. For instance, the CQ57 machine that I bought a few years ago, had the BIOS setup for AHCI. When I bought a new machine, it was setup for IDE. Both run Windows 7.
In your experience there were many AHCI implementations (broken or otherwise); and this is proof that AHCI doesn't exist in hardware?


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
rdos
Member
Member
Posts: 3271
Joined: Wed Oct 01, 2008 1:55 pm

Re: Legacy support in modern computers

Post by rdos »

Brendan wrote:Find me a laptop made this year that has a serial port. It should be very easy to find one if serial ports aren't optional.
Laptops are not used in unattended systems. Laptops are for typical "desktop" uses.
Brendan wrote:So you're saying that a hardware manufacturer wouldn't need to pay for a programmer to implement support for the PIT emulation that nobody will ever want or use for UEFI?
No, because those things are already part of the BIOS they purchase. UEFI or not.
Brendan wrote:In your experience there were many AHCI implementations (broken or otherwise); and this is proof that AHCI doesn't exist in hardware?
In my experience, SATA discs operated in IDE mode work far better than SATA discs operated with AHCI. Obviously, this also is the case when used with Windows 7, otherwise Compaq would not have changed from AHCI to IDE on their CQ57 laptop.
User avatar
Owen
Member
Member
Posts: 1700
Joined: Fri Jun 13, 2008 3:21 pm
Location: Cambridge, United Kingdom
Contact:

Re: Legacy support in modern computers

Post by Owen »

rdos wrote:
Brendan wrote:Find me a laptop made this year that has a serial port. It should be very easy to find one if serial ports aren't optional.
Laptops are not used in unattended systems. Laptops are for typical "desktop" uses.
Doesn't mean they aren't disappearing from common hardware
rdos wrote:
Brendan wrote:So you're saying that a hardware manufacturer wouldn't need to pay for a programmer to implement support for the PIT emulation that nobody will ever want or use for UEFI?
No, because those things are already part of the BIOS they purchase. UEFI or not.
The PIT emulation is a part of the BIOS emulation module that they purchase separately
rdos wrote:
Brendan wrote:In your experience there were many AHCI implementations (broken or otherwise); and this is proof that AHCI doesn't exist in hardware?
In my experience, SATA discs operated in IDE mode work far better than SATA discs operated with AHCI. Obviously, this also is the case when used with Windows 7, otherwise Compaq would not have changed from AHCI to IDE on their CQ57 laptop.
Because IDE is the default provided by most BIOSes, because most motherboard manufacturers don't want to field support calls from people trying to run Windows XP?

No doubt HP factored this into their decision to use IDE (i.e. the performance difference is 2%, the hard drive isn't hot plugable, and some people will install Windows XP on it and get very confused if we enable AHCI by default)
rdos
Member
Member
Posts: 3271
Joined: Wed Oct 01, 2008 1:55 pm

Re: Legacy support in modern computers

Post by rdos »

Owen wrote:No doubt HP factored this into their decision to use IDE (i.e. the performance difference is 2%, the hard drive isn't hot plugable, and some people will install Windows XP on it and get very confused if we enable AHCI by default)
Might be except for the fact that their BIOS is of the UEFI-type, and doesn't contain any setting for IDE/AHCI (its hidden in some way). In addition to that, their laptop comes with Windows 7 preinstalled, and they have used all 4 primary partitions on it so it is impossible to install something else without "killing" their preinstalled software. Therefore, I doubt few people will install XP or Linux on them.
User avatar
JackScott
Member
Member
Posts: 1031
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Contact:

Re: Legacy support in modern computers

Post by JackScott »

Brendan wrote:Find me a laptop made this year that has a serial port.
My own laptop, an ASUS B33E, has one in its docking station. Your point still stands though, I'd be fairly confident that it's implemented via USB (that said, I haven't checked).
Post Reply