SML2-Warps
aus RHWiki, der freien Romhacking-Enzyklopädie
Dieser Artikel beschäftigt sich mit Warps in Super Mario Land 2.
| Inhaltsverzeichnis |
Auslösung der Warps
Beschreibung
Zunächst gibt es bei 0x1411E eine Pointertabelle mit 32 Pointern, die jeweils auf die einzelnen Warpdaten zeigen.
Die Warpdaten sind wie folgt aufgebaut:
Es wird immer zunächst eine Art Befehlsbyte ausgelesen, dass ich im Folgenden einfach C nenne. Wenn C = FFh ist, dann ist die Sequenz beendet.
Der Befehl wird durch die höchsten 4 Bits des Befehlsbyte C bestimmt, sprich C AND 240d/F0h.
Befehl 10
Ein weiteres Byte wird gelesen und nach [0xA80F] geschrieben.
Befehl 30
Es werden noch zwei weitere Bytes gelesen. Die Bedeutung ist unklar.
Befehl 40
Es wird ein weiteres Byte D gelesen, und um x=(D And Fh), y=(D And F0h) gescrollt.
Befehl 60
Der Boss (C And Fh) erscheint.
Befehl 80
Der Wert (C Or 240h) wird nach [0xA2E0] geschrieben.
Befehl B0
Es werden noch 3 weitere Bytes gelesen. Die Bedeutung ist unklar.
Verwendung der einzelnen Warps im unmodifizierten Spiel
Warp 00
Dieser Warp wird direkt durch einen FF-Befehl beendet und löst somit garnichts aus.
Warp 0B
Boss 0 - Tree Zone
Warp 0C
Boss 2 - Pumpkin Zone
Warp 0D
Boss 3 - Space Zone
Warp 0E
Boss 5 - Turtle Zone
Warp 0F
Boss 4 - Macro Zone
Warp 10
Boss 1 - Mario Zone
Warp 13
Boss 6 - Marios Castle
Mapheader | Maps | Levelgrafiken | Gegner | Overworld | Bereiche | Titelscreen | Auswahl des Savestates | Musik | Credits | Saves | Engine | Warps

