CursosHardware

¿Cómo usar una Greaseweazle? 1ª parte.

Aprende a usar una Greaseweazle para preservar y crear tus disquettes

5
(1)

Hace tiempo que tengo una Greaseweazle gracias a los amigos de Hobbyretro y Rancanuo Teams y tenía pendiente esta entrada para documentar cómo funciona.

Foto de la GreaseWeazle conectada a una disketera de 3
Foto de la Greaseweazle conectada a una disketera de 3″

¿Qué es una Greaseweazle?

Para entender un poco la idea de la Greaseweazle, os explico su función:

  • Leer discos desde nuestro PC (he probado Linux, pero a priori es compatible con Mac y Windows)
  • Escribir discos para nuestros equipos
  • Pasar a IMG / DSK para preservarlos

Mi aventura comenzó con un Bondwell 14 y la falta de discos. Me llegó con el disco de inicio (5.25) del CP/M y nada más, así que empecé a buscar las imágenes de sistema con nuestro amigo Google y acabé encontrando esto:

http://www.retroarchive.org/hardware/bondwell/bw14dsks.zip

Una vez bajado y descomprimido, tenemos nueve ficheros:

  • SYSTEM1.img
  • SYSTEM2.img
  • CSTAR.img
  • DSTAR.img
  • DSTARFIX.img
  • RSTAR1.img
  • RSTAR2.img
  • WSTAR1.img
  • WSTAR2.img

Y la pregunta ahora es, ¿cómo hago para pasar estos discos a 5.25 y que los pueda leer el Bondwell? Aquí viene la parte más dura, y aunque hay bastante documentación, me pasé horas buscando información de cómo hacer funcionar la Greaseweazle y generar los diskettes con ella.

Como dijo Jack el Destripador, «vamos por partes».

¿Qué necesitamos para echar a andar la Greaseweazle?

  • https://github.com/keirf/greaseweazle (software Python para gestionar la Greaseweazle).
  • Las IMG en bruto (raw) para generar los diskettes con la Greaseweazle.
  • Disketera compatible + cable (en mi caso 5.25 de 360kb) y configurada como A o B.
  • Diskettes DD / DD (double side / double density).
Algunas cosas necesarias para echar a andar la Greaseweazle
Algunas cosas necesarias para echar a andar la Greaseweazle
  • Cable de datos + cable usb para la Greaseweazle.
  • Paciencia, mucha paciencia, la Greaseweazle funciona, pero es dura de pelar.
  • Información de formato de los diskettes que queremos generar, siendo la información a buscar:
    • Una cara o dos caras
    • Tamaño / pistas
    • Paso ( 1 o 2)

Con todos estos datos, vamos a preparar nuestro equipo, siendo en mi caso Debian 13 (toda máquina correcta «Amstrad CPC» debe gestionarse con el sistema operativo correcto; Debian)

En nuestro Debian:

$mkdir gw
$cd gw
$pwd
/home/angel/gw

$sudo apt install git gcc python3 python3-dev python3-pip pipx pipx ensurepath
$pipx install git+https://github.com/keirf/greaseweazle@latest

Una vez descargada la app del git, conectamos la Greaseweazle vía USB y comprobamos si ha sido detectada.

angel@craem-thinkpad:~/gw$ gw info
Host Tools: 1.23
Device:
Port: /dev/ttyACM0
Model: Greaseweazle V4
MCU: AT32F403A, 216MHz, 224kB SRAM
Firmware: 1.6
Serial: GWB0B563A55976C010078D9705
USB: Full Speed (12 Mbit/s), 128kB Buffer
angel@craem-thinkpad:~/gw$

Ahora, creamos dentro de Greaseweazle, la carpeta definitions que contendrá las definiciones de formato de cada disco que queramos tratar, siendo en este caso el fichero bondwell.cfg con el siguiente contenido.

disk bondwell.14
cyls = 40
heads = 2
tracks * ibm.mfm
secs = 18
bps = 256
id = 0
rate = 250
rpm = 300
iam = no
end
end

Os explicamos lo que quiere decir esto.

  • disk bondwell.14 : nombre del disco.
  • cyls = 40 : 40 cilindros numerados del 0 al 39.
  • heads = 2 : las dos caras
  • tracks * ibm.mfm : Se aplica a todas las pistas y la codificación / formato compatible MFM
  • secs = 18 : cada pista contiene 18 sectores
  • bps = 256 : cada sector contiene 256 bytes
    40 cilindros × 2 caras × 18 sectores × 256 bytes= 368.640 bytes = 360 KiB
  • id = 0 : Identifica el primer sector como 0 (del 0 al 39)
  • rate = 250 : la tasa de transferencia a 250 kbit/s (googleando / probando lo encontré)
  • rpm = 300 : la velocidad a la que gira el disco
  • iam = no : Indica que las pistas no tienen una marca IAM —Index Address Mark— antes de los sectores.

Toda esta info la tenéis en el GIT del proyecto; me limito a las decenas de pruebas y escrituras de diskettes que he hecho, de manera que algún que otro valor se puede cambiar y seguir funcionando.

Crear un disco con la Greaseweazle

A continuación, os detallamos los pasos a seguir para crear un disco con la Greaseweazle.

Primero comprobamos la geometría de la imagen.

stat -c '%n — %s bytes'
/home/angel/gw/bondwell/raw/SYSTEM1.img
/home/angel/gw/bondwell/raw/SYSTEM1.img — 368640 bytes
angel@craem-thinkpad:~/gw$

Luego la imagen

angel@craem-thinkpad:/gw$ xxd -l 16 /home/angel/gw/bondwell/raw/SYSTEM1.img
00000000: 4350 2f4d 2033 2e30 2049 4420 5345 4354 CP/M 3.0 ID SECT
angel@craem-thinkpad:/gw$

Ya vemos que es CP/M 3.0 y comprobamos las RPM, que deberán estar en 300.


angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw rpm --drive B --nr 3
Rate: 300.054 rpm ; Period: 199.964 ms
Rate: 300.072 rpm ; Period: 199.952 ms
Rate: 300.093 rpm ; Period: 199.938 ms

FASTEST: Rate: 300.093 rpm ; Period: 199.938 ms
Ar.Mean: Rate: 300.073 rpm ; Period: 199.951 ms
Median: Rate: 300.072 rpm ; Period: 199.952 ms
SLOWEST: Rate: 300.054 rpm ; Period: 199.964 ms
angel@craem-thinkpad:~/gw$

Borramos el disco completo.

angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw erase
--drive B
--tracks "c=0-79:h=0-1"
Erasing c=0-79:h=0-1, revs=1
T0.0: Erasing Track
T0.1: Erasing Track
T1.0: Erasing Track
T1.1: Erasing Track
T2.0: Erasing Track
T2.1: Erasing Track
T3.0: Erasing Track
...
T78.0: Erasing Track
T78.1: Erasing Track
T79.0: Erasing Track
T79.1: Erasing Track

Procedemos a escribir el disco.

angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw write
--drive B
--diskdefs /home/angel/gw/definitions/bondwell.cfg
--format bondwell.14
--tracks "c=0-39:h=0-1:step=2"
--pre-erase
--retries 5
/home/angel/gw/bondwell/raw/SYSTEM1.img
Format bondwell.14
Writing c=0-39:h=0-1:step=2
T0.0: Erasing Track
T0.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T0.1: Erasing Track
T0.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T1.0 -> Drive 2.0: Erasing Track
T1.0 -> Drive 2.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T1.1 -> Drive 2.1: Erasing Track
T1.1 -> Drive 2.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T2.0 -> Drive 4.0: Erasing Track
T2.0 -> Drive 4.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T2.1 -> Drive 4.1: Erasing Track
T2.1 -> Drive 4.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T3.0 -> Drive 6.0: Erasing Track
T3.0 -> Drive 6.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T3.1 -> Drive 6.1: Erasing Track
T3.1 -> Drive 6.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T4.0 -> Drive 8.0: Erasing Track
T4.0 -> Drive 8.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
...
T36.1 -> Drive 72.1: Erasing Track
T36.1 -> Drive 72.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T37.0 -> Drive 74.0: Erasing Track
T37.0 -> Drive 74.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T37.1 -> Drive 74.1: Erasing Track
T37.1 -> Drive 74.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T38.0 -> Drive 76.0: Erasing Track
T38.0 -> Drive 76.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T38.1 -> Drive 76.1: Erasing Track
T38.1 -> Drive 76.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T39.0 -> Drive 78.0: Erasing Track
T39.0 -> Drive 78.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T39.1 -> Drive 78.1: Erasing Track
T39.1 -> Drive 78.1: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
All tracks verified

Finalmente la Greaseweazle ha acabado. Explicamos un poco los parámetros que hemos utilizado.

  • drive b --> tenemos configurada con los jumpers, la disketera como B.
  • format bondwell.14 --> la etiqueta dentro de la definición.
  • tracks "c=0-39:h=0-1:step=2" --> empieza por cilindro 0 hasta el 39; h (heads) 0 cara de arriba , 1 cara de debajo y step 2 ordena avanzar dos posiciones por cada cilindro lógico.

Probando el disco creado con la Greaseweazle

Ahora, colocamos el disco que hemos creado con la Greaseweazle en nuestro equipo, lo reiniciamos y…

El equipo arranca con el disco creado con Greaseweazle
El equipo arranca con el disco creado con la Greaseweazle

Preservando discos con la Greaseweazle

¿Y si quiero preservar un diskette físico para la posteridad? Me han dejado un diskette original de Bondwell y quiero preservarlo. Lo que recomiendan por los foros es SCP -> IMG y EDSK.

Empezamos conservando cinco lecturas de cada pista y las dejamos en un fichero llamado bondwell-original.scp, dónde tendremos la captura de flujo de datos en lectura lo más fiel posible.

angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw read
--drive B
--tracks "c=0-39:h=0-1:step=2"
--raw
--revs 5
--no-clobber
bondwell-original.scp
Reading c=0-39:h=0-1:step=2 revs=5
T0.0: Raw Flux (223569 flux in 1111.96ms)
T0.1: Raw Flux (214163 flux in 1106.10ms)
T1.0 <- Drive 2.0: Raw Flux (221014 flux in 1066.86ms)
T1.1 <- Drive 2.1: Raw Flux (216867 flux in 1100.02ms)
T2.0 <- Drive 4.0: Raw Flux (212231 flux in 1073.68ms)
T2.1 <- Drive 4.1: Raw Flux (221258 flux in 1103.06ms)
T3.0 <- Drive 6.0: Raw Flux (210615 flux in 1067.47ms)
T3.1 <- Drive 6.1: Raw Flux (219090 flux in 1110.57ms)
T4.0 <- Drive 8.0: Raw Flux (216010 flux in 1070.53ms)
T4.1 <- Drive 8.1: Raw Flux (215475 flux in 1099.07ms)
T5.0 <- Drive 10.0: Raw Flux (210819 flux in 1067.62ms)
T5.1 <- Drive 10.1: Raw Flux (220875 flux in 1107.14ms)
T6.0 <- Drive 12.0: Raw Flux (210647 flux in 1070.36ms)
T6.1 <- Drive 12.1: Raw Flux (243667 flux in 1108.56ms)
.....
T34.1 <- Drive 68.1: Raw Flux (213189 flux in 1108.15ms)
T35.0 <- Drive 70.0: Raw Flux (211853 flux in 1073.60ms)
T35.1 <- Drive 70.1: Raw Flux (213306 flux in 1108.78ms)
T36.0 <- Drive 72.0: Raw Flux (217397 flux in 1075.76ms)
T36.1 <- Drive 72.1: Raw Flux (213228 flux in 1108.27ms)
T37.0 <- Drive 74.0: Raw Flux (218330 flux in 1076.27ms)
T37.1 <- Drive 74.1: Raw Flux (215629 flux in 1121.36ms)
T38.0 <- Drive 76.0: Raw Flux (213888 flux in 1073.25ms)
T38.1 <- Drive 76.1: Raw Flux (212296 flux in 1103.35ms)
T39.0 <- Drive 78.0: Raw Flux (213195 flux in 1076.24ms)
T39.1 <- Drive 78.1: Raw Flux (213561 flux in 1110.05ms)
angel@craem-thinkpad:~/gw$

Y ahora generamos el fichero IMG desde el fichero que hemos creado con la Greaseweazle.

angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw convert
--diskdefs /home/angel/gw/definitions/bondwell.cfg
--format bondwell.14
--tracks "c=0-39:h=0-1"
--no-clobber
bondwell-original.scp
bondwell-original.img
Format bondwell.14
Converting c=0-39:h=0-1 -> c=0-39:h=0-1
T0.0: IBM MFM (18/18 sectors) from Raw Flux (200880 flux in 999.65ms)
T0.1: IBM MFM (18/18 sectors) from Raw Flux (193480 flux in 999.65ms)
T1.0: IBM MFM (18/18 sectors) from Raw Flux (206241 flux in 999.65ms)
T1.1: IBM MFM (18/18 sectors) from Raw Flux (197130 flux in 999.66ms)
T2.0: IBM MFM (18/18 sectors) from Raw Flux (197830 flux in 999.66ms)
T2.1: IBM MFM (18/18 sectors) from Raw Flux (200700 flux in 999.67ms)
T3.0: IBM MFM (18/18 sectors) from Raw Flux (197130 flux in 999.64ms)
T3.1: IBM MFM (18/18 sectors) from Raw Flux (197010 flux in 999.65ms)
T4.0: IBM MFM (18/18 sectors) from Raw Flux (202030 flux in 999.65ms)
T4.1: IBM MFM (18/18 sectors) from Raw Flux (196019 flux in 999.64ms)
T5.0: IBM MFM (18/18 sectors) from Raw Flux (197460 flux in 999.66ms)
T5.1: IBM MFM (18/18 sectors) from Raw Flux (199240 flux in 999.65ms)
...
T37.0: IBM MFM (18/18 sectors) from Raw Flux (202659 flux in 999.59ms)
T37.1: IBM MFM (18/18 sectors) from Raw Flux (192240 flux in 999.60ms)
T38.0: IBM MFM (18/18 sectors) from Raw Flux (199340 flux in 999.58ms)
T38.1: IBM MFM (18/18 sectors) from Raw Flux (192350 flux in 999.58ms)
T39.0: IBM MFM (18/18 sectors) from Raw Flux (198320 flux in 999.58ms)
T39.1: IBM MFM (18/18 sectors) from Raw Flux (192340 flux in 999.60ms)
Cyl-> 0 1 2 3
H. S: 0123456789012345678901234567890123456789
0. 0: ........................................
0. 1: ........................................
0. 2: ........................................
0. 3: ........................................
0. 4: ........................................
0. 5: ........................................
0. 6: ........................................
0. 7: ........................................
0. 8: ........................................
0. 9: ........................................
0.10: ........................................
0.11: ........................................
0.12: ........................................
0.13: ........................................
0.14: ........................................
0.15: ........................................
0.16: ........................................
0.17: ........................................
9: ........................................
1.10: ........................................
1.11: ........................................
1.12: ........................................
1.13: ........................................
1.14: ........................................
1.15: ........................................
1.16: ........................................
1.17: ........................................
Found 1440 sectors of 1440 (100%)
angel@craem-thinkpad:~/gw$

Y generamos el DSK con la Greaseweazle.

angel@craem-thinkpad:~/gw$ /home/angel/gw/bin/gw convert
--diskdefs /home/angel/gw/definitions/bondwell.cfg
--format bondwell.14
--tracks "c=0-39:h=0-1"
--no-clobber
bondwell-original.scp
bondwell-original.edsk
Format bondwell.14
Converting c=0-39:h=0-1 -> c=0-39:h=0-1
T0.0: IBM MFM (18/18 sectors) from Raw Flux (200880 flux in 999.65ms)
T0.1: IBM MFM (18/18 sectors) from Raw Flux (193480 flux in 999.65ms)
T1.0: IBM MFM (18/18 sectors) from Raw Flux (206241 flux in 999.65ms)
T1.1: IBM MFM (18/18 sectors) from Raw Flux (197130 flux in 999.66ms)
T2.0: IBM MFM (18/18 sectors) from Raw Flux (197830 flux in 999.66ms)
T2.1: IBM MFM (18/18 sectors) from Raw Flux (200700 flux in 999.67ms)
T3.0: IBM MFM (18/18 sectors) from Raw Flux (197130 flux in 999.64ms)
T3.1: IBM MFM (18/18 sectors) from Raw Flux (197010 flux in 999.65ms)
T4.0: IBM MFM (18/18 sectors) from Raw Flux (202030 flux in 999.65ms)
T4.1: IBM MFM (18/18 sectors) from Raw Flux (196019 flux in 999.64ms)
T5.0: IBM MFM (18/18 sectors) from Raw Flux (197460 flux in 999.66ms)
T5.1: IBM MFM (18/18 sectors) from Raw Flux (199240 flux in 999.65ms)
T6.0: IBM MFM (18/18 sectors) from Raw Flux (196729 flux in 999.63ms)
T6.1: IBM MFM (18/18 sectors) from Raw Flux (218451 flux in 999.64ms)

.....
1.10: ........................................
1.11: ........................................
1.12: ........................................
1.13: ........................................
1.14: ........................................
1.15: ........................................
1.16: ........................................
1.17: ........................................
Found 1440 sectors of 1440 (100%)

Creación de discos de 3″ para Amstrad CPC con la Greaseweazle

¿Si quiero un diskette de Amstrad de 3″ cómo lo hago con la Greaseweazle? Tenemos que crear dentro de la carpeta definitions el fichero amstrad-cpc.cfg con el siguiente contenido.

#Formatos físicos habituales de Amstrad CPC: 40 pistas, una cara,
#9 sectores de 512 bytes, MFM a 250 kbit/s y 300 RPM.
#Validado con una unidad de 5,25 pulgadas y 40 pistas: 360/360 sectores.

disk amstrad.cpc.data
 cyls = 40
 heads = 1
 tracks * ibm.mfm
 secs = 9
 bps = 512
 id = 0xc1
 rate = 250
 rpm = 300
 iam = no
 end
end

#Formato identificado en el disco de 3,5 pulgadas y una cara. La captura de
#prueba recupera 351/360 sectores porque la pista 0 del original está dañada.

disk amstrad.cpc.system
 cyls = 40
 heads = 1
 tracks * ibm.mfm
 secs = 9
 bps = 512
 id = 0x41
 rate = 250
 rpm = 300
 iam = no
 end
end

disk amstrad.cpc.vendor
  cyls = 40
  heads = 1
  tracks * ibm.mfm
  secs = 9
  bps = 512
  id = 0x01
  rate = 250
  rpm = 300
  iam = no
  end
end

Ahora tenemos el DSK Ball_Breaker_1987.dsk y quiero pasarlo a un disco de 3″ con la Greaseweazle. Borramos el disco siguiendo los pasos que hemos visto antes.

angel@craem-thinkpad:~/gw/definitions$ /home/angel/gw/bin/gw erase --drive B --tracks "c=0-39:h=0"
Erasing c=0-39:h=0, revs=1
T0.0: Erasing Track
T1.0: Erasing Track
T2.0: Erasing Track
T3.0: Erasing Track
T4.0: Erasing Track
T5.0: Erasing Track
T6.0: Erasing Track
T7.0: Erasing Track
T8.0: Erasing Track
T9.0: Erasing Track
T10.0: Erasing Track
T11.0: Erasing Track
T12.0: Erasing Track
T13.0: Erasing Track
T14.0: Erasing Track
T15.0: Erasing Track
T16.0: Erasing Track
T17.0: Erasing Track
T18.0: Erasing Track
T19.0: Erasing Track
T20.0: Erasing Track
T21.0: Erasing Track
T22.0: Erasing Track
T23.0: Erasing Track
T24.0: Erasing Track
T25.0: Erasing Track
T26.0: Erasing Track
T27.0: Erasing Track
T28.0: Erasing Track
T29.0: Erasing Track
T30.0: Erasing Track
T31.0: Erasing Track
T32.0: Erasing Track
T33.0: Erasing Track
T34.0: Erasing Track
T35.0: Erasing Track
T36.0: Erasing Track
T37.0: Erasing Track
T38.0: Erasing Track
T39.0: Erasing Track

Y ahora escribimos el DSK al disco físico de 3″.

angel@craem-thinkpad:~/gw/definitions$ /home/angel/gw/bin/gw write
--drive B
--tracks "c=0-39:h=0:step=2"
--pre-erase
--retries 5
"/home/angel/gw/amstrad-cpc/Ball_Breaker_1987.dsk"
Writing c=0-39:h=0:step=2
T0.0: Erasing Track
T0.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T1.0 -> Drive 2.0: Erasing Track
T1.0 -> Drive 2.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T2.0 -> Drive 4.0: Erasing Track
T2.0 -> Drive 4.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T3.0 -> Drive 6.0: Erasing Track
T3.0 -> Drive 6.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T4.0 -> Drive 8.0: Erasing Track
T4.0 -> Drive 8.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T5.0 -> Drive 10.0: Erasing Track
T5.0 -> Drive 10.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T6.0 -> Drive 12.0: Erasing Track
....
T36.0 -> Drive 72.0: Erasing Track
T36.0 -> Drive 72.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T37.0 -> Drive 74.0: Erasing Track
T37.0 -> Drive 74.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T38.0 -> Drive 76.0: Erasing Track
T38.0 -> Drive 76.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
T39.0 -> Drive 78.0: Erasing Track
T39.0 -> Drive 78.0: Writing Track (Flux: 200.0ms period, 220.0 ms total, Terminate at index)
All tracks verified
angel@craem-thinkpad:~/gw/definitions$

Nos vamos con el diskette al CPC y lo probamos.

Probando un disco de 3
Probando un disco de 3″ creado con Greaseweazle en un CPC 6128

Y efectivamente, ¡funciona! 🙂

Pasar un disco de 3″ a DSK con la Greaseweazle

Y ahora os preguntaréis, ¿cómo paso un disco de 3″ a DSK con la Greaseweazle?

Primero, capturamos el disco como SCP:

angel@craem-thinkpad:~/gw/amstrad-cpc$ /home/angel/gw/bin/gw read --drive B --tracks "c=0-39:h=0:step=2" --raw --revs 5 --no-clobber disco-original.scp
Reading c=0-39:h=0:step=2 revs=5
T0.0: Raw Flux (227039 flux in 1175.24ms)
T1.0 <- Drive 2.0: Raw Flux (219755 flux in 1108.76ms)
T2.0 <- Drive 4.0: Raw Flux (214256 flux in 1107.00ms)
T3.0 <- Drive 6.0: Raw Flux (213520 flux in 1114.16ms)
T4.0 <- Drive 8.0: Raw Flux (212084 flux in 1107.45ms)
T5.0 <- Drive 10.0: Raw Flux (211792 flux in 1108.77ms)
T6.0 <- Drive 12.0: Raw Flux (211337 flux in 1109.32ms)
T7.0 <- Drive 14.0: Raw Flux (210721 flux in 1106.87ms)
T8.0 <- Drive 16.0: Raw Flux (224741 flux in 1106.45ms)
T9.0 <- Drive 18.0: Raw Flux (227656 flux in 1124.31ms)
T10.0 <- Drive 20.0: Raw Flux (208850 flux in 1099.95ms)
T11.0 <- Drive 22.0: Raw Flux (209313 flux in 1129.43ms)
T12.0 <- Drive 24.0: Raw Flux (205522 flux in 1108.37ms)
T13.0 <- Drive 26.0: Raw Flux (205595 flux in 1110.64ms)
T14.0 <- Drive 28.0: Raw Flux (205114 flux in 1107.71ms)
T15.0 <- Drive 30.0: Raw Flux (205707 flux in 1108.80ms)
.....
T32.0 <- Drive 64.0: Raw Flux (201132 flux in 1085.66ms)
T33.0 <- Drive 66.0: Raw Flux (203516 flux in 1098.42ms)
T34.0 <- Drive 68.0: Raw Flux (205275 flux in 1108.16ms)
T35.0 <- Drive 70.0: Raw Flux (204531 flux in 1104.06ms)
T36.0 <- Drive 72.0: Raw Flux (204763 flux in 1105.19ms)
T37.0 <- Drive 74.0: Raw Flux (205203 flux in 1107.65ms)
T38.0 <- Drive 76.0: Raw Flux (204385 flux in 1103.15ms)
T39.0 <- Drive 78.0: Raw Flux (204485 flux in 1103.73ms)
angel@craem-thinkpad:~/gw/amstrad-cpc$

Convertimos el disco.

angel@craem-thinkpad:~/gw/amstrad-cpc$ /home/angel/gw/bin/gw convert
--diskdefs /home/angel/gw/definitions/amstrad-cpc.cfg
--format amstrad.cpc.data
--tracks "c=0-39:h=0"
--no-clobber
disco-original.scp
disco-original.edsk
Format amstrad.cpc.data
Converting c=0-39:h=0 -> c=0-39:h=0
T0.0: IBM MFM (9/9 sectors) from Raw Flux (198651 flux in 1030.13ms)
T1.0: IBM MFM (9/9 sectors) from Raw Flux (204197 flux in 1029.43ms)
T2.0: IBM MFM (9/9 sectors) from Raw Flux (199330 flux in 1028.86ms)
T3.0: IBM MFM (9/9 sectors) from Raw Flux (197181 flux in 1028.69ms)
T4.0: IBM MFM (9/9 sectors) from Raw Flux (196980 flux in 1028.40ms)
T5.0: IBM MFM (9/9 sectors) from Raw Flux (196350 flux in 1027.57ms)
T6.0: IBM MFM (9/9 sectors) from Raw Flux (195790 flux in 1027.20ms)
T7.0: IBM MFM (9/9 sectors) from Raw Flux (195700 flux in 1027.05ms)
T8.0: IBM MFM (9/9 sectors) from Raw Flux (208700 flux in 1026.60ms)
T9.0: IBM MFM (9/9 sectors) from Raw Flux (207811 flux in 1025.89ms)
T10.0: IBM MFM (9/9 sectors) from Raw Flux (195129 flux in 1025.66ms)
T11.0: IBM MFM (9/9 sectors) from Raw Flux (190070 flux in 1025.50ms)
T12.0: IBM MFM (9/9 sectors) from Raw Flux (190101 flux in 1025.08ms)
T13.0: IBM MFM (9/9 sectors) from Raw Flux (189710 flux in 1024.54ms)
T14.0: IBM MFM (9/9 sectors) from Raw Flux (189710 flux in 1024.21ms)

Con esto, renombramos el EDSK a DSK y lo probamos en la Gotek 🙂

¿Qué viene después?

En la siguiente entrada os dejaré una GUI para facilitar un poco el uso de Greaseweazle. Como habéis visto son muchos comando, así que, ¿por qué no facilitar un poco su uso?

Puedes encontrar más cursos aquí.


¿Te ha Resultado útil este artículo?

Ayúdanos a mejorar y danos tu opinión:

Mostrar más

2 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Publicaciones relacionadas

Mira también
Cerrar
Botón volver arriba