Sylvanian Melodies ASM RB1

aus RHWiki, der freien Romhacking-Enzyklopädie

Inhaltsverzeichnis

Deutsche Version

PNT - Pointertabelle
TBLn - Tabelle mit Werten mit je n Bytes pro Eintrag

  • 0344 - RBG-Werte aus Liste D001 / D00B laden
  • 0353 - Tilemaproutine 9800
bc = xy e = Index
Index in PNT @ 1F:4000 zu Daten im RLE-Format
  • 0358 - Tilemaproutine 9C00 (?)
bc = xy e = Index
Index in PNT @ 1F:4000 zu Daten im RLE-Format
  • 0366 - Spritebereich leeren
  • 0369 - Bildschirm 9800 leeren (00)
  • 0379 - Grafik laden
a = Index
Index in PNT @ 00:1670 zeigt auf [Bank][Quelle][Ziel]
  • 0397 - Farbüberblendung
a = Modus (0 - 3)
0 = von weiß blenden
1 = nach weiß blenden
2 = von schwarz blenden
3 = nach schwarz blenden
  • 03AB - BG-Paletten laden
a = Index
Index in PNT @ 0F:4000 auf Palettennummern
  • 03B0 - OBJ-Paletten laden
a = Index
Index in PNT @ 0F:4F98 auf Palettennummern
  • 03B5 - Große Charaktersprites animieren (?)
  • 03C5 - OAM-Symbol laden
a = Index hl = Ziel in VRAM
Index in PNT @ 07:4000
  • 040B - Farbmaproutine 9800
bc = xy e = Index
Index in PNT @ 19:4000 zu Daten im RLE-Format
  • 048C - Knopfdruckabfrage (?)
  • 0890 - Grafik dekomprimieren
  • 0A39 - Hauptroutine +1
  • 0A41 - Unterroutine +1
  • 0B89 - testet ob hl im Bildschirmbereich ist und korrigiere Zeilenanfangsoffsets zu einer Zeile tiefer
hl = BG-Bildschirmoffset
a = 0 Bildschirm 9800
a<> 0 Bildschirm 9C00
  • 0BC4 - testet ob aktuelle Zeile (hl) im Bildschirmbereich ist und korrigiert hl wenn nicht
hl = BG-Bildschirmoffset
a = 0 Bildschirm 9800
a<> 0 Bildschirm 9C00
  • 11D6 - Farbübertragung von DE00/DE40
  • 1CE9 - Hauptroutine aus Mainloop aufrufen @


Bank: [C5C0] + 00:1D6C
Call: [C5C0]*2+00:1D12


C5C0:
2B = Outro
2C = Credits

English Version

PNT - pointer table

TBLn - table with specific values with n bytes per entry

  • 0344 - transfer rbg values from palette list D001 / D00B
  • 0353 - tilemap routine 9800
bc = xy e = index
index in PNT @ 1F:4000 in RLE format
  • 0358 - tilemap routine 9C00 (?)
bc = xy e = index
index in PNT @ 1F:4000 in RLE format
  • 0366 - clear sprite area
  • 0369 - clear(00) Screen 9800
  • 0379 - gfx load
a = index
index in PNT @ 00:1670 points to [Bank][source][destination]
  • 0397 - palette fading
a = Mode (0 - 3)
0 = fade from white
1 = fade to white
2 = fade from black
3 = fade to black
  • 03AB - bg palette load
a = index
index in PNT @ 0F:4000 to palette numbers
  • 03B0 - obj palette load
a = index
index in PNT @ 0F:4F98 to palette numbers
  • 03B5 - animates big character animation (?)
  • 03C5 - OAM Symbol load
a = index hl = destination in VRAM
index in PNT @ 07:4000
  • 040B - colormap routine 9800
bc = xy e = index
index in PNT @ 19:4000 in RLE format
  • 048C - get key press information (?)
  • 0890 - gfx decomp
  • 0A39 - main routine +1
  • 0A41 - inner routine +1
  • 0B89 - check if hl is in current screen and reset line start to one line lower
hl = bg screen offset
a = 0 screen 9800
a<> 0 screen 9C00
  • 0BC4 - check if current line is in screen and correct if not
hl = bg screen offset
a = 0 screen 9800
a<> 0 screen 9C00
  • 11D6 - color transfer from DE00/DE40
  • 1CE9 - in main loop calling main routines @


Bank: [C5C0] + 00:1D6C
Call: [C5C0]*2+00:1D12


C5C0:
2B = outro
2C = credits