Creador de laberintos en MSX BASIC.
Usa el método de Backtrace para generar el laberinto de forma aleatoria.
LOAD"mazes_a.bas"[,R]
o
RUN"mazes_a.bas"
Ejecutar con run.
El laberinto se crea de forma aleatoria. Se puede modificar la extensión (anchura y altura) en la línea 30, cambiando el valor de las variables WD y HG.
Una vez generado, se puede navegar por él con los cursores.
Pulsando S se puede grabar en formato binario (BSAVE) denominado MAZES.BIN a partir de la dirección &HA8000. De esta forma, podría cargarse en otro programa con BLOAD.
Pulsar ESC para terminar.
El fichero generado MAZES.BIN carga en &HA800 y &HA801 las dimensiones (anchura y altura), y a continuación la configuración del laberinto por filas. Cada casilla del laberinto se describe por un valor entre 0 y 15 que indica qué dirección es pasillo o pared:
Casilla = &Bosen
Cada posición del código binario (osen) equivale a una dirección: la dirección Norte (n) es el LSB , y el Oeste (o) es el MSB. 0 equivale a pared, y 1 a pasillo.
Explicación del método de Backtrace, y comentarios al código: http://cacharreomsx.blogspot.com/2022/07/laberintos.html
Este código ni se mantiene ni se actualiza. Simplemente se comparte para quien pueda interesar. Úsalo por tu cuenta y riesgo.