Hasta ahora hemos visto que podemos ejecutar CP/M y su software con emuladores de los ordenadores que podían ejecutarlo (p.e.: Amstrad CPC y PCW) y a través de 22Nice, un emulador del sistema que se ejecutaba sobre DOS y que por tanto debíamos ejecutar a través de DosBox, pero... ¿no existe un emulador directo del sistema CP/M nativo para GNU/Linux?
La respuesta es SÍ, de hecho hay varios, aunque por ahora solo he conseguido ejecutar con éxito: el ANSI CP/M Emulator and disk image tool.
Vamos a ver como instalarlo y usarlo.
Descarga y compilación
Tecleamos los siguientes comandos:sudo apt install git build-essential make
git clone https://github.com/z88dk/cpm
cd cpm
make
Ya lo podíamos ejecutar desde este directorio con el comando ./cpm pero nos va a resultar más tenerlo como un comando del propio sistema en cualquier directorio.
Instalación
Simplemente copiando el archivo a /usr/local/bin ya tendríamos el emulador disponible desde cualquier directorio pero mejor le cambiamos el nombre a ansicpm para no confundirlo con futuros emuladores que instalemos ni con otro paquete oficial que se llama cpm (y que no tiene nada que ver con el vetusto sistema).
sudo cp ./cpm /usr/local/bin/ansicpm
sudo cp ./cpmtool /usr/local/bin/ansicpmtool
Uso
Simplemente CP/M
Si simplemente queremos ejecutarlo como el sistema en sí, basta con teclear el ejecutable, ya sea ./cpm desde el directorio de instalación o ansicpm desde cualquier sitio.
Interactuaríamos con su prompt y volveríamos a GNU/Linux con el comando:
bye
Binarios de CP/M como archivos sueltos
También podríamos tener un programa de CP/M con todos sus archivos necesarios en una carpeta, p.e.: dBase II, WordStart o Mallard Basic, en este caso, nos cambiamos a la carpeta donde está el binario y ejecutamos el programa con el comando como éste:
ansicpm <binario_cpm>¡Ojo! simplemente hay que poner el nombre del binario que vayamos a ejecutar sin ./ o no funcionará.
Una vez terminada la ejecución volvemos al prompt de GNU/Linux.
Imágenes de disco
Este emulador también permite ejecutar software que está en imágenes de disco sin necesidad de sacarlo a una carpeta, pero por ahora solo soporta muy pocos formatos de disco, por lo que por ahora necesitaremos extraer los archivos de nuestras imágenes de discos Amstrad de CP/M a una carpeta, pero eso es algo que ya hemos visto como hacer en algunos de mis vídeos de youtube.
Actualización 19-07-2020:
IZ-CPM
Ivan me ha comentado en el foro de retrowiki que ha hecho otro emulador de CP/M llamado IZ-CPM, lo he probado y va genial en GNU/Linux.También lo puedes compilar como el ANSI CP/M pero éste ya trae el binario compilado, que simplemente descargamos, descomprimimos y movemos su binario iz-cpm a /usr/local/bin
Lo ejecutamos con el comando iz-cpm desde el directorio de la aplicación y a partir de ahí el funcionamiento es muy similar a ANSI CP/M
¡Que barbaridad! CP/M en el pingüino, nunca me lo hubiera imaginado.
ResponderEliminarY funcionando como si fuera un DosEmu/DosBox o un Wine.
CP/M en una raspberry pi (vale cualquiera)
ResponderEliminarhttps://hackaday.com/2016/10/12/raspberry-pi-boots-cpm/