BOARDS.PC(5) — FILE FORMATS
NAME
boards.pc − information about AT- and XT-compatible boards for DOS windows
SYNOPSIS
/etc/dos/defaults/boards.pc
AVAILABILITY
Sun386i systems only.
DESCRIPTION
The boards.pc(5) file stores information about AT- and XT-compatible boards that are installed on a system. The information is used directly by DOS. The file is not used for emulated devices, nor devices accessed in DOS through UNIX device names. See setup.pc(5) for DOS device information.
Only superuser may alter the file.
The format is:
BOARD-NAMEI/O port rangeIRQ DMA Memory Options
Entries may be separated by spaces or tabs.
BOARD-NAME
The name of the board as you wish it to appear in the DOS Windows Device menu. You can use any name you choose, as long as it is 19 characters or less.
I/O port range
Most boards have I/O addresses through which they exchange information with the workstation. For boards that will be used by DOS, the I/O address is entered in the boards.pc file, directly to the right of the board name. Certain I/O addresses are already used by DOS Windows emulated devices (such as drive C and the DOS printers), and by built-in system hardware. The following list shows the AT-bus I/O address spaces:
AddressDOS Use
1F8-1FF ∗Hard disk (C:) emulation
218-21FExpanded Memory
230-23FBus mouse emulation
278-27FParallel port 2 (usually accessed through LPT3)
378-37F ∗Parallel port 1 (usually accessed through LPT2)
3B0-3BFMonochrome display adapter
3D0-3DFColor display adapter
3F0-3F7 ∗Diskette controller
Addresses marked with an asterisk cannot be replaced by boards. If the board you are installing uses one of these addresses − or if it uses the same address as another board that’s already installed − then you’ll need to change the jumpers or switch settings on your board to use a different address. If you add a board that occupies one of these address spaces, marked with an asterisk (∗) above, DOS ignores the entry. Addresses not marked with an asterisk may be used for a board you’re installing, as long as you disable the emulated device at that address (see setup.pc(5)). Adding an I/O Address Entry to boards.pc:
If the board uses addresses that can be contained within one eight- address block, enter that block’s base address in the boards.pc file’s I/O port range column. If you are using a multiple-block address, you must specify the base address of each block. For example, when entering a two-block address, specify the base addresses of both the first and second blocks. Addresses must be separated by a space. Suppose you have a board with a two-block I/O address space that begins at 380. You would specify 380 388 in the boards.pc file’s I/O port range column.
IRQ Some boards − but not all − send periodic notices asking DOS to delay whatever it’s doing and accept information from the device. These signals are known as interrupt requests, or more simply, interrupts. Valid interrupt levels are 1 to 15, although some of these interrupt levels are reserved for emulated DOS devices. For boards where an interrupt level is required, enter the letters irq followed by the appropriate number in the boards.pc file, as shown in EXAMPLES below. Some boards do not generate interrupts, and therefore will not have an interrupt level listed in their manuals. If this is the case, leave the boards.pc file’s IRQ column empty. The chart below shows the availability of interrupt levels under DOS Windows on the Sun386i system:
Interrupt
LevelAvailability
0Unavailable; used for timer emulation
1Unavailable; used for keyboard emulation
2Unavailable; used for interrupt controller 2 cascade
3Available for board, unless COM2 emulation in use
(specified in setup.pc)
4Available for board, unless COM1 emulation in use
(specified in setup.pc)
5Available for board, unless LPT3 emulation in use
(specified in setup.pc)
6Unavailable; used for diskette drive emulation
7Unavailable; used by built-in parallel port
8Unavailable; used for real-time clock emulation
9Available for board
10Available for board
11Available for board
12Available for board
13Unavailable; used for 8087 numeric coprocessor emulation
14Unavailable; used for hard disk emulation
15Available for board
To ensure that signals don’t become confused, each board or emulated device that uses interrupts should be set for a different interrupt level. Normally, interrupt settings are changed by pressing small switches or moving metal jumpers on the board itself. Consult the manual of the board you’re installing for details on how this is done. In addition to the changes required on the board itself, you must be sure that the interrupt level in your boards.pc file matches the setting on the card. For example, if a board’s physical interrupt was previously 3, and you change it to 4 by altering switch settings or board jumpers, you should make a corresponding change in the boards.pc file. If the card uses a DOS driver, you may also need to make changes in C:CONFIG.SYS or other files to reflect the switch settings on the card.
DMA Certain boards use direct memory access (DMA) channels to ensure speedy transfer of large quantities of data. DMA channels 0, 1, 3, and 5 are available for use. For example, if the board is set up to use DMA channel 3, its entry might look like this:
MYBOARD 200 208 irq 2 dma 3
As is true on a PC, each DOS or SunOS DMA board on the system must be assigned a unique DMA channel. If you have two or more boards that expect to use DMA channel 1, for example, you’ll need physically to alter DMA settings on one of the boards so that it uses a different channel (say, DMA channel 3). Normally these settings are changed by pressing small switches or moving metal jumpers on the board itself. Consult the manual for the board you’re installing for details on how to change a board’s DMA channel setting.
Memory
Some boards come equipped with their own memory chips that they expect DOS to use. Because this memory is actually "mapped" (transferred) into DOS memory so that DOS can read it, the boards are referred to as memory mapped boards. If you are installing such a board, include a mem entry on the boards.pc line. The mem entry uses the following format:
mem address size
The address is the starting address of the memory segment, in hexadecimal notation. The size of the memory block is entered in kilobytes (K), in decimal notation. As an example, suppose you have a board that starts mapped memory at the address $DE00 and uses a block of 8K. The mem entry is
mem de00 8.
Normally, you’ll place this entry at or near the end of the line:
MYBOARD 258 irq 5 dma 3 mem de00 8
When determining the size of the memory block, be careful not to confuse DOS address size (the number you should use) with actual on-board memory (the number you shouldn’t use). For example, a LIM memory board might have 2 megabytes of on-board memory − yet may require only 64k of DOS address space for its memory mapping. Therefore, the appropriate number to use for the mem entry in this case is 64.
Options
Valid options are reboot and shared.
reboot
There are certain boards which require that DOS be rebooted before they will work. These same boards require that you reboot DOS after you have finished using them. You can set up DOS to reboot the current DOS window automatically whenever the board is attached. (DOS displays a confirmatory alert before rebooting.) To force DOS to reboot anytime you attach the board, add the word reboot at the end of the boards.pc line for that board, for example:
MYBOARD 3e8 mem a000 192 reboot
If you choose to omit the reboot instruction, you can enable the board by attaching it and then manually rebooting:
1. Choose Attached from the Device menu to enable the board.
2. Choose Reboot DOS Window.
To detach such a board from a DOS window, choose Detach and then reboot the DOS window.
shared
You can specify that a device is to be shared between windows, rather than being reserved for use by one window at a time. Generally, you should only do this with devices − such as joysticks − which can fluidly move from one DOS window to another. To designate a device as shared, place the word shared at the very end of the boards.pc line:
Joystick 200 shared
EXAMPLES
The following is an example of a boards.pc file:
# /etc/dos/defaults/boards.pc:
# BOARD-NAME I/O port range IRQ DMA Memory Options
#Joystick200shared
#EGA3b0 3b8 3c0 3c8 3d0 3d8 mem a000 192 reboot
#VGA3b0 3b8 3c0 3c8 3d0 3d8 102 2e8 mem a000 192 reboot
#3COM-3C501300 308irq 3dma 1
#TOPS-FlashTalk398irq 3
#IBM-3363-Worm258irq 5dma 3 mem de00 8 reboot
#Tallgrass-TG-2025e 288irq 3dma 3 mem d800 4 reboot
#Plus-Hardcard20 320irq 5dma 3 mem ca00 8 reboot
#HP-Basic390irq 3
#DCA-IRMA1220 228
#DCA-IRMA2220 228 280 288
#Bernoulli-A220H 350 reboot
#WD8003E280 288 290 298 irq 5mem d000 8
#NI5210360irq 5mem c000 16
#NICirq 5mem d000 32
#LPT2278irq 5
FILES
/usr/lib/help/∗/∗
SEE ALSO
Sun386i Advanced Skills
Sun Release 4.0 — Last change: 14 July 1989