[Quinn Dunki] L’ordinateur basé sur 6502 est idéal, et elle a décidé qu’il est temps d’ajouter l’une des caractéristiques les plus cruciales trouvées dans les années 80. Les micro-ordinateurs sont inspirés par – GamePads.

Il y avait deux façons de mettre en œuvre des pavés de jeu dans les années 80. Les joysticks analogiques Apple II ont utilisé un potentiomètre pour chaque axe de joystick avec une puce de minuterie de 556 pour convertir la résistance d’un pot en une valeur numérique. Les commandes analogiques sont géniales, mais beaucoup de matériel sont nécessaires. L’autre option est le joystick Atari / Commodore qui utilise des boutons pour chaque direction. Étonnamment, ces joysticks sont extrêmement chers sur le marché millésime, mais une configuration matérielle similaire – Nes GamePads – sont courantes, de la terre bon marché et très bien documentées.

[Quinn] a écrit quelques bits d’assemblage de 6502 pour lire ces contrôleurs Nintendo avec 6522 de Veronica à l’aide d’une ATMEGA168, puis tout s’est passé à la merde.

En testant sa configuration, elle a constaté que souvent la ligne de données du contrôleur serait désynchronisée avec la ligne d’horloge. Pendant quatre mois, [Quinn] luttait avec ce problème et a proposé l’un des deux problèmes possibles: soit son circuit était mauvais, ou la puce de 6522 à Veronica était mauvaise. Vous pouvez deviner quelle option est correcte, mais vous aurez probablement tort.

Le problème [s’est avéré être] le 6522. Il s’avère que cette puce a un bug lorsqu’il est utilisé avec une horloge externe. En 40 ans de production, cela n’a pas été corrigé, mais heureusement 6502 Wizard [Garth Wilson] a une option pour ce problème: ajoutez simplement un basculement et tout ce que tout est casher. Si seulement ce bogue a été signalé dans les feuilles de données actuelles …

Maintenant, Veronica dispose de deux entrées de contrôleur NES et du circuit requis pour que tout fonctionne. Preuve vidéo ci-dessous.

Leave a Reply

Your email address will not be published. Required fields are marked *