Cómo escribir los archivos DSK en un disco bajo Windows

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

 

El propósito de este documento es explicar el uso del programa CPDWrite en los ordenadores PC actuales y bajo Windows (bajo Linux puedes utilizar las herramientas libdsk; yo no las he probado hasta ahora).

El CPDWrite forma parte de las utilidades CPDTools, que permiten, entre otras cosas:

  1. Extraer una imagen de los disquetes de 3 pulgadas usados por los Amstrad CPC; dicha imagen es un archivo DSK que se puede utilizar en un emulador, además de ser una manera de almacenar disquetes de forma segura. Dado que los disquetes antes o después perecerán, convertirlos en imágenes DSK sirve para salvaguardar la información que contienen. La utilidad que permite extraer la información de los disquetes es el CPDRead.
  2. Escribir una imagen DSK en un disquete, de tal forma que dicha imagen se pueda utilizar en un ordenador real, no en un emulador. La utilidad que realiza esta función es el CPDWrite.

El paquete CPDTools se puede descargar de http://www.caprice32.cybercube.com/downloads.php.

 

El CPDWrite permite escribir las imágenes DSK tanto en disquetes de 3 pulgadas como en disquetes de 3.5 o de 5.25 pulgadas. Esto es muy útil si tienes disqueteras de 3.5 o de 5.25 para Amstrad CPC.

Antes de usar el CPDWrite deberás configurar el programa, seleccionando el tipo de disquete sobre el que vas a escribir la imagen. La configuración se guarda en el archivo Cpdwrite.cfg, y tiene este formato:

#tracks = 0 ; valid range is 1 - 85, 0 = use tracks value from image

#drive = A ; A or B

#step = 1 ; number of tracks to advance for each stepping pulse

#media&type = 2 ; drive media and type used..

; 0 for 1.2MB 5.25" floppy in 1.2MB drive

; 0 for 1.44MB 3.5" floppy in 1.44MB drive

; 1 for 360KB 5.25" floppy in 1.2MB drive

; 1 for 720KB 3.5" floppy in 720KB drive

; 2 for 360KB 5.25" floppy in 360KB drive

; 2 for 720KB 3.5" floppy in 1.44MB drive

Dependiendo de las características de nuestro ordenador tendremos que variar la configuración del CPDWrite; deberemos fijarnos en si la disquetera que vamos a usar está designada como A o B y si es de alta o de baja densidad, así como si los disquetes que vamos a usar son de alta (1.44MB en el caso de los de 3.5 pulgadas, y 1.2MB en el caso de los de 5.25) o baja densidad (720KB en el caso de los de 3.5 pulgadas, y 360KB en el caso de los de 5.25). La opción #step sólo hay que modificarla si vamos a usar disquetes de 5.25 pulgadas de baja densidad (360KB) en una unidad de 5.25 pulgadas de alta densidad.

La opción #tracks tendrá como valor 0, de tal forma que el programa escriba el número de pistas que tiene la imagen DSK.

Una vez que se ha configurado el programa se puede proceder a usarlo. El CPDWrite se utiliza desde la línea de comandos del MS-DOS, por lo que será necesario abrir una ventana de DOS. Para ello, bajo Windows, basta apretar el botón de Inicio, seleccionar "Ejecutar" y escribir command.com .

El CPDWrite tiene diversas opciones que se pueden seleccionar desde la línea de comandos. En concreto, son tres las posibilidades que se nos ofrecen.

El modificador B permite seleccionar la unidad B como el destino de la imagen DSK, siempre que tengamos la unidad como unidad por defecto en el archivo de configuración.

El modificador S permite escribir en la cara B de los disquetes que estemos utilizando. Recordad que los disquetes de 3 pulgadas del Amstrad tenían dos caras, y que podíamos cambiar de una a otra simplemente dando la vuelta al disco. Los disquetes de 3.5 y los de 5.25 pulgadas no se pueden insertar más que de una manera, es decir, no se les puede "dar la vuelta" para usar la otra cara; de ello se encarga la cabeza del lector, dentro de la propia disquetera. Por ello, si queremos escribir en la cara B de un disco de 3.5 pulgadas, no tenemos que darle la vuelta, sino utilizar el modificador S del CPDWrite.

El tercer modificador es corresponde a la letra F. Ulrich Doewich, el autor del programa, dice que sólo debe usarse cuando el mensaje "ERROR: no response within timeout period.." aparece en pantalla. Nosotros, en principio, no vamos a usar esta opción, porque para salvar dicho mensaje de error vamos a utilizar otra técnica.

Dicho todo esto, el formato del CPDWrite sería como sigue:

CPDWRITE.EXE nombredelarchivo.dsk <B> <S> <F>

Lo que significa que, en la ventana de DOS, tendríamos que

  1. dirigirnos a la carpeta donde hayamos descomprimido el CPDWrite
  2. copiar en dicha carpeta los archivos DSK que queramos pasar a disquete (por comodidad más que nada)
  3. escribir doskey (por comodidad, de nuevo); la respuesta será, habitualmente, "DOSKey instalado"; ahora podremos recuperar todas las líneas de comando que hayamos escrito anteriormente con la tecla de cursor-arriba
  4. escribir el comando con los modificadores que nos interesen

Por ejemplo:

cpdwrite freddy.dsk

escribiría la imagen freddy.dsk en un disquete que tuviéramos en la unidad que tengamos seleccionada por defecto en el archivo de configuración.

cpdwrite hundra.dsk S

escribiría la imagen hundra.dsk en la cara B de un disquete que tuviéramos en la unidad que tengamos seleccionada por defecto en el archivo de configuración.

cpdwrite hoh.dsk B

escribiría la imagen hoh.dsk en un disquete que tuviéramos en la unidad B.

(Atención: siempre hay que poner la extensión del archivo).

Una vez que hemos comprendido, más o menos, cómo funciona el programa, podemos ver cuáles son los problemas que, en la realidad, presenta su uso.

El primer problema es que cuando pulsamos Enter después de escribir nuestra línea de comandos, el ordenador nos muestra este mensaje:

La respuesta debe ser "no". Seguimos adelante, y vamos con el segundo problema:

Esto es lo que nos va a decir el programa normalmente: "ERROR: no response within timeout period..". Es a este mensaje de error al que se refiere Doewich cuando propone usar el modificador F. Parece que el problema reside en que los ordenadores actuales son muy rápidos, demasiado rápidos para cómo está programado el CPDWrite. Es lo mismo que sucede con muchos juegos antiguos de PC.

Para solventar este inconveniente se han creado multitud de utilidades que ralentizan el funcionamiento del ordenador. De todas las que he probado, la que mejor resultado me ha dado con el CPDWrite es CPUkiller (http://www.cpukiller.com/products/cpukiller/index.html).

CPUkiller es un programa shareware, lo que implica que se puede descargar de internet y se puede usar libremente, aunque para que sea completamente funcional se lo tienes que comprar a su autor. Si te gusta cómo funciona, deberías considerar soltarle a su autor los 15 dólares que vale la licencia para una sola persona, aunque para el uso que le vamos a dar no es necesario (en este caso, la condición de shareware significa que hay tiempo máximo de uso... pero nosotros vamos a ser capaces de escribir muchos DSKs en los disquetes antes de que pase ese período).

Una vez que hayamos instalado el programa, lo ejecutamos y reducimos la velocidad del procesador (no sé cómo funciona exactamente, lo más probable es que en realidad sobrecargue de trabajo al procesador hasta conseguir que éste se ralentice hasta, aproximadamente, la velocidad seleccionada); apretamos el botón de "Start", vamos a la ventana de DOS y volvemos a ejecutar el comando del CPDWrite. En la imagen siguiente podéis apreciar cómo, poniendo el procesador a 269 mhz el CPDWrite funciona sin muchos problemas:

Un par de consejos más: primero, no olvidéis parar el CPUKiller (en el botón de "Stop") una vez que hayáis terminado de usarlo ;-D.

Segundo: los nombres de los archivos DSK que tienen más de ocho caracteres aparecen bajo MS-DOS como algo parecido a packdi~1.dsk (por ejemplo). Tienes dos opciones: o renombras el archivo (bajo Windows es muy sencillo) y utilizas como máximo 8 caracteres, o sacas la virgulilla con el código ascii. En concreto, el código de dicho carácter es el 126 del teclado numérico. Así, para escribir la imagen que hemos utilizado de ejemplo (packdi~1.dsk), habría que poner:

cpdwrite packdi[Alt]+[126]1.dsk

Y nada más. Bueno, que si tenéis dudas, no dudéis en escribirnos a deepf2002@yahoo.es.

j.f.

Volver a la sección de Amstrad

Volver a la página de Ordenadores

Volver a la página principal