Beiträge von Devtronic

    Leider kann ich den ersten Post nicht bearbeiten da zu lang (>10k Zeichen)


    Also, das ROM hat einen sha1sum von 2e5ce11a893464dc0cce0a6b451580ba35a7e5de

    Folgende Informationen zeigt der VBA an:




    Zum Markdown: jap, werde ich bei Gelegenheit anpassen - oder eventuell auf GitHub schieben.


    Kleines Update:

    Die Worldmap Struktur lässt sich schon mal gut auslesen:






    Aktuell scheitere ich daran, die korrekten Tiles bzw. die verwendeten Tilesets auszulesen. LZ77 laden ist kein Problem mehr. Anscheinend werden die verwendeten Tiles aus verschiedenen Tilesets zusammengesetzt :/

    Es kann sein, dass du eine andere ROM Version hast. Probiers mal mit den Pointer Offsets.


    Also schau dir mal an, was bei 0x9C88 bei dir als Pointer steht, gehe zu dem Offset und von da aus der 0x22te (34. ) Pointer (1 Pointer = 4 Byte) ist dann Level 1-1

    Ich habe die Funktion zur Manipulation mal etwas entwirrt und in C# übersetzt:




    Sieht aber auf den ersten Blick nach einer Falltür-Funktion aus :-/




    EDIT:
    So, hab mal ein kleines JavaScript geschrieben mit dem sich die Palette aus VBA easy umrechnen lässt:



    Werde das bei Gelegenheit noch in ein vernünftiges Programm übertragen


    Danke Sturmvogel , somit kann das Thema endlich geschlossen werden :-)

    Wodka : Danke für deine Antwort


    Hier die Gleichungen (alpha = X, farbe_over = Y):


    Daraus ergibt sich:
    alpha = Farbwert in [0, 31] dann 0 ansonsten 1
    farbe_over = Farbwert


    Aber wie bekomme ich nun aus der neuen Farbe die alte Farbe? (Ich muss ja irgendwie bei 3 = X * Y + 1 - X * 1 auf die 1 kommen :-) )


    EDIT:
    Die Änderung ist immer gleich pro Farbwert, hier ein Mapping:


    Hallo Welt :-)


    Dann möchte ich das Thema mal wieder aufgreifen :D (Falls ich, des alters halber, lieber einen neuen Thread starten soll bitte kurz info an mich)


    Ich konnte leider, auch nach genauerem hinsehen noch nicht herausfinden, was wie umgerechnet wird.


    Als Beispiel nach wie vor die oben genannte Palette und die Farbe 5D0C:


    In VBA wird daraus dann aber 149E (bzw. 9E14):



    Also habe ich hin und her getestet mit verschiedenen Werten:

    Und konnte feststellen dass die Eingabe bei der Ausgabe um 7 Bits nach rechts geschiftet werden.
    Soweit so gut. Allerdings kann ich mir die zusätzlichen 1-Bits wie im ersten Beispiel zu erkennen nicht erklären, könnt ihr da ein Muster erkennen?


    Danke für eure Hilfe.


    Viele Grüße,
    Julian

    Moin zusammen,


    ich hab die Research an Super Mario Advance 4 wieder aufgenommen :)


    Nun stehe ich vor einem Problem, die Farbcodes im Rom sind unterschiedlich zu den angezeigten im VBA.


    Ich hab durch viel hin und her ersetzen im hexedit eine Palette gefunden, Adresse 0x21D882, diese wird in Level 1-1 verwendet.


    Zum Beispiel der erste Blauton, dieser ist im ROM 8155 und wird im VBA mit E35D angezeigt, ein anderes Beispiel ist der Rotton welcher im ROM 5D0C und im VBA 9E14 ist.


    Erkennt jemand von euch ein Muster? Ich habe keine Ahnung wie ich so die anderen Paletten finden soll..., haben Paletten vielleicht auch einen Pointer sodass ich darüber die anderen Paletten finden kann?



    Vielen Dank schon mal im Voraus.


    Gruß,
    Julian


    PS: ROM-Code: AX4P, ROM-Nummer ist 1190 (Gibt verschiedene ROM-Dumps des Spiels. Den, den ich verwende ist von Menace.

    Moin,


    ich habe mal eine kleine Funktionssammlung zum umwandeln von RGB in GBA und umgekehrt sowie System.Drawing.Color in GBA und umgekehrt geschrieben.



    Ich hoffe Ihr könnt damit was anfangen :)


    Gruß,
    Julian