Duinomite Mini con CP/M-80

dancresp
Mensajes: 4993
Registrado: 13 Nov 2010 02:08
Agradecido : 14 veces
Agradecimiento recibido: 83 veces

Duinomite Mini con CP/M-80

Mensajepor dancresp » 18 Oct 2013 19:27

DuinoMite-Mini es un equipo básico compatible con Maximite, diseñado por Geoff Graham, con características adicionales. El hardware principal está integrado en un microcontrolador PIC32MX895 que funciona a 80MHz. DuinoMite te permite programar en lenguaje BASIC y tiene conectores para monitor VGA, teclado PS/2 y Mini-USB, entre otros.

Duinomite-Mini.jpg


Para usar mi Duinomite utilizo una fuente de alimentación de 5V con conector Mini-USB.

El teclado PS/2 lo compré en un chino y no tiene la configuración española. De esta forma los caracteres que pulsas son los correctos.

Install_1.jpg

Install_2.jpg


Por defecto en este equipo viene preinstalada una versión del MM-BASIC, que viene a ser una versión evolucionada del M-BASIC o el GW-BASIC de Microsoft, aunque en este caso bastante limitada en cuanto a memoria RAM.

De esta forma se comporta como un antiguo ordenador de 8 bits. Se enciende y el equipo ya está listo para ser programado en BASIC, pudiendo guardar los programas en la tarjeta Micro-SD o en la memoria interna del Duinomite.

Install_3.jpg


En mi caso, como ya tengo una Duinomite eMega he optado por cambiar el firmware e instalar el “Z80-Sim”, que es un emulador de CP/M-80. Así convierto este equipo en una máquina CP/M.

La verdad es que me ha llevado un tiempo decidirme porque la información es escasa y dispersa, y por eso voy a intentar resumirlo todo en este post.


1. Conseguir una Duinomite
Evidentemente lo primero es conseguir una de las placas, ya que en principio hay 3 distintas:

1. Duinomite-Mini: 19,95 €
2. Duinomite-Mega: 29,95 €
3. Duinomite-eMega: 39,95 €

Yo tengo la Duinomite-Mini y la Duinomite-eMega.

Ni que decir que es el ordenador más barato del mundo. Más que una Raspberry, aunque las prestaciones no son las mismas, ni mucho menos. Vamos, que la Raspberry le da mil vueltas, pero bueno, barato lo es.

Las placas se compran en: https://www.olimex.com/


2. Conseguir el “Z80-Sim”
Lo siguiente es conseguir una versión del emulador de CP/M-80.

El emulador de CP/M 2.2 se puede descargar de: http://www.kenseglerdesigns.com/cms/node/8, y aquí hay un primer enlace “Prebuilt HEX File and CPM 2.2 DSK images For Olimex Duinomite Series “ que nos permite bajar un fichero ZIP que contiene un fichero HEX y dos imágenes de disquetes de CP/M con extensión .DSK.

El fichero HEX se deberá grabar en la memoria Flash del PIC y las imágenes de los disquetes se tendrán que copiar en la raíz de la tarjeta Micro-SD. Pero esto lo dejamos para más tarde.


3. Conseguir el “HIDBootLoader.exe”
Este programa es el que nos permite modificar el firmware de arranque del Duinomite.

Esta parte me costo más aclararme porque en el web del fabricante “Olimex” no aparece, sino que hay que entrar en el web de Duinomite: http://www.duinomite.com.

En la cabecera hay una barra de menú negra. Hay que entrar en “Files / Firmware” y descargarse el fichero “Olimex firmware updater & bootloader hex.zip”, que contiene el programa.


4. Grabar las imágenes de los disquetes
Hay que grabar los dos ficheros con extensión DSK en la tarjeta Micro-SD. Para ello he usado un adaptador y la he conectado al PC.

Atención:
Aquí hay un “pequeño” detalle que me ha costado mucho averiguar que es que los ficheros se deben tener un nombre concreto porque sino no funcionará la instalación.

Así, el fichero “cpm2-1.dsk” se debe renombrar como “drivea.cpm” y el fichero “cpm2-2.dsk” se debe renombrar como “driveb.cpm”.

Como se puede ver, las distintas unidades se llaman “drive”, más la letra que representan, más la extensión “cpm”.
Yo he probado de duplicar los ficheros como “drivec.cpm” y “drived.cpm” y he conseguido hasta 4 unidades, pero no más. Con un “ERA *.*” en estás dos unidades he conseguido tener dos disquetes vacios listos para ser usados.


5. Modificar el firmware
Dando por supuesto que la placa esta alimentada (a través del PC o una fuente de alimentación de 5V) y conectada a un monitor VGA y un teclado PS/2, y que has comprobado que funciona todo correctamente...

Ahora tenemos que seguir los siguientes pasos:

- Descomprimimos los ficheros del ZIP del programa “HIDBootLoader.exe” en una carpeta del PC.

- Descomprimimos los ficheros del ZIP del emulador “Z80-Sim” en otra carpeta del PC.

- El Duinomite debe estar conectado con el cable USB al PC, desde donde se le alimenta.

- Desconectamos la alimentación de la placa, dejamos pulsado el botón “BUT”, volvemos a conectar la alimentación y dejamos de pulsar el botón “BUT”.

Install_4.jpg


- Volvemos a pulsar “BUT” y pulsamos una vez el botón “RST”. A continuación dejamos de pulsar “BUT”.

- Si lo hemos hecho bien, los LED verde y amarillo se encenderán alternativamente.

- Ahora el programa debería detectar el Duinomite.

Install_5.gif
Install_5.gif (26.06 KiB) Visto 362 veces


- En el programa seleccionamos el fichero HEX desde la opción “File” del menú.

- A continuación seleccionamos la opción “Erase/Program/Verify Device” que borra, graba y verifica que el fichero HEX se haya grabado correctamente en la memoria de la Duinomite.

Install_6.gif

Install_7.gif


Una vez finalizado este proceso, se debe desconectar la alimentación y volverla a conectar.


6. Arrancar el CP/M
Al volverla a conectar se debe pulsar el botón “RST” y el CP/M arrancará.

Ignoro porque una Duinomite original arranca directamente al conectarle la alimentación, pero al cambiarle el Firmware necesita que se pulse “RST” para arrancar, pero por lo visto en algún vídeo, parece que es normal.

Install_8.jpg

Install_9.jpg


Haciendo DIR veremos el contenido de la unidad A, que como se puede viene con lo básico del CP/M-80.
Esto es el STAT.COM, PIP.COM, DDT.COM, SUBMIT.COM, DUMP.COM, LOAD.COM, SYSGEN.COM y el ensamblador, linkador, etc.

De todas formas, hay una pequeña diferencia entre este CP/M y cualquier otro que haya visto yo anteriormente: la pantalla funciona en modo texto de 36 filas y 80 columnas, en lugar de las 24/25 filas habituales. A nivel de sistema operativo no hay ningún problema y todo funciona correctamente, pero al ejecutar algunas aplicaciones solo se usan las primeras 25 líneas y las 11 filas inferiores quedan sin uso.


7. Conseguir nuevas imágenes de disquetes
Pues esta es la tarea en la que estoy. Conseguir imágenes con software para alimentar este CP/M.

En la dirección: http://www.autometer.de/unix4fun/z80pack/#download he encontrado una buena cantidad de imágenes de discos y disquetes para el emulador, y los estoy probando.

Las imágenes de disco duro (4MB y 8 MB) no las he conseguido hacer funcionar, pero las de los disquetes si.

Para que las imágenes de los disquetes funcionen es preciso renombrarlas tal y como he comentado anteriormente, y sobretodo deben tener un tamaño exacto: 256.256 bytes. Si el tamaño es distinto el emulador no las reconoce.

Entre otras cosas ya he conseguido hacer funcionar un intérprete de COMAL-80 y el FigFORTH, entre otras cosas.

De todas formas, voy a seguir probando software y a intentar localizar juegos para ver si todo funciona correctamente porque como el modo de acceso a la pantalla del CP/M no está estandarizado hay programas que me dan problemas.

Continuará…

Avatar de Usuario
ron
Mensajes: 17187
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 510 veces
Agradecimiento recibido: 537 veces

Re: Duinomite Mini con CP/M-80

Mensajepor ron » 18 Oct 2013 22:02

f a n t á s t i c o !!!

Vaya post más bueno !!!! Gracias y saludos

jltursan
Mensajes: 1895
Registrado: 20 Sep 2011 13:59
Agradecido : 51 veces
Agradecimiento recibido: 142 veces

Re: Duinomite Mini con CP/M-80

Mensajepor jltursan » 19 Oct 2013 12:57

Es muy interesante. Yo ya conocía el Maximite; pero el hecho de que la única salida de video que generen sea monocroma me hecha bastante atrás. Está el Colour Maximite; pero es pobretón y a mi juicio, algo pasado de precio.

He aprovechado y he estado curioseando en torno a otro engendro de la familia, el shield Gameduino. Se lo puedes pinchar a cualquier Arduino (desde el UNO) o similar y tienes un aparato más que interesante. El caso del Duinomite (el mini, no) es especial ya que creo que es el único que aporta un BASIC que permite usar el Gameduino directamente, los demás tienes que engancharlos a un PC y desde el SDK descargarles el programa, una pena.

La verdad es que es un poco follón, con tanto cacharro y combinación... -wacko2

dancresp
Mensajes: 4993
Registrado: 13 Nov 2010 02:08
Agradecido : 14 veces
Agradecimiento recibido: 83 veces

Re: Duinomite Mini con CP/M-80

Mensajepor dancresp » 20 Oct 2013 21:04

jltursan escribió:Es muy interesante. Yo ya conocía el Maximite; pero el hecho de que la única salida de video que generen sea monocroma me hecha bastante atrás. Está el Colour Maximite; pero es pobretón y a mi juicio, algo pasado de precio.

Cierto que es limitado, pero la verdad es que para lo que lo quiero ya me doy por satisfecho.

Y hay que poner en seguimiento este otro proyecto del mismo tío: implementar un TRS-80 y sus unidades de disco en un Duinomite Mini.
Parece que lo lleva bien...

DuinoMite-Mini-TRSDOS.JPG

Avatar de Usuario
ron
Mensajes: 17187
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 510 veces
Agradecimiento recibido: 537 veces

Re: Duinomite Mini con CP/M-80

Mensajepor ron » 21 Oct 2013 00:49

ufff que bien pinta eso !!! un TRS80 con drives... que modelo exactamente está emulando ?

jltursan
Mensajes: 1895
Registrado: 20 Sep 2011 13:59
Agradecido : 51 veces
Agradecimiento recibido: 142 veces

Re: Duinomite Mini con CP/M-80

Mensajepor jltursan » 21 Oct 2013 10:57

¡Ahi va!, que buena idea :-)

Supongo que irá detrás de un Model I, no creo que le de para mucho más. Para este tipo de placas el Duomite es un cañon (80Mhz, parecido al Maple o al Due); teniendo en cuenta lo que ha avanzado la emulación en estos años, seguro que da de sobras para emular hasta un Model 4.

dancresp
Mensajes: 4993
Registrado: 13 Nov 2010 02:08
Agradecido : 14 veces
Agradecimiento recibido: 83 veces

Re: Duinomite Mini con CP/M-80

Mensajepor dancresp » 21 Oct 2013 12:29

jltursan escribió:¡Ahi va!, que buena idea :-)

Supongo que irá detrás de un Model I, no creo que le de para mucho más. Para este tipo de placas el Duomite es un cañon (80Mhz, parecido al Maple o al Due); teniendo en cuenta lo que ha avanzado la emulación en estos años, seguro que da de sobras para emular hasta un Model 4.

Lo ignoro, el tío no comenta nada, solo muestra la foto y un vídeo.

Dejo el enlace a su página: http://www.kenseglerdesigns.com/cms/node/7

Avatar de Usuario
ron
Mensajes: 17187
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 510 veces
Agradecimiento recibido: 537 veces

Re: Duinomite Mini con CP/M-80

Mensajepor ron » 21 Oct 2013 12:33


dancresp
Mensajes: 4993
Registrado: 13 Nov 2010 02:08
Agradecido : 14 veces
Agradecimiento recibido: 83 veces

Re: Duinomite Mini con CP/M-80

Mensajepor dancresp » 21 Oct 2013 15:16


Por dios, que cuelguen el HEX.

dancresp
Mensajes: 4993
Registrado: 13 Nov 2010 02:08
Agradecido : 14 veces
Agradecimiento recibido: 83 veces

Re: Duinomite Mini con CP/M-80

Mensajepor dancresp » 11 Oct 2014 00:25

Caramba como pasa el tiempo !!! -shock

Ya hace casi un año de este hilo, y aquí sigo, buscando software para alimentar al chiquitín.
Y aunque va costando, poco a poco voy consiguiendo nuevas cosillas.

El principal problema es que el software que usa secuencias de escape para manejar la pantalla no acaba de funcionar bien, ya que por lo visto lleva un tipo de pantalla ANSI, que aparentemente no está normalizado porque el borrado de pantalla lo hace bien, pero otras características, como poner algo en una posición de pantalla no funciona siempre.

Por otro lado, solo soporta un tipo muy concreto de imagen de disquete, que pesa exactamente 256.256 bytes. Cualquier otro tamaño no es reconocido.
Encontrar software en este formato no es fácil, y ahora mismo tampoco conozco ningún software que permita pasar ficheros a estas imágenes, aunque se que existe. Ya caerá...

Así que ahora mismo voy recolectando software que para funcionar no necesita secuencias de escape, que lo hay.

1.- MBASIC-80
Por fin he conseguido el MBASIC con el fuente del programa Star Trek. Como su pantalla es un tanto especial, con una resolución de 38 filas y 80 columnas, cabe más en pantalla, cosa que no va nada mal.

20141010_234955.jpg

20141010_235143.jpg

20141010_235101.jpg


2.- COLOSSAL CAVE ADVENTURE
Por fin he conseguido una copia operativa para CP/M de la primera aventura conversacional.
Al igual que antes, gracias a su resolución, es muy cómodo de jugar.

20141010_235417.jpg


3.- FORTRAN-80
Aquí tengo un compilador de FORTRAN que también funciona perfectamente, gracias a que no incorpora un editor.
Viene con un programa de ejemplo "PI.FOR" que genera lo que veis en la imagen.

20141010_235612.jpg



A parte de estos, he conseguido otras imágenes que estoy acabando de probar y con las que tengo problemas: Turbo Pascal, COMAL-80, ALGOL y Word Star, entre otros.

Próximamente más...

Avatar de Usuario
ron
Mensajes: 17187
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 510 veces
Agradecimiento recibido: 537 veces

Re: Duinomite Mini con CP/M-80

Mensajepor ron » 16 Oct 2014 07:55

Casi se me pasa este nuevo post. Dancresp muy genuino, sacando petroleo del Duinomite


Volver a “Otros Sistemas”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado