Como ya he comentado por ahi, mi intencion es crear una libreria basica para juegos, como la
Fourspriter de los mojones, basandome en el funcionamiento de la
z88dk / SP1 de Spectrum
Esto es todavia mas una idea que algo concreto, pero por algo se empieza! Asi que usando el codigo de Dr.Fred y sus sprites ya he comenzado a hacer cosas.
Para empezar, creo que seria necesario tener las siguientes librerias:
-
input: para gestionar los joystick de cada puerto y el teclado
- sprite: para controlar los sprites
- tiles: para dibujar los fondos
Y luego mas adelante algunas mas:
- interrupt: para gestionar interrupciones
- sound: musica y fx
- etc...
Por mi parte, en el corto plazo me veo capacitado para afrontar las tres primeras: input,sprites y tiles, obviamente algo basico...
Y concretando, ya he comenzado la input.h, que adjunto el codigo.
Hay 3 aviones, uno se controla con el joystick 1, otro con el joystick 2 y el tercero con el teclado (falta terminar el codigo de lectura del teclado)
La libreria input.h esta copiada directamete de z88dk, por lo que el codigo tiene mucho texto solo como referencia, que ya habra que limpiar...
Descargar ejemplo:
http://dl.dropbox.com/u/546470/c64/eightspriter/input.7zYo creo que este proyecto me viene un poco grande, asi que cualquier aporte sera beneficioso para todos. Si hubiera mas de uno (yo) interesado en hacer esto, habria que determinar primero las funciones necesarios (ya tenemos la guia de Wood y tambien de los mojones), asi podemos repartirnos un poco el trabajo y avanzar por separado. Luego llegara el momento de optimizar las funciones o pasarlas a ASM, pero al menos la estructura basica estara hecha.
Listado de funciones de eightspriter.h:Lectura del joystick:
- in_Joy1: hecho
- in_Joy2: hecho
Cambios de modos graficos:
- bitmap_mode: hecho
- text_mode: hecho
Tipos de modos graficos y colores:
- hires_mode: hecho
- multicolor_mode: hecho
- ecm_mode: hecho
- set_border: hecho
- set_background: hecho
- set_multicolor1: hecho
- set_multicolor2: hecho
- set_multicolor3: hecho
Estoy definiendo la nombres de las funciones que controlaran los sprites, seguramente me basare en el listado de Woodmaster.