Üdvözletem!
Ha jól értelmeztem a a leírást, akkor te a TCBM interfész CN3 csatlakozója és a "drive shema" P1 csatlakozója közti kommunikációt írtad le. Ezt tudtam értelmezni folyamatábra nélkül is, és köszönet a részletes leírásért is. A Plus/4-es romlista c.könyvemben én is visszakövetem majd a folyamatokat.
De mi van ha egy külön meghajtót szeretnék fejleszteni (ami elméletben nagyon megy, csak a prog. háttér hiányzik, habár lelkes forgatója vagyok a Plus/4 gépi programozási könyveknek) és nincs TCBM padle a közelben. Akkor miként módosul a kommunikáció?
A ROM ezt az ellenőrzést ($EDA9-en kezdődő rutin) úgy valósítja meg, hogy kiír $55-öt a TCBM adatregiszterébe, (A DATA alapból kimenetre van konfigurálva, tehát ha ott van a paddle akkor kimenet, ha nincs, akkor „semmi”.) majd visszaolvasva ellenőrzi, hogy az-e. Ha nem, akkor nincs interfész, a sima sorost kell használni. Ezután még ellenőrzi a STATUS B1-et is, hogy 0-e (alapból az, ez a paddle-n belül egy ellenállással magasra van húzva, ha a meghajtó nem megy, akkor 1), ha nem, akkor sem használható a TCBM. Nem túl bonyolult, de azért elég „nyögvenyelős” megoldás. Amikor valamilyen eszköz „felcímzését” végzi a KERNAL (listen vagy talk módra), akkor hajtódik ez végre. Szerencsére a végeredményt eltárolja, a későbbiekben már ennek a tárolt állapotnak megfelelően választ a Serial vagy a TCBM mód között.
Tehát ha a fenti műveletet leszimulálom neki, mint ahogy te is tetted akkor kapok egy "virtuális paddle-t"? Vagy ahogy a fentiekben írtad és csináltad, a teljes hardvert le kell programozni?