Switch für Datassetten-Port

  • Natsu83 schrieb:

    Ok wenn ich es jetzt richtig Verstanden habe:
    Pin 14 direkt auf die 5 V-Leitung ohne auf den Schiebeschalter gehen
    Richtig.

    Natsu83 schrieb:

    Pulldown- oder Pullup-Widerstände nutzen und die Schaltung entsprechend des gewählten Widerstandes anpassen.
    Und die Motor-Leitung nicht über den CMOS laufen lassen
    Nach deiner jetzigen Zeichnung Pulldowns vom Schalteingang auf GND (100 kOhm), würde ich vorschlagen. Der Wert ist unkritisch; da der 4066 ein CMOS-Baustein ist, darf das ruhig was Hochohmiges sein.

    Natsu83 schrieb:

    Und die Motor-Leitung nicht über den CMOS laufen lassen
    Richtig. Der Innenwiderstand des 4066-Schalters ist zu groß, da fällt auf der Motorleitung viel zu viel Spannung ab. Dadurch wird die Datasette nicht mehr (korrekt) laufen.

    Natsu83 schrieb:

    Wie läuft das eigendlich mit der Motorleitung? Liegt da dauerhaft Strom dran?
    Nein, die wird vom (Original-) Kernal des C64/C128 nur dann aktiviert, wenn die Datasette mit LOAD/SAVE/usw. angesprochen wird. Die Leitung wird z. B. nach dem Laden auch abgeschaltet; d. h. trotz weiterhin gedrückter PLAY-Taste läuft der Motor nicht mehr.

    Natsu83 schrieb:

    Wie läuft das eigendlich mit der Motorleitung? Liegt da dauerhaft Strom dran? Oder nur wenn der C128 entsprechend die Leitung anspricht. Wenn da dauerhaft Strom anliegt, könnte man dann nicht das ganze so umbauen dass man den Motorstrom als Steuerungsstrom nutzt? Und dann die 5V-Schiene auf Pin 1 und 2 legt. Jetzt mal ein Beispiel

    Motorleitung -> Pin 14
    Motorleitung -> Schiebeschalter -> Datasettenport
    Motorleitung -> Schiebeschalter -> Pin 5, 6, 13 und 12
    +5V-Leitung ->Pin 1 ----- Pin 2 -> Datasettenport

    So würde der Motor laufen, da ich den Motor direkt an den Schiebeschalter anschließen kann
    Oder wäre diese Variante totaler Blödsinn?
    Das Problem dabei ist: Im oben beschriebenen Fall, in dem nach dem Laden der Motor ausgeht, wird die Motorspannung erst durch das Drücken auf STOP wieder freigegeben, da die "SENSE"-Leitung dem C64 signalisiert, dass keine Taste mehr gedrückt ist. Dieses Signal kommt aber dann nicht mehr zum C64 durch, sobald der 4066 durch fehlende Motorspannung stromlos ist.

    Du müsstest einen 2 x UM-Schalter verwenden: Mit der einen Hälfte schaltest du die +5 V zwischen den Datasetten und den 4066-Schalteingängen um, mit der anderen Hälfte die Motorspannung zwischen den Datasetten. Das sollte schmerzfrei funktionieren.

    Wenn du eh schon beim Basteln bist, könntest du noch die "Copy"-Funktion einbauen, das ist ein einzelnes Gatter zwischen "READ" der einen und "WRITE" der anderen Datasette. Da kann man dann 1:1-Kopien von Kassetten herstellen ohne dass ein Programm benötigt wird (bzw. einfach beim Laden z. B. eines Spiels). Dazu müsste man allerdings beide Datasetten unter "Saft" stellen und wie gesagt READ(1) und WRITE(2) verbinden. Muss mal überlegen, durch die ja jetzt fehlende MOTOR-Leitung am 4066 wird ja je ein Schalter frei, vielleicht ließe sich da was machen.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • Ok. Soweit habe ich jetzt alles Verstanden.

    Ich werde die +5V-Leitung als Steuerungsstrom belassen. Aber dafür jetzt ein anderen Schiebeschalterholen, der es Unterstützt zwei Kreisläufe zur selben Zeit anzuhaben. Auf diese Weise kann ich dann die 5V-Leiung und die Motorleitung über einen Schalter steuern. Also sowas wie den hier: elektrokuchorz.de/Micro-Schiebeschalter-EIN/EIN
    Da dürfte sich die 5V-Leitung und die Motorleitung nicht bei ins Gehege kommen.

    kinzi schrieb:

    Wenn du eh schon beim Basteln bist, könntest du noch die "Copy"-Funktion einbauen, das ist ein einzelnes Gatter zwischen "READ" der einen und "WRITE" der anderen Datasette. Da kann man dann 1:1-Kopien von Kassetten herstellen ohne dass ein Programm benötigt wird (bzw. einfach beim Laden z. B. eines Spiels). Dazu müsste man allerdings beide Datasetten unter "Saft" stellen und wie gesagt READ(1) und WRITE(2) verbinden. Muss mal überlegen, durch die ja jetzt fehlende MOTOR-Leitung am 4066 wird ja je ein Schalter frei, vielleicht ließe sich da was machen.
    Das mit der Copy-Funktion hört sich interresant an.
    Aber ließe der freigewordene Schalter sich unabhängig bedienen?

    Ansonsten würde mir jetzt die Lösung vorschweben:
    Einen Schiebeschalter 3-positionen (EIN-EIN-EIN) und ein drittes 4066 an die dritte Position des Schiebeschalters angelötet wird. Das dritte 4066 befeuert dann beide gleichzeitig.
    die Frage ist dann: Wie schaut es mit dem Strom aus? Würde der Strom des C128 ausreichen um beide zu befeuern, oder müsste ich ein extra Netzteil zwischenschalten?
    Commodore 128D-CR
    SuperVideo-Modulator (16x8) • Internes Laufwerk so gemodded dass Geräteadresse von 8 auf 9 und zurück geswitcht werden kann • SD2IEC • Tapuino • Epix Fastload Reloaded • Commodore 1530 C2N • 1541-II • Joystick-Switch • 2x Competition Pro • Commodore Paddles • Maus 1351 • 3fach Modul Switch • :thumbsup: Disketten-Locher :thumbsup:

    Weitere Sachen in meiner Sammlung:
    Commodore 1531 • Amstrad Joystick • 9pin-Joystick zu USB Adapter, 2x xu1541 (eine PC externe Version und eine interne im PC verbaute Version) • leeres Gehäuse von einem 1530
  • Natsu83 schrieb:

    Wie schaut es mit dem Strom aus? Würde der Strom des C128 ausreichen um beide zu befeuern, oder müsste ich ein extra Netzteil zwischenschalten?
    Die Schaltungen, die ich kenne, speisen beide Datasetten aus dem C64/C128 ohne irgendwelche Zusätze. Nach meinen Messungen braucht eine Datasette auf der 5 V-Schiene < 10 mA und auf der 9 V-Schiene ca. 60-70 mA, was weit entfernt von einem Problem ist, auch bei zwei Datasetten.

    Hier sind Bilder von diesem Adapter zu finden, er heißt "Copy2000".
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • So, ohne einen Schönheitspreis gewinnen zu wollen mal ein schnell zusammengeschmierter Vorschlag:



    Es fehlen die Leitungen auf Vcc und GND bei den ICs und die Abblock-Cs, die bitte dazudenken. Mit S1 kann zwischen Datasette 1 und 2 umgeschaltet werden. Wenn S1 auf Datasette 1 steht, kann mir S2 der Kopiermodus aktiviert werden.

    Kann man sicher noch eleganter machen. Vielleicht erbarmt sich jemand. :D
    Müsste aber auch so funktionieren.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • hallo @kinzi

    den 7414 IC würde ich auch versuchen durch den noch freien 4066 zu ersätzen.
    den 4066, mit einem pull up widerstand am ausgang, als inverter schalten.

    C, am 4066, ist der eingang
    A oder B, am 4066, an masse
    B oder A, am 4066, ist der ausgang mit einem pull up widerstand.

    gruß
    helmut

    edit... ich würde keine CD4066 sondern 74xxx4066 benutzen, sind besser als die alten CD4066.
    edit... ich würde 10 K widerstände nehmen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von axorp ()

  • kinzi schrieb:

    Die Frage ist, ob es überhaupt einen Inverter braucht, ich kenne das Datasettenprotokoll nicht. Ansonsten ist die Idee super!
    soweit ich mich erinnern kann, benötigt es einen inverter.

    ich habe die bauteile mit analog switch sehr gerne eingesetzt.
    z.b. den 4066 (4016) und die 4316, 4051, 4052, 4053, 4067 usw.

    gruß
    helmut
  • Was mir bei kinzis Schaltung (danke!) noch auffiel: vielleicht kann man den Schmitt-trigger V1 ersetzen durch ein Gatter und das Umschaltsignal von IC1 B darüber modifizieren. Wenn S1 das Schreibsignal auf Port2 richtet und mit S2 Kopierbetrieb eingestellt ist, könnte ein versehentlich am Rechner gestartetes Save ein Signal-Kuddelmuddel anrichten; auch würde Read von Datasette1 gegen das Write vom Rechner arbeiten (oder habe ich was missverstanden?)


    Der Unsicherheitsfaktor hier ist, dass ich z.b. nicht weiß, welches Innenleben der an Port 2 anzuschließende "Datasetten-Emulator" (?) hat und welches Signalprotokoll da gefahren wird.

    Grundsätzlich würde ich die Write-Leitung nicht über einen Umschalter führen, sondern - ggf. gepuffert - direkt an Port1 und Port2 nach aussen führen. Die READ-Leitungen könnte man über ein Gatter (AND, OR, NOR, ..) zusammenfassen. Man würde einen 4066 einsparen.. Dazu müsste man nur in der Firmware (ROM) oder mit einem Monitorprogramm nachschauen, welchen Ruhepegel die Read-Leitung gewöhnlich hat ... vielleicht kommt man mit einem XOR zurecht?

    Generell finde ich die Bestückung mit dem guten bewährten 4066 aber okay! Und retro-authentisch (TM).

    Die Arbitrierung würde dann ausschließlich über SENSE und MOTOR ON stattfinden. (wie hat es denn der Commodore PET gemacht? Dort konnten auch 2 Datasetten angeschlossen werden).

    Schmitti schrieb:

    In der Zeitschrift 64'er wurde mal eine Selbstbaulösung eines Adapters zum Anschluss von zwei Datasetten am Datasetten-Anschluss vorgestellt.
    Ohne die jetzt genau analysiert zu haben, wäre das vielleicht bereits die Lösung. Bzgl. der Ausgabe weiß hier vielleicht jemand genau, welche das war.
    WIMRE, da hatte jemand entdeckt, dass der Platinenstecker in der 1530 genau die Form des Datasettenports im Rechner hat. Es handelt sich dabei zunächst nur um einen Test-Anschluss den Commodore da vorgesehen hatte.

    Und die Bauanleitung bestand darin, ein paar Leiterbahnen zu durchtrennen und Signale zum nun so geschaffenen "zweiten SLAVE-Datasettenport" durchzuschleifen, damit ein Kopierbetrieb möglich wird. Soweit ich weiss, wurden die Motoren dabei ohne Federlesens parallelgeschaltet.
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Stephan ()

  • Stephan schrieb:

    Die READ-Leitungen könnte man über ein Gatter (AND, OR, NOR, ..) zusammenfassen. Man würde einen 4066 einsparen..
    Wenn ich einen 4066 einspare, dafür aber ein AND/OR/XOR brauche, habe ich nichts gespart, wenn ich das recht verstehe.

    OK, man könnte einen 7400 nehmen und daraus das AND/OR/XOR und den Inverter bauen, das müsste sich ausgehen. Generell fände ich es aber sauberer, alle Datenleitungen zu schalten.

    So, laut Datenblatt kann der 4066 ca. 9 MHz
    und hat einige 10 ns "propagation delay". Das sollte als Inverter kein Problem sein. Problematisch ist evtl. nur, dass er am Schalteingang > 3,5 V als "HI" (on) sehen will, das ist nicht TTL-konform.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • kinzi schrieb:

    Wenn ich einen 4066 einspare, dafür aber ein AND/OR/XOR brauche, habe ich nichts gespart, wenn ich das recht verstehe.
    Stimmt :schande:

    kinzi schrieb:

    Problematisch ist evtl. nur, dass er am Schalteingang > 3,5 V als "HI" (on) sehen will, das ist nicht TTL-konform.
    Kann es sein, dass er dann bei High = 2,5 volt auch durchschaltet, aber halt noch nicht pefekt, also dass R(DSon) dann etwas hochohmiger ist als geplant?
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens
  • Stephan schrieb:

    Kann es sein, dass er dann bei High = 2,5 volt auch durchschaltet, aber halt noch nicht pefekt, also dass R(DSon) dann etwas hochohmiger ist als geplant?
    Möglich, ich kenne die Interna nicht. Das Datenblatt spricht von "min. 3,5 V". Eine Kurve " rON vs. Schaltspannung" habe ich nicht gefunden.

    Insofern ist es evtl. doch am falschen Ort gespart, den 7414 durch das freie Gatter des 4066 zu ersetzen. Es müsste halt jemand mal probieren. Ich werde am Abend mal den Schaltplan dahingehend anpassen.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • Leute!

    Digitalsignale schaltet man digital um, analogsignale mit einem Analogschalter, und Versorgungen mit einem FET, der ausreichend kleinen Rdson hat.

    Analogsignale haben wir hier nicht, ergo hat ein 4066 in der Schaltung nichts verloren.

    read, write, sense sind digital - dafür nimmt man einen 74HC257.
    +5V ist die digitale Versorgung, die kann durchverbunden werden.
    Motor ist ein Versorgungssignal - das wird mit einem NPN-Transistor und einem P-Kanal FET geschaltet
    GND wird durchverbunden.

    Die 3-state Funktion des HC257 kann genutzt werden, um die Kopierfunktion dazu zu bauen - hier wären weitere Gatter erforderlich, und man könnte den einen reserve-Muxer als "obskuren Inverter" missbrauchen. Aber Vorsicht: Ist der Schalter/Spannungsregler auf C64-Seite stark genug, um zwei Motoren gleichzeitig zu versorgen? Das gilt es zuerst zu klären!

    Wer zeichnet's?

    Jens
    icomp.de/shop-icomp - Online einkaufen und offline bei Rewe, Penny, DM und Weiteren im Laden bezahlen.
  • Mir brummt da gerade der Schädel. Jetzt komme ich nur noch sehr langsam mit. Bitte nicht falsch verstehen: Ich bin dankbar dass sich hier soviele mit dran beteiligen, ich (als absoluter Quereinsteiger bei elekrischen Schaltungen) hätte es mir nur einfacher Vorgestellt den Switch zu basteln.

    Was ich ursprünglich nur als Switch geplannt habe, bekommt inzwischen eine Copy-Funktion.


    Ich finde es genial was ihr aus einer anfänglich halbtheoretischen Frage gemacht habt.
    Und ich danke euch dass ihr soviel Geduld mit jemanden habt der davon kaum Ahnung hat. Das ist nicht selbstverständlich. Gerade in Computer-Foren beobachte ich immer wieder dass Neulinge oder noch nicht so erfahrende Nutzer für ihr noch beschränktes Wissen blöde angemacht werden.

    Stephan schrieb:

    Der Unsicherheitsfaktor hier ist, dass ich z.b. nicht weiß, welches Innenleben der an Port 2 anzuschließende "Datasetten-Emulator" (?) hat und welches Signalprotokoll da gefahren wird.
    Der am Port 2 anzuschließende Emulator wäre der von dem Spanier der bei Ebay seine Emulatoren anbietet. Der hat es zwar gerade nich im Angebot, habe aber bei einem der aus dem zukkünftig ehemaligen EU-Land kommt gefunden. Dürfte das selbe Tapuino sein: ebay.de/itm/New-Commodore-64-d…a488ee:g:hmoAAOSwtGlZHW3c
    Falls das jetzt bei der Frage hilft. Ich könnte das Tapuino auch noch mal aufschrauben und ein Foto der Platine machen.
    Commodore 128D-CR
    SuperVideo-Modulator (16x8) • Internes Laufwerk so gemodded dass Geräteadresse von 8 auf 9 und zurück geswitcht werden kann • SD2IEC • Tapuino • Epix Fastload Reloaded • Commodore 1530 C2N • 1541-II • Joystick-Switch • 2x Competition Pro • Commodore Paddles • Maus 1351 • 3fach Modul Switch • :thumbsup: Disketten-Locher :thumbsup:

    Weitere Sachen in meiner Sammlung:
    Commodore 1531 • Amstrad Joystick • 9pin-Joystick zu USB Adapter, 2x xu1541 (eine PC externe Version und eine interne im PC verbaute Version) • leeres Gehäuse von einem 1530

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Natsu83 () aus folgendem Grund: typo

  • Wiesel schrieb:

    Der von Dir verlinkte Tape-Emu hat doch einen durchgeführten Port für die Datasette. Warum dann einen Umschalter?
    Erschlag mich nicht: Aber mir ist da ein Missgewchick passiert. Der Tisch auf dem das Teil lag ist zusammengebrochen. Und sämmtliche Sachen sind dabei mehr oder weniger in Mitleidenschaft gezogen wurden. Da am Tapuino gerade ein Stecker (der gerade nur zwischen geparkt war, damit nicht verloren geht) auf dem Port war, ist der Port abgebrochen. Zum Glück nur der port und nicht noch irgendwelche andere Leiterbahnen. Und zum Glück war er geradee nicht an den C128D angeschlossen, da ich das Kabel des Tapuino austauschen wollte. Das Kabel welches der Spanier angelötet hatte, war nicht kompaktibel mit einem 128D-CR gehäuse, daher war damals eine Modifizierung nötig.
    Commodore 128D-CR
    SuperVideo-Modulator (16x8) • Internes Laufwerk so gemodded dass Geräteadresse von 8 auf 9 und zurück geswitcht werden kann • SD2IEC • Tapuino • Epix Fastload Reloaded • Commodore 1530 C2N • 1541-II • Joystick-Switch • 2x Competition Pro • Commodore Paddles • Maus 1351 • 3fach Modul Switch • :thumbsup: Disketten-Locher :thumbsup:

    Weitere Sachen in meiner Sammlung:
    Commodore 1531 • Amstrad Joystick • 9pin-Joystick zu USB Adapter, 2x xu1541 (eine PC externe Version und eine interne im PC verbaute Version) • leeres Gehäuse von einem 1530

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Natsu83 () aus folgendem Grund: Doppelpunkt. "Das Erschlag mich nicht" ist ironisch gemeingt und bezieht sich auf den Nachfolgenden Satz

  • Wiesel schrieb:

    Analogsignale haben wir hier nicht, ergo hat ein 4066 in der Schaltung nichts verloren.
    Du magst sicher recht haben, wenn man sich den C64 aber so ansieht, sind da auch zwei 4066, von denen mindestens einer nix Analoges schaltet, wenn ich mich recht erinnere. ;)

    Aber gut, der Einwand ist berechtigt. Mal sehen.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • kinzi schrieb:

    So, laut Datenblatt kann der 4066 ca. 9 MHz und hat einige 10 ns "propagation delay". Das sollte als Inverter kein Problem sein. Problematisch ist evtl. nur, dass er am Schalteingang > 3,5 V als "HI" (on) sehen will, das ist nicht TTL-konform.
    falls es nich geht, ein pull up widerstand hilft da.

    z.b. möchte man einen 74HCxxx eingang mit einem normalen TTL pegel ansteuern, wird auch ein pull up widerstand, im datenblatt, empfohlen.
    da ein 74HCxxx auch einen höheren eingangs-pegel benötigt.
    ein 74HCxxx eingang, der von einem 74HCxxx oder 74HCTxxx ausgang angesteuert wird, benötigt keinen pull up widerstand.

    normal nimmt man ja dafür aber einen 74HCTxxx, sein eingang ist TTL kompatibel und benötigt dann keinen pull up widerstand am eingang.

    deswegen habe ich vorhin geschrieben, nicht einen normalen 4066, sondern einen 74xxx4066 = 74HCT4066 oder 74ACT4066 usw. zu nehmen.

    die nS verzögerungszeiten, kannst du in diesem fall vergessen. am tapeport sind ja sehr langsame signale, im bereich von uS und im mS.

    kinzi schrieb:

    Du magst sicher recht haben, wenn man sich den C64 aber so ansieht, sind da auch zwei 4066, von denen mindestens einer nix Analoges schaltet, wenn ich mich recht erinnere.
    @kinzi ist auch meine meinung.
    commodore setzt beide 4066, im c64, auch so zweckentfremdet ein und wie wir wissen funktioniert es.

    ich würde es zuerst mit einem (74HCT) 4066 versuchen. die test schaltung ist übersichtlicher und viel einfacher aufzubauen. als mit TTL-gattern usw.

    gruß
    helmut
  • Neu

    Dass man die Analogschalter benutzen *kann* ist unbestritten. Es ist aber nicht "good practise".

    Und wenn man schon Analogschalter nimmt, dann bitte einen, der weniger Aufwand für den "Nachbauer" bedeutet. Es sind drei Signale und ein Power-Signal umzuschalten - da würde ich den Multiplexer 74HCT4053 vorschlagen - wenn man denn unbedingt einen Analogschalter einsetzen möchte. Vorteil der 74HC(T)40xx Schalter ist, dass der Innenwiderstand kleiner ist. Und ja, es sind sehr langsame Signale, das wird also in jedem Fall klappen.

    Power wird aber dennoch damit nicht geschaltet. Hier ist ein P-FET und ein NPN gefragt, und zwar "je Motor". Oder man nimmt einen 2xUM-Schalter, da kann man die Motorspannung gleich umschalten, ohne dass man sich Gedanken über die Auswahl eines FET machen muss.

    Jens
    icomp.de/shop-icomp - Online einkaufen und offline bei Rewe, Penny, DM und Weiteren im Laden bezahlen.
  • Neu

    Wiesel schrieb:

    Oder man nimmt einen 2xUM-Schalter, da kann man die Motorspannung gleich umschalten, ohne dass man sich Gedanken über die Auswahl eines FET machen muss
    Genau das hatte ich ja im Schaltplan gezeichnet.
    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten."
    (Quelle unbekannt)
  • Benutzer online 1

    1 Besucher