Kapitel 2: Die unterschiedlichen Pointer



In diesem Kapitel bin ich auf eure Hilfe angewiesen! Wenn ihr andere Pointer kennt (egal für welches System) dann mailt mir!

NES


Standard-Pointer


1. Position herausschreiben(A 50 30)
2. Die vier rechten Zahl hernehmen (50 30)
3. 10 für den Header abziehen (50 20)
4. Beide Zahlen vertauschen (20 50)
Der Pointer ist berechnet.

XX00-Pointer


Berechnet den Standard-Header, sucht die Pointer-Tabelle (aber nur mit dem rechten Wert aus Schritt 3 (20)) Dort erhaltet ihr jetzt Werte bei denen die rechte Zahl bei allen Pointer um den gleichen Betrag größer ist, als der errechnete Standard-Header-Wert. Dann vertausch ihr die Zahlen wieder (für links 00) und ihr erhaltet die Summe um die ihr addieren müsst. (00 25 -> 25 00)
Jetzt kann man die Pointer einfacher Berechnen:
1. Position herausschreiben (A 50 30)
2. Die vier rechten Zahlen hernehmen (50 30)
3. 10 für den Header abziehen (50 20)
4. Den ermittelten Wert addieren (hier 25 00 / 75 20)
5. Vertauscht die beiden Zahlen (20 75)
Der Pointer ist berechnet.

SNES


Standard-Pointer


1. Position herausschreiben (A 50 30)
2. Die vier rechten Zahlen hernehmen (50 30)
3. 200 für den Header abziehen (4E 30)
4. Vertauscht die beiden Zahlen (30 4E)
Der Pointer ist damit berechnet.

XX00-Pointer


1. Position herausschreiben (A 50 30)
2. Die vier rechten Zahlen hernehmen (50 30)
3. 200 für den Header abziehen (4E 30)
4. XX00 addieren (A0 00 / EE 30)
5. Vertauscht die beiden Zahlen (30 EE)
Der Pointer ist damit berechnet.

Tipp: LoRom Pointer liegen normalerweise zwischen 80 00 und FF FF. Das heisst, dass ihr bei den Pointern - wenn sie bei Punkt 2 unter 8000 liegen - oft 80 00 (Hex) addieren müsst.

Alle System


Feste Längen

Bei diesen Pointern muss man nichts berechnen. Bei ihnen sind die Texte eine konstante Länge lang. Sie werden meistens für Items, Namen, Zauber etc. verwendet. Ich weiss leider nicht, wie man da die Länge ändert, ohne ASM zu können.

2-Stellige Pointer


1. Position herausschreiben (A 50 30)
2. Den Header abziehen (Hier Standard-SNES/A 4E 30)
3. Die beiden rechten Zahlen nehmen (30)
Fertig. Bei diesen Pointer kommt es leicht zu Problemen, besonders wenn sie für längere Textblöcke verwendet werden. Dann springt der Pointer unter Umständen zu falschen Positionen.

Wenn kein Header im Rom ist


Jetzt gibt es 2 Lösungen:
a) Ihr fügt dem Rom einen Header zu (mit SNESTool oder änlichen Programmen) und ihr berechnet den Pointer wie einen normalen (siehe oben).
oder b)Ihr berechnet den Pointer ohne Header:
1. Position herausschreiben (A 50 30)
2. Eventuell den XX00-Wert hinzufügen (Ich spar es mir hier)
3. Die zwei rechten Zahlenpaare nehmen (50 30)
4. Vertauscht die beiden Zahlen (30 50)
Und ihr habt den Pointer berechnet!

Zurück

Weiter