Beiträge von mc71

    EF6821 ist (definitiv!) die Thompson-Version der Motorola MC6821, was wiederum in der 6800-er Welt das Äquivalent zur MOS PIA 6520 ist (sind die nicht sogar pin-kompatibel?) Einziger Unterschied: Die 6821 kommt mit dem schrägen Phi2-Timing im C64 zurecht, im Gegensatz zum 6520 und 6522. Zudem war sie deutlich billiger als die MOS-CIA 6526 (die es überhaupt erst ab 1987 frei zu kaufen gab) und deswegen war sie sehr beliebt für IO-Erweiterungen am C64.

    Sinn macht das Platinchen tatsächlich nicht- denn es _ergibt_ Sinn, und sogar ziemlich viel davon. Man hat nämlich alle Ports frei, wenn man das Zeug intern verbaut und einen eigenen IO-Baustein verwendet.

    Mich erinnert das Ganze allerdings auch an den Logik-Analyzer aus der c't, was allerdings ein externes Modul war... leider finde ich da PDF grad nicht.

    Das Basic 3.5 ist aber wesentlich größer als 16K.

    Die erste in den Handel gelangte Version hatte übrigens einen fiesen Bug bei Verwendung der Disk-Fehlermeldung in Textform, der Pseudovariablen ds$. Da ging irgendwas mit den neu eingeführten R-Pointern schief, was bei der nächsten Garbage Collection zuverlässig zum Absturz führte. Dabei sollten die Dinger ja eigentlich zu einer deutlichen Beschleunigung derselben führen. Das wurde aber sehr bald gefixt- sogar bei Geräten der 1984er-Produktion.

    Wirf mal einen Blick in das ROM-Listing zum C16/116/+4 bon Markt und Technik (Autor wimre Ch. Q. Spitzner) sowie das TED-Datenblatt (auf zimmers zu finden)

    Was die Hardware angeht: sta $ff3e schaltet für die CPU das ROM ein, sta $ff3f das RAM, jeweils die vollen 32k. Der Inhalt von A ist dabei egal. In den TED-Registern gibt es dann noch ein Bit(r/o), das den aktuellen Status anzeigt. Das zitierte FF12 Bit 2 schaltet die TED-Zugriffe in den oberen 32k auf RAM bzw. ROM um.

    Ein sta $fddx schaltet die ROM-Bänke; die unteren Bit von x geben dabei die Konfiguration des einen Blocks an (iirc den unteren von $8000 bis $bfff), die oberen zwei Bit von x den oberen Block von $c000 bis $ffff. Gewählt wird dabei System-ROM (BASIC/Kernal), internal function rom (hier lebt die 3+1), cartridge rom 1 (die normalen Cartridges) und Cartridge 2 (z.B. von der speech software des V364 genutzt). Die letzten drei sind im Prinzip gleichwertig; einziger Unterscheid ist die Reihenfolge, in der sie beim Reset initialisiert werden und damit die F-Taste, auf die der Commodore-Startcode den Start-SYS-Befehl legt. Dieses Register ist nicht rücklesbar; das Kernal legt ein Schatten-Register in der erweiterten Zeropage an. Siehe das ROM-Listing.

    (Edit: Die 264er-Serie unterstützt also von haus aus bis zu 128k ROM!)

    Dann gibt es noch das Flag bei $7f8. Damit kann man den Monitor zwischen RAM und ROM umschalten (mit >07f8 00 bzw. >07f8 80). Wenn man zuvor im der Routine 'monitor_read_ram' (auch irgendwo in der erweiterten Z-Page) die Adressen ff3e und ff3f auf FFD0 und FFDx umpoket, kann man mit dem Monitor statt RAM die Cartridge-ROMs lesen.

    Und jetzt die Kekskrümel:

    fc00 bis fcff kann nur RAM oder Kernal sein; die ffdx-Logik ist hier wirkungslos.

    fd00 bis ff3f ist immer i/o bzw offen, falls kein Chip an der Adresse geschaltet ist.

    Im realen Betrieb sollte man immer durch die Kernal-Routinen gehen, weil das System jederzeit unvermittelt auf ROM und Kernal zurückschalten kann.

    Die 'Basteleien' von M&T wurden ja schon genannt (übrigens eines der ganz wenigen Bücher von denen, bei dem man nicht hinterher mehr Fragen hat als vorher...)

    Die 'Hardware-Erweiterungen für C64' von Data Becker möchte ich der Vollständigkeit halber dennoch nennen; da ist nämlich unter anderem auch die 8/16K-RAM-Nodulkarte drin, die später auch von DELA erhältlich war.


    Wie wäre es denn mit

    Zitat

    Beispiele in Basic, Assembler und Forth(!) soweit sinnvoll; dunkler Einband, Drucker-Anschluß. Letzterer allerdings an RS232...

    (ein Sperrmüllfund)

    Leider wurde das Kabel zur Stromversorgung abgeschnitten. (warum macht man sowas überhaupt?)

    Das kam in den 60er oder 70er Jahren auf, als Kinder Röhrenradios oder Fernseher vom Sperrmüll nach Hause schleppten und daran herumbastelten- ohne Aufsicht, weil Schlüsselkind. Das gekappte Netzkabel sollte verhindern, daß sich jemand elektrokutiert :-(

    Ein anderes Argument aus dieser Zeit: die Befürchtung verantwortlich gemacht zu werden, wenn jemand ein defektes Gerät anschließt und sich die Bude abfackelt.

    Inwieweit das alles echte Bedrohungen waren oder nur moderne Märchen... keine Ahnung. Mein Großvater hat sogar die ganzen abgeschnittenen Netzkabel aufgehoben, falls man mal eins brauchen sollte- aber das ist ein anderes Thema.

    Was aber tatsächlich eine Gefahr war: Alte Kühlschränke mit Schnapphaken, die ein spielendes Kind von innen nicht öffnen konnte. . Die Müllwerker waren zwar angewiesen, die Dinger aufzumachen bevor sie in die Presse kamen- aber die Dinger waren leider luftdicht :( und deswegen gab es noch in den 80ern den Hinweis, bei solchen Geräten den Haken zu verbiegen oder entfernen.

    Wenn man die Programmplätze durchschalten kann, ist doch schonmal viel gewonnen: Die Steuer-CPU hat Saft und funktioniert zumindest für Bedienteil und LED-Anzeige.

    01, 02 etc. ist dabei der Programmplatz, 2.1 3.6 etc. der Kanal (die 'Frequenz') 21, 36 etc. Der Punkt dient nur der Unterscheidung; umschalten kann man mit der Taste 'P/C'. Ggf. noch M drücken zum Speichern.

    Mit angeschlossenem C64 Ton/Musik wiedergeben und den TV den Kanal des C64 suchen lassen

    Guter Tip, falls es nicht auch die Spannung für den Audioteil und den Tuner gerissen hat.

    (mein Go-To bei Grundig, allerdings ein Jahrzehnt ältere, waren übrigens immer die Gleichrichter)

    hat er keine Funktionstasten wie der P4?

    Er hat, denn beide haben dieselbe Firmware. Unterschiede gibt es nur bei nicht vorhandener Hardware- namentlich der 5V-RS232 am Userport, die es beide beim C16 nicht gibt.

    Einen Befehl für die direkte Übertragung von Floppykommandos (wie das '@xyz' bei den ganzen DOS-Wedges) gibt es im CBM BASIC 4.0, 3.5 und 7.0 nicht, denn genau mit diesem low-level-Zeug soll sich der User nicht mehr auseinandersetzen müssen. Daß Jahre später mal Unterverzeichnisse kommen würden konnte damals niemand ahnen...

    Man sieht, da sind 2 Potis eingebau

    Das sieht zwar aus wie ein Doppel-Poti-X-Y-Joystickmodul, es könnte aber genausogut ein digitaler Stick sein- es gibt Drehtaster in Poti-Bauform, oder jemand hat Mikroschalter eingebaut... ich mein', das ist ja schon ein DIY-Hack. Bild vom Innenleben wäre hilfreich.

    Oder...

    ...es wurde kopiert, was Elite (die Kaufhof-Eigenmarke) mal gemacht hat: die Poti-Schleifer an Masse, die Außenkontakte an digital-up/down/left/right. Das funktioniert tatsächlich, wenn auch eher schlecht als recht. Wenig hilfreich war bei meinem Exemplar, daß eins der Potis schief (verdreht) saß und ich das damals nicht fixen konnte.

    Ich habe mal gelernt, niemals nienicht (!) eine Leistungsstufe ohne Last zu betreiben.

    Also, wenn es denn dem Seelenfrieden dient: Stecker am Chassis ziehen, Spule auf Durchgang testen, Stecker wieder aufstecken- und den Moni währenddessen um jenes höheren Wesens, das wir verehren, Willen nicht ans Stromnetz anschließen oder gar einschalten!

    So eine offene Bauweise

    Das ist doch nur zum gucken. Im Betrieb kommt der Boden natürlich wieder drauf. (Tip: Den abgebrochenen Stift aus der mittleren Zuhaltung an der Vorderkante entfernen, ein Loch an der gleichen Stelle in die Bodenplatte bohren und mit einer kurzen Holzschraube sichern. Je nach Prüfingenieur wäre das sogar als Schutzklasse II zulässig...

    Wichtig ist vor allem (nicht wegen VDE, sondern wegen Sicherheit) daß die beiden großen 'Paddel' am Unterteil noch intakt sind- die isolieren die 'Netzspannungs-Kammer', falls sich mal ein Draht löst und im Gehäuse rumschlackert.

    Die Platine ist professionell gefertigt (verzinnt, durchkontaktiert) aber hat keinen Lötstoplack. Das spricht für eine Serienproduktion mindestens im dreistelligen Bereich, aber Handlötung- also wahrscheinlich Vertrieb als Bausatz. Im Hobbylabor war das damals nicht machbar und für Einzelstückzahlen kaum rentabel- Bil Herd hat ja mal geschrieben, was so ein Platinchen damals im Schnellservice gekostet hat.


    Von der funktion her würde ich im Vergleich zum Jeschke 32/27-K-Modul eine ähnliche Funktion erwarten: Block 1-3 und 6 mit RAM ausstatten, evtl. schaltbar. Für weitere 'Tricks' reichen die Gatter nicht.


    Der Stromverbrauch sollte ebenfalls in dem Bereich der Jeschke-Karte liegen; die ist bloß kompakter gebaut (Standard-VC20-Cartridge) und ja, genau dafür ist das VC20-Netzteil dimensioniert; das schafft ja auch drei 8K-Module und ein ROM-Cart in der Modulbox.


    Reverse Engineering: Hätte ich Lust drauf vor allem zum Vergleich mit der Jeschke-Schaltung, die ich 'kürzlich' (so ca. 1988) ausgeklingelt hatte. Ich finde aber nichtmal die (wohl überteuerte) Ebay-Aujtion :-( Insbesondere sehe ich die Erzeugung der -5 Volt nicht, die die 6116 benötigen. Zum Nachbau greift man heute wirklich besser zu einem SRAM, das spart viel Kopfschmerzen, weil die Refresh-Schaltung wegfällt und srarisches RAM noch deutlich leichtter erhältlich ist als die inzwischen eher seltenen 16K-DRAM.

    Ich weiß auch noch gar nicht, ob man es wirklich nutzen kann/will

    Auf dem ZX81 war das die Standard-Prozedur, um Maschinencode automatisch mit dem BASIC-Programm zu laden. CODE-Bereiche nachladen wie beim Spectrum (oder LOAD "xyz",8,1 bei Commodore-Diskettenprogrammen) gibt's da nicht, und alles andere hätte das Eingreifen des Anwenders erfordert. Königsdisziplin war dann, die REM-Zeile so zu gestalten, daß das automatische LIST des Editors nicht in einer Endlosschleife hängenbleibt.

    Prinzipiell sollte das also auch auf dem Commodore gehen- es hat sich halt nur nicht durchgesetzt, weil es bequemere Alternativen gibt.

    Im Prinzip sind die Formate wohl gleich, aber die Frequenzen unterscheiden sich zwischen PET/CBM, VC20, C64/C128 und C16/116/Plus4; bei den Heimcomputern zusätzlich noch zwischen PAL und NTSC. Lesen lassen sich die Bänder nach meiner Erfahrung aber dennoch auf den anderen Maschinen. Allerdings habe ich bei weitem nicht alle Kombinationen ausprobiert. Vielleicht hatte ich damals einfach nur Glück.


    Bei den ganzen Turbo-Tapes sieht das dann nochmals anders aus- das waren aber keine Original-Commodore-Produkte.

    eine 1750, die noch mehr Leistung braucht, mit einem Original C64-Netzteil betrieben

    Ob das klappt hängt auch von der Version der C64-Platine und den verrwendeten Speicher-Chips(*) in Rechner und REU ab. Das stärkere Netzteil war ja einfach nur eins, das bei Commodore schon im Regal lag. Der echte Mehrbedarf waren wahrscheinlich nur 100-200 mA in der ungünstigsten Kombination.


    (*) sparsame CMOS-RAM, Eprom statt Masken-ROM (das 2364 braucht in der Spitze laut MOS-Datenblatt bis zu 1000 mA! Ein volles Ampere! Wow...)

    Da hat dummerweise kein Etikett geklebt, sondern höchstwahrscheinlich ein Metallschild. Und die klebt man üblicherweise mit ganz anderen Kalibern- vom PU-Kontaktkleber bis zum Cyanoacrylat-Sekundenkleber.