
                            
                        
                                      
                                 
                                       
                                               
                                
                                

                                                                      v1.5


                                  D O C U M E N T A C I O N


                                  (c) Marco Vieth, May 1998
                        Traducido por Gerardo Briseo, Junio de 1998




-------------------------------------------------------------------------------




Tabla de Contenidos:

       1.  Introduccin
           1.1  Consejos sobre como se debera leer esta documentacin
           1.2  Copyright, garantas
           1.3  Qu es un CPC?
           1.4  Qu cosas te ofrece CPCEMU?

       2.  Instalacin de CPCEMU
           2.1  Ficheros que contiene el paquete CPCEMU
           2.2  Requisitos del sistema e instalacin
           2.3  Indicaciones sobre memoria y tarjetas de sonido
             2.3.1  Usando Memoria EMS
             2.3.2  Definiendo el entorno BLASTER
             2.3.3  Definiendo el entorno ULTRASND

       3.  Diferencias entre el CPC y CPCEMU
           3.1  Teclado
           3.2  Cargando Programas, Mens
             3.2.1  Cargando desde Disco, Mens
                    - El Men de Insercin de Discos
                    - El Men de Seleccin de Ficheros
             3.2.2  Cargando y guardando con el casete
             3.2.3  Cargando y guardando snapshots

       4.  Cambiando la Configuracin
           4.1  El men de configuracin
           4.2  El fichero de configuracin
           4.3  Parmetros en lnea de comandos

       5.  Transferencia de datos CPC <-> PC
           5.1  El disco como intermediario
             5.1.1  El programa para transferencia de discos CPCTRANS
             5.1.2  La utilidad de formateo y copia 22DISK por SYDEX
           5.2  El interface paralelo
             - El adaptador paralelo
           5.3  El interface serie
           5.4  Otras posibilidades

       6.  Fuentes de Suministro, Soporte y Reconocimientos
           6.1  Dnde conseguir software para el CPC?
           6.2  Noticias, intercambio de experiencias
           6.3  Si tienes preguntas o sugerencias
           6.4  Otros emuladores del Amstrad CPC
           6.5  Planes para futuras versiones de CPCEMU
           6.6  Reconocimientos
           6.7  Marcas registradas

       7.  Informacin Interna de CPCEMU
           "Caja Negra", con su propia tabla de contenidos


       Apndice:

       A.1  Glosario
       A.2  Bibliografa
       A.3  Indice


---------------------------





1.  Introduccin



Bienvenido al mundo de los emuladores!

Cmo?! Que quieres saber qu es CPCEMU, y qu es lo que puedes hacer
con este extrao programa que escribe en amarillo sobre un fondo azul y
que muestra "Syntax Error" despus de cada entrada?


Para evitarte largas bsquedas aqu te lo pongo:
        CPCEMU emula un Amstrad CPC 464, 664  6128 con muchas
        extensiones. En otras palabras, el programa imita el
        comportamiento de los ordenadores Amstrad ms antiguos
        en tu ms reciente PC.

Con qu propsito?
Veamos, si an no lo sabes me temo que CPCEMU no te har falta para nada.

Algunas razones:
        - nostalga (ah, que agradable era mi viejo CPC ...)
        - mejores prestaciones comparado con el original
        - mejor entorno para el desarrolo de programas
        - para jugar
        - trabajo (s, un CPC es suficiente para un simple tratamiento
          de textos)
        - [                                  ] <- aade otras razones por
                                                  tu cuenta.




1.1  Consejos sobre como se debera leer esta documentacin
===========================================================


  Lo primero sera darse una vuelta por la ayuda en lnea, luego, si
  necesitas profundizar o informacin ms precisa, contina leyendo...


  He intentado organizar la documentacin de un modo ordenado. Si an
  tienes dudas (despus de haberla ledo varias veces!), puedes ponerte
  en contacto conmigo. Por supuesto puedes hacerlo an cuando tengas
  todo perfectamente claro. Mira el captulo 6 (Fuentes, Soporte, ...)
  para ver la manera de contactar.

  En el captulo 1 (Introduccin) describo la mejor forma de leer esta
  documentacin, quin posee el copyright y algunas cosas del CPC en
  general.

  En el captulo 2 (Instalacin) por fin empieza todo. Se te indicar
  como instalar y ejecutar CPCEMU.

  El captulo 3 (Diferencias entre el CPC y CPCEMU) trata las
  caractersticas del emulador que deberas conocer si ya ests
  familiarizado con un CPC real. Fundamentalmente describo el teclado,
  los discos, las cintas y los snapshots.

  En el captulo 4 (Cambiando la Configuracin) describo como adaptar
  CPCEMU a tus necesidades. Puede que para entonces ya seas capaz de
  ejecutar tus programas favoritos.

  En el captulo 5 (Transferencia de datos CPC <-> PC) descubrirs como
  traspasar tus antiguos programas para el CPC al PC. Ms adelante se
  describen las utilidades que acompaan a CPCEMU.

  En el captulo 6 (Fuentes, Soporte y Reconocimientos) se te indicar
  cmo conseguir la ltima versin de CPCEMU y a quin acudir si tienes
  alguna pregunta.

  El captulo 7 (Informacin Interna de CPCEMU) es slo para expertos. La
  parte "oficial" del manual de usuario finaliza en el captulo anterior.
  Aqu describo como va uno de aqu para alla programando un emulador, y
  qu es necesario saber para realizarlo. Tambin se explica el men de
  depuracin, que te permite analizar el procesador y la memoria en
  *cualquier* momento durante la emulacin. Los usuarios ocasionales
  deberan saltarse este captulo, por lo menos en la primera lectura.

  El Apndice A.1 contiene un glosario con descripciones de los trminos
  tcnicos ms importantes. El Apendice A.2 es la bibliografa y el A.3
  el ndice.



1.2  Copyright, Garantas
=========================

  CPCEMU ha sido desarrollado por (ver tambin la seccin 6.3):

         Marco Vieth
         Auf dem Uekern 4
         D-33165 Lichtenau
         Alemania


  CPCEMU es Freeware, lo que significa que puedes pasar el programa a
  amigos y conocidos *gratis*. Los mantenedores de archivos tienen
  permitido incluir CPCEMU en sus colecciones para "downloading". Los
  distribuidores de shareware tienen permitido distribuir CPCEMU,
  siempre y cuando slo cobren una pequea cantidad por cada copia.
  En comparacin al Dominio Pblico, Freeware no significa que es
  "gratuito" y puedes hacer lo que te de la gana con el. Yo sigo
  manteniendo el copyright.

  Tanto el software como la documentacin se entregan "como tal", sin
  ningn tipo de garanta.


  Aunque este programa es freeware, desde luego aceptara cualquier clase
  de apoyo, tcnico o financiero.
  Para ms detalles mira el captulo 6.



1.3  Qu es un CPC?
===================

  Si ya sabes lo que es un CPC sltate esta seccin y contina leyendo
  la 1.4.




  Sigues aqu?

  No quiero meterme en detalles tcnicos ahora, en cambio voy a darte una
  visin retrospectiva para que puedas comprender mejor qu es un CPC.

  CPC es la abreviatura de Colour Personal Computer (Ordenador Personal
  en Color). Los ordenadores de este tipo se empezaron a fabricar en 1984
  por la compaa britnica Amstrad y se vendieron con distinto nombre
  en otros pases.
  Fu la poca de los ordenadores domsticos; Commodore C64, Sinclair
  Spectrum, Atari 800XL, ... entonces se desvel el CPC 464. Tena tanta
  RAM como el Commodore C64 (en concreto 64 KB), una grabadora de casetes
  incorporada y el Locomotive BASIC 1.0. Le sigui el CPC 664, que tena
  incorporada una unidad de disco de 3" y un Locomotive BASIC 1.1
  ligeramente ampliado. El CPC 6128 sali en 1985, con 128 KB de RAM y
  prcticamente las mismas caractersticas que el CPC 664. Los discos de
  3" eran extremadamente caros, pero ms fiables que los discos de 5.25"
  (casi tan fiables como los de 3.5" actuales), y eran notablemente ms
  rpidos en contraposicin a la velocidad de la cinta, muy distinto a
  lo que pasaba con el C64 ...
  Los tres modelos se vendan con monitor en color o fsforo verde, el
  cual llevaba incorporada la fuente de alimentacin. Ms adelante se
  introdujeron dos o tres modelos ms (el CPC+ por ejemplo). El BASIC
  tena casi 178 intrucciones potentes y rpidas. Se poda programar
  grficos, sonido e incluso control de interrupciones, todo en BASIC
  sin utilizar PEEKs o POKEs. El suministro de software se increment
  espectacularmente segn pasaron los aos.




1.4  Qu cosas te ofrece CPCEMU?
=================================

  La siguiente es una visin general de lo que te ofrece CPCEMU.
  En las siguientes secciones de la documentacin se profundizar ms.


  Grficos del CPC en 3 modos de pantalla diferentes (X x Y x COLORES):
       Modo 0: 180x200x16
       Modo 1: 320x200x4
       Modo 2: 640x200x2
       (Con BIOS VESA estos grficos pueden visualizarse en resoluciones
        que van desde 640x400x16 hasta 1280x1024x16, dependiendo del
        monitor y la tarjeta VGA que uses.)

  Sonido: por el altavoz interno del PC, la Soundblaster (3 canales + ruido,
       en estreo), la Soundblaster (3 canales con sonido FM, en estreo)
       o por la Gravis UltraSound (3 canales + ruido, en estreo)

  Memoria:
       ROM: OS, BASIC, AMSDOS, hasta 13 ROMs adicionales (con EMS)
       RAM: 64KB, 128KB, hasta 576KB de RAM compatibles con Dk'tronics
            (con EMS)

  Disco: Imgenes de disco especiales, con extensin .DSK

  Casete: Ficheros normales bajo DOS, p.ej. ficheros BASIC y binarios del
       CPC con extensiones .BAS y .BIN respectivamente.

  Snapshots: Puedes realizar volcados de memoria de programas que se esten
       ejecutando para poder continuar con ellos ms tarde. Los Snapshots
       llevan extensin .SNA .

  Velocidad: En un 386/33 con memoria EMS, CPCEMU es ms rpido que el
       original. Un modo de tiempo real permite ralentizar la emulacin
       a la velocidad exacta del CPC. Este modo de tiempo real funciona
       bien en un 486DX2/66.




2.  Instalacin de CPCEMU


En este captulo aprenders como instalar y ejecutar CPCEMU. La seccin
2.3 expone algunas razones por las que se debera usar memoria EMS y
explica como configurar el entorno de la Soundblaster. Ms adelante,
en el captulo 4 (Cambiando la Configuracin), se describe la instalacin
completa definida por el usuario junto al fichero de configuracin



2.1  Ficheros que contiene el paquete CPCEMU
============================================

  Tienes en tu poder el paquete CPCEMUxx.xxx, el cual contiene los
  siguientes ficheros:
  (He puesto los directorios entre parntesis, puesto que ese ser el
  lugar donde se encontrarn los ficheros despus de la instalacin.)

  COPYMATE.ROM   ROM con un programa para copia (ROM)
  CPC464.BAT     fichero de arranque para el CPC 464
  CPC464.ROM     ROM (firmware+BASIC) de un CPC 464 (ROM)
  CPC664.BAT     idem, para el CPC 664
  CPC664.ROM     (ROM)
  CPC6128.BAT    idem, para el CPC 6128
  CPC6128.ROM    (ROM)
  CPC6128P.BAT   idem, para el CPC 6128 plus
  CPCADOS.ROM    AMSDOS para todos los CPCs (ROM)
  CPCEMU.CFG     fichero de configuracin para todos los CPCs (o CPCEMU0.CFG)
  CPCEMU.DAT     fichero de datos de CPCEMU
  CPCEMU.DBF     fichero de pokes
  CPCEMU.EXE     el emulador
  CPCEMU.HLP     la ayuda en lnea, prueba a pulsar F1...
  CPCEMU.MSG     el fichero de mensajes (necesario)
  CPCEMU_D.TXT   documentacin en Alemn
  CPCEMU_E.TXT   documentacin en Ingls
  CPCEMU_F.TXT   documentacin en Francs
  CPCEMU_S.TXT   documentacin en Espaol (este fichero)
  CPCPARA.BAS    programa en Locomotive-BASIC para el adaptador paralelo
                 (UTILITY)
  CPCPD1.DSK     imagen de disco con algunos programas de Dominio Pblico
                 de ejemplo (DISC)
  CPCREC.BAS     programa en Locomotive-BASIC para recibir programas
                 (UTILITY)
  CPCT0.BAT      fichero batch para CPCTRANS.EXE (ejemplo) (UTILITY)
  CPCTRANS.CFG   fichero de configuracin para CPCTRANS (UTILITY)
  CPCTRANS.EXE   programa para transferir imgenes de disco (UTILITY)
  CPMDISKS.DEF   definiciones de formato para 22DISK (UTILITY)
  FILE_ID.DIZ    descripcin de archivo para BBSes
  INSTALL.BAT    fichero batch para la instalacin
  KCC.BAT        fichero de arranque para el KC compact
  PCPARA.EXE     parte PC del adaptador paralelo (UTILITY)
  README_D.TXT   Readme en Alemn
  README_E.TXT   Readme en Ingls
  README_F.TXT   Readme en Francs
  README_S.TXT   Readme en Espaol
  ROMGET.BAS     programa en Locomotive-BASIC para guardar ROMs (UTILITY)
  SNA2GIF.EXE    un conversor de snapshot a GIF: consigue las pantallas
                 de tu CPC...


  Se incluyen las ROMs de Amstrad originales. El Firmware tiene copyright
  de Locomotive Software; el BASIC tiene copyright de Amstrad. Amstrad y
  Locomotive me han dado permiso para distribuir las ROMs con CPCEMU.



2.2  Requisitos del sistema e instalacin
=========================================

  Necesitars como mnimo (no hay lmite superior por supuesto)
  - PC AT 386 con grficos VGA
  - MS-DOS, posiblemente con EMS,  o
    Novell DOS (DRDOS)  o
    Sesin DOS en Windows 95 (o 3.1)  o
    Sesin DOS en OS/2 2.x.
  - Si quieres ejecutar programas desde archivos ZIP, para poder
    extraerlos necesitars el programa PKUNZIP disponible en algn
    directorio que este en el path de bsqueda del DOS.


  La instalacin es muy simple:
  Copia el archivo CPCEMUxx.ZIP en tu disco duro y descomprmelo
  con el siguiente comando 'PKUNZIP CPCEMUxx.ZIP'. Ejecuta INSTALL.BAT
  para crear los subdirectorios necesarios. Arranca CPC464.BAT,
  CPC664.BAT o CPC6128.BAT dependiendo del CPC que quieras emular.
  Cuando lo ejecutes por primera debers seleccionar tu idioma, pulsando
  "0" se elige Ingls, para elegir otro pulsa otro distinto.
  (La configuracin se guarda en el directorio TMP como CPCEMU.CFG.)
  Despus de mostrarse la configuracin, aparecer la conocida pantalla
  de inicio del CPC en amarillo y azul.
  Puedes salir del emulador con F12 y ver la ayuda en lnea con F1.
  Lo mejor es que lo pruebes ahora mismo antes de seguir leyendo ...




  Si se produce algn error durante la configuracin se te llevar al
  llamado men de depuracin, del cual puedes salir pulsando 'q' <INTRO>.
  En tal caso es til, algunas veces, redirigir los mensajes de
  inicializacin a un fichero, p.ej. con el comando 'CPCEMU > INIT.TXT'.
  Con esto puedes analizar el problema ms adelante.



2.3  Indicaciones sobre memoria y tarjetas de sonido
====================================================

  Lo que viene a continuacin te ayudar si deseas una emulacin
  especialmente rpida, o si tu tarjeta de sonido no es detectada
  correctamente.
  Si usas Windows 95 sin configuraciones especiales esto no debe
  preocuparte. Windows 95 suministra EMS en las sesiones DOS, y
  define el entorno BLASTER automticamente si tu tarjeta de sonido
  es una Soundblaster.


  2.3.1  Usando Memoria EMS
  -------------------------

    Es aconsejable tener EMS por hardware o emulada en tu PC (EMS=Expanded
    Memory System, que significa Sistema de Memoria Expandida). Esto
    incrementa la velocidad de la emulacin de manera significativa,
    en particular en el BASIC. El EMS simulado es demasiado lento.
    Todo lo que necesitas es un EMM (Expanded Memory Manager, que
    significa Gestor de Memoria Expandida) que soporte el estndar
    LIM 4.0 (LIM EMS 4.0).

    Si es posible usar EMS aparecer un contador de memoria
    'EMS xxx Bytes ok.' durante la inicializacin.
    De lo contrario vers un "Sorry, using conventional memory"
    ("Lo siento, usando memoria convencional").

    Ejemplo bajo OS/2 2.x (valores de configuracin para la sesin):
        EMS_FRAME_LOCATION = auto
        EMS_HIGH_OS_MAP_REGION = 32     (o ms)
        EMS_LOW_OS_MAP_REGION = 0       (o ms)

    Ejample bajo DOS en el fichero CONFIG.SYS:
        DEVICE=C:\DOS\HIMEM.SYS
        DEVICE=C:\DOS\EMM386.EXE 1024
        ...






  2.3.2  Definiendo el entorno BLASTER
  ------------------------------------

    Para poder escuchar sonido por la Soundblaster debes definir la
    variable de entorno BLASTER adecuadamente. Bien usando el programa
    'SET-ENV.EXE' (o 'SBTEST.EXE') includo con tu tarjeta o modificando
    el AUTOEXEC.BAT directamente. En el AUTOEXEC.BAT deberas tener una
    lnea similar a la siguiente:
        SET BLASTER=A220 I7 D1 T3

    Donde:
      A especifica la direccin base (0x220)
      I especifica la IRQ (7)
      D especifica el canal DMA (1)
      T especifica el tipo de tarjeta de sonido:
          1 : Soundblaster 1.0/1.5
          2 : Soundblaster Pro
          3 : Soundblaster 2.0/2.5
          4 : Soundblaster Pro 3/Pro 4.0
          5 : Soundblaster Pro (Microchannel)
          6 : Soundblaster 16

    Para las versiones 2,4,5 & 6 se activa el sonido estreo.

    Hay algunos parmetros ms que se ignoran:
      H especifica el canal DMA de 16 bits para tarjetas de 16 bits (5)
      M especifica la direccin base del mixer de la soundblaster  (224)
      P especifica la direccin del puerto para el MIDI (330)



    Si no escuchas sonido prueba a usar A388 (en lugar de A220). Esto
    funciona en la tarjeta Media Vision Pro Audio Spectrum 16 y puede
    que en otras tarjetas con emulacin de SB. Tambin podra funcionar
    en una tarjeta Adlib (Joe Cotroneo)




  2.3.3  Definiendo el entorno ULTRASND
  -------------------------------------

    Para tener sonido en tu GUS (Gravis Ultrasound Classic/ MAX/ACE)
    debes tener definida la variable de entorno ULTRASND.

    Tu fichero AUTOEXEC.BAT debera contener la lnea siguiente:
      SET ULTRASND=220,1,1,11,7

    Donde el significado de los nmeros es (en el orden mostrado):

        220 es la direccin base (0x220)
          1 es el canal DMA de la GUS
          1 es el canal DMA de la SoundBlaster
         11 es la IRQ de la GUS 
          7 es la IRQ de la SoundBlaster

    Lo ms importante son la direccin base y la IRQ de la GUS. El resto
    de valores deben especificarse para que la emulacin funcione
    correctamante.




3.  Diferencias entre el CPC y CPCEMU


En este captulo se describen aquellas caractersticas que diferencan a
CPCEMU de un CPC real. La seccin siguiente explicar qu teclas tienen
un cometido especial durante la emulacin, principalmente las teclas de
funcin. Despus se te indicar como cargar desde disco o casete.



3.1  Teclado
============

  Puede que ya hayas notado que las teclas de funcin del PC no tienen
  la misma disposicin que las del CPC. Esto provoca una salida extraa
  que describo ms abajo. Tambin puede que lleves horas buscando la
  tecla COPY...
  Todas las teclas del CPC estn emuladas de alguna forma, puedes estar
  seguro de ello. Aqu se desvelan todos los secretos al respecto:

  - ALT, ALTgr : COPY en el CPC

  - Tecla de PAUSA : detiene el PC hasta que se vuelve a pulsar.
    Si las teclas de funcin del PC dejan de responder es porque
    habrs activado la tecla de PAUSA.

  - Teclado numrico : Dependiendo del estado de "Bloq Num" el teclado
    numrico funciona de distinta forma. Con "Bloq Num" activado el
    teclado numrico representa las teclas de funcin del CPC, de lo
    contrario emular el joystick 0. Si quieres utilizar un joystick
    de PC analgico tendrs que calibrarlo primero. (Ver captulo 4 -
    Cambiando la Configuracin).

  Para completar:
  - Av Pg/Re Pg: Mueve la pantalla entera del CPC.
    (No me preguntes con qu propsito.)

  Y, por supuesto, las teclas de funcin.
  F1  : Tecla de Ayuda en Lnea. Podra ser la tecla ms importante al
        principio.
  F2  : Cambia entre la pantalla del CPC (visin normal) y la pantalla de
        mensajes (la que tiene un borde rojo). Esta ltima pantalla puede
        mostrar mensajes de control.
  F3  : Inserta un disco, ver seccin 3.2.1
  F4  : Activa y desactiva el sonido
  F5  : Carga un snapshot (volcado de memoria), ver seccin 3.2.3
  F6  : Guarda un snapshot, ver seccin 3.2.3
  F7  : Men de configuracin, ver seccin 4.1
  F8 :  Reset de hard, acta como el botn de reset en un CPC (o apagar
        el CPC y volver a encenderlo). Usa esto si CTRL+MAYS+ESC deja
        de funcionar.
  F9  : Permite/desactiva actualizacin de paleta.
  F10 : Men de depuracin, explicado en el captulo 7. Si entras por
        accidente en este men pulsa 'r' para R)un (ejecutar) o 'q'
        para Q)uit (salir)
  F11 : Reservada para uso prximo
  F12 : Salir del emulador




3.2  Cargando Programas, Mens
==============================

  En esta seccin aprenders como cargar programas desde disco, casete o
  snapshots. Obviamente se aplica lo mismo en el caso de guardar. Tambin
  se describe como usar el men.



  3.2.1  Cargando desde Disco, Mens
  ----------------------------------

    En circunstancias normales el AMSDOS (DOS de Amstrad) est activado,
    y todas las instrucciones para trabajo con ficheros usan el disco.
    No hace falta que insertes un disco del CPC real en la unidad del PC
    cada vez que accedas a un fichero (eso sin tener en cuenta que,
    posiblemente, todos tus discos del CPC son de 3").
    Para conseguir mayor velocidad se copia el contenido de un disco del
    CPC a la conocida como imagen de disco. Este fichero puede encontrarse
    en cualquier parte del disco duro (o en un disquete de alta densidad).

    Aqu tienes algunas instrucciones BASIC del AMSDOS:
    - CAT <INTRO> : visualiza el catlogo

    - Con 'RUN"<nombre de fichero>"'  se carga y arranca un programa.
      Pueden omitirse las comillas finales. Esta instruccin es til para
      los programas BASIC que tienen extensin .BAS, y en muchos casos
      para programas binarios con extensin .BIN .

      Un modo simple de ejecutar un programa es:
      1. Meter el nombre del fichero, p.ej.  'disc' *sin* pulsar <INTRO>
      2. Mantn pulsada la tecla CTRL y pulsa cursor-izquierda (una vez
         hecho esto el cursor debe haberse movido a la primera columna)
      3. Con la tecla CTRL an pulsada dale a la tecla INTRO que est en
         el teclado numrico (ahora debe aparecer RUN"disc y el programa
         deber ejecutarse)

    - LOAD"<nombre de fichero>" carga un programa pero sin arrancarlo.
      Puedes inspeccionar los programas en BASIC con LIST y ejecutarlos
      con RUN. Normalmente los programas binarios no se cargarn con
      LOAD, se puede intentar usar la instruccin MEMORY primero,
      p.ej. 'MEMORY &1fff'.

    - SAVE"<nombre de fichero>" guarda un programa BASIC. Para programas
      binarios hay que especificar algunos parmetros ms, p.ej.
      'SAVE"<nombrefichero>",b,&c000,&4000' guardar el contenido de la
      pantalla.

    - MERGE"<nombre de fichero>" es otra posibilidad. Combina un programa
      BASIC con otro que ya este en memoria en ese momento.


    Algunas instrucciones especiales del AMSDOS se introducen
    precedindolas del carcter "|":
    - |A, |B para seleccionar la unidad (se puede conseguir lo mismo
      con |DRIVE,0  1)
    - |DIR,"<comodn nombre de fichero>" para ver el directorio.
      Nota importante: Se debe usar lo siguiente en un CPC 464:
           a$="<comodn nombre de fichero>" : |DIR,@a$
    - |ERA,"<nombre de fichero>" para borrar un fichero.
      Nota importante: Se debe usar lo siguiente en un CPC 464:
           a$="<nombre de fichero>" : |ERA,@a$
    - |REN,"<nombre nuevo>","<nombre antiguo>" para renombrar un fichero.
      Nota importante: Se debe usar lo siguiente en un CPC 464:
           a$="<nombre nuevo>" : b$="<nombre antiguo>" : |REN,@a$,@b$
    - |TAPE  para activar el casete. Se explica en la siguiente seccin.
    - |DISC  para volver al disco
    Hay algunas instrucciones ms pero no son tan importantes.



    El Men de Insercin de Discos
    ------------------------------

    Hasta ahora slo podas usar un disco, el que estaba ya "metido" en
    la unidad. Para insertar otro disco tan solo debes pulsar F3 y
    aparecer el siguiente men:

                     Insertar Disco
                     Nmero de Unidad                0
                     Seleccionar Cara                0
                     Proteccin contra Escritura     0
                     Autoarranque                    1

    Con las teclas de cursor <arriba/abajo> puedes seleccionar una lnea.
    Tambin puedes realizar esto pulsando letras (para volver con <SUPR>).
    Para cambiar los nmeros usa las teclas de cursor <izquierda/derecha>
    o mediante introduccin directa de dgitos.
    Con <INTRO> en cualquier lnea (p.ej. la primera) se aceptan los
    cambios. Para descartarlos pulsa <ESC>.
    "Nmero de Unidad" es la unidad deseada (0=A, 1=B); "Seleccionar Cara"
    es para cambiar de cara en los discos de doble cara, no tiene ningn
    efecto cuando se usa en discos de simple cara.
    Con "Proteccin contra Escritura" se puede marcar un disco como
    protegido contra escritura. (0=No, 1=Si, protegido contra escritura).
    Si "Autoarranque" est activado, se ejecuta automticamente el primer
    programa BASIC que haya en el disco nada ms insertarlo (como
    alternativa: DISC.BAS).



    El Men de Seleccin de Ficheros
    --------------------------------

    Pulsa <INTRO> y aparecer el directorio de la unidad de disco.
    Selecciona un nuevo disco de la forma descrita ms arriba.

    Si ya hay un disco metido dentro de la unidad no hace falta que lo
    saques como hay que hacer con el real. Esto se hace automticamente.
    En la parte baja de la pantalla se muestra este disco.

    Vers como mximo 15 ficheros, en caso de haber ms aparecer "[]".
    - <INICIO> se coloca en el primer fichero, <FIN> en el ltimo
    - <Re Pg/Av Pg> para moverse por pginas dentro de la lista
    - <INTRO> acepta el fichero seleccionado, <ESC> cancela.
    Tambin puedes seleccionar nombres directamente pulsando las letras
    iniciales de stos.

    Si ests usando un ratn puedes pinchar "[]" para <pgina arriba>,
    "[]" para <pgina abajo>, "[<]" para <cursor izquierda>, "[>]" para
    <cursor derecha> y [ok] para <intro>.
    Usa "[]" como <ESC>. Usa el botn derecho del ratn para seleccionar
    una lnea.

    ".." es el directorio anterior; [A], [B], ... son las unidades
    disponibles.
    Procura seleccionar unidades de disquete que tengan uno metido. De lo
    contrario podras tener problemas.

    Tambin es posible insertar discos que esten dentro de archivos ZIP.
    Selecciona un archivo ZIP pulsando <INTRO> y se mostrar su contenido
    como si se tratara de un directorio normal. Si eliges un fichero de
    un archivo ZIP ste se extrae automticamente a un fichero temporal.
    Para que esto funcione, hace falta que el programa PKUNZIP se encuentre
    en algn directorio del path de bsqueda del DOS, o en el directorio
    de CPCEMU.
    Los ficheros temporales se borran automticamente cuando ya no se
    necesitan. Los cambios *no* se escriben en el archivo ZIP. Si guardas
    algo en una imagen de disco que est dentro de un ZIP se perder al
    insertar otro disco. Si quieres realizar cambios en imgenes de disco
    que estn dentro de archivos ZIP, debers extraerlas antes de entrar
    en CPCEMU.

    El proceso para crear imgenes de disco a partir de discos tuyos del
    CPC se explica en el captulo 5  (Transferencia de datos CPC <-> PC).




  3.2.2  Cargando y guardando con el casete
  -----------------------------------------

    Qu es realmente un casete para CPCEMU?
    Los ficheros de casete no son ms que ficheros normales en directorios
    del DOS.
    Una vez metida la instruccin '|TAPE' todas las instrucciones BASIC
    para manejo de ficheros hacen referencia al casete. Pero ojo, slo
    las que no empiezan con el caracter "|".
    En est situacin es posible usar las instrucciones explicadas en
    la seccin anterior (CAT, RUN", LOAD", SAVE", MERGE") con el casete.
    Si omites el nombre del fichero aparecer el men de seleccin de
    ficheros tal como se describe en la seccin previa.
    Con SAVE"" puedes bien sobreescribir un fichero que ya existe o
    crear uno nuevo especificando su nombre en la ltima lnea donde
    aparece "(new file)".

    Obviamente puedes cargar programas que esten dentro de archivos ZIP,
    a su vez que guardarlos se ignora.

    La nica forma de tener una unidad de casete tan sofisticada es con
    el emulador!



  3.2.3  Cargando y guardando snapshots
  -------------------------------------

    Los snapshots son volcados de memoria que no solamente guardan
    el contenido actual de la memoria, sino que tambin se guarda el
    estado interno de los chips de hardware, p.ej. el procesador.
    En cualquier momento puedes interrumpir el programa que se este
    ejecutando y guardarlo como snapshot. Ms adelante puedes cargarlo
    y continuar en la misma posicin en la que lo interrumpiste.
    Para crear un snapshot se usa la tecla F6. Hay que especificar el
    tamao del snapshot, bien 64K o 128K. Los snapshots de 128K slo
    tienen sentido si se est utilizando en ese momento el segundo
    banco de memoria. En este ltimo caso se usara "128K Snapshot = 1",
    donde 1=Si.

    El men de seleccin de snapshots es el mismo que el ya descrito
    con el de discos, con el aadido de lo comentado para el casete
    (3.2.1 y 3.2.2).

    Para cargar un snapshot ya creado se usa la tecla F5.




4.  Cambiando la Configuracin


En este captulo se te mostrar como configurar CPCEMU para adaptarlo
a tus necesidades.
Se explican el men de configuracin, el fichero de configuracin y los
parmetros en lnea de comandos.



4.1  El men de configuracin
=============================

  Esta es la forma ms simple de realizar ajustes en CPCEMU. Sin embargo,
  este men no te permite modificar todas las opciones. Por poner un
  ejemplo, si deseas usar ROMs adicionales tendrs que usar el fichero
  de configuracin, explicado en la seccin 4.2.

  Como ya se mencion en la seccin del teclado, para entrar en el men de
  configuracin hay que usar la tecla F7. Hecho esto aparecer el siguiente
  men:

       Opcin:                     Valor:    Breve descripcin:
  -----------------------------------------------------------------------
       ___Emulacin
       Retardo Emulacin           0
       Velocidad Emulacin         1
       Frecuencia Interrupcin     300
       Reanudar Interrupcin       0
       Tiempo Real                 0
       
       ___Pantalla
       Monitor Color               1
       Actualizar Multimodo        0
       Cambio Paleta               1
       Desplazar Pantalla          0
       Modo Video                  0
       Posicin VSYNC              5
       
       ___Sonido
       Sonido Activado             1
       Dispositivo Sonido          3
       Retardo SB                  35
       Retardo0 SB                 6
       Buffer DMA SB               128
       Vel Muestreo SB             0
       SB Estreo                  0
       
       ___Control
       Calibrar JOY0
       Calibrar JOY1
       Idioma Teclado              3
       Ratn Activado              1
       
       ___Opciones PPI
       Fabricante                  7
       PPI 50Hz                    1
       PPI Seal Expansin         1

       ___Miscelnea
       AMSDOS Desactivado          0
       AMSDOS Acelerado            1
       Mscara Ruptura             3
       EMS Activada                1
       Idioma                      3
       Desvo Cinta                1
       Tamao RAM                  128
       Modelo CPC                  2
       Mostrar Configuracin       0
       Cargar Configuracin
       Reiniciar Emulacin
       Guardar Configuracin
       Fichero de Pokes                      fichero con trucos para juegos
       Shell al DOS
       Continuar


  Modifica los valores de las opciones tal como se explic en 3.2.1.


  Retardo Emulacin
    Esta opcin permite ralentizar la emulacin si sta es demasiado
    rpida.
    0 significa sin retardo, 100 un retardo pequeo, 300 algo ms ...

  Velocidad Emulacin
    0   = emulacin del Z80 lenta
    1   = emulacin del Z80 rpida

  Frecuencia Interrupcin
    Sirve para cambiar la frecuencia a la que que se generan las
    interrupciones.
    En un CPC real sta es simpre de 300 Hertzios. Si incrementas este
    valor muchos programas darn la impresin de ir ms rpido, pero hay
    menos capacidad de clculo entre dos interrupciones. Si tienes un
    ordenador lento deberas reducir este valor a 100 o 200 algunas
    veces. Los valores posibles van desde 18 hasta 600.
    Para informacin ms detallada mira el captulo 7.

  Reanudar Interrupcin
    Esta es otra de esas opciones que no pueden explicarse si no se tienen
    suficientes conocimientos tcnicos. Si no hay memoria EMS disponible
    esta opcin se pone a 0, lo que significa que las interrupciones
    pueden ignorarse. Por supuesto esto no es lo ms adecuado, pero con
    1 la emulacin se ralentiza mucho. Con EMS est opcin es 1, de modo
    que CPCEMU procura manejar todas y cada una de las interrupciones.
    Nota importante:
    Parece ser que CP/M Plus funciona solamente teniendo EMS y con esta
    opcin = 0 !
    Para informacin ms detallada mira el captulo 7.

  Tiempo Real
    Activa el CPC en tiempo real. El emulador realiza esperas segn
    convenga para ser igual de rpido que un CPC real.

  Monitor Color
    Emulacin de monitor en fsforo verde o en color mediante cambio
    de paleta.

  Actualizar Multimodo
    Si tienes programas que usan varios modos de pantalla simultneos
    activa esta opcin. De esta forma CPCEMU intentar manejarlo
    correctamente.
    Por defecto esta opcin est desactivada porque no funciona
    adecuadamente en todos los casos.

  Cambio Paleta
    Pon esta opcin a 0 para desactivar los cambios de paleta. Esto viene
    bien cuando es difcil ver lo que aparece en pantalla debido a los
    continuos parpadeos de la misma.
    Si pulsas la tecla F8 para provocar un reset de hardware esta opcin
    se pone a 1 automticamente.
    Consejo: Si la actualizacin de paleta est desactivada y los colores
    de pantalla son errneos prueba a pulsar F2 dos veces seguidas.

  Desplazar Pantalla
    Sirve para especificar el nmero de lneas que debera desplazarse
    la pantalla del CPC.
    Normalmente esta opcin no hace falta. Se consigue el mismo efecto
    pulsando las teclas <Re Pg> y <Av Pg>. Valores posibles:
    0=sin desplazamiento, hasta 25.

  Modo Video
    Especifica el modo de video de la tarjeta VGA.
    0 = 640x200x16 (por defecto)
    1 = 640x350x16
    2 = 640x480x16
    y si tu tarjeta tiene BIOS VESA, principalmente:
    3 = 800x600x16
    4 = 1024x768x16
    5 = 1280x1024x16
    ...
    AVISO:
    Usa modos de vdeo >= 3 slo si tu monitor soporta esas resoluciones!
    Si ves que hace unos ruidos raros desactiva ese modo inmediatamente!
    De todas formas, esto podra pasar slo en monitores antiguos.

  Posicin VSYNC
    De normal esta opcin no te har falta, pero no pasa nada por probarla.
    Por cada vez que se actualiza la pantalla hay un haz vertical con un
    bit especial activado, es el conocido como bit VSYNC (sincronizacin
    vertical). Mediante esta opcin puedes especificar la posicin en la
    que se produce el VSYNC. Los valores posibles son de 0 a 5. Para
    informacin ms detallada mira el captulo 

  Sonido Activado
    Activa el sonido. 1=activado, 0=desactivado. Otra forma de conseguirlo
    es pulsando la tecla F4.

  Dispositivo Sonido
    Especifica el dispositivo para la salida de sonido:
    0 = none
    1 = Altavoz interno del PC
    2 = Soundblaster (Pro), sonido FM
    3 = Soundblaster (Pro), sonido digital, gracias a Ulrich Doewich
    4 = GUS (Gravis Ultrasound), gracias a Ulrich Doewich

  Retardo SB
    Retardo para la tarjeta Soundblaster.
    Especifica el tiempo de retardo despus de un acceso a la tarjeta
    de sonido para escritura.
    Con valores pequeos (p.ej. 0) se incrementa la velocidad en la salida
    del sonido. Si se producen problemas con tu tarjeta de sonido usa el
    valor 35.

  Retardo0 SB
    Otro retardo para la Soundblaster. No lo cambies.

  Buffer DMA SB
    Especifica el tamao del buffer para el sonido digital de la
    Soundblaster.

  Vel Muestreo SB 
    Especifica el ratio de muestreo para el sonido digital de la
    Soundblaster.
    0=22kHz, 1=44kHz

  SB Estreo
    Activa o desactiva el sonido estreo.

  Calibrar JOY0
    Es muy probable que ya conozcas esto por otros programas en los que
    primero hay que calibrar el joystick analgico del PC. Elige esta
    opcin pulsando <INTRO>, mueve el joystick a la esquina superior
    izquierda, luego a la esquina inferior derecha.
    A continuacin se te mostrarn algunos valores. Si vas usar el
    joystick frecuentemente es mejor que te apuntes estos valores
    y los escribas en el fichero de configuracin (mira la siguiente
    seccin). De todas formas tendras que volver a calibrarlo si
    modificas la frecuencia de reloj.

  Calibrar JOY1
    Se aplica lo mismo que en Calibrar JOY0, pero para el joystick 1.

  Idioma Teclado
    Mediante esta opcin se puede seleccionar un esquema de teclado de
    otros paises.
    0 = UK, por defecto
    1 = GR, Teclado "estilo Alemn". Por desgracia es imposible conseguir
        un teclado completamente Alemn, ya que las teclas obtenidas
        mediante MAYS no pueden sustituirse por las obtenidas sin MAYS.
        An y todo la "Z" y la "Y" estan intercambiadas, y hay algunos
        caracteres ms modificados.
    2 = FR, Teclado "estilo Francs". Despus de aadir el teclado Alemn
        el Francs no iba a ser menos. Se ha conseguido implementar
        algunas partes del teclado AZERTY. Pero se dan los mismos
        problemas que en el Alemn.
    3 = SP, Teclado "estilo Espaol"

  Ratn Activado
    Posibilita el uso del ratn en los mens.

  Fabricante
    El nombre del fabricante que aparece en la pantalla de inicio.
    0 = Isp
    1 = Triumph
    2 = Saisho
    3 = Solavox
    4 = Awa
    5 = Schneider
    6 = Orion
    7 = Amstrad

  PPI 50Hz
    El CPC es capaz de funcionar a
      0 - 60 Hz, o
      1 - 50 Hz (el usado en Alemania, Francia)
    Cuando se produce un reset se verifica el bit 4 del puerto B del PPI,
    y el CRTC se inicializa adecuadamente.
    Djalo en 50 Hz.

  PPI Seal Expansin
    Algunas tarjetas de expansin activan esta seal.
    En el CPC 464 est activada cuando tiene conectada una unidad de disco.
    En el CPC 6128 est siempre activada.

  AMSDOS Desactivado
    Impide la inicializacin del AMSDOS. Esto viene bien para cargar
    programas del casete sin tener que introducir la orden '|TAPE'
    cada vez.
    Es cierto que tambin se podra poner como comentario la lnea del
    AMSDOS en el ROM_BLOCK (con ROM_BLOCK se puede especificar la ROM
    a cargar), pero tiene el inconveniente de que el AMSDOS no se
    encuentra presente en el sistema.
    Mediante esta opcin se consigue que el AMSDOS este disponible para
    algunos programas que lo requieren.

  AMSDOS Acelerado
    Posibilita realizar modificaciones en la ROM del AMSDOS para acelerar
    los accesos al disco.
    Esto se consigue minimizando los tiempos de espera para el motor
    de la unidad de disco, que no son necesarios en el emulador.

  Mscara Ruptura
    Esta opcin es slo para depuracin. Con el valor 3 del fichero
    de configuracin se suprimen varios errores provocados por
    instrucciones ilegales.
    No cambies este valor!

  EMS Activada
    Permite el uso de memoria EMS (Expanded Memory System).
    Si no hay EMS disponible o no hay suficiente, CPCEMU usa memoria
    convencional automticamente.
    Para informacin de EMS ms detallada consulta 2.3.1 y el captulo 7.

  Idioma
    Idioma para los mensajes de ayuda.
      0=UK (Ingls)
      1=GR (Alemn)
      2=FR (Francs)
      3=SP (Espaol)

  Desvo Cinta
    Posibilita el uso del casete.
    Hay informacin ms detallada del CASETE en el captulo 7.

  Modelo CPC
    Especifica el modelo de CPC a usar
    0 = CPC 464
    1 = CPC 664
    2 = CPC 6128
    3 = CPC 464+ (?)
    4 = CPC 6128+ (?)
    5 = KC compact
    Para usar los modelos del 3 al 5 debes especificar antes, en el fichero
    CPCEMU.CFG, las imgenes ROM.

  Mostrar Configuracin
    Permite que se muestre la configuracin cuando se arranca el emulador.

  Cargar Configuracin
    Carga un fichero de configuracin guardado con "Guardar Configuracin".
    Algunas opciones pueden no tener efecto hasta que elijas "Reiniciar
    Emulacin".

  Reiniciar Emulacin
    Con esta opcin puedes reiniciar la emulacin con nuevos valores despus
    de cargar un fichero de configuracin con "Cargar Configuracin".

  Guardar Configuracin
    Guarda la configuracin actual.
    Ten en cuenta que no puedes sobreescribir el fichero de configuracin
    maestro CPCEMU.CFG.

  Fichero de Pokes
    Ests con un juego que no puedes terminar? Prueba a usar esta opcin.
    Si el juego est en la lista puedes hacerlo ms fcil obteniendo vidas
    infinitas, p.ej. Tambin puedes ampliar la lista (CPCEMU.DBF) aadiendo
    tus propios pokes. Mira en el captulo 7 la descripcin de este
    fichero.

  Shell al DOS
    Abre un shell de DOS con mucha memoria libre, del cual puedes salir
    con 'EXIT'.

  Continuar
    Acepta los valores introducidos y contina con la emulacin.
    Puedes realizar lo mismo pulsando <INTRO> en cualquier lnea que
    tenga un valor.





4.2  El fichero de configuracin
================================

  Aqu se muestra otra forma de configurar CPCEMU.
  Por defecto, lo primero que CPCEMU hace es leer el fichero de
  configuracin CPCEMU.CFG.
  Fjate que cuando se arranca CPCEMU con un fichero CPCxxx.BAT, el
  fichero de configuracin se localiza en el directorio TMP. Esto
  permite usar configuraciones definidas por el usuario incluso
  cuando CPCEMU est en un CD-ROM.
  A continuacin se explica la estructura de este fichero de modo que
  puedas usar tus propias ROMs, cambiar el idioma del teclado
  permanentemente, etc...


  Echa un vistazo al fichero CPCEMU.CFG:

    ;CPCEMU.CFG - The Configuration File for CPCEMU (v1.5)
    ;Marco Vieth, 20.11.1997
    ;
    ;standard configuration for CPC 464, 664, 6128, 464+, 6128+, KC compact
    ;
    SHOW_CONFIG=0       ;should the configuration be displayed?
    CPC_TYPE = 2        ;CPC 6128, if no command line parameter -t
    ...

  Con tan slo estas lneas puede verse cual es la estructura bsica:
  Los comentarios empiezan por punto y coma (";"). Las opciones se
  modifican escribiendo una palabra clave seguida de "=" y de un
  <valor>. El <valor> depende de la palabra clave y es una cadena o
  un nmero. Los nmeros pueden especificarse en notacin decimal,
  hexadecimal ("0x") o binaria ("%").

  Una vez conocido el significado de las palabras clave podrs adaptar
  los valores a tus necesidades con un editor de texto.


  La mayora de las palabras clave ya las conoces por el men de
  configuracin.
  En primer lugar la lista de todas las palabras clave ordenadas
  alfabticamente:


  #ENDIF
  #IFCPC
  AMSDOS_DISABLED       (AMSDOS_Desactivado)
  AMSDOS_SPEEDUP        (AMSDOS_Acelerado)
  BREAK_MASK            (Mscara_Ruptura)
  COLOUR_SCREEN         (Monitor_Color)
  COMPANY_NAME          (Fabricante)
  CPC_TYPE              (Modelo_CPC)
  DATA_FILE
  DRIVE_A
  DRIVE_A_AUTOSTART
  DRIVE_A_SIDE
  DRIVE_A_WRITEPROT
  DRIVE_B
  DRIVE_B_AUTOSTART
  DRIVE_B_SIDE
  DRIVE_B_WRITEPROT
  EMS_ENABLED           (EMS Activada)
  EMULATION_DELAY       (Retardo Emulacin)
  EMULATION_SPEED       (Velocidad Emulacin)
  HELP_FILE
  INTERRUPT_FREQUENCY   (Frecuencia Interrupcin)
  INTERRUPT_RESUME      (Reanudar Interrupcin)
  JOY0_CALIBRATE        (Calibrar JOY0)
  JOY1_CALIBRATE        (Calibrar JOY1)
  KBD_LANGUAGE          (Idioma Teclado)
  LANGUAGE              (Idioma)
  MOUSE_ENABLED         (Ratn Activado)
  MULTIMODE_UPDATE      (Actualizar Multimodo)
  PALETTE_CHANGE        (Cambio Paleta)
  POKE_DATABASE         (Fichero de Pokes)
  PPI_50HZ              (PPI 50Hz)
  PPI_EXP_SIGNAL        (PPI Seal Expansin)
  PRINTER
  RAM_SIZE              (Tamao RAM)
  REALTIME              (Tiempo Real)
  ROM_BLOCK
  ROM_PATH
  SB_DELAY              (Retardo SB)
  SB_DELAY0             (Retardo0 SB)
  SB_DMA_BUF            (Buffer DMA SB)
  SB_SAMPLE_RATE        (Vel Muestreo SB)
  SB_STEREO             (SB Estreo)
  SCREEN_OFFSET         (Desplazar Pantalla)
  SHOW_CONFIG           (Mostrar Configuracin)
  SNAPSHOT
  SOUND_DEVICE          (Dispositivo Sonido)
  SOUND_ENABLED         (Sonido Activado)
  TAPE_BYPASS           (Desvo Cinta)
  TAPE_PATH
  TMP_PATH
  VIDEO_MODE            (Modo Video)
  VSYNC_POSITION        (Posicin VSYNC)


  En segundo lugar el significado de las nuevas palabras clave:


  - #ENDIF, #IFCPC
    Instrucciones de control para la configuracin condicional dependiendo
    del CPC deseado:
      #IFCPC <modelo de CPC> ... #ENDIF
    Para <modelo de CPC> son vlidos todos los valores de "CPC_TYPE"
    (Modelo_CPC).
    En consecuencia slo se necesita un fichero de configuracin para
    todos los CPCs.
    Los ficheros batch CPC464.BAT, CPC664.BAT y CPC6128.BAT seleccionan
    el modelo deseado mediante parmetros en la lnea de comandos. Estos
    se explican en la seccin siguiente.

  - DATA_FILE = "<path+nombre de fichero>" (Fichero de Datos)
    Especifica el fichero de datos (CPCEMU.DAT).

  - DRIVE_A = "<path+nombre de fichero>" (Unidad A)
    Indica el path donde se encuentran las imgenes de disco. Si se
    especifica un nombre de fichero junto al path, ste se insertar
    automticamente en la unidad A.
    La seccin 3.2.1 explica como Cargar y Guardar en Disco.

  - DRIVE_A_AUTOSTART = 0,1 (Unidad A Autoarranque)
    Cuando se inserta una imagen de disco se ejecuta automticamente el
    primer programa BASIC que haya en el disco. Si existe DISC.BAS en el
    disco ser ste el que se ejecute.
    Puedes utilizar la orden |DIR del AMSDOS para mirar cul el el primer
    programa BASIC.

  - DRIVE_A_SIDE = 0,1 (Unidad A Cara)
    En los formatos de doble cara cuando se selecciona la cara 1, se inserta
    la cara (B).

  - DRIVE_A_WRITEPROT = 0,1 (Unidad A Proteccin contra Escritura)
    La imagen de disco se inserta protegida contra escritura, por tanto
    es de slo lectura.
    Esto viene bien si la imagen de disco est en un soporte de slo lectura
    (p.ej. CD-ROM).

  - DRIVE_B = "<path+nombre de fichero>" (Unidad B)
    Lo mismo que en DRIVE_A, pero para la unidad B.

  - DRIVE_B_AUTOSTART = 0,1 (Unidad B Autoarranque)
    Lo mismo que en DRIVE_A_AUTOSTART, pero para la unidad B.

  - DRIVE_B_SIDE = 0,1 (Unidad B Cara)
    Lo mismo que en DRIVE_A_SIDE, pero para la unidad B.

  - DRIVE_B_WRITEPROT = 0,1 (Unidad B Proteccin contra Escritura)
    Lo mismo que en DRIVE_A_WRITEPROT, pero para la unidad B.

  - HELP_FILE = "<path+nombre de fichero>" (Fichero de Ayuda)
    Especifica el path y nombre del fichero de ayuda (CPCEMU.HLP)
  
  - JOY0_CALIBRATE = <xcen>, <ycen>, <xdead>, <ydead>
    Sirve para definir un calibrado de tu joystick analgico.
    Utiliza los valores mostrados despus de calibrar el joystick en el
    men de configuracin (mira la seccin 4.1, Calibrar_JOY0)
    Esta palabra clave requiere 4 valores. Debes especificarlos todos
    siempre. Poniendo los 4 valores a cero significa que no est
    calibrado.

  - JOY1_CALIBRATE = <xcen>, <ycen>, <xdead>, <ydead>
    Lo mismo que en JOY0_CALIBRATE.

  - POKE_DATABASE = "<path+nombre de fichero>"
    Especifica el fichero de pokes (CPCEMU.DBF).

  - PRINTER = "<path+nombre de fichero>" (Impresora)
    Indica el fichero de impresora donde se vuelcan todas los datos
    dirigidos a la impresora.
    Este fichero se borra cada vez que se inicia la emulacin.
    Al salir del emulador puedes imprimirlo con
    'COPY <nombre de fichero> prn:'.
    Puedes usar la impresora directamente con PRINTER="prn".

  - ROM_BLOCK = <nmero de ROM>,  "<nombre de fichero>", <posicin de ROM>
    (Bloque ROM)
    Indica qu ROM ha de cargarse y dnde.
    Repite esta lnea para cada ROM que quieras cargar.
    El nmero mximo de ROMs son unas 20, usando EMS.

    - <nmero de ROM> es el nmero asignado a la ROM, esto significa que se
      selecciona mediante 'OUT &DF00,<Nmero ROM>' .
      Los valores posibles son los siguientes:
        0       : ROM de primer plano (p.ej. BASIC)
        1 - 251 : ROMs de segundo plano. En un CPC 664/6128 las ROMs
                  1-15 se inicializan con el reset automticamente
                  (en un CPC 464 slo las 1-7).
                  La ROM del AMSDOS lleva siempre el nmero 7.
        255     : ROM baja (p.ej. OS; slo lleva este nmero en el
                  emulador).
    - <nombre de fichero> es un fichero que se encuentra en el directorio
      ROM_PATH, que es donde se hayan todas las ROMs.
      
    - <posicin de ROM> normalmente es 0. Si un fichero contiene ms de una
      ROM, sta es la posicin de la ROM deseada 0, 1, 2, ...
        ROM_BLOCK = 255, "CPC6128.ROM", 0
        ROM_BLOCK = 0  , "CPC6128.ROM", 1
      La ROM baja y la ROM de primer plano se cargan una despus de la
      otra desde el mismo fichero.

  - ROM_PATH = "<path>" (Path ROM)
    Indica el path de las imgenes ROM. En el fichero de configuracin
    este path se especifica como ".\ROM". Las ROMs como ficheros
    individuales se definen con la palabra clave ROM_BLOCK.

  - SNAPSHOT = "<path+nombre de fichero>"
    Indica el path para los snapshots. Si se especifica un nombre de
    fichero junto al path, ste snapshot se cargar automticamente al
    arrancar el emulador.
    Para informacin ms detallada mira la seccin 3.2.3.

  - TAPE_PATH = "<path>" (Path Cinta)
    Indica el path de los ficheros de cinta. En el fichero de configuracin
    este path se especifica como ".\TAPE".
    Para informacin ms detallada mira la seccin 3.2.2.

  - TMP_PATH = "<path>" (Path TMP)
    Especifica el path para ficheros temporales. Tiene relevancia slo si
    se seleccionan ficheros dentro de un archivo ZIP y CPCEMU tiene que
    extraerlos con PKUNZIP.




4.3  Parmetros en lnea de comandos
====================================

  Como ya sabrs por otros programas tambin es posible usar parmetros
  en la lnea de comandos con CPCEMU. De momento slo hay unos pocos.


  Ejecuta CPCxxx.BAT con las siguientes opciones:
       /f       : usa el modo rpido (por defecto)
       /s       : usa el modo lento
       /d       : usa el modo de depuracin, explicado en el captulo 7
       /x       : desactiva el uso de EMS
       /c <file>: especifica otro fichero de configuracin, sustituyendo
                  al usado por defecto CPCEMU.CFG. Ver seccin 4.2.
       /t <modelo>: indica el modelo de CPC deseado 464, 664, 6128, 464+,
                  6128+ o KC compact con  /t 0 a /t 5 respectivamente.
       /h       : muestra una pantalla de ayuda

  La opcin "/d" se usa automticamente cuando se especifica una opcin
  desconocida.
  En lugar de "/" puede usarse tambin "-", como en UNIX.




5.  Transferencia de datos CPC <-> PC


Qu se puede hacer con un buen emulador si no se tienen programas para el,
o si no se vislumbra la posibilidad de traspasar programas del CPC al PC?
En el captulo 6 (Suministro, ...) se listan algunos sitios ftp donde puede
encontrarse software para el CPC.
Este captulo trata de la transferencia de software del CPC al PC.
Se describen algunas utilidades para los distintos mtodos de realizar
esto (disco, mediante interface paralelo o serie).




5.1  El disco como intermediario
================================

  Esta es la forma ms simple de transferir software del CPC al PC. Lo
  nico que hace falta es una segunda unidad de discos del CPC con el
  tamao adecuado. Tamao adecuado significa que los discos que use deben
  encajar tambin en la unidad del PC. (Si no es as, an se podra
  intentar conectar una unidad de 3" al PC.) Al PC se le engaa, para que
  reconozca los discos formateados con el CPC, con una utilidad llamada
  CPCTRANS.



  5.1.1  El programa para transferencia de discos CPCTRANS
  --------------------------------------------------------

    He desarrollado CPCTRANS para crear imgenes de disco a partir de
    discos del CPC.
    Tiene soporte para formatos de CPC estndares, as como para formatos
    Vortex de doble cara.
    CPCTRANS no est preparado para transferir discos protegidos contra
    copia!
    Si se ejecuta CPCTRANS sin parmetros se visualizar una breve ayuda.
    CPCTRANS es similar a la orden COPY del DOS:
    'CPCTRANS <origen> <destino> <opciones>'.
    Ejemplos:
    'CPCTRANS B: DISK1.DSK' copia el disco de la unidad B a la imgen de
    disco DISK1.DSK. Si sta no existe se crear.
    'CPCTRANS DISK1.DSK B:' escribe la imagen de disco de vuelta al disco
    de la unidad B.

    Este primer ejemplo slo funciona con el formato DATA.
    Para copiar otros formatos hay que usar una opcin:
      /f 0    : formato DATA (por defecto)
      /f 1    : formato DATA, doble cara
      /f 2    : formato SYSTEM
      /f 3    : formato SYSTEM, doble cara
      /f 4    : formato VORTEX, doble cara
      /f 5    : desconocido, CPCTRANS intenta averiguarlo
      /f 6    : +3DOS
    Fjate que hay un espacio entre "/f" y el nmero.
    Si usas un formato DATA o SYSTEM de doble cara podrs elegir la cara
    A o B en el men de disco (3.2.1).

    Cuando se vaya a escribir una imagen de disco de vuelta, el disco que
    est en la unidad debe tener el mismo formato! Para formatear con
    formatos simples puede usarse 22DISK, explicado en la siguiente seccin.

    Para copiar la cara B de un disco se usa la opcin "/s 1"
    Con 'CPCTRANS B: DISK1.DSK /s 1' se copia slo la cara B del disco,
    con 'CPCTRANS DISK1.DSK B: /s 1' se escribe de vuelta.

    La opcin "/v" activa la "verificacin", de esta forma CPCTRANS
    comprueba que la copia es correcta. Por supuesto esto hace ms lento
    el proceso, pero se incrementa la seguridad.

    La opcin "/t <nmero>" indica el nmbero de pistas a copiar.
    Normalmente es 40 pistas, slo en los formatos VORTEX es de 80.

    La opcin "/q" (formateo rpido) es una caracterstica con la se puede
    formatear una imagen de disco, en lugar de copiar datos en ella.
    No obstante se debe especificar primero una unidad vlida como
    parmetro.
    Ejemplo:
    'CPCTRANS a: SYSTEM.DSK /f 2 /q' formatea SYSTEM.DSK como imagen
    de disco con formato SYSTEM.



  5.1.2  La utilidad de formateo y copia 22DISK por SYDEX
  -------------------------------------------------------

    Este programa se distribuye como shareware. Con las definiciones
    adecuadas se pueden usar casi todos los formatos CP/M!
    Por desgracia slo los formatos del CPC no estn includos con la
    versin de evaluacin de 22DISK. Por tanto he definido yo los formatos
    en el fichero CPMDISKS.DEF. Este fichero lo encontrars en el
    subdirectorio UTILITY.
    Qu es lo que se puede hacer con 22DISK?
    Pueden transferirse ficheros individuales entre formatos DOS y no DOS
    de un lado para otro, formatear discos y cosas por el estilo.
    Copia los ficheros del CPC en el sirectorio TAPE. Mira en la seccin
    3.2.2 la explicacin de cmo cargarlos.



5.2  El interface paralelo
==========================

  Si no tienes segunda unidad en tu CPC, puedes realizar las transferencias
  mediante el interface paralelo. La idea original proviene de Gilles
  Molinari, adems tambin ha escrito algunos programas en Turbo Pascal.
  Pero probablemente perteneces al grupo de usuarios que no tienen un
  compilador de Turbo Pascal en su CPC, por lo que de poco te servira
  tener el cdigo fuente en Pascal. Debido a esto he re-escrito las
  utilidades en Locomotive BASIC, y las he apliado aadiendo la direccin
  PC->CPC.
  Por tanto es posible transferir ficheros entre el CPC y el PC de un lado
  para otro!
  El CPC y el PC se enlazan mediante sus respectivos interfaces paralelos.

  Si tienes un CPC 6128 con conector Centronics y lo comparas con el de
  impresora te dars cuenta que el CPC y el PC se enlazan perfectamente
  usando un cable de impresora de PC estndar! Un momento, no hagas eso
  ahora, contina leyendo.
  Parece ser que nicamente los CPC Schneider incluan conector Centronics.
  Si tienes un Amstrad CPC 6128 con conector simple, o un CPC 464, 664,
  usa el diagrama que hay al final de esta seccin.

  Lo primero de todo es superar dos obstculos:
  1. construir un adaptador simple
  2. meter un pequeo programa en el CPC

  Alto!   No te saltes lo dems!

  Ambos pasos son muy fciles, ya que
  1. es posible realizarlo sin tener que soldar     y
  2. es realmente muy corto (unas 30 lneas de BASIC)

  Para el paso 2.
  El programa que necesitas se llama CPCREC.BAS y est en el directorio
  UTILITY.
  Est guardado en ASCII, por lo que puedes imprimirlo sin problemas y
  teclearlo en el CPC.
  Su cometido es parecido al de una cuerda fina que se mete en una tubera
  para luego servir de gua a un cable grueso.
  En nuestro caso, la cuerda fina es CPCREC.BAS, que sirve para recibir
  ficheros desde el PC.
  Con esta pequea utilidad se puede transferir CPCPARA.BAS (el cable
  grueso) al CPC. Con CPCPARA.BAS se puede recibir y enviar. Por lo que
  una vez trasferido al CPC ya no har falta para nada CPCREC.BAS.
  Por lado del PC se usa PCPARA.EXE, tambin includo en el directorio
  UTILITY.

  Antes de que teclees CPCREC.BAS echa un vistazo al paso 1:


  El adaptador paralelo
  ---------------------

  Hace falta tener un adaptador entre el cable de impresora del PC y el
  conector de impresora del PC.
  La forma ms sencilla es usar una caja para cableado de tipo RS-232, la
  cual tiene un conector D-Sub macho de 25 pines (clavija) y un conector
  D-Sub hembra de 25 pines (enchufe).
  Puede realizarse cualquier tipo de conexin entre ambos lados conectando
  cables cortos en esta caja. Normalmente esta caja se usa - como su propio
  nombre indica - para adaptar interfaces RS-232. Las conexiones en serie
  no suelen funcionan a la primera, para que sepas.
  Este adaptador lo usamos en sentido inverso, esto es, la clavija es para
  el lado del PC y el enchufe para el cable de impresora.

  Conctalos ahora:

        Clavija para el conector de      Enchufe para el cable de
        impresora del PC                 impresora
        (lado izquierdo):                (lado derecho):

               Pin 2     ---------------       Pin 11
               Pin 10    ---------------       Pin 8
               Pin 11    ---------------       Pin 1
               Pin 12    ---------------       Pin 7
               Pin 13    ---------------       Pin 6
               Pin 15    ---------------       Pin 5
               Pin 19    ---------------       Pin 19


  Como puedes ver no hacen faltan los 25 cables, slo 7 de ellos.

  Aunque la caja para cableado es barata, si se compra en una empresa de
  electrnica de venta por correo, puede salir ms barato todava usando
  una caja para jumper. En este caso habra que soldar los cables. La forma
  ms barata es comprar una clavija D-Sub de 25 pines, un enchufe D-Sub de
  25 pines, una caja y algunos cables.

  En este momento asumo que ya has conectado ambos ordenadores y que tienes
  el programa CPCREC.BAS en el CPC.
  Qu es lo siguiente?

  1. En el CPC :  Ejecuta CPCREC.BAS (despus de habelo guardado)
  2. En el PC  :  Ejecuta 'PCPARA /s CPCPARA.BAS'

  La cosa se pone interesante, si no aparece ningn mensaje de error en el
  PC es que todo funciona correctamente, el fichero debe estar en el CPC.

  Si el PC no enva nada y da un mensaje de error, es posible que la
  conexin no este bien.
  Si est enviando ("Sending block xx"), pero aparecen mensajes de error
  de vez en cuando, puede que tu PC sea, bien demasiado rpido, bien
  demasiado lento. En la direccin PC->CPC es muy importante la medicin
  del tiempo, tenlo en cuenta.
  En mi 386/33 tengo que quitar la memoria EMS, de lo contrario es
  demasiado lento. En un ordenador muy rpido podra hacer falta usar el
  botn de turbo.
  Utiliza el programa bajo DOS puro, ni OS/2 ni Windows.

  Si no funciona en absoluto comuncamelo.
  Mientras tanto puedes ir tecleando el programa CPCPARA.BAS, el cual es
  algo ms largo. La direccin CPC->PC funciona siempre, tambin bajo OS/2,
  debido a que es prcticamente lo mismo que imprimir. El PC se comporta
  como una impresora.

  Ahora asumo que ya tienes CPCPARA.BAS en el CPC.
  Hay que transferir ficheros del CPC al PC de la siguiente forma:
  1. En el PC  : Ejecuta 'PCPARA /r'.
  2. En el CPC : Ejecuta CPCPARA, selecciona S)end (Enviar) e introduce
     todos los ficheros que quieras transferir. (Ejecuta 'PCPARA /r' para
     cada fichero que quieras transferir, CPCPARA se ejecuta en un bucle
     sin fin.)


  Po tanto, usa PCPARA de la siguiente manera:
  - PCPARA /r : inicia PCPARA en modo de recepcin
  - PCPARA /s <fichero> : enva el <fichero> al CPC, si usas 'TRM:' como
    fichero entrars en modo terminal.

  Todos los programas del directorio UTILITY muestran una pequea
  descripcin de sus opciones si los ejecutas sin especificar ningn
  parmetro.


  AVISO:
  An cuando la construccin es muy simple, no puedo garantizar que no
  se pueda daar algo, si el puerto de impresora del CPC queda daado
  despus de todo es una pena y ms bien un accidente desafortunado.
  Es muy posible que tambin se hubiera daado por la simple conexin
  de una impresora.
  Por ejemplo, tengo conocimiento de un antiguo usuario de CPC cuyo
  teclado dej de funcionar correctamente de un da para otro.
  Despus de repararlo le dijeron que no deba conectar el joystick
  mientras el ordenador estaba encendido!
  ( No s, yo siempre lo he hecho as ?!?)

  Donde estaba:
  Yo he construdo el adaptador con xito. Y algunas veces incluso me
  he "olvidado" de insertar el adaptador en la conexin y no he tenido
  ningn problema.





  Diagramas por David Chapeau, en caso de que tu CPC no tenga conector
  Centronics:

   34 <- - - - - - - - 18      \
   ______________________      |
  |   ________________   |     |
  |  |________________|  |   - | ---> Conector de impresora (Hembra) al CPC
  |______________________|     |
                               |
   17 < - - - - - - - - 1      |
                               |
     ||||||||||||||||||        |
     ||||||||||||||||||        \
     ||||||||||||||||||         >   Cable "CPC 6128 a DMP 2160"
     ||||||||||||||||||        /
     ||||||||||||||||||        |
                               |
   1 - - - - - - - - > 18      |
  ________________________     |
  \    ______________    /     |
   \  |______________|  /    - | ---> Conector Centronics (Macho)
    \__________________/       |
                               |
   19 - - - - - - - -> 36      /



   18 < - - - - - - - - 1      \
  ________________________     |
  \    ______________    /     |
   \  |______________|  /    - | ---> Conector Centronics (Hembra)
    \__________________/       |
                               |
   36 <- - - - - - - - 19      |
                               |
     ||||||||||||||||||        |
     ||||||||||||||||||        \
     ||||||||||||||||||         >   Adaptador Paralelo del PC
     ||||||||||||||||||        /
     ||||||||||||||||||        |
                               |
   1 - - - - - - - - > 13      |
  ________________________     |
  \  ..................  /     |
   \  ................  /    - | ---> Conector Sub-D (Macho) al PC (LPT1)
    \__________________/       |
                               |
   14 - - - - - - - -> 25      /


   13 < - - - - - - - - 1      \
  ________________________     |
  \  ..................  /     |
   \  ................  /    - | ---> Conector Sub-D (Hembra)
    \__________________/       |
                               |
   25 <- - - - - - - - 14      |
                               |
     ||||||||||||||||||        |
     ||||||||||||||||||        \
     ||||||||||||||||||         >   "Caja para cableado" RS 232
     ||||||||||||||||||        /
     ||||||||||||||||||        |
                               |
   1 - - - - - - - - > 13      |
  ________________________     |
  \  ..................  /     |
   \  ................  /    - | ---> Conector Sub-D (Macho) al PC (LPT1)
    \__________________/       |
                               |
   14 - - - - - - - -> 25      /



  Conector    Centronics   Centronics    Conector     Conector     Conector
  Impresora    (Hembra)     (Macho)        Sub-D        Sub-D        Sub-D

      1 ---------  1            1 ---------  1           11 ---------  2
            .                         .                   8 --------- 10
            .                         .                   1 --------- 11
            .                         .                   7 --------- 12
     17 --------- 17           14 --------- 14            6 --------- 13
     18 --------- 19           19 --------- 19            5 --------- 15
            .                  21 --------- 20           19 --------- 19
            .                  23 --------- 21
            .                  25 --------- 22
     34 --------- 35           27 --------- 23
                               29 --------- 24
                               30 --------- 25
                               31 --------- 16
                               32 --------- 15
                               33 --------- 18
                               36 --------- 17



  Velocidad de transferencia CPCPARA -> PCPARA (v1.1):

  Tiempo para transferir un bloque de 0x4000 Bytes del CPC al PC con el
  adaptador paralelo:

  Origen en el CPC:             bytes/s:        bit/s:
  -----------------------------------------------------------
  Fichero de disco:             1600            12800

  Bloque de memoria:            2240            17920

  Bloque de memoria, sin ints.: 2445            19560
  (poke &b941,&c9 en el CPC 6128)

  El bloque enviado estaba controlado en BASIC (dentro de CPCPARA):
  defstr a:a="test.$$$":call sstr,@a
  a=string$(&80):for i=1 to &80:call sstr,@a:next:call sbyte,0:stop


  Puedes leer informacin ms detallada acerca del adaptador paralelo en
  el captulo 7.



5.3  El interface serie
=======================

  Si posees un interface serie en tu CPC desde luego puedes usarlo
  para transferencias de datos al PC.



5.4  Otras posibilidades
========================

  Hay otros mtodos ms exticos de poner el software en el PC.

  - Conectar la unidad de 3" al PC. Algunos modelos (antiguos) deberan
    encajar en un conector de 5.25".

  - Mediante un desvo haca el Spectrum+3: leer el disco de 3" en el
    Spectrum+3, convertirlo al formato del Spectrum y usar una utilidad
    para leerlo en el PC. Esta utilidad est disponible en el emulador
    de Spectrum Z80 hecho por Gerton Lunter.

  - Cuando es necesario obtener la ROM tu mismo, alguien me coment este
    mtodo:
    El quit el chip de la ROM del CPC y lo coloc en lugar de la BIOS de
    la VGA. Con un pequeo programa fue capaz de leer el contenido.
    
  - Tal vez t puedas encontrar otras formas?




6.  Suministros, Soporte y Reconocimientos


En este captulo podrs averiguar dnde conseguir software para el CPC,
y a quin preguntar en caso de dudas. Ms an, hago mencin de otros
emuladores para el Amstrad.


6.1  Dnde conseguir software para el CPC?
===========================================

  Si tienes acceso a Internet esto no supone ningn problema.
  De forma parecida a los emuladores de Spectrum existen una serie
  de colecciones "annimas" donde puedes obtener software para el CPC
  mediante FTP o WWW.


  FTP
  ---

  - ftp.nvg.unit.no:/pub/cpc, gracias a Arnt Gulbrandsen por
    crear el lugar, y a Noel Llopis por su mantenimiento,
    una de las colecciones ms grandes de programs para el CPC;
    enva lo que tengas a /pub/cpc/incoming

  - sunshine.informatik.uni-wuerzburg.de:/pub/joscho/cpcemu
    mirror de ftp.nvg.unit.no. Enviar preguntas, comentarios y dems a
    joscho@informatik.uni-wuerzburg.de
    Si tienes problemas accediendo a Noruega puedes intentarlo con ste.

  - ftp://ftp.lip6.fr/pub/amstrad, gracias a Remy Card,
    ftp://ftp.lip6.fr/pub/amstrad/frontend/menu.htm (HTML)
  - todas las preguntas concernientes a este sitio deben dirigirse a
    roussin@genesis8.frmug.org
    Todos los ficheros provienen de 'Genesis the 8bit generation BBS'
    (ver ms abajo)

  - ftp.demon.co.uk:/pub/cpm, gracias a Paul Martin
    ficheros del CP/M especficos para el amstrad
    Paul Martin (pm@nowster.demon.co.uk) enviar a cualquiera, que pueda
    probar poseer una copia original del disco Amstrad CP/M Plus, las
    imgenes ROM binarias de sus "CP/M Plus ROMs" gratuitamente.

  - oak.oakland.edu : /Simtel/msdos/emulator/cpcemu15.zip

  - otros mirrors de Simtel:
    ftp.ibp.fr : /pub3/pc/SimTel/msdos/emulator/
    ftp.demon.co.uk : /simtel/msdos.
    ftp.uni-paderborn.de


  WWW
  ---

  - http://andercheran.aiind.upv.es/~amstrad
    and an UK mirror: http://www.dcs.warwick.ac.uk/~divine/~amstrad/

  - ...



  BBS
  ---

  - Aspects (2:250/107) : +44 1617920260, en el Reino Unido, sysop Dave
    Gorski, V32b, CPCEMU v1.2, programas (la mayora en basic),

  - Genesis the 8bit generation (2:320/220) : +33 1 53 95 32 43, en
    Francia, hasta VFC, sysop : Emmanuel Roussin.
    ltimas versiones de emuladores, ROMs qwerty y azerty del 6128,
    freeware, shareware, PD, revistas en disco, pokes, soluciones, demos
    y unos cuantos juegos comerciales (con el permiso de sus respectivos
    autores).
    De momento hay unos 29,5 Mo de programas comprimidos en zip. Los
    usuarios de fido pueden hacer "file request" de ALLFILES.ZIP, y a
    partir de ah lo que sea de inters.

  - ZNODE 51 : + 49 89 961 45 75, en Alemania, desde las 15:00 hasta las
    3:00 CET (MEZ), hasta V32b, ficheros de CPC

  - ...



6.2  Noticias, intercambio de experiencias
==========================================

  Quieres tener siempre la ltima versin de CPCEMU?
  Quieres estar informado si se publica una nueva?

  De momento se ha puesto en marcha un grupo de noticias especficamente
  para el CPC!
  Se llama

     comp.sys.amstrad.8bit.

  En el encontrars charlas acerca de los CPCs (y tambin del CPCEMU),
  y puedes comentar tus experiencias con los CPCs.

  Hay una FAQ (preguntas ms frecuentes) disponible en este grupo
  (ftp://ftp.lip6.fr/pub/amstrad/amstrad.htm, FAQ en HTML).

  Si no puedes leer el grupo de noticias por cualquier razn, escrbeme
  un email.
  Encontrars mi direccin en la prxima seccin.
  Por supuesto tambin puedes usar correo normal para hacerme preguntas
  (o a David, mirar ms abajo), pero por favor no te olvides del franqueo
  de vuelta.


  Si me envas una contribucin me sentir obligado a enviarte la ltima
  versin por lo menos una o dos veces.




6.3  Si tienes preguntas o sugerencias
======================================


  Puedes escribirme directamente a:

       Marco Vieth
       Auf dem Uekern 4
       D-33165 Lichtenau
       Alemania

       Telfono: +49-5292-1366 (slo fines de semana)

       Internet: cpcemu@hotmail.com
                 (ali@uni-paderborn.de)

       Como probablemente ya habrs deducido, leyendo mi direccin de
       Internet, he estudiado Ciencia de las Computadoras en la Universidad
       de Paderborn. Termin en la primavera de 1997.



  En caso de que hables ingls tambin puedes escribirle a David Cantrell:

       David Cantrell
       116, London Road
       Bexhill-on-sea
       East Sussex
       TN39 4AA
       Inglaterra

       Phone: +44-1424-221015

       Internet: david@diablo.eimages.co.uk
                 ftp://ftp.eimages.co.uk/users/davidc/cpc/
                 http://www.ThePentagon.com/NukeEmUp/uaug


  David se ha ofrecido a ayudarme a contestar el "montn de cartas".
  El ha escaneado el manual de firmware del CPC, de forma que cualquiera
  puede obtenerlo en formato electrnico.




  Aunque este programa es Freeware aceptara cualquier clase de apoyo,
  financiero o tcnico.
  (unos 30-50 Marcos alemanes sera lo apropiado.)
  (Eso equivale a unos 20-33 Dlares americanos o 13-21 Libras esterlinas.)

  An en el caso de que no se me enve dinero, suelo reponder a todas las
  cartas e intento recordar todas las sugerencias (estoy seguro de que
  David hace lo mismo).
  Por eso no tengas reparos en enviarme tus comentarios.



6.4  Otros emuladores del Amstrad CPC
=====================================

  A comienzos de 1994 pensaba que CPCEMU era el nico emulador para el
  Amstrad CPC. Ahora tengo conocimiento de otros tres:
  
  - SIMCPC:
    Presumiblemente el primer emulador de CPC escrito.
    Emulador de CPC para PC/XT/AT   (c) 1989, 90 por GHE, Aachen.
    Slo en blanco y negro, pero con ROMs adicionales;
    tan slo una "muestra de humor".

  - CPC2PCxx:
    En desarrolo desde Octubre de 1993 por Paco Lopez (Espaa), y est
    disponible ahora en algunos sitios. Est escrito completamente en
    modo protegido y usa el mismo formato de disco que CPCEMU.

  - CPE:
    En desarrolo por Bernd Schmidt. Mediante el uso de un modo de video
    especial de 50 hertzios, algunos bloques de colores estn reproducidos
    exactamante.
    Un CPE2 especial de 256 colores muestra bloques de colores con ms
    de 50 hertzios.
    Tambin soportado: Modos mltiples, overscan.
    Ultima versin: v5.2.



6.5  Planes para futuras versiones de CPCEMU
============================================


  - overscan
  - mejoras en modos mltiples
  - centrado de pantalla en modos de alta resolucin
  - scroll por hardware rpido
  - los teclados US no tienen "<>", ALTgr
  - simular el puerto de expansin del CPC
  - cargar discos del CPC directamente
  - cargar cintas del CPC directamente (mediante el puerto de impresora
    o la tarjeta Soundblaster)
  - transferir imgenes de disco enteras mediante el adaptador paralelo
  - control de volumen para la Soundblaster
  - emulacin de digiblaster
  - teclas de joystick redefinibles
  - usar el ratn como joystick
  - autodeteccin de .SNA y .DSK

  Puede que nunca lo realice debido a que tengo trabajo "de verdad"...



6.6  Reconocimientos
====================

  - Agradecimiento especial para Juergen Weber, no slo por muchos
    consejos y sugerencias, tambin, y especialmente, por la rpida
    emulacin del Z80 de su emulador de CP/M ZSIM.

                Juergen G. Weber
                Wiesentalstrasse 1
                74523 Schwaebisch Hall
                Alemania

                email: weberj@dia.informatik.uni-stuttgart.de


  - Tambin gracias a Bernd Schmidt. Debido a que Bernd ha escrito su
    propio emulador hemos tenido los mismos problemas muchas veces. Slo
    si intentas escribir un emulador de este tipo t mismo puedes hacerte
    una idea de los detalles que causan problemas.
    No hay informacin del CPC disponible, lo que condiciona enormemente.
    La mayora de comportamientos del CPC hay que detectarlos por medio
    de experiementos con un CPC real.

  - Gracias a Ulrich Doewich por incluir sonido para la Gravis UltraSound
    en el emulator y leerse completamente la documentacin. Ulrich ha
    escrito una herramienta similar a CPCTRANS. Busca CPDREAD con el cual
    se pueden leer tambin discos protegidos contra copia.

  - Gracias a Emmanuel Roussin por su esfuerzo infatigable por el CPC.
    El realiz los pasos bsicos para crear el grupo de noticias y me
    prest su Multiface II durante meses, de modo que pudiera incluirlo
    en el emulador de alguna forma.

  - Gracias a Arnt Gulbrandsen por el fuente de su JPP, donde encontr
    ideas para el controlador de teclado y la rutina de joystick.
    A propsito, JPP es un emulador de Spectrum muy bueno.

  - Gracias a Martin Zacho por aportar una rutina de joystick.

  - Gracias a Fernando J. Echevarrieta Fernandez por apuntar el primero
    que la versin v0.8 no emulaba un CPC 664.

  - Gracias a Gilles Molinari por su programa para transferencia por el
    puerto paralelo.

  - Gracias a Paul Martin por corregir la documentacin en Ingls de la
    versin 1.0.

  - Gracias a Mark Haigh-Hutchinson por su esfuerzo en hacer los programas
    de la compaa Vortex de dominio pblico.

  - Gracias a Martin Young por sus excelentes ideas de como emular un Z80.

  - Gracias a Linh Hsiesh por muchas ideas para mejoras, la mayora de las
    cuales se habrn incorporado ya.

  - Gracias a Fred Harris por escribir una carta a AMSTRAD acerca de
    las ROMs.

  - Gracias a Amstrad, especialmente a Cliff Lawson por permitirme
    distribur la ROM del BASIC. Amstrad retiene el copyright.

        Amstrad plc, Brentwood House,
        169 Kings Road, Brentwood,
        Essex CM14 4EF

  - Gracias a Richard Clayton de Locomotive por permitirme distribur
    la ROM del Firmware. Locomotive retiene el copyright.

  - Y gracias a los usuarios por enviarme sugerencias o aportar ideas.
    Sin ellos CPCEMU tal vez no habra alcanzado la versin 1.0




6.7  Marcas registradas
=======================

  CP/M, CP/M 2.2 y DRDOS son marcas registradas de Digital Research.
  MS-DOS es marcas registrada de Microsoft.
  IBM PC, PC-XT, PC-AT y OS/2 son marcas registradas de International
    Business Machines.
  CPC, AMSDOS por Amstrad,
  BORLAND C, TASM (Turbo Assembler) por Borland,
  22DISK por SYDEX
  Soundblaster por Creative Labs
  ...





------------------------------------------------------------------------------



7.  Informacin Interna de CPCEMU



Este captulo da informacin ms detallada y contesta la pregunta,
"POR QUE hara yo esto o aquello ahora?"
Tambin se describe el potente men de depuracin. Asimismo encontrars
las estructuras de las imgenes de disco y los ficheros snapshot.
Esta informacin no est orientada a los usuarios de CPCEMU sin
conocimiento de los interiores de un CPC. Podra ser til alguna vez.
He colocado esta informacin al final, incluso despus de las marcas
registradas, en un intento por mostrar su "relativa insignificancia".
Si no te gusta leer frases ininteligibles e informacin desordenada,
no sigas leyendo!
Ve directamente al Apndice.



AVISO:  Contina leyendo a tu propio riesgo !





7.1  Lista de contenidos para el captulo 7
===========================================

  7.2  Minidescripcin de las caractersticas Internas de CPCEMU
    7.2.1  La CPU Z80 (El Procesador)
    7.2.2  El Gate Array (El "Co-Procesador")
    7.2.3  El PAL (Programmable Logic Array)
           (Array Lgico Programable)
    7.2.4  El CRTC 6845 (Cathode Ray Tube Controller)
           (Controlador del Tubo de Rayos Catdicos)
    7.2.5  El PIO 8255 (Programmable Input Output)
           (Entrada Salida Programable)
    7.2.6  El PSG AY 3-8912 (Programmable Sound Generator)
           (Generador de Sonido Programable)
    7.2.7  El FDC 765 (Floppy Disc Controller)
           (Controlador de Unidad de Disco)
    7.2.8  El interface de impresora Centronics
           (Centronics printer interface)

  7.3  El men de Depuracin
    - Breve descripcin del men de depuracin
    - Preliminares
    - Breve descripcin de los commandos
    - Manipulacin de registros

  7.4  Gestin de la memoria
    7.4.1  Una vez ms: configuracin de EMS
    7.4.2  Cmo se ha realizado el Banking?

  7.5  Modificacin de ROM
    7.5.1  Ignorando la ROM con el casete
    7.5.2  Modificaciones de la ROM AMSDOS

  7.6  Miscelnea
    7.6.1  Otra vez: El fichero de configuracin
    7.6.2  El adaptador paralelo
       - Direccin CPC->PC
       - Direccin PC->CPC
    7.6.3  CPCTRANS

  7.7  Estructura de los fichero elegidos para CPCEMU
    7.7.1  Imgenes de Disco
       - El bloque de Informacin de Disco
       - El bloque de Informacin de Pista
    7.7.2  Ficheros Snapshot
    7.7.3  Cabecera AMSDOS
    7.7.4  Fichero de Pokes

  7.8  Histrico Interno




7.2  Minidescripcin de las caractersticas Internas de CPCEMU
==============================================================


  Qu grado de compatibilidad tiene CPCEMU realmente?



  7.2.1  La CPU Z80 (El Procesador)
  ---------------------------------

  + Todas las instrucciones del Z80 estn emuladas, incluyendo las
    conocidas como ilegales.
    Puedes elegir entre una emulacin lenta del Z80 escrita en C y una
    emulacin del Z80 rpida escrita en ensamblador por Jurgen Weber.
    Mediante la tcnica COCPU cada instrucin del Z80 se emula
    simultneamente por la versin lenta y la rpida, de esta forma se
    ralentiza mucho, pero comparando los registros despus de cada
    instruccin se han encontrado muchos errores. Obviamente esto
    se ha usado slamente durante el desarrolo del programa.
  + Instrucciones adicionales 'ED FC xx' slo las conoce el emulador.
    Entre ellas la de ruptura de usuario 'ED FC FC  USER &BCFC'.

  - No hay un temporizador exacto de las instrucciones sino calibracin
    de tiempo en el modo tiempo real.



  7.2.2  El Gate Array (El "Co-Procesador")
  ----------------------------------------

  + Los 32 colores del CPC (27 diferentes)
  + Los tres modos de video (X x Y x COLORES):
        modo 0 = 160x200x16
        modo 1 = 320x200x4
        modo 2 = 640x200x2
  + Banking de ROM (16KB OS, 16KB BASIC, 16KB AMSDOS y ROMs adicionales)

  - Parpadeo en los haces de colores



  7.2.3  El PAL (Programmable Logic Array)
  ----------------------------------------

  El PAL se encuentra lgicamente en la misma direccin que el gate array
  pero en hardware distinto a ste.

  + Banking de RAM (128 KB, hasta 576 KB) con memoria EMS o convencional.
    Con emulacin mediante EMS los bloques se mapean por hardware, de modo
    que la velocidad es adecuada. CPCEMU proporciona una RAM de expansin
    compatible Dk'tronics de hasta 576 KB.

  - Sin EMS, el banking de RAM es muy lento, puesto que los bloques de
    memoria han de moverse de aqu para alla en la memoria base del PC.
    Adems, tan slo se dispone de 128 KB RAM.




  7.2.4  El CRTC 6845 (Cathode Ray Tube Controller)
  -------------------------------------------------

  + Base y desplazamiento de pantalla para scroll por hardware
  + Varios tamaos de pantalla desde 0x0 hasta 80x25 con los registros
    1 y 6 del CRTC
  + Direfentes tamaos de carcteres (1..7) con el registro 9 del CRTC
  + Mltiples modos (usan otros registros)

  - El Overscan no est an implementado



  7.2.5  El PIO 8255 (Programmable Input Output)
  ----------------------------------------------

  + Teclado (connectado al PSG)
  + Emulacin de VSYNC: Un bit que se activa entre dos interrupciones
    durante un refresco de pantalla. Puedes cambiar su posicin.
  + El casete es muy rpido, ignorar la ROM permite acceder a cualquier
    fichero del DOS.

  - El bit VSYNC est activado demasiado tiempo
  - Los puertos de casete no estn emulados, por lo que la mayora de los
    programas que acceden a los puertos directamente no funcionan.


  7.2.6  El PSG AY 3-8912 (Programmable Sound Generator)
  ------------------------------------------------------
  
  + Bien por el altavoz interno del speaker (psimo, puesto que
    los 3 canales se combinan en uno y el volumen no puede cambiar                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             