RomMonitor - AtlasFPGA/Multi_CPM Wiki

El monitor de ROM

Una vez pulsemos espacio en un terminal, la rom lanza el monitor de ROM. Desde aquí se pueden realizar todo tipo de acciones sobre los discos (Formatear una partición, cargar un sector de boot, modificarlo en memoria, volverlo a escribir,etc.

El sistema devuelve el mensaje:

Z80 Multicomp Multiboot Monitor v3.2
based on design by G. Searle

  press ? for help


>

pulsando la tecla '?' devuelve un listado de todos los posibles comandos volviendo a mostrar el prompt ">" para indicar la entrada de nuevos comandos.

 Available Commands:

  :ccxxxxiibbbbbb       Load Intel-Hex file record
  Rxxxx         Run from address xxxx
  Sddd          System boot
  Iddd          Init: Format directory
  Pddd[,xxxx]   PutSys: write system image[,loadaddress]
                (No address: re-use last loadaddress)
  Gddd[,xxxx]   GetSys: load system track

  Dxxxx[,yyyy]  Dump memory from xxxx [,to yyyy]
                D (no address) shows next block
  Cxxxx         Change/show memory at xxxx
                CR advances "," quits

  ddd is a decimal volume number,
  xxxx, yyyy is a hexadecimal address.
  Leading zeros may be omitted.
  ESC or ^C aborts.

> 


Los comandos "G","P" y "L" tienen un formato similar. Necesitan como parámetro obligatorio un numero valido de volumen y como parámetro opcional, una dirección de carga. Si no se especifica, se utiliza la dirección por defecto 0xE000.

Comando "S"

Carga una imagen ejecutable desde la pista 0 del volumen y comienza automáticamente su ejecución. La imagen puede ser un sistema operativo (como en el caso de CPM) o una rom (como en el caso de BASIC).

Comando "G"

Carga la imagen (igual que el anterior) pero devuelve el control al prompt de comandos. Esta opción es útil para examinar la imágen o prepararla para grabarla en un nuevo volumen.

Comando "P"

Este comando hace lo contrario al comando "G". Graba la imágen a la pista 0 del volumen.

Comando "I"

Formatea un volumen para su utilización. Escribe un directorio vacio en la pista 1 del disco y una etiqueta de volumen. No escribe nada en el resto de pistas.

Comando "R"

Salta a la dirección hexadecimal especificada.

Comando "D"

Muestra contenidos de la memoria empecando en la dirección especificada en el primer parametro y finalizando en el segundo parametro (ambas en hexadecimal). Muestra en bloques de 16 bytes.

Comando "C"

Permite cambiar las direcciones de memoria una a una.

Subiendo código desde cinta perforada o TTY.

Cualquier fichero en formato hexadecimal intel, se puede enviar desde el terminal o lector de cinta de tarjeta directamente al monitor para ser ejecutado o grabado en el disco. Las lineas que comienzan por dos puntos (":") se procesan secuencialmente.