Y cómo hiciste el Souls???Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ...
Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Moderador: Sir Cilve Sinclair
- javiperez
- Jack The Nipper
- Mensajes: 103
- Registrado: Vie Ago 24, 2007 12:45 pm
- Ubicación: Valladolid
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
The Spectrum will rise again to rule the Earth.
Real programmers never die. They just return without gosub.
Real programmers never die. They just return without gosub.
- Alxinho
- Freddy Hardest
- Mensajes: 896
- Registrado: Mar Jun 19, 2007 11:20 am
- Ubicación: Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Pues ... en BASIC
Compilado eso sí, sino iría más lento que el caballo del malo. Todos mis juegos están programados con el compilador cruzado ZXBASIC de Boriel.
Gracias por cierto
Compilado eso sí, sino iría más lento que el caballo del malo. Todos mis juegos están programados con el compilador cruzado ZXBASIC de Boriel.
Gracias por cierto
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Hark0 escribió:Como hago un rand ?
Integraré el rand de la churrera.
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ...
Si te miraras lo que hay de curso lo mismo te darías cuenta que sabes algo de C por saber BASIC...
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- Alxinho
- Freddy Hardest
- Mensajes: 896
- Registrado: Mar Jun 19, 2007 11:20 am
- Ubicación: Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Mirármelo me lo miraré pero es que primero tengo que acabar lo que estoy haciendo!
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
radastan escribió:Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ...
Si te miraras lo que hay de curso lo mismo te darías cuenta que sabes algo de C por saber BASIC...
Instalate Noetepad++ y sigue el pdf de Radastan... verás que no es tan dificil.
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
radastan escribió:Hark0 escribió:Como hago un rand ?
Integraré el rand de la churrera.
Gracias!
Dos preguntas:
1- Cuando declaras un sprite y luego lo usamos con putsprite_... veo que usas
unsigned char XXXX.
Yo he probado lo siguiente:
- He editado motorzx.h y he cambiado el unsigned char *puntero por unsigned int *puntero.
- He añadido un unsigned int mem_sprites[x];
- mem_sprites[0]=sprite0;
- mem_sprites[1]=sprite1;
etc.
- Para pintar putsprite(mem_sprites[num_sprite],x,y);
Y así me ahorro los switch para pintar el numero de sprite...
¿es buena idea o estoy gastando MAS ram?
2- ¿puedo hacer algo como esto¿ (glbasic)
TYPE Boton
tipo
grafico
posx
posy
ancho
alto
pantalla
disponible
estado
texto$
ENDTYPE
GLOBAL HRW_Boton[] AS Boton
GLOBAL HRW_Boton_Cantidad
GLOBAL HRW_Boton_Seleccionado
luego se usa tipo HRW_Boton[num_boton].posx=32
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Hark0 escribió:Dos preguntas:
1- Cuando declaras un sprite y luego lo usamos con putsprite_... veo que usas
unsigned char XXXX.
Yo he probado lo siguiente:
- He editado motorzx.h y he cambiado el unsigned char *puntero por unsigned int *puntero.
- He añadido un unsigned int mem_sprites[x];
- mem_sprites[0]=sprite0;
- mem_sprites[1]=sprite1;
etc.
- Para pintar putsprite(mem_sprites[num_sprite],x,y);
Y así me ahorro los switch para pintar el numero de sprite...
¿es buena idea o estoy gastando MAS ram?
Lo que has echo es una matriz de punteros, que es la forma correcta y optimizada de hacer la selección de tile o de sprite. Evidentemente es lo mejor que puedes hacer y evitas, tal y como has visto, el switch. En el curso seguiré poniendo el switch, esa parte la explico más delante como optimización. No puedo explicarle de buenas a primeras a alguien lo que es una matriz de punteros sin que se sepa manejar con ellos antes.
Hark0 escribió:2- ¿puedo hacer algo como esto¿ (glbasic)
TYPE Boton
tipo
grafico
posx
posy
ancho
alto
pantalla
disponible
estado
texto$
ENDTYPE
GLOBAL HRW_Boton[] AS Boton
GLOBAL HRW_Boton_Cantidad
GLOBAL HRW_Boton_Seleccionado
luego se usa tipo HRW_Boton[num_boton].posx=32
Pues si te digo la verdad eso es más propio de C++ que de C. No he llegado a tanto con el Z88DK, pero lo mismo se puede poniendo puntos. Ejemplo: prota.x
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Ok entendido los punteros...
Entones gasta la misma ram verdad? (meter grfx como int en lugar de char)
Entones gasta la misma ram verdad? (meter grfx como int en lugar de char)
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Respecto a la otra pregunta...
http://www.z88dk.org/wiki/doku.php?id=e ... :snakegame
Ver trozo:
Y luego usan:
snake[n].col=valor;
Esta noche si tengo tiempo, lo cato.
PD Explicación del uso de STRUCT en C... http://es.wikibooks.org/wiki/Programación_en_C/Estructuras_y_Uniones
http://www.z88dk.org/wiki/doku.php?id=e ... :snakegame
Ver trozo:
Código: Seleccionar todo
struct snake_segment {
int row;
int col;
} snake[100];
Y luego usan:
snake[n].col=valor;
Esta noche si tengo tiempo, lo cato.
PD Explicación del uso de STRUCT en C... http://es.wikibooks.org/wiki/Programación_en_C/Estructuras_y_Uniones
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Hark0 escribió:Ok entendido los punteros...
Entones gasta la misma ram verdad? (meter grfx como int en lugar de char)
Es que no estás metiendo GFX como int, estás metiéndolos como char y el puntero a donde comienzan en una matriz int.
Si metieras los gráficos como int te ocuparían el doble.
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Hark0 escribió:Respecto a la otra pregunta...
Pues si, Z88Dk acepta estructuras, genial. No obstante en pocos juegos le veo sentido, si acaso en aventuras conversacionales.
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- Hark0
- Freddy Hardest
- Mensajes: 545
- Registrado: Mar Nov 13, 2012 12:42 pm
- Ubicación: Cornella de Llobregat - Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
radastan escribió:Hark0 escribió:Respecto a la otra pregunta...
Pues si, Z88Dk acepta estructuras, genial. No obstante en pocos juegos le veo sentido, si acaso en aventuras conversacionales.
Pues yo le veo un montón más de utilidades, por ejemplo esto: (probado y funca)
Esto en las declaraciones de variables:
Código: Seleccionar todo
//-------------------------------------------------------- Declarando Enemigos Pacman
struct bot_enemigo
{
unsigned char posX;
unsigned char posY;
unsigned char sprite;
unsigned char activado;
unsigned char nombre;
} fantasmas[4];
Esto en la rutina de inicializar variables:
Código: Seleccionar todo
fantasmas[0].posX=0;
fantasmas[0].posY=0;
fantasmas[0].sprite=0;
fantasmas[0].activado=1;
fantasmas[0].nombre='Blinky';
fantasmas[1].posX=16;
fantasmas[1].posY=0;
fantasmas[1].sprite=1;
fantasmas[1].activado=1;
fantasmas[1].nombre='Pinky';
fantasmas[2].posX=0;
fantasmas[2].posY=10;
fantasmas[2].sprite=2;
fantasmas[2].activado=1;
fantasmas[2].nombre='Inky';
fantasmas[3].posX=16;
fantasmas[3].posY=10;
fantasmas[3].sprite=3;
fantasmas[3].activado=1;
fantasmas[3].nombre='Clyde';
Ahora imaginate que en lugar de 4 enemigos.... lo haces para 200.000 bots...
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Al final haces tu el curso. xD
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
- Alxinho
- Freddy Hardest
- Mensajes: 896
- Registrado: Mar Jun 19, 2007 11:20 am
- Ubicación: Barcelona
- Contactar:
Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]
Yo no tengo mucha experiencia en usar estructuras de datos pero sé que son muy útiles. Por ejemplo en juegos de naves sirven para definir las trayectorias, en juegos de lucha para los golpes o movimientos, etc, etc ... ojo, es por lo que he visto de cuando programaba en Fénix pero no los llegué a usar.
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
Soy un tío feliz, más que nada ... porque me sale más a cuenta.
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 30 invitados