[Week 08] cpu_dispatch_storage error handling

[Week 08] cpu_dispatch_storage error handling

by Nicolas Pierre Raulin -
Number of replies: 1

Bonjour,

Voici le prototypage de trois fonctions du projet. `cpu_dispatch_storage()` et `bus_read()` renvoient un int (error code) tandis que `cpu_read_at_idx()` renvoie un data_t (résultat du read).

Dans le switch de `cpu_dispatch_storage()`, il semble judicieux d'utiliser la fonction `cpu_read_at_idx()` afin de lire la valeur du bus à l'adresse du contenu d'une paire de registers. Cependant, cette fonction dropperait les erreurs possibles (par exemple engendrées par `bus_read()` utilisé dans `cpu_read_at_idx()`).

Du coup, doit-on oublier le `cpu_read_at_idx()` (et donc basiquement recoder son fonctionnement dans la moitié des cases du switch)? Ou n'ai-je pas bien compris comment fonctionnait cette fonction dans la week 07 (puisque le comportement en cas d'erreur n'était pas spécifié, j'ai arbitrairement décidé de renvoyer 0 si une erreur s'était produite en cours de route)?


Merci d'avance!
Nicolas R