BUY THIS BOOK
Add to Cart

Print Book $24.95


Add to Cart

Print+PDF $32.44

Add to Cart

PDF $19.99

Safari Books Online

What is this?

Add to UK Cart

Print Book £17.50

What is this?

Looking to Reprint or License this content?


PC Hacks
PC Hacks 100 Industrial-Strength Tips & Tools By Jim Aspinwall
October 2004
Pages: 304

Cover | Table of Contents | Colophon


Table of Contents

Chapter 1: Basic System Board Hacks
With the exception of your PC's unhackable power supply, hacking your PC starts with the lowest level of detail within your system board—from how fast the clock is that makes the CPU tick to how the I/O bus is configured for your hard drives and peripherals. Hacking starts with the Basic Input/Output System (BIOS) setup program, which affects the CPU, memory, chipset, and peripherals.
While some PC users think in terms of exotic mice, expansive flat-panel LCD screens, and high download bandwidth speeds, there are myriad mysteriously-named parameters and features within the system BIOS. These parameters may control everything from CPU and memory clocking to I/O device configurations and system passwords. The right amount of parameter tweaking at the BIOS level can squeeze another few million-instructions-per-second (MIPS) or microseconds of faster video or hard drive performance out of the bones of your system.
Of course, like anything functional, the right bones or foundation elements have to be in place—in this case reliable and capable system components (CPU, chipset, and memory) and a BIOS, the essential innards of any PC, that can be tweaked. Tweaking or hacking a system board is done with software settings in the BIOS setup program, hardware jumpers, or dual-in-line-package (DIP) switches, so you must have the manual for your system board handy to be able to locate the correct jumpers and switches. I recommend you also have a small flashlight handy so you can see, as well as a pair of needle-nosed pliers to move jumpers around, and the right screwdriver to be able to get into your PC's case. Other than these tools, all you need is a steady hand and attention paid to the keystrokes needed to navigate your PC's setup program.
Before you hack the system board, CPU, BIOS, peripherals, or operating system, there are a few basic things I need to cover to get you out of any trouble you can get yourself into with the hacks in this and subsequent chapters. Hacking your system BIOS has potential dangers: one slipup and things can quit working. Fortunately there are some easy ways out of most mistakes made at this level of system hacking.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Introduction: Hacks #1-10
With the exception of your PC's unhackable power supply, hacking your PC starts with the lowest level of detail within your system board—from how fast the clock is that makes the CPU tick to how the I/O bus is configured for your hard drives and peripherals. Hacking starts with the Basic Input/Output System (BIOS) setup program, which affects the CPU, memory, chipset, and peripherals.
While some PC users think in terms of exotic mice, expansive flat-panel LCD screens, and high download bandwidth speeds, there are myriad mysteriously-named parameters and features within the system BIOS. These parameters may control everything from CPU and memory clocking to I/O device configurations and system passwords. The right amount of parameter tweaking at the BIOS level can squeeze another few million-instructions-per-second (MIPS) or microseconds of faster video or hard drive performance out of the bones of your system.
Of course, like anything functional, the right bones or foundation elements have to be in place—in this case reliable and capable system components (CPU, chipset, and memory) and a BIOS, the essential innards of any PC, that can be tweaked. Tweaking or hacking a system board is done with software settings in the BIOS setup program, hardware jumpers, or dual-in-line-package (DIP) switches, so you must have the manual for your system board handy to be able to locate the correct jumpers and switches. I recommend you also have a small flashlight handy so you can see, as well as a pair of needle-nosed pliers to move jumpers around, and the right screwdriver to be able to get into your PC's case. Other than these tools, all you need is a steady hand and attention paid to the keystrokes needed to navigate your PC's setup program.
Before you hack the system board, CPU, BIOS, peripherals, or operating system, there are a few basic things I need to cover to get you out of any trouble you can get yourself into with the hacks in this and subsequent chapters. Hacking your system BIOS has potential dangers: one slipup and things can quit working. Fortunately there are some easy ways out of most mistakes made at this level of system hacking.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Lock Others Out of Your Computer
Of course, the opposite of a password that keeps you out of your system is a password that keeps others out of your system. The BIOS in some PCs may provide no password protection at all, a single password that controls access to BIOS setup and allows the system to boot up, or two passwords—one for access to BIOS setup (a Setup or Supervisor password) and bootup, and the other to control access to booting up only (a User or Boot password). To set a password for your system, look in the setup menus for security settings, as shown in Figure 1-1.
Figure 1-1: BIOS and boot passwords can protect you from hackers
A User or Boot password keeps the system from booting up—a measure of intrusion and system hacking protection. A System or Supervisor password keeps lurkers out of your BIOS settings, and keeps them from changing the User/Boot password.
If you are going to set a User or Boot password, be sure you also set a Setup or Supervisor password so the BIOS settings and boot password cannot be changed and so someone cannot set a Supervisor password to keep you out of the system, requiring you to bypass the BIOS password [Hack #2]. Because there is a back door, the only way to prevent attackers from circumventing the password is to use a case that can be locked shut with a key or a locking cable.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Bypass the BIOS Password
Recover from a CMOS memory-affecting virus or work around a boot-time password by making BIOS forget all it once knew.
A PC goes through a process when it is first turned on: the Power-On Self-Test, or P.O.S.T. Some system boards provide security measures [Hack#1] that demand a password before beginning the P.O.S.T. process or allowing you into the BIOS setup program.
The original IBM-PC (1981) did not provide any security measures or a BIOS setup program; all it had was a P.O.S.T. If you needed to configure a PC, you did it with switches and jumpers. A program to set up the system BIOS and configuration did not come along until the IBM-PC/AT (1984), and it had to be run from a special boot-up diskette. The idea of providing a user interface and access to the system configuration settings within the BIOS did not come along until about 1986. Today no PC system is made without this valuable built-in setup feature. Eventually, the security feature of password-protecting access to the system came along.
If, after turning on your PC, you are prompted for a password instead of greeted with a fancy logo screen or the technical gibberish that suggests the system is getting ready to let you use it, then a security feature has been turned on that we call a " pre-boot password." Without the right password to get past this point, the system is basically dead in the water—game over, do not pass go and collect $200—unless or until you reset the BIOS setting. But how do you do that without getting past the password to the setup program?
This hack is also very effective for putting the system board back into "factory stupid" mode where it knows nothing about your system components and forgets all of your parameter tweaks. This is very useful if you've performed a hack that renders the system unbootable or unstable.
The goal is to get the system to forget that it needs a password and forget what the password was. The password data is stored with the rest of the system configuration data in a small amount of memory that is kept alive using a small battery or internal power cell. To clear out the data, you need to remove the power from this memory element. This means the system will also lose any system configuration that was saved. You'll need to later reconfigure the system parameters so you can boot your operating system.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Recover a BIOS That Won't Boot
Recover from hacking your BIOS into an unbootable state by starting from scratch with safe defaults for the BIOS settings.
The P.O.S.T. was designed to do many things, from taking inventory of the system components to testing them. Through years of PC development the P.O.S.T. has been modified to accommodate many new and special features of system boards, new CPUs and chipsets, a variety of disk drive types, myriad Plug and Play devices, and USB ports, as well as when the BIOS turns over control to which type of bootable device and operating system. Adding the ability to configure various settings has put the BIOS and P.O.S.T. at risk of tampering and corruption.
If your PC simply will not leave P.O.S.T. and start to boot up an operating system, or if it begins to boot up an operating system but you're getting "no operating system found" or memory errors, or the operating system locks up before you've had a chance to use it, chances are something is amiss in the BIOS settings. It's possible that your system BIOS has gotten really confused by an odd system or power glitch, configuration settings you changed such as overclocking or memory timings, or even a rare CMOS-attacking virus.
Your best bet under these circumstances is to reset the BIOS into a "safe" or default mode, one without special tweaks, adjustments, timing changes, and so forth. You have two choices to effect a default configuration of the BIOS. The first is to clear the BIOS configuration memory [Hack #2] so that things start up fresh with no unusual settings.
Access to the BIOS setup program varies widely between different BIOS vendors and system board makers. You may see a hint like "Press F2 to enter Setup" appear on your screen as the system runs through P.O.S.T., or the proper key combination may be hidden behind the PC maker's graphic logo at startup. Refer to your system's manual or to Table 1-1 for access to the most common BIOS setup programs.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Boot Faster
Some of the stuff your computer does at boot time is of no use. Disable those features to boot faster.
The system BIOS does a lot of work in the P.O.S.T. phase before it gets your system to the point where it reads boot-up information from a disk drive to load an operating system. Some of the things that happen in P.O.S.T. have nothing to do with system performance other than impeding the process of getting to the operating system to run your applications. Intel, AMD, AMI, Award/Phoenix, and the PC manufacturers were aware of this waste of time, evaluated the events involved, and in many cases took steps to reduce the number of items and the amount of time the startup process takes. To that end there are a handful of changes you can make in order to boot up faster:
Disable Extended Tests
Many systems offer the option of allowing an in-depth test of system memory and components (an extended test) or zipping through the system and getting to bootup as quickly as possible. With RAM as reliable and economical as it is (and having so much of it) and having Plug and Play operating systems like Windows and, to some extent, current versions of Linux, the Quick Test mode is more than adequate, and preferred for faster boot times. This parameter is shown in Figure 1-4 and specifies the depth, and thus the time involved, for testing system RAM and finding and checking the basic components of the system—COM and LPT ports and such.
Figure 1-4: Settings for the fastest P.O.S.T.
Configure Drive Detection
Most BIOSes provide the capability to automatically search for, identify, and configure different types of drives across four possible IDE and Serial ATA connections. This parameter setting usually shows up as AUTO in the IDE configuration choices. If you leave the parameter for all four possible IDE or Serial ATA devices set to AUTO, your BIOS will waste a lot of time searching for nonexistent devices. For faster boot times set the parameter to NONE as shown in Figure 1-5 for any unused interfaces and connections that have nothing attached to them.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Display a Boot-Time Graphic
Many computers will display a graphic at boot time. Make it one of your own.
Intel and most of the PC OEMs want to remind you who made the system, so they have built in a boot-time graphic as seen in Figure 1-6. Boot-time graphics are an alternative to the technical bits and bytes that have traditionally appeared on PC boot screens. Displaying the graphic takes extra time in order to load up the graphic image stored in the BIOS memory chip and configure the video to display graphics. As techies are interested in faster performance, product logos are not of much interest.
Figure 1-6: An Intel boot-time graphic hides the technical details of P.O.S.T.
If your system BIOS is stored in FLASH RAM (instead of a conventional old-style EPROM), it may be possible to load your own graphic into the BIOS chip. To perform this hack you need a BIOS that supports boot-time graphics and the appropriate software programs to make the changes and write them into your BIOS FLASH ROM chip. Most implementations of Award BIOS Versions 4.5 and up support boot-time graphics display. You will need a couple of software programs, as follows:
  • A graphics program to either create a new graphics file or convert an existing one to a 64048016-color uncompressed BMP graphic file for display at bootup (I didn't say it would or had to be an impressive graphic, just a graphic file)
  • The appropriate AWDFLASH.EXE program for your system board (from the manufacturer's web site)
  • A program to add the graphics file to your BIOS—either the CBROM program from http://www.stormpages.com/crazyape/cbrom.html or AwardMod through http://sourceforge.net/projects/awardmod/.
With these tools available, proceed through the following steps to use CBROM to modify your BIOS file:
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure Boot Device Order
Don't wait for the floppy disk or CD-ROM to time out before the system boots.
One advantage of modern BIOS and hardware capabilities is that they allow you to boot up from something other than a diskette or hard drive. BIOS can now fetch and run an operating system from an appropriately capable and configured LAN adapter or a bootable CD-ROM. You can tell the BIOS which devices it should try to boot up from, and in what order.
For a faster boot time you probably want your hard drive to be the first device in the list, as shown in Figure 1-8, ignoring the presence of diskettes or bootable CD-ROMs, although some BIOSes will detect the presence of a bootable CD-ROM and offer the option of booting off the CD regardless of the boot device order you set. Skipping the process of looking for a bootable diskette or CD-ROM by telling the BIOS to boot from the IDE hard drive first can shave anywhere from a few seconds to tens of seconds off your boot time.
Figure 1-8: Booting from your IDE hard drive first saves time
If you do choose to put the hard drive first in the boot order, you will not be able to boot up from a diskette or CD-ROM. You can come back to this parameter to change the boot device order to boot from a device other than the hard drive, as shown in Figure 1-9, when you need to run a diagnostic program, load a new image onto the hard drive using a program like Symantec's GHOST, or reinstall the operating system.
Figure 1-9: A typical first boot device configuration
If you want to boot from a drive connected to a USB port, you must have a BIOS that supports booting from USB ZIP, USB FDD, USB HDD, or alternate devices as one of the boot options.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Set Your Clock Back
Avoid or test date- and time-related features of your programs by setting the system clock back or ahead in the BIOS.
Setting the system date and time backwards or forwards is one way to see how a program behaves on different dates, ensure that a scheduled event runs, or make sure a program expires when it is supposed to.
This hack is most useful for testing purposes only. In normal use it is not practical to hold your system clock back or force it forward because scheduled events such as backups, virus scans and updates, file records, and data such as email arrival and send times will become very confused and may not function properly.
This hack will probably not let you bypass the expiration dates of trial software, Windows XP activation, or other rights-management technologies, as many of these programs keep track of radical time setting changes or number of uses in the registry or protected files. I certainly do not advocate such deceptive practices.
You might think that waiting until the operating system is done loading and then using the date and time functions at a DOS prompt or within Windows would be sufficient to fool a specific program, but some programs may not be easily fooled from within Windows.
Don't wait for the operating system; make these time-altering changes in the BIOS setup program to ensure that the operating system starts with the date or time you want—date and time setting is a basic function within setup. Be careful of changing the date if you're going to run your real, live accounting software (or other time-specific programs you rely on) or you could end up unbalancing the books.
If you are using the Windows Time service or one of many "atomic clock" programs to obtain an accurate date and time from one of the many online time servers, be sure to disable these in Windows before resetting the date and time in BIOS. Follow these steps to disable the Windows Time service:
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Avoid the Legacy USB Option
Save yourself from boot-up delays and Windows device detection confusion.
The Legacy USB setting tells the BIOS and operating system to detect and enable USB keyboards and mice in the absence of normal PS/2-port devices. Setting this parameter to Yes, On, or Enabled is important and necessary if you have only a USB keyboard and mouse and need to use them in non-Windows operating systems, such as DOS, OS/2, some self-booting diagnostic/maintenance programs, or the early stages of some Linux setups.
If this parameter is on or enabled and you use a normal PS/2-port connected keyboard, with no USB-connected keyboard attached, Windows 95 and 98 may hang up looking for a USB keyboard that does not exist. Disable or turn this setting off, or you could be fighting with the system for a long time and it will probably win. Your system may also boot up faster if it does not have to waste time looking for a nonexistent device.
If you have a conventional or PS/2 keyboard and mouse, you never need to enable this capability. For Windows 98SE, Me, and XP, which have native USB support built in, you need to make sure this parameter is set to No, Off, or Disabled as shown in Figure 1-10.
Figure 1-10: Disable Legacy USB Support unless you need to use a USB keyboard in DOS, OS/2, or Linux
Legacy USB is one sadly misunderstood parameter. With USB 2.0 being the current new USB standard, don't be misled into thinking this has something to do with USB 2.0 ports supporting "old" USB 1.1 devices—it does not.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Hack an Unhackable BIOS
You may be able to find a BIOS upgrade to work around that unhackable, squeaky-clean OEM BIOS.
By this point you may have discovered which feature hacks your BIOS supports, if any. Your PC may contain a "dummied-down" BIOS that provides very few setup options to choose from, while a truly hackable BIOS will give you parameters aplenty.
Most "no name," "white box," do-it-yourself PC system boards come littered with hackable bits through switches, jumpers, or the BIOS. These boards are the subject of the majority of hacks, overclocking, modifications, BIOS upgrades, and just plain "geeking out" on what a PC can be made to do. You'll get hours of enjoyment fiddling with every bit and parameter you can find and perhaps encounter hours or days of frustration if one of your hacks causes you to lose data or massive quantities of that soft, furry stuff atop your head.
If you've got an " OEM system"—one with a recognizable and sustained brand name such as Compaq, Dell, Gateway, HP, IBM, NEC, Sony, or Toshiba—chances are you will not find any parameters worth hacking on—you've got a "dummied down" BIOS.
The unhackable BIOS exists for one very simple reason: the manufacturer wants this PC to work for the broadest, simplest set of PC users. In other words, it does not want to have to bear the cost of support calls related to hacked BIOS settings. Completely understandable if this is a family PC but very frustrating if you're a real techie and wish to experiment.
All hope may not be lost. Many vendors use the same or a similar version of system boards that you can get off the shelf or by mail order. For instance, I have an HP Pavilion system that uses an Asus A7V-M and by coincidence an individually boxed Asus A7V I bought to build into my own case. The HP Pavilion A7V-M board uses a "dummied down" Award BIOS, while the boxed board uses a fully hackable Award BIOS. The "dummied down" BIOS in the HP does not allow me to change CPU or memory timing, which are critical to the overclocking hacks
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Upgrade Your Flash BIOS
Sometimes only after a product gets to market and is used in a lot of different situations can a vendor learn of problems or limitations. Nearly every system board and PC system on the market undergoes at least one significant revision of the BIOS after the product has been released for sale.
Most of us think nothing of seeking out the latest patches and updates for our application software and hardware drivers in hopes of solving a problem, gaining a feature, or boosting performance, but rarely do we think of updating the software and internal drivers that make our system board tick—the system BIOS.
I highly recommend visiting the web site of the manufacturer of your PC system or system board, or even Unicore's web site, to learn what the latest revision of BIOS is for your PC and the issues the revision addresses. You may find one or more clues that can help you solve problems or gain new or proper functionality of your system for a few minutes of browsing and downloading time.
Do not bother visiting the BIOS makers' web sites looking for BIOS updates. AMI and Award/Phoenix supply only the tools and services for system-board and PC-system makers to create their own BIOS code specific to each individual system board.
You wouldn't think of calling Microsoft, makers of the Visual Studio program development tools, about support or upgrades for software made by Adobe, Intuit, Symantec, or other software makers who use the Visual Studio tools. Nor would you call Sears about problems with your house built with a Craftsman hammer. And so it is with the BIOS companies.
A good resource for identifying your system board is the http://www.motherboards.org web site.
In most cases, except getting a BIOS upgrade from Unicore, getting a BIOS update and the software program to load the update into your PC are free from every system board and PC maker's web site. Since many of the devices you add to a system after the initial purchase are too new to be known to or supported by system board vendors, BIOS upgrades are issued to fix anything from an all-out serious bug that prevents some aspect of the system board from working, to enhancing the detection or size of certain types of disk drives, to adding extra support for Plug and Play or power management functions. These items should be spelled out in a
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Chapter 2: Basic System Board Setup
This chapter covers the things the BIOS was meant to do—detect and configure devices that interact with the core PC, basic input and output (I/O) devices, and connections to the outside world. You will also see emphasis on when it makes sense to switch from older I/O devices to new.
You're on a mission to ensure that PCs are properly configured, and you need to be armed with the knowledge and tools to carry out that mission. If you fail, you may lose any chance of improving the performance and capabilities of your PC and all further hacks may be a waste of time.
I/O devices are either contained within the system board or are optional devices plugged into slots or external interfaces connected to the system board. Their misconfiguration can interfere with more essential functions, such as those of the disk drive, display, keyboard, and mouse.
Unless you're tinkering with a really old XT- or AT-style system board (see Figure 2-1), your PC is probably built around an all-in-one ATX-style system board with an Intel Celeron; Pentium I, II, III, or 4; or AMD Athlon or Duron CPU. It probably provides the basic I/O ports: PS/2 keyboard and mouse ports, USB ports, at least one serial/COM port , and a parallel/LPT port. If it's a legacy-free system, it may only have USB and perhaps FireWire (IEEE 1394) ports. Various system boards include built-in sound, video, or Ethernet adapters too—lacking only a disk drive, monitor, keyboard, and mouse to be a complete PC.
Figure 2-1: An older no-frills mini AT-style system board with non-PS/2 keyboard connection and lacking any built-in I/O
With an older AT-style system, the I/O ports for your peripherals—COM, LPT, video, sound, and network—may be provided by various plug-in cards, using either 8- or 16-bit slots or perhaps even a PCI slot.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Introduction: Hacks #11-18
This chapter covers the things the BIOS was meant to do—detect and configure devices that interact with the core PC, basic input and output (I/O) devices, and connections to the outside world. You will also see emphasis on when it makes sense to switch from older I/O devices to new.
You're on a mission to ensure that PCs are properly configured, and you need to be armed with the knowledge and tools to carry out that mission. If you fail, you may lose any chance of improving the performance and capabilities of your PC and all further hacks may be a waste of time.
I/O devices are either contained within the system board or are optional devices plugged into slots or external interfaces connected to the system board. Their misconfiguration can interfere with more essential functions, such as those of the disk drive, display, keyboard, and mouse.
Unless you're tinkering with a really old XT- or AT-style system board (see Figure 2-1), your PC is probably built around an all-in-one ATX-style system board with an Intel Celeron; Pentium I, II, III, or 4; or AMD Athlon or Duron CPU. It probably provides the basic I/O ports: PS/2 keyboard and mouse ports, USB ports, at least one serial/COM port , and a parallel/LPT port. If it's a legacy-free system, it may only have USB and perhaps FireWire (IEEE 1394) ports. Various system boards include built-in sound, video, or Ethernet adapters too—lacking only a disk drive, monitor, keyboard, and mouse to be a complete PC.
Figure 2-1: An older no-frills mini AT-style system board with non-PS/2 keyboard connection and lacking any built-in I/O
With an older AT-style system, the I/O ports for your peripherals—COM, LPT, video, sound, and network—may be provided by various plug-in cards, using either 8- or 16-bit slots or perhaps even a PCI slot.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Step Away from the Legacy Device
As the Borg proclaim in many Star Trek episodes, "Resistance is futile. You will be assimilated." So will you find emphasis on moving PC I/O capabilities and devices as far away as possible from legacy technology. ISA technology is bigger, bulkier, and fraught with more configuration complexities and conflicts than the vendors and their support people ever imagined, and it's been more than a bit frustrating for millions of PC users as well. The best way to avoid the rest of this chapter and a lot of frustration and to gain a lot of performance and reliability is to disconnect, remove, disable, and replace all of your legacy devices with PCI, PCI-X, AGP, USB, or IEEE-1394 products.
With systems that provide enough 8- or 16-bit ISA slots (typically the black-colored edge connectors on your system board) to allow you to fill the system up with a lot of ISA devices, it is not unusual to run out of IRQs (Interrupt Request lines), limited resources that the CPU uses to address devices. Over the past few years the number of ISA slots on any given system board has decreased (often to zero) while the number of PCI slots (typically white edge connectors) has increased, and even the number of PCI slots is decreasing as more common functions (network, video, sound) have been built onto the system board. PCI devices do not have the same problems with IRQs that ISA cards have: PCI devices can share IRQs, and modern motherboards can assign IRQs dynamically (with ISA, you usually have to set a jumper on the card).
Finding any new 8- or 16-bit ISA I/O device to expand your system for more external peripherals at a computer store may be next to impossible, and you may be challenged to find documentation on how to configure any of the older boards you come across. Vendors have switched to PCI, and most peripherals have moved from using serial or parallel I/O to USB or IEEE-1394, which are beginning to make the PCI bus for external devices obsolete as well.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Manage Devices
Take control of device configuration.
One of the basic functions of the PC's BIOS is to identify and provide access to a variety of core components and I/O devices, whether they are embedded on the system board or plugged into an I/O card slot. Core components include the CPU, memory, internal system clocks and timers, and the I/O bus itself. Simple I/O devices supported by every BIOS include the keyboard, mouse, video adapter, I/O ports (serial, parallel, USB, and/or FireWire), and disk drive adapters. All of these devices have very predictable but limited places to be, including:
  • Preset and expected hardware addresses (to access and get data to or from the device)
  • Interrupt Request (IRQ) signals so devices can tell the CPU and programs they need attention
  • Direct Memory Access (DMA) request and acknowledgment signals for devices and the CPU to communicate with each other, allowing high-speed data transfers directly to and from device memory
The earlier, or legacy, BIOS dealt with the hardware as provided, and the hardware configurations were preset or manually altered using switches and jumpers. When all you had were simple I/O devices, configuring a PC was manageable but admittedly not easy for those not inclined to get inside a PC and work with wires and jumpers. As PCs got more popular, more and more nontechnical users were exposed to them, and configuring a PC started to become a major frustration and technical support nightmare for PC vendors. As technology advanced, users wanted more, faster, and better things from the PC. The simple, aging, and slow I/O devices and limitations of the PC and BIOS had to be rethought.
To be able to advance, the PC had to change, but because so many people and companies had so much invested in the PC hardware and software status quo, any new PC technology had to accommodate the old as well as the new. The goals of any technology advances were based on experience and history, leading to the following goals for PCs:
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure Serial Ports
Starting with a clean, industry-standard serial port configuration can save hours of headaches when you're ready to add more devices.
If you currently or eventually will have to connect your PDA, a modem, a GPS unit, an uninterruptible power supply to protect your PC, or something else to a COM port, leave the COM port(s) enabled with a known configuration. If you know for sure how your ports are configured, it makes using them much easier.
There are several ways to tell if you have one or more COM ports on your system:
  • Look at the back (sometimes the front for some COMPAQ and HP systems) of your PC to see if there is a connector with nine small male pins in two rows—one of five pins, the other of four pins, surrounded by a trapezoidal or D-shaped metal shell—or a connector with 25 male pins in two rows of 13 and 12, respectively. These are known as DB-9 male and DB-25 male connectors, respectively. Only serial ports have this style of male connectors.
    The presence of these connectors does not tell you specifically that there are COM port electronics wired between the connectors and your system board—these may be fillers for the addition of COM ports to a system that does not have them.
    The presence of these connectors also does not tell you if they are connected to an add-in card plugged into an ISA or PCI slot or directly to COM port electronics on the system board. Only a physical inspection of the inside of your PC can tell you for sure if the connectors go anyplace and where they go.
  • Look into the BIOS setup program for references to serial/COM ports in the I/O port menu sections. If setup refers to COM ports and the system contains the 9- or 25-pin external connectors, chances are you do have COM ports.
    It is possible your BIOS could report the existence of COM ports although you have no physical connectors for them, indicating that you are missing some cables to connect to the system board or the manufacturer never intended the ports to be used.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure Parallel Ports
Set up your parallel ports in ways that accommodate your peripherals and your other expansion needs.
Although LPT ports are seldom used for much of anything (even printers, since most now use USB) these days, the occasion may arise when you need to use the port to hook up an old external disk drive to recover some important files or an old scanner to capture a document or photo, or to connect two PCs with a special transfer cable to migrate data from an old PC to a new one. Knowing the basics of your LPT ports will make these tasks easier.
Before you can use an LPT port, you need to have one, so you need to find out if you do. There are specific ways to tell if you have one or more LPT ports on your system:
  • Look at the back of your PC to see if there is a connector with 25 female pin holes in two rows of 13 and 12, respectively, surrounded by a trapezoidal or D-shaped metal shell. This connector is known as a DB-25 female .
    Unfortunately, other types of interfaces use the same connector style—typically older SCSI ports and, rarely seen in the general PC population, connections for special test equipment.
    The presence of these connectors does not tell you specifically that there are LPT port electronics wired between the connectors and your system board—these may be fillers for the addition of an LPT port later on.
    The presence of these connectors also does not tell you if they are connected to an add-in card plugged into an ISA or PCI slot or directly to LPT port electronics on the system board. Only a physical inspection of the inside of your PC can tell you for sure if the connectors go anyplace and where they go.
  • Look into the BIOS setup program for references to parallel ports in the I/O port menu sections. If setup refers to LPT ports and the system contains the 25-pin external connectors, chances are you do have LPT ports.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure Sound Cards
Make your sound card sing amidst the variations of limited PC resources by finding and using alternative settings.
Sound cards were among the first optional devices to be added to the old ISA PCs. When Windows 3.x became available, and with gamers demanding a more immersive experience, demand rose for a richer audio environment than the mere beeps and boops offered by the PC speaker. Users needed sound to complete "the experience." Companies like Creative Labs and MediaVision thrust sound from PCs into users' ears.
To accomplish this meant borrowing from emerging technologies, creating a few new technologies, and stuffing all of this into what there was of a 16- and then 32-bit PC computing platform.
The default settings for PC sound cards became address 220, IRQ5, and DMA channel 1. While there was seldom a conflict with I/O addressing, sound cards could be reconfigured to use an IRQ other than 5 and a DMA channel other than 1 to avoid other devices that could be present in the system. The DMA channel was needed to avoid stutter and skipping of data streams.
The most common symptom of a misconfigured sound card is a stuttering or choppy effect to otherwise smoothly streaming sounds. If Plug and Play is not solving a conflict and the sound card supports alternative configurations, try changing the IRQ to 7, 10, 11, or 15, or the DMA channel to 3 or 5.
You can determine the settings of your present sound card configuration using Windows Device Manager [Hack #12] or a program like SiSoft Sandra, which will detect and report on all of the I/O devices present.
Be aware that a sound cards needs consistent, exclusive access to IRQ and DMA resources, so these resources cannot be shared with other devices. If you have an ISA-based sound card, look for the jumpers on the card, as in Figure 2-8, or use the configuration software provided to set the card for the generally accepted address (220), IRQ (5), and DMA channel (3 or 5). If you are using an ISA sound card and cannot configure it with nonconflicting settings, upgrade to a PCI-based card to avoid any ISA resource conflicts and gain better sound card performance and fidelity in the process.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure SCSI Host Adapters
Accommodate SCSI host adapters with nonconflicting configurations.
A SCSI interface is one of the best ways to add lots of devices—hard drives, CD-ROM or DVD drives, cartridge or tape drives, even some of the high-end graphics scanners—to your PC without using up a lot of resources. Very fast SCSI adapters and hard drives are used in servers, and most high-capacity server-grade backup tape systems use the SCSI interface because SCSI is simply faster and allows for more drive configurations like RAID.
Because of the performance offered by SCSI host adapters, you should have at least a PCI card. ISA cards are simply incapable of supporting the speeds required by today's SCSI drives.
Most SCSI adapters are readily identified and their configurations determined and reported by Windows Device Manager and readily available PC system information programs.
Some of you may still be using 16-bit ISA SCSI adapters. As with the sound card, if you cannot configure the system to provide the host adapter with exclusive uninterrupted access to IRQ and DMA resources, an upgrade to a PCI-based adapter is your only solution, and you'll get a huge performance boost as well.
A SCSI host adapter may contain User BIOS, so adding a SCSI host adapter to your system might require you to enable scanning the User BIOS Region of memory [Hack #4] .
As a means of connecting external devices, SCSI has been great for scanners and assorted storage devices, but it has not been forgiving or flexible in cable lengths nor as fast as newer technologies. Save SCSI for internal storage devices and high-performance server disk drive arrays, but upgrade your external peripherals—scanners, add-on and portable storage devices—to either USB 2.0 or IEEE-1394 (aka FireWire, aka i.Link). With USB or IEEE-1394, you also get the capability to add many more and different devices such as digital cameras, video recorders, printers, business card readers, SMART cards, and a variety of flash memory readers.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Configure Network Cards
Give your network card the resources it needs to get and keep your LAN and Internet traffic flowing smoothly.
Network cards are another enhancement to PCs that had to be squeezed in to the limits of old legacy I/O systems. Because networking usually requires a fast, steady stream of data, it is important that network interface cards have unique and exclusive use of address and IRQ resources. Symptoms of conflicts include the inability to obtain a network address or log on to a server, or poor data transfer performance.
The most successful implementations of early 8- and 16-bit network cards in practice used addresses 280 or 340 and IRQ5 (8-bit systems) or IRQ10 (16-bit systems), depending on the presence or absence of a sound card using IRQ5.
Determining the presence, type, and configuration of older network cards is not well supported in most diagnostic and system information programs. Instead you may have to rely on reading the jumper settings or using a configuration program meant specifically for your network adapter.
If you need Gigabit Ethernet (1000BaseT), you should use a motherboard that has it built in. If you install a 1000BaseT PCI card, it will likely saturate the PCI bus, leaving no bandwidth for other PCI cards. Onboard 1000BaseT uses a separate bus to talk to the CPU and memory.
Today, with PCI and Plug and Play, you seldom have to concern yourself with these issues. Nevertheless, knowing the commonly available configurations is useful should you ever have to configure the drivers and software for a LAN card to work in DOS, which often cannot use PCI net cards because the vendors may not provide DOS drivers for them.
Although well published in IBM specifications, address 300 was "reserved" for use by IBM and prototype devices and recognized as such in many versions of BIOS. IBM even offered a plug-in card that used address 300 for others to develop new products around.
Older ISA network cards may be set for address 300, which can cause problems for some older applications. Avoid using address 300 for anything.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Reeducate Plug and Play
The Microsoft Windows Plug and Play BIOS extension generally knows when a new device is installed, as you can see in Microsoft Windows when a "New hardware found" dialog appears, but it doesn't know if you've changed the configuration of a device through its configuration/setup program or using Windows Device Manager.
It is possible, depending on the capabilities of the respective device drivers (usually for PCI network and SCSI cards), to reconfigure an I/O device through Device Manager. This reconfiguration is not dynamic: Windows won't really know about it until Plug and Play BIOS tells it things have changed. That only happens at bootup, and sometimes only if the BIOS is told to look for the change. Merely changing a device's internal configuration does not constitute a new or removed device in Plug and Play's "mind," and it never gets it without some help.
To tell Plug and Play that things have changed by adding or removing an I/O device, or by "soft" changes you made within Windows, you have to reboot your system, enter the BIOS setup, and then force Plug and Play to reassess the system configuration. This gets the BIOS to reconfigure the system properly, and informs the operating system of the changes.
Reeducating Plug and Play is done by a parameter most often named "Reset Configuration Data" or "Reset NVRAM" (non-volatile RAM). NVRAM is an area of memory on the system board that stores Plug and Play data. Make sure that Plug and Play OS is set to Yes (provided you have a Plug and Play-compliant operating system, such as Windows), set the Reset value to Yes, and then restart your PC. The BIOS will reevaluate the system configuration, store any new data, and make it available to the operating system (see Figure 2-9).
Figure 2-9: Resetting the configuration data forces Plug and Play to roll the dice again to reset device configurations based on new settings
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Chapter 3: CPU Hacks
"How fast can I make it run?" is likely the first question from any PC hacker. In the good old days of the original IBM PC, the answer was a breathtaking 8 MHz, up from 4.77 MHz—but only if you replaced the system's processor, an Intel i8088 CPU, with an NEC V20 chip. (Intel eventually beefed up the i8088 to run at 8 MHz.)
The PC has gone through numerous and tremendous performance improvements, starting with the CPU. At one time, 12 and 16 MHz were the top speeds; then 25 and 33 MHz; then 50 and 66 MHz; then 100, 150, 200, 266, 500 MHz, 1 GHz, and 2 GHz. After 24 years of technological advances, now 3 GHz, nearly 630 times faster than the first PCs, is an everyday, ho-hum, state-of-the-art PC standard.
At every step of CPU performance improvement, the system I/O bus and peripherals have had to catch up. We want the Internet to flash before us, its content challenging the CPU to keep up with the network. There was a time when application programs strained to crunch numbers and print documents; we are now waiting for applications to take advantage of what desktop super-computing capabilities have to offer. Once AMD got the rights to manufacture an Intel i80286 CPU, the horses, cows, pigs, and rocket-fuel powered CPUs were out of the barn, seldom to be corralled again. The functions of the x86 chip were well known and easily replicated: the race was on. The winners are millions of PC users around the globe.
The basic question may be, "Why do I want my CPU, or the entire system, to run faster anyway?" Numerous justifications and solid reasons exist for hacking your system for better performance, including:
  • Because applications are slow with the present system
  • Because you can get additional performance for little or no expense—a free or cheap upgrade
  • Because you can—it's the nature of techies and geeks
The most critical elements in jacking up your CPU speed are also the limiting factors as to how fast it can get: the top speed of the CPU and design of the supporting circuits on the system board. In 1980, the year the PC was born, the IBM PC system board and peripherals could not easily be made to go faster, nor did the components support the challenge. The IBM PC/XT saw some improvement, but the methods of clocking the CPU and the peripherals were so tightly tied together that it took major circuit hacking to speed things up.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Hacks #19-29
"How fast can I make it run?" is likely the first question from any PC hacker. In the good old days of the original IBM PC, the answer was a breathtaking 8 MHz, up from 4.77 MHz—but only if you replaced the system's processor, an Intel i8088 CPU, with an NEC V20 chip. (Intel eventually beefed up the i8088 to run at 8 MHz.)
The PC has gone through numerous and tremendous performance improvements, starting with the CPU. At one time, 12 and 16 MHz were the top speeds; then 25 and 33 MHz; then 50 and 66 MHz; then 100, 150, 200, 266, 500 MHz, 1 GHz, and 2 GHz. After 24 years of technological advances, now 3 GHz, nearly 630 times faster than the first PCs, is an everyday, ho-hum, state-of-the-art PC standard.
At every step of CPU performance improvement, the system I/O bus and peripherals have had to catch up. We want the Internet to flash before us, its content challenging the CPU to keep up with the network. There was a time when application programs strained to crunch numbers and print documents; we are now waiting for applications to take advantage of what desktop super-computing capabilities have to offer. Once AMD got the rights to manufacture an Intel i80286 CPU, the horses, cows, pigs, and rocket-fuel powered CPUs were out of the barn, seldom to be corralled again. The functions of the x86 chip were well known and easily replicated: the race was on. The winners are millions of PC users around the globe.
The basic question may be, "Why do I want my CPU, or the entire system, to run faster anyway?" Numerous justifications and solid reasons exist for hacking your system for better performance, including:
  • Because applications are slow with the present system
  • Because you can get additional performance for little or no expense—a free or cheap upgrade
  • Because you can—it's the nature of techies and geeks
The most critical elements in jacking up your CPU speed are also the limiting factors as to how fast it can get: the top speed of the CPU and design of the supporting circuits on the system board. In 1980, the year the PC was born, the IBM PC system board and peripherals could not easily be made to go faster, nor did the components support the challenge. The IBM PC/XT saw some improvement, but the methods of clocking the CPU and the peripherals were so tightly tied together that it took major circuit hacking to speed things up.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Get More Power
Before you change out your system board, upgrade to a new CPU, or start jacking up the speed of your CPU and get lulled into a false comfort zone with your new blazing-fast turbocharged PC, make sure it's got the stamina to keep running smoothly. Many PCs have meager 200- to 250-watt power supplies, as shown in Figure 3-1, which are no match for the 300-watt capacity recommended by AMD for their CPUs. You'll need the extra juice to feed not only the CPU but the video card, RAM, disk drives, and other devices.
Figure 3-1: Power supply ratings are usually clearly labeled
Check the label on your power supply for its capacity rating in watts. 200, 225, 230, and 250 watts are common but usually insufficient for the needs of power users.
If you have an OEM system (such as those from Dell, Gateway, and others), it may not be possible to upgrade the power supply due to a unique physical design or specific electrical connections that are not industry-standard AT, ATX, or mini-ATX styles. Since most of us are not hacking name-brand OEM systems, we enjoy many options for customizing the system including changing the power supply.
One standard source for cool, quiet, high-performance PC power supplies is PC Power and Cooling (http://www.pcpowercooling.com). Their top-of-the-line supply can deliver a whopping 510 watts of power, which is more than adequate for any CPU and multiple disk drives.
Replacing the power supply is one of the easiest electromechanical tasks you can do with a PC. You'll need one of the following:
  • #1 or #2 cross-point (Phillips) screwdriver
  • T-15 TORX point driver
  • 1/4" hex nutdriver
  1. Turn off the PC and disconnect the power cord, as shown in Figure 3-2.
Additional content appearing in this section has been removed.
Purchase this book now or read it online at Safari to get the whole thing!
Identify Your CPU
Content preview·Buy PDF of this chapter|