Programando firmware DIVIDE

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

Programando firmware DIVIDE

Notapor Rafa el Mie Nov 04, 2015 6:02 pm

Hola, quería saber si conoceis algún tipo de manual técnico o página donde se relate el uso interno a nivel de software del Divide, quiero decir, cómo acceder a él, cómo intercambia la ROM, etc.

Intento programar variaciones de su firmware, porque veo que tiene mucho potencial.

Gracias.
RANDOMIZE USR 0
Avatar de Usuario
Rafa
Jack The Nipper
 
Mensajes: 181
Registrado: Lun May 07, 2007 11:59 am

Re: Programando firmware DIVIDE

Notapor Rafa el Jue Nov 05, 2015 9:07 pm

¿ De verdad nadie sabe nada ?
RANDOMIZE USR 0
Avatar de Usuario
Rafa
Jack The Nipper
 
Mensajes: 181
Registrado: Lun May 07, 2007 11:59 am

Re: Programando firmware DIVIDE

Notapor Kyp el Vie Nov 06, 2015 12:43 am

En la web de velesoft tienes los fuentes del FATware 0.14. Es lo más parecido a algo de información que he visto:
http://velesoft.speccy.cz/zx/divide/divide-fatware.htm

Al final de la página hay un ZIP con los fuentes.

Los del esxdos no son públicos de momento.
Avatar de Usuario
Kyp
Manic Miner
 
Mensajes: 210
Registrado: Lun Dic 16, 2013 7:16 pm

Re: Programando firmware DIVIDE

Notapor Rafa el Vie Nov 06, 2015 10:48 am

Gracias. A estudiar toca.

En los ESXDOS será parecido el control del puerto de acceso, paginación de RAM, etc.

Desensamblando el ESXDOS compruebo que todo el control lo lleva el puerto 227, dependiendo del valor que se meta, se puede hacer una cosa u otra.
RANDOMIZE USR 0
Avatar de Usuario
Rafa
Jack The Nipper
 
Mensajes: 181
Registrado: Lun May 07, 2007 11:59 am

Re: Programando firmware DIVIDE

Notapor Kyp el Vie Nov 06, 2015 2:38 pm

Yo no me he metido a ver como funciona el ROM del DivIDE pero si he investigado el hardware para implementarlo en una FPGA para mi clon ZXpp.

Esto es lo que he deducido por el momento. No es seguro al 100%.

Efectivamente, puerto de control parece ser el 227 (E3).

Los 16K de ROM se dividen en dos páginas de 8. La primera mapea los 8K de ROM (fatware o esxdos) y en la segunda se mapean páginas de RAM.

Los bits 0 a 3 seleccionan la página. Dependiendo de si es un DivIDE (¿32K?) o un DivMMC (¿128K?) tienes más o menos páginas.

Al bit 6 le llaman mapram_mode y al 7 conmem. No se muy bien que hacen.

La lógica de la placa mapea la ROM/RAM en el sigiente ciclo cuando se lee una instrucción (M1 = 0) en las direcciones 0000, 0008, 0038, 0066, 04C6 y 0562 (reset, error, nmi, load, save... ???).

Si se lee una instrucción en la dirección 3Dxx se mapea inmediatamente.

Se desmapea en el ciclo siguiente tras leer una instrucción en la dirección 03FF.

Cuéntanos tus progresos :wink:
Avatar de Usuario
Kyp
Manic Miner
 
Mensajes: 210
Registrado: Lun Dic 16, 2013 7:16 pm

Re: Programando firmware DIVIDE

Notapor mcleod_ideafix el Vie Nov 27, 2015 1:59 am

Rafa escribió:¿ De verdad nadie sabe nada ?

El modelo de programación está perfectamente documentado. Tanto los puertos de control de paginación, autopaginación y acceso a la RAM, como los puertos para manejar la interface IDE.
http://www.divide.cz/files/info/pgm_model.txt
Web: ZX Projects | Twitter: @zxprojects
Avatar de Usuario
mcleod_ideafix
Johnny Jones
 
Mensajes: 3960
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera

Re: Programando firmware DIVIDE

Notapor Kyp el Lun Nov 30, 2015 11:37 am

Muy interesante, muchas gracias :) :) :)
Precisamente lo que había escrito en mi anterior mensaje lo había 'deducido' examinando el core del ZX-Uno :roll: :roll: :roll:
Avatar de Usuario
Kyp
Manic Miner
 
Mensajes: 210
Registrado: Lun Dic 16, 2013 7:16 pm

Re: Programando firmware DIVIDE

Notapor mcleod_ideafix el Mar Dic 01, 2015 1:26 am

Kyp escribió:Muy interesante, muchas gracias :) :) :)
Precisamente lo que había escrito en mi anterior mensaje lo había 'deducido' examinando el core del ZX-Uno :roll: :roll: :roll:

El cuál escribí (la parte que maneja DivMMC) precisamente leyendo el documento que os he puesto ;)
Web: ZX Projects | Twitter: @zxprojects
Avatar de Usuario
mcleod_ideafix
Johnny Jones
 
Mensajes: 3960
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera

Re: Programando firmware DIVIDE

Notapor Goody el Mie Ene 20, 2016 11:20 pm

Tios, no entiendo de electrónica ni programación...

El caso es que tengo un Div-MMC y bueno, por algún motivo me da fallos en los gráficos y hay juegos que no parecen funcionar bien.

¿Recuerdan las pantallas de carga de los juegos que cuando había un error aparecían con colores cambiados y cuadros parpadeando? Pues eso es lo que me ocurra con el Div-MMC pero a mitad de partida.

Otras veces el juego se bloquea al perder una vida, me pasa con el Renegade, lo gracioso es que el juego venía, entre otros, con la tarjeta SD que traía el aparato cuando lo compré. Quiero decir que el aparato debe estar mas que probado con dichos juegos ¿No?

Otros juegos reinician en ordenador tal como se cargan. Tengo un +2B

¿Que puede ser?

¿Avería del Div-MMC o el Spectrum? No consigo cargar juegos por cinta para poder descartar problemas del ordenador.

También os digo que no sé muy bien cómo poner los interruptores de Div-MMC.

Torpe que es uno. :?
Ultima edición por Goody el Jue Ene 21, 2016 2:32 pm, editado 1 vez en total
En los 80 España fue potencia mundial en la creación de videojuegos compitiendo con Reino Unido que contaba con mucha mayor infraestructura.
Avatar de Usuario
Goody
Freddy Hardest
 
Mensajes: 562
Registrado: Mar Ago 27, 2013 6:59 pm

Re: Programando firmware DIVIDE

Notapor carmeloco el Jue Ene 21, 2016 10:02 am

Yo diría que parece más una avería del Spectrum. Probar el DIVMMC en otro spectrum confirmaría o descartaría esto.
¿Quieres un ZX-Uno? puedes comprarlo en:
viewtopic.php?f=12&t=4991
Avatar de Usuario
carmeloco
Sabreman
 
Mensajes: 396
Registrado: Vie Mar 21, 2008 9:24 pm

Re: Programando firmware DIVIDE

Notapor Goody el Jue Ene 21, 2016 2:35 pm

carmeloco escribió:Yo diría que parece más una avería del Spectrum. Probar el DIVMMC en otro spectrum confirmaría o descartaría esto.



Si, imagino, pero me temo que sólo tengo un Spectrum. :?

Ya que los compañeros del foro parecen controlar bastante de programación...

¿Exite la posibilidad de ejecutar alguna orden que me haga un test de hardware???

A todo esto: Gracias por responder.
En los 80 España fue potencia mundial en la creación de videojuegos compitiendo con Reino Unido que contaba con mucha mayor infraestructura.
Avatar de Usuario
Goody
Freddy Hardest
 
Mensajes: 562
Registrado: Mar Ago 27, 2013 6:59 pm

Re: Programando firmware DIVIDE

Notapor zup el Jue Ene 21, 2016 3:24 pm

Hay alguna ROM para IF2 que puede hacerlo, lo que no sé es si está disponible para ejecutarla en el divide.
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start...
zup
Freddy Hardest
 
Mensajes: 578
Registrado: Vie Ago 15, 2008 2:43 pm

Re: Programando firmware DIVIDE

Notapor carmeloco el Jue Ene 21, 2016 5:47 pm

Yo ahora ando liado haciendo unos interface rom externos, precisamente con roms de diagnostico. He intentado hacer un snapshot .Z80 (para cargarlo con el DIVMMC) con una rom cargada en un emulador, pero el resultado no es bueno.

Si no recuerdo mal, el +2B, lleva un test interno. He leido por ahí que, tras sacar la carta de ajuste (reset+break) pulsando simultáneamente QAZPLM sale el test, pero no consigo hacerlo en un emulador.
¿Quieres un ZX-Uno? puedes comprarlo en:
viewtopic.php?f=12&t=4991
Avatar de Usuario
carmeloco
Sabreman
 
Mensajes: 396
Registrado: Vie Mar 21, 2008 9:24 pm

Re: Programando firmware DIVIDE

Notapor Kyp el Jue Ene 21, 2016 11:38 pm

No te funciona en el emulador porque la mayoría de los teclados de PC no permiten pulsar a la vez todas esas teclas. Pruébalo en el Spectrum que funcionará.
Avatar de Usuario
Kyp
Manic Miner
 
Mensajes: 210
Registrado: Lun Dic 16, 2013 7:16 pm

Re: Programando firmware DIVIDE

Notapor Goody el Jue Ene 21, 2016 11:39 pm

Mmm

Suena interesante, lo probaré este finde.

Espero que no se haya estropeado algo, de todas formas los chips de este Spectrum creo que son desmontables por lo tanto, imagino que será relativamente fácil de reparar si fuese el caso.

Pero lo primero es ver qué falla.

A todo esto:

En el menú de opciones característico de este modelo de Spectrum, al pulsar los cursores la barra de selección se desplaza haciendo un sonido típico.

Pues bien, resulta que dejando el ordenador tal cual, sin tocar nada, de vez en cuando se oye ese sonido sin venir a cuento de nada.

Cuando esto ocurre la barra de selección se queda en su sitio, quiero decir que no es que se haya quedado una tecla pulsada ni nada de parecido. El teclado responde bien.

Y ya por último, pesnsaba que el problema del caset era debido a que el azimut (O como se llame) no debía estar bienajustado pero visto lo visto no sé qué pensar.

El caso es que me he pegado bastante tiempo sin usar mi Spectrum y ahora que lo he vuelto a usar me he encontrado con estos problemas. :(
En los 80 España fue potencia mundial en la creación de videojuegos compitiendo con Reino Unido que contaba con mucha mayor infraestructura.
Avatar de Usuario
Goody
Freddy Hardest
 
Mensajes: 562
Registrado: Mar Ago 27, 2013 6:59 pm

Siguiente

Volver a Programación y nuevos desarrollos

¿Quién está conectado?

Usuarios navegando este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron