Ja tam nie zabardzo kojarzę, czy /ACK da się w ogóle odczytać, ale na pewno w momencie gdy stan na /ACK zmienia się z wysokiego na niski jest generowane przerwanie (o ile jest włączone :) )
To opóźnienie jest w 'x051 potrzebne podczas programowania - impuls na wejściu /PROG musi mieć długość pomiędzy 1 a 110 mikrosekund, jak będzie dłuższy to można Flasha sfajczyć

, ale mój pierwszy programator miał opóźnienie 20ms na Delay(1) i działało :D
A teraz to miałem rebus niesamowity, bo mam z lekka port nadpalony - nie działa linia D0, na /STROBE pojawiają się impulsy nawet jak zapisuję coś na linie POUT, /BUSY, czy SEL :D
Musiałem zrobić odczyt szeregowo, a jedyne co się do tego nadawało to 74151 i w dodatku tylko w standardowej wersji TTL, to jeszcze musiałem do wyjść 4094 podpiąć bufor na 74373 (albo '245, ale '373 się szybciej znalazł :) )
Też mam zamiar się AVR-ami zająć, ale to później i od razu z grubej rury - ATmega :)
Moje cudo(?):
http://shogoonn.w.interia.pl/programator.jpg
hardcore rządzi
Nie wiem nawet, czy opłaca się do tego płytkę robić :D chyba sobie zrobie na procku programator taki bardziej uniwersalny i na łączu szeregowym.
W parallel.device masz taki "mechanizm", że sterownik będzie automatycznie odczytywał dane z D0-D7 na opadającym zboczu na /ACK i potem wygeneruje ujemny impuls na /STROBE
Albo odwrotnie - zapisuje dane z bufora na port, CIA generuje ujemny impuls na /STROBE i czeka na opadające zbocze na /ACK.
Jest jeszcze jakaś wersja komunikacji bez handshaking'u, przy otwieraniu parallel.device trzeba jakąś flagę z FAST w nazwie podać. Działa chyba jakoś tak, że komputer wysyła dane dopóki na linii BUSY jest stan niski, albo wysoki (nie pamiętam) i w momencie zmiany stanu przestaje, ale odbiorca musi być w stanie zmienić stan linii w ciągu 3mikrosekund o odebrania ostatniej danej, nie wiem, czy to działaaa teżdrugą stronę.
Ale do komunikacji z prgramtorem parallel.device jest raczej mało przydatny, łatwiej chyba hardware'owo.
Się tak zastanawiam, bo na ami brakuje jakiegoś fajnego języka wysokiego poziomu dla mikrokontrolerów, aż czasem mam ochotę to zmienić.
Myślałem nad jakimś BASICiem, ale bardziej zbliżonym do C :D tak, żeby się wszystko dało zrobić bez paprania jak w BASCOMie