viernes, 27 de diciembre de 2019

Gotek para Amstrad CPC6128: preparación y programación con FlashFloppy en GNU/Linux

Estos días me ha llegado una gotek, un emulador de disquetera para mi Amstrad CPC que me permite cargar imagenes de disquete desde un pendrive como si fueran discos de verdad.


Para disfrutarla ha venido con algunos complementos:
Para la preparación he seguido el tutorial Cómo programar Gotek con FlashFloppy mediante USB de AUAmstrad, con algunas salvedades.


Conexionado y preparación

Alimentación

Antes de usar el cable dupont he comprobado que los pines rojo y negro corresponden efectivamente a +5V y masa, para ello he usado un simple led.
Después solo he tenido que conectar el rojo a donde ponía +5V en la serigrafía y el negro al lado.



Apertura de la unidad y puenteado

Solo hay que retirar 3 tornillos que tiene en la parte superior para mostrar la placa.
La placa gotek

Al retirar la placa hay que tener especial cuidado en los elementos más delicados, los pines, el puerto USB, etc...

En el artículo de AUAmstrad se muestra los pines que hay que cortocircuitar para permitir la programación del firmware, mr.byte recomienda soldar un par de cablecitos y yo también, pero como todavía no estoy muy habil con el soldador lo que he hecho es poner un par de alambres de cobre que toquen en todo momento lo que hay que tocar y nada más.
Hay que tener mucho cuidado también al quitar los puentes después de hacer la programación del firmware para no dañar ninguna pista o componente, paciencia y buena letra.


Programación del firmware

He utilizado el firmware libre FlashFloppy que cubre mis necesidades, hay que seguir los siguientes pasos:
  • Descargar el último firmware, hay que descargarse la última versión estable y descomprimirla en la carpeta donde vayamos a trabajar.
  • Aplicar el firmware:
    sudo dfu-util -a 0 -s :unprotect:force -D FF_Gotek-v2.13.dfu
    sudo dfu-util -a 0 -D FF_Gotek-v2.13.dfu
  • Lógicamente si ves estas instrucciones dentro de un tiempo la última versión será otra y deberás sustituir 2.13 por la versión que sea.
Si tienes dudas sobre el éxito de la operación, puedes comparar lo que has obtenido en pantalla con lo que yo obtuve.

Ya podemos retirar los puentes con la unidad apagada, mientras los teníamos puestos no se encendía ninguna luz en la gotek y parecía no tener ninguna actividad pero si la volvemos a conectar después ya muestra el mensaje F-F que indica que ha ido todo bien (por ahora he trabajado con la pantalla original).



Muchas gracias a los compañeros del grupo de telegram AUA Club, en especial a jgilcas que me ha proporcionado los comandos.


Cambio de pantalla

Esta operación es delicada y conviene seguir al pie de la letra el esquema del artículo de AUA, puedes usar los mismos cables de la pantalla original, aunque dispuestos vertical en lugar de horizontalmente.



Como puedes ver en esta foto he puesto la nueva pantalla ya conectada junto a la original desconectada para apreciar que es igual de alta pero bastante más ancha así que toca mecanizar la caja, de nuevo con mimo y cuidado.

Pero antes comprobamos que funciona en el CPC, para lo cual preparo un pendrive con una única partición FAT32 y algunos archivos DSK.

La unidad la conectamos como hicimos con la disquetera de 3.5", recuerda que los interruptores que tengamos para cambiar de cara o elegir unidad deben estar abiertos, es decir, CARA A y funciona como unidad B.

En la pantallita debe salirnos los nombres de los archivos y una vez seleccionados accedemos a la unidad B y procedemos como de costumbre:
|B
CAT
RUN"LOQUESEA
Cuidado con el cable y el escaso peso de la gotek comparado con la disquetera, cuando la estés manipulando todavía abierta puede llevarse un golpe, yo casi pierdo uno de los tornillos así.


Resultado final

Al final me cargué la pantallita nueva y tuve que volver a poner la vieja mientras me traen otra, son muy baratas pero extremadamente delicadas.


Así que me tuve que pedir otra pantalla de nuevo (ya me pedí dos) y este fue el resultado definitivo:


Enlaces de interés



viernes, 20 de diciembre de 2019

Calendarios 2020 hechos con inkscape y gimp

Este año voy a hacer 4 calendarios para imprimir en A3 con impresora láser color de mis temas de interés favoritos: GNU/Linux, retroinformática, tente y Málaga.
Como siempre he usado software libre pero este año voy a utilizar herramientas distintas: inkscape para hacer el calendario en sí y gimp para ponerle el fondo que más nos guste.

Vamos al lío.

Inkscape

Simplemente abrimos inkscape y accedemos al generador de calendarios con las opciones de menú:
Extensiones ► Generar ► Calendario
Una vez nos abra el asistente cambiamos los valores de cada pestaña a nuestro gusto, prestando especial atención a:
  • Pestaña configuración:
    • Año: 2020. Mes: 0 (todos en una sola página).
    • Día de inicio de la semana: Lunes.
    • Fin de semana: Domingo o Sábado y Domingo.
  • Pestaña colores: elige los que más te gusten, los tienes que introducir en formato RRGGBB, que puedes obtener fácilmente con gpick o gimp por ejemplo.
  • Pestaña Localización: presta atención a los nombres de meses y días de la semana y a haber elegido la codificación UTF-8 para no tener problemas con los acentos.
Y ya está, si dominamos inkscape incluso podríamos terminar el calendario desde esta herramienta, o si no lo guardamos como un archivo csv y terminamos el trabajo con GIMP.
En mi caso he personalizado la tipografía poniendo una muy especial para que sea un poco más original.




GIMP

  • Una vez que tenemos el archivo csv lo abrimos con GIMP.
  • Como se trata de una imagen prediseñada nos preguntará por la resolución con la que la vamos a abrir que debe ser generosa para que salga bien al imprimirla en el tipo de hoja que vayamos a usar.
  • En mi caso voy a imprimirla en un A3 así que una resolución de entorno a 5000x7000 pixeles sería adecuada, teniendo en cuenta que estos son valores orientativos que variaran para que se mantenga las dimensiones del calendario.
  • A partir de ahí vamos abriendo las imágenes que queramos en nuevas capas, que situaremos unas detrás de otras a nuestra conveniencia mediante el selector de capas, por supuesto la capa más superficial debe ser siempre nuestro calendario.
  • A estas imágenes hay que aplicarles filtros, alguna capa extra o jugar con el tono y saturación para que queden como una marca de agua y así se vean bien los textos del calendario. 




 Los resultados

Aquí tenéis los 4 calendarios que he hecho para este 2020: Amstrad pinups, Grandes éxitos del software libre, Campeones de Tenteexpress y Málaga a orillas del Alcazaba.

Amstrad pinups, calendario 2020 Campeones tentexpress, calendario 2020 Málaga 2020: a orillas del Alcazaba Calendario 2020: grandes éxitos del software libre

¡Ojo! haz clic en ellos, no te guardes la imagen directamente o no tendrás la calidad necesaria para una buena impresión.

Y si te quieres hacer el tuyo propio, aquí tienes el archivo CSV para que le añadas tus imágenes favoritas.

Espero que os guste el regalo de Saturnalia.

¡Felices fiestas!

sábado, 14 de diciembre de 2019

Instalar el último FreeDOS en un ordenador pre-UEFI

Hace poco vimos como instalar 4 sistemas operativos en un pentium 4, siendo el primero el MS-DOS 6.22 pero, ¿podríamos haber instalado FreeDOS, su alternativa libre en su lugar? Rotundamente sí, vamos a ver como.

  • Descarga la última versión de FreeDOS y tuéstala en un PC con grabadora de CD, recomendada la versión legacy si lo vas a usar en un equipo muy antiguo como va a ser el caso.
    Si tu equipo es tan antiguo que no puede arrancar desde CD-ROM descárgate también el disco de arranque y lo grabas en un disquete.
  • Configura la BIOS de tu PC para que arranque desde CD-ROM antes que de disco duro (o disquete en su caso).
  • Arranca el PC e introduce el disco de FreeDOS.
  • Selecciona el idioma: Spanish.
  • Aviso sobreescritura sistema operativo: Si continúe con la instalación.
  • Nos indica que la unidad C: no parece estar particionada le decimos que sí, que
  • cree una nueva tabla de particiones.
  • Nos dirá que FDISK puede particiones mayores de 2Gb usando FAT32 le decimos que
  • sí.
  • Borramos las particiones que hay, indicando el tipo que es, posiblemente sea NON-DOS (lógicamente si había algo en ellas lo perderás si todavía no has hecho copia de los contenidos de tu interés).
  • Creamos Una partición DOS, primaria, le indicamos cuando queremos que ocupe, ya no tenemos la limitación de 2Gb como con MS-DOS 6.22.
  • Dos veces ESC para salir de FDISK.
  • Reiniciamos el equipo.
  • Dira que la unidad C: parece no tener formato, le decimos que SI que formatee.
  • Instalamos todos los paquetes pero sin sus fuentes.
  • Al final nos pedirá reiniciar una vez más.
  • Saca el CD antes de que empiece a iniciar otra vez para arrancar ya con tu instalación de FreeDOS. 

Después de instalar FreeDOS

Casi todo el software de MS-DOS va a funcionar en FreeDOS así que podemos instalar lo que queramos o necesitemos.
Algunos drivers como el de CD-ROM lo trae de serie, por lo que no necesitaremos instalarlo como en el caso de MS-DOS, aunque otros sí tendremos que instalarlos.

¿Windows 3.1x? También lo podemos instalar pero al arrancar FreeDOS debemos elegir la opción para ejecutar con EMM386 o nos tendremos que conformar con lanzar Windows 3.1 con el comando win /s
Lo bueno es que el arranque de FreeDOS se queda con la última opción que le hayamos indicado.

Vídeo de instalación de FreeDOS

Os dejo este vídeo en el que se ve la instalación de FreeDOS en VirtualBox en un equipo moderno.

Las diferencias son mínimas aunque, eso sí, para que funcione hay que descargarse la versión normal (no legacy) y el disquete de arranque de FreeDOS.

viernes, 6 de diciembre de 2019

Multiboot en PC retro (IV): MX Linux

Después de instalar MS-DOS, Windows 98 y Windows XP viene el plato fuerte, la guinda del pastel: instalar GNU/Linux al pentium 4, en este caso voy a utilizar MX Linux para optimizar los reducidos recursos de una máquina con tantos años.

Preliminares

Como la unidad de DVD me lleva dando problemas, lo he instalado desde un pendrive preparado con rufus desde el propio XP, y así probar este programa que dicen que es lo mejor para esta tarea, sin embargo para que funcione he tenido que bajarme manualmente el archivo ldlinux.c32 y guardarlo en el raíz del pendrive, algo que nunca he tenido que hacer con multisystem.

Aunque el pentium 4 no soporta arranque USB pude arrancar enganchando el pendrive al puerto trasero gracias al disquete que me hice de plot boot manager que permite arrancar USB en equipos no soportados.


Instalación

Arranco MX Linux en modo live, hago clic en el icono Instaler e inicio el asistente:
  • Hacemos clic en el botón 'Run Partition tool...' para iniciar gparted y creamos:
    • Una partición extendida por el resto de disco duro libre.
    • Una vez creada, ya en ella creamos una ext4 por casi todo lo que queda y una partición swap, 
    • Aplicamos todos los cambios y salimos de gparted.
  • Elegimos el tipo de instalación 'Custom install on existing partitions, con la siguiente configuración:
    • root == sda5
    • home = root
    • swap = sda6
    • boot = root
    • No encriptamos para no perder rendimiento.
  • Pulsamos 'Next' y ponemos el nombre de red del ordenador, el dominio y el grupo de trabajo.
  • Configuramos las variables locales, zona horaria, etc... para España.
  • Indicamos la cuenta de usuario normal con su contraseña y la contraseña para root, si deseamos autologin lo marcamos aquí.

Adaptar el grub para gestionar los 4 sistemas

Para que grub pueda arrancar MS-DOS y los dos Windows hay que hacerle una pequeña modificamos:
  1. Comentamos o borramos todas las líneas del archivo /etc/grub.d/30-osprober a partir de la que pone 'found_other_os='.
  2. Añadimos las siguientes líneas al archivo /etc/grub.d/40_custom:
    menuentry "MS-DOS (on /dev/sda1)" {
        insmod fat
        set root=(hd0,1)
        parttool (hd0,1) hidden-
        parttool (hd0,2) hidden+
        parttool (hd0,3) hidden+
        parttool (hd0,1) boot+
        search --no-floppy --fs-uuid --set ecb80573b8053d98
        drivemap -s (hd0) ${root}
        chainloader +1
    }
    menuentry "Windows 98 SE (on /dev/sda2)" {
        insmod ntfs
        set root=(hd0,2)
        parttool (hd0,1) hidden+
        parttool (hd0,2) hidden-
        parttool (hd0,3) hidden+
        parttool (hd0,2) boot+
        search --no-floppy --fs-uuid --set ecb80573b8053d98
        drivemap -s (hd0) ${root}
        chainloader +1
    }
    menuentry "Windows XP (on /dev/sda3)" {
        insmod ntfs
        set root=(hd0,3)
        parttool (hd0,1) hidden+
        parttool (hd0,2) hidden+
        parttool (hd0,3) hidden-
        parttool (hd0,3) boot+
        search --no-floppy --fs-uuid --set ecb80573b8053d98
        drivemap -s (hd0) ${root}
        chainloader +1
    }
  3. Aplicamos los cambios con el comando:
    sudo update-grub2

Después de la instalación

  • La castellanizamos, si ya indicamos todas las opciones para castellano en la instalación sólo tendremos que instalar unos pocos paquetes para tener las principales aplicaciones en nuestro idioma:
    sudo apt install libreoffice-help-es libreoffice-l10n-es firefox-l10n-es-es gimp-help-es
  • Instalamos lo que deseemos (recuerda que está basado en Debian).
  • Con el monitor Samsung no se veía bien la pantalla del sistema operativo porque estaba desplazada y solo se veía parte del panel izquierdo (una faena), lo solucioné con la opción pantalla en la opción de menú 'Configuración', cambiado a otra frecuencia de actualización que me ofrecían, ahora se ve perfecta.
  • Grub también aparecía cortado y de manera más acusada, para cambiar la resolución he seguido el manual de systeminside.
Y por ahora, el pentium 4 lo vamos a dejar así, listo para mis experimentos retroinformáticos.