Tutorial aktualisiert
Beiträge von borti4938
-
-
Tutorial angepasst
-
Ich konnte es gestern natürlich nicht mehr abwarten
Ich muss echt sagen, dass sich das Neudesignen richtig gelohnt hat! Ich bin sehr zufrieden mit der Lage der Litzen - kaum Kreuzungen drinnen, weil die Lötpads nach den Lötstellen im SNES geordnet sind Den Vergleich zu vorher sieht man ja im Einbaututorial. Dies wird übrigens noch um die Version 2 ergänzt, obwohl der Silkscreen ja jetzt schon fast mit einer kompletten Einbauanleitung daherkommt!
VG
-
Heute 50 von diesen komischen Dingern von der Post abgeholt
-
Die Vorfreude steigt - diese Woche, spätestens Anfang kommender Woche kommen die Platinen
PS: Falls die Platinen noch diese Woche kommen - ich bin das Wochenende nicht zu Hause :?
-
Gerade mal die vier Ersatzplatinen auf uIGR Version 2 umgerüstet
Ich hoffe trotzdem, dass die nie zum Austausch kommen. Toi, toi - bisher kam keine Reklamation rein
VG
-
Bei Nichtdrücken wird eine '1' ausgegeben
Aber wie ich schon sagte: bei deiner vorgeschlagenen Methode reicht der interne Takt nicht aus. Mit Einlesen und Sprüngen brauche ich 11us - Zeit habe ich 12us, bei manchen 24us (siehe Oszi-Bilder aus dem ersten Link). Müsste ich jetzt noch eine Abfrage mehr machen, bräuchte man nochmal durch Timerreset 2us mehr, also insg. 13us - das reicht mir für die meisten Spiele nicht... Ich muss ja immer n Timer neustarten, der bei längerer Pause n Interrupt auslöst - so ohne Latch weiß man ja nicht ohne weiteres, wo der Anfang ist. Deswegen würde ich mit dem Timer n "größere" Lücke zwischen zwei Clockpulsen detektieren. Den es sagt mir ohne Latch keiner, dass die erste gemessene Clk auch die erste war - stumpf bis 8 zählen ist meiner Meinung nach unklug! Ne, da ist mir die eine Litze für das Latch doch lieber
Achso: wenn man nicht bei Latch die erste Taste ausliest rückt das 'A' ans Ende der Reihe
PS: Aber danke für die Idee so ähnlich wird das beim N64 laufen müssen Da werde ich ja nur Data haben.
PPS: Klar war das Kritik, aber Kritik ist bei mir nicht gleich negativ behaftet - konstruktive Kritik ist doch immer noch die beste Kritik und förderlich für gute Mods -
Und wie willst du das machen? Das geht meiner Meinung nach nicht!Außerdem ist nun eine Litze mehr nicht wild & durch die großen Bauelemente wirklich extrem einfach!!!
Edit: Nach längerem Überlegen - es geht doch. Da müsste man aber die Zeit zwischen zwei Impulsen an der Clock mit messen. Da das ganze eh schon recht zeitkritisch ist, behaupte ich mal, dass die 4Mhz interner Takt (pro Instruktion 4 Takte, d.h. 1us pro Instr.) nicht reichen werden! da müsste man n externen Takt anfügen und man hätte an Lötarbeit nichts gewonnen, eher verloren! Es bleibt dir natürlich frei, den Assemblercode zu modifizieren, dass du den Latch nicht brauchst, wenn dir die eine Litze eine Litze zu viel ist :P.
OT: Für den N64 IGR braucht man n externen 20MHz Takt, um die '0' und '1' aufzulösen - da habe ich mir übrigens schon Materialien besorgt... Der kommt als nächstes dran.
VG
-
1. Laut Schematic geht die LED beim Resetdrücken aus: http://www.freeinfosociety.com…ics/schemview.php?id=2405
2. Die erste Taste wird beim negativer Latchflanke ausgelesen: http://www.mit.edu/~tarvizo/nes-controller.htmlHat also alles seine Richtigkeit
-
Moin Community,
angefangen hat es am 08.12.2013 im Circuit-Board als mi213 bei dem Design für ein Controllerreset brauchte. Verwirklichen wollte er das ganze auf dem Attiny85. micro hatte ihm stark unter die Arme gegriffen und recht schnell war dann auch n passende Version fertig ;). Parallel dazu wollte ich dann noch den Controllerreset für den PIC 12F629 fertig machen. mein PICKit 3 braucht halt auch seine Daseinsberechtigung :D.
Hier kann man nochmal einiges Nachlesen: http://circuit-board.de/forum/viewtopic.php?f=19&t=12108
Nach dem Umbau kann die Konsole per A+B+Start+Select resettet werden! Der Nachbau dauert keine Stunde
Und nun zum eigentlichen Tutorial
Hinweis:
Das Tutorial ist hauptsächlich für das europäische NES geschrieben, welches auch in den Bildern gezeigt wird. Es kann jedoch beliebig adaptiert werden.0. Benötigte Werkzeuge und Materialien
Prinzipiell ist die Liste der Werkzeuge und Materialien doch recht übersichtlich
- PIC 12F629
- 100nF Kerko
- Lötausrüstung
- Schraubendreher (Kreuz)
- Optional: Sockel für den PIC
Natürlich sollte man den PIC auch beschreiben können!
1. PIC beschreiben und vorbereiten
Zunächst muss der PIC natürlich beschrieben werden! Das Hex-File habe ich in meiner Dropbox zur Verfügung gestellt und kann hier downgeloaded werden: https://dl.dropboxusercontent.…_IGR_Tutorial/nes_igr.zip
Benötigt wird nur das Hex-File, wer am Assemblercode herum schreiben möchte, kann dies gerne tuen
Hinweis:
Der PIC läuft mit seinem internen Takt von 4Mhz! Dieser wird über das sogenannte OSCCAL-Register kalibriert. Da dieser am Anfang des Programms abgefragt wird, ist es essenziell wichtig, dass dieses Register NICHT überschrieben wird bei der Programmierung des PICs! Gerade wer Programmiergeräte verwendet, die nicht von Microchip sind, sollte tunlichst darauf achten!!!Zur Vorbereitung des PICs ist nicht viel zu sagen - es kann in zwei Schritte geteilt werden:
- Kerko von 100nF zwischen Pin 1 (Vcc) und Pin 8 (GND) löten, damit der interne Oszillator auch mit 4MHz arbeitet
- Pin 4 muss entsprechend des Resettyps auf GND oder Vcc gelegt werden.
Konkret heißt das:- Konsole hat "/Reset" (Famicom): Pin 4 auf GND legen, d.h. mit Pin 8 verbinden
- konsole hat "Reset" (NES): Pin 4 auf Vcc legen, d.h. mit Pin 1 verbinden
2. Vorbereiten der Konsole
Wie man die Konsole aufschraubt, muss ich sicherlich nicht ausdrücklich beschreiben. Ich habe auch keine Fotos. einfach solange Kreuzschrauben lösen (das sind ein Paar), bis man das Mainboard in der Hand hat
Hinweis:
Es gibt zwei längere Schrauben an der Modulmechanik. Diese müssen natürlich anschließend zwingend auch wieder an Ort und Stelle platziert werden! Generell gilt jedoch, dass alle Schrauben wieder dort hin sollten, wo sie waren, weil die Gewinde im NES aus Plastik sind - am Besten entsprechend der Position im NES auf einem separatem Tisch hinlegen...Auf der Rückseite sind dann ein Paar ICs, an die wir gemütlich einige Litzen vorbereiten können. Die Litzen erst mal nicht zu kurz wählen. Hier einmal in der Übersicht:
Wir müssen an folgende ICs ran:
- CPU
- CIC (hier habe ich beispielhaft die Litzen für Vcc und GND angebracht)
- 74HC368 (U7)
Los gehts
2.1. Vorbereitung an der CPU
Hier eine Litze an Pin 39 und eine Litze an Pin 36 anlöten. damit alles super sitzt, sollte natürlich Pin und Litze verzinnt sein.
2.2. Vorbereitung am CIC
Hier kommen insgesamt drei Litzen ran - eine für Vcc, eine für GND und eine für den Reset.
- Vcc liegt an Pin 16 an
- GND liegt an den Pins 12 - 15 an (ich habe Pin 12 gewählt)
- Resetsignal kommt beim CIC an Pin 7 an
An den drei Stellen bereiten wir Litzen vor.Pin 7 sieht so komisch aus, weil ich den Pin vom Mainbpard getrennt hatte, um den Switchless-Mod für die RGB-Platine zu testen. Pin 7 habe ich mit einem kleinen Draht jetzt aber wieder mit der Durchkontaktierung verbunden, weil ich den Pin nicht zurück biegen wollte.
Anmerkung:
Vcc und GND können natürlich noch an vielen Stellen im NES entnommen werden!
Wer in seinem NES noch nicht den Lockout-Chip deaktiviert hat, kann dies gleich mitmachen: einfach Pin 4 des CIC vom Mainboard trennen. Wer es ganz sauber haben will, verbindet den Pin 4 noch mit GND (ich habe dazu Pin 14 gewählt). Dann kann man auch PAL-A und US-Spiele an seiner PAL-B NES zocken2.3. Vorbereitung am 74HC368 (U7)
Oben rechts am Mainboard befinden sich zwei 74HC368 - einer für Player 1 (U7) und einer für Player 2 (U8). Da der Controllereset für Player 1 sein soll, machen wir uns an U7 zu schaffen und löten eine Litze an Pin 2.
3. PIC 12F629 einbauen
Nachdem wir nun die Litzen vorbereitet haben, suchen wir uns ein gemütliches Plätzchen für den PIC aus. Ich habe den Bereich zwischen CPU und und PPU aus. Ich habe den PIC mit Heißkleber fixiert. Im Überblick schaut das ganze jetzt so aus.
Damit man nicht jede Litze einzeln nachverfolgen muss, hier nochmal in Detail
Im asm-File ist das ganze wie folgt dokumentiert:
Code; pin configuration: (controller port pin) [Mainboard pin] ; ,------_-----. ; +5V (7) [CIC Pin 16] |1 8| GND (1) [CIC Pin 15] ; Reset in/out (-) [CIC Pin 7] |2 GP5 GP0 7| serial data in (4) [U7 74HC368 Pin 2] ; not connected out |3 GP4 GP1 6| latch in (3)[CPU Pin 39] ; Reset type in |4 GP3 GP2 5| clk in (2) [CPU Pin 36] ; `------------'
4. Abschließende Schritte
nun ist der Mod fertig Vor dem Zusammenschrauben des NES am Besten noch einmal testen. Der Reset wird mit der Tastenkombination
A+B+Start+Select
ausgelöst. Beim Reset geht die Power-LED kurz aus, was aber normal ist. Das ist mir auch vorher noch nie aufgefallen ;).
Wenn alles funktioniert, kann der NES wieder zu gemacht werden!
Viel Erfolg beim NachbauenAn dieser Stelle nochmal vielen Dank an mi213 für die Idee und an micro für die Oszi-Bilder
-
Kurzes Update:
Erledigt:
- PICs sind beschrieben
- Umschläge für den Versand beschriftet
- Bausätze soweit zusammen gestellt
ToDo:
- auf die Platinen warten
- Erstplatine zusammensetzen und testen
- Tutorials anpassen (Platine Version 2 einarbeiten)
- Platinen den Bausätzen hinzufügen
- Rest zusammenlöten
- Versand
- Bierchen trinken :mrgreen:
So wird ein Bausatz für eine Platine aussehen (für mehr Platinen entsprechend mehr Bauelemente)
zugspitzjockl:
Es wird sicherlich n Runde 3 geben -
Kurzes Update:
- Auftragsbestätigung der PCBs mit Gegencheck gelaufen
- Teile wurden heute schon geliefert
Folgendes steht jetzt auf meiner ToDo-Liste:
- PICs flashen (dieses Mal "nur" 100 Stück :P)
- Bausätze soweit zusammenstellen
- auf PCBs warten
- PCB im eigenen SNES testen
VG
-
So - Platinen sind bestellt und bezahlt. Es gibt also kein zurück mehr
Edit: War im Kaufrausch und habe gleich Teile geordert
-
Moin Leute,
ich möchte eine zweite Auflage der SNES-Multinorm-Platinen starten.
Dieses Mal ist die !!!Anzahl auf 50 Stück insgesamt begrenzt!!! egal ob für 1Chip, oder 2Chip-SNES
EDIT: KEINE MEHR ZU VERGEBEN !!!
Also, nochmal kurz: was ist auf der Platine drauf und was ist neu?
- Super-CIC in bewährter Version von Ikari_01
- der von mir modifizierte In-Game-Reset in Version 2 (neue Funktion: $213f-D4-Patch abschaltbar)
- $213f-D4-Patch zur Regionenüberschreibung bei Abfrage (durch uIGR abschaltbar)
- Taktschaltung für das SNES zweiter Auflage (1Chip-SNES)
Ich habe das Platinendesign komplett überarbeitet, sodass der Einbau noch leichter gehen sollte! Diesmal bestimmt die Lage der Lötpositionen im SNES (wie bewährt auf der Unterseite) die Position der dazugehörigen Lötpads auf der Platine und somit das Design - die Litzen kreuzen sich nicht mehr so stark, bzw. fast gar nicht
Es wird auch nur noch ein Design geben - wer die Platine in ein 2Chip-SNES einbaut, lötet halt ICs, Widerstände, Kondensatoren und Quarze nicht auf die Platine! Beziehungsweise, es stört auch nicht, dass die Bauelemente drauf sind (falls man mal die Platine in ein anderes SNES einlöten möchte).
Also, wer dabei sein möchte, schreibt mir eine PN und ich nehme die Person in meine Liste mit auf! Bezahlung ist per Vorkasse auf ein Projektkonto! Da ich nicht wieder so viel aus eigener Tasche vorstrecken kann/möchte, läuft die Bestellung erst an, wenn ich einen gewissen Betrag auf dem Projektkonto zusammengetragen habe. Also bitte nicht damit rechnen: heute bezahlt, nächste Woche geliefert! Es steckt halt viel Arbeit in der Organisation, die ich auch nur Privat zumeist Abends mache Ich werde wieder immer mal wieder alle auf dem Laufenden halten!!!
Und nun zum finanziellen:
Folgender Betrag ist im Vorschuss fällig (wieder nach oben abgeschätzt, damit ich gut wirtschaften kann :D)
- Platine mit Bauelementen: 10,00€
- Bestückung (wer möchte, kriegt man aber gut alleine hin): 5,00€
- Versand und Versandmaterialien: 1,50€
Am Ende gibt es wieder eine Abrechnung
Also: Interessenten bitte PN an mich!!!
Ich brauche:- Was wollt ihr haben, d.h. wie viele Platinen?
- Braucht ihr LEDs? Wenn ja, RG- oder RGB-LEDs?
- Adresse (gleich für meine schlaue Liste ;))
Fragen zu den Platinen können gerne in diesen Thread!!! Aber bitte keine Fragen ala: "Was kann die Platine?", "Was ist der S-CIC?", und so weiter - dazu gibt es eine Suchfunktion, bzw. google
VG
-
Alles was du so an Elkos hinter dem Cart-Slot siehst - vorne weg natürlich der große Dicke 2200uF direkt unterm Kühlblech... Wo wir schon bei Kühlblech sind - mach mal hauchdünn Wärmeleitpaste zwischen 7805er (das Ding, was da angeschraubt ist) und dem Blech...
-
So, jetzt wirds Zeit für nen Probelauf aufm Breadboard - das PCB ist nämlich quasi schon fertig (was man nicht alles tut, um sich von der Lernerei abzulenken ;))
Würde ca 11€ kosten so pro Stück (Platine und alle Bauteile), man braucht dazu halt noch 4 controllerbuchsen und 1 stecker - 4 verlängerungskabel bei ebay kosten z.b. 10€ inkl versand.
Hast du den Auto-Router von EAGLE genommen? Manche VIAs sehen verdammt dicht zu den Pads aus und manche Leitungen haben 90Grad Knicke - das geht zwar, ist aber ungünstig, weil dadurch die Fehlerrate bei der Produktion steigt... Ich persönlich route lieber per Hand - macht eh mehr Spaß
-
Hatte deine Intention schon verstanden - hab das ja damals auch so gemacht, als für mich Löten noch n Fremdwort war. Das sollte bloß der Vollständigkeitshalber erwähnt sein
-
Genau - Bilder sind immer gut.
Ansonsten kann es auch am 7805 liegen und an den Elkos... Reset würde ich mal ausschließen, könntest du aber auch einfach mal so spaßenshalber am PIC die Litze von Pin 11 lösen und einfach auf +5V legen (dann kannst du zwar nicht mehr resetten, aber das sollte zum Test erst mal Wurst sein ;)). -
Oh - hier gibt's ja auch n Tutorial zum NES-Multinorm
Nur n kleine Anmerkung: Pin 4 des CIC offen lassen funktioniert zwar, aber ist nicht so gut. Man sollte ihn dann doch mit einer Litze oder so an GND löten, z.B. beim CIC Pin 11-15! Das ist sauberer
VG
-
Jo, Fotos wären nicht schlecht...
PS: Wenn du zufällig Nähe Schwerin wohnst, könnte ich dir auch helfen, wenn du mal bei mir vorbeischaust