Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
tiny:erweiterungen:32kmodul [2010/07/11 14:27] – Page moved and renamed from intern:converted:tiny_norbert.htm to tiny:erweiterungen:32kmodul volkerptiny:erweiterungen:32kmodul [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
-====== tiny_norbert.htm ====== +====== 32K/32K-Modul ====== 
  
-**Norbert** stellt hier seinen TINY nebst 32K-Modul vor. (Hinweis: von E. Müller gibt es ebenfalls ein [[intern:converted:2x32k_speicher_2x32k_speicher.html|32K-Modul]] !):+:!: Hinweis: von E. Müller gibt es ebenfalls ein 32K-Modul [[tiny:erweiterungen:32kmodul2|]]
  
-===== JU+TE TINY Modul 32K/32K mit kompletter Dekodierung des Tastaturzugriffs entsprechend JU+TE 01/1988 =====+**Norbert** stellt hier seinen TINY nebst 32K-Modul vor: 
  
-Aus 2007 steht noch die Doku meiner Lösung bzgl. des 32K Moduls aus, gleichfalls der 4K-Monitor auf einem 2732. [[intern:converted:norbert_norbert.zip|64K ROM]] ist bis auf Monitor, pxl1000, Copy und RAM-Test noch leer. Die Schaltungs- und meine allerersten (nach über 20 Jahren!) Tiny-Bilder (hab ich nicht besser hinbekommen) ebenfalls anbei:+**JU+TE TINY Modul 32K/32K mit kompletter Dekodierung des Tastaturzugriffs entsprechend JU+TE 01/1988**
  
-Hier stelle ich meine Ergänzung des Original-TINY mit einem 32K-RAM/ 32K-ROM Modul (Modul32) mit vollständiger Dekodierung des Tastaturzugriffs vor. Auf eine komplette Schaltung und Layout verzichte ich, da die kleine Leiterplatte in „Fädeltechnik“ frei verdrahtet ist.+===== Einleitung ===== 
 + 
 + 
 +Aus 2007 steht noch die Doku meiner Lösung bzgl. des 32K Moduls aus, gleichfalls der 4K-Monitor auf einem 2732. {{:tiny:32k_norbert.zip|64K ROM}} ist bis auf Monitor, pxl1000, Copy und RAM-Test noch leer. Die Schaltungs- und meine allerersten (nach über 20 Jahren!) Tiny-Bilder (hab ich nicht besser hinbekommen) ebenfalls anbei: 
 + 
 +Hier stelle ich meine Ergänzung des Original-TINY mit einem 32K-RAM/32K-ROM Modul (Modul32) mit vollständiger Dekodierung des Tastaturzugriffs vor. Auf eine komplette Schaltung und Layout verzichte ich, da die kleine Leiterplatte in "Fädeltechnik" frei verdrahtet ist.
  
 Meinen Tiny hab ich mit Erscheinen der Beiträge in der JU+TE 1988 parallel zum bereits laufenden Projekt AC1 aufgebaut, um die Wartezeit zu verkürzen. Meinen Tiny hab ich mit Erscheinen der Beiträge in der JU+TE 1988 parallel zum bereits laufenden Projekt AC1 aufgebaut, um die Wartezeit zu verkürzen.
Zeile 15: Zeile 20:
 Ausgangspunkt der ganzen Geschichte war die Überlegung Mitte 2007, den maximalen Speicherausbau zu gewährleisten und insbesondere den ROM im Bereich der ROM-Ausblendung wegen des Tastaturzugriffs beim Original ebenfalls zu nutzen. Die Steuerung blendet ja immer 6000h...7FFFh aus. Das sind immerhin 8 KB (1/8el des normalen Adressraumes). Ausgangspunkt der ganzen Geschichte war die Überlegung Mitte 2007, den maximalen Speicherausbau zu gewährleisten und insbesondere den ROM im Bereich der ROM-Ausblendung wegen des Tastaturzugriffs beim Original ebenfalls zu nutzen. Die Steuerung blendet ja immer 6000h...7FFFh aus. Das sind immerhin 8 KB (1/8el des normalen Adressraumes).
  
-Entsprechende Diskussion zum TINY gab es seinerzeit im Forum von robotrontechnik sowie Beiträge diesbezüglich auf dieser Homepage. Dabei ging es auch um die Implementierung des 4 KB Monitors auf einem ´2732. (Dazu jedoch etwas mehr ganz unten nach der Hauptsache.)� Wegen verschiedener Umstände komme ich erst jetzt, im Mai 2009 dazu das kleine Projekt abschließen.+Entsprechende Diskussion zum TINY gab es seinerzeit im Forum von robotrontechnik sowie Beiträge diesbezüglich auf dieser Homepage. Dabei ging es auch um die Implementierung des 4 KB Monitors auf einem ´2732. (Dazu jedoch etwas mehr ganz unten nach der Hauptsache.) Wegen verschiedener Umstände komme ich erst jetzt, im Mai 2009 dazu das kleine Projekt abschließen.
  
 In der JU+TE 01/1988 S. 70ff. wird eine vollständige Tastaturdekodierung beschrieben. Allerdings wird hier natürlich auf die ursprüngliche 8 KB Segmentierung Bezug genommen. Ferner wird dabei die Bankumschaltung mittels P34 einbezogen. In der JU+TE 01/1988 S. 70ff. wird eine vollständige Tastaturdekodierung beschrieben. Allerdings wird hier natürlich auf die ursprüngliche 8 KB Segmentierung Bezug genommen. Ferner wird dabei die Bankumschaltung mittels P34 einbezogen.
Zeile 21: Zeile 26:
 Auf Letzteres habe ich schlussendlich verzichtet, weil, sobald ich P34 (invertiert) auf A15 des 64 KB ROM gelegt habe, das System zwar sauber lief, die Speicheranzeige im Bereich des gesamten ROM nur FFh lieferte. ROM A15 statisch auf LOW (bzw. HIGH) funktioniert jedoch problemlos. (P34 direkt an ROM A15 geht logischerweise auch nicht, sofern die obere ROM-Hälfte nicht mit dem Monitor versehen ist ;-) Auf Letzteres habe ich schlussendlich verzichtet, weil, sobald ich P34 (invertiert) auf A15 des 64 KB ROM gelegt habe, das System zwar sauber lief, die Speicheranzeige im Bereich des gesamten ROM nur FFh lieferte. ROM A15 statisch auf LOW (bzw. HIGH) funktioniert jedoch problemlos. (P34 direkt an ROM A15 geht logischerweise auch nicht, sofern die obere ROM-Hälfte nicht mit dem Monitor versehen ist ;-)
  
-| [[intern:converted:norbert_tiny_gesamt.jpg| {{norbert/Tiny_Gesamt_small.jpg}}]] | [[intern:converted:norbert_tiny_modul_sel.jpg| {{norbert/Tiny_Modul_SEL_small.jpg}}]] | +{{:tiny:32k_norbert_tiny_gesamt.jpg?300}} {{:tiny:32k_norbert_tiny_modul_sel.jpg?300}} 
-| TINY gesamt | Tiny_Modul_SEL.jpg | +
-| [[intern:converted:norbert_tiny_modul32_tast.jpg| {{norbert/Tiny_Modul32_Tast_small.jpg}}]] | [[intern:converted:norbert_tiny_tastatur_7f00..7fffh.jpg| {{norbert/Tiny_Tastatur_7F00..7FFFh_small.jpg}}]] | +
-| Das ganze Modul32 steckt auf Modulplatz 3 | Speicheranzeige am Bildschirm | +
-| [[intern:converted:norbert_tiny_modul2k.jpg| {{norbert/Tiny_Modul2K_small.jpg}}]] | [[intern:converted:norbert_tiny_modul4k.jpg| {{norbert/Tiny_Modul4K_small.jpg}}]] | +
-| modifiziertes Originalmodul mit 2K-ROM | modifiziertes Originalmodul mit 4K-ROM\\  (Monitor EWS1988) |+
  
-Nur zur Lösung:+TINY gesamt. Modul-Selektion.
  
-In den Bildern wird schematisch der Schaltungsaufbau deutlichDie relevanten BUS-Leitungen werden mit H/L-Pegel (rot/ blau) dargestelltDie lustigen roten Lämpchen repäsentieren H-Pegel am entsprechenden Selekt-Ausgang, aktiv (LOW) sind sie weißDie Bilder habe ich mit dem Digitalsimulator von Andreas Herz (FreeGroup.de) erstellt. (Leider ist dessen Homepage nicht mehr aktiv)+{{:tiny:32k_norbert_tiny_modul32_tast.jpg?300}} {{:tiny:32k_norbert_tiny_tastatur_7f00..7fffh.jpg?300}}
  
-| [[intern:converted:norbert_tiny_32_tast_0.png| {{norbert/Tiny_32_Tast_0_small.png}}]] | [[intern:converted:norbert_tiny_32_tast_1.png| {{norbert/Tiny_32_Tast_1_small.png}}]] | +Das ganze Modul32 steckt auf Modulplatz 3Speicheranzeige am Bildschirm.
-| Wenn /DS nicht aktiv ist, wird natürlich gar kein Speicher angesteuert. | Das ändert sich sofort mit /DS=L , hier wird mit A15=H der RAM ab 8000h eingeblendet und kann benutzt werden+
-| [[intern:converted:norbert_tiny_32_tast_2.png| {{norbert/Tiny_32_Tast_2_small.png}}]] | � | +
-| Mit A15=L greifen wir auf den ROM unterhalb 8000h zu, sofern die Tastatursteuerung nicht aktiv ist| � |+
  
-Im Original werden A15..A13 zur Bildung des CSB4-Signal (/CS03 – Pin 12 ´8205) herangezogen:+{{:tiny:32k_norbert_tiny_modul2k.jpg?300}} {{:tiny:32k_norbert_tiny_modul4k.jpg?300}} 
 + 
 +modifiziertes Originalmodul mit 2K-ROM. modifiziertes Originalmodul mit 4K-ROM (Monitor EWS1988). 
 + 
 + 
 +===== Nun zur Lösung ===== 
 + 
 +In den Bildern wird schematisch der Schaltungsaufbau deutlich. Die relevanten BUS-Leitungen werden mit H/L-Pegel (rot/ blau) dargestellt. Die lustigen roten Lämpchen repäsentieren H-Pegel am entsprechenden Selekt-Ausgang, aktiv (LOW) sind sie weiß. Die Bilder habe ich mit dem Digitalsimulator von Andreas Herz (FreeGroup.de) erstellt.  
 + 
 +{{:tiny:32k_norbert_tiny_32_tast_0.png?300|}} 
 + 
 +Wenn /DS nicht aktiv ist, wird natürlich gar kein Speicher angesteuert. 
 + 
 +{{:tiny:32k_norbert_tiny_32_tast_1.png?300|}} 
 + 
 +Das ändert sich sofort mit /DS=L, hier wird mit A15=H der RAM ab 8000h eingeblendet und kann benutzt werden. 
 + 
 +{{:tiny:32k_norbert_tiny_32_tast_2.png?300|}} 
 + 
 +Mit A15=L greifen wir auf den ROM unterhalb 8000h zu, sofern die Tastatursteuerung nicht aktiv ist. 
 +Im Original werden A15..A13 zur Bildung des CSB4-Signal (/CS03 Pin 12 ´8205) herangezogen:
  
   A15 A14 A13 A12 A11 A10 A09 A08   A15 A14 A13 A12 A11 A10 A09 A08
-  L H  H X X X X X entspricht 6000h...7FFFh+  L H H X X X X X entspricht 6000h...7FFFh
   L H H H H H H H entspricht 7F00h...7FFFh   L H H H H H H H entspricht 7F00h...7FFFh
  
-In der veränderten Version werden nur noch 256 Byte anstelle von 8192 Byte des Adressraums für den Tastaturzugriff ausgeblendet. Der Tastaturdekoder benutzt A3..A0 zur Spaltenselektion der angeschlossenen Tastatur. Über A7..A4 wird in der Dokumentation keine Aussage getroffen. (Zumindest habe ich nichts gefunden, hier könnte man noch mal „gigantische 240 Byte herausholen“ ;-)+In der veränderten Version werden nur noch 256 Byte anstelle von 8192 Byte des Adressraums für den Tastaturzugriff ausgeblendet. Der Tastaturdekoder benutzt A3..A0 zur Spaltenselektion der angeschlossenen Tastatur. Über A7..A4 wird in der Dokumentation keine Aussage getroffen. (Zumindest habe ich nichts gefunden, hier könnte man noch mal "gigantische" 240 Byte herausholen ;-))
  
-| [[intern:converted:norbert_tiny_32_tast_3.png| {{norbert/Tiny_32_Tast_3_small.png}}]] | [[intern:converted:norbert_tiny_32_tast_4.png| {{norbert/Tiny_32_Tast_4_small.png}}]] | +{{:tiny:32k_norbert_tiny_32_tast_3.png?300|}} 
-Sobald im Bereich der Tastatursteuerung\\  selektiert wird, ist der ROM inaktiv. | Gibt es jetzt einen Zugriff oberhalb 7FFFh\\  ist wieder RAM eingeblendet. |+ 
 +Sobald im Bereich der Tastatursteuerung selektiert wird, ist der ROM inaktiv. 
 + 
 +{{:tiny:32k_norbert_tiny_32_tast_4.png?300|}} 
 + 
 +Gibt es jetzt einen Zugriff oberhalb 7FFFh ist wieder RAM eingeblendet.
  
 Damit ist die ganze Angelegenheit samt schaltungsmäßiger Ausführung nach meiner Meinung hinreichend und detailliert klargestellt. Bei mir sieht das Modul32 folgendermaßen aus (s.o.; kein Schönheitspreis, aber es erfüllt seinen Zweck :) Damit ist die ganze Angelegenheit samt schaltungsmäßiger Ausführung nach meiner Meinung hinreichend und detailliert klargestellt. Bei mir sieht das Modul32 folgendermaßen aus (s.o.; kein Schönheitspreis, aber es erfüllt seinen Zweck :)
Zeile 71: Zeile 93:
 In den ´2732 wird fortlaufend der 4K Monitor gebrannt. Die oberen 2K werden jedoch nicht über A11 sondern A13 selektiert. Der TINY merkt das nicht, da er ohnehin bei (nicht vollständiger) Selektion innerhalb des ganzen 8K Segments die Bereiche spiegelt und mittels A13 folglich auf 2000h..2FFFh zugreifen kann. Dafür müssen auf der Grundleiterplatte die Signale /CSB1 und /CSB2 verknüpft werden, ich hab einfach zwei Schottky-Dioden 1N5819 benutzt (Ge-Dioden haben nicht funktioniert, hatte aber bloß GAZ17). Auch hier für Unterbrechung der ursprünglichen Leitungen zu Pin 15 und 14 des ´8205 sorgen. Die Unterbrechung wird auf der Leiterseite mittels der Dioden (Kathode zum Dekoder) gebrückt: In den ´2732 wird fortlaufend der 4K Monitor gebrannt. Die oberen 2K werden jedoch nicht über A11 sondern A13 selektiert. Der TINY merkt das nicht, da er ohnehin bei (nicht vollständiger) Selektion innerhalb des ganzen 8K Segments die Bereiche spiegelt und mittels A13 folglich auf 2000h..2FFFh zugreifen kann. Dafür müssen auf der Grundleiterplatte die Signale /CSB1 und /CSB2 verknüpft werden, ich hab einfach zwei Schottky-Dioden 1N5819 benutzt (Ge-Dioden haben nicht funktioniert, hatte aber bloß GAZ17). Auch hier für Unterbrechung der ursprünglichen Leitungen zu Pin 15 und 14 des ´8205 sorgen. Die Unterbrechung wird auf der Leiterseite mittels der Dioden (Kathode zum Dekoder) gebrückt:
  
-  Pin 15 o----!< -------o------>!----o Pin 14+  Pin 15 o----!-------o------>!----o Pin 14
   DS8205    1N5819      !    1N5819    DS8205   DS8205    1N5819      !    1N5819    DS8205
   (/CSB1)                            (/CSB2)   (/CSB1)                            (/CSB2)
Zeile 93: Zeile 115:
 Norbert Z80-Nostalgiker(ät)eMail.de Norbert Z80-Nostalgiker(ät)eMail.de
  
-Im [[intern:converted:norbert_norbert.zip|Download-Paket]] enthalten sind:+===== Download ===== 
 + 
 +Im Download-Paket {{:tiny:32k_norbert.zip}} enthalten sind:
  
   * die Schaltung im Eagle-Format   * die Schaltung im Eagle-Format
   * der (bisherige) ROM-Inhalt mit der Variante pxl1000:   * der (bisherige) ROM-Inhalt mit der Variante pxl1000:
-  | Tiny-MP-Basic | 0000h | + 
-  | Monitor ES1988/1 | 0800h | +| Tiny-MP-Basic | 0000h | 
-  | PXL1000 | 1000h | +| Monitor ES1988/1 | 0800h | 
-  | Monitor ES1988/2 | 2000h | +| PXL1000 | 1000h | 
-  | Copy | 4000h | +| Monitor ES1988/2 | 2000h | 
-  | Speichertest | 4300h |+| Copy | 4000h | 
 +| Speichertest | 4300h | 
   * sowie dem auf pxl1000 angepassten Mal-Fix.   * sowie dem auf pxl1000 angepassten Mal-Fix.
  
- 
  
  • tiny/erweiterungen/32kmodul.1278858455.txt.gz
  • Zuletzt geändert: 2010/07/10 22:00
  • (Externe Bearbeitung)