Primeros pasos con el FM-7

jltursan
Mensajes: 3268
Registrado: 20 Sep 2011 13:59
Agradecido : 309 veces
Agradecimiento recibido: 858 veces

Re: Primeros pasos con el FM-7

Mensajepor jltursan » 01 Jun 2017 19:15

Último mensaje de la página anterior:

Caray, yo es que no lo he enfrentado en absoluto a gran cantidad de líneas; pero esa comparativa que haces es demoledora. ¿Como puede tardar tanto, hablamos de PCs de sobremesa con cierto empaque? -shock

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 01 Jun 2017 21:31

jltursan escribió:Caray, yo es que no lo he enfrentado en absoluto a gran cantidad de líneas; pero esa comparativa que haces es demoledora. ¿Como puede tardar tanto, hablamos de PCs de sobremesa con cierto empaque? -shock

Mi portátil puede ser antiguo, pero lleva un i-7 tiene 4 núcleos y unos 4GB de RAM

El LWASM es mas lento, supongo que hace mas pasadas.
ElASM6809 acepta macros también, pero es rapidísimo.
Pruébalo tu mismo con un programa aunque sea repitiendo muchas veces el mismo código y notarás la diferencia ...
saludos
pere

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 01 Jun 2017 21:44

Otro detalle,
he estado trabajando hace pocos días con Guillaume Major, un experto de CoCo, que acabó probando el ASM6809
y ya no vuelve atrás -507 (antes usaba el LWASM). Trabajamos con su programa SDCX que es una especie de
Total Comander (Comandante Norton para los mas veteranos) que lee la tarjeta del CoCo-SDC en ambas máquinas.
Para las declaraciones de texto permite reducir mucho el texto del fuente al aceptar en una misma linea como bytes (FCB)
tanto caracteres sueltos como cadenas y bytes. Además hay un tipo para cadenas que añade gratis el cero final.
Además para multi-plataforma, las directivas condicionales de ensamblado son mas potentes
Es posible que yo tenga la manía de preferir los productos de colegas de Dragon, pero es que en este caso Ciaran tiene
una trilogía harto peligrosa:
XRoar, ASM6809 y su adaptación del debugger GDB (GNU) que permite debugar desde el PC
Esto sin contar su zip / unzip que funcionan con código 6809, quizá no tan potentes como el Exomizer pero cercano!

saludos
pere

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 02 Jun 2017 21:59

Buenas tardes,
tras desensamblar la ROM del susbsistema del FM-7 y currar de lo lindo para poner etiquetas solamente donde hacen falta
y detectar las áreas de datos y sobretodo las tablas de subrutinas (hay unas 8), me ha llevado cierto tiempo ...
Os adjunto en un zip:
- La ROM original a la que le he cortado los 2048 bytes del juego de caracteres (256x8=2048). Ojo es ROM, o sea sin cabecera!
- El fuente desensamblado que si lo compiláis genera el mismo fichero.
Está repleto de subrutinas, la inmensa mayoría controlado desde donde se llaman pero hay algunas pocas que son del tipo
huérfanas como les llamamos al analizar el Hobbit (fichero Z-80)
Además al final hay un montón de datos que tengo que revisar, igual de ahí sale algo ...
saludos
pere
ROM Subsistema FM-7.zip
(35.17 KiB) Descargado 36 veces

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 02 Jun 2017 23:40

@jltursan
El fuente que he subido antes *NO* compilaba con ASM6809, peor si con LWASM
El motivo es que los finales de linea estaban solo con $0D
Al poner el std $0D,$0A ahora compila en ambos
He tenido que forzar dos puntos a dirección extendida, porque de lo contrario el ASM6809
optimiza direccionamientos y emplea directo para acceder a la página directa.

Ahora puedes compilar en los dos paquetes y comparar tiempos. Este fichero genera 8192 bytes
que tampoco es una exageración. Verás la diferencia entre ambos compiladores, es grande!!

saludos
pere

Pd Adjunto la versión unificada
SSFM709 - unif para ASM6809 y LWASM.zip
(28.63 KiB) Descargado 37 veces

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 06 Jun 2017 22:28

Buenas tardes/noches
He estado peleándome con el desensamblado de la ROM del subsistema y menos petróleo, algo he encontrado.
Había una parte en la última versión que parecía código (no muy útil ...) y que al estudiarlo mas a fondo ha resultado ser
una tabla de rutinas (solo tres), pero desaparece el código raro y se reduce alguna entrada huérfana.

He añadido al principio las constantes que utiliza el programa, o sea
- Areas de RAM (pagina directa) - Poco se puede hacer, solo esperar que al ir comentando rutinas se les pueda poner nombre
- Area comun - Aquí se ven los bytes que comentaba jltursan para comunicación de CPU a SS
- Area de I/O - Estos puertos habría que saber a que se conectan .... teclado, RS-232, Impresora, etc (no son muchos)

El bucle principal espera un comando y acepta 32 distintos, uno de los cuales es el $3F (mantenimiento), pero el resto
habrá que investigar que hacen ... podrían ser útiles -thumbup
De momento he comentado el código relacionado con el comando de mantenimiento, de forma que se puede entender
lo que hace cada uno de los subcomandos ...
Adjunto, pues, nueva versión del fuente desensamblado. Sigue generando al compilar un binario idéntico al original, o sea
que todavía no me lo he cargado, pero estoy en ello -507
Si alguien tiene tiempo y paciencia para mirar algunos párrafos y puede llegar a añadir comentarios, que NO se corte, que lo haga
y a compartirlo aquí, por favor -drinks
saludos
pere
SSFM714 - comentada rutina mantenimiento.zip
(30.34 KiB) Descargado 27 veces

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 00:21

Increíble,
tenemos información de los otros 31 comandos ... Solo hay que traducir correctamente esta página
http://web.archive.org/web/200611161236 ... c3.htm#TOP
Puede verse el formato del comando, lo que sorprende es que en algunos casos a esta descripción le sigue otra que
debería ser la respuesta del SubSistema, pero es muy grande ... igual es lo correcto, pero me ha sorprendido!
Como muestra, ver lo que sigue al comando GET que viene tras el PUT que parece claro.
¿Qué os parece esta parrafada?

Imagen
GET command.jpg
(426.03 KiB) No descargado aún

saludos
pere

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 13:01

@jltursan, minter
Visto que ya hemos encontrado los otros 31 comandos que ofrece el subsistema, necesitamos una traducción lo mas exacta
posible de esta página web:
http://web.archive.org/web/200611161236 ... c3.htm#TOP

Si miráis el "jpg" que adjunté en mi anterior mensaje, veréis que dice que el comando GET puede solicitar como máximo 124
caracteres. Sin embargo, en la respuesta del SS (justo debajo) se ve que utiliza 8 bytes (del 0-7) por lo que le quedan como mucho 120
caracteres hasta el final del área común (longitud 128 bytes). ¿Cual es correcto? ¿124 ó 120?
Esto ya no es un tema de traducción, sino que requiere que alguien que conozca el sistema (tal vez malikto999) nos de su
opinión al respecto.
De momento voy a ir añadiendo la estructura de datos de cada comando junto con la respuesta del SS en la cabecera de cada
rutina que se encarga de despachar dicho comando. Va a ser un palo, pero puede ser de gran ayuda a la hora de comentar y
estudiar lo que hace el subsistema para cada comando.

saludos
pere

Avatar de Usuario
minter
Mensajes: 3232
Registrado: 22 Jul 2014 18:51
Agradecido : 3805 veces
Agradecimiento recibido: 1537 veces

Re: Primeros pasos con el FM-7

Mensajepor minter » 07 Jun 2017 16:50

pser1 escribió:necesitamos una traducción lo mas exacta
posible de esta página web:
http://web.archive.org/web/200611161236 ... c3.htm#TOP

Si miráis el "jpg" que adjunté en mi anterior mensaje, veréis que dice que el comando GET puede solicitar como máximo 124
caracteres. Sin embargo, en la respuesta del SS (justo debajo) se ve que utiliza 8 bytes (del 0-7) por lo que le quedan como mucho 120
caracteres hasta el final del área común (longitud 128 bytes). ¿Cual es correcto? ¿124 ó 120?
Esto ya no es un tema de traducción, sino que requiere que alguien que conozca el sistema (tal vez malikto999) nos de su
opinión al respecto.


He enviado la pregunta a malikto. Ahora a esperar, que vive en el otro lado del mundo y seguro que ahora está durmiendo.

Respecto a las traducciones, me he percatado que es mejor traducir al inglés que al español. Falla mucho menos. O al menos, tiene más sentido lo que dice.
El problema es que el EDGE se me ha negado a seguir traduciendo. He buscado por muchas páginas en japones y ahora no quiere traducir más.
Estoy buscando la revista Oh!FM de mayo del 85. Creo que tiene alguna descripción del subsistema. Pero está siendo una tarea dura encontrar esa revista. Por otra parte, luego es capturar con OCR y pasar un traductor. Cosa que he hecho con el libro de ASM del FM. Pero no saco información más allá de lo que puede dar un libro de 6809.
Es increible que exista tanto soft y nos cueste tanto encontrar información.
Para Japón, empleo el yahoo.jp y el google.jp
Pero debe de ser que los japoneses tienen otro buscador preferido.
Me extraña mucho que no exista una página o foro de gente programando en ensamblador para Fujitsu.
Sigo buscando.

El desemsamblado de la ROM... veo etiquetas, llamadas... pero no veo nada claro.
Para esto, soy incapaz. -banghead
Adjuntos
ASM FM7 OCR.rar
(9.6 MiB) Descargado 235 veces

Avatar de Usuario
minter
Mensajes: 3232
Registrado: 22 Jul 2014 18:51
Agradecido : 3805 veces
Agradecimiento recibido: 1537 veces

Re: Primeros pasos con el FM-7

Mensajepor minter » 07 Jun 2017 16:53

Caramba!!!
In addition to Mr. Nomuras report. During game programmers there was famous "Hidden" feature.
The performance of FM-8 was not so excellent as many people expected. Dual CPU concept was bottleneck. When main CPU stores command code to shared memory, sub CPU get halt. Sub CPU restarts and start drawing. Problem was size of shared memory; 128 bytes are too small to store massive graphic requests. That is, FM series are not appropriate for hobby use.
However, One of BIOS programmer, Mr.Yamauchi in Fujitsu Ltd. left several hidden commands in sub-system BIOS, which is called YAMAUCHI command. These command permitted us to transfer large binary programs to reserved memory space and JMP! After unveiled this hacking technique, FM series are known to their performance in games.


Que listos! -banghead

Avatar de Usuario
ron
Mensajes: 19399
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2318 veces
Agradecimiento recibido: 2107 veces

Re: Primeros pasos con el FM-7

Mensajepor ron » 07 Jun 2017 17:07

Lo que si que es de sacar petroleo es lo que dije en el post del Bruce Lee para FM7.
El Sr PSER1, me dijo en su momento " ya tengo FM7 " !!! y sin duda en cuanto le pusiera la zarpa encima estaba claro que le iba a sacar algo más que petroleo. Es por eso que estos hilos han de servir de motivación para que se vea que una máquina japonesa aunque con arraigo español existe y que es lo que se puede hacer con ella y hasta donde se puede llegar.

Con una máquina que es una perfecta desconocida para la gran mayoría. Son muchos los micros que todavía están en el limbo de las máquinas, por eso resaltar lo importante de estos hilos para aprender si cabe, todo lo posible.

Estáis haciendo retroarquelogía y redescubrientos más que sorprendentes. Gracias por ayudar a que todos podamos conocer mejor el FM7

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 17:13

minter escribió:El desemsamblado de la ROM... veo etiquetas, llamadas... pero no veo nada claro.
Para esto, soy incapaz. -banghead

No te preocupes por ésto, si no te has peleado largo y tendido con desensamblados de 6809, se hace muy difícil tratar de comprenderlos
así, sin anestesia -507
Pero con paciencia y tenacidad llegaremos a tener información bastante completa por lo que parece. No vamos nada mal. Para mi gusto en
los pocos días que llevamos se han abierto muchas esperanzas!

Yo sigo con el trabajo de añadir las estructuras de comandos, ya me faltan solamente unas 8 sobre 31 ...
Lo malo es que las explicaciones (traducciones) en algunos comandos dejan tanto que desear que prácticamente no se entiende ni jota
de lo que escriben -nb

En fin, esperemos que malikto999 nos pueda echar un cable en la traducción de los comandos del subsistema

saludos
pere

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 17:21

minter escribió:Caramba!!!
In addition to Mr. Nomuras report. During game programmers there was famous "Hidden" feature.
The performance of FM-8 was not so excellent as many people expected. Dual CPU concept was bottleneck. When main CPU stores command code to shared memory, sub CPU get halt. Sub CPU restarts and start drawing. Problem was size of shared memory; 128 bytes are too small to store massive graphic requests. That is, FM series are not appropriate for hobby use.
However, One of BIOS programmer, Mr.Yamauchi in Fujitsu Ltd. left several hidden commands in sub-system BIOS, which is called YAMAUCHI command. These command permitted us to transfer large binary programs to reserved memory space and JMP! After unveiled this hacking technique, FM series are known to their performance in games.

Que listos! -banghead

Ya tardaron en darse cuenta, verdad?
Lo cierto es que parece increíble diseñar una máquina con doble CPU, tres capas para gráficos y conformarse con utilizar un área común
de solamente 128 bytes, ya es delito,ya!
Por cierto el código YAMAUCHI no se valida en los FM-7. La ROM muestra que estos caracteres se obvian siempre!
Por otro lado la mayoría de comandos tienen un campo de continuación que habrá que explorar si se puede utilizar para enviar varios bloques
consecutivos de datos (o recibirlos)
saludos
pere

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 17:29

@minter,
El zip que has puesto en tu mensaje, que contiene la función GET
sigue llevando la incongruencia de decir que se pueden requerir 124 bytes (protocolo envio, arriba)
mientras que el subsistema nos devolverá solamente 120 bytes (protocolo respuesta, abajo)
y la traducción parece la misma que yo puse en el mensaje anterior al tuyo.
¿Debería ver alguna diferencia?
muchas gracias
pere

Avatar de Usuario
minter
Mensajes: 3232
Registrado: 22 Jul 2014 18:51
Agradecido : 3805 veces
Agradecimiento recibido: 1537 veces

Re: Primeros pasos con el FM-7

Mensajepor minter » 07 Jun 2017 18:51

pser1 escribió:@minter,
El zip que has puesto en tu mensaje, que contiene la función GET
sigue llevando la incongruencia de decir que se pueden requerir 124 bytes (protocolo envio, arriba)
mientras que el subsistema nos devolverá solamente 120 bytes (protocolo respuesta, abajo)
y la traducción parece la misma que yo puse en el mensaje anterior al tuyo.
¿Debería ver alguna diferencia?
muchas gracias
pere

Pues no lo se.
Es la respuesta que estoy esperando de malikto. Veamos mañana a ver si nos despeja las dudas.
Mientras tanto, he mirado el manual de las especificaciones y parece ser que hay discrepancias entre el PUT y el GET.
La cadena del PUT es de 124 y la del GET de 120
Voy a subir el manual con el OCR pasado para que podamos traducir con el copy paste.
Luego, iré traduciendo por capítulos lo que se pueda. El archivo original le falta un poco de definición para poder interpretar correctamente los símbolos.
Pero copiando y pegando, algo podremos sacar.
-banghead
Adjuntos
FM-7 especificaciones 1982 OCR.rar
(11.11 MiB) Descargado 900 veces

Avatar de Usuario
pser1
Mensajes: 3044
Registrado: 08 Dic 2012 18:34
Agradecido : 722 veces
Agradecimiento recibido: 788 veces

Re: Primeros pasos con el FM-7

Mensajepor pser1 » 07 Jun 2017 19:33

una vez finalizada la entrada de las estructuras de datos de los 32 comandos para los que el Subsistema dispone de rutinas,
actualizo el fuente desensamblado, ahora en versión 17.
Ahora algunas variables de la página directa podrían pasar a tener nombre descriptivo.
Veremos hasta donde se puede llegar con esta información.
Es tentador hacer un programa que vaya enviando mensajes (comandos) uno a uno de los 32 hasta ahora conocidos
para ver que es lo que sucede. Para algunos no está nada claro que parámetros hay que pasar, pero se podría ir probando!

saludos
pere
SSFM717.ZIP
(34.07 KiB) Descargado 38 veces

jltursan
Mensajes: 3268
Registrado: 20 Sep 2011 13:59
Agradecido : 309 veces
Agradecimiento recibido: 858 veces

Re: Primeros pasos con el FM-7

Mensajepor jltursan » 07 Jun 2017 20:29

Lamentablemente me estoy teniendo que llevar trabajo a casa y mi tiempo (y salud) no me permiten demasiada dedicación al hobby. Hay mucha tela que cortar, más a más cuando ya tenemos una herramienta gracias a Malik999 (casi) totalmente entendible :-)

En primer lugar, aquí tenéis información que he podido adecentar un poco y que creo que podrá ser muy útil, especialmente para ayudar a que el peazo desensamblado cobre sentido:

Código: Seleccionar todo

*
* Definición de Constantes (Área de I/O principal)
*
KEYDAT     EQU $ FD01 * Key data register
SUBMODE    EQU $ FD04 * subsystem mode register
SUBSIN     EQU $ FD05 * subsystem interface register
BANKSEL    EQU $ FD0F * ROM / back RAM selection register
INITDIS    EQU $ FD10 * Initiate ROM disable register
FDCSTAT    EQU $ FD18 * FDC status register
FDCCMD     EQU FDCSTAT   * FDC command register
FDCTRACK   EQU $ FD19 * FDC track register
FDCSECTOR  EQU $ FD1A * FDC sector register
FDCDATA    EQU $ FD1B * FDC data register
FDDSIDE    EQU $ FD1C * FDD side register
FDDDRIVE   EQU $ FD1D * FDD drive register
FDDMODE    EQU $ FD1E * FDD mode register
FDDDRQ     EQU $ FD1F * FDC DRQ / IRQ register
JSYNCR     EQU $ FD28 * Japanese Sub Sync Register (R)
JRCBR      EQU $ FD29 * Japanese sub RCB register (R)
JSYNCW     EQU $ FD2A * Japanese sub synchronization register (W)
JRCBW      EQU $ FD2B * Japanese sub RCB register (W)
MMR        EQU $ FD80 * MMR memory mapping register
MSGR       EQU $ FD90 * MMR segment register
MMSR       EQU $ FD93 * MMR mode select register

*
* Definición de Constantes (Área de I/O secundaria)
*
SUBMODEL4 EQU $D405 * Sub mode register (L4)
CRTDSP    EQU $D408 * CRT ON/OFF register
VACC      EQU $D409 * VRAM access flag

*
* Definición de Constantes (Subsistema Japonés)
*
JSRCBAREA   EQU $9F00 * RCB communication area with main
JSDICBNK    EQU $9FFF * Dictionary Bank Register


Las referencias al subsistema japonés podrían ser obviadas ya que hacen referencia seguramente a áreas de memoria sólo válidas cuando se usa la tarjeta con la ROM Kanji.

Respecto al comentario acerca de los 6309, al parecer la sincronización y la temporización entra la CPU y la subCPU es tan crítica que es imposible cambiar uno de los 6809 por un Hitachi. ¿Sería posible cambiando los dos?, la verdad es que no lo sé, es posible que me plantee la carnicería y lo acabe haciendo en mi FM-7 sólo por el gusto de probar.
En principio en Japón se llegó a disponer de una tarjeta especifica para albergar el procesador (de forma similar a la tarjeta que alberga el Z80 y que permite ejecutar el CP/M). Os dejo unos enlaces con esta delicatesen; en perfecto japonés, claro:

http://www.yk.rim.or.jp/~tvn/fm/fm7/63c09.html
http://asakita.net/kabekin/2015/09/13223.html

Por cierto, suscribo lo que comenta minter acerca de las traducciones al castellano. Creo que ya comentamos por el hilo que hay que traducir siempre al inglés, está mucho más trabajado (pero mucho) que el castellano. Y otra cosa que os puedo añadir, todavía se mejora más la comprensión si en el caso de párrafos no se solicita la traducción del párrafo completo sino de únicamente una frase cada vez.

Intento seguiros... -drinks


Volver a “Fujitsu FM7”

¿Quién está conectado?

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