Esto de la NMI especial es una buena cosa, pero esta claro que le falta testing. Espero que mis pruebas sirvan de ayuda para arreglarlo
![Smile :-)](./images/smilies/icon_e_smile.gif)
Vale. Esto lo estudiamos en su día y encontramos una solución más sencilla. Perdona por no comentártelo antes, pero es que no me acordaba. En lugar de modificar el T80 para que con la orden RETN de desactive la paginación, nosotros hicimos lo siguiente:Uto escribió:Sí, a eso me refería con que la siguiente instrucción a ver donde cae.
Esto de la NMI especial es una buena cosa, pero esta claro que le falta testing. Espero que mis pruebas sirvan de ayuda para arreglarlo
Código: Seleccionar todo
if (mreq_n == 1'b0 && m1_n == 1'b0 && rd_n == 1'b0 && a==16'h006A && page_configrom_active == 1'b1)
state <= ABOUT_TO_EXIT;
En realidad pone bootm a 0 cuando lee cualquier opcode en 69H, independientemente de la instrucción que sea. Ya te digo que era la solución más sencilla que se nos ocurrió sin modificar el T80. En tu emulador simplemente puedes hacer que bootm=0 cuando se ejecute un RETN.chernandezba escribió:Ese trozo de código del nmievents, que es lo que hace? si ejecuta un RETN en la 69H, cambia a modo bootm=0?
No, porque eso saltaría con el gestor de archivos de esxdosantoniovillena escribió: En tu emulador simplemente puedes hacer que bootm=0 cuando se ejecute un RETN.
No pasa nada, cuando está el gestor de archivos bootm=0, salvo que uses el gestor de archivos en rooted mode, cosa muy poco recomendable.chernandezba escribió:No, porque eso saltaría con el gestor de archivos de esxdosantoniovillena escribió: En tu emulador simplemente puedes hacer que bootm=0 cuando se ejecute un RETN.