About ADFs ...

ADF Keyword (Part 2)

Back To The Content-Page
Back To Previous Chapter

help = Help string
The help field is a string of text used to give the user assistance at a prompt. The text is displayed in the Change Configuration screens when the cursor is at the associated prompt and the F1 key is pressed.
The character string Help is a keyword and must be present when the NamedItem or Input parameter is present. The string following the Help keyword is the text that describes the prompt. The length of the help string is limited to 1.000 characters.
The help string begins and ends with a double-quote. Additional double quotes inside the help string are not allowed.

       "The host adapter will check SCSI Parity if 'On'.
        (Default On)"

pos_setting = {pos_byte_setting}+
The pos_setting parameter must contain at least one pos_byte_setting.
See the definition of pos_byte_setting below.

pos_byte_setting = POS[number]=pos_bit{8}b
Each pos_byte_setting field defines one POS byte.
The character string POS is a keyword and precedes each POS byte defined. The number of the POS bytes is specified in brackets and refers to the POS bytes as shown below:
number = 0, POS byte 0 at port 102h
number = 1, POS byte 1 at port 103h
number = 2, POS byte 2 at port 104h
number = 3, POS byte 3 at port 105h
The closing bracket must be followed by an equal sign, and then a bit definition of the POS byte as described in pos_bit below. The bit definition must define all 8 bits of the POS byte.
Bit 0 of pos[0] and bit 7 of pos[3] should always be defined as X to leave them unchanged.


pos_bit = x | X | 0 | 1
A pos_bit can be defined as "unchange" mask bit (x or X), a clear bit (0) or a set bit (1).


resource_setting = {ioblock_list} {interrupt_list} {arb_list} {memaddr_list} {exec_adp}
The resource_setting parameter defines a list of system resources.
The resources can be fixed resources required by the adapter, or they can resources the adapter uses when configuring to a specific choice in a named_item. The resources can consist of the following:
Range of I/O adresses       (limited to 16 ranges)
List of interrupt levels    (limited to 16)
List of arbitration levels  (limited to 16)
Range of memory adresses    (Limited to 2 ranges)
An ADP call for a nonsystem memory allocation

For details see the specific resource definitions below.

ioblock_list = IO {range}+
The ioblock_list parameter is a list of one or more ranges of I/O adresses. The character string IO is a keyword and must be present in a ioblock_list.

IO 3F8h - 3FBh

interrupt_list = Int {number}+
The interrupt_list parameter is a list of one or more ranges of interrupt levels that are used concurrently. The character string Int is a keyword and must be present in a interrupt_list.

Int 3 4

arb_list = Arb {shared_arb} {number}+
The arb_list parameter is a list of one or more arbitration levels that are used concurrently. The character string Arb is a keyword and must be present in a arb_list.

Arb 1

shared_arb = SharedArb
The character string SharedArb is the keyword and indicates that, in a controlled environment, the arbitration levels in the named_item parameter can be shared with the arbitration level of other devices that support sharing of arbitration levels.

Arb SharedArb 1

memaddr_list = Mem {range}+
The memaddr_list parameter is a list of one or more ranges of RAM or ROM addresses. The character string Mem is a keyword and must be present in a memaddr_list. This keyword is used to allocate the memory address space in the hex 000C0000 through hex 000DFFFF and the nonsystem memory above 1MB. Include the address for each Choice in the choice_name field so that the address is also displayed during Change Configuration.

Mem 0CC000h - 0CDFFFh 0E00000 - 0EFFFFFh

Note: Because of the limited space available, each adapter should limit the address space used in segments 0C000 and 0D000 to 16KB.

exec_adp = Exec
The exec_adp parameter is required for adapters containing nonsystem memory that can be initialized by an ADP. The character string Exec is the keyword that defines the ADP and should be the last Choice in the list of named_choices.
The Exec keyword indicates to the Set Configuration program that the adapter has an ADP.


Note: This keyword requires an ADP !

address_width = Address 24 | 32
The address_width field specifies the number of address bits supported by the adapter, 24 or 32 bits. The character string Address is the keyword and the default size is 24

Address 32

programmed_I/O = PIO
The programmed_I/O parameter is used to specify whether an adapter includes address bits 24 through 31 in its address decode. If this parameter is not specified, the adapter does respond to these address bits.


Note: A device is address limited if the ADF does not have the PIO parameter and the slot or the adapter is address limited.

begin_device = Begin
{device} {rs422} {DMA_not_used}
{named_item | input_item}*
The begin_device parameter is optional and is used to define a device block on an adapter. A device block is a series of items that define POS settings for lor like devices on an adapter, but are not associated with any other device that might be on the adapter.

device = Device device_id {implement_id {revision_level}}
{device} {rs422} {DMA_not_used}
{named_item | input_item}*
The device parameter is optional and defines the device types in ABIOS for the individual devices on an adapter or the system board.
The character string Device is the keyword. The device_id parameter is the ABIOS device ID, which is described in the IBM Personal System /2 and Personal Computer BIOS Interface Technical Reference.

The implement_id parameter is the implementation identifier, and the revision_level parameter is the implementation revision level.
The implementation identifier and revision level are optional and default to 0 if not specified; however, the revision level cannot be specified without the implementation identifier.

Device 2 1

rs422 = RS422
The rs422 parameter is optional, and indicates that the serial device uses a RS422-type interface. The character string rs422 is the keyword.


DMA_not_used = NoDMA
The DMA_not_used parameter indicates that arbitration levels for the named_items within the begin_device do not require a DMA channel. The character string NoDMA is the keyword.
If this parameter is specified, the Set Configuration program does not indicate that a DMA channel is required when an arbitration level is used. If this parameter is not specified, the Set Configuration program indicates that a DMA channel is required when an arbitration level is used


Note : Bus masters should use the NoDMA keyword.

range = number - number

number = [0-9]+ {d} | [0-9 a-f]+ h | [0-9 A-F]+ H

string = " [any ascii except for (") ]+ "
The string field is a set of ASCII characters beginning with a double quote (") and ending with a double quote.

"This is the I/O Port of the host adapter.  Conflicting
 assignments are marked with an asterisk and must be
 changed to use the host adapter. (Default 330h)"

Are you ready for the next chapter ?

IBM and MicroChannel are Trademarks of International Business Machines Corp. (USA)

Go to MCA-Index
Visit my Homepage

© 1998 by Peter H. Wendt / pw-software production