[WIP] TSOP Switchless Multicartridge

  • Das Tut is noch nich ganz fertig, da z.T. noch Bilder fehlen und ich selber bisher (da ich noch auf meine TSOPs warte) noch keine möglichkeit hatte es selbst auszuprobieren.
    RedScorpion hat das ganze allerdings schon getestet und es läuft soweit alles.



    So nachdem hier ja bereits beschrieben habe, wie man relativ einfach zwischen 2 games auf 4 EPROMs per RESET switchen kann, nun das ganze für 4 games auf 2 TSOPs. Ideal also für Zelda AST.


    1.Einleitung


    1.1 Was kann der TSOPswitchless-PIC?

    1.2 Was ihr benötigt:


    1.3 Vorbereitung


    1.3.1 Ohne SRAM


    1.3.2 Mit SRAM


    2. programmieren des PIC


    2.1 Für den Willem EPROM Programmer:


    2.2 Mit MPLab


    3. Anschließen des PIC



    =======================================================================================================


    1. Einleitung


    1.1 Was kann der TSOPswitchless-PIC?


    Mit dem TSOPswitchless-PIC lässt sich ohne Schalter zwischen 4 Spielen wechseln, die auf zwei TSOPs aufgeteilt sind (Ideal für Zelda - The Ancient Stone Tablets)
    Jedes Spiel hat damit maximal 16Mbit.
    Statt mit störenden schaltern lässt sich bequem mit dem RESET-Taster des SNES zwischen den ROMs wechseln.
    Die Aktive ROM wird zusätzlich durch 4 LEDs angezeigt(optional).




    1.2 Was ihr benötigt


    -2 TSOPs mit den entsprechenden Spielen (Bei Zelda empfiehlt es sich, Woche 1 und 2 auf den ersten TSOP und 3 und 4 auf dem Zweiten zu speichern)


    -Passendes Opfermodul


    -16F630 PIC (Der Gleiche der auch für den Switchless Mod von ikari_01 verwendet wird)


    -PIC Programmer (ich benutze das PICkit 3 von Microchip, es gehen aber auch z.B. der Willem EPROM-Programmer)


    -Die TSOPswitchless-PIC.hex datei. Die bekommt ihr hier Passwort ist: snes-projects.de


    -4 LEDs + Vorwiderstände (Optional)


    -256Kbit SRAM (Optional)





    1.3 Vorbereitung


    TSOP:


    Beim Anschließen des TSOP ist eigentlich nur darauf zu achten, dass
    pin 24 (CE) und pin 2 (A21) komplett von der Opferplatine getrennt sind.



    => WICHTIG!


    Speziell für Zelda - The Ancient Stone Tablets:
    Da das Spiel für alle 4 Wochen den selben SRAM benenutzt, gilt der Abschnitt 1.3.2 für dieses Spiel nicht.
    Der SRAM vom Opfermodul(wenn 64Kbit oder größer) kann also so gelassen werden, wie er ist.
    Es ist KEIN liften nötig. Und Pin 2 und 3 vom PIC bleiben ebenfalls frei!
    Macht also gleich weiter mit Punkt 2: Programmieren des PIC



    Je nachdem ob ihr Spiele benutzt, die einen SRAM benötigen oder nicht, sind verschiedene Vorkehrungen zu treffen.


    1.3.1 Ohne SRAM


    Wenn ihr keinen SRAM benötigt, bleiben später pin 2 und 3 am PIC frei.
    Und ihr könnt gleich weiter zu "2. Programmieren des PIC"


    1.3.2 Mit SRAM


    Als erstes müsst ihr wissen, wieviel SRAM eure Spiele benötigen.
    Ich gehe davon aus, dass jedes Spiel 64Kbit RAM benötigt (da sehr viele Spiele max 64Kbit benötigen)
    Sollten eure Spiele mehr als 64Kbit benötigen könnt ihr leider nur den Spielstand eines einzigen Spieles speichern.
    Oder ihr benutzt Ram, der genug Platz für den gesamten RAM der ROMs hat.
    (Die pins 2 und 3 am PIC geben die nummer des spiels binär aus, ihr könnt also theoretisch auch größeren SRAM nehmen, müsstet dann aber
    selber rausfinden, wie ihr alles verdrahten müsst)


    Zurück zur 4*64Kb Variante:


    Vermutlich hat euer Opfermodul 64Kbit an RAM. Den müsst ihr auslöten. Als nächstes braucht ihr SRAM mit 256Kbit Speicher.
    Jetzt müsst ihr beim RAM die Pins 1 und 26 hochbiegen
    das sind die Adresslines 13 und 14, die es beim 8Kbit RAM nicht gibt
    Hat euer Opfer anderen RAM, müsst ihr gucken wie die pinbelegung ist und entsprechend anpassen.
    Der RAM kann nun ganz normal eingelötet werden (natürlich bis auf pin 1 und 26).




    ______________________________________________________________________________



    2. Programmieren des PIC



    2.1 Für den Willem EPROM Programmer:


    Öffnet die Software für den Willem und wählt bei Device Select:


    Microchip PIC10/12/16 -> PIC12/16Fxxx (14bit) -> PIC 16F630
    Stellt den DIP-schalter so ein, wie im Programm abgebildet


    Als nächstes wählt ihr links bei Oscillator: IntOSC I/O
    Setzt als nächstes NUR Haken bei "Power-up Timer" und "Brown-out Enable"
    Unten links bei CONFIG sollte jetzt folgendes stehen: 00-0001-1100-0100



    Danach "Open File" und wählt die "TSOPswitchless-PIC.hex" Datei
    Klickt anschließend auf "Program/Test RAM"
    Jetzt sollte der PIC beschrieben werden
    Wenn die Meldung kommt:
    OSSCAL= 0x3458 - do you want use value from file (0x3fff) instead
    Wählt im Fenster "Nein"


    2.2 Mit MPLab


    startet MPLab und wählt unter "Configure -> Select device" den PIC16F630


    Anschließend geht auf "Programmer -> Select Programmer" und wählt euren angeschlossenen programmer aus. In meinem Fall das PICkit 3


    Nun geht auf "File -> Import..." und wählt die "TSOPswitchless-PIC.hex" datei


    Als nächstes geht auf "Programmer -> Program" und der PIC wird beschrieben


    ______________________________________________________________________________



    3. Anschließen des PIC


    Der PIC wird folgendermaßen beschaltet:


    pin 1: 5V
    pin 2: RAM pin 26 (optional, siehe Punkt 1.3)
    pin 3: RAM pin 1 (optional, siehe Punkt 1.3)
    pin 4: RESET vom SNES (der ALTE pin 26 vom 64kbit SRAM oder #26 vom SNES)
    pin 5: frei
    pin 6: frei
    pin 7: LED Spiel 1 (Vorwiderstand nicht vergessen)
    pin 8: LED Spiel 2 (Vorwiderstand nicht vergessen)
    pin 9: LED Spiel 3 (Vorwiderstand nicht vergessen)
    pin 10: LED Spiel 4 (Vorwiderstand nicht vergessen)
    pin 11: pin 2 (A21) von BEIDEN TSOP
    pin 12: pin 24 (/CE) von TSOP 1 (der mit den beiden ersten Spielen)
    pin 13: pin 24 (/CE) von TSOP 2 (der mit den beiden letzten Spielen)
    pin 14: GND


    Code
    __  __
                        5V |01\/14| GND
                   Ram #26 |02  13| TSOP 2 #24
                   Ram #1  |03  12| TSOP 1 #24
                     RESET |04  11| TSOP #2
                        NC |05  10| LED 1
                        NC |06  09| LED 2
                     LED 4 |07  08| LED 3
                            ------


    Pin 2 und 3 bleiben für Zelda - The Ancient Stone Tablets unbelegt.
    Wer auf die Anzeige per LEDs verzichten kann, kann die pins 7-10 auch unconnected lassen.
    Man sollte allerdings darauf Achten, dass sie keinen Kontakt mit anderen leitenden Teilen haben.


    Danke auch nochmal an ikari_01 für die hilfe bei dem Projekt!


    Cheers
    Chiller3k

  • Geil !


    Ey heftig das sieht richtig cool aus !


    Mal ne doofe Frage: Wäre es damit möglich Megaman 7,X1,X2,X3 auf eine Cart zu packen ?


    Bei X2 und X3 braucht man ja das Rockman Original. Wenn man das hätte, wäre es dann möglich ?


    Gruß Aggri

  • Puh das ne gute Frage. Also ich kenn mich da leider nich aus, was Megaman angeht


    Wenn allerdings "normale" games auf dem Rockman original auch laufen, dann sollte das ganze allerdings funktionieren.
    Der SNES "sieht" ja jedesmal nur ein Spiel. ist also egal, was da sonst noch auf dem TSOPs drauf is, da immer nur ein game zur Zeit abrufbar ist.

  • Hab zwar nur ganz wenig Ahnung vom Löten, aber habe schon viel mitgelesen.


    Werden sich da die verschiedenen Chips nicht beißen ?


    MX1 und 7 haben einen anderen wie X2 und X3. Also hätte man nicht das Problem das dieser C4 Chip garnicht mit X1 und 7 kompatibel ist ?

  • Schade !


    Ansonsten wäre die Megaman Quadrologie geboren :)


    Danke Chiller für die nette und schnelle Auskunft :thumbup: