Buen comienzo tengo yo.
He conseguido imprimir un caracter en la pantalla usando las rutinas BIOS. Bien, hasta aquí perfecto.
Pero hay madre de todos los corderos, yo siempre voy a mas. Ahora quiero imprimir una cadena definida. Lo he intentado todo, pero como soy Lerdosky, lo unico que me hace es sacar basura y bloquearse (estoy con el BlueMSX). Veamos la rutina de marras:
; Rutina para imprimpir una cadena de texto en la pantalla (Screen 0)
; recogiendola de una cadena definida (DATOS:)
CHPUT:   EQU   &H00A2
CHGMOD:   EQU   &H008C
      LD    A, 0      ; Seleccionamos el modo de pantalla (0=Screen 0)
      CALL   CHGMOD   ; Cambio a Screen 0
      LD    HL, DATOS   ; Cargo en HL la cadena de texto
BUCLE:      LD   A, (HL)   ; Se coge el siguiente caracter de la cadena
      CP   "$"      ; Se compara el caracter de A con $
      JR   Z, FIN      ; Si es $, salta a FIN
      PUSH   HL      ; Sino...: GUARGO HL
      CALL   CHPUT      ; El caracter de A se imprime
      POP    HL      ; Se recupera la cadena
      INC    HL      ; Coge el siguiente caracter de la cadena
      JR   BUCLE      ; Repite el Bucle
FIN:      END         ; Fin de programa
DATOS:   DEFM    "Esta es la cadena de texto que quiero imprimir"
      DEFB   &H07, &H07, &H07, "$"
               ; El "$" es el último caracter de la cadena
               ; El &H07 no tengo ni idea de que es...
Despues de examinar la rutina 100 veces, me rindo, me veo incapaz de arreglarlo. Entiendo la rutina, ese no es el problema, pero no se porque no funciona 

Bueno, almas caritativas. Dadme un poco de tregua y dedidme... ¿dónde está el fallo?
Agradecido como para invitar a unas cervezas 
