Wenn es wirklich nur ein ROM betrifft, bzw, heutzutage gar keine mehr, stellt sich mir die Frage, ist die Funktion dann nötig?
Posts by Ice Man
-
-
Gibt es überhaupt Interleaved und Deinterleaved ROMs? Mir ist bisher keins begegnet.
-
Das ging dann wieder in Richtung ucon64, was es ja nicht ist.
-
Einverstanden.
-
Nicht jeder ROM Hacker kümmert sich darum, dass der ROM Header inkl. Checksum in Ordnung sind. Gibt auch schlampige.
Uuuund..... wer ZSNES benutzt gehört verbannt!
Im Ernst, der ist alles andere als hardwarenah und akkurat. Zumal auch nicht mal aktuell!
Snes9x und Mesen-S oder bsnes/higan sind z.Z. mitunter die besten Emulatoren.
Ist bei Snes9x die ROM Größe im Header inkorrekt kann die Checksum noch so richtig sein, sie ist es nicht, weil die ROM Größe falsch ist...
ZSNES und uCON64 berücksichtigen das nicht. Demnach ist die Checksum an und für sich ja auch "in Ordnung". Falsch ist es dennoch.
Wenn du schon eine Funktion zur Reperatur des Headers einbringen willst, dann mach es in etwa wie bei diesem Tool:
http://www.romhacking.net/utilities/1344/
Würde mich freuen, wenn man damit auch den ROM Namen und co. ändern kann in der Zukunft.
-
Ob Absicht oder nicht ist egal, falsch ist falsch.
Unbrauchbar wird die ROM nicht, aber die Checksum wird NIE stimmen, wenn die Angaben falsch sind.
Probiere es mal in snes9x aus. Die Checksum wird IMMER als falsch erkannt, solange die ROM Größe nicht richtig gesetzt ist.
Generall ist die Checksum eigentlich unwichtig, da ich kein Spiel kenne, was diese überprüft (außer evtl. Earthbound) und daraus dann irgendwelche Mechanismen bildet, damit das Spiel unspielbar wird.
Bei der Mega Drive wäre das natürlich ganz anders.
Ich finde es persönlich dennoch schön, wenn ROMs auch die korrekten Angaben und co. haben.
-
Dann kann es auch nicht funktionieren. Wenn der Eintrag falsch ist, kann die Checksum NIE korrekt berechnet werden.
Das ist ja mein Anliegen gewesen, dass zu ändern und die ROM Größe anzupassen, falls diese falsch ist, bevor die Checksum repariert wird. XD
-
Also die Checksum Fix mit ROMs falscher Größe klappt nicht. Eben getestet und es geht nicht, xD.
Beispiel Final Fantasy IV Ultima. ROM ist 2MB + SMC Header nach dem Patchen. Header sagt ROM ist 1MB.
Nach dem ich den SMC Header entfernt habe und denn Checksum repariert habe, bleibt es auf 1MB und Checksum bleibt falsch.
-
Wenn ich die Größe vorher im ROM ändere und dann Checksum repariere, ist es ja in Ordnung.
Dennoch würde ich es hinzufügen, auch wenn es Schuld der ROM Hacker ist.
-
Mir ist noch was aufgefallen.
Wenn ich ein ROM mit einem falschen Checksum repariere, aber die Romgröße nicht zum Header passt, bleibt die Checksum dennoch fehlerhaft.
Beispiel: Final Fantasy Ultima (FF II Hack).
Die ROM ist 2MB ($0B) aber im Header ($7FD7) steht nur 1MB ($0A).
Gibt auch andere ROMs, bei denen das so ist.
Wäre also sinnvoll, die Größe des ROMs mit der Angabe im Header bei $xFD7 zu vergleichen.
$07 = 128KB
$08 = 256KB
$09 = 512KB
$0A = 1MB
$0B = 2MB
$0C = 4MB
$0D = 8MB
$0E = 16MB
$0F = 32MB
Wobei die letzten beiden offiziell gar nicht existieren.
Ist eine ROM also z.B. 1.5MB muss der nächstgrößte Wert genommen werden, also $0B für 2MB.
Bei 512KB dann $0A für 1MB usw.
Hoffe es ist alles verständlich.
-
Also ich würde es bei GSU lassen, denn so heißt der Chip ja eigentlich.
Bzgl. dem Beispiel von Star Ocean. Das Spiel ist an sich ein LoROM, aber die Grafik wurde durch den S-DD1 stark komprimiert, weswegen es eben 6MB hat. Würde da bei LoROM bleiben also auf den Header zugreifen.
-
Mach alles einheitlich. Sieht sonst doof aus finde ich.
-
Hab mal ein paar Icons im Netz gefunden auf: http://www.iconarchive.com
Eventuell ist was dabei, da ich selber auch nicht zeichnen kann, xD.
Übrigens, wieso wurde CHECKSUMS eigentlich C H E C K S U M S geschrieben und FUNCTIONS auch F U N C T I O N S während der Rest ohne Leerzeichen klar kommt? Fällt mir jetzt erst auf, xD.
-
Hab 32GB RAM und nur 1 Tab (diese Seite) offen, xD.
Könnte natürlich auch uBlock Origin sein, aber die Seite ist in der White List.
Wie gesagt, ich beobachte es mal und wenn es nochmal passiert, vielleicht mal aufnehmen.
LG
-
Ist ja komischerweise nicht immer.
Benutze Firefox 73.0.1 und möchte auch keinen anderen Browser weiter installieren.
Ich beobachte das ganz Mal.
-
Achso, alles verstanden.
Daran hatte ich gar nich gedacht.
Hoffentlich ist Momotarou Densetsu das einzigste Spiel mit einem "falschem" Header, xD.
Nachtrag: Wirs dem Programm auch noch ein vernünftiges Icon geben?
-
Am PC. Benutze Handy nicht, kann dazu nichts sagen.
Aber wenn die Zeile z.B. zu lang ist, ich alles markiere, löscht er gar nichts.
Muss ich immer in kleinen Schritten löschen.
LG
Daniel
-
Momotarou Dentetsu Happy hat #$3A bei $FFD5. Weiß nicht, woher ich die #$35 hatte. Sorry dafür.
Woher du die #$37 nimmst ist mir dennoch ein Rätsel.. .Dennoch ist #$3A == 0011 1010, d.h. FastROM ist an und ExLoROM auch, obwohl das ROM nur 3MB hat und HiROM ist. Schon Komisch
Wozu die 1 nach A ist, keine Ahnung.
Kann gut sein, dass wir uns beide gegenseitig durcheinander bringen, xD.
Mach das, kannst gerne berichten, wenn du was neues hast.
-
Was mich noch ziemlich stört ist das Eingabefeld um auf Threads zu antworten bzw. zu schreiben.
Wenn man lange Texte löschen will geht das gar nicht. Markiert man diese und drückt Return, um zu löschen, passiert bei mir gar nichts.
Ich muss regelrecht Return gedrückt halten, damit er langsam den Text löscht.
-
Hatte die ROMs selber geprüft, aber wohl Pilotwings vergessen.
Eventuell einfach nur DSP in der Ausgabe reinschreiben, genauso wie bei GSU auch.
Stunt Race ist nämlch kein GSU2, sondern GSU1.
Der Fehler liegt nach wie vor bei dir, xD.
$35 = 0011 0101
QuoteThe bitmask to use is 001A 0BCD, the basic value is $20:
- A == 0 means SlowROM (+ $0), A == 1 means FastROM (+ $10).
- B == 1 means ExHiROM (+ $4)
- C == 1 means ExLoROM (+ $2)
- D == 0 means LoROM (+ $0), D == 1 means HiROM (+ $1), is used with B and C in case of extended ROMs.
0011 entspricht 001A, demnach ist A == 1
-Bedeutet FastROM = $30
0101 entspricht 0BCD, demnach sind B und D == 1
Bedeutet HiROM bzw. ExHiROM, da wohl über 4MB/Spezialchip. $05
Beides zusammen = $35
Ich hab keine Ahnung wie auf die $37 kommst.
Das was im Header steht bleibt und ist aussschlaggebend, xD.