Copy Link
Add to Bookmark
Report

38400 bps für jeden Atari ST/STE

atari's profile picture
Published in 
atari
 · 30 Nov 2020
38400 bps für jeden Atari ST/STE
Pin it

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 verschiedenen 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

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT