EPOCH Cassette Vision
-
Un peu de retard dans le journal de projet cette semaine because semaine mouvementée et pas beaucoup de temps libre (j'habite en Ardèche, pluie diluviennes, écoles et garderies fermées, tout ça tout ça...)
Je travaille toujours sur la mise à jour de la description du jeu d'instructions (ce qui apparaît dans la fenêtre Programme et dans la fenêtre Liste des Opcodes).
Pour mémoire je sais maintenant ce que font tous les Opcodes, y compris l'Opcode buggé et les Opcodes en dehors du jeu d'instructions "officiel" que Tetsuji publie sur son site.
C'est très laborieux et long à faire mais ça avance bien.Après les descriptions il faudra que je m'occupe de l'implémentation proprement dite des instructions.
La suite au prochain épisode.
@++
EPOCH 84 (aka MaaaX^^) -
merci pour tes interventions c'est ma série préféré
-
Bonjour,
Voici les news de la semaine dernière que je n'ai pas eu le temps d'envoyer:
- Je suis toujours sur la mise à jour des descriptions pour tous les opcodes et je continue.
- J'ai déjà traité les descriptions pour les opcodes de 0x000 (0) à 0x1ff (511), ce qui comprends l'opcode 0x2a8 buggué
A suivre...
-
Petite coquille:
@MaaaX said in EPOCH Cassette Vision:- J'ai déjà traité les descriptions pour les opcodes de 0x000 (0) à 0x1ff (511), ce qui comprends l'opcode 0x2a8 buggué
En fait j'ai traité les opcodes 0x000 (0) à 0x2ff (767). J'ai donc traité les 768 premiers opcodes.
- J'ai déjà traité les descriptions pour les opcodes de 0x000 (0) à 0x1ff (511), ce qui comprends l'opcode 0x2a8 buggué
-
Hello World!
Pas beaucoup d'avancée cette semaine étant donné ma charge de travail et que mon boulot a pas mal (pour ne pas dire beaucoup) débordé sur mon temps libre .
J'avais déjà traité les opcodes de 0x000 (0) à 0x2ff (767) ça c'est bon!
Je viens de traiter aussi les opcodes 0x800 (2048) à 0xfff (4095), qui correspondent à des instructions de saut JP et JS. Ce qui représentent une bonne partie des opcodes et qui ne m'a pas demandé trop de travail. Ca c'est bon!
Là je continue de travailler sur les libellés des opcodes 0x300 (768) à 0x3ff (1023) et je me suis rendu compte que l'ancien code qui fonctionnait pour la V1 ne pouvait pas fonctionner pour les nouveaux opcodes (ceux qui n'étaient pas connus/gérés en V1).
Il faut donc que je change de paradigme et que je traite tout ou partie des libellés d'opcode comme je le ferai dans le traitement des opcodes à proprement dit...C'est pas clair? C'est normal.
Pour essayer de faire un peu plus clair : certains opcodes font en réalité plus de choses que ce qu'indique leur libellé. Dans les libellés on ignore simplement tout ce qui est fait mais qui n'a pas d'incidence.
Donc pour les libellés je triche un peu et je ne me base que sur des groupes d'opcodes afin de simplifier le code et de gagner en performance au démarrage de l'application.
Par exemple: je connais les opcodes des instructions qui ne font rien de significatif => je met "NOP" (No OPeration) en face sans regarder ce qu'elles font dans le détail vu que ce qu'elles font n'a aucune incidence sur l'état actuel ou futur de la machine (exemple d'action sans incidence: brancher la sortie du registre A1 sur la ligne (1) et brancher la ligne (1) sur l'entrée du registre A1 => ça donne l'opération A1=>A1, bref ça fait quelque chose mais qui ne change rien).Pour les opcodes 0x300 (768) à 0x3ff (1023) ça ne marche plus en V2 parce que les anciens tests "succincts" de la V1 sont maintenant invalides et sortent n'importe quoi pour les nouveaux opcodes.
Pour ce groupe c'est tellement compliqué qu'il faut que teste plus dans le détail ce qu'elles font. Donc nouveaux tests plus détaillés. Donc nouveau code.Je n'ai pas trop de le temps maintenant d'expliquer comment ça fonctionne dans le détail mais si ça vous intéresse dites le moi et prendrai un peu plus de temps.
@++
MaaaX ^^ (alias EPOCH84) -
@MaaaX
Juste un petit message pour te souhaiter bon courage.
Comme tu t'en doutes même si on en comunique pas beaucoup ici, on suit ça d'un oeil. -
Salut MaaX avec 2 A
Merci! C'est sympa!
La R&D c'est un peu long mais on va y arriver.
Je ne suis pas trop présent sur le Discord Beta mais je discute de temps en temps avec BK.@++
MaaaX avec 3 A ^^ (aka EPOCH84). -
EHLO,
Ca avance. Je n'ai pas encore fini les opcodes de 0x300 à0x3ff mais c'est en bonne voie.
BYE
-
Bonjour,
Juste un petit message vite fait pour dire que j'ai refait toute la fonction qui retourne les libellés correspondant aux opcodes pour pouvoir construire dynamiquement les libellés en fonction de ce que font réellement chaque opcode. C'est évidemment long et méticuleux à faire. J'ai déjà refait tous les opcodes de 0x000 à 0x0ff et j'ai fait les opcodes de 0x300 à 0x37f. J'en suis donc à l'opcode 0x380, sachant que certains opcodes jusqu'à 0x3ff fonctionnent déjà mais que je n'ai pas encore tout testé.
A suivre...
@++
EPOCH84 (aka MaaaX^^ avec 3 A) -
Hello world!
Ca y est j'ai fini les libellés pour les opcodes 0x300 à 03ff.
-
This post is deleted! -
-
-
-
-
-
-
-
Et la partie sûrement la plus difficile:
-
Voilà! Voilà!
Je continue avec la série des opcodes 0x400 à 0x4ff.A suivre...
@++
EPOCH84 (aka MaaaX^^)