miniMIDImaxi
Ein universales MIDI-Interface für den C64 (zum Nachbau)
Vorgeschichte
Ursprünglich wollte ich dereinst ein MIDI-Interface (zumindest mit MIDI-Eingang) mit einem EPROM kombinieren, auf welchem sich Cynthcart befindet und damit ganz groß im Synth-Pop rauskommen. Im Handbuch zum MIDI-Interface "Model 242" von Sequential Circuits ist dankenswerterweise ein Schaltplan enthalten.
Bitte melde dich an, um diesen Anhang zu sehen.
Den oberen Teil weggelassen (CLOCK IN und START/STOP), da ich sowieso nicht wusste, wie das zu implementieren wäre, woher ich einen 6520 bekomme und diese Funktionen auch nicht wirklich benötigte. Der C64 sollte als Synth direkt an einem MIDI-Keyboard oder als Instrument in der MIDI-Kette hängen.
Heraus kam das:
Bitte melde dich an, um diesen Anhang zu sehen.
Bis auf einen kleinen, wenn auch nicht unwesentlichen Layoutfehler (/CE fürs EPROM vergessen
), der sich aber mit einer kleinen Drahtbrücke leicht beheben lässt, funktionierte das erstmal.
Allerdings nicht mit Cynthcart.
Erstens war die neueste Version gar nicht mehr als reine ROM-Variante vorgesehen (hab das Projekt bereits vor "etwas" längerer Zeit angefangen *räusper*). Da die Software inzwischen zu groß war, liegt si gepackt im EPROM und wird einfach nur ins RAM kopiert. Geht, aber irgendwie nicht das, was ich wollte bzw. erwartete (Sofortstart). Zweitens wird zumindest in den fertig kompilierten Versionen von Cynthcart nur ein DATEL(-kompatibles) Interface unterstützt, kein Sequential.
Nun denn, dann wenigstens mit anderer Software nutzen. Also ohne EPROM und "hä?! nur 30719 basic bytes?" Oh nein! Rechner defekt? Doch nicht nur ein unwesentlicher Layoutfehler? Nein. Nur /EXROM hart auf Masse gelegt, weil das Modul ja autostarten sollte. So gehts besser:
Bitte melde dich an, um diesen Anhang zu sehen.
Nun ist /EXROM immerhin schaltbar.
Funktioniert (als Sequential) - dennoch unbefriedigend in der Gesamtsituation.
Also wieder/weiter gegooglet. Neben allerlei Bauvorschlägen und Bildern von DATEL-Originalen und Klonen und kurz vor der Aufgabe und dem Kauf eines Bitte melde dich an, um diesen Link zu sehen., stieß ich bei Bitte melde dich an, um diesen Link zu sehen. auf ein Textfile namens C64MIDI-INTERFACE.TXT (unter documents/projects/other), in dem ein gewisser Frank Prindle (war schon rege im ARPAnet zum Thema C64 aktiv!) im Jahre 1989 ein universelles MIDI-Interface beschreibt, dass neben DATEL auch Passport und Sequential Standards kann. Inkl. Schaltplan als ASCII-Text, aber auch als Postscript. Das wär's doch! Umgewandelt sieht das so aus:
Bitte melde dich an, um diesen Anhang zu sehen.
Die Auswahl des jeweiligen Interface-Standards erfolgt, soweit ich das verstehe, indem man in eine IC-Fassung eine weitere IC-Fassung einsetzt, deren Pins in bestimmter Weise verschaltet sind, so dass die Verbindungen der Adress-, CS- und sonstigen Leitungen entsprechend hergestellt werden. Also ein Mehrfach-Jumper-Block-Dingens je Interface-Typ. Ich hab es eine Weile versucht nachzuvollziehen, aber ganz ohne Bild hab ich's nicht hinbekommen. Da ich auch ein paar andere Bauteile und Details der Schaltung ersetzen bzw. ändern wollte, hab ich es etwas umgestrickt.
Umsetzung
Als Optokoppler is statt dem PC900 ein 6N138 verbaut. Beschaltung ist minimal anders, Prinzip und Funktionsweise sind exakt gleich. Statt dem "diskreten" Oszillator hatte ich aus Platzgründen, der Einfachheit und der relativ guten Beschaffbarkeit halber einen Quarzoszillator im DIL-Gehäuse vorgesehen. Und statt inzwischen obskurer LS366 und LS293 kommen 74xx14 als Inverter bzw. 74xx74 als Taktteiler zum Einsatz. Den LS30 wollte ich eigentlich auch noch ersetzen, weil der ebenfalls eher schlecht zu bekommen ist, aber das war mir auch wieder zu aufwendig. Kessler hatte zumindest damals noch welche und HCT30 hatte ich auch noch irgendwoher (vermtl. Reichelt). Also hab ich es so gelassen. Hab leider keinen neuen Schaltplan erstellt, aber fertig sieht das so aus:
Bitte melde dich an, um diesen Anhang zu sehen.
War auch schon mal Bitte melde dich an, um diesen Link zu sehen. zu sehen.
Statt einem Multi-Jumper gibt es 5 einzelne. Die legen die CS-Leitungen und R/W vom C64 zum 6850 und die Taktfrequenz des selbigen fest. Die übrigen Inverter können einen gepufferten und somit spezifikationskonformen MIDI-THRU und (optional) Aktivitäts-LEDs für MIDI-IN und MIDI-OUT zur Verfügung stellen.
Statt der 5-Pin-DIN-Buchsen sind 3.5mm-Klinkenbuchsen verbaut. Das spart Platz ist relativ klein (das "mini" im Namen kommt von "mini jacks") und entspricht den aktuellen MIDI 2.0 Hardware Spezifikationen als "TRS MIDI A". (s.a. midi.org)
Natürlich(!) hat sich auch hier ein kleiner Fehler ins Layout eingeschlichen. Der 5V-Anschluss für den Optokoppler ist auf der falschen Seite. Eine kleine Drahtbrücke schafft Abhilfe und ist im eingebauten Zustand nicht mal zu sehen. Der falsch unter Spannung gesetzte Pin des 6N138 ist intern nicht belegt.
Vorgesehen war die Platine für die Modulgehäuse von icomp, die es aber wohl auch nicht mehr gibt...? ![]()
Bitte melde dich an, um diesen Anhang zu sehen.
Die Klinkenbuchse sind im Abstand von 17mm zueinander. So hatte ich die vorbereiteten Löcher in den Gehäusen vermessen. Gibt es für die Gehäuse eigentlich Maßzeichnungen? Wär ganz praktisch, ist aber vielleicht auch nicht mehr nötig...
Die LEDs sind frei platzierbar und ich würde sie in der Nähe der entsprechenden Buchsen ins Gehäuse kleben, nach oben oder nach vorn, und dann per Kabel anschließen.
Wer all seinen Mut zusammennimmt und die ICs direkt einlötet, bekommt das Interface auch in in einem original Commodore-Gehäuse unter:
Bitte melde dich an, um diesen Anhang zu sehen.
Leider sind diese Gehäuse ein paar Millimeter länger (jedenfalls Abstand Schraubenloch-Oberkante), so dass die Buchsen nicht bündig abschließen.
Bitte melde dich an, um diesen Anhang zu sehen. Bitte melde dich an, um diesen Anhang zu sehen.
Also entweder Stecker in "slim" verwenden oder die Löcher so groß bohren, dass das Steckergäuse mit rein passt.
Bei den icomps enden die Buchsen außerhalb. Da passen dann auch dickere Stecker.
Bitte melde dich an, um diesen Anhang zu sehen.