Logicielsmoto.com

Nous sommes le 28 Mar 2024, 23:58

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 281 messages ]  Aller à la page 1, 2, 3, 4, 5 ... 19  Suivante
Auteur Message
 Sujet du message: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 15:31 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
Salut à tous.

Je viens de débarquer ici et j'ai pas mal de questions...

Je commence à me documenter pour faire quelques petits trucs en ASM sur TO8. Seulement je dois avouer que la doc trouvée n'est franchement pas clair du tout...

Je m'explique:

Je suis entre autre allé sur ce site http://pulkomandy.tk/wiki/doku.php?id=documentations:start#system

C'est pas mal, on nous parle de plein de choses... Sauf que: aucune indication de l'adresse correspondant au bits donnés...
P0,P1,P2,PB0,PB1,CA1,CB1... etc etc, c'est bien gentil, mais ca ne me dit pas à quelle adresse je poke...

Bref, toutes les docs que j'ai trouvé (manuelle technique TO8,TO9,TO9+ entre autre), ne me donne jamais d'information complète.
Du coup c'est le bordel et je met 10 ans à trouver comment faire ce que je veux.

Donc: Qui pourrait me renseigner sur les adresses correspondant à tous ces bits ?

J'ai capté qu'on avait une partie du PIA (rien que de trouver ce que ca veut dire m'a pris 30 minutes vu que personne ne le dit nul part hormis sur une pauvre page wikipédia...) dnot le port C est en #E7C3 (à priori les fameux bits P).

J'ai compris qu'en #E7DC on choisi le mode graphique...

Mais le reste... Bref, j'ai besoin d'aide de ce coté la car c'est vraiment pas clair du tout.

Merci


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 16:20 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
BDCIron a écrit:
Je suis entre autre allé sur ce site http://pulkomandy.tk/wiki/doku.php?id=documentations:start#system

C'est pas mal, on nous parle de plein de choses... Sauf que: aucune indication de l'adresse correspondant au bits donnés...
P0,P1,P2,PB0,PB1,CA1,CB1... etc etc, c'est bien gentil, mais ca ne me dit pas à quelle adresse je poke...

Et on vous comprend. Ceux qui ont fait ces documentations ou même les documentations dont ils se sont inspirés naviguent dans le flou aussi. C'est la malédiction du Thomson, l'ordinateur que personne ne connaîtra jamais vraiment. Quel page exactement pour les registres que vous citez?

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 20:12 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
J'aurai préféré une réponse constructive...

Sur le liens que j'ai donné justement.
Ou dans le manuel de l'utilisateur.
C'est même assez drôle façon de parler mais on nous explique rapidement comment passer de la RAM A à la RAM B sans nous dire ou elle se trouve justement cette RAM.

Bref, j'ai besoin d'aide... Merci


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 20:38 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
BDCIron a écrit:
J'aurai préféré une réponse constructive...

Moi aussi. Vous voulez plutôt parler de cette page, par exemple : http://pulkomandy.tk/wiki/doku.php?id=d ... vices:6846 ?

BDCIron a écrit:
Sur le liens que j'ai donné justement.

Ben non, justement. J'ai consulté les premières pages de votre lien, et ce qui y est écrit est très explicite. Toutes les valeurs sont données.

BDCIron a écrit:
Ou dans le manuel de l'utilisateur.
C'est même assez drôle façon de parler mais on nous explique rapidement comment passer de la RAM A à la RAM B sans nous dire ou elle se trouve justement cette RAM.

Bref, j'ai besoin d'aide... Merci

Ok. Sur TO, les deux RAM graphiques vont de $4000 à $5F3F et sont commutées par le bit 0 de $E7C3. Sur MO, les deux RAM graphiques vont de $0000 à $1F3F et sont commutées par le bit 0 de $A7C0, mais on peut aussi commuter ces deux RAM par deux codes d'interruption différents, $04 et $06 (http://pulkomandy.tk/wiki/doku.php?id=d ... r:syscalls).

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 21:22 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
Désolé mais non...

Sur la page sus-cité on donne plusieurs adresses mais on ne me dit pas à laquelle correspondent P0-P1-P3-P7-CP2-CPE etc etc...

Je fais quoi je choisis au pif ? ^^
Non franchement ce n'est absolument pas clair désolé.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 12 Aoû 2018, 21:28 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
En tout cas, ce que je vous ai donné vous convient ou avez-vous besoin de plus d'informations?

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 13 Aoû 2018, 13:53 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
Toujours plus ^^

Je ne sais toujours pas à quelle adresse correspondent les bits PBn ou CPn (ou n est le numéro).
Plus généralement existe t-il une vraie description de chaque "adresse" avec bits contenus ?

Question supplémentaire:
J'ai téléchargé l'assembleur C6809. Mais il n'y a pas de documentation avec celui-ci. Aussi qu'accepte-t-il comme syntaxe ?
J'ai l'habitude en Z80A d'utiliser # pour l'hexadecimal; % pour le binaire... C6809 accepte-t-il cette syntaxe ?
y a t'il une documentation un peu plus poussée sur cet assembleur (avec des exemples sur les options d'assemblage.)

Merci


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 13 Aoû 2018, 15:24 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1061
Localisation: France (24)
BDCIron a écrit:
Toujours plus ^^
Je ne sais toujours pas à quelle adresse correspondent les bits PBn ou CPn (ou n est le numéro).
Plus généralement existe t-il une vraie description de chaque "adresse" avec bits contenus ?

Vous pourrez toujours appeler PulkoMandy, par exemple ici : viewtopic.php?f=11&t=567 avec le bouton pour l'email, parce que c'est vrai que les novices peuvent avoir du mal avec ce genre de chose. Vous lui ferez part de vos suggestions pour améliorer sa documentation.

BDCIron a écrit:
Question supplémentaire:
J'ai téléchargé l'assembleur C6809. Mais il n'y a pas de documentation avec celui-ci. Aussi qu'accepte-t-il comme syntaxe ?
J'ai l'habitude en Z80A d'utiliser # pour l'hexadecimal; % pour le binaire... C6809 accepte-t-il cette syntaxe ?
y a t'il une documentation un peu plus poussée sur cet assembleur (avec des exemples sur les options d'assemblage.)

Merci

C'est la même documentation que celle de Macro-Assembler. Donc vous trouvez l'une, vous trouvez l'autre. Sinon, je peux la mettre en téléchargement ici momentanément.

_________________
Marche a suivre pour s'inscrire sur ce forum
Do not forget to contact one of the administrators to validate your registration.
Le site des démos de Puls
L'émulateur Teo


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 13 Aoû 2018, 15:48 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
Ok super, merci, je vais donc faire comme ça. Pour macro assembler, j'ai trouvé la doc. Donc c'est bon de ce coté la. Merci bien !!!


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 16 Aoû 2018, 21:00 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
la page: http://pulkomandy.tk/wiki/doku.php?id=d ... vices:6846 décrit la puce 6846, une puce puissante fournissant timer, rom et interface parallèle (PIA) dans les Thomson. Les interfaces parallèles sont pas mal utilisées dans les thomson. Outre la partie PIA de 6846, il existe des puces qui ne contiennent qu'un PIA: le 6821. L'un des 6821 gère le "système" (PIA système: gestion port imprimante, commutation banque mémoire, moteur lecteur K7, etc) et l'autre (PIA musique et jeux) la gestion des manettes de jeux ainsi que la production du son via le convertisseur numérique->analogique.

Concernant P0 à P7, ce sont des pinoches du 6846. CP2 est aussi une sortie de cette puce qui inhibe la production du son. CTO est encore une sortie de la puce qui indique le timeout de la partie timer. Ce sont donc des pinoches physiques de la puce. Certaines sont mappées en mémoire telles P0-P7 qui sont accessibles via le registre "data" du port C en $E7C3, mais pas toutes. Pour bien comprendre ces pinoches et le mapping en mémoire il faut lire la partie "PIA système" de la partie TO9 (puis celle du TO8 si on devel pour TO8) du manuel technique TO8/TO9/TO9+.
Fichier(s) joint(s):
p1.png
p1.png [ 62.27 Kio | Vu 29490 fois ]
Fichier(s) joint(s):
p2.png
p2.png [ 107.61 Kio | Vu 29490 fois ]

Pour le détail de programmation du 6846, la doc est là: http://www.logicielsmoto.com/viewdocument.php?docid=11

Les autres datasheets sont là: http://www.logicielsmoto.com/displaydoc ... option=and

Concernant la gestion de la video, le manuel technique TO8/TO9/TO9+ décrit tout à partir de la page 52:
Fichier(s) joint(s):
p3.png
p3.png [ 216.97 Kio | Vu 29490 fois ]

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 17 Aoû 2018, 08:16 
Hors ligne

Inscription: 24 Juil 2010, 16:08
Messages: 454
Localisation: France
Salut BDCIron!

Toutes les adresses sont documentées sur cette page:
http://pulkomandy.tk/wiki/doku.php?id=d ... io.devices (vers le bas pour les I/O)

Pour que ce soit plus simple à suivre je les ai ajoutées aussi sur cette page:
http://pulkomandy.tk/wiki/doku.php?id=d ... vices:6821

Il faudra toutefois que je complète la documentation sur les sorties CB* et CA*. Le PIA est en gros un équivalent du PPI utilisé sur le CPC, et donc le contrôle de ces pins ne se fait pas forcément directement par écriture sur une adresse mémoire. Pour l'instant il faut aller chercher l'info dans la datasheet du composant (qui est disponible en bas de la page). Les infos intéressantes sont surtout les 3 dernières pages de la datasheet.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 22 Aoû 2018, 19:32 
Hors ligne

Inscription: 10 Aoû 2018, 20:36
Messages: 6
Super les gars, merci pour votre aide.
Désolé pour la réponse tardive, j'étais parti en vacances :)

Je regarde donc tout ca dans la semaine.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 09 Déc 2018, 00:43 
Hors ligne

Inscription: 06 Avr 2010, 01:59
Messages: 478
salut,

objectif: me faire la main sur des trucs simple pour capter comment organiser un prog en asm sans que ça plante de partout ;)

Quant j'implante un .bin (prog en asm) en mémoire, je l'implante en $8000 ou en $A000 ?
Le même programme ne réagis pas pareil ?

y'a un truc que je capte pas !
(PS: j'essaye de faire tourner ce template asm en TO : http://pulkomandy.tk/projects/thomson/b ... e/main.asm )

exemple :

- en A000 ça reviens au basic tout seul
- en 8000 ca bloque ! et la partie touche marche pas !
- d'ailleurs toute la partie Paint screen et boucle ça fait rien non plus !

(pour infos: je load le.bin dans dcmoto et je fais un exec &HA000 ou &H8000 selon où je l'implante)


Code:
          ORG $A000

* Disable interrupts
          ORCC  #80

* Paint screen with 0xAA pattern in FORME
          LDA #$AA
          LDX #$5f40

boucle
          STA ,-X
          CMPX #4000
          BNE boucle
* Set the border (also to 0xAA)
          STA $E7C3
* COLOR memory to 0xCF
          LDA #$aa
          LDX #$5F40

boucle2
          STA ,-X
          CMPX #0
          BNE boucle2

mainloop

touche  jsr   $e806         * adresse de code touche taper
            cmpb  #$20        * compare avec code touche espace
            bne   touche       * goto touche si code touche different de espace
            swi

            JMP mainloop

           swi
           end


merci beaucoup d'avance.

_________________
Image


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 09 Déc 2018, 00:53 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1802
Localisation: Brest
Tu charges sous le basic je pense. As tu bien réservé la zone mémoire de l'implantation (instruction CLEAR du basic) ? Si tu ne fais pas cela, il y a de fortes chances que tu implantes ton programme dans une zone utilisée par le basic (typiquement la pile), et que cela corrompe ton programme en mémoire.

Autre truc: le SWI en fin de programme ne s'utilise que sous l'environnement ASSEMBLEUR. Si ton environnement est le basic, tu reviens à lui par un simple RTS. Attention toutefois à préserver les registres (DP et la PILE notamment) ou sinon au retour, le basic ne va plus trouver ses petit et va finir par faire n'importe quoi.

Enfin dernier truc: tu parles de BIN, mais si tu le charges en mémoire via le débugger de DCMOTO, il te faut plutôt utiliser le binaire brut, sinon tu implantes en mémoire les meta-data du format BIN.

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Debut en asm sur TO8
MessagePosté: 09 Déc 2018, 01:00 
Hors ligne

Inscription: 06 Avr 2010, 01:59
Messages: 478
alors j'ai fais :

1- je rentre dans le basic 512
2- clear,,,&h7fff
3 - je load le bin compiler par c6809 en $8000 via le debugger dcmoto (oui)
4 - exec &h8000

== plantade ;)

bon faut que je potasse encore des heures pour capter !

sinon pour binaire brut c'est

Code:
./c6809 -bd main.ASS main.bin


merci.

_________________
Image


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 281 messages ]  Aller à la page 1, 2, 3, 4, 5 ... 19  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 42 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