Como dice el título, aquí les dejo una pequeña recopilación de algunas rutinas ASM que pueden ser llamadas mediante un script.
Estas rutinas pueden ponerse en cualquier sitio de la ROM, pero deben ser llamadas mediante el comando 0x3E (3callASM), bueno, sin más que decir aquí los dejo.
Eso es todo, por ahora. Se recomienda tener conocimientos de ASM, caso contrario, parecerá que todo está escrito en Chino.
Estas rutinas pueden ponerse en cualquier sitio de la ROM, pero deben ser llamadas mediante el comando 0x3E (3callASM), bueno, sin más que decir aquí los dejo.
Código:
ASM Scripts:
Asignar Paleta
21 xx xx ld hl,c280
ld bc,0088 ???
ld a ff???
call 314c ?????
Imprimir tiles(hasta 9f!!!)
21 xx xx : ld hl, lugar de la map ram (ej $c4b9)
11 xx xx : ld de,texto
cd 74 0f : call 0f74
Ubicar Paleta
21 xx xx : ld hl,(ubicación del mapa)
01 yy yy : ld bc,(alto - ancho)
3E zz : ld a,(paleta)
CD A6 63 : Call 63A6
TextBox
21 xx xx : ld hl,(puntero de 2bytes al texto)
CD 5E 0F : Call 0F5E
Reproducir melodía
11 xx xx : ld de,(Puntero de 2bytes a la melodía)
CD 98 3D : Call 3D98
Cargar Gráficos comprimidos (como sprites)
21 xx xx : ld hl,(Puntero de 2-bytes a los gráficos)
01 yy yy : ld bc,(Área del Tilemap)
3E zz : ld a,(Banco de Gráficos)
CD A6 63 : Call 0AF0
216699 010a01 3e03cd a6 63
Llenar el fondo con un tile
21 A0 C3 : ld hl,C3A0
3E XX : ld a,Tile 51
21 68 01 : ld bc 0168
call 314C
ld hl,4349
ld a,23
rst 08
ret
Aplicar ordenamiento de tilemap
21 xx xx : ld hl,(Puntero de 2-bytes a la tabla de ordenamiento de tilemap)
01 yy yy : ld bc,(Lugar del tilemap)
3E zz : ld a,(banco de tabla de ordenamiento)
CD A6 63 : Call 3128
Salto y regreso al sitio inicial
3E xx : ld a,(banco)
21 yyyy : ld hl,Puntero de rutina ASM
CF : rst 08
C9 : ret
Banco 3E: (Usar código anterior primero)
Cargar Gráficos
11 xx xx : ld de,(Puntero de 2-bytes a los gráficos)
21 yy yy : ld hl,(Área del Tilemap)
01 xx yy : ld bc,(banco de gráficos/número de tiles a cargar)
C3 72 0E : jp 0E72
Cargar gráficos en Blanco y negro (para flashbacks)
11 xx xx : ld de,(Puntero de 2-bytes a los gráficos)
21 yy yy : ld hl,(Área del Tilemap)
01 xx yy : ld bc,(xx=banco de los gráficos/número de tiles a cargar)
C3 8D 0E : jp 0E8D