From: Kak <jb...@ti...> - 2002-10-03 16:31:01
|
On Wed, 2 Oct 2002 16:00:33 +0200, Alvaro Alea wrote: >cierto, desde luego el metodo escogido es el mas conveniente. creeme, yo pense lo mismo que tu, lo implemente, y cuando ya= estaba todo hecho vi el pequenyo problema que no habia sabido ver :) y seguramente no sere ni el primero ni el ultimo en hacerlo ;) >A ver si me aclaro: > >- Con toda la RAM a 00h >- Si yo pagino R735 (suponiendo lo normal R537, no encuentro= cual va >entre >8000h y BFFFh, supongo que es la 3) >- Relleno con FFh desde C000h hasta FFFFh (toda la pagina 5) >- Si ahora mira en la direccion 7FF0h (por ejemplo) >=BFencontaria FFh? mmmm diria que no me he enterado de nada XDDDDD tu plantealo asi: es independiente de como pagines la ram tanto= en +2,+2a y +3: la pantalla no esta en la posicion 16384, sino que= esta al inicio del banco 5 (o 7 si es la shadow) de RAM. o sea, si en el bloque 16384-32768 pudieras paginar ROM (que= diria que no se puede de ninguna manera), la imagen no se cogeria de la= rom, sino que se cogeria del banco 5 (o 7). Si en la zona 16384-32768 pones la pagina 1, la pantalla se sigue cogiendo del= banco 5 (o 7) si pones el banco 7 en la zona 16384-32768, la pantalla SIGUE= estando en la RAM 5, a no ser que le digas que es la pantalla shadow la= que quieres ver. resumiendo: da igual que haya de 16384-32768. se coge de RAM5 o= de RAM7 >Cuando dices "si no esta implementada" te refieres a que= siempre >haya una >pagina fija en esa posicion? no, por no implementada me refiero a que el programa "cambia" a pagina shadow, pero el emulador no sabe que es eso y sigue con la= pantalla de siempre (ram5) >Segun el manual del +2A no es hueco, es la pagina entera, dice >textualmente: >la pagina 5 de la RAM tambien puede ser encajada en el margen= de >4000h a >7ffffh, y la pagina 2 en el compredido entre 8000h y BFFFh. lo dicho antes: la paginacion y la pantalla visible son= totalmente independientes >Ciertamente, ahora que lo pienso, la ULA del spectrum acede >directamente a la >ram, asi que las rutinas de dibujo del aspectrum deberian hacer= lo >mismo, >ademas facilita el dise=F1o de la memoria contenida. si yo no digo que no :) pero hacerlo fielmente y hacerlo rapido a veces son= contradictorios, y este es uno de los casos :) vosotros decidid como lo quereis= ;) >Hay que decidir el tama=F1o. >la IF1 pagina a 8K, creo que el disciple/+D tambien. >creo que el pokeador de MH paginaba a 2K >habria que enterarse de los trasntapes, y demas. en eso de decidir tamanyos que meta baza Santi, que es el jefe= del proyecto :) >El INVES tiene 64K de RAM, por arriba todo normal, pero la= pagina 0 >en lectura va a la ROM, y en escritura va a la RAM. > >Supongo (de otra manera no entiendo como funciona) cuando= enciendes >la RAM >esta toda a FF. > >La cuestion es que cuando luego lees un puerto el contenido que >llega al Z80 >es contenido del puerto AND memoria > >Asi que em principio no pasa nada hasta que escribes algun 0 en >alguna >posicion de memoria, momento en que los IN empiezan a fallar,= por >que se >enmascaran. vaya, no tenia ni idea de esto... un poco chapuzero no? :) ya mirare a ver si encuentro alguna cosa al respecto un saludo :) Kak |