Here's a way to make your new hardware talk to the system
Here's a way to make your new hardware talk to the system
By Zatni Arbi
JAKARTA (JP): Last week, as I was reviewing the delectable
SCENIC Multimedia eXtension Board (MXB) from Siemens Nixdorf, I
inadvertently left you with a small puzzle. I just told you that,
without any warning, the SNI PCI TV suddenly loaded without
crashing the system.
One of my esteemed readers has reminded me about it and asked
me what I actually did to coerce the board to finally work. Well,
I guess it was half magic, half technical. I might be able to
give you some explanation on the technical side. For the magical
part, what I could say is that computers work in a mysterious
way.
First, let's learn a little about this thing called IRQ, an
abbreviation of Interrupt Request.
It's a means by which the microprocessor in the computer
system recognizes and communicates with the devices that are
attached to it.
An IRQ works like an exclusive signal that both the system and
the device use to draw the attention of each other.
IRQs are just one type of what is called "system resources".
The other types of resources are the Direct Memory Access (DMA),
Input/Output (I/O) and memory addresses.
Unfortunately, we don't have enough space to discuss these
here today. Suffice it to say that the attached devices to your
PC may require one or more of these resources.
To give you an idea of the problems we may have as we add a
new device to our PC, let's focus on the IRQ again. In each PC,
we normally have a certain number of IRQs.
In the old XT systems -- the PCs that people used in the late
1970s and early 1980s, there were only 8 IRQs available.
These were IRQ 0 to IRQ 7. IRQ 1, for example, was used by the
keyboard to get the attention of the system.
IRQ 7 was used by the system to tell the parallel port
(Printer port, or LPT1) that it had something to send to the
attached printer.
As the XT architecture evolved into the AT, seven more IRQs
were added. Today, in a typical Pentium PC, we still have 15
IRQs.
Some are dedicated for certain devices and cannot be
reassigned, others can be allocated to additional devices such as
a sound card and an MPEG playback card.
Conflicts
So, when you add a new device, you have to assign a free IRQ
to it. But, how do you know which IRQ is free?
In Windows 95, it's very easy. Just open the Control Panel
folder, and double-click on the System icon. You'll have the
System Property dialog box that looks like window 2 in the
accompanying picture.
Click on the Device Manager tab, and you'll have a list of all
devices that your system has. While the word Computer is still
highlighted, click on the Properties button at the bottom (or
double-click on the Computer itself).
You'll see a list of all IRQs in your system, and you'll also
find out which device each of them has been assigned to. All you
have to do now is find the unused IRQ.
As I was installing the SCENIC MXB, for instance, I found
that the driver for this device was using IRQ 11, which was also
being used by another device. I also found out that no device
used IRQ 10, which meant that this one was free.
So, what I did next was change the IRQ of the MXB from 11 to
10.
To do this, I clicked on the Sound, video and game controllers
item on the list. As you can see in window 3, the MXB device fell
under this category.
I double-clicked on the name of this device, and I got the
Multimedia eXtension Board Properties dialog box. I clicked on
the Resource tab, and I had dialog box 4.
When a device driver is first installed on a system, usually
the resources are automatically set.
However, when the resources set in this manner are already
used by another device, a conflict will happen.
If this is the case, it will usually be indicated in the
Conflict box located at the bottom of this dialog box. To resolve
it, we have to set the resources manually.
To accomplish this, first we have to inactivate the automatic
setting feature by clicking on this option.
Then we click on the Change setting button. If the IRQ is
being shared by a competing device, we have to first make sure
that it is highlighted in the list of resources before we click
on this button.
Like the IRQ, there are also cases when the DMA channel or the
memory addresses are already used by another device, so we have
to change them.
Again, as I was trying to get the MXB working, I learned that
the device had a conflict with the PC's video graphics cards
because they were using the same memory areas.
I also read in the README file that I had downloaded, together
with the new software driver that I need to have, more than 64 kb
free memory between the MXB and the VGA memory.
You see, when you're frustrated, the README file can save you
from hitting your head against the wall!
The problem that really took me a lot of time to resolve was
that I didn't have very much space in the memory areas to move
the setting for the MXB device driver.
If I move it too high, it will conflict with another device.
If I move it down, I will have even less free area between it and
the VGA memory.
It was when I got to the right spot, i.e. 000CC000-000CCIFF,
that the MXB suddenly worked.
If I change the memory address, the system will crash or the
SNI PCI TV program will not load.
So, that was it. And the next time you have problems
installing a new device on your own, such as a sound card, an
MPEG card, a modem, or a video capture board, and it fails to
work the first time, you basically know what to do.
Also, if you're installing a new modem, it's always a good
idea to check first whether or not the system has already
recognized it.
This is also very easy to do in Windows 95. Open the Control
Panel folder, double-click on the Modem icon, and then you'll get
the Modem dialog box.
If you see the new modem listed there, it means that your
system does recognize it. If you want to check whether the modem
is working or not, click on the Diagnostics tab.
Select it from the list, and click on More info. After a
minute or two, the system should come back to you with the
information it has retrieved from the modem hardware. If it
encounters problems, it will give you an error message.
Then you'll have to go the Device Manager in the System dialog
box and follow the procedure I described above.
The problem is that, like our country's natural resources,
there are also only a limited number of resources in each system.
I recently helped a cousin set up the PC Card modem on his new
Toshiba 440CDT, and, boy, all the IRQs were already used.
I had to disable the Universal Serial Bus in order to free one
IRQ for the modem. It was very frustrating, but once I managed to
get it working it was really so much fun.