Home XHDI - eXtended HardDisk Interface (Version 1.30)XHDI - eXtended HardDisk Interface (Version 1.30) XHDI terminologyXHDI terminology Recommended partition typesRecommended partition types

H.3 Arbitration

For device drivers which support SCSI arbitration, the machine needs an own SCSI device number which must be unique and shouldn't be stored on disk. Atari has reserved byte 16 in the non-volatile memory (NVRAM) of the Atari TT030 and Falcon030 computers. Bit assignments:

Bit 0..2: Device number
Bit 7: Arbitration on (1) or off (0)

The current arbitration number could be inquired this way:

WORD arbitration_id (VOID)
{
   LONG ret = EINVFN;
   UBYTE nvmdata = 0;
   OSHEADER *Sys;
   LONG oldstack = Super(0L);
   Sys = *_sysbase;
   Super((VOID *)oldstack);

   host_id = -1;   /* no arbitration by default */

   if (Sys->os_version >= 0x300)
      ret = NVMaccess (0, 16, (WORD) sizeof (nvmdata), &nvmdata);

   if (ret == E_OK && (nvmdata & 0x80))
      host_id = nvmdata & 7;

   return host_id;
}

See also: XHDI specification   SCSI specification   About the GEMDOS   About the BIOS


Home XHDI - eXtended HardDisk Interface (Version 1.30)XHDI - eXtended HardDisk Interface (Version 1.30) XHDI terminologyXHDI terminology Recommended partition typesRecommended partition types