Можливості відладчика AFD дозволяють контролювати обладнання пам'яті, контролерів зовнішніх пристроїв і самих зовнішніх пристроїв. У складі відладчика є підпрограми, що запускаються на виконання командами відладчика, які можуть бути застосовані для визначення стану контролерів зовнішніх пристроїв і доступності їх портів введення-виведення. За допомогою відладчика можна створювати і використовувати програми, без яких неможливо добратися до причини несправності.
Для грамотної роботи з отладчиком "AFD" і використання всіх його потенційних можливостей звичайно необхідна відповідна теоретична і практична підготовка, якої і присвячена початкова частина даної статті. Ця інформація буде корисна в багатьох ситуаціях ремонту комп'ютерної техніки.
Програмно-керований введення / виведення DMA
Зовнішні пристрої підключаються до системного інтерфейсу через спеціальні пристрої - контролери (адаптери). Кожен контролер має в своєму складі ряд програмно доступних регістрів (як мінімум має хоча б регістр даних, регістр стану і регістр управління).
Кожен контролер має свій набір команд. Отримавши, через свої регістри, команду від виконує програму введення-виведення процесора, контролер відпрацьовує команду автономно, керуючи зовнішнім пристроєм через малий інтерфейс між пристроєм і контролером. Контролер, відпрацьовуючи прийняту від процесора команду, пересилає в зовнішній пристрій свої команди, дані і читає з пристрою стану. Крім того, контролер може виконувати ряд допоміжних апаратних функцій, ініційованих апаратними сигналами, або записом керуючої інформації в його програмно-доступний регістр (наприклад, "скидання" за сигналом RESET, або включення процесу самодіагностики жорсткого диска). Існують прості контролери і більш складні (інтелектуальні) контролери, які виконують більш складні апаратні функції і команди.
Процесор можна керувати за допомогою, виконуючи відповідну програму введення / виведення, де він за допомогою команд IN. OUT (читання порту, запис в порт) здійснює доступ до програмно-доступним регістрів контролера. Наприклад, в регістр управління процесор записує команду, з регістра стану читає інформацію про стан пристрою і контролера, в регістр даних записує виведені на пристрій дані, або читає з регістра даних зчитується з пристрою інформацію.