CPC Rulez
https://cpcrulez.fr/forum/

Interrupt Wait ???
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=4485
Page 1 sur 1

Auteur :  Demoniak [ 08 Mars 2011, 14:19 ]
Sujet du message :  Interrupt Wait ???

Hello,
j'ai téléchargé sur le site de Richard Wilson l'utilitaire PlusTest, qui permet entre autres de mesurer le temps d'exécution de toutes les instructions Z80 (et donc de vérifier que mon émulateur est ok de ce côté là).

Seulement il y a un test, appelé Interrupt Wait Test, qui teste également chaque instructions Z80, mais dans un contexte particulier, lié je suppose aux interruptions vu le titre.

Et là malheureusement mon ému se vautre sur toutes les instructions.

Si quelqu'un sait à quoi cela correspond, cela m'aiderai à améliorer encore l'émulation Z80 de mon émulateur...

Auteur :  Megachur [ 10 Mars 2011, 06:14 ]
Sujet du message :  Re: Interrupt Wait ???

Demoniak a écrit :
Hello,
j'ai téléchargé sur le site de Richard Wilson l'utilitaire PlusTest, qui permet entre autres de mesurer le temps d'exécution de toutes les instructions Z80 (et donc de vérifier que mon émulateur est ok de ce côté là).

Seulement il y a un test, appelé Interrupt Wait Test, qui teste également chaque instructions Z80, mais dans un contexte particulier, lié je suppose aux interruptions vu le titre.

Et là malheureusement mon ému se vautre sur toutes les instructions.

Si quelqu'un sait à quoi cela correspond, cela m'aiderai à améliorer encore l'émulation Z80 de mon émulateur...


euh, tu as demandé à l'auteur ?
ou regarder le code ?

cela ne peut être que des tests suite à des IM 0,1 ou 2 ?!

Auteur :  Demoniak [ 10 Mars 2011, 08:43 ]
Sujet du message :  Re: Interrupt Wait ???

J'ai posé la question sur le forum de cpcwiki, j'ai eu une réponse de Richard Wilson et de Kevin Thacker.
Bon, j'ai implémenté le truc, mais j'ai toujours des soucis...
Je vais faire des recherches de mon côté.

Auteur :  Fredouille [ 12 Mars 2011, 10:27 ]
Sujet du message :  Re: Interrupt Wait ???

Super ce petit outil :JC_doubleup:

Je l'ai passé sur mon émulateur et il me semble que tout est passé OK.
Je vais testé sur la cible pour ne pas être pollué par l'affichage des infos de debug sur l'émulateur de palm sur pc. (je lance caprice sur le PC qui lance un émulateur de palm qui lance un émulateur de CPC... cela devient compliqué !!).

Si tout passe OK, tu peux toujours jeter un oeil au code de Caprice et même Caprice Reloaded qui est bien plus à jour.

[Edit]
J'en ai 4 qui ne passe pas:
ED 46:2
ED 4E:2
ED 66:2
ED 6E:2

Auteur :  Fredouille [ 13 Mars 2011, 14:06 ]
Sujet du message :  Re: Interrupt Wait ???

Après quelques recherches, les instructions qui ne passent pas concernent le mode 0 des interruptions.
Apparemment, ce mode n'est pas utilisé sur le CPC et a été implanté pour la compatibilité avec le 8080.

Si j'ai bien compris, dans ce mode, la routine d'interruption utilise ce qu'il y a sur le bus ou dans ces registres pour effectuer un traitement. La quantité de cycles dépend du traitement à effectuer.

Comme ce mode d'interruption n'est pas utilisé, il est encore moins simulé. Dans Caprice, Mode 0 = Mode 1 = RST 38h.

Ceci doit être la cause de ce mauvais résultat.
Pour faire passer ce test OK, il faudrait savoir comment le mode 0 est utilisé.

Auteur :  fano [ 13 Mars 2011, 23:10 ]
Sujet du message :  Re: Interrupt Wait ???

En fait ,si je ne me trompe , en IM0 c'est le périphérique qui positionne un octet qui sera exécuté en tant qu'instruction sur le bus , typiquement un RST kkch.

Page 1 sur 1 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/