Hallo liebe Mikrocontroller-Gemeinde, ich bin in Sachen Hardware sicher nicht so fit wie ihr, daher gleich vorab: Wer sich an N00b-Fragen stört, der darf meinen Post gern ignorieren. Ich sammle seit Jahren leidenschaftlich Arcade-Automaten, restauriere und repariere diese so gut ich kann. Ich habe nicht wirklich Ahnung von Dingen, die innerhalb von CPUs und Eproms passieren. Es gibt allerdings eine Hardware, die mir persönlich sehr am Herzen liegt, das Capcom PlaySystem III, kurz CPS3. Dieses Board arbeitet mit Custom 72pin SIMMS, auf welchen die Spieldaten durch das auf dem Board befindliche Servicemenu geflasht werden. Dieser Vorgang dauert ca. 1 std. Nun bin ich im Besitz aller erhältlicher Software für das System und suche eine Möglichkeit diesen Prozess zu beschleunigen. Ich wollte mal ganz vorsichtig fragen, ob Ihr es für machbar haltet, und welche Art von Information neben pinouts usw ich brauche. Hier schonmal, was ich bis jetzt weiss: -Die custom SIMMS mit DRAM-SIMMS zu ersetzen, würde bedeuten, dass die Spieldaten nach jedem Start des System neu geflasht werden müssen, allerdings wäre das vertretbar, wenn der Prozess statt einer std in etwa 1 Minute vollzogen wäre. -leider ist das pinout der custom SIMMs anders als das von std DRAM -die address bus size ist größer (21 addresszeilen gegen 11 addresszeilen) -der Leseprozess bei DRAM erfolgt in 2 Schritten (erst raw-auswahl mit 11 addresszeilen und später die column mit der gleichen adresszeile Heißt, soweit mir das bewußt ist, man braucht neben einer eigenen Adapter-Platine auch einen Controller, der den Lese/Schreib-Prozess übersetzen kann. Meine Frage: Haltet ihr es für realistisch daß ein N00b mit ein bißchen Unterstützung sowas hinbekommt, oder meint Ihr ich sollte besser die Finger davon lassen? weitere Infos: http://wiki.arcadeotaku.com/w/CPS3 http://mamedev.org/source/src/mame/drivers/cps3.c.html Bedanke mich herzlich für's Lesen. Viele Grüße, -Alex-
Bitte sei nicht traurig. Aber dein Vorhaben ist auch für einen erfahrenen Entwickler eine Herausforderung.
Bin ich nicht, danke für die ehrliche Antwort!! Falls jemand so etwas zu bezahlbaren Konditionen realisieren könnte, würde ich mich freuen wenn der- oder diejenige sich hier melden würde.
Interessante Frage. Da die CPU (und damit wahrscheinlich auch die SIMM's) nur 25 MHz haben, könnte man die Signale vermutlich relativ einfach in einem CPLD oder mittelschnellen Cortex-M3 oder so abfangen und auf einen Flash umsetzen. Oder vielleicht findet sich sogar ein Parallelflash auf den die Signale direkt passen. Der gewählte Flash müsste lediglich schneller als das Originalzeug sein, aber das ist glaube ich kein Problem... Vielleicht lässt sich das ganze auch auf (schnelle) SD-Karten umsetzen, das wird dann aber etwas schwieriger :-) Aber ohne extensive Fachkenntnis wird das wohl nichts...
DAS klingt wie Musik in meinen Ohren... Dr. Sommer, setz Dich doch gerne mit mir in Verbindung, falls Du gewillt wärst sowas gegen Aufwandentschädigung+Spesen auszuarbeiten! Danke Ihr Lieben!
Alex Schütz schrieb: > Dieses Board arbeitet mit Custom 72pin SIMMS, auf welchen die Spieldaten > durch das auf dem Board befindliche Servicemenu geflasht werden. Dieser > Vorgang dauert ca. 1 std. D.h. kleine Platinen mit (Parallel-)Flashbausteinen. Schwarze Käfer, deren Nummern mit 28F oder 29F anfangen. > Nun bin ich im Besitz aller erhältlicher Software für das System und > suche eine Möglichkeit diesen Prozess zu beschleunigen. Einen Adapter basteln, mit dem man diese Platinen an den PC hängen kann und mit eigener SW beschreiben. Dann müssen die Daten nicht durch den Prozessor des Automaten geschoben werden. > -Die custom SIMMS mit DRAM-SIMMS zu ersetzen, würde bedeuten, dass die > Spieldaten nach jedem Start des System neu geflasht werden müssen, Nein, die Spieldaten müssen 100 mal in der Sekunde neu geflashed werden. DRAM braucht alle 10ms einen Refresh. Du brauchst einen Ersatz für die Flash-SIMMs mit passendem USB-Programmieradapter. Für die ROM-SIMMs des Apple MacIntosh gibt es entsprechende Lösungen.
Alex Schütz schrieb: > Dieses Board arbeitet mit Custom 72pin SIMMS, auf welchen die Spieldaten > durch das auf dem Board befindliche Servicemenu geflasht werden. Dieser > Vorgang dauert ca. 1 std. Was steht an Informationen zusätzlich zur Verfügung? Was ist auf den SIMMS verbaut? Ist der Typ des Flashspeichers zu erroieren? Was kann denn die Software die den Speicher beschreiben soll. Kann man diese modifizieren (Source vorhanden). Typischerweise muss zur Programmierung eines Flashspeichers der Block erst einmal über eine Kommandosequence gelöscht werden, ggfs. zuvor "unprotected". In grauer Vorzeit gab es etliche zueinander inkompatible Flashbausteine bzw. Verfahren. Wird vom System selbst nach der externen Programmierung noch schreibend auf die SIMMS zugegriffen. Falls nicht könnte ggfs. ein kleines Layout und 1-2 Eprom-Emulatoren aus der Bucht die billigste Lösung sein. Das Programm würde dann über z.B. USB auf die Emulatoren geschrieben... Eine weitere Alternative wäre z.B. über Non-Volatiles SRAM (z.B. Ferro-RAM) oder batteriegepuffertes SRAM. Ist aber alles Exotisch und dementsprechend schwer und teuer zu beschaffen. Gruß Vanilla
> ieses Board arbeitet mit Custom 72pin SIMMS
Mach doch mal ein Bild auf dem man die Beschriftung der ICs lesen kann.
Gruß
Helmut
Ich werde versuchen alle Fragen asap zu beantworten, dafür muss ich einiges bei jemand anfragen, der sehr in der Hardware drin ist, allerdings keine Lösung für den Speicher hat. Hier schonmal Fotos zum anschauen: https://picasaweb.google.com/115948745418514736250/CPS3SIMMS?authuser=0&feat=directlink und die gleichen Fotos zum downloaden: https://www.dropbox.com/sh/bld5zwi463pmcer/OK3cqRDV0E Danke schonmal, mit so viel Feedback hatte ich gar nicht gerechnet, aber es freut mich riesig!!
29F016 ist ein Flash-ROM. Das kann man nicht ohne erheblichen Aufwand durch ein DRAM ersetzen.
Rufus Τ. Firefly schrieb: > 29F016 ist ein Flash-ROM. > > Das kann man nicht ohne erheblichen Aufwand durch ein DRAM ersetzen. Kann man so aus dem Bauch heraus sagen, dass man es mit etwas schnellerem ersetzen kann?
29F016 16-Megabit (2,097,152 x 8-Bit) CMOS 5.0 Volt-only, Sector Erase Flash Memory: DB z.B. http://html.alldatasheet.com/html-pdf/92562/AMD/AM29F016/47/1/AM29F016.html Das wird wohl nicht ganz einfach ohne passende HW.
Alex Schütz schrieb: > Kann man so aus dem Bauch heraus sagen, dass man es mit etwas > schnellerem ersetzen kann? Indem Du andere, schnittstellenkompatible neuere Flash-ROMs verwendest, und diese nicht mit Deinem Gerät sondern mit einem eigenen Programmiergerät beschreibst. Dein Gerät weiß nichts von schnelleren Bausteinen, der durch Dein Gerät durchgeführte Programmiervorgang wird daher auch durch schnellere Bausteine recht wahrscheinlich nicht beschleunigt werden. Auch wenn Du die Flash-ROMs mit sehr viel "glue logic" durch andere Speicher ersetzen würdest, müsstest Du die gewünschten Inhalte dorthineinbekommen - also mit einem anderen Programmiergerät, oder mit einem eigenen Controller, der auf den Speicher zugreift, um ihn aus anderer Quelle (SD-Karte?) zu befüllen, und nach erfolgter Befüllung auf noch ungeklärte Art und Weise Dein Gerät aktiviert (denn während der Befüllung darf es den Speicher selbst nicht "anfassen"). Wäre es nicht einfacher, mehrere dieser "Custom-SIMMs" zu verwenden und die je nach Anforderung auszutauschen?
Rufus Τ. Firefly schrieb: > Wäre es nicht einfacher, mehrere dieser "Custom-SIMMs" zu verwenden und die je nach Anforderung auszutauschen? Leider sind diese Teile wirklich schwer zu bekommen. Je nachdem welches Spiel laufen soll, muss es an den Steckplätzen eine Mindestmenge Speicher geben. siehe http://wiki.arcadeotaku.com/w/CPS3#SIMM_requirements Dazu kommt noch, dass es unterschiedlich große Bausteine gibt. ->32, 64 und 128er (Mbit) Ich stelle gerade noch die Mail an den Hardware-Kenner zusammen, ich hoffe dann mehr Input liefern zu können. Nochmal Danke an Euch, ich finde Eure Posts höchst inspirierend.
Alex Schütz schrieb: > Leider sind diese Teile wirklich schwer zu bekommen. Die Dinger sind erheblich leichter selbstgebastelt als irgendwelche DRAM-mit-sonstwas-Logik-Lösungen. > Dazu kommt noch, dass es unterschiedlich große Bausteine gibt. > ->32, 64 und 128er (Mbit) Was Du da abgebildet hast, bestand aus 4 Flash-ROMs mit jeweils 16 MBit, also 8 MByte insgesamt.
Rufus Τ. Firefly schrieb: > Die Dinger sind erheblich leichter selbstgebastelt als irgendwelche DRAM-mit-sonstwas-Logik-Lösungen. Damit könnte ich mich sehr gut anfreunden. Hiesse, ich brauche eine Quelle für die Chips, einen Satz Gerber-Files und könnte die dann produzieren lassen. Klingt gleichsam einfach wie genial. Weiss jemand zufällig wo man die chips am besten einkauft? Danke sehr!
Alex Schütz schrieb: > Kann man so aus dem Bauch heraus sagen, dass man es mit etwas > schnellerem ersetzen kann? Ja, aber wozu? Ein existierendes System wird dadurch nicht schneller. Nur beim PC kann der Chipsatz mit unterschiedlichen Geschwindigkeiten je nach vorhandenem Speicher arbeiten (ist aber sehr komplex), ein Industrie- oder Spiele-Kontroller wird völlig unbeeindruckt genauso schnell zugreifen wie zuvor. Allerhöchstens kann man ihn mit einem not ready Signal bremsen, aber auch das ist unüblich, die wussten ja damals was sie einbauen. Gruss Reinhard
Alex Schütz schrieb: > einen Satz Gerber-Files Eagle (oder irgendein anderes Leiterplattenlayoutprogramm) ist Dein Freund. Natürlich solltest Du vorher einen Schaltplan erstellen, d.h. die "Verdrahtung" eines der vorhandenen "Custom-SIMMs" durchklingeln, welcher der 72 Kontakte geht an welches Beinchen der ROMs etc. Aufgrund des Alters der Speicherbausteine werden die nicht mehr ganz einfach zu organisieren sein. Digikey schreibt sowohl für 29f016 als auch 29f032 "Anrufen" anstelle eines Preises. Farnell listet einen Ersatztyp für 29F016 namens 29w160EB, der dort in Einzelstückzahlen unter 2 EUR kostet. Sollte also irgendwie lösbar sein.
Alex Schütz schrieb: > Weiss jemand zufällig wo man die chips am besten einkauft? 1.z.B. Suchmaschine: Typ und Preis eintippen? 2.Lieferbedingungen prüfen
Genial was Capcom sich da ausgedacht hatte: Videogames mit automatischer Selbstzerstörung: http://wiki.arcadeotaku.com/w/CPS3#Suicide Wie hast du das Problem eigentlich gelöst?
Rufus Τ. Firefly schrieb: > Eagle (oder irgendein anderes Leiterplattenlayoutprogramm) ist Dein Freund. Ja, das Spiel kenne ich schon ;) Habe einen guten Platinenmacher in China, den ich bereits bei meinem Custom-Gameboy genutzt habe... (Offtopic: http://circuit-board.de/forum/viewtopic.php?f=56&t=9847&start=15#p232212 und http://circuit-board.de/forum/viewtopic.php?f=55&t=9857 ) Ok, ich denke ich werde mal schauen was sich daraus machen läßt. An Euch alle nochmal ein ganz herzliches Dankeschön! TOP! Ich werde mich zurückmelden wenn sich entweder neue Infos aufgetan oder sich etwas anderes ergeben hat in Richtung Nachbau-SIMMs.
Jana schrieb: > Genial was Capcom sich da ausgedacht hatte: Videogames mit automatischer > Selbstzerstörung: http://wiki.arcadeotaku.com/w/CPS3#Suicide > Wie hast du das Problem eigentlich gelöst? Offtopic: Das hat der besagte Fachmann bereits gelöst :) http://64darksoft.blogspot.de/ Derzeitiger Stand der Dinge dort: -Decryption Tables gefunden -Bios gegen ein custom Bios ersetzt -Custom CPU (Hitachi SH2) gegen eine Standard CPU getauscht
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.