Ich hatte eigentlich etwas anderes in den diversen C16-PDFs gesucht, aber es brachte mich auch die Idee: warum eigentlich kein DMA mit dem C16 oder Plus/4 ?
Beim C64 hat man eine DMA-Leitung am Expansionsport. Das ist aber eigentlich kein Hexenwerk, dort wird einfach das DMA-Einganssignal mit AEC logisch (AND) verknüpft. Sobald DMA=0 ist kann AEC nicht mehr High werden (Adressbus High-Z). Dazu braucht man dann natürlich noch PHI, BA und R/W wenn man mit dem Datenbus etwas machen möchte. Im 6510 Datenblatt wird sogar kurz erwähnt, dass AEC speziell für DMA vorgesehen ist.
Die 75 oder 8501 CPU hat diesen AEC-Eingang natürlich auch. Da fehlt dann das Gatter des 7408 (AND) um die Leitung DMA nennen zu können.
Wir machen also folgendes:
Warten auf BA = 1 und PHI= 1 (?), R/W =0 (Lesen) ... die CPU ist dran
AEC = 0 und für im Moment nicht bekannte Zyklen kann man auf den Daten- und Adressbus zugreifen
BA = 0 ... der TED ist dran
Mir geht es jetzt nicht um den wahrscheinlich nicht ganz richtig formulierten Zugriff. War jetzt nur mal so aus dem Stand.
Aber ist es theoretisch machbar oder übersehe ich da etwas ?