Hardware

Uwe Nickel hat einen modernen Tiny mit XILINX und einem Propeller-Chip zu einem Tiny 2012 ausgebaut: Mit 512K RAM, 128K ROM, USB, VGA, Audio, PS/2 Maus und Tastatur.

http://hive-project.de/board/viewtopic.php?f=24&t=554 Unterlagen etc.

http://picasaweb.google.com/unick59 Bilder

E. Mueller

Hier gibt es Informationen für TINY-Selbstbauer von E. Mueller, sowie aus dem Robotrontechnik-Forum und anderen Quellen. Vielen Dank an E. Mueller!

jute_2008.jpg

Der „JUTE 2007“ entspricht in Größe und Layout dem originalen TINY. Die Schaltung wurde gegenüber dem Original leicht verändert: Die zwei D195 wurden gegen einen LS165, der DS8212 gegen einen LS373 getauscht. Die nötigen Inverter befinden sich im LS04, der früher ein D100 war. Die Stromversorgung wurde komplett überarbeitet, es kommt jetzt ein 7805 zum Einsatz. Tastaturanschluss, Tor 2 und 3 sind auf Pfostenleisten gelegt und der UHF-Modulator inklusive Umkehrstufe sind auf der Platine integriert. Die neue Leiterplatte ist bereits für den Einsatz des 32k/32k Moduls vorbereitet (es müssen nur noch Brücken umgesteckt und der LS138 (DS8205) durch einen Adapter ersetzt werden. Wenn man LS oder besser HCT Typen einsetzt, reicht ein kleiner Kühlkörper am 7805 völlig aus.

Bei der konsequenten Verwendung von HCT-Bauteilen im JUTE2007, sollte der Widerstand am Ausgang des 74HCT165 erhöht werden. Beim Prototypen wurde ein Wert von 6,2k ausgemessen, um das Bild zu stabilisieren.

Sprint-Layout + Stromlaufplan

tiny2009_v3.jpg tiny2009-es23-aufsatz.jpg

2009 lief das Projekt TINY2009 http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=4230. Es geht um eine verkleinerte Variante des JU+TE Computers inklusive 32K/32K RAM/ROM und Videoteil, geeignet für das 2K- und 4K Betriebssystem. Der RAM ist ein 62256 von alten 486 Mainboards (Cache RAM). Siehe auch Tiny bei Peter Sieg und Tiny bei J. Felgentreu. Als Prozessor kann neben dem U883 auch ein Zilog Z86C93 zum Einsatz kommen.

Der Eprom ist folgendermaßen programmiert:

0000-07FF Basic,
0800-0FFF 4K ROM Teil1,
2000-27FF 4K ROM Teil2.

Bei Peter Sieg gibt es einen erweiterten ROM mit FORTH, BASIC-Programmen etc.

Zum TINY2009 gibt es einen Aufsatz für das Betriebssystem ES2.3 http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=5310. Die Schaltung von Harun Scheutzow aus der ES2.3-Dokumentation wurde 1:1 umgesetzt.

Der '74 entfällt, den '30 steckt man um. Zusätzlich ist noch ein '299 erforderlich. Der gelbe Draht wird auf der Hauptplatine mit P37 verbunden und fertig.

Zum Download gibt es das Layout im Sprint5-Format.

jute_u884_1.jpg

„Ich hatte Anfang 2007 einen JUTE auf Basis eines U884 gebaut (siehe Bild). Er basierte im Wesentlichen auf der von mir bereits im Elektor Sonderheft beschriebenen Rechnerplatine und einem Baugruppenträger. Auf diesem befanden sich Grafikkarte und Steckplätze für 2 Module. Das TINY-Basic und der erste Teil des 4K Betriebssystems saßen im internen ROM-Bereich des U884. Der zweite Teil des BS, zusammen mit 8K dem RAM auf dem ersten Steckplatz.“

jute_8xu224.jpg

„Bereits in 2006 habe ich ein Speichermodul für 4K RAM für den Einsatz von U224 bzw. U214 entworfen und gebaut. Es war vorgesehen, die Karte mit einer Huckepackplatine um 4K RAM oder ROM zu erweitern. Dazu ist es nie gekommen, weil ich dieses Konzept aufgrund des doch recht hohen Stromverbrauchs wieder „verworfen“ habe. Von diesen Karten existieren nur 2 Stück.“

Sprint-Layout

Dieses Modul realisiert den maximalen Speicherausbau für RAM und ROM, der sonst auf 4 Module verteilt ist, in einer Baugruppe.

  • 32KB RAM
  • 32KB ROM (nicht vollständig nutzbar)
  • Speicherauswahllogik auf dem Modul
  • Erforderlich sind aber (geringe) Änderungen an der JU+TE Hauptplatine (Der überflüssig gewordene DS8205 wird entfernt und neu „verdrahtet“, „Missbrauch“ der Versorgungsleitungen U1 und U2, s. Unterlagen)

Unterlagen: jute_32k.zip Aufbauhinweise: 2x32k Speicher

vp_tiny4.jpg

Die Tastatur ist eine 99 Cent-Laptop-Tastatur aus dem Soderangebot von Pollin. Und wie schließt man so eine 8×16-Tastatur sinnvoll an eine 4×15-Matrix an? Angesteuert wird eine 8×7-Matrix mittels 74×257 und 74×138. Details sind in den Unterlagen ausführlich beschrieben und auch auf andere Tastaturen anwendbar. Auf Mein Tiny gibt es weitere Infos.

Unterlagen jute_tastatur.zip

tastatur_12x4_4k.jpg

Von E. Müller gibt es ein Layout für eine einseitige Leiterplatte für eine originale 12×4-Matrix und 15:1-Dekoder.

Sprint-Layout tastatur_12x4.zip

jute_ps2_anschluss.jpg

PS2-Adapter für den JU+TE. Der PS2-Adapter arbeitet mit einem kleinen Microcontroller PIC16F628. Das Programm des Controllers setzt die PS2-Tastendrücke in simulierte Tastendrücke der originalen Tastaturmatrix des TINY um, so dass am TINY selbst keine Änderungen nötig sind.

Unterlagen ps2-anschluss.zip

Hinweis: beim PIC muss der Takt auf intern programmiert werden!

Anstelle des Kassetteninterfaces hat E. Mueller ein recht komfortables Programm zum Hin- und Herkopieren von Speicherbereichen zwischen PC und JUTE im Einsatz.

„Da ich die JUTE2007-Platine und das 32k/32k Modul benutze, bleibt z.Zt. nur die Kommunikation über TOR2 und den LPT-Anschluß am PC. Es besteht zwar die Möglichkeit über Platz 4 den nicht genutzten Speicherbereich der Tastatur zu nutzen, dies erfordert aber den Einsatz einer speziellen (noch zu entwickelnden) Karte mit Adresslogik. Diese Möglichkeit habe ich für universelle Anwendungszwecke, z.B. zur TOR-Erweiterung, zum Einsatz einer so genannten „Flashrom“-Karte usw. eingebaut…Im PC-seitigen Programm gab es Probleme hinsichtlich des Laufzeitverhaltens beim Empfangen von Daten in der VB6-Anwendung. Das Problem wurde durch Geschwindigkeitsreduktion weitestgehend behoben. Eine Restunsicherheit (bedingt durch äußere Einflüsse) bleibt jedoch, da „blind“ (also ohne jegliche Fehlerkontrolle) gesendet und empfangen wird. Für den Hobbyisten allemal ausreichend.“

Download jutet2verb.zip

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1795

Der EPROMMER basiert auf der originalen Schaltung von H. Hoyer, wurde aber in mehreren Punkten verbessert:

  • Schaltungsänderung Auslesen der Eproms ohne Anliegen der VPP
  • Schaltungsänderung für Programm „Schnellbrenner“
  • Schaltungsänderung zum Brennen von 2732
  • 25 polige SUB-D Stiftleiste anstatt der Lötstifte (für Anschluss an PC)

brenner1.jpg brenner4.jpg

2014 gab es eine verbesserte Neuauflage dieses Projekts

  • variable Bestückung SMD-ICs oder DIL-ICs
  • Kippschalter
  • ???

s.a. http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=10348

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1825

Mit den Pollin UHF-Modulatoren hatte ich massive Probleme, zum einen, weil ich keine 2 Spannungen (5 und 12V) wollte, zum anderen, weil die Modulatoren zum Teil +33V und -33V wollten. Ich habe mir dann einen bei Conrad (Bestell-Nr. 192791) geholt (der braucht nur +5V und hat ein eingebautes Testbild), das gleiche Modell gibts auch bei Reichelt (Bestell-Nr. UHF Modulator). Kostet etwa 10 Euro und hat sich bewährt.

Der Videoteil ist auf Seite 30 der V.P.-Doku abgebildet und Bestandteil der Platine für die Kassettenschnittstelle. Die Werte passen soweit, lediglich der 680 Ohm Widerstand zwischen +5V und dem Kollektor des SC238 sollte als 1,5kOhm Einstellregler ausgeführt werden, damit lässt sich dann ein sauberes Bild einstellen. Der Kondensator am Ausgang des DL030 sollte auf 15pF und der Widerstand am Ausgang des D195 auf 1,5kOhm erniedrigt werden.

Sofern der Rest der Schaltung funktioniert, sollte man damit ein Bild hinbekommen.

Bei der konsequenten Verwendung von HCT-Bauteilen im JUTE2007 sollte der Widerstand am Ausgang des 74HCT165 erhöht werden. Beim Prototypen wurde ein Wert von 6,2k ausgemessen, um das Bild zu stabilisieren.

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1765

beim Ansteuern des Tor 2 zur Datenausgabe (siehe Doku Teil 2, Seite 8 von Volker Pohlers) reicht es nicht aus, das Betriebsarten-Register P2M (%F6) mit „0“ zu belegen. Ferner muss Bit D0 im Register P3M (%F7) auf „1“ gesetzt werden.

ist der Zonk im Tor 2 ?
Bei der schwindenden Verfügbarkeit der EMR würde ich pull up's dem P3M bit0=1 vorziehen…
0 and 1 ist übrigens immer noch 0

Auf der Platine des JU+TE ist leider kein Platz für Widerstände, die den Pegel nach +5V ziehen könnten. In der Doku wird auch auf diese Möglichkeit hingewiesen. Ich betreibe seit geraumer Zeit eine Aquariumsteuerung auf diese Weise, bisher gab's noch keine schmackhafte Fischsuppe.

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1766

Das Programm kann an beliebiger Stelle im RAM/ROM stehen, muss aber für jede gewünschte Startadresse neu übersetzt werden. In diesem Fall startet es ab Adresse %4000, also aus dem ROM auf Platz 3.

Download kopieren.zip

speichertest.jpg

Getestet wird der Arbeitsspeicher (RAM) von %8000 bis %FBFF. Der Speichertest arbeitet „zerstörungsfrei“. Bei fehlerhaftem oder fehlendem Speicher wartet das Programm vor dem Verlassen auf Bestätigung. Fehlender Speicher wird als „FEHLER!“ gekennzeichnet.

Download speichertest.zip

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1764

Beim Einsatz vom 8K RAM's des Typs MHS HM3E-65664S-5 aus Pollin-Schüttguttüten kann es beim Eingeben von BASIC Programmen zu „Erscheinungen“ kommen. Das äußerst sich z.B. im Entpixeln des Bildes, einem weißen Klotz anstatt eines A- oder K-Kursors und dem Auftreten von Wartezeiten nach Eingabe der Zeilennummer. Vermutlich leiden die RAM's leicht an Arterienverkalkung und müssen „durchgepustet“ werden, denn das Initialisieren des gesamten Speichers schafft Abhilfe.

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1761

Ich habe die Speicher-Platine (RAM) um folgende Schaltung erweitert:

speicher_c_2007.jpg

Schaltung

                 +-----+
              +--|     |
              |  |  &  |
CSA ----------*  |     0----+
              |  |     |    |   
              +--|     |    |
                 +-----+    |                Lesen
                            |      +-----+      
                            *------|     |      ^^
                            |      |  &  |     //      
                            |      |     0----|<|----+
                            |      |     |           |
        +-------------------|------|     |           |
        |                   |      +-----+           |   +------+
        |                   |              Schreiben *---| R 50 |---O +5V
        |                   |      +-----+           |   +------+
        |                   +------|     |      ^^   |
        |        +-----+           |  &  |     //    |
        |     +--|     |           |     0----|<|----+
        |     |  |  &  |           |     |
R/W ----*-----*  |     0-----------|     |
              |  |     |           +-----+
              +--|     |
                 +-----+ 

Bauteilmäßig benötigt man 1xDL000 (74LS00), 2xLED's und einen Widerstand.

Folgende Erfahrungen habe ich damit gemacht:

Die Schaltung ist für den Einsatz auf Platz 1 nur bedingt geeignet, weil beide LED's leuchten (die Lese-LED heller), da im Systemkilo (Bildwiederholspeicher) ständig etwas passiert. Auf Platz 2-4 leuchten die LED's nur, wenn tatsächlich gelesen oder geschrieben wird. Einzelne Lese- oder Schreibzugriffe werden nicht sichtbar, da das Auge zu träge ist. Gut sichtbar sind dagegen alle Zugriffe, die permanent im Speicher herumfuhrwerken, allerdings nur in Maschinensprache, für BASIC Programme gilt das Gleiche, wie für Einzelzugriffe. Zum Testen der Leseanzeige kann man die Startadresse des BASIC RAM auf das entsprechende Modul (z.B. %C000 für Platz 2) legen, ein kleines Programm schreiben (z.B. 10 GOTO 10) und starten. Zum Test der Schreibanzeige reicht das Initialisieren des RAM (I, Shift+1) aus dem Hauptmenü.

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1652

das Original-Betriebssystem ist so aufgebaut, dass es auf 2 getrennten Speicherbereichen basiert. Diese werden aufgrund der CS-Selektierung der Adressleitungen A13-A15 auf den Steckplätzen 1 und 2 erwartet.

Modul 1:/CS0: %0800…%1FFF (EPROM1), /CS7: %E000…%FFFF (RAM)
Modul 2:/CS1: %2000…%3FFF (EPROM2), /CS6: %C000…%DFFF
Modul 3:/CS2: %4000…%5FFF, /CS5: %A000…%BFFF
Modul 4:/CS3: %6000…%7FFF, /CS4: %8000…%9FFF

D.h., die CS-Selektierung auf dem Board müsste geändert werden, dann reicht vielleicht auch 1 Modul.

Das ganze kannst du mit paar Gattern lösen und damit das /CS und die Adresse 12,
welche dann auf die nächsten 2k zugreift, schalten kannst. Wenn du eine Schaltungsunterlage hast, dann könnte ich dir das schnell zusammenschießen.

Natürlich musst du auch die Abweichung der Pinbelegung beachten. Ein 2732 würde ja auch bei 4k reichen. 2764 ist ja nur halb ausgelastet.

http://robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=1238

deichgraf: habe das Basisboard „geeagelt“. es handelt sich um das in der von Volker Pohlers aufgearbeiteten Doku in teil 1 abgebildete Originalboard. Nur anstelle des Kupfers habe ich ein Experimentierfeld im rm 2,54 eingefügt

volkerp: Besser wäre meines Erachtens eine leicht geänderte Variante für die 4K-Version, wie sie auch im Buch beschrieben ist.
Die Steckplätze sind aus heutiger Sicht nicht unbedingt sinnvoll gestaltet und könnten komplett entfallen; vielleicht noch einen für Druckeranschluss etc. lassen. Auch reicht ein Ausbau von 8K (bzw. sogar 2K) ROM und 4K ROM vollkommen aus. Sinnvoll wären Kassetteninterface und FBAS/Chinch-Anschluss gleich auf der Platine mit drauf. Evtl. auch ein Tastaturdekoder. Das spart 4 kleine weitere Leiterplatten, die in jedem Fall gebraucht werden.

Noch mal meine Meinung - ich finde die 4K-Version ausreichend und relativ kompatibel. Die ES4.0-Version für Vollgrafik, hat andere Befehle, das Basic ist leicht anders, ein anderes Kassettenformat etc. und ist eigentlich eine Art TINY 2.0. Wer den klassischen in der JU+TE beschriebenen TINY haben will, dem kann ich nur die 4K-Version empfehlen.
Eine Buch-Tiny-Platine sollte möglichst zusätzlich umfassen: Speicher B oder C, und Speicher D, und E/A-Platine (Tonband + Video). Ebenso sollten eine DIN-Buchse für den Recorder (oder Chinch?) und eine Videobuchse (DDR-KOAX oder AV-Chinc) mit rauf. Anstelle der Lötösen fürs Netzteil kann auch hier eine Steckerbuchse mit rauf. Das erleichtert das Anschließen eines ausreichenden 1Eur-Netzteils. Denkbar wäre auch noch ein 74154 - Tastaturdekoder mit auf der Platine.
Ich würde bei all den Sachen immer im Tiny-Buch nachschauen - dort sind die aktuellsten Lösungen beschrieben. Und Tiny-Experte Michael Radtke kann sicher auch mit Rat und Tat zur Seite stehen.

enrico: In einem anderen Thread suchte ja jemand zur Reparatur des Tinys diese 2 Schieberegister D195. Besser wäre es statt dieser 2 4 Bit Schieberegister ein 8 Bit Schieberegister zu nehmen. Das wäre der 74166 bzw. 74165. Der brauch die Flanken aber genau anders herum als der D195 (wenn ich das noch richtig in Erinnerung habe).
Statt des DS8212 wäre der 74574 besser. Weniger Platz und Strom. So wie der DS8212 beschaltet ist, speichert er wohl die Adressen bereits mit der H/L-Flanke von /AS ein. Laut Einchipmikrorechner vom Kieser/Bankel sind die Adressen aber erst mit der L/H-Flanke von /AS gültig. Da würde der 574 also besser passen.
Ich kann mich da natürlich auch täuschen.
Ansonsten wären natürlich auch diese kleinen Erweiterungen und Verbesserungen wie Kassetteninterface, FBAS, andere Treiber-ICs für Tastatur (war dann glaube ich CMOS?) nicht verkehrt.

volkerp: Die Speichermodule im Klartext (Bezeichnung A bis D wie im TINY-Buch):

A - 2716 + 2 x 224 (jutecomp1.pdf, Seite 14)
B - 2716 + 6516 (jutecomp2.pdf, Seite 11)
C - 2764 + 6264 (jutecomp1.pdf, Seite 26)
D - 2716 (jutecomp2.pdf, Seite 31)

Man braucht also (minimal)
2K-Tiny: Grundplatine für 2k/4K, Video/Kassetten-Platine, Speicherplatine A (oder B oder C)
4K-Tiny: Grundplatine für 2k/4K, Video/Kassetten-Platine, Speicherplatine B und Speicherplatine D
6K-Tiny: Grundplatine für 6K (und einen extra U881)

E. Mueller: Bin gerade dabei, das Original wie folgt umzubauen:

1.Ersatz des DS8212 durch 74LS373
2.Ersatz des DL100 durch 74LS04 (siehe 1.)
3.Ersatz der beiden D195 durch 1 8bit Schieberegister
4.Ersatz des V40098 durch LS-TTL Baustein
5.Unterbringung des Videokonverters inkl. UHF Modulator auf der Platine

Punkt 1,2 und 5 sind bereits erledigt und werden zur Zeit getestet. Wer also eine Platine mit „leicht“ beschaffbaren und stromsparenden Bauteilen braucht, sollte noch ein wenig warten.

Zum Thema Kassettenschnittstelle:
Ich habe eine Software geschrieben, mit der es möglich ist, über das Tor 2 mit einem handelsüblichen PC Daten (LPT) auszutauschen. Das klappt soweit ganz gut und macht die Kassettenmurkserei überflüssig. weitere Details demnächst.

wusel_1 @ E. Mueller: ein Hinweis für deinen Umbau. Ich habe auch für den AC1 das gleich gemacht und für die D195 einen 74LS165 (8bit Schieberegister) eingesetzt und ich kann nur sagen, da wird es Probleme geben, da die sehr zeitkritisch sind.
Ach die 8205 durch 74LS138 ersetzen (Baugleich).

E. Mueller: für Enrico: Die Kassettenschnittstelle wird es auf meiner Platine nicht geben, da ich mit der PC-Schnittstelle gut zurechtkomme und eine sogenannte „Flashrom“-Karte für Platz 4 „in der Mache habe“ …

für Tim: Da es hier keinen Speicherplatz für Programme gibt, kann ich das passende PC-Programm und die Binärdatei für den JUTE auch nicht zur Verfügung stellen. Es gibt zwar überall kostenlosen Speicherplatz im Netz, habe aber keine Lust mich damit auseinander zu setzen - das hat verschiedene Gründe …

für Wusel_1: Den 8205 gegen einen 74LS138 (74LS137) auszutauschen habe ich nicht erwähnt, da keine gerätetechnischen Änderungen erforderlich sind. Der 74LS165 (anstatt zwei D195) macht bei mir keine Probleme, meine Wohnungsabsicherung funktioniert seit knapp 3 Monaten am AV-Kanal fehlerfrei …

knollibum: Achso, habe mal die Speicher-Modul Variante A […] mit Sprint Layout 4 erstellt und leicht modifiziert. Wäre nett, wenn sich das mal jemand anschauen könnte, ob sich eventuell Fehler eingeschlichen haben. Ist ein Kompromiss. Vor Allem das „Aufsetzen“ der RAMs mit abgespreizten CS-Beinchen. Jedenfalls ist die Grundfunktion gegeben. Wenn ich den JU+TE zum Laufen bringe, werde ich ein besseres Layout mit mehr Speicher entwerfen.