Autoconfig


Autoconfig — механизм автоматического (без необходимости установки джамперов) распределения аппаратных ресурсов для устройств расширения компьютера Amiga. Много позже, эта возможность была реализована и на других платформах (Amiga 500 с поддержкой Autoconfig появилась в 1987 г., а первая версия шины PCI появляется в 1992 г.), поддержка протокола на уровне ОС получила название Plug and Play.

В момент включения компьютера, AmigaOS последовательно опрашивает каждое подключённое устройство и выделяет ему диапазон адресов в адресном пространстве памяти компьютера. В случаях, когда устройством оказывается карта расширения памяти, AmigaOS присоединяет новую доступную память к уже существующей в системе. Также, Autoconfig поддерживает загрузку из ПЗУ.

Каждый слот расширения (а значит, и каждая карта, устанавливаемая в него) снабжена двумя сигналами: /CFGIN и /CFGOUT (символ «/» означает, что используется инверсная логика и активным уровнем сигнала является логический нуль).

Если линия /CFGOUT слота неактивна, то считается, что карта, установленная в этот слот, не настроена.

Линии /CFGIN всех слотов расширения (кроме линии /CFGIN первого слота) подтянуты к неактивному уровню. Таким образом, после включения питания считается, что все карты расширения не настроены.

Если вход карты /CFGIN активен, в выход /CFGOUT не активен, то карта «откликается» на обращения к участку памяти начинающемуся с адреса $E80000 (или $FF000000 для шины Zorro III) (своего рода аналог конфигурационного пространства на шине PCI). Иначе говоря, состояние, при котором вход карты /CFGIN активен, а выход /CFGOUT не активен, соответствует режиму конфигурации.