Home Atari, Mac und PC seriell RSVE MFP-2
 

15.3.3 38400bps


38400 bps für jeden ST/STE




(c) 06.04.1991 by Jürgen Meyer

Jürgen Meyer
Karolinenstraße 15
DW-2000 Hamburg 36

MausNetz: Juergen Meyer@HH2
E-Mail : Juergen Meyer@hh2.maus.de

Diese Schaltung ist Freeware. Die private Nutzung ist gestattet. Die Verbreitung über jegliche elektronische Medien ist gestattet. Die kommerzielle Nutzung, sei es durch Abdruck in einer Publikation oder durch Einbau gegen Entgelt seitens eines Händlers oder einer Werkstatt ist verboten.

Obwohl diese Mini-Schaltung bei mir seit über einem Jahr in drei ver- schiedenen Rechnern problemlos arbeitet, sind Fehler nie auszuschließen. Ich übernehme daher keinerlei Haftung für Schäden, die durch den Einbau oder die Verwendung dieser Schaltung entstehen. Jeglicher Einbau geschieht hiermit auf eigene Verantwortung.

Bitte beachten Sie evtl. existierende Garantie- bzw. Gewährleistungs- Bestimmungen, bevor Sie Ihren Rechner mit dieser Schaltung ausrüsten. Durch diesen Eingriff werden Veränderungen vorgenommen, die jederzeit von einer befähigten Person erkannt werden können. Im Zweifelsfalle hätte dies den Verlust Ihrer Garantie- oder Gewährleistungs-Ansprüche gegenüber der Ihnen verbindlichen Person oder Firma zur Folge.

Die Mini-Schaltung besteht im Wesentlichen aus einem TTL-Chip, den 74 LS 74, welcher 2 RS-Flip-Flops enthält.

Jeder normale ST oder STE kann leider nur bis zu 19200 bps auf der seriellen Schnittstelle 'fahren'. Diese Einschränkung kommt durch die Taktrate der Timer im MFP (2,4576 MHz) zustande. Die bps-Raten- Einstellung erfolgt beim ST/STE mittels Timer D des MFP-Bausteines, der mit dieser Frequenz (2,4576 MHz) gespeist wird. Es gab mal einige Programme, die den Vorteiler für RC/TC abgeschaltet haben (wird unten erklärt), um auch 38400 und höhere bps-Raten zu ermöglichen.

Das Problem dabei ist nur, daß ohne diesen MFP-internen Vorteiler die Sychronisation nicht mehr erfolgt, so daß bei normalen, asynchronen Verbindungen alle 16, 32 oder 64 Bytes ein Störzeichen auftritt. Daher ist das Löschen des Vorteilers nicht sinnvoll.

Der Timer D wiederum wird vom TOS aus normaler Zähler programmiert. Je nachdem, welche bps-Rate man haben möchte, wird der Timer D mit entsprechenden Zählwerten programmiert und einer der möglichen Vor- teiler gesetzt. Der Timer-Ausgang, der so programmiert wird, daß er bei Erreichen des Zählers auf 0 einen Impuls abgibt, wird fest mit den RC/TC Eingängen des MFP verdrahtet, an denen die Takt- Geschwindigkeit für die Serielle Schnittstelle des MFP anliegen muß. RC (Receive Clock) und TC (Transmit Clock) werden zusammen verdrahtet. Leider hat es Atari hier versäumt, diese getrennt an- zusteuern, so wären dann unterschiedliche Empfangs- und Sende- bps-Raten möglich. Nur, wer braucht das heute noch ...

Der an RC/TC angelegte Takt wird dann immer nochmal durch 16 geteilt. Man könnte den Vorteiler abschalten und die Timer-D Register mit entsprechend höheren Zählwerten laden, aber daß führt zu Fehlzeichen bei der Übertragung.

Warum nicht einfach den Timer D mit Werten laden, die 38400 bps dann bewirken?

Wäre möglich, wenn der Systemtakt höher wäre. Der Timer D besitzt ein Daten- und ein Vorteiler-Register. Der Vorteiler ist hierbei der Knackpunkt: Die kleinste Stufe ist 1:4, diesen zweiten, Timer- spezifischen Vorteiler kann man leider nicht auf 1:1 programmieren. Somit ergibt sich folgendes, maximale Bild:

Systemtakt = 2,4576 MHz

Halt - Warum nicht statt des 2,4576 MHz-Taktes das doppelte an- schließen?!

Wäre möglich, wenn da nicht noch andere Timer wären, die auf diesen Takt fest angewiesen sind, z.B. der wichtiger Timer C, welcher für den 200 Hz-Timer des Atari genutzt wird. Wer möchte, kann ja mal einen 4,9152 MHz Quarz einsetzen, das System meldet sich dann auch, nur klingen alle Tastatur-Drücke etwas merkwürdig, und jedes Programm, daß sich auf die Genauigkeit des 200 Hz-Timer verlässt, macht, kurz gesagt, Mist ...

Weil sich der Vorteiler nur auf min. 1:4 einstellen läßt, würde selbst dann, wenn das Data-Register von Timer-D mit "1" geladen wird (also Zähler auf kleinsten Zählwert einstellen, damit er bei jedem Taktimpuls einen Zählimpuls erzeugt), würde die resultierende Frequenz 2,4576 KHz : 4 = 614,4 KHz betragen.

Aber Moment, 614,4 KHz durch 1:16 (Vorteiler für RC und TC), das sind 38,4 KHz = 38400 Hz, das ist doch genau das, was ich für 38400 bps brauche ?!?

Tja, da kommt wieder eine technische Einschränkung des MFP ins Spiel. Der Timer-D Ausgangsimpuls erzeugt bei jedem Erreichen des Zählers auf 0 nur eine Flanke, aber keine komplette Schwingung, wie auch. An RC/TC müssen aber, um 38400 bps zu ermöglichen, auch 38400*16 = 614,4 KHz anliegen. Und 1 Hz ist ja bekanntlich eine volle Schwingung.

Der Timer-D Ausgang erzeugt also nur mit jedem zweiten Zähler- Ausgangs-Impuls 1 Hz, so daß sich die oben erwähnten 614400 Zähl- Impulse noch einmal halbieren. Bleiben also maximal 307200 Zählimpulse, und daher kann der ST/STE normal auch nur maximal 19200 bps, weil 307200 durch 16 = 19200.

Was tut nun diese Schaltung?

Da wir mittels der Timer keine 38400 bps hinbekommen, muß man sich einen anderen Weg suchen. Einfach an RC/TC einen 614,4 KHz Takt einzuspeisen, geht leider auch nicht so einfach, da dieser Takt synchron zum MFP-internen Takt laufen muß. Also muß man sich die 614,4 KHz irgendwie 'beschaffen'.

Diese Mini-Schaltung macht nun folgendes: Man greift sich den Haupttakt der Timer, also 2,4576 MHz, und teilt diesen solange, bis man auf 614,4 KHz runterkommt. Und dies läßt sich sogar sehr einfach bewerkstelligen, indem man ein RS-Flip-Flop als Teiler 1:2 mißbraucht.

Der hier verwendete 74 LS 74 besitzt 2 x RS-Flip-Flops, die auch beide benötigt werden. Der erste Flip-Flop teilt den 2,4576 MHz Takt nach 1,2288 MHz runter. Der zweite Flip-Flop dann die 1,2288 MHz nach 614,4 KHz.

Und somit haben wir die gewünschten 614,4 KHz. Diese an RC/TC angeschlossen, ergibt durch den letzen, internen 1:16 Vorteiler exakt 38400 Hz, und somit 38400 bps auf der seriellen Schnittstelle.

Einbau

Den 74 LS 74 gemäß des beigelegten Bildes präperieren. In den meisten Rechnern kann man den Chip 'huckepack' auf einen in der Nähe befindlichen 14 poligen TTL-Chip setzen, somit spart man sich das Legen der Leitungen für +5 Volt und Masse.

Der mit "XTAL in" bezeichnete Anschluß wird mit Pin 18 des MFP verbunden. Am MFP muß nun Pin 16 ("TDO" = Ausgangs-Impuls des Timer D) von der Platine getrennt werden. Entweder den gesamten MFP sockeln und Pin 16 hochbiegen oder Pin 16 'in der Mitte' durchkneifen und vorsichtig hochbiegen.

Der mit "XTAL out" bezeichnete Anschluß wird nun an Pin 7 oder 10 des MFP (egal, da beide auf der Platine miteinander verbunden sind) angelötet. Das war's auch schon.

Ein 'Manko' dieser Billig-Lösung ist, daß die Serielle Schnittstelle nun, unabhängig von der Einstellung des TOS, Terminalprogrammes etc. fest mit 38400 bps läuft. Benötigt man auch mal kleinere bps-Raten, empfielt es sich, einen 1x UM-Schalter irgendwie im Gehäuse einzu- bauen. Am mittleren Anschluß des 1x UM-Schalters kommt die Leitung nach Pin 7 oder 10 des MFP. An der einen Schaltseite der durch den 74 LS 74 erzeugten 614,4 KHz Takt, an der anderen Schaltseite wird Pin 16 des MFP, welcher nun hochgebogen ist, angeschlossen. So kann mit der einen Schalterstellung auf 38400 bps fix geschaltet werden, mit der anderen Stellung auf Normalbetrieb, also Festlegung der bps-Rate durch das TOS (maximal 19200 bps).

Sollte die Länge der einzelnen Kabel mehr als 5 cm lang sein, sollte man abgeschirmte Kabel verwenden.

Eines sollte nicht verschwiegen werden: Dieser Umbau ist ja haupt- sächlich für Leute mit einem Highspeed-Modem (14400 bps oder höher) gedacht. Der Umbau zeigt sich aber nur dann wirklich effektiv, wenn man zudem auch einen Speeder wie HyperCache oder ähnlich besitzt. Ohne Speeder sind bei Nullmodem-Verbindungen so maximal 2500-2800 cps drin (Gegenseite: schneller AT), mit Speeder deutlich mehr, bis zu 3500 cps (je nach Art des Speeders). Außerdem sollte man dringend einen der erhältlichen RS232-Fixes installieren.

Ergänzung vom 19.07.1992

Wer ein Highspeed-Modem mit Telefax-Option besitzt, MUSS obigen Umbau unbedingt umschaltbar einbauen. Denn die meisten Modems, die über Telefax-Empfang und Versand verfügen, programmieren das Modem auf 2400 bps, bevor die Programme auf 9600 oder 19200 bps hochschalten. Dies ist auch aufgrund der Chipsätze einiger Modems so vorgeschrieben. Bei fix 38400 bps gibt es dann nur Fehler. Also sollte man, möchte man ein Fax empfangen oder senden, auf "Normalbetrieb" umschalten, im normalen DFÜ-Betrieb auf 38400 bps fest.

Für Mega STE Besitzer

Beim Mega STE sind die MFP's in der quadratischen PLCC-Form vorhanden. Hier müssen folgende Pins beachtet werden:

Die Leitung, die oben beschrieben ist und an Pin 7 oder 10 soll, muß beim PLCC-MFP an Pin 8 oder 11. Der Abgriff des 2,4576 MHz-Signales muß beim PLCC-MFP an Pin 20, und nicht an Pin 18 (wie beim normalem MFP, siehe oben im Text) Statt Pin 16 (TDO) hochzubiegen (normaler MFP), muß Pin 18 beim PLCC-MFP vom Sockel getrennt werden.

MfG. Jürgen Meyer


Abbildung 2 - Die 38400bps Schaltung






38400 bps for any ST/STE

This circuit is freeware. Private usage is allowed. Distribution via any electronic media is allowed. Any commercial usage is _not_ allowed.

Altough this circuit is working properly in three different machines, you can never exclude faults. Because of that i can not be responsible for any damages caused by the usage of this circuit.

This circuit consits of a TTL-chip, the 74LS74 (and a switch to choose the high baudrate).

Every ST or STE can only use 19200 bps at the serial interface. This limitation is caused by the clock-frequency of 2.4576 MHz wich is used for the MFP-timers. The baudrate is set by the timer D of the MFP. There where programs wich switched off the "divider" (sorry, i do not know the correct word for german "Vorteiler") for the RC/TC-input of the MFP.

The problem of this modification is, that the syncronization does not work any more - so that there will by errors after every 16th, 32th or 64th byte. Because of that is not recommended to switch of the "divider".

The circuit does the following: It gets the main-clock of 2.4576 MHz and divides it to produce 614.4 KHz. This may be done very simple, by using a RS-flip-flop to divide the clock by 1:4.

The 74LS74 consists of two RS-flip-flops. The first one is used to get 1.2288 MHz. The second one gets the 1.2288 and produces 614.4KHz, wich is needed for the RC/TC-input to use 38400 bps for the serial interface.

Build in

- Prepare the 74LS74 as shown in the images. [...]

- Carefully disconnect pin 16 of the MFP 68901 from the motherboard.

- Connect "XTAL in" to pin 18 of the MFP 68901.

- Connect "XTAL out" to pin 7 or pin 10 of the MFP. [...]

If you still want to use lower baudrates, you have also to build in a switch. Normaly pin 7 and 10 are connected to pin 16 of the MFP for "normal" baudrates. I hope this helps you.






Copyright © Robert Schaffner (doit@doitarchive.de)
Letzte Aktualisierung am 23. Mai 2004
Home Atari, Mac und PC seriell RSVE MFP-2