3Fermer5
sundanceLe 14/08/2007 à 17:46

en effet la video nous a posé beaucoup de pb
pour arriver a un bon compromis , nous avons eu un raisonnement très terre a terre.
quand doit-on générer la video avec le minimun de charge sur le pic ?

le lm1881 décharge le pic de tous ce qui est synchronisation, il décompose le signal video composite de l'Atari pour le pic.

nous utilisons 2 irq , le vsync pour remettre nos pointeurs à zéro.(2eme front = irq)
et le burst (2eme front = irq) de facon a ce que le pic génère la video que quand c'est nécéssaire, soit moins de 50 µs par ligne
visible à l'écran.

le reste du temps est libre.

la résolution est de 40 caractères par 25 lignes

le code pour la video est a 100 ns prèt autant dire optimisé en assembleur (100ns = un pixel à l'écran) , pas une instruction de travers ou inutile ,la gestion de la police de caractères ce résume a 2 instructions.(espace entre chaque caractéres!)

mais les avantages sont consequents:

avec cette routine la lecture sur la sdcard des fichiers image (fat32), la gestion de la liason serie (lecteur d7 8 bits) , la gestion du joystick/touche et l'affichage sont possibles.

cependant tout n'est pas possible on ne peut rajouter la convertion en mfm et les calculs de crc16 nécéssaire pour les lecteurs 3.5
donc pas d'affichage pendant l'envoi de données au ST (mais trés peu pénalisant car rien a afficher)

pour l'instant on utilise 30 % de la place dispo dans le pic, et il reste a peu près 30 % du temps machine dispo

ce qui nous donne de quoi encore faire évoluer le sdisk.