VMS Help  —  RTL Routines, LIB$  LIB$FFx
    The Find First Clear or Set Bit routines search the field
    specified by the start position, size, and base for the first
    clear or set bit. LIB$FFC and LIB$FFS make the VAX FFC and VAX
    FFS instructions available as callable routines.

    Format

      LIB$FFC  position ,size ,base ,find-position

      LIB$FFS  position ,size ,base ,find-position

1  –  Returns

    OpenVMS usage:cond_value
    type:         longword (unsigned)
    access:       write only
    mechanism:    by value

2  –  Arguments

 position

    OpenVMS usage:longword_signed
    type:         longword integer (signed)
    access:       read only
    mechanism:    by reference

    Starting position, relative to the base address, of the bit field
    to be searched by LIB$FFx. The position argument is the address
    of a signed longword integer containing the starting position.

 size

    OpenVMS usage:byte_unsigned
    type:         byte (unsigned)
    access:       read only
    mechanism:    by reference

    Number of bits to be searched by LIB$FFx. The size argument is
    the address of an unsigned byte containing the size of the bit
    field to be searched. The maximum size is 32 bits.

 base

    OpenVMS usage:address
    type:         longword (unsigned)
    access:       read only
    mechanism:    by reference

    The base argument is the address of the bit field that LIB$FFx
    searches.

 find-position

    OpenVMS usage:longword_signed
    type:         longword integer (signed)
    access:       write only
    mechanism:    by reference

    Bit position of the first bit in the specified state (clear or
    set), relative to the base address. The find-position argument
    is the address of a signed longword integer into which LIB$FFC
    writes the position of the first clear bit and into which LIB$FFS
    writes the position of the first set bit.
Close Help