This commit is contained in:
flo 2017-04-11 11:49:19 +02:00
parent 0b51ef0ad0
commit c2af1e136b
3 changed files with 31 additions and 16 deletions

View File

@ -20,7 +20,7 @@ $(OBJDIR)/%.bmp.o: $(IMGDIR)/%.bmp
## Compile fonts
$(OBJDIR)/%.bmp.o: $(FONTDIR)/%.bmp
fxconv $< -o $@ -n $(patsubst %.bmp,font_%,$(notdir $<))
fxconv $< -o --font $@ -n $(patsubst %.bmp,font_%,$(notdir $<))
## Make an object file out of an ASM source file
$(OBJDIR)/%.s.o: $(SRCDIR)/%.s

View File

@ -13,7 +13,7 @@
unsigned int masse_mol : 20; // masse molaire * 1000
unsigned int groupe : 5; // x
unsigned int periode : 3; //u
unsigned int periode : 3; // y
unsigned int electro_neg :9; //electroneg *100
unsigned int famille : 4;

View File

@ -146,7 +146,7 @@ struct Element elements[] =
{/*87 */"Francium", "Fr", 1, 223000, 1, 7, 70, 4, 0, {2, 8, 18, 32, 18, 8, 1} },
{/*88 */"Radium", "Ra", 2, 226000, 2, 7, 90, 5, 0, {2, 8, 18, 32, 18, 8, 2} },
{/*89 */"Actinium", "Ac", 3, 227000, 4, 7, 110, 7, 0, {2, 8, 18, 32, 18, 9, 2} }, // actinide
{/*90 */"Thorium", "Th", 4, 232038, 5, 7, 130, {2, 8, 18, 32, 18, 10, 2} },
{/*90 */"Thorium", "Th", 4, 232038, 5, 7, 130, 7, 0, {2, 8, 18, 32, 18, 10, 2} },
{/*91 */"Protactinium", "Pa", 5, 231036, 6, 7, 150, 7, 0, {2, 8, 18, 32, 20, 9, 2} },
{/*92 */"Uranium", "U", 6, 238029, 7, 7, 138, 7, 0, {2, 8, 18, 32, 21, 9, 2} },
{/*93 */"Neptunium", "Np", 7, 237000, 8, 7, 136, 7, 0, {2, 8, 18, 32, 22, 9, 2} },
@ -197,9 +197,9 @@ char *etat[9]={
{"inconnu"}, //3
};
//extern Font font_modern;
extern Font font_modern;
//text_configure(font_modern, color_black);
int main()
{
@ -222,16 +222,30 @@ void Mini(char* chaine, int n ) // fonc defini le numero de la fonction
int tableauElement(int chang)
{
short decalx=0, decaly=0;
short x, y;
short i;
short decalx = 0, decaly = 0;
unsigned char x = 1, y = 1;
unsigned char i;
text_configure(font_modern, color_black);
while(1)
{
dclear();
for(i = 0; i < 118; i++)
{
x = elements[i].groupe;
y = ( elements[i].famille == 6 || elements[i].famille == 7 ? elements[i].periode + 3 : elements[i].periode);
dtext(13*x+decalx-12, 8*y+decaly-6, elements[i].symbol);
}
dupdate();
/*chang=(chang>=118 ? 0 : chang<=-1 ? 117 : chang);
decalx=-(((12*elements[chang].groupe)-13)*108)/240; // on fait un decalage lorsque l'on bouge
@ -240,7 +254,7 @@ int tableauElement(int chang)
for(i=0;i<118;i++)
{
x=elements[i].groupe;
y=(i>55 && i<71 ? 9 : i>87 && i<103 ? 10 : elements[i].periode);
dtext(12*x+decalx-12, 7*y+decaly-6, elements[i].symbol);
@ -252,7 +266,7 @@ int tableauElement(int chang)
dtext(12*3-11+decalx, 7*10+decaly-5, "2");
}
if (chang>55 && chang<71)
if (element)
{
drect(12*elements[chang].groupe-13+decalx, 7*9-7+decaly, 12*elements[chang].groupe-1+decalx, 7*9+decaly, color_black);
}
@ -272,15 +286,16 @@ int tableauElement(int chang)
Mini("mol", 2);
Mini("det", 5);
*/
key=getkey();
switch(key)
{
case KEY_LEFT : chang+=1; break;
case KEY_RIGHT : chang-=1; break;
case KEY_DOWN : chang=elements[chang].dessous; break;
case KEY_UP : chang=elements[chang].dessus; break;
case KEY_RIGHT : x++; break;
case KEY_LEFT : x--; break;
case KEY_DOWN : y++; break;
case KEY_UP : y--; break;
case KEY_F4 : chang=tableauEleMini(chang); break;
case KEY_F2 : chang=find(chang); break;
@ -289,7 +304,7 @@ int tableauElement(int chang)
case KEY_F6 : case KEY_EXE : chang=detailsElement(chang); break;
case KEY_EXIT : return;
}*/
}
}
}