|
Tutorial 5: Scroll
En el tutorial anterior, vimos los mapas,
algo muy util para poder cargar una pantalla sin ocupar toda la VRAM de la
Megadrive.
Esta tecnica es la base de este tutorial, ya que sin ella, no podriamos
cargar mas que una pantalla a la vez.
Lo primero es entender las limitaciones de hardware. El tamaño maximo de
pantalla que permite gestionar la Megadrive es de 512x512 pixeles o 64x64
tiles.
La megadrive permite dos planos de scroll (A,B) y un tercer plano fijo,
(Window) que no permite scroll.
Sabiendo esto, ya podemos ir al código.
Aquí dejo dos ejemplos. En el primero se crean dos planos de scroll, uno
fijo, y el otro movil.
- Primer ejemplo
Aqui cargo un plano de scroll fijo, con una imagen en primer plano, scroll
A,tomada prestada del LB2, y un plano B de scroll movil, que es un escenario
completo también del LB2
Segundo ejemplo
Lo nuevo del codigo son los siguientes comandos
settextplane <--
Define el plano de scroll donde se dibujaran los textos
setgfxplane <--
Define el plano de scroll para los comandos que dibujen tiles (DrawTile,
DrawTiles)
Este comando permite tres opciones, SCROLL_A/SCROLL_B/WINDOW. Que define en
que planos se dibujaran los tiles.
setscrollplane <--
Define el plano de scroll actual. Puede ser el A,B,o Window
Por ultimo el comando que hace el scroll en si mismo, los comandos basicos
son
scroll permite UP/DOWN/LEFT/RIGHT (arriba,abajo,izquierda,derecha) y la
cantidad de pixeles del scroll.
scroll left,1 <----
mueve el plano seleccionado de scroll, 1 pixel a la izquierda
scroll down,4 <----
mueve el plano seleccionado de scroll, 4 pixel hacia abajo
|