Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ boards.pc(5) — SunOS 4.1.3_U1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dos(1)

setup.pc(5)

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

Available only on Sun 386i systems running a SunOS 4.0.x release or earlier.  Not a SunOS 4.1 release feature. 

DESCRIPTION

The boards.pc file stores information about AT- and XT-compatible boards installed on a system. 

Only the super-user may alter the file. 

The file format is as follows, with entries separated by SPACE or TAB characters:

Board-nameI/O port rangeIRQDMAMemory  Options

Board-name
The name of the board as it will appear in the DOS Windows Device menu.  Use any name that is not longer than 19 characters. 

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:

Address DOS Use
1F8-1FF ∗ Hard disk (C:) emulation
218-21F Expanded memory
230-23F Bus mouse emulation
278-27F Parallel port 2 (usually accessed through LPT3)
378-37F ∗ Parallel port 1 (usually accessed through LPT2)
3B0-3BF Monochrome display adapter
3D0-3DF Color display adapter
3F0-3F7 ∗ Diskette controller

An address marked with an asterisk cannot be replaced by a board.  When the board you are installing uses one of these addresses, or it uses the same address as another board that is already installed, 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, DOS ignores the entry.  An address not marked with an asterisk may be used for a board you are installing, as long as you do not plan to use the emulated device at that address.  Adding an I/O Address Entry to boards.pc: If the board uses addresses that can be contained within one eight-address block, note the block base address and include it in the I/O port range column of the boards.pc file.  When using a multiple-block address, 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, and separated with a SPACE character.  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 send periodic signals asking DOS to delay whatever it is doing and accept information from the device.  These signals are known as interrupt requests, or more simply, as interrupts.  The following chart shows the interrupt levels available under DOS Windows.  Valid interrupt levels are 1 to 15, although some of these are reserved for emulated DOS devices. 

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 do not become confused, set each board or emulated device that uses interrupts 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 are installing for details on how this is done.  In addition to the changes required on the board itself, make 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, 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.  Adding an Interrupt Entry to boards.pc 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 IRQ column empty.  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. 

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.  Each DOS or SunOS DMA board on the system must be assigned a unique DMA channel.  When two or more boards expect to use DMA channel 1, physically alter DMA settings on one of the boards so that it uses a different channel (such as 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 are installing for details on changing a DMA channel setting. 
Adding a DMA Entry to boards.pc When the board you are installing uses a DMA channel, include a dma entry for that board.  For example, when the board is set up to use DMA channel 3, the entry can look like this:

MYBOARD   200 208 irq 2 dma 3

Memory
Some boards are equipped with memory chips for DOS.  Because this memory is “mapped” (transferred) into DOS memory so that DOS can read it, the boards are called memory mapped boards. When you install such a board, include a mem entry with the following format:

mem address size

The address is the starting address of the memory segment, in hexadecimal notation.  Enter the size of the memory block in kilobytes, in decimal notation.  The following example is for a board that starts mapped memory at the address $DE00 and uses a block of 8 kilobytes. 

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 should not use).  For example, a LIM memory board might have 2 megabytes of on-board memory, yet may require only 64 kilobytes of DOS address space for its memory mapping.  Therefore, the number to use for the mem entry is 64. 

Options

       reboot
Certain boards require DOS rebooting before they 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 when you attach the board, add the word reboot at the end of the boards.pc line for that board, as shown in the following 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 do this only 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

Determining Board Information

In many cases, you may need to determine whether a board you are installing will conflict with other devices on the system.  Also, you sometimes may need to install a board for which there is no entry in the boards.pc file.  In most cases, the instruction manual included with the board you are installing should contain the technical information you need, including:

The I/O port addresses at which the board is accessed.  One or more blocks can be reserved, and there are eight consecutive addresses per block. 

The board’s interrupt level, if the board generates interrupts. 

The DMA channel number, if the board uses a direct memory access channel. 

Memory mapping information, if the board maps data into DOS memory. 

If the board’s manual does not provide such information, contact the manufacturer. 

EXAMPLES

The following is an example of a boards.pc file:

#COM2 2f8 irq 3


#Joystick 200 shared
#EGA 3b0 3b8 3c0 3c8 3d0 3d8 mem a000 192 reboot
#VGA 3b0 3b8 3c0 3c8 3d0 3d8 102 2e8 mem a000 192
#3COM-3C501 300 308 irq 3 dma 1

#TOPS-FlashTalk 398 irq 3


#IBM-3363-Worm 258 irq 5 dma 3 mem de00 8 reboot
#Plus-Hardcard20 320 irq 5 dma 3 mem ca00 8 reboot
#HP-Basic 390 irq 3


#DCA-IRMA1 220 228



#DCA-IRMA2 220 228 280 288



#Bernoulli-A220H 350 reboot
#WD8003E 280 288 290 298 irq 5 mem d000 8
#NI5210 360 irq 5 mem c000 16
#NIC irq 5 mem d000 32
#LPT2 278 irq 5


FILES

/usr/lib/help/∗/∗

SEE ALSO

dos(1), setup.pc(5)

Sun386i Advanced Skills

Sun Release 4.1  —  Last change: 25 September 1989

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026