IBM AS400, S23 o S36 - Mini-blog

Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

cacharreo escribió: 08 Sep 2024 20:49 Sospecho que tanto una cosa como la otra serán una fuente de satisfacción personal para ti por lo que todo el esfuerzo merecerá la pena.
No te equivocas. Me siento satisfecho cada vez que aprendo cosas nuevas sobre el bicho. Pero hace unos días hasta me emocioné cuando alguien que buscaba ayuda encontró mis materiales y los pusieron como referencias - nunca he destacado en nada, así que me alegra mucho que aprecien mi trabajo. Luego se pusieron en contacto conmigo y ahora estamos depurando. -drinks
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Estoy empezando a escribir un driver de MAME que implemente el System/23. Sería el primer emulador disponible sobre la máquina. He recibido instrucciones sobre como hacerlo, y creo que voy a estar a la altura de este desafío. Pero una cosa es decir y otra hacer, así que ya os iré informando sobre el progreso.

Feliz Navidad!
Avatar de Usuario
cacharreo
Mensajes: 2286
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/
Has thanked: 457 times
Been thanked: 852 times

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por cacharreo »

Suerte en el desempeño. -thumbup

Feliz navidad.
© cacharreo
mvalder
Mensajes: 1638
Registrado: 21 May 2023 02:04
Has thanked: 957 times
Been thanked: 604 times

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por mvalder »

Asombrosa historia. Mucha suerte con el emulador y Feliz Navidad.
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Gracias a todos

Hoy tengo novedades en el frente del firmware.
Apareció otro usuario nuevo con ROMs estropeadas, y mirando los backups no encontraba la referencia. Pregunté a otro usuario con el que mantengo contacto (estoy intentando crear comunidad) y me pasó su listado de roms. Entonces me dí cuenta que de cuatro listados que tenía, todos diferían en algo. Hoy he podido determinar con los datos de los que dispongo que hubo al menos seis romsets diferentes para el Datamaster, basados en dos configuraciones básicas y que luego se fueron corrigiendo. También me he encontrado en uno de ellos con que no dispone de dieciséis ROMs sino catorce. Un caos para la conservación... Y mientras tanto las ROMs sin backups. Queda mucho trabajo por realizar.

EDITO:
Tras revisar la lista me he encontrado con un error tras el cual se ha podido reducir el número de listados únicos a cinco. -thumbup
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Ayer empecé con la construcción de un clon del Datamaster. Hoy me he puesto con él un rato y he podido sacar adelante el bus de datos de la máquina, entre otras cosas.

Imagen

Si mañana tengo tiempo, me gustaría tirar adelante el bus de direcciones del procesador, dejando el bus de direcciones del controlador DMA para más adelante.

El montaje habría de ocupar tres placas: una con la CPU y la DMA, que es la que está fotografiada; otra con la memoria fija, 16KB de ROM, 16KB de RAM, y el sistema de interrupción TRAP; finalmente una tercera con los 8255 que el sistema usa como dispositivos principales de entrada/salida. Con estos elementos debería ser capaz de llevar el clon al test 05, dónde se quedaría clavado por falta de un 8275 (en el test 05 el System/23 simula un lápiz óptico, entre otras cosas).

Ya os iré contando cómo va el trasto.

Saludos
Adjuntos
20250208_195902.jpg
(737.43 KiB) No descargado aún
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

He estado jugando con las imágenes de System/23 últimamente. Con ello he podido parsear el IMD. Luego he parseado el formato de intercambio estándar de IBM, con el que he podido extraer algunos ficheros. Sin embargo, parece que el sistema de archivos propios del Datamaster residen en unos archivos llamados SYSLABEL y SYSDATA. Aún no he podido lidiar con la estructura de SYSLABEL, aunque he descubierto algunas cosas del tipo de registro 1 (ficheros). Por lo que respecta a SYSDATA pude localizar un programa de BASIC que mi padre escribió en el Datamaster y pude extraerlo sin problemas.

Ahora estoy investigando como poder establecer la relación entre ambos archivos para automatizar la extracción de los datos. Si lo consigo podré extraer los binarios y analizarlos. También podré extraer los archivos de datos y posiblemente convertirlos. Y una vez termine con esto, tal vez haga lo mismo con el System/36, pues el formato básico también se basa en el formato de intercambio de IBM.

Sabiendo como funciona el formato de intercambio básico técnicamente podría cargar cualquier floppy de IBM desde el System/34 hasta el AS/400, incluyendo el Displaywriter. Si alguien de por aquí tuviera un midrange de esos o un Displaywriter y quisiera colaborar, estaría encantado de compartir mi código.

Saludos!
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Durante el día de ayer descubrí parte de la estructura de SYSLABEL y he podido descubrir la relación entre ambos ficheros. Eso me permitió ayer extraer cuatro ficheros de BASIC almacenados en el sistema de ficheros del System/23. Esos cuatro archivos son programas de prueba que incluímos progresivamente en el disquette para observar cambios, de forma que tenemos cinco imágenes del disquette.

He probado con otro disquette, el de entrenamiento y parece que funciona, pero necesita un poco más de pulido porque en el de BRADS3 me peta el programa, cosa que significa que algo debo de estar pasándome por alto.

El formato de BASIC del System/23 es en texto plano, EBCDIC, con salto de línea con valor de 0x15.

Ahora me toca extraer los archivos binarios y los de datos.

Saludos!
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

He publicado el código fuente de mis dos programas de extracción, bajo licencia GPLv3.

Extractor de ficheros desde formato de intercambio
Extractor de ficheros desde sistema de archivos de System/23

Para los que tengan otros midranges/minis, sepáis que mi primer programa puede extraer ficheros de casi todo midrange IBM y hasta ha podido con alguno de PDP-11.

¿No sabrá alguien por casualidad dónde encontrar IMDs de floppies de System/38 y AS/400?

Gracias de antemano!
Avatar de Usuario
Linux-RISC
Mensajes: 199
Registrado: 16 Mar 2019 09:41
Has thanked: 272 times
Been thanked: 150 times

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por Linux-RISC »

@WhatIsAMan, eres un p*to genio !!
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Linux-RISC escribió: 14 Mar 2025 12:38 @WhatIsAMan, eres un p*to genio !!
No es para tanto. Mi código es muy sucio y además estoy limitado a Java en muchos aspectos. No le veo mucho futuro a la cosa, por lo que estoy intentando pasarlo a C++, pero como no me conozco este lenguaje lo estoy pasando un poco mal.

Me gustaría crear una librería que me permitiera gestionar los ficheros imd del mismo modo que lo hago en Java. Con CMake puedo compilarlo para las tres grandes plataformas de escritorio y de este modo lograr un uso multiplataforma. Más tarde, crear algun programa con interfaz de usuario para gestionarlo.

He probado con flutter, pero no hay manera de que me funcione del SDK... Recordaba que era problemático pero se me olvidó cuánto lo era.
issalig
Mensajes: 179
Registrado: 17 Feb 2021 23:24
Has thanked: 133 times
Been thanked: 132 times

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por issalig »

Prueba con vscode y la extensión de copilot y pídele que lo convierta a C++ o lo que tú quieras. Seguramente no lo clave pero te acercará bastante.
En su defecto chatgpt desde la web también te puede ayudar
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

No sé... creo que prefiero colaborar con alguien y aprender que no ir depurando un código que no sé de dónde ha salido...

De hecho ya usé IA la primera vez que intenté ponerme con el emulador del System/23 y fue un desastre.

EDITO: GePeTo no me está ayudando... es una IA muy perezosa.
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Creo que para mañana pueda tener la librería casi lista para su uso en programas de C++. Sin embargo el proyecto de CMake no me genera el fichero .lib que necesito para interactuar con la dll que actualmente genero.

¿Alguna idea al respecto?

Gracias de antemano
Avatar de Usuario
WhatIsAMan
Mensajes: 1327
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Has thanked: 411 times
Been thanked: 547 times
Contactar:

Re: IBM AS400, S23 o S36 - Mini-blog

Mensaje por WhatIsAMan »

Nada, ya conseguí vincular la librería con el resto del proyecto. Tabién he logrado implementar la función de carga desde IMD y el método de identificación de disco. Ahora toca recrear los procedimientos de extracción de datos para IBM y ECMA. Pronto llegaré al mismo punto dónde llegué con Java, eso sí, sin interfaz de usuario. Seguramente voy a usar wxWidgets para servir la UI. He visto que hay Qt, pero la licencia no me gusta para nada y requiere registro.

EDITO:
Creo que es mejor abrir otro hilo para esto.
Responder

Volver a “No Catalogados”