J'ai vu ce site. Mais perso je verrais ça quand mon CPU tournera sans problème...
Et actuellement j'ai un gros problème :
Voici le code de mon LooZ80 :
(c):
word LoopZ80(register Z80 *R){
uint16 * framebuffer = VRAM_A;
int i, value;
for(i=0x2400; i<0x3FFF;i++){
value = RdZ80(i);
if (value & 0x80) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x40) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x10) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x08) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x04) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x02) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x01) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
if (value & 0x00) *framebuffer++ = RGB15(31, 31, 31);
else *framebuffer++ = RGB15(0, 0, 0);
}
iprintf("%d\n", R->PC.W);
swiWaitForVBlank();
return INT_NONE;
}
Je sais c'est pas bon du tout je rafraichit à chaque lecture d'opcode et l'écran sera à 90° mais je cherche juste à afficher quelque chose pour voir que le processeur tourne sans problème.
J'affiche mon PC et étrangement il reste bloqué en adresse 1...
Mon RdZ80 et mon WrZ80 fonctionnent très bien. Il ils lisent et écrivent dans un tableau de bytes de la taille de la RAM de la machine.