Donc voici les modes indexes non documentes (codage binaire):
Citation:
%1RR10000 ~ [,R+] (5 cycles)
%1RR10010 ~ [,-R] (5 cycles)
%1RR00111 ~ A,R (1 cycle)
%1RR10111 ~ [A,R] (4 cycles)
%1RR01010 ~ (1,PC)|$00FF (4 cycles)
%1RR11010 ~ [(1,PC)|$00FF] (7 cycles)
%1RR01111 ~ n16 (~ mode étendu) (2 cycles)
%1RR01110 ~ $FFFF (5 cycles)
%1RR11110 ~ [$FFFF] (8 cycles)
Pour les instructions TFR et EXG maintenant:
On peut transferer un registre 8 bits dans un registre 16 bits. Ca se transforme en $ff00+Registre 8 bits.
Pour le registre CC, il se retrouve en poids fort et en poids faible quand on le transfert dans un registre 16 bits. Enfin c'est ce que dit mon code

J'ai fait ca il y a longtemps alors je me rappelle plus des tests que j'avais effectue.
Idem pour le registre DP
Pour les transferts 16 bits vers 8 bits, seuls les poids faibles sont gardes.
Maintenant, si on specifie un registre qui n'existe pas en source, on retrouve un $FF ou un $FFFF (suivant la taille du registre) en destination.
Sinon je reviens sur les instructions non documentees "speciales" que j'avais range dans la categorie "exception", pour specifier l'increment PC constate apres execution de l'instruction:
Citation:
- 14 (1 cycle): PC mort
- 15 (1 cycle): PC mort
- 18 (3 cycles): PC=PC+1
- 1B (2 cycles): PC=PC+1
- 38 (4 cycles): PC=PC+2
- 87 (2 cycles): PC=PC+2
- 8F (3 cycles): PC=PC+3
- C7 (2 cycles): PC=PC+2
- CD (1 cycle): PC mort
- CF (1 cycle): PC mort
a+
Seg.