frost :
Je vais tenter de répondre aux questions :
* le 68000 n'a qu'une prefetch queue de 2 ou 3 words... pas de cache... voilà voilà
* sur ST tout programme est relogeable et tu n'es pas censé savoir où il se trouve (à l'époque, pas de MMU pour faire croire que...)
* Tout est possible, faut juste s'y mettre (argl)
Le prefetch etait de 1 mot de 16 bits au dela de l'instruction courrante.
C'est comme ca qu'on faisait des petites blagues en modifiant l'instruction d'apres avec un move ou un add et si le mec faisait pas gaffe en tracant tu executait pas la meme chose qu'en run: Le trace declanchant une interuption apres chaque instruction et branchant vers la routine du trace invalidait evidement le prefetch

niveau relogeabilité tu pouvais en effet tout indexer sur le PC mais ca n'etait pas obligé, tu pouvais avoir tout un tas d'adressage directe aussi bien de part des branchements en absolu qu'à cause du fait que tu pouvais tout simplement charger une adresse en dur dans un registre d'adresse et puis faire ce que tu voulais avec.
C'est bien pour ca que dans les .tos et .prg tu trouvais des tables de relocation qui indiquaient où etaient les adressages en absolu à reloger à l'interieur du programme par rapport à son adresse de chargement
Ensuite pour être bien lourd, sisi il y avait une MMU dans le ST, mais elle etait pas programmable

, c'etait notament ca qui declenchait un bus error lors ce que tu essayais d'écrire à certaine adresses comme en 0 par exemple.
C'est d'ailleurs un truc qui avait un peu ennuyé le gars qui avait fait le fameux emulateur mac sur ST, il en parlait dans un ST Mag sjmsb