En busca del bug en el superupgrade
Moderadores: cacharreo, Fundadores
Reglas del Foro
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente
Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente
Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
-
Scooter
- Demonio tercer orden
- Mensajes: 969
- Registrado: 27 Feb 2014, 11:33
- Ubicación: Alicates
- Has thanked: 1 time
- Been thanked: 12 times
Re: En busca del bug en el superupgrade
Si se añade controladora, se por e la ROM adecuada y listo.
Al margen de que a lo mejor el problema es otro, no le veo sentido inializar el loquesea si no hay un loquesea
Anbiao ende mi parato usando catacrak
Al margen de que a lo mejor el problema es otro, no le veo sentido inializar el loquesea si no hay un loquesea
Anbiao ende mi parato usando catacrak
Solo se que no se nada (algunos no saben eso)
- Sinclair
- Hermano de Lucifer
- Mensajes: 3101
- Registrado: 04 Jul 2013, 23:42
Re: En busca del bug en el superupgrade
El sentido que tiene es la libertad de poder usar cualquier ROM original del +3 y que funcione sin tener que modificar previamente esta. A mi por ejemplo me gusta la version inglesa, y con +3e la version para el IDE de 8 bits. Pero bueno, parece que esto no va a ser posible a no ser que se añada "algo" que rellene el hueco del gate array o ULA.
![Imagen](http://retrocomputing.esy.es/images/FootSign.jpg)
-
Scooter
- Demonio tercer orden
- Mensajes: 969
- Registrado: 27 Feb 2014, 11:33
- Ubicación: Alicates
- Has thanked: 1 time
- Been thanked: 12 times
Re: En busca del bug en el superupgrade
Bueno, si se localiza el tema a lo mejor basta con un buffer triestado y ocho resistencias de pullup o algo así
Anbiao ende mi parato usando catacrak
Anbiao ende mi parato usando catacrak
Solo se que no se nada (algunos no saben eso)
-
wilco2009
- Hermano de Lucifer
- Mensajes: 8156
- Registrado: 01 Abr 2013, 23:47
- Ubicación: Valencia
- Has thanked: 47 times
- Been thanked: 107 times
Re: En busca del bug en el superupgrade
Compañeros, éxito total con las ROMs del +3.
Modificando 2 bytes de la ROM se salta única y exclusivamente la inicialización de los floppies, pero el resto del +3DOS funciona a las mil maravillas, apareciendo la unidad M: y pudiendo utilizarla como unidad de disco.
Ahora toca buscar la modificación equivalente para las ROMs del +3e.
Espero que sea la misma posición para todas las versiones. Si no sacaremos versión parcheada de las más importantes.
De momento, para el que quiera ir probando, solo debe editar con un editor hexadecimal el archivo ROMSET de ejemplo que os dejé el otro día en el manual de montaje y poner a cero las posiciones $16459 y $1645A.
Si lo que queréis es modificar la ROM original sólamente hay que poner a cero las direcciones $2459 y $245A.
Aquí tenéis el enlace a la ROM del +3 parcheada para el superupgrade:
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
Modificando 2 bytes de la ROM se salta única y exclusivamente la inicialización de los floppies, pero el resto del +3DOS funciona a las mil maravillas, apareciendo la unidad M: y pudiendo utilizarla como unidad de disco.
Ahora toca buscar la modificación equivalente para las ROMs del +3e.
Espero que sea la misma posición para todas las versiones. Si no sacaremos versión parcheada de las más importantes.
De momento, para el que quiera ir probando, solo debe editar con un editor hexadecimal el archivo ROMSET de ejemplo que os dejé el otro día en el manual de montaje y poner a cero las posiciones $16459 y $1645A.
Si lo que queréis es modificar la ROM original sólamente hay que poner a cero las direcciones $2459 y $245A.
Aquí tenéis el enlace a la ROM del +3 parcheada para el superupgrade:
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".
Douglas Adams. Guía del autoestopista galáctico.
Douglas Adams. Guía del autoestopista galáctico.
- Sinclair
- Hermano de Lucifer
- Mensajes: 3101
- Registrado: 04 Jul 2013, 23:42
Re: En busca del bug en el superupgrade
Muy buena noticia.
Ahora a por las del +3e que estoy deseando ver funcionar el interface IDE de 8 bits en el gomas![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
Ahora a por las del +3e que estoy deseando ver funcionar el interface IDE de 8 bits en el gomas
![Muy Feliz :D](./images/smilies/sc_jgrin.gif)
![Imagen](http://retrocomputing.esy.es/images/FootSign.jpg)
- antoniovillena
- Demonio segundo orden
- Mensajes: 1596
- Registrado: 02 Abr 2013, 19:06
- Been thanked: 1 time
Re: En busca del bug en el superupgrade
Enhorabuena por encontrar el error. Desgraciadamente no es la misma dirección, en cada ROM cambia.
Por lo que veo cambias el jr c por dos nop, anulando lo devuelto por la rutina DD_INTERFACE. Te puedo enviar las 4 ROMs oficiales parcheadas, más la del +3e ZXMMC. El resto de las +3e es que no las tengo desensambladas.
Código: Seleccionar todo
call m2b64 ; page in page 0
jr c,m2463 ; move on if interface present
ld hl,m24c4
call m24b5 ; display " M:" if no interface
jr m24ae ; move on
m2463 ld a,'A' ; set "A:" as default load/save drive
- antoniovillena
- Demonio segundo orden
- Mensajes: 1596
- Registrado: 02 Abr 2013, 19:06
- Been thanked: 1 time
Re: En busca del bug en el superupgrade
En la ROM se hacen más llamadas a DD_INTERFACE, que es esta simple rutina.
Si necesitas devolver lo mismo en todas las llamadas, puedes cambiar el ccf por un xor a.
Código: Seleccionar todo
; DD_INTERFACE
n1f27 push bc
ld bc,$2ffd
in a,(c) ; read FD status register ($ff if no i/f)
add a,$01
ccf ; carry not set if no i/f
pop bc
ret
- antoniovillena
- Demonio segundo orden
- Mensajes: 1596
- Registrado: 02 Abr 2013, 19:06
- Been thanked: 1 time
Re: En busca del bug en el superupgrade
Ya he visto la explicación en speccy.org. Si también te vale el cambio de ccf a xor a, te sería más fácil parchear las ROMs del +3e. Para ello haces una búsqueda de la rutina entera (sería esta secuencia) en un editor hexadecimal.
Y cambias el 3F por AF.
Código: Seleccionar todo
C5 01 FD 2F ED 78 C6 01 3F C1 C9
-
wilco2009
- Hermano de Lucifer
- Mensajes: 8156
- Registrado: 01 Abr 2013, 23:47
- Ubicación: Valencia
- Has thanked: 47 times
- Been thanked: 107 times
Re: En busca del bug en el superupgrade
Gracias Antonio. Efectivamente es una solución más general ya que incluye cualquier llamada que se haga desde cualquier otro lado.
Entiendo que esa búsqueda de secuencia te sirve para cualquier ROM del +3e ¿no?
Es de suponer que la rutina DD_INTERFACE no es necesario cambiarla ya que corresponde al floppy y no al IDE, por lo que únicamente puede haber cambiado de sitio pero no de contenido.
Entiendo que esa búsqueda de secuencia te sirve para cualquier ROM del +3e ¿no?
Es de suponer que la rutina DD_INTERFACE no es necesario cambiarla ya que corresponde al floppy y no al IDE, por lo que únicamente puede haber cambiado de sitio pero no de contenido.
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".
Douglas Adams. Guía del autoestopista galáctico.
Douglas Adams. Guía del autoestopista galáctico.
- antoniovillena
- Demonio segundo orden
- Mensajes: 1596
- Registrado: 02 Abr 2013, 19:06
- Been thanked: 1 time
Re: En busca del bug en el superupgrade
Sí, sirve para cualquier +3e y el contenido es siempre el mismo puesto que no tiene llamadas a subrutinas ni saltos absolutos.