jueves, 4 de abril de 2019

8BP estuvo en Amstrad Eterno 2019

Hola amigos de 8 bits de poder

En efecto, alli estuvimos! En Amstrad Eterno 2019 celebrado en Barcelona, compartiendo experiencias con muy buena gente que hace de lo retro un auténtico arte.

Una vez más pudimos compartir con vosotros nuestro stand, con dos ordenadores ejecutando juegos (en este caso "Space Phantom" y "frogger Eterno").  Y el fabuloso poster del juego "Space Phantom" que realizó "Lobo", tras ser premiado en el concurso 8-Bit Annual Dev.

Nuestro Stand estaba en el centro, junto al de leyendas (y amigos) como "4MHz"y "Retrobytes" con sus imponentes "operacion alexandra" y "Jarlac" respectivamente
Todos disfrutaban con el stand y los juegos de 8BP pero especial mención merecen los mas pequeños, a los que gustó mucho el juego "Frogger Eterno"

Durante todo el dia se pasaron por el stand multitud de especímenes de todo tipo: desde inofensivos fraggles hasta destripajuegos capaces de hacerse la misión de space phantom en una sola partida (Fran Loscos - @metr81)






A los niños les gustó tanto el frogger eterno que tuve que poner el mismo juego en los dos puestos para cumplir sus deseos. Las ranas producen adicción!

Durante la feria, además de charlar con muchisima gente sobre el Amstrad, la programación retro, técnicas de programación y mil cosas mas, pudimos conocer a Ricardo Cancho, una leyenda viva de TOPO Soft, y pude charlar animosamente con Fran gallego (Cpctelera), con STAR (Matranet) , Jose Miguel (Rainbow Graphics @jomicamp), con Atila (@AmstradEterno) y muchos mas personajes de la escena. Desde este humilde blog os mando un abrazo!


No todo fue paz y tranquilidad. Hubo un momento dificil, en el que un fraggle (el famoso "tio matt") y una rana tuvieron la indecencia de protagonizar una escena no muy decorosa. Un "crossover épico" como acertadamente lo definió Fran Loscos !!!

Y por supuesto pude compartir una charla sobre cómo programar de "frogger eterno" usando la libreria 8BP, a la que me llevé la rana (imprescindible). Fue un verdadero placer compartir estas cosas con vosotros y en cuanto esté el video de la charla disponible, lo incluiré en mi canal de video y lo publicaré en este blog


Ademas de los stands con desarrollos, hubo zona "Museo" con autenticas joyas como los 664 y 464 de schneider, literatura Amstrad de los 80, una gran coleccion de revistas micromania y todo ello acompañado de un hilo musical cepecero, con una selección de musicas de conocidos juegos 

Y Como ya sabeis, en exclusiva y como sorpresa de último minuto, apareció en cassette el nuevo juego Frogger Eterno, engrosando la lista de titulos de 8BP editados por Matranet




Tras una jornada cepecera nos juntamos todos para compartir una cena entre amigos! buenos amigos! y que se repita!

Y antes de despedirme, quiero recordaros a todos que estaré este sabado 6 de Abril en RETROPIXEL, en Malaga y llevaré la charla sobre como programar "Frogger eterno". Será a las 12:00 de la mañana. Al disponer de algo mas de tiempo, incluiré una introducción a 8BP y a lógicas masivas.

Hasta pronto!!!




domingo, 17 de febrero de 2019

8 bits de poder estará en Amstrad Eterno 2019

Hola amigos de 8 bits de poder

Como he anunciado por twitter, en la proxima feria de Amstrad Eterno, que tendra lugar el Sábado 30 de marzo en Barcelona. Es una gran feria, un punto de encuentro obligado para los amantes del Amtrad . En ella, 8BP tendra presencia con un stand en el que os mostraré novedades y juegos y donde podremos charlar sobre nuestro ordenador favorito.


Además, de 11:30 a 12:00 podreis aprender a programar el clasico "frogger" desarrollado por konami en 1981, pero usando 8BP. Os enseñare paso a paso como hacerlo y vereis lo facil que es programar cualquier juego con 8BP. Además, prepararé documentación detallada del juego para los asistentes, aparte de la conferencia/taller



Hablaré de las capacidades de 8BP  y de la técnica de lógicas masivas pero a la vez podras comprobar como plasmar esos conceptos en un juego real, llamado "Frogger eterno", al que podrás jugar en el stand ese mismo dia. ¿te animas?
el juego frogger eterno será presentado en Amstrad Eterno 2019

Os dare mas noticias sobre esta contribución de 8BP a medida que nos acerquemos al evento. De momento os dire que tambien estarán disponibles gracias a STAR, ediciones físicas de los juegos de 8BP en dos volúmenes. Cada volumen contiene dos cintas cuidadosamente elaboradas. Las podeis adquirir en la boutique de STAR http://www.matranet.net/boutique/cpc/cpc.php
volumenes de 8BP
STAR realiza unas magnificas ediciones homebrew

En el stand podreis probar los juegos de 8BP, incluido el recientemente premiado "Space Phantom". Como sabeis es un juego de arcade 3D y si funciona rápido es gracias a la velocidad de los comandos 8BP y a la técnica de lógicas masivas de la que os contaré sus secretos. Alli estaré para el que quiera conocer los secretos de la programación de este juego.



Antes de despedirme quiero deciros que he subido una nueva versión del manual (V36_01), mejorada en algunos capitulos para explicar mejor como funciona todo, sobre todo el apartado de rutas de sprites, aunque hay mas mejoras.

Un abrazo y nos vemos en Amstrad Eterno 2019! no te lo pierdas!




domingo, 27 de enero de 2019

Disponible nueva version V36 de la librería 8BP

hola amigos de 8 bits de poder

Ya esta disponible la versión v36 de 8BP,  disponible para descarga en https://github.com/jjaranda13/8BP la cual incorpora las siguientes mejoras:

  • Comando |PRINTSPALL mejorado,  con nuevo parametro de ordenacion
  • Comando |PRINTSPALL con soporte de 4 modos de ordenamiento de sprites
  • Se han optimizado en velocidad un poquito la impresion flipeada y el comando STARS
  • la libreria no ha cambiado de tamaño, ocupa lo mismo

Con las mejoras de ordenamiento de sprites ya podemos hacer fielmente un juego tipo "Golden Axe" o incluso algo que se aproxima a un juego "filmation" ( ya he empezado a hacer uno, pronto lo vereis). Ahora os voy a detallar un poco las mejoras:

Comando |PRINTSPALL mejorado:
Ahora permite un parametro adicional para especificar el primer sprite que se va a ordenar del grupo de sprites ordenados, es decir ahora se usa del siguiente modo:

|PRINTSPALL, ordenini,ordenfin,anima,sync 

Donde ordenini es el primer sprite que se va a ordenar y ordenfin el ultimo. Veamos un ejemplo de uso:
 |PRINTSPALL,0,11,20,anima,sync 
imprimiremos secuencialmente los sprites del 0 al 10, ordenados del 11 al 20 y secuencialmente del 21 al 31



Si el parámetro “ordenini” se omite, se considera el último valor asignado, o bien cero si nunca se ha asignado un valor. Ademas, si vas a modificar alguno de los dos parámetros de ordenamiento, conviene primero ejecutar PRINTSPALL,0,0,0,0 para que primero se reordenen los sprites secuencialmente antes de ordenarlos con una nueva configuración.

Imprimir de forma ordenada es más costoso computacionalmente que imprimir de forma secuencial.  Ordenar todos los sprites lleva unos 2.5 ms pero si ordenas solo 5 te puedes ahorrar 2ms. Quizás tengas muchos sprites y no merezca la pena ordenar algunos, como los disparos o sprites que sabes que no se van a solapar.

Soporte de 4 modos de ordenamiento:
Ahora se permiten 4 modos de ordenamiento de sprites, que se configuran usando PRINTSPALL con un solo parametro. En 8BP ordenacion "parcial" significa que en cada invocacion solo se corrigen 2 sprites desordenados:

PRINTSPALL,0 : ordenacion parcial de sprites basado en Ymin
PRINTSPALL,1 : ordenacion total de sprites basado en Ymin
PRINTSPALL,2 : ordenacion parcial de sprites basado en Ymax
PRINTSPALL,3 : ordenacion total de sprites basado en Ymax

Los ordenamientos que usan Ymax se basan en la coordenada Y mayor de los sprites, es decir, donde se encuentran sus pies en lugar de su cabeza. Si los sprites son del mismo tamaño, un ordenamiento basado en Ymin te puede servir, pero si los sprites tienen diferente altura puede que desees ordenar según donde se encuentren los pies de cada personaje y para ello tendrás que usar el modo de ordenar 2 o el 3.

En el siguiente ejemplo se puede ver el modo de ordenacion 2 funcionando. En este ejemplo no he usado sobreescritura, sino tan solo ordenacion de sprites, pero se pueden usar ambas cosas a la vez sin ningun problema.


Los modos de ordenar con Ymax son mas lentos, aproximadamente 0.128 ms por sprite, de modo que úsalos cuando los necesites realmente

os dejo con un video de demo de la v36




hasta pronto amigos!!!






lunes, 14 de enero de 2019

SPACE PHANTOM premiado en #8BITANNUALDEV

hola amigos de 8 bits de poder

Como algunos seguidores sabréis, "Space phantom", el ultimo juego realizado en BASIC con la librería 8BP ha sido premiado en el certamen de programación de juegos retro #8BITANNUALDEV


Desde aqui quiero agradecer este premio a los organizadores de 8BITANNUALDEV, no solo por el premio sino por contribuir a mantener vivo el espíritu retro que tanto nos gusta. Gracias, especialmente a George Bachaelor @CPCCLASSICGAMESDEMOS

Este reconocimiento ha supuesto un verdadero estímulo para seguir mejorando la librería 8BP para todos vosotros y así mantener viva la escena retro de nuestro afamado Amstrad CPC. Podes admirar el póster que @spitoufs  (alias "Lobo") ha creado inspirándose en el juego. Una verdadera obra de arte!

Impresionante póster creado por "Lobo"
el juego "Space phantom"

El concurso 8BITANNUALDEV es un concurso que abarca diferentes ordenadores retro ( Amstrad, ZX, MSX, C64, BBC, NES , SMS y otros). Posee 3 categorias: "Basic", "advance" y "others"y no tiene restricciones, se pueden presentar varios desarrollos, esta abierto a cualquier tipo de juego aunque se valora la originalidad y el reto que supone un estilo de juego que se salga un poco de lo mas habitual

el concurso 8BITANNUALDEV y 8-BIT ANNUAL 2019
Esto es lo que los ganadores obtienen:

- A winners certificate.
- A FREE 8-BIT ANNUAL 2019 hardback.
- An interview in 8-BIT ANNUAL 2019.
- An article / feature about them and their game(s) in online retro website Retro Gaming Mag http://retrogamingmagazine.com/
- A FREE A1 poster of their game with the image put together by the famed artist Lobo - who did the 8-BIT ANNUAL 2018 cover, the 8-BIT DEV image and has worked on many retro projects including the box artwork and manual of Galencia for the C64.


Como veis es muy interesante, y contribuye muchísimo a la difusión de las creaciones que hacemos

No quiero despedirme sin antes mencionar que en la categoria advanced ha obtenido el premio Keith Sear con su videojuego "Tragical Chase", y desde aqui quiero darle mi mas sincera enhorabuena!
Tragical chase de Keith Sear ha sido premiado en categoría advanced


un saludo y hasta pronto amigos!

viernes, 7 de diciembre de 2018

Disponible nueva version de 8BP V35 y nuevo juego "SPACE PHANTOM"

Hola amigos de 8 bits de poder

Ya esta disponible la versión v35 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las siguientes mejoras

  • comando |ROUTESP mejorado, ahora permite adelantar varios pasos en la ruta para colocar facilmente naves en hilera
  • he incluido una nueva demo para demostrar ROUTESP
  • corregido un pequeño bug detectado en v34 en el uso conjunto del codigo 251 y |AUTOALL,1
  • no ha cambiado el espacio ocupado por la libreria
  • manual : En la documentacion he reflejado todos los cambios y he mejorado apendice de teclado, asi como el apartado de logicas masivas
  • JUEGOS: nuevo juego "SPACE PHANTOM" disponible en la carpeta GameExamples. Es un juego pseudo 3D creado con 8BP V35, ocupa unos 18KB de BASIC

Os voy a poner un ejemplo del comando ROUTESP

|ROUTESP, <spriteid>, <pasos>

Este comando mueve un sprite el numero de pasos que desees a lo largo de la ruta que tenga asignada. En el ejemplo he destacado en rojo la asignación de la ruta 8 y los comandos ROUTESP que posicionan cada uno de los sprites en la ruta

10 memory 23999
10 ON BREAK GOSUB 12
11 GOTO 20
12 |MUSICOFF:CALL &BC02:PAPER 0:PEN 1:MODE 1:END
20 CALL &BC02:DEFINT A-Z:MODE 0
50 CALL &6B78
70 ' todas las naves colocada en la misma coordenada inicial
75 ' y con la misma ruta pero con un numero inicial de pasos distinto
76 locate 2,3: Print "comando |ROUTESP "
80 for s=16 to 21: |SETUPSP,s,9,33: |SETUPSP,s,0,137: |SETUPSP,s,15,8:|LOCATESP,s,20,100:next
90 |ROUTESP,21,40:'nave cabeza
100 |ROUTESP,20,30
110 |ROUTESP,19,20
120 |ROUTESP,18,10
130 |ROUTESP,17,0
131 |PRINTSPALL,0,0,0
140 '--- ciclo de juego ---
150 |AUTOALL,1:|PRINTSPALL
160 goto 150


vamos a ver un ejemplo en accion en el siguiente video
https://www.youtube.com/watch?v=9Tk5ZE8lG-c




Ademas de esta nueva versión de la libreria, ahora se incluye el nuevo videojuego "SPACE PHANTOM", un tributo al clasico "Space Harrier" de SEGA, realizado en BASIC con 8BP. Es un juego con capacidades pseudo-3D, logicas masivas, enrutado de sprites avanzado, etc.
Equipado con un jet-pack, debes volar por el espacio y destruir meteoritos y pajaros diabolicos espaciales, despues entrarás en el ultramundo donde te enfrentarás a numerosas naves enemigas y por ultimo tendrás que enfrentarte a un dragon y conseguir su cabeza. Una aventura epica espacial en tu AMSTRAD.




y aqui os dejo el video

https://www.youtube.com/watch?v=8adNXl3K7qw





Espero que os guste. Hasta pronto amigos!!!




miércoles, 10 de octubre de 2018

Disponible nueva versión V34 de la libreria 8BP

hola amigos de 8 bits de poder

Ya esta disponible la versión v33 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las siguientes mejoras


  • corregido un bug detectado en v33 en la deteccion de colisiones
  • el comando PRINTAT ahora puede imprimir fuera de los limites establecidos por SETLIMITS y es algo mas rapido
  • soporte de impresion transparente y flipeada en mode 1
  • nuevo codigo de ruta 251 para forzar animacion en mitad de una ruta
  • la libreria ahora ocupa 8200 bytes de los que unos 180 estan libres. comienza en la direccion 24000 dejando 24kB libres para BASIC
  • SPEDIT: (editor de sprites): nueva version v11 con soporte de mode 1, con capacidad de flip tambien para este modo
  • manual : En la documentacion he reflejado todos los cambios y he corregido la distribucion de bits en mode 1 en el capitulo de video
impresion transparente y flipeada en mode 1
Gracias al soporte de mode 1, ahora podemos hacer juegos con impresion flipeada y transparente tambien en este modo. Es la antesala de la capacidad filmation (o algo similar) que incorporaré a 8BP
8BP v34 soporta fliping y sobreescritura n mode 1



SPEDIT V11
ahora SPEDIT (nuestro editor de sprites integrado en la libreria), soporta edicion en mode 1
spedit v11 soporta mode 1


Animación forzada desde rutas:
Podemos dejar inactivo el flag de animación de un Sprite y animarlo solo en determinados instantes de la ruta usando el código 251 ( ver manual para mas detalles).

Esto puede ser muy útil para dar sensación de que un Sprite se acerca en juegos que utilizan técnicas pseudo 3D. Por ejemplo, para un meteorito que se acerca y que queremos que cambie de fotograma para aparecer mas grande. El meteorito se moverá unas cuantas veces antes de pasar al siguiente tamaño. Este mecanismo es muy similar al de cambio de imagen, solo que te permite definir el cambio de imagen sin especificar explícitamente la imagen, sino simplemente indicando un cambio de frame en la secuencia de animación que tenga asignado el Sprite.

un meteorito o una nave que se acerca pueden usar esta funcionalidad
Todas estas cosas las teneis bien descritas en el manual, el cual he actualizado convenientemente. Para el futuro cercano os diré que sigo trabajando en el videojuego "space phantom", del que os adjunto unas pantallas y en cuanto a la libreria, no la voy a hacer crecer mas, pues no quiero dejar menos de 24KB al programador BASIC, pero como aun me sobra algo de espacio en la zona de memoria de la librería, ando pensando cosas para poder hacer juegos estilo filmation. Eso lo dejo para la V35





hasta pronto amigos!



domingo, 24 de junio de 2018

Disponible nueva version V33 de la libreria 8BP

hola amigos de 8 bits de poder

Ya esta disponible la versión v33 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las 4 mejoras prometidas : flipping, sobreescritura con 2 y 4 colores de fondo, mejora del comando RINK para usar cualquier numero de tintas y posibilidad de sobreescritura de segmentos en modo Pseudo-3D.

Una de las mejoras mas importantes es el manual. Le he dado un repaso muy completo y ahora tiene mas aclaraciones y corrección de muchísimos detalles. He incluido mas medidas de rendimiento, mejor explicación de los mecanismos de scroll, mejor capitulo de memoria de video, mas diagramas explicativos, codigo fuente con colores y tipo de letra monoespaciado, etc. Ahora merece ser impreso como un libro de referencia en programación de 8 bit de nuestro querido CPC.


Cosas importantes a saber de la V33:
  • Ocupa lo mismo que la v32 (7700 bytes). Es decir, tienes 24.5KB libre para BASIC
  • Ahora tienes 1400 bytes para musica (100 bytes mas que con v32)
  • El comando RSX SETUPSQ ha sido eliminado. Este comando tenia una sintaxis mas compleja en BASIC que en asm y he preferido dejar la creacion de secuencias unicamente en el fichero asm. Ademas en ninguno de mis juegos lo habia usado. Era el comando menos util. gracias a ello he ganado espacio de memoria para mejoras de funcionalidad y para graficos, pues antes este comando reservaba 256bytes en la zona de memoria de graficos pra poder funcionar.
Con los bytes que me sobraban de la v32 y los que he ganado con SETUPSQ, he incorporado las 4 mejoras:


  • En modo pseudo-3D, ahora tiene capacidad de imprimir segmentos con sobreescritura. Esto es algo que se podía hacer en v32 con todo tipo de sprites menos con los segmentos. Ahora simplemente al configurar los items con sobreescritura (usando MAP2SP, status) los segmentos tendrán sobreescritura
  • Rotación de tintas mejorada (comando RINK) sin limitaciones. Hasta ahora se podían hacer patrones de 4 y 8 tintas rotando. Ahora puedes rotar cualquier numero de tintas
  • Sobreescritura de sprites con posibilidad de elegir el numero de bits de fondo: esto te va a permitir si lo deseas usar 4 colores de fondo en tus juegos
  • sprite flipping horizontal: ahora puedes definir imágenes "virtuales", que en realidad se definen como el "flip" horizontal de una imagen real. Esto te permite ahorrar mucha memoria RAM destinada a gráficos. He hecho el horizontal y no el vertical porque el horizontal es el más útil. Normalmente un personaje que camina a la izquierda es la imagen especular del mismo caminando hacia la derecha, mientras que cuando sube hacia arriba muestra la espalda y al bajar muestra el pecho y la cara.


Os dejo con un video de las demos que vienen con 8BP V33 y que ya podéis descargar y disfrutar. Yo me pondré con el nuevo videojuego que tengo en marcha, y espero poder regalároslo pronto




Hasta pronto amigos!