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