Mi primer programa para Spectrum :)

El lugar para hablar de los emuladores. || Post here if you have any question about the emulators.

Moderadores: Neville, CEZ

Responder
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mi primer programa para Spectrum :)

Mensaje por WYZ »

Pues eso. Pero ahora tengo un problema. He generado un archivo en (Codigo maquina) ASM sin formato, totalmente plano. no tengo ni idea de como cargarlo en un emulador.

Se carga y se ejecuta en la direccion de memoria $9000 y ocupa $044D bytes. Alguien que me eche una mano!

Aqui os lo dejo...
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
WYZPlayer

DREAM OVER
INSERT COIN
Avatar de Usuario
na_th_an
256 bits
256 bits
Mensajes: 11874
Registrado: 22 Abr 2005 13:25
Contactar:

Mensaje por na_th_an »

Yo no entiendo mucho de esto, pero tengo entendido que el ensamblador cruzado Pasmo (español) tiene parámetros de línea de comandos para ensamblar y automáticamente generar un archivo TAP con el código objeto que puede ser cargado desde e lemulador sin problemas.

Échale un vistazo. De todos modos, a ver si lo intento yo (que me llevo mejor con los Spectrums y sus emus) esta tarde cuando llegue a casa y te echo un cable.

Jodo, yo DEBERÍA empezar a jugar con el Z80... En cuanto termine los retroproyectos actuales me lanzo.
Última edición por na_th_an el 28 Abr 2005 12:49, editado 1 vez en total.
Avatar de Usuario
saboteur2
32 bits
32 bits
Mensajes: 574
Registrado: 20 Dic 2004 16:37
Ubicación: Pinto (Madrid)

Mensaje por saboteur2 »

Recuerdo que había un programita que cogía un archivo compilado y lo convertia en un .sna o .z80 o .tzx (no recuerdo bien), y creo que era de algún compilador de c para z80, pero tendía que mirarlo (o lo hice yo?).

Si tengo tiempo y me acuerdo, lo miraré cuando llegue a casa, pero es que estoy muy apurado :P , entre el trabajo y el master, apenas me quedan seis horas para dormir (en el mejor de los casos).

Sí, no ayudo nada, solo quiero producir ataques de impaciencia :roll:
Spectrum +4 600Ghz 8GB RAM HD 120PB Gráfica 4D Sonido 12.3THX
Mis videojuegos: Videojuegos de Rafa Vico
Avatar de Usuario
Anjuel
256 bits
256 bits
Mensajes: 8771
Registrado: 23 Dic 2004 16:36
Ubicación: Torreznolandia

Mensaje por Anjuel »

No me lo carga en spectaculator, lo ideal es poder cargar un tap o tzx.
¿Cómo lo compilas?
Habría que sacar un .bin y con el bin2tap sacamos el tap. Luego con un randomize lo probamos.
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Esta compilado de forma que no incluye ninguna cabecera , es decir opcodes a pelo. ¿Cual es el formato del bin para spectrum?

Por cierto, ¿es correcto esto para enviar datos a los registros del AY?

Código: Seleccionar todo

	ayctrl  EQU     65533
	aydata  EQU     49149

	start:
                                ld      d,7             ; select the mixer register
		ld      e,62            ; enable channel A only
		call    outer           ; send it to PSG
		ld      d,1             ; channel A course pitch
		ld      e,50            ; pitch value
		call    outer           ; send it to PSG
		ld      d,8             ; channel A volume
		ld      e,15            ; maximum
		call    outer           ; send it to PSG
		ret

	outer:
                                ld      bc,ayctrl       ; select control port
		out     (c),d           ; send specified value
		ld      bc,aydata       ; select data port
		out     (c),e           ; send specified value
		ret
Última edición por WYZ el 28 Abr 2005 13:09, editado 1 vez en total.
WYZPlayer

DREAM OVER
INSERT COIN
Avatar de Usuario
Anjuel
256 bits
256 bits
Mensajes: 8771
Registrado: 23 Dic 2004 16:36
Ubicación: Torreznolandia

Mensaje por Anjuel »

pero con qué compilador lo haces?
lo normal (o lo que yo pienso...) es que partas de un asm que te produce un bin
Habría que saber si usas un compilador cruzado (en win o linux) o sobre el propio emulador.
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Uso AsMSX, porque estoy acostumbrado a la sintaxis. Asi que no creo que sea muy sencillo exportarlo a otro ensamblador cruzado. Pero el codigo generado es el mismo, estamos hablando de z80 :). He usado el Pasmo, pero no obtengo mas que errores.

Por eso te preguntaba el formato de un bin para spectrum.
WYZPlayer

DREAM OVER
INSERT COIN
Avatar de Usuario
Karnevi
CEZ Member
CEZ Member
Mensajes: 7916
Registrado: 20 Nov 2004 00:11
Ubicación: España
Contactar:

Mensaje por Karnevi »

Bueno, bueno, bueno... El Wyz se nos hace morisco! :lol:
Un saludo,
Karnevi - webmaster
http://computeremuzone.com
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Juas juas juas!!!, Meu! ya sabia yo que habria cachondeo :).

Hombre, se trata de un replayer para el AY. A ver que tal suena, tengo curiosidad, el proximo paso sera portarlo a amstrad :D
WYZPlayer

DREAM OVER
INSERT COIN
Avatar de Usuario
na_th_an
256 bits
256 bits
Mensajes: 11874
Registrado: 22 Abr 2005 13:25
Contactar:

Mensaje por na_th_an »

El formato BIN de spectrum son opcodes a pelo, sin cabeceras ni nada.

Lo que tienes que hacer es cargarlo en el Spectaculator en la dirección del ORG y luego hacer un RANDOMIZE USR desde 128 BASIC.
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Eso es lo que yo queria saber!!!1

Aqui version nueva para que probeis :)
en la otra se oia el canal de ruido.

Cargar el bin en en spectaculator arrastrandolo a la ventana del emulador y RANDOMIZE USR 36864.
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
Avatar de Usuario
Anjuel
256 bits
256 bits
Mensajes: 8771
Registrado: 23 Dic 2004 16:36
Ubicación: Torreznolandia

Mensaje por Anjuel »

:-({|= :-({|= :-({|= :-({|= :-({|= :-({|= :-({|=
se oye perfecto
=D> =D> =D> =D> =D> =D>
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Y una pregunta para litos.net o cualquier otro amstrad maniaco:
¿Donde puedo encontrar informacion sobre las cabeceras de los archivos bin del CPC?
WYZPlayer

DREAM OVER
INSERT COIN
Avatar de Usuario
na_th_an
256 bits
256 bits
Mensajes: 11874
Registrado: 22 Abr 2005 13:25
Contactar:

Mensaje por na_th_an »

Yo creo que si te encuentras un emu que permita transferir un bloque de datos RAW de un archivo a la memoria, puedes usar el mismo formato para BIN. Lo que supongo que cambiarán serán los puertos de E/S que hay que tocar para que suene el AY, ¿no?
Avatar de Usuario
WYZ
Site Admin
Site Admin
Mensajes: 2356
Registrado: 29 Dic 2004 21:17
Ubicación: Cartagena (CT)

Mensaje por WYZ »

Igual que se hace en el spectaculator? pues si. Y claro , lo unico que hay que cambiar es el puerto del PSG. Y lo que me ha gustado es que suena exactamente igual en un emulador de MSX que en uno de spectrum.

La verdad es que sería perfecto usarlo con programas en basic, ya que no consume casi nada de recursos de la CPU y es tan compacto que deja libre casi toda la memoria para el listado.

Ahora a ver si me curro una demo de 1kb para Spc :-#
WYZPlayer

DREAM OVER
INSERT COIN
Responder