Logicielsmoto.com

Nous sommes le 28 Mar 2024, 11:42

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 36 messages ]  Aller à la page Précédente  1, 2, 3
Auteur Message
MessagePosté: 29 Oct 2020, 13:54 
Hors ligne
M. DCMOTO

Inscription: 06 Juin 2004, 08:23
Messages: 681
Localisation: Provence (France)
adnz a écrit:
au pire fait des trucs du genre TST $E7E7
Non, ça ne peut pas marcher. Pour la troisième fois : il est impossible de lire ce qui a été écrit en $E7E7

adnz a écrit:
3 - attention que ça tourne pas à la castagne SVP, ;)
Aucun risque. Samuel et moi énonçons des faits, pas des opinions. On peut se battre pour des opinions mais pas pour des faits avérés.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Oct 2020, 14:00 
Hors ligne

Inscription: 21 Avr 2019, 21:48
Messages: 433
Localisation: Var
Dans le manuel technique TO8 p91 il y a un synoptique montrant l'architecture interne de l'ordinateur.
En plus du processeur et de la ram, il y a d'autres circuits intégrés qui sont connectés au bus de données.
Par exemple le gate array, le PIA ...
Il sont "animés" par des horloges qui leur sont propres : 16Mhz pour le gate array par exemple.
Ces CI ont leur propre rôle et ne sont pas programmables.
Donc il peut se passer plein de choses en ram en // de ce que fait le 6809.
Si tu positionnes une donnée en mémoire avec le 6809, le gate array lui en l'espace d'un cycle du 6809 a eu le temps de réaliser 16 cycles, de quoi lire et écraser ta donnée sans que tu puisses rien n'y faire.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 29 Oct 2020, 14:03 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Daniel Coulom a écrit:
adnz a écrit:
au pire fait des trucs du genre TST $E7E7
Non, ça ne peut pas marcher. Pour la troisième fois : il est impossible de lire ce qui a été écrit en $E7E7

Je pense que ADNZ parlait du fait de récupérer l'info qu'on est arrivé en fin d'écran, comme dans les routines palettes par exemple. C'est le seul cas d'usage de $E7E7 dans les programmes "utilisateur" que je connais. La ROM utilise aussi un peu $E7E7 dans les routines crayon-optique pour savoir si le spot est hors zone écran ou pas. Enfin bref tous ces usages ne lisent pas les info d'organisation des mémoires écrites en $E7E7.

Je pense que Neotenien crois que les registres d'i/o sont comme ceux du processeur: des mémoires. Or non ca n'est pas ca du tout. J'espère qu'il réalise à présent qu'on est 3 à le lui dire :)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 05 Nov 2020, 23:15 
Hors ligne

Inscription: 06 Avr 2010, 01:59
Messages: 478
Oui Sam, exacte ,
je l'utilise entre des changements de palette.
j'attends le bas de l'écran pour re-changer la palette d'une couleur.

_________________
Image


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 11 Nov 2020, 12:37 
Hors ligne

Inscription: 21 Fév 2020, 11:38
Messages: 366
Samuel Devulder a écrit:
Si si il est expliqué dans le "Manuel technique TO8/TO9/TO9+" que $E7E7 a bien 2 types d'accès: p116 ce qu'on récupère en lecture (des infos sur la phase de dessin de l'écran + divers), p110 ce qu'on a en écriture (sélection contrôleur disk, choix mode affichage, choix type de machine, standard vidéo, etc)

Quand on lit un truc ca n'est pas ce qu'on a écrit auparavant! C'est pour ca qu'il faut toujours maintenir une copie à jour en $6081 sur TO. L'info n'est pas diffusée sur papier mais se découvre en désassemblant les roms et autres programmes.

$6181 est une typo: Yoann, si tu nous lis? tu crois que tu pourrais mettre à jour.

Il y a des infos saisie en partie à la main (donc avec des typos aussi) >>ici<<.


Salut à tous

Toutes les doc dont vous faire référence, c'est déjà écrit dans le manuel technique

Le lien que tu as mis Samuel, est bourré de faute de typographie (TINIER au lieu de TIMER par exemple) due à un OCR sans doute.

Ok j'ai pigé pour la partie E000-FFFF, c'est pas de la RAM...

Mais quand même il n'y a AUCUNE documentation papier (ni même ailleurs apparemment, les lien que ADNZ et Sam ont fourni ne font que reprendre la doc des manuel technique et/ou Assembleur 2.0 pour TO8..TO9+)

Comment dans ces coups de temps là on peut "savoir" que l'adresse $6081 reprend ce qu'on met en $E7E7 d'autant que dans la doc officielle il est écrit:

"-6081-6085 : Buffer-clavier par défaut (IDSAUT)"

Moi ça ne me rassure pas pour la lecture de E7E7... Si on tape le clavier entre temps... Vous êtes sûr que le système met la valeur de E7E7 ici (en 6081) ??? puisqu'il s'agit du buffer clavier "PAR DEFAUT"

Quoiqu'il en soit, j'ai quand même pu faire marcher mon algo en ASSEMBLEUR (d'ailleurs Sam a commenté la vidéo que j'ai faite là dessus en évoquant le double buffer) de défilement de sprite sans même utiiser E7E7 (commutations de banques) sur DCMOTO en tous cas.

Pour ce qui est de la lecture de E7E7, ça ne se fait QUE SI le D0 en E7E4 est à 1 (et je l'ai déjà dit lors d'un message précédent), pour le crayon optique (p115 de la doc technique) pas si D0=0.

Je pense qu'il ne serait pas inutile que quelqu'un fasse une documentation "complète" et fiable sur ces registres du moniteur et en $E???/$A???. La "doc technique" est très incomplète même s'il y a des exemples sympa (comme pour la gestion du timer).

Le changement de mode vidéo sur les RAM 2 et 3 ne fonctionne pas avec le PUTC (j'ai fait des tests à dessus), je pense que PUTC agit directement comme si l'affichage était en RAM0 (agit sur la RAM logique $4000-$5FFF), comme d'ailleurs toutes les fonctions basic d'affichage graphique (line, box etc). Normal puisque ce sont des fonctions compatibles TO7! D'ailleurs c'est écrit dans la doc technique (p121)
"- Lorsque le CPU accède à l'espace logique écran c'est toujours la page physique (ie bank ram) 0 qui est adressée, même si l'automate d'affichage utilise une autre page"

A voir pour la suggestion d'ADNZ en BASIC avec CONSOLE ,,,3 (bm16) si c'est adaptable en ASS... quoiqu'il en soit, l'utilisation de
Code:
 LDB #$7B Mode bm16c
 STB MODVID Stocke bm16 en $E7DC

Fonctionne lui, je ne sais pas ce que fait CONSOLE mais je pense que ça utilise ce registre.


Haut
 Profil  
Répondre en citant le message  
MessagePosté: 11 Nov 2020, 13:09 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Citation:
Comment dans ces coups de temps là on peut "savoir" que l'adresse $6081 reprend ce qu'on met en $E7E7

On étudie les roms, on étudie les codes des autres (comme HCL), on pose la question et discute avec les autres dans les forums (souvenez-vous 2006), on regarde google, etc :)

Après la doc a été écrite à partir du TO9 qui n'a pas le même mécanisme de commutation. Le TO8 n'est abordé que dans la partie matérielle. La partie extramon ne présente que la face TO9. C'est comme ca, on y peut rien.

Citation:
Le changement de mode vidéo sur les RAM 2 et 3 ne fonctionne pas avec le PUTC (j'ai fait des tests à dessus)

La commande CONSOLE pour passer en BM16 envoi une séquence de putc (mets un point d'arrêt en execution sur $E803, tu va voir passer la séquence d'échappement), et ca marche très bien avec autre chose que la page vidéo standard en basic pur. Je t'ai déjà expliqué que si ca change dans ton test c'est que quelque part on envoi une autre valeur en $E7DC. Pour savoir quoi, mets un point d'arrêt en écriture sur $E7DC et regarde ce qui le fait changer dans tes tests.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 36 messages ]  Aller à la page Précédente  1, 2, 3

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 31 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com