Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor javiperez el Sab May 03, 2014 12:04 am

Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ... :lol:
Y cómo hiciste el Souls??? :shock:
The Spectrum will rise again to rule the Earth.
Real programmers never die. They just return without gosub.
Avatar de Usuario
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]

Notapor Alxinho el Sab May 03, 2014 11:17 am

Pues ... en BASIC :lol:

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 :oops:
Retrobytes Productions --> http://retrobytesproductions.blogspot.com.es

Soy un tío feliz, más que nada ... porque me sale más a cuenta.
Avatar de Usuario
Alxinho
Freddy Hardest
 
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Sab May 03, 2014 11:17 pm

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
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Sab May 03, 2014 11:18 pm

Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ... :lol:


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
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Alxinho el Dom May 04, 2014 2:07 am

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.
Avatar de Usuario
Alxinho
Freddy Hardest
 
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Hark0 el Dom May 04, 2014 1:05 pm

radastan escribió:
Alxinho escribió:Yo es que tengo dos problemas, ni puta idea de ASM ... ni puta idea de C ... :lol:


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. :wink:
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
Avatar de Usuario
Hark0
Freddy Hardest
 
Mensajes: 545
Registrado: Mar Nov 13, 2012 1:42 pm
Ubicación: Cornella de Llobregat - Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Hark0 el Dom May 04, 2014 1:11 pm

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

:mrgreen:
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
Avatar de Usuario
Hark0
Freddy Hardest
 
Mensajes: 545
Registrado: Mar Nov 13, 2012 1:42 pm
Ubicación: Cornella de Llobregat - Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Dom May 04, 2014 1:47 pm

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

:mrgreen:


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
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Hark0 el Dom May 04, 2014 2:03 pm

Ok entendido los punteros... ;-)

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
Avatar de Usuario
Hark0
Freddy Hardest
 
Mensajes: 545
Registrado: Mar Nov 13, 2012 1:42 pm
Ubicación: Cornella de Llobregat - Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Hark0 el Dom May 04, 2014 3:01 pm

Respecto a la otra pregunta...

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
Avatar de Usuario
Hark0
Freddy Hardest
 
Mensajes: 545
Registrado: Mar Nov 13, 2012 1:42 pm
Ubicación: Cornella de Llobregat - Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Dom May 04, 2014 5:54 pm

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
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Dom May 04, 2014 5:56 pm

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
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Hark0 el Lun May 05, 2014 10:47 am

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... :P
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
Avatar de Usuario
Hark0
Freddy Hardest
 
Mensajes: 545
Registrado: Mar Nov 13, 2012 1:42 pm
Ubicación: Cornella de Llobregat - Barcelona

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor radastan el Lun May 05, 2014 5:43 pm

Al final haces tu el curso. xD
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Avatar de Usuario
radastan
Phantomas
 
Mensajes: 2186
Registrado: Lun May 07, 2007 5:34 pm

Re: Curso de Z88DK básico + SDK para ZX Spectrum [preview]

Notapor Alxinho el Lun May 05, 2014 7:26 pm

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.
Avatar de Usuario
Alxinho
Freddy Hardest
 
Mensajes: 896
Registrado: Mar Jun 19, 2007 11:20 am
Ubicación: Barcelona

PrevioSiguiente

Volver a Programación y nuevos desarrollos

¿Quién está conectado?

Usuarios navegando este Foro: No hay usuarios registrados visitando el Foro y 2 invitados