Wie berechnet man den Pokey-Divisor für eine bestimmte Sio Geschwindigkeit ?
Vor über 30 Jahren hat Ralf/ NORTOBOR einen Treiber für die elektronische Schreibmaschine Erika S30004 (jenseits der Elbe unter anderem Namen verkauft...) programmiert, der die Erika über den PIA/ Joyport anspricht. Das funktioniert auch seitdem tadellos.
Nun wollten wir versuchen den Treiber umzuschreiben um die Erika "ATARI konform" über die Sio-Schnittstelle anzusprechen. Dazu benötigen wir aber zunächst ersteinmal eine Baudrate von 1200 Bd.
Einige Hinweise zum Einstellen der Baudrate haben wir schon gefunden, sind aber ohne die Grundlagen dennoch nicht weiter gekommen. Im ProfiBuch steht etwas über die Sound-Programmierung des Pokey's, im Altirra Hardware-Manual stehen Hinweise zu $D204ff aber nur für die höheren Baudraten und schließlich gibt einen Beitrag im Mag 102 wo die Sio und das Protokoll in Bezug auf die Kommunikation mit Disk-Laufwerken (+ Turbo) beschrieben ist.
Auch konnte ich mit einem Tape-Kopierer (Translater 1.2 [1987 by SVUS]) die Werte für die doppelte Tape-Baudrate auslesen. Das wäre das, was wir benötigen. $D204ff: CF A0 02 A8 28 C0, wobei $D204 im Bereich von $C8 bis $D8 pendelt. Was beim Tape-Input verständlich ist.
Unsere grundlegende Frage ist nun, wie berechnet man den Poke-Div/ die Sio-Baudrate und welche Pokey-Register sind dabei ($D204/6 +??) ggf noch zu beachten



dl7ukk