Categorías
Programación

Hola mundo desde .rom

La creación de un archivo rom es muy sencilla, tan solo que cumplir la especificación, para ejecutarla solo necesitamos pinchar en el botón Cart A y elegir el archivo que previamente hemos creado con sjasm:

Recuerda que, si haces algún cambio, tendrás que cerrar el emulador para que sjasm pueda sobreescribir el archivo .rom y tendrás que volver a abrirlo, ahora copia y pega este código:

		output	"programa.rom"; acuerdate de poner los espacios delante de output
		
		org		#4000
			
		;Cabecera
		db "AB"
		word INICIO
		word 0,0,0,0,0,0				
		
		

		
INICIO:
    ld hl,mensaje       ; almacena en los registros h y l del z80 la referencia a la memoria
    call Print          ; Llama al método Print
    jr $                ; Bucle infinito, siempre se pone así, el $ es la referencia de la memoria en la que estás, :)

    


Print:
    ld  a,(hl)          ; Lee el 1 byte de la dirección de la memoria indicada y lo almacena en el registro a del z80.
    and a               ; Actualiza la bandera z del registro F del z80 y la pone en 0 si no hay valor, and a también actualiza el flag c, p, v y s.
    ret z               ; Devuelve el cotrol al Main si la bandera z del registro F del z80 es 0
    call #00A2          ; Llama a la subrutina 0042h de la Bios la cual imprime el caracter almacenado en el registro a del z80
    inc hl              ; incrementa el puntero de los registros hl para que señale al siguiente byte
    jr Print            ; Llama al métdo print para que lo vuelva a ejecutar
 


mensaje: 
        db "Hola soy MSX, claro, pijo!! ",0	; Crea una dirección en la memoria con la etiqueta mensaje, el cero indica el fin del texto
relleno_de_bytes:
		ds	#8000-$		;desde 4000 hasta 8000 rellena los bytes con datos
		;ds	#6000-$ 	;para una ROM de 8KB



Deja una respuesta

Tu dirección de correo electrónico no será publicada.