Beiträge von borti4938

    • Gibt es "Nebenwirkungen"?
      Bisher bekannt: Wer ein sd2snes besitzt, könnte welche haben. Der sd2snes gibt dem S-CIC die Region der ungemoddeten Konsole, in der das sd2snes zuletzt gesteckt hat. Das sd2snes besitzt selbst eine D4-Patch-Schaltung für die ROMs. Ist eure "stärker", kann es sein, dass das ROM eine "falsche" Region bekommt und die lustige Meldung von oben ausgibt.
    • Gibt es ein Work-Around, um die Nebenwirkung zu umgehen?
      Im S-CIC der Konsole und dem S-CIC auf dem sd2snes ist ein Pairmode implementiert. Dieser steht allerdings noch auf der ToDo-Liste von Ikari, dass dieser auch vom uC unterstützt wird. Sobald dieser Par-Mode vorhanden ist, kann man über den sd2snes die Region der Konsole umstellen UND die Region für den PIN3 am S-CIC der Konsole wird automatisch dem ROM angepasst. Momentan heißt es: richtiges ROM benutzten (entsprechend der Region) oder Original-Module.


    Ich habe mich ein wenig damit beschäftigt und die Firmware des sd2snes etwas modifiziert. Ich habe den Pairmode aktiviert und sende jetzt immer, wenn ein ROM geladen wird, die entsprechende Region des ROMs an den S-CIC. Damit wirken der D4-Patch auf dem sd2snes und der eigene D4-Patch am Mainboard nicht mehr gegeneinander, sondern arbeiten zusammen. :) Schöner Nebeneffekt - der Automodus funktioniert auch entsprechend der ROM-Region. Was durch den Pairmode weg fällt, ist das Umschalten per Reset. (Aber ehrlich, wer braucht das, wenn der IGR drinnen ist :P)


    Was mir dabei gleich aufgefallen ist, ist, dass der Long-Reset, wie er durch den IGR ausgelöst wird, im Pairmode so nicht funktioniert. Dies habe ich für meine modifizierte Version des IGRs gefixt. Wer einen Bug-Fix für die alte Version des IGRs haben möchte, kann sich gerne bei mir melden - dann arbeite ich das auch rein. ;)


    Dieser "Bugfix" ist nicht wirklich einer, nur ein workaround, solange es keinen "offiziellen" Pairmode gibt. Dieser Workaround im IGR stört aber später nicht und muss somit nicht nochmals umprogrammiert werden ;)


    So - und nun zu den Links:


    Die Teile sind da - das meiste davon kam heute von Farnell!!! Zumindest schon mal für den Probedurchlauf, bevor die große Bestellung kommt :D



    Ich präsentiere zudem - meine Testkandidaten :) Zwei, was Modding angeht, jungfreulich SNES - links eine Konsole der zweiten Revision (1Chip-SNES) und rechts eine der ersten Revision (2Chip-SNES) ;)



    Morgen oder so setze ich mich dann an das Bespielen der PICs :D


    Grüße

    Bevor es richtig mit dem Tutorial losgeht, will ich ein Paar Fragen klären:


    • Wofür ist dieser Mod?
      Dieser Mod bewirkt, dass die berühmte Meldung "This Gamepak is not designed for [...]" unterdrückt wird, wenn die Region des Spielmoduls nicht zu der des SNES-Modus passt. Beim Auslesen des CPU-Registers $213f liegt am Daten Bus bit 4 die Region des SNES an (Vdd (+5V) für PAL, bzw. Vss (GND) für NTSC - halt das, was ihr über den SuperCIC oder IGR eingestellt habt). Liest das Spiel eine andere Region aus, als erwartet, erscheint die schöne Meldung. Die Umgehung dieser Meldung erfolgt durch einfaches Überbügeln des Zustandes an dem D4-PIN, wenn die Region abgefragt wird.
    • Ich habe den S-CIC (und oder den neuen IGR) verbaut. Warum erscheint die Meldung dann im Allgemeinen nicht?
      Das liegt daran, dass die meisten Spiele die Region nur am Start auslesen. Ist der PIN4 des SuperCIC auf +5V, bzw. beim neuen IGR der verzögerte Start eingestellt, dann startet die Konsole in der Region des Moduls und schaltet erst nach ca. 9Sekunden auf die vom User gewünschte Region um. Es gibt allerdings auch Spiele, die immer mal wieder die Region abfragen - die kann man damit nicht austricksen. Dies sind allerdings nur ein Paar wenige Spiele, die das machen.
    • Woher "weiß" die Schaltung, welche Region das eingelegt Modul erwartet
      Diese Information holt die Schaltung sich vom S-CIC. Die Region des eingelegten Spielmoduls liegt an PIN3 des S-CIC an. Den hatte ich auch bei meiner Modifikation/Erweiterung des IGRs genutzt.
    • Gibt es "Nebenwirkungen"?
      Bisher bekannt: Wer ein sd2snes besitzt, könnte welche haben. Der sd2snes gibt dem S-CIC die Region der ungemoddeten Konsole, in der das sd2snes zuletzt gesteckt hat. Das sd2snes besitzt selbst eine D4-Patch-Schaltung für die ROMs. Ist eure "stärker", kann es sein, dass das ROM eine "falsche" Region bekommt und die lustige Meldung von oben ausgibt.
    • Gibt es ein Work-Around, um die Nebenwirkung zu umgehen?
      Im S-CIC der Konsole und dem S-CIC auf dem sd2snes ist ein Pairmode implementiert. Dieser steht allerdings noch auf der ToDo-Liste von Ikari, dass dieser auch vom uC unterstützt wird. Sobald dieser Par-Mode vorhanden ist, kann man über den sd2snes die Region der Konsole umstellen UND die Region für den PIN3 am S-CIC der Konsole wird automatisch dem ROM angepasst. Momentan heißt es: richtiges ROM benutzten (entsprechend der Region) oder Original-Module.
      Man nehme meinen (inoffiziellen Build) der sd2snes Firmware Version 0.1.6d


    So, wer jetzt noch nicht abgeschreckt ist, für den geht es weiter! Das Tutorial ist in vier Teile gegliedert: Theorie, Materialien mit Linkliste, Vorbereitung der ICs und Einbau der ICs! Also lasst uns loslegen! Die Beschreibung zu einem Bild ist IMMER direkt unter dem Bild und nicht darüber ;)


    1. Theorie


    Hier möchte ich einfach mal Ikari_01 aus'm snesfreaks-Forum zitieren. Ich brauche mir ja nichts ausdenken ;)



    Ich persönlich habe festgestellt, dass man beim 74HC/HCT125 mehrere Gates parallel nutzen muss, um das Videomode-Flag zuverlässig auf den geforderten Pegel zu "zwingen". Aber dazu später mehr ;)


    2. Materialien mit Linkliste


    Diese Sachen benötigt ihr:

    • 74*04 (LS/HC/HCT/F) - ich habe einen 74LS04 genommen
    • 74HC/HCT125 - ich habe einen 74HC125 genommen
    • 74*133 (LS/HC/HCT/F) - ich habe einen 74LS133 genommen (habe noch vier hier, der haben möchte)
    • Das übliche halt noch - Lötausrüstung, Kabel, ggf. Multimeter, Musik, Kaffee, etc.


    Hier ist eine kleine Linkliste, zu nützlichen Seiten:


    Vorschläge, welche Links noch nützlich sind, gerne posten ;)


    Und nun noch zu den Schaltplänen:


    Die Gates eines Bausteines können beliebig getauscht werden... ;)


    3. Vorbereitung der ICs


    Bevor es losgeht, wollen wir die ICs vorbereiten. Diese habe ich genommen.

    Vcc liegt immer am oberen rechten PIN an und GND am unteren linken, also

    • 74LS04 und 74HC125 - Vcc an PIN14 und GND an PIN7
    • 74LS133 - Vcc an PIN16 und GND an PIN8


    Zunächst habe ich an allen ICs die PINs hoch gebogen und etwas "verkürzt". Das habe ich jetzt nicht


    Ich fange mal mit dem 74LS04 an:



    Wir benötigen drei der insgesamt sechs Inverter. Da die restlichen nicht einen "offenen" Eingang haben sollen, legen wir die Eingänge einfach auf GND. Ich habe die Gates (1,2), (3,4) und (5,6) nicht benutzt, weil die auf der Seite des GND-PINs liegen. Dann habe ich einfach eine Brücke rübergelegt. Später nutze ich die Gates (13,12), (11,10) und (9,8). (Bezeichnung immer (Eingang, Ausgang)).


    Der 74HC125:



    Der IC ist etwas "komplizierter". Um alle Gates "parallel" zu nutzen, muss man jeweils Schalter, Eingang und Ausgang zusammen löten, also einmal die PINs

    • 1, 4, 10 und 13 - die Schalter (rot),
    • 2, 5, 9 und 12 - die Eingänge (schwarz), und
    • 3, 6, 8 und 11 - die Ausgänge (braun)


    mit einander verbinden. Hier ist ein ruhiges Händchen gefragt, weil die Kabel so kurz wie möglich sein sollen, damit das Gate möglichst effektiv arbeitet.


    Der 74LS133:



    Der 74LS133 ist ein 13-fach NAND. Die PINs 1-7 und 10-15 sind Eingänge, der Ausgang liegt an PIN9. Da wir nur 9 Eingänge nutzen, müssen 4 auf Vcc (logisch 1) gelegt werden. Sonst läuft gar nichts. Ich habe die PINs 12-15 genommen, weil diese gleich am Vcc-PIN 16 sind.
    (Ich habe im Bild ein PIN vergessen - den habe ich später mit angefügt).


    Nun sind wir fertig und können mit


    4. Einbau der ICs


    beginnen.
    Das erste, womit wir uns beschäftigen, ist die Platzierung der ICs im SNES.



    Hier ist erstmal das SNES-Mainboard von unten. Es handelt sich um eine 2PPU-SNES - unten ist der Anschluss zum Controller-Port, in der Mitte der Cart-Connector und oben das übliche Anschluss-Gedöns :D. Wir bauen die ICs am Cart-Connector ein. In den folgenden Bildern bleibt das Mainboard so liegen.



    Die ganzen PINs am Cart-Connector wirken im Schaltplan noch recht verteilt und "unübersichtlich". Wenn man sich das aber anschaut, ist es doch recht sortiert.

    • Links liegen PA0 - PA5, die direkt am 74LS133 gehören,
    • rechts liegt PA6, PA7 und /PARD, die rein zufällig erst an über den Inverter 74LS04 zum 13-NAND müssen, und
    • in der Mitte ist der D4-PIN vom Datenbus.


    Hat Nintendo also gut für uns "organisiert". Zur Info: auf PIN5 und PIN36 liegt GND an, auf PIN27 und PIN58 Vcc. Wer will, kann mit einem Multimeter andere "erklingeln". Zurück zum Thema: Also habe ich die ICs dorhin gelegt, wo auch die PINs sind.



    Von links nach rechts habe ich die ICs 74LS133, 74HC125 und 74LS04 geklebt; so, dass kein Widerstand und kein Kondensator beklebt wurde. Zur Orientierung liegt bei den ICs PIN1

    • des 74LS133 unten links,
    • des 74HC125 oben links, und
    • des 74LS04 unten links.


    Ich habe schon mal den 74HC125 angeschlossen:

    • Das graue Kabel kommt vom PIN3 des SuperCIC (PIN8 des uIGRs) und liegt an den Eingang-PINs (2, 5, 9 und 12 - schwarz) des 74HC125.
    • Der Ausgang des 74LS133 (PIN9) kommt an die Schalter des 74HC125 (PIN 1, 4, 10 und 13 - rot).
    • Die Ausgangs-PINs (3, 6, 8 und 11) des 74HC125 kommen an den D4-PIN des Datenbusses (PIN50 des Cart-Connectors).


    Weiter geht es mit dem 74LS04:



    Eigentlich recht einfach - ein jeder Eingang des ICs kommt an einen PIN des Cart-Connector, also an PA6 (PIN3), PA7 (PIN34) und /PARD (PIN4). Die Ausgänge kommen an einen Eingang des 74LS133.


    Weiter geht es mit dem 74LS133:



    Wie gesagt, vier Eingänge sind auf Vcc gelegt, drei sind durch den 74LS04 besetzt und die letzten sechs kommen an den Cart-Connector PA0 - PA5 (PINs 28, 29, 30, 59, 60 und 61). Der Ausgang des 13-NAND kommt wie gesagt an den 74HC125.


    Hier sieht man jetzt nochmal alle ICs, wie sie verbunden sind.



    Was jetzt noch fehlt, sind an jedem IC Vcc und GND. Das kann entweder vom Cart-Connector genommen werden (Vcc an PINs 27 und 58; GND an PINs 5 und 36). Man kann auch alternative Punkte mit einem Multimeter durchklingel ;)



    Jetzt sind wir fertig. Wer nur den SuperCIC verbaut hat, bzw. mit den von Ikari originalen IGR verbaut hat, kann jetzt PIN4 des SuperCIC auf GND gelegt werden. Wer den neuen von mir modifiziertem IGR verbaut hat und PIN3 des SuperCIC sowieso schon auf GND hat, kann den verzögerten Start ausschalten (Tastenkombi: L+R+Select+Pfeil nach unten)...


    Viel Spaß beim Selbstbau :D Anmerkungen nehme ich sehr gerne entgegen.

    AAAAAAAAaaaaaaa - das dauert doch noch :P N bissl Geduld noch :thumbup:


    Zitat von mew

    es kommt dann auch wirklich nie mehr "Not designed for your SNES" bzw. Blackscreen?


    Drücken wir die Daumen - die bisherigen Tests versprechen es ;) Bei mir liefen bisher 4 Konsolen mit D4-Patch vernünftig. Nur beim sd2snes kommt bei manchen Spielen der Screen noch, weil die Region, die erkannt wird, nicht der des ROMs entspricht. Da hilft nur umschalten und per Controller kurz resetten ;)

    Kurzes Update:


    - Firmware des IGRs nochmals leicht angepasst - siehe hierzu das Tutorial
    - Die PCBs werden gefertigt. Da ich von der Funktionalität der Logik überzeugt bin, werde ich gleich ALLE PCBs für die unverbindl. Vorbesteller anfertigen lassen, um Kosten und Versand zu sparen. Hergestellt werden die bei PCBCart.
    - Bei den Teilen werde ich dennoch erst "nur" die Teile für die Testplatinen kaufen ;)

    Ich habe im Zuge der Entwicklung der SNES-SCIC+uIGR+D4-Patch-Platinen den uIGR noch etwas "verfeinert". Dazu gekommen ist, dass jetzt auch nach einem einfachen Reset (egal, ob über Reset-Knopf oder Controller) gewartet wird, d.h. zunächst ca. 9Sekunden der Modus des Moduls ausgegeben wird. Dies wird natürlich auch mit deaktiviert (start+L+R+Pfeil-nach-unten) bzw. wieder aktiviert (default - start+L+R+Pfeil-nach-oben)... Der Link ist wie oben ;)


    Edit: Code getestet und für gut befunden :thumbup: Anmerkungen/Probleme nach wie vor gerne per PN geben ;)

    Kurzes Update:


    Ich bitte noch um etwas Geduld! Mein Supporter - Bencao - hat momentan "Landunter" und bei Ihm geht zumind. diese Woche nichts mehr. :(


    Sobald er wieder Zeit hat, meldet er sich bei mir und es geht los mit der Produktion der Prototypserie, um zu checken, ob das Design auch so funktioniert. Das heißt aber nicht, dass momentan Stillstand ist. ;)


    Bisher ist folgendes Fertig:

    • Adapter zur Programmierung der SMD-PICs
    • Artikelnummern der Bauelemente bei Farnell rausgesucht und auf Verfügbarkeit geprüft
    • Die 74HC133 ICs sind angekommen (200 Stück)
    • Die Quarze sind bestellt (je 100 Stück)
    • Der Rest der Bauteile sind bei Farnell bestellt (bisher nur für die Prototypen)


    Da die Quarze bei Farnell gar nicht verfügbar und der 74*133 bei Farnell sehr teuer ist, habe ich diese Bauteile extern bestellt. Dabei gleich so viele, dass es für alle geplanten Platinen locker ausreicht. Alles andere ist bei Farnell zu einem guten Preis verfügbar. Deswegen habe ich dort zunächst nur für die Prototypen bestellt!


    Die SMD-PICs beschreibe ich alle per Hand. Deswegen habe ich mir einen Adapter gebaut, der mich vielleicht n Paar sehr wenige Euros gekostet hat. Ein "professioneller" Adapter würde im Hunderterbereich an Euros kosten. N Bild habe ich im Spoiler.



    Also - es geht voran, wenn auch langsam :). Immer mit der Geduld - ich werde euch auf dem Laufenden halten!!!


    Sobald die Prototypen da sind, werde ich n Tutorial posten, an dem jeder abschätzen kann, ob die Platine einem das Geld wert ist. Und dann wird's losgehen! Einen Termin möchte ich allerdings (noch) nicht nennen...


    Grüße :D

    Bevor jetzt viele Aufgrund des Preises zurückrudern:


    Mir ist gerade aufgefallen, dass es ja auch Nutzen gibt, d.h. mehrere Platinen werden zusammenhängend hergestellt und können nach der Bestückung wieder getrennt werden. Das macht die Bestückung deutlich günstiger. Habe gerade mal angefragt, wie der Unterschied ist. Spontan würde ich sagen ungefähr bei z.B. sechs Platinen pro Nutzen, ein sechstel der Kosten. Und beachtet bitte, dass Versand nur einmalig ist!!!


    Also eher 20Euro pro PCB plus Versand; wenn mein Verständnis für den Nutzen richtig ist, dann eher 15/16 Euro pro Platine - sobald ich mehr weiß, poste ich das natürlich. Ein wenig Zeit zum Überlegen ist ja noch ;)


    @Red: Freut mich, dass du dabei bist! Ein Design für den "alten" IGR schicke ich dir per PN. Die Anpassung für den "neuen" IGR muss ich noch machen. :)


    Grüße

    Neue Zahlen:

    • Platine SNES (1st Revi.): 65
    • Platine SNES (2nd Revi.): 56
    • LEDs: 60 (davon 21 RGB)


    So - und nun zum wichtigen Teil


    Vielen Dank für die hohe Resonanz und das rege Interesse. Das hätte ich NIE erwartet. Ich habe mal mit vielleicht 15 pro PCB gerechnet, aber das ist ja echt der Hammer :thumbup:
    Eine Hochrechnung für den Preis habe ich jetzt dem Anfangsthread beigefügt!


    Aufgrund der hohen Resonanz wird es noch einen letzten Finaltest geben. Der "Test" wird so aussehen, dass von jeder PCB fünf so hergestellt und bestückt werden, wie dies auch später der Fall sein wird! D.h., absolut die gleichen Elemente und die gleiche PCB. Der einzige Unterschied wird darin liegen, dass die PCB nur auf einer Seite bedruckt wird, später sind beide Seiten bedruckt. Also funktional kein Unterschied. Eine Testplatine wird 25 Euro kosten, also auch nicht mehr, als die fertigen. Die Teile sind zwar teurer, dafür ist die Bestückung per Hand. Ein Nachteil hat's allerdings - die Funktionalität an sich ist nicht gewährleistet. Natürlich habe ich vorher nochmal alles durchgeschaut und die DIL-Platinen liefen wunderbar, aber ... man weiß ja nie und ich will keine Garantie geben. Ein Restrisiko bleibt. Sollte natürlich eine aus den fünf PCBs nicht funktionieren, lässt sich später über Ersatz reden :)
    Der Preis ist Vorkasse, die Lieferung kann dauern, da erst alles hergestellt und bestellt werden muss...


    Bei dem Test darf jeder mitmachen, der "hier" schreit. Ich habe n Paar Leute im Hinterkopf, die ich auf jeden Fall fragen möchte. - die haben Vorrang. Ansonsten: wer zuerst kommt, mahlt zuerst. Bitte per PN anschreiben, wer Interesse hat :D


    Grüße

    Moin Community,


    auf Grund vereinzelter Nachfragen habe ich das Design jetzt online gestellt.


    [Downloadlink aus Sicherheitsgründen entfernt -> Anfragen gerne per Mail]


    Die Beschriftung habe ich leicht angepasst ;)


    Wer sich das ganze selber bauen möchte, muss natürlich vor dem Zusammenlöten die PICs beschreiben. Es ist KEINE ISP-Schnittstelle auf dem Board!


    Hier nochmal die beiden Tutorials dazu:


    Ich bin gerade dabei, den Design nochmal neu zu gestalten. Das kann ungefähr so aussehen:



    Da sich dann die Metall-Layer ändern, fallen halt nochmalig für das Design Tooling-Costs an. Dafür gehen aber weniger Litzen über Kreuz :)


    VG



    (Im Spoiler steht der alte Text)

    Kurzes Update: So sehen momentan die Platinen aus ;)


    Platine für das SNES (1st Revi.) mit zwei PPUs:


    Die Größe ist ca. 41mmx38mm.


    Platine für das SNES (2nd Revi.) mit einem S-CPUN (kleines Mainboard):


    Die Größe ist ca. 60mmx38mm.
    Bitte nicht wundern: es können Quarze als SMD, oder auch als bedrahtete angeschlossen werden. Die mit SMD-Bauweise sind einfach nur schwierig zu bekommen; daher das redundante Design...


    Grüße :)

    Am D4-Patch ist ein 13NAND-Gatter (74**133) verbaut, wovon allerdings nur 9 verwendet werden. Der Rest der Eingänge ist bisher auf +5V, damit die Schaltung funktioniert. wenn einer der restlichen vier auf GND liegt, ist der Patch "aus", also tut nichts mehr.


    Also werde ich einen Eingang mit dem IGR ansteuern; so kann ich bestimmen, ob die Schaltung an oder aus ist. Ich werde den PIN 4 des IGRs dazu nutzen, wo bisher der Ausgabemodus des SCIC anliegt. Den kann man aber auch aus dem LED-Status berechnen; also ist diese Verbindung überflüssig ;)


    Das An- und Ausschalten werde ich an den Startmodi koppeln:
    Wenn am Anfang 9 Sekunden gewartet wird, wird der D4-Patch aus sein und anders herum.


    Im circuit-board hatte ich zum D4-patch geschrieben:


    Zitat

    Wegen dem D4-Patch möchte ich folgendes einwerfen:
    Ich weiß nicht, welche Langzeitfolgen der hat. Im Prinzip ist der nur dafür gedacht, Spiele, die wirklich ständig die Region abfragen, die richtige vorzugaukeln. Dabei wird ein Bit, das bei der Abfrage am D-Bus Pin 4 liegt quasi "übergebügelt" - nicht die saubere Art, da man für kurze Zeit n relativ großen Leckstrom erzeugt.


    Beispiel: du zockst n PAL-Spiel auf NTSC-Modus. Wenn das Modul nun die Region abfragt, wird vom Modul n "1", also +5V erwartet. Da du auf NTSC spielst, liegt im entsprechende Register der PPU n "0", also 0V. Die Schaltung des D4-Patches liegt an der Leitung, merkt, dass die Region gefragt ist, und haut +5V rauf. Du hast also für kurze Zeit n Kurzschluß! Es gibt allerdings nur wenige Spiele, die ständig/regelmäßig fragen. Viele checken nur am Start, bzw. nach einem bestimmten Startbildschirm...


    Also, bei Spielen ohne Regionen-Check lieber mit den 9 Sekunden Verzögerung leben, bzw. falls eine Abfrage etwas später kommt (z.B. nach der Sprachauswahl) mal per Hand umschalten... Aber letztlich muss das jeder selber wissen - bei mir werden die SNESen (bisher) "stranguliert" :P

    Ich bekam gerade die Frage:


    Was bedeutet "Ich habe Ikari um ein Feedback gebeten, um evtl. zukünftig geplante Features des sd2snes mit dem IGR "unmöglich" zu machen" per PM.


    Ich meine, ich habe die Funktionen so implementiert, dass alte Funktionen unverändert sind (bis auf die Combo L+R+sel+B auf L+R+sel+ Pfeil rechts (oder links) umgelegt). Das Verhalten bei den einzelnen Modi zwischenzeitlich, wenn nichts verändert wird, habe ich NICHT verändert. Deswegen sollte auch alles funktionieren, was Ikari so in Zukunft plant! Z.B. soll auch irgendwann der Ausgabemodus über den sd2snes gesteuert werden :). Da ich aber auch mal was übersehen kann oder falsch denke, habe ich Ikari gebeten, den Code "abzusegnen" :D...

    Hallo Community,


    einige von euch haben bestimmt mitbekommen, dass die letzten Tage am Circuit-Board im Bezug auf den InGameReset passiert ist! Das Zusammenspiel zwischen SuperCIC und IGR von Ikari wurde ... nun ja, "bemängelt" ist der falsche Ausdruck, aber es wurde sich halt etwas MEHR an Funktion gewünscht.


    Rückblick:
    Bisher war es so, dass per IGR auf 60Hz, 50Hz und den Modus vom SuperCIC geschaltet werden konnte. Wurde per Controller 60Hz oder 50Hz eingestellt, hatte das Umschalten des Modi per Reset keinen Einfluss mehr. Man musste erst per L+R+select+B auf den SuperCIC umschalten. Zumal viele die Kombo L+R+select+B als "Auto"-Modus verstanden, sowie ich z.B. auch :D. Zudem besaß der "alte" IGR keine Speicherfunktion - beim Start war automatisch wieder die Region des SuperCIC drinnen.


    Ok -das musste geändert werden! Und es wurde geändert 8)


    Gesagt, getan - das neue Programm findet ihr hier zum Download:
    Der neue InGameReset


    Wichtig:

    • Erst Weiterlesen, um zu entscheiden, ob ihr den einbauen wollt!

    • Wer nicht sicher ist, ob sein Programmer für den PIC die Adresse 3FFh löscht, sollte sich bei mir melden oder einen anderen PIC nehmen.



    Nun zur ersten, vielleicht interessantesten Frage: Was kann der neue IGR, was der alte nicht konnte?


    Featureliste:

    • Wechselseitiger Modi-Wechsel per Controller und Reset-Knopf jederzeit möglich!
    • Der IGR besitzt jetzt auch einen "Auto"-Modus, in dem der Modi des Moduls ausgegeben wird.
    • Letzt gewähler Modus wird nun auch vom IGR gespeichert
    • Regionentimeout: kennt ihr vom SuperCIC, wenn dort PIN 4 auf +5V ist; am Anfang wird ca. 9 Sekunden der Modus des eingesteckten Moduls ausgegeben, anschließend der vom User gewählte. So wird auch nach einem Reset und Long-Reset gestartet. Dies kann per Controller ein- und ausgeschaltet werden.
    • Regionenpatching an- und ausschalten: Der sogenannte $213f-D4-Patch (wenn in der Konsole installiert) kann mit dem IGR an- und wieder ausgeschaltet werden.


    Soviel dazu - wenn mir noch was einfällt, werde ich es editieren :D Wer bis hierhin nicht abgeschreckt ist, und (noch) nicht zurückschreckt, will sich den IGR bestimmt einbauen ;). Im Prinzip keine große Sache!

    • PIC 16F630 beschreiben
    • Wie gewohnt einbauen, bloß mit drei kleinen Unterschieden!!!:
      • PIN4 des IGRs wird mit PIN3 des SuperCIC verbunden, wie es in der folgenden Grafik zu sehen ist.
      • PIN7 ist nicht mehr der LED-Typ, sondern wird mit dem D4-Patch verbunden.
        Zu dem D4-Patch gehört ein 13NAND, der 74*133. Da werden normalerweise 4 Inputpins auf +5V gelegt (z.B. PIN12 - PIN15), weil nur 9 benötigt werden. Hier einfach einen der übrigen Inputpins des 133er (z.B.PIN12) mit dem PIN7 des IGRs verbinden und die anderen 3 (z.B. PIN13 - PIN15) auf +5V lassen.
      • PIN8 ist der LED-Typ (vorher PIN7 beim klassischem IGR)


      Wer hier aufmerksam war, hat gemerkt, dass PIN12 des SuperCICs eigentlich mit PIN4 des IGRs verbunden war. Diese Verbindung entfällt ersatzlos!

    • Da der IGR im Bezug auf den Ausgabemodus der Konsole als Master, der SuperCIC "nur" Slave ist, kann PIN 4 des SuperCIC auf GND gelegt werden! Der Sicherheitsstart wird eh vom IGR übernommen ;)


    Also hier die Grafik:




    Da ich momentan keine Konsole zum Umbau zur Verfügung habe, möchte ich hier einfach mal zu dem bebilderten Einbaututorial des "alten" IGRs von Red verweisen. (Link in der Sammlung unten) Nicht die kleine Änderung dabei vergessen :!:


    Und zu guter Letzt - die Steuerung. Nicht erschrecken, es ist ein wenig mehr geworden :D


    • L + R + Select + Start
      -> Reset der Konsole (normal)
    • L + R + Select + X
      -> Long-Reset der Konsole (6s)
    • L + R + Select + Y
      -> Region 50Hz/PAL (LED grün)
    • L + R + Select + A
      -> Region 60Hz/NTSC (LED rot) (default bei Neueinbau)
    • L + R + Select + B
      -> Region des Moduls (LED gelb) (neu)
    • L + R + Select + Pfeil nach links (oder rechts)
      -> Umschalten zum Modus des SCIC (was früher L + R + Select + B war, wichtig für ein kommendes Feature des sd2snes :D)
    • L + R + Select + D-Pad oben
      -> Regionentimeout an- und ausschalten
      LED bestätigt beim Einschalten mit aus -> rot -> gelb -> grün -> aus -> "LED Farbe vom aktuellen Modus" (je Farbe ca. 0.4 Sekunden)
      LED bestätigt beim Ausschalten mit aus -> grün -> gelb -> rot -> aus -> "LED Farbe vom aktuellen Modus" (je Farbe ca. 0.4 Sekunden)
    • L + R + Select + D-Pad unten
      -> Regionenpatching an- und ausschalten
      LED bestätigt beim Einschalten mit aus -> grün -> aus -> grün -> aus -> "LED Farbe vom aktuellen Modus" (je Farbe ca. 0.4 Sekunden)
      LED bestätigt beim Ausschalten mit aus -> rot -> aus -> rot -> aus -> "LED Farbe vom aktuellen Modus" (je Farbe ca. 0.4 Sekunden)


    --> Die ganze Anleitung gibt es auch nochmal als PDF: Downloadlink. Vielen Dank dafür an Breaker-of-Worlds aus'm Circuit-Board :) <--


    WICHTIG:
    Bei ersten Programmieren ist standardmäßig der Regionentimeout ausgeschaltet. Sollte man keinen $213f-D4-Patch nutzen, muss man den Regionentimeout einmal anschalten ;)


    Ich hoffe, ich konnte einige überzeugen, sich den neuen IGR zu installieren :) An dieser Stelle nochmal vielen Dank an n00b aus'm Circuit-Board für's fleißige Testen :D !!!


    Grüße :D


    Wenn es fragen gibt, könnt ihr mich jederzeit kontaktieren - entweder per PM oder auch per Email (Adresse im Kopf des Assembler-Files).


    Nützliche Links

    So, jetzt mal zweiter Versuch :)


    Ich habe den IGR jetzt so geändert, dass er wie folgt funktioniert:

    • L+R+sel+start => Reset
    • L+R+sel+X => 6s Reset
    • L+R+sel+Y => 50Hz Modus
    • L+R+sel+A => 60Hz Modus


    Also bis hier ganz normal ;) Neu ist jetzt folgendes:


    • L+R+sel+B => Auto Modus, d.h. Region des Carts
    • Reset-Button an der Konsole => Wie beim SCIC halt, länger drücken wechselt den Modus
    • Letzter per Controller eingestellter Modus wird gespeichert.


    Vorher war es halt so, dass man per Reset nur umschalten konnte, wenn man vorher L+R+sel+B am Controller gedrückt hatte. Wenn zuletzt L+R+sel+A oder +Y gedrückt wurde, konnte man per Reset solange drücken wie man will; passiert ist nichts. Der IGR "hört" jetzt auf den Reset und lässt dann das Umschalten per Reset zu, bzw. lässt genau dann den Modus des SCIC durch. Auch wurde durch L+R+sel+B halt nur die Region des SCIC wieder durchgeleitet, jetzt wird wirklich die Region des Carts eingestellt. Gespeichert wurde im übrigen vorher die letzte Region des SCIC, nicht des IGRs!


    N kleine Geschichte zur Überarbeitung gibts im Circuit-Board. Den Link zu der neuen Version des IGRs bei mir im Dropbox-Ordner!!!


    WICHTIG: Die Version ist noch ungetestet! Ich habe momentan leider nicht die Möglichkeit zu testen. Deswegen sind freiwillige gefragt :D Außerdem:

    • Diese Version darf NUR in Zusammenhang mit dem SCIC verwendet werden!!!

    • PIN 8 des IGR MUSS mit PIN 3 des SCIC verbunden werden!!! Hier wird die Cart-Region gecheckt...


    PS: Falls es die Tage n Update kommt, bitte nicht böse sein ;) Es ist halt eine TESTVERSION