Ayer encontre la pagina de sz81 pero no se que tan completo es, lo voy a tener que probar, EightyOne lo uso exclusivamente para emular ZX81 y TS2068, Spin lo use por el ensamblador integrado y porque emula bien el RS232 de la IF1 usando el puerto serie de la PC. Pero lo que uso casi siempre para emular Spectrum es JSpeccy, conozco al autor y colabore probando la generacion de audio en Windows, realmente es un muy buen emulador.
Despues voy a revisar el listado porque hay que poner algunos caracteres invertidos, y alguna comparacion con los codigos "ASCII" me quedo sin cambiar.
Que bueno Adrián!. Estaría bueno que pases por la sección de presentación y bienvenida y nos cuentes mas sobre esto, sobre los juegos que hiciste, etc.
Muchas gracias y bienvenido.
Saludos
Hola Adrián! Te debe haber sorprendido encontrar tu creación de hace tanto tiempo. Como dijo Marcelo, estaría bueno que cuentes algo más sobre vos, dónde estás actualmente y qué hiciste. Aparte del Keops, que con la descripción que escribiste promete ser interesante y estaría bueno verlo.
Yo estoy tipeando el SAPO (PP Nro 15).
Hola Marcelo, disculpa la demora en responder...
Te cuento lo que me acuerdo, pasaron como 30 años... empecé programando en assembler a mano, es decir, buscaba en el manual de la máquina los códigos de las instrucciones assembler y los cargaba con la instrucción "POKE" y calculo que iba anotando el programa en papel. En ese entonces yo tenía una CZ1000 con 2K de RAM, mucho más no podía hacer...
Luego gracias a un compañero de la secundaria, que a su vez tenía un hermano que enseñaba informática en el Politecnico de Rosario, conseguí un ensamblador, que corría en la misma máquina. Fue el día y la noche... Para ese entonces, había logrado comprar el expansor de 16Kb.
Para trabajar, había que cargar el ensamblador en la máquina, unos 5-10 minutos de espera, este se copiaba a la zona alta de memoria (no recuerdo exactamente la dirección) y a continuación se cargaba la aplicación que uno estaba haciendo en la parte inferior de la memoria (otros 5-10 minutos)...
Todo esto había que repetirlo cada vez que se tildaba el programa, cosa que con assembler era sumamente frecuente... cada 2 o 3 pruebas, grababa mi programa (incluyendo los nemónicos) en cinta, para no perder todo lo avanzado con un tilde...
Con este ensamblador, había que escribir los nemónicos de assembler en sucesivas lineas REM, y luego si mal no recuerdo, había que hacer un RAND USR xxxx para ejecutar el ensamblador y ver el resultado de la compilación y corregir si daba algún error.
Si no había errores se podía ejecutar el programa de uno y "ver" que pasaba... realmente una locura si lo comparamos en como se programa hoy en día...
Realmente no recuerdo si use el ensamblador con los programas "Ping Pong" y "Arañas Asesinas", pero si estoy seguro que lo usé con el "Keops".
Con este último, además, había otro "inconveniente". Realmente no entraba en la memoria de la máquina el programa ensamblador (creo que ocupaba unos 6KB), el programa mío en desarrollo (otros 6KB) y todos los nemónicos guardados con líneas REM. Así que lo que hice fue una sucesión de "funciones" que se iban anidando que a medida que estaban consolidadas, yo simplemente registraba en un papel la funcionalidad, la dirección de ejecución y los parámetros a pasarle en los registros del micro y a continuación borraba las líneas REM con los nemónicos para hacer lugar para las siguientes funciones.
O sea, no estaba fácil arreglar esas funciones si luego descubría que tenían algún error o necesitaba que hicieran algo extra. Yo tampoco disponía de una impresora para imprimir el assembler, así que simplemente no me quedaba mucho registrado.
También en el caso del juego "Keops", había dibujado en papel cuadriculado toda la pirámide con todos los elementos móviles. Cada pantalla estaba formada por una cuadrícula de unos 5x3 bloques aprox. Había un número de bloques predefinidos (no recuerndo exactamente cuantos) y con ellos se podían armar todas las pantallas. Los elementos móviles (ej: gotas, arañasm etc) tenían varios parámetros que definían el tipo, su posición, movimiento, etc. y estos parámetros se guardaban con la información de cada pantalla. Así que la información para armar cada pantalla era sumamente reducida. De hecho calculo que si fuera por espacio de memoria, el juego podría haber tenido más de 100 pantallas en lugar de 40 (o muchos más elementos móviles), pero yo me hubiera suicidado antes de terminarlo...
Todo lo que me quedó de esa época fue un cassette, y algunos programas no los pude recuperar como por ejemplo el programa ensamblador y ni siquiera recuerdo el nombre del mismo.
De hecho, el programa "Ping Pong" lo había "perdido" hasta que lo recuperé gracias a este foro.
Bueno, espero haber contestado tus preguntas.
Un abrazo, Adrián
Que buenas experiencias!! Puede que hayas usado el Zeus Assembler para la CZ? Era bastante popular en esa época.
S!