Forum Graph100

Forum Graph100

Vous n'êtes pas identifié.

Annonce

Bonjour et bienvenue sur le nouveau Forum Graph100 !
L'intégralité des données a été transférée sur un forum PunBB et tout les comptes sont fonctionnels avec le même nom d'utilisateur et mot de passe.
Un wiki est aussi disponible avec le même compte ! N'oubliez pas de remettre votre avatar, bon surf !
Pour plus d'informations, consultez ce post.

#1 02 Jun 2002 13:51:42

deather
Membre Communauté Graph100
Lieu: Banlieue parisienne (Fresnes)
Date d'inscription: 05 May 2002
Messages: 909

POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

jai deja mis un post mé sans succé ... qqun peux til me dire komment faire une police ??? merci a +


..:: Deather ::..
deather.dede@gmail.com.NO.SPAM

Hors ligne

 

#2 02 Jun 2002 15:31:17

casioworld
Programmeur Graph100
Lieu: Palaiseau (Essonne)
Date d'inscription: 08 Feb 2002
Messages: 1843
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

c'est pas compliqué . KTR avait pourtant maché tout le boulot.
Je vais t'expliquer comment fait KTR. En fait chaque lettre est une petite image (sprite mais je crois que tu maitrise cela).
voila un exemple pour afficher un truc:

#include <stdio.h>
#include <dos.h>
#include <bios.h>

void inv_pixel(unsigned short int x, unsigned short int y)
    {
    asm push ax;
    asm push cx;
    asm push dx;
    asm mov cx,x;
    asm mov dx,y;
    asm mov ax,0x1A20;
    asm mov es,ax;
    asm mov si,0x003f;
    asm sub si,dx;
    asm sub cx,0x80;
    asm not cx;
    asm push cx;
    asm and cl,0xf8;
    asm shl cx,0x03;
    asm add si,cx;
    asm pop cx;
    asm and cl,0x07;
    asm mov al,es:[si];
    asm ror al,cl;
    asm not al;
    asm and al,1;
    asm mov ah,0xfe;
    asm rol ah,cl;
    asm and es:[si],ah;
    asm mov ah,al;
    asm rol ah,cl;
    asm or es:[si],ah;
    asm pop dx;
    asm pop cx;
    asm pop ax;
    }

unsigned char ktrascii[59][5][3] =
{
/*tous les sprites de tous les caracteres*/
  0,0,0, 0,0,0, 0,0,0, 0,0,0, 0,0,0, //_ -> 32 (00)
  0,1,0, 0,1,0, 0,1,0, 0,0,0, 0,1,0, //! -> 33 (01)
  1,0,1, 1,0,1, 0,0,0, 0,0,0, 0,0,0, //" -> 34 (02)
  1,0,1, 1,1,1, 1,0,1, 1,1,1, 1,0,1, //# -> 35 (03)
  1,1,1, 1,1,0, 1,1,1, 0,1,1, 1,1,1, //$ -> 36 (04)
  1,0,0, 0,0,1, 0,1,0, 1,0,0, 0,0,1, //% -> 37 (05)
  0,1,0, 1,0,1, 0,1,1, 1,0,1, 0,1,1, //& -> 38 (06)
  1,1,0, 1,1,0, 0,0,0, 0,0,0, 0,0,0, //ø -> 39 (07)
  0,0,1, 0,1,0, 0,1,0, 0,1,0, 0,0,1, //( -> 40 (0cool
  1,0,0, 0,1,0, 0,1,0, 0,1,0, 1,0,0, //) -> 41 (09)
  1,1,1, 1,1,1, 1,1,1, 1,1,1, 1,1,1, //* -> 42 (10)
  0,0,0, 0,1,0, 1,1,1, 0,1,0, 0,0,0, //+ -> 43 (11)
  0,0,0, 0,0,0, 0,0,0, 0,1,0, 1,0,0, //, -> 44 (12)
  0,0,0, 0,0,0, 1,1,1, 0,0,0, 0,0,0, //- -> 45 (13)
  0,0,0, 0,0,0, 0,0,0, 0,0,0, 1,0,0, //. -> 46 (14)
  0,0,1, 0,1,0, 0,1,0, 0,1,0, 1,0,0, /// -> 47 (15)
  1,1,1, 1,0,1, 1,0,1, 1,0,1, 1,1,1, //0 -> 48 (16)
  0,1,0, 1,1,0, 0,1,0, 0,1,0, 1,1,1, //1 -> 49 (17)
  1,1,1, 0,0,1, 1,1,1, 1,0,0, 1,1,1, //2 -> 50 (1cool
  1,1,1, 0,0,1, 1,1,1, 0,0,1, 1,1,1, //3 -> 51 (19)
  1,0,1, 1,0,1, 1,1,1, 0,0,1, 0,0,1, //4 -> 52 (20)
  1,1,1, 1,0,0, 1,1,1, 0,0,1, 1,1,1, //5 -> 53 (21)
  1,1,1, 1,0,0, 1,1,1, 1,0,1, 1,1,1, //6 -> 54 (22)
  1,1,1, 1,0,1, 0,0,1, 0,0,1, 0,0,1, //7 -> 55 (23)
  1,1,1, 1,0,1, 1,1,1, 1,0,1, 1,1,1, //8 -> 56 (24)
  1,1,1, 1,0,1, 1,1,1, 0,0,1, 1,1,1, //9 -> 57 (25)
  0,0,0, 0,1,0, 0,0,0, 0,1,0, 0,0,0, //: -> 58 (26)
  0,0,0, 0,1,0, 0,0,0, 0,1,0, 1,0,0, //; -> 59 (27)
  0,0,1, 0,1,1, 1,1,1, 0,1,1, 0,0,1, //< -> 60 (2cool
  0,0,0, 1,1,1, 0,0,0, 1,1,1, 0,0,0, //= -> 61 (29)
  1,0,0, 1,1,0, 1,1,1, 1,1,0, 1,0,0, //> -> 62 (30)
  0,1,0, 1,0,1, 0,0,1, 0,1,0, 0,1,0, //? -> 63 (31)
  1,1,1, 0,0,1, 1,1,1, 1,0,1, 1,1,1, //@ -> 64 (32)
  0,1,0, 1,0,1, 1,0,1, 1,1,1, 1,0,1, //A -> 65 (33)
  1,1,0, 1,0,1, 1,1,0, 1,0,1, 1,1,0, //B -> 66 (34)
  0,1,1, 1,0,0, 1,0,0, 1,0,0, 0,1,1, //C -> 67 (35)
  1,1,0, 1,0,1, 1,0,1, 1,0,1, 1,1,0, //D -> 68 (36)
  1,1,1, 1,0,0, 1,1,0, 1,0,0, 1,1,1, //E -> 69 (37)
  1,1,1, 1,0,0, 1,1,0, 1,0,0, 1,0,0, //F -> 70 (3cool
  1,1,1, 1,0,0, 1,1,1, 1,0,1, 1,1,1, //G -> 71 (39)
  1,0,1, 1,0,1, 1,1,1, 1,0,1, 1,0,1, //H -> 72 (40)
  1,1,1, 0,1,0, 0,1,0, 0,1,0, 1,1,1, //I -> 73 (41)
  1,1,1, 0,0,1, 0,0,1, 1,0,1, 1,1,1, //J -> 74 (42)
  1,0,1, 1,1,0, 1,0,0, 1,1,0, 1,0,1, //K -> 75 (43)
  1,0,0, 1,0,0, 1,0,0, 1,0,0, 1,1,1, //L -> 76 (44)
  1,0,1, 1,1,1, 1,0,1, 1,0,1, 1,0,1, //M -> 77 (45)
  1,0,1, 1,1,1, 1,1,1, 1,0,1, 1,0,1, //N -> 78 (46)
  0,1,0, 1,0,1, 1,0,1, 1,0,1, 0,1,0, //O -> 79 (47)
  1,1,0, 1,0,1, 1,1,0, 1,0,0, 1,0,0, //P -> 80 (4cool
  0,1,0, 1,0,1, 1,0,1, 0,1,0, 0,0,1, //Q -> 81 (49)
  1,1,0, 1,0,1, 1,1,0, 1,1,0, 1,0,1, //R -> 82 (50)
  1,1,1, 1,0,0, 1,1,1, 0,0,1, 1,1,1, //S -> 83 (51)
  1,1,1, 0,1,0, 0,1,0, 0,1,0, 0,1,0, //T -> 84 (52)
  1,0,1, 1,0,1, 1,0,1, 1,0,1, 1,1,1, //U -> 85 (53)
  1,0,1, 1,0,1, 1,0,1, 1,0,1, 0,1,0, //V -> 86 (54)
  1,0,1, 1,0,1, 1,0,1, 1,1,1, 1,0,1, //W -> 87 (55)
  1,0,1, 1,0,1, 0,1,0, 1,0,1, 1,0,1, //X -> 88 (56)
  1,0,1, 1,0,1, 0,1,0, 0,1,0, 1,0,0, //Y -> 89 (57)
  1,1,1, 0,0,1, 0,1,0, 1,0,0, 1,1,1  //Z -> 90 (5cool

};

/*fonction pour affiche run caractere*/

void putchar3(unsigned char x, unsigned char y, unsigned char lettre)
{
  unsigned char i, j;
  if (lettre < 32 || lettre > 90) lettre = 69;
  lettre -= 32;
  for (i = 0 ; i < 3 ; i++)
  {
    for (j = 0 ; j < 5 ; j++)
    {
      if (ktrascii[lettre][j][i] == 1) inv_pixel(x - i, y - j);
          }
  }
}

void main(void)
{
putchar3(50,50,50);
getch();

exit();
}

j'explique :putchar3(50,50,50);
affiche un caractere avec X,Y comme coordornnées puis le  numero du caractere
les numeros des caracteres sont en parentheses en haut du code.

    @+
mais ce qui me fait chier avec le truc de KTR c'est qu'on doit se faire chier à afficher caractere par caractere.


- http://www.casioworld.wb.st  --> plus grande base de données pour Graph100+
- http://efreidelirium.free.fr --> vive l'EFREI mdr

Hors ligne

 

#3 02 Jun 2002 16:18:47

KTr
Haut fonctionnaire graph100.com
Lieu: Saint Etienne
Date d'inscription: 19 Mar 2002
Messages: 1909
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

:tresfache:  :rocket: Rhaa tu ma tué :

mais ce qui me fait chier avec le truc de KTR c'est qu'on doit se faire chier à afficher caractere par caractere.

J'ai qd meme pa fait ca pour rien :
void print3(unsigned char x, unsigned char y, unsigned char string[])
{
  for(int i = 0 ; string[i] != 0 ; i++) putchar3(x - 4*i, y, string[i]);
}
print3(50,50,"ET LA TU MET TA PHRASE EN MAJUSCULE ENTRE GUILLEMETS ET MOINS LONGUE SINON CA SORT DE L ECRAN !!!");

M'enfin qd meme !! lol


(¯`·.¸¸.·´¯`·.¸¸.-> www.ktr.fr.fm  ktr@fr.fm <-.¸¸.·´¯`·.¸¸.·´¯)

Hors ligne

 

#4 02 Jun 2002 17:34:46

Julien
C++iste convaincu
Lieu: Waterloo (Be)
Date d'inscription: 29 May 2002
Messages: 1456
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

Lol faut avouer que c'est plus facile comme ca...  lol


Pensez à surveiller mes releases wink

Hors ligne

 

#5 03 Jun 2002 02:00:08

casioworld
Programmeur Graph100
Lieu: Palaiseau (Essonne)
Date d'inscription: 08 Feb 2002
Messages: 1843
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

j'avoue ! j'avais pas vu !  :oops:
une fois que j'avais reussit à afficher un caractere je m'etais arrreté la, je n'avais continuer à analyser ton code. M'enfin, c'est quand meme fachement  plus cool si on peut afficher tout une phrase. wink

j'espere que deather à tout compris cette fois ci !!! lol


- http://www.casioworld.wb.st  --> plus grande base de données pour Graph100+
- http://efreidelirium.free.fr --> vive l'EFREI mdr

Hors ligne

 

#6 03 Jun 2002 11:56:23

Julien
C++iste convaincu
Lieu: Waterloo (Be)
Date d'inscription: 29 May 2002
Messages: 1456
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

si moi j'ai compris, tout le monde peut le faire  big_smile


Pensez à surveiller mes releases wink

Hors ligne

 

#7 03 Jun 2002 12:50:33

deather
Membre Communauté Graph100
Lieu: Banlieue parisienne (Fresnes)
Date d'inscription: 05 May 2002
Messages: 909

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

ouiaille. alors la  :?  g pas tré bien compris. deja l'asm ji pige K.E.U D.A.L.L.E mais alors l'ASCII men parle pas. javais vu un truc de duobab opourscorch mé c un peu cho... si jen comprend se ke vous mavé dit, je créé des sprite (auten de sprite ke de lettre) puis une fonction qui affiche ses sprite les un après les autre. sinon ktr tu pourrais menvoyé ta fonction pour les phrase ? merci !  wink


..:: Deather ::..
deather.dede@gmail.com.NO.SPAM

Hors ligne

 

#8 03 Jun 2002 14:38:30

KTr
Haut fonctionnaire graph100.com
Lieu: Saint Etienne
Date d'inscription: 19 Mar 2002
Messages: 1909
Site web

Re: POLICE CASIO : HHHHHEEEEELLLLLPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!

La fonction est ds mon post au dessus !!! Sinon la table et tout est ds le post : "texte en c" je crois va voir.... cool


(¯`·.¸¸.·´¯`·.¸¸.-> www.ktr.fr.fm  ktr@fr.fm <-.¸¸.·´¯`·.¸¸.·´¯)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr