Derniers sujets
» Oricutron & RS232 "loopback"
printf et codes speciaux EmptyHier à 23:21 par retroric

» J'ai fais la musique de Duck Hunt sur Atmos
printf et codes speciaux EmptyHier à 11:43 par TotoShampoin

» aide requise pour afficher ligne de texte de differente couleur
printf et codes speciaux EmptyHier à 11:13 par ]0[v]

» Pallida mors
printf et codes speciaux EmptyLun 19 Aoû 2019 - 6:50 par didierv

» recherche un son de bruit de saut
printf et codes speciaux EmptyDim 18 Aoû 2019 - 20:33 par ]0[v]

» Lancement de jeux - Messages d'erreur
printf et codes speciaux EmptySam 17 Aoû 2019 - 21:54 par Symoon

» CEO MAG 350
printf et codes speciaux EmptySam 17 Aoû 2019 - 10:36 par Dom50

» Bocco's adventures - nouveau jeu pour Oric
printf et codes speciaux EmptySam 17 Aoû 2019 - 7:32 par kenneth

» CEO-MAG 351-352
printf et codes speciaux EmptyVen 16 Aoû 2019 - 21:00 par retroric

» Citadelle V2
printf et codes speciaux EmptyJeu 15 Aoû 2019 - 21:03 par fred72

» Ghost Town
printf et codes speciaux EmptyJeu 15 Aoû 2019 - 18:08 par retroric

» Oric Atmos : problème de son
printf et codes speciaux EmptyMer 14 Aoû 2019 - 18:03 par froggy

» Apprendre l'Assembleur ORIC
printf et codes speciaux EmptyMar 13 Aoû 2019 - 15:09 par ]0[v]

» The last warrior
printf et codes speciaux EmptyVen 9 Aoû 2019 - 19:13 par Symoon

» Devoirs de vacances
printf et codes speciaux EmptyVen 9 Aoû 2019 - 11:22 par fred72

Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité

Aucun

Le record du nombre d'utilisateurs en ligne est de 29 le Mer 25 Fév 2015 - 14:01
Connexion

Récupérer mon mot de passe

Statistiques
Nous avons 192 membres enregistrés
L'utilisateur enregistré le plus récent est Иван

Nos membres ont posté un total de 7641 messages dans 660 sujets
Portail ORIC




printf et codes speciaux

Poster un nouveau sujet   Répondre au sujet

Aller en bas

printf et codes speciaux Empty printf et codes speciaux

Message par goyo le Lun 5 Aoû 2019 - 18:22

J’aimerais savoir si on peut envoyer des codes spéciaux dans un printf afin de par exemple inverser les couleurs, ou fond et encre. Ou pour spécifier diffèrentes couleurs dans la chaînes du printf...?
goyo
goyo

Messages : 169
Date d'inscription : 02/05/2014
Age : 48
Localisation : Massy

Revenir en haut Aller en bas

printf et codes speciaux Empty Re: printf et codes speciaux

Message par Dbug le Mar 6 Aoû 2019 - 15:03

Ca dépend comment c'est implémenté:
- Si ca écrit directement dans la mémoire vidéo, alors toute valeur entre 1 et 31 sera interprétée comme un attribut (0 ne marchera pas, c'est le marqueur de fin de chaine)
- Si ca passe par la fonction de la ROM, alors probablement il faut passer par les codes d'échappement, donc passer le code 27 (ESCAPE) suivit d'un caractère.
Dans les deux cas on trouve la liste dans les annexes du manuel BASIC.

_________________

Dbug
Dbug

Messages : 182
Date d'inscription : 06/01/2013

Revenir en haut Aller en bas

printf et codes speciaux Empty Re: printf et codes speciaux

Message par goyo le Mar 6 Aoû 2019 - 16:59

Dbug a écrit:Ca dépend comment c'est implémenté:
- Si ca écrit directement dans la mémoire vidéo, alors toute valeur entre 1 et 31 sera interprétée comme un attribut (0 ne marchera pas, c'est le marqueur de fin de chaine)
- Si ca passe par la fonction de la ROM, alors probablement il faut passer par les codes d'échappement, donc passer le code 27 (ESCAPE) suivit d'un caractère.
Dans les deux cas on trouve la liste dans les annexes du manuel BASIC.

J'ai utilisé la méthode avec le code échappement, ça fonctionne bien merci :

Code:
main()
{
 unsigned char i;
 for (i=0;i<8;i++)
 printf("%c%ctext with [ESC CODE]+%c code before\n",27,64+i,64+i);  // escape mode (27) + escape code : ex 'A'= red ink
}

mais comment fais tu pour utiliser le printf directement avec la mémoire vidéo ?   printf(1+"texte"); ?
goyo
goyo

Messages : 169
Date d'inscription : 02/05/2014
Age : 48
Localisation : Massy

Revenir en haut Aller en bas

printf et codes speciaux Empty Re: printf et codes speciaux

Message par Dbug le Mar 6 Aoû 2019 - 21:15

Tu pourrais essayer avec les valeurs immédiates en Octal pour éviter le 27 en paramètre:
Code:
printf("\033%ctext with [ESC CODE]+%c code before\n",64+i,64+i);  // escape mode (27) + escape code : ex 'A'= red ink

mais comment fais tu pour utiliser le printf directement avec la mémoire vidéo ?   printf(1+"texte"); ?
Code:
sprintf(addresseDansLEcran,"Hello")

_________________

Dbug
Dbug

Messages : 182
Date d'inscription : 06/01/2013

Revenir en haut Aller en bas

printf et codes speciaux Empty Re: printf et codes speciaux

Message par goyo le Mer 7 Aoû 2019 - 11:56

Dbug a écrit:Tu pourrais essayer avec les valeurs immédiates en Octal pour éviter le 27 en paramètre:
Code:
printf("\033%ctext with [ESC CODE]+%c code before\n",64+i,64+i);  // escape mode (27) + escape code : ex 'A'= red ink

mais comment fais tu pour utiliser le printf directement avec la mémoire vidéo ?   printf(1+"texte"); ?
Code:
sprintf(addresseDansLEcran,"Hello")

Je ne connaissais pas le sprintf ainsi que le système octal  Embarassed  ...!!

le sprintf à l'air d'être plus rapide qu'un gotoxy()+printf()

J'ai même pu faire une inversion de couleur...
Code:
int main()
{
   unsigned int i;
   cls();
   for (i=0xBB80;i<0xBB80+1120;i+=40)
 sprintf(i,"\3\22texte\21\7 I=%d %c",i-0xBB80,65|128);
}
je pense, un peu plus compliqué pour plus d'un caractère en couleurs inversées

j'en apprends tout les jour Smile

la programmation c'est merveilleux !!!

Merci Dr Dbug de ton aide
goyo
goyo

Messages : 169
Date d'inscription : 02/05/2014
Age : 48
Localisation : Massy

Revenir en haut Aller en bas

printf et codes speciaux Empty Re: printf et codes speciaux

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous pouvez répondre aux sujets dans ce forum