help me to make 8BP better

If you like 8BP, your help is welcome. Help me supporting this initiative (from 1€, whatever you want). Donations will be used for materials and 8BP disemination:

jueves, 14 de noviembre de 2019

Disponible version V38 de la libreria 8BP

Hola amigos de 8 bits de poder

ya tenéis disponible la versión V38 de la libreria 8BP, descargable en github https://github.com/jjaranda13/8BP . Esta nueva versión incorpora las siguientes mejoras:

- detección de colisiones perfeccionada, sin limitaciones por coordenadas negativas
- comando MUSIC mejorado: ahora puedes decidir entra hacer sonar una musica en bucle o hacerla sonar una sola vez.
- el comando MUSICOFF ha sido reemplazado por MUSIC invocado sin parametros
- manual mejorado con capitulo de primeros pasos y diversas pequeñas mejoras
- la librería ocupa exactamente igual que antes (8KB) , dejándote 24 KB para tu lógica BASIC, 8.5 KB para gráficos y 1.4 KB para música

Estos son los primeros pasos con la librería 8BP. Te dejo con un vídeo explicativo y los mismos pasos por escrito, que ademas los tienes en el manual de 8BP que viene con la librería.


Primeros pasos con 8BP

 1) Instalar winape

Lo primero que debes hacer es instalarte la última versión de Winape, que es un emulador y a la vez editor y ensamblador de Amstrad. Lo puedes descargar desde www.winape.net

2) Familiarizándote con winape: “hola mundo”

Una vez instalado el Winape, familiarízate un poco con el, probando algun juego de Amstrad y probando a cambiar la configuración. Trata de abrir el assembler que lleva incorporado en el menú y edita un “hola mundo” en la ventana de ensamblador. A continuación, copia y pega el texto en la ventana de emulación. Veras como se pega carácter a caracter



Si haces un programa mas largo, para copiarlo en la ventana de emulación es muy interesante la opción settings->high speed. Verás como se copia rapidísimo.

3) Descárgate la librería 8BP

Estamos llegando a lo mas interesante. Ve a la url https://github.com/jjaranda13/8BP y descargate el zip (https://github.com/jjaranda13/8BP/archive/master.zip) . Para ello puedes simplemente pulsar el botón verde “clone or download” y a continuación seleccionas el zip

Una vez que te lo has descargado, descomprímelo en el directorio que quieras. Tendras el siguiente resultado:


4) Ejecuta las demos

Ahora vamos a hacer una primera toma de contacto con 8BP viendo algunas demos. Entra en el directorio Demos. En el encontraras una serie de subcarpetas : ASM, BASIC, DSK, MUSIC
Entra en DSK . Alli veras un fichero .dsk con las demos. Desde winape ve al menú File->drive A-> insert Disc image y selecciona el archivo de las demos
Una vez seleccionado, desde la ventana de emulación del Amstrad escribe CAT para ver los archivos

Cada fichero .BAS es una demo donde podrás ver alguna de las características de 8BP (no todas sus posibilidades se pueden ver con las demos pero hay algunas representativas).
Ejecuta el comando RUN “LOADER.BAS”. Obtendrás el siguiente menú:




Ya puedes elegir una demo y probarla. A disfrutar. En el siguiente y ultimo paso empezaremos la creación de un juego

5) Creando tu primer programa con 8BP

Hemos probado un fichero .dsk que contiene muchas demos, con graficos y música. En el directorio Demos/ASM y en el Demos/MUSIC se encuentran los graficos y la música de las demos que has probado. Sin embargo, si quieres hacer tu propio juego o demo, es mejor que empieces con unos ficheros “limpios” sin todos los graficos que requieren las demos que has probado.

Nos vamos al directorio raíz. Alli encontraras una carpeta llamada 8BP_V38. Yo te recomiendo que hagas una copia de esta carpeta y la renombres como “mi_juego”. De ese modo preservarás la carpeta 8BP_V38 original aunque empieces a cambiar cosas

Dentro de la carpeta 8BP_V38 encontraras las carpetas ASM, BASIC, DSK, MUSIC, TAPE, y output_spedit


Desde la ventana de ensamblador de winape abre el archivo “ASM/make_all_mygame.asm” y ejecútalo (simplemente en el menú de winape z80 assembler seleccionas Assemble o pulsas Ctrl+F9). Esto comenzara a ensamblar (copiar en memoria) la librería y los graficos en la memoria del Amstrad. En este caso vamos a ensamblar muy pocos graficos, tan solo los indispensables para un pequeño juego. Los gráficos se encuentran en images_mygame.asm
Tras ensamblar todo, obtendrás un mensaje como el que se muestra a continuación:


Pulsas “ok” y desde la ventana de ensamblador vamos a abrir otro archivo. En este caso vamos a abrir un fichero BASIC, concretamente “tu_primer_juego.bas” que se encuentra en la carpeta BASIC. Tras abrirlo veras el siguiente listado en pantalla, que contiene 32 lineas:

Selecciona todo y cópialo. Luego ve a la ventana de emulación del CPC y pégalo usando el menú FILE->paste
Como el listado es algo mas largo que el “hola mundo”, usa settings->high speed para copiarlo y luego vuelve al “normal speed”
Como ya esta ensamblada la librería y los gráficos, puedes hacer RUN y el juego se ejecutará. Debes esquivar unas bolas que caen del cielo para no morir, moviéndote a derecha e izquierda

Puedes probar a modificar el programa y ver sus efectos. Poco a poco iras aprendiendo 8BP y podrás hacer modificaciones interesantes tales como cambiar la frecuencia con la que salen bolas enemigas o su velocidad, o reemplazar al soldado por una nave espacial y a las bolas por naves enemigas con diversas trayectorias.

6) Crea tu .dsk con tu juego 8BP

Por último, vamos a crear un disco con tu juego. Para ello, tras tener el juego funcionanod debes dar estos pasos

·        Crea un disco nuevo mediante winape: FILE-> drive A-> new Blanc Disc
·        Formatealo: FILE->drive A->Format Disc Image
·        Tras haber creado tu fichero dsk , desde la ventana de emulación ejecuta los siguientes comandos:

SAVE “8BP.bin”, b, 24000,18620
SAVE “juego.bas”

Ya casi hemos terminado. Ahora debes seleccionar otro disco desde el menú de winape o salir de winape para que el .dsk que has creado se haga realidad en el sistema de ficheros de windows.

Sal de winape y vuelve a abrirlo
Selecciona el disco que has creado y ejecuta:

MEMORY 23999
LOAD “8BP.BIN”
RUN “juego.bas”



Aleluya !!!



No hay comentarios:

Publicar un comentario