Notifications
Retirer tout

glOric v1.2 est disponible

17 Posts
3 Utilisateurs
0 Likes
587 Vu
assinie
(@assinie)
Membre
Inscription: Il y a 3 ans
Posts: 52
 

Pour l'assembleur, il faut faire précéder les options qui lui sont destinées par -Wa

A vérifier, mais il est probable qu'à partir du moment où tu mets -Wa toutes les options qui suivent sont destinées à l'assembleur.

Par défaut le -D s'appliquer au pré-processeur C qui n'est pas appelé pour un programme en asssembleur.

Tu peux aussi utiliser -Wl pour des options detinées au linker et -Wc pour le compilateur

Ce qu'il faut vérifier c'est si le -Wa doit précéder chaque option pour l'assembleur ou si il reste valable jusqu'au prochain -Wc ou -Wl

Donc dans ton cas, si tu veux définir un symbole à la fois pour le C et l'assembleur, il faut le définir 2 fois.


   
RépondreCitation
JiBe
 JiBe
(@jibe)
Membre
Inscription: Il y a 3 ans
Posts: 111
Début du sujet  

@assinie

 

Bon ben j'ai échoué 🙁

J'ai essayé de définir ces constantes das le fichier cfg, dans le makefile (pour l'option -D), et il n'y a que dans le source que ça marche.

Pour ce qui est des options, j'ai essayé tout un tas de combinaisons et d'ordre qui me sont passées par la tête.

cl65 -t telestrat -c --create-dep obj/telestrat/gl65_s.d -Wa -D SCREEN_WIDTH=40 -Wa -D SCREEN_HEIGHT=26 -o obj/telestrat/gl65_s.o src/gl65_s.s
cl65.exe: Don't know what to do with 'SCREEN_WIDTH=40'

cl65 -t telestrat -c --create-dep obj/telestrat/gl65_s.d -Wa -D SCREEN_WIDTH=40 -D SCREEN_HEIGHT=26 -o obj/telestrat/gl65_s.o src/gl65_s.s
cl65.exe: Don't know what to do with 'SCREEN_WIDTH=40'

cl65 -t telestrat -c --create-dep obj/telestrat/gl65_s.d -Wa SCREEN_WIDTH=40 -Wa SCREEN_HEIGHT=26 -o obj/telestrat/gl65_s.o src/gl65_s.s
ca65: Don't know what to do with 'SCREEN_HEIGHT=26'

cl65 -t telestrat -c --create-dep obj/telestrat/gl65_s.d -Wa SCREEN_WIDTH=40 SCREEN_HEIGHT=26 -o obj/telestrat/gl65_s.o src/gl65_s.s
cl65.exe: Don't know what to do with 'SCREEN_HEIGHT=26'

 

De toute manière, l'idée c'était de pouvoir renseigner ces valeurs au moment du link pour pouvoir livrer gl65 sous forme de lib. Mais ça je n'y crois pas. Pour moi ces constantes sont valorisées par le préprocesseur ou l'assembleur. Ce ne sont pas des labels que le linker pourrait valoriser au moment du link.

En tout cas merci pour ton aide .. j'ai appris des choses grâce à toi.

Et merci aussi pour l'astuce qui permet de générer le fichier de symboles pour pouvoir débugguer en symbolique sur Oricutron:

sed -re 's/al 00(.{4}) \.(.+)$$/\1 \2/' GL.vice | sort > $(PATH_TO_ORICUTRON)/symbols

C'est Jede qui m'a filé le tuyaux en me disant bien que cela venait de toi .. alors merci .. c'est cool 😉


   
RépondreCitation
Page 2 / 2
Share: