Hot answers tagged

35

The BIOS originated as part of the CP/M operating system. It was the "layer" that interfaced directly with the hardware and as such, was usually machine specific. The idea is that, if you separate out the hardware interactions into one module and provide a standardised interface that the rest of the OS uses (and user programs), then the only thing ...


29

Different terminals didn’t (and don’t) use different kernel-level drivers. In Unix-style systems, the kernel does provide some terminal-related features, called line disciplines and the TTY layer which you mention; there is typically at least a raw line discipline (which doesn’t perform any translation), and a cooked line discipline (which provides more-or-...


25

It was a DOS-Windows 3.x and DOS-Windows 9x/ME thing. It was a driver named speaker.drv, written by Microsoft. It turned off interrupts for significant periods of time, which caused I/O problems with other devices but which was inherent in the nature of the hardware. It came in a self-extracting archive named speak.exe, and could be found on the companion ...


25

By their contents. When Windows boots, the I/O Supervisor VxD (IOS) uses BIOS interrupt 0x13 services to read sector 0 (the Master Boot Record) of each drive. It then looks at two bytes at offset 0x0DA. If they are zeroes, IOS checks the following four bytes: if they are also zeroes (like in the standard MBR code written by Microsoft’s FDISK), IOS overwrites ...


24

Summary: Real ISA Sound Blaster cards don't need any drivers to initialise or support them. Later PNP Sound Blasters (SB16/AWE) and clones may need a driver that performs one-time initialisation. Exotic cards may need memory-resident translation layers. Games use a collection of per-card drivers to talk to the appropriate hardware interface of the sound ...


16

they save every program from needing its own separate encyclopedic knowledge of every printer on the market. But then came PostScript, the theory behind which was that you would prepare a printable file in a standard format For one, Postscript isn't a standard format printable file, but a standard format document description. It may (and does) contain many ...


16

CP/M was hardware independent - there was no notion of a reference machine (as the IBM PC was for MS-DOS), so CP/M could not provide drivers. The hardware producer had to develop the drivers and deliver them with CP/M, and the driver package was simply called BIOS ("Basic Input/Output System"). This worked quite well over the lifetime of CP/M. MS-DOS ...


16

Most PCI soundcards do not have hardware support for games and other applications that expect a SoundBlaster or AdLib to be present. Older cards made a special effort to provide what's known as "register level compatibility", so they could be used with a wide range of existing games. By the time PCI arrived, Windows had become the PC operating ...


12

The simple answer is that they just didn't need them! Why reinvent the wheel, when the required interface is already provided by the ROM BIOS? This allows the operating system to be more portable and to support a wider variety of machines and hardware from different vendors, because the vendor provides and is responsible for the ROM BIOS routines. Size of ...


12

Like most busses of its time, you had to write your own software to communicate between the cards. The term device driver wasn't widespread at the time, but that is what you were writing. The S-100 bus (IEEE696), with its standard 100-pin socket could support a number of different cards. While it was common to have a processor card, memory card and ...


12

Cost There are significant licensing costs and equipment costs. I'm sure PostScript needs quite a bit more RAM & processing than some of the lower levels of PCL and similar printer languages. As I noted in my answer on trackballs and elsewhere, even a small increase in cost can have a big impact on sales and/or profitability, particularly at the low end ...


12

It seems unlikely that a fully-functional VBE driver for Windows 3.x exists. Microsoft started bundling a VBE driver with the operating system only as late as with Windows XP, by which time the Windows 3.x (and 9x) driver architecture was long obsolete. According to a post on OS/2 Museum, the display driver architecture of Windows 3.x was pretty baroque: the ...


12

To my knowledge, no such driver has ever been written. Since the very earliest versions, Linux has been a pure 32-bit protected-mode kernel that drove most devices (including disk controllers) directly, without going through the BIOS. The kernel has never had any facility to invoke 16-bit code from kernel mode during normal operation (after early boot); even ...


11

PostScript was quite demanding. In the early days a PostScript printer might well be the most powerful computer in the building, hence expensive. University students ran jobs on the printer to get done faster. In a world where price is important, this was most likely the primary reason. Look at the cheapest printers available and check if they run ...


10

This was not done by a “driver” at the OS level as you are thinking of it. In Unix, there were drivers that dealt with the RS232 interface and these were surfaced as /dev/tty* devices and dealt with things like speed, echo, etc. As for escape sequences controlling the display of the terminal, that is not done at the “driver” level as you are thinking of it....


10

The Windows 95 installation happens in two phases. Assuming you are installing from scratch the first phase runs under a stripped down version of Windows 3.x which runs under the DOS environment you (or the autoexec.bat on your boot media) launched the installer from. The system then reboots and the second phase runs under the newly installed Windows 95 ...


10

"It depends". I'm answering this in the context of DEC timesharing systems, since that's the natural habitat of a DEC VT100. There's a hardware device such as a DZ11 terminal multiplexer (8 lines) that controls terminal lines by some physical protocol, such as RS232 or 20mA current loop. The physical protocol is a matter for the hardware. But the OS needs ...


10

Trying to get more into the specifics of the BBC connection, there is a substantial hint in the user guide: However only 5 bits of the [user] port, and CB1, CB2 are used: This leaves bits 1,3 and 4 available for other uses. Which is backed up by the schematic provided by Simon Inns in the doco for SmallyMouse2; comparing that to the user port's pinout ...


10

It wasn't anything to do with drive letters, or the Windows NT disc signature in the MBR. DOS-Windows 9x, in particular the infamous wdctrl virtual device driver (often known colloquially and misleadingly as "32-bit disk access"), after determining that it was reasonable for it to supplant the real-mode firmware in the first place, issued three INT 13h ...


8

An important thing is that old-style expansion buses - that includes S100, als well as the PC ISA bus and various proprietary buses, had no enumeration capability - a computer system was not aware of what was installed in the slots unless it explicitedly tried using any of that hardware - and what I/O addresses it responded to. Neither could I/O resource ...


8

The simplest Unibus card is the G727 Grant Continuity Card, which does nothing except forward certain daisy-chained bus signals from one slot to the next. You can see a picture of one on the Wikipedia Unibus page. But a Grant Continuity Card is arguably not really a "device". I think the simplest device would be a 1-word ROM. Still pretty useless but at ...


7

To expand on @RicoPajarola's comment, this is almost definitely the software not properly handling files with long (or lowercase / etc.) filenames on a FAT filesystem. Originally, the FAT filesystem only supported filenames of up to 8 characters (+ up to 3 characters for the extension). Also - lowercase letters, spaces and unicode weren't supported. Later, ...


7

The typical way to provide "driver" services to other programs in DOS is to run a TSR (Terminate and Stay Resident) program installing a software interrupt vector such that running DOS programs could invoke this INT for services (see Ralph Brown's Interrupt List). In the sound context, however, programs would typically do the device I/O directly by ...


6

If you're using Linux, there is kernel support for the parallel ZIP disk, at least on Intel architectures; if you're willing to play with the dependencies, it might even be possible to compile the drivers on non-Intel architectures, but I make no guarantees! You'll need to enable the following drivers in Device Drivers: parport_pc (under Parallel port ...


6

Yet another factor that hasn't been mentioned is that ink jet printers have become far more common than laser printers, and have a critical ability that laser printers lack, which in turn propelled the use of PostScript: the ability to suspend and resume printing in the middle of a page. Normal printer drivers could print pages which were too complex to fit ...


6

Your best bet to rescue this data, in my opinion, will be to use the Linux operating system. It supports older hardware extremely well compared to most operating systems. If you know what you are doing, you can install Linux on a Windows system and select which operating system to use at boot, and there are also live DVDs (which can also be installed on ...


6

"Protection error" is primarily a memory management violation. A process executes with its own address space. Particular pages (range of virtual addresses) may or may not be assigned to the address space. The hardware triggers a fault on an attempt to reference an address not assigned to the address space. The OS then aborts the process, if this was a user-...


5

[I am assuming the question is limited to functionality built into the PC, not functionality added via installed cards etc. Obviously the BIOS couldn't provide routines for the latter, so drivers would have to be supplied] Having lived through the introduction of the original IBM PC, I have to say that in my opinion the submitter has the question backwards ...


Only top voted, non community-wiki answers of a minimum length are eligible