1

J'étais en train de relire la doc de la Lynx au sujet des interruptions...

On y lit qu'il y en a 8, une par timer, deux sont particulières à l'affichage (VBL, HBL) et une à l'uart (celle là a deux particularité, elle n'est pas liée directement au timer mais au buffer de réception et elle n'est pas active sur front mais sur état).

Il y a ensuite l'interruption "reset".

Et on arrive à ma question. NMI. J'ai bien compris que c'est une interruption dont le déclenchement n'est pas masquable sur le 65C02 et qu'elle est prioritaire. Elle a son propre registre (enfin deux registres 8 bits pour avoir 16 bits) de vecteur.

On peut lire ici où là que Howard (le kit de dév lynx) propos(er)ait des options de debug sur la patte NMI... Mais ma question est la suivante : qu'est ce qui déclenche NMI sur une console comme la Lynx ? Est-ce que c'est exploité sur la version "prod" ou est-ce réservé aux modes debug ?
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

2

PS : et je met ça ici et pas dans la catégorie dvpt lynx parce que je pense que c'est assez "générique" à tous les CPUs du genre
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

3

NMI, sur le 6502/65C02 officiel ne peux etre declanché que par du hardware externe, cad via une broche du CPU.

Il est probable que le 65C02 de la lynx ai cette broche. Elle n'est pas utilise par du hardware de la console? Tout passe par la broche d'IRQ "masquable"? C'est amusant la NES NMI est utilise par le chip graphique et INT est peu/rarement utilisé (principalement par des mappers sur les cartouches) Tu doit donc aussi avoir un registre pour savoir d'ou viens l'IRQ je presume?

En effet NMI a son propre vecteur (FFFA/FFFB), tout comme RESET (FFFC/FFFD) et IRQ/BRK (FFFE/FFFF)
le cote prioritaire je ne suis pas sur a 100% le 6502 traîne des bugs sympa sur les priorité, mais oui NMI ne peux être masqué donc même si on est dans le vecteur IRQ il se déclenchera.

Il faudrait que je regarde la schématique de la Lynx pour voir, mais je suis prêt a parier que la broche est accessible

Après zieutage d'une bonne vielle schématique ( trouvé sur atariage: https://atariage.com/Lynx/archives/schematics/Schematic_Lynx_UL_High.html )
Oui NMI est disponible (broche 25), mais est connecté directement sur le 5V, donc pour le driver il faut soit le driver a bas via une resistance de 1 ou 10K (pour eviter de drainer encore plus les piles!) soit couper la piste et mettre la resistance entre +5V et la broche NMI (meilleurs solution a mon gout en dehors du cote un peu destructif a couper une piste)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

4

tromb Fichier joint : fiSD
(j'ai pas atariage ici mais sur les plans faut aller voir Schematic_AtariLynx_UL_High.jpg)

On voit sur le schéma que la broche /NMI de Mikey est connecté au 5V...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

5

(cross edit)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.