(linux) Fixed signedness issue that caused previous change to behave strangely.
Unsupported modes are no longer listed. (linux) Fixed a "harmless" signedness warning in LBM loader Will sort modes tomorrow, with a qsort. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@200 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
40fe3ccf09
commit
75c772a724
25
boutons.c
25
boutons.c
@ -1215,7 +1215,7 @@ void Afficher_liste_modes(short Debut_liste, short Position_curseur)
|
||||
if (Position_curseur!=Indice)
|
||||
{
|
||||
Couleur_fond =CM_Noir;
|
||||
if (Mode_video[Mode_courant].Etat<128)
|
||||
if ((Mode_video[Mode_courant].Etat & 3) != 3)
|
||||
Couleur_texte=CM_Clair;
|
||||
else
|
||||
Couleur_texte=CM_Fonce;
|
||||
@ -1223,18 +1223,19 @@ void Afficher_liste_modes(short Debut_liste, short Position_curseur)
|
||||
else
|
||||
{
|
||||
Couleur_fond =CM_Fonce;
|
||||
if (Mode_video[Mode_courant].Etat<128)
|
||||
if ((Mode_video[Mode_courant].Etat & 3) != 3)
|
||||
Couleur_texte=CM_Blanc;
|
||||
else
|
||||
Couleur_texte=CM_Clair;
|
||||
}
|
||||
Num2str(Mode_video[Mode_courant].Largeur,Chaine,4);
|
||||
Num2str(Mode_video[Mode_courant].Hauteur,Chaine+4,4);
|
||||
Chaine[4]=' ';
|
||||
Num2str(Mode_video[Mode_courant].Hauteur,Chaine+5,4);
|
||||
|
||||
if(Mode_video[Mode_courant].Fullscreen == 1)
|
||||
memcpy(Chaine+8," Fullscreen ",15);
|
||||
memcpy(Chaine+9," Fullscreen ",15);
|
||||
else
|
||||
memcpy(Chaine+8," Window ",15);
|
||||
memcpy(Chaine+9," Window ",15);
|
||||
|
||||
if (Mode_video[Mode_courant].Largeur*3 == Mode_video[Mode_courant].Hauteur*4)
|
||||
Ratio=" 4/3 ";
|
||||
@ -1244,6 +1245,9 @@ void Afficher_liste_modes(short Debut_liste, short Position_curseur)
|
||||
Ratio="16/10 ";
|
||||
else
|
||||
Ratio=" ";
|
||||
if (Mode_courant == 0)
|
||||
Ratio=" ";
|
||||
|
||||
strcat(Chaine,Ratio);
|
||||
|
||||
Print_dans_fenetre(39,Pos_Y,Chaine,Couleur_texte,Couleur_fond);
|
||||
@ -1289,7 +1293,7 @@ void Bouton_Resol(void)
|
||||
Print_dans_fenetre( 12, 37,"Width:" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre(108, 37,"Height:" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre( 16, 60,"OK" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre( 55, 60,"X Y" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre( 55, 60,"X Y" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre(120, 60,"Win / Full" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre(219, 60,"Ratio" ,CM_Fonce,CM_Clair);
|
||||
Print_dans_fenetre( 30,170,"\03" ,CM_Fonce,CM_Clair);
|
||||
@ -1438,9 +1442,10 @@ void Bouton_Resol(void)
|
||||
Mode_video[Temp].Etat=((Mode_video[Temp].Etat&0x7F)+1)&3;
|
||||
else
|
||||
Mode_video[Temp].Etat=((Mode_video[Temp].Etat&0x7F)+3)&3;
|
||||
|
||||
|
||||
Effacer_curseur();
|
||||
Cocher_bouton_mode(19,16+(Bouton_clicke<<3),Mode_video[Temp].Etat);
|
||||
Afficher_liste_modes(Debut_liste,Position_curseur);
|
||||
Afficher_curseur();
|
||||
}
|
||||
}
|
||||
@ -1514,7 +1519,7 @@ void Bouton_Resol(void)
|
||||
|| (Hauteur_choisie!=Principal_Hauteur_image) )
|
||||
Redimentionner_image(Largeur_choisie,Hauteur_choisie);
|
||||
|
||||
if (Mode_video[Mode_choisi].Etat<=2)
|
||||
if ((Mode_video[Mode_choisi].Etat & 3) != 3)
|
||||
Initialiser_mode_video(
|
||||
Mode_video[Mode_choisi].Largeur,
|
||||
Mode_video[Mode_choisi].Hauteur,
|
||||
@ -2869,9 +2874,9 @@ int Meilleur_mode_video(void)
|
||||
Meilleure_hauteur=0;
|
||||
|
||||
|
||||
for (Mode=0; Mode<Nb_modes_video; Mode++)
|
||||
for (Mode=1; Mode<Nb_modes_video; Mode++)
|
||||
{
|
||||
if (Mode_video[Mode].Fullscreen && Mode_video[Mode].Etat<2)
|
||||
if (Mode_video[Mode].Fullscreen && (Mode_video[Mode].Etat&3)<2)
|
||||
{
|
||||
Temp_X=Mode_video[Mode].Largeur;
|
||||
Temp_Y=Mode_video[Mode].Hauteur;
|
||||
|
||||
149
init.c
149
init.c
@ -1301,17 +1301,16 @@ void Initialisation_des_operations(void)
|
||||
|
||||
// Définition d'un mode:
|
||||
|
||||
void Definir_mode_video(int Numero,
|
||||
short Largeur,
|
||||
void Definir_mode_video(short Largeur,
|
||||
short Hauteur,
|
||||
byte Mode,
|
||||
word Fullscreen)
|
||||
{
|
||||
byte Supporte = 0;
|
||||
|
||||
if (Numero >= MAX_MODES_VIDEO)
|
||||
if (Nb_modes_video >= MAX_MODES_VIDEO-1)
|
||||
{
|
||||
DEBUG("Erreur! Tentative de créer un mode de trop:", Numero);
|
||||
DEBUG("Erreur! Tentative de créer un mode de trop! Limite:", MAX_MODES_VIDEO);
|
||||
return;
|
||||
}
|
||||
if (!Fullscreen)
|
||||
@ -1319,13 +1318,17 @@ void Definir_mode_video(int Numero,
|
||||
else if (SDL_VideoModeOK(Largeur, Hauteur, 8, SDL_FULLSCREEN))
|
||||
Supporte = 1; // Supporte
|
||||
else
|
||||
Supporte = 128+3; // Non supporte, non modifiable
|
||||
{
|
||||
// Non supporte : on ne le prend pas
|
||||
return;
|
||||
}
|
||||
|
||||
Mode_video[Numero].Largeur = Largeur;
|
||||
Mode_video[Numero].Hauteur = Hauteur;
|
||||
Mode_video[Numero].Mode = Mode;
|
||||
Mode_video[Numero].Fullscreen = Fullscreen;
|
||||
Mode_video[Numero].Etat = Supporte;
|
||||
Mode_video[Nb_modes_video].Largeur = Largeur;
|
||||
Mode_video[Nb_modes_video].Hauteur = Hauteur;
|
||||
Mode_video[Nb_modes_video].Mode = Mode;
|
||||
Mode_video[Nb_modes_video].Fullscreen = Fullscreen;
|
||||
Mode_video[Nb_modes_video].Etat = Supporte;
|
||||
Nb_modes_video ++;
|
||||
}
|
||||
|
||||
|
||||
@ -1335,67 +1338,69 @@ void Definition_des_modes_video(void)
|
||||
{ // Numero LargHaut Mode FXFY Ratio Ref WinOnly Pointeur
|
||||
SDL_Rect** Modes;
|
||||
Nb_modes_video=0;
|
||||
Definir_mode_video( Nb_modes_video++, 640,480,MODE_SDL, 0);
|
||||
Definir_mode_video( Nb_modes_video++, 320,200,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,224,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,240,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,256,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,270,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,282,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,300,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,360,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,400,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,448,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,480,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,512,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,540,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,564,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 320,600,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,200,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,224,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,240,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,256,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,270,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,282,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,300,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,360,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,400,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,448,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,480,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,512,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,540,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,564,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 360,600,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,200,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,224,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,240,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,256,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,270,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,282,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,300,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,360,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,400,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,448,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,480,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,512,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,540,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,564,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 400,600,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,224,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,240,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,256,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,270,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,300,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,350,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,400,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,448,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,480,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,512,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,540,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,564,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 640,600,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++, 800,600,MODE_SDL, 1);
|
||||
Definir_mode_video( Nb_modes_video++,1024,768,MODE_SDL, 1);
|
||||
// Doit être en premier pour avoir le numéro 0:
|
||||
Definir_mode_video( 640,480,MODE_SDL, 0);
|
||||
|
||||
Definir_mode_video( 320,200,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,224,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,240,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,256,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,270,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,282,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,300,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,360,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,400,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,448,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,480,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,512,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,540,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,564,MODE_SDL, 1);
|
||||
Definir_mode_video( 320,600,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,200,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,224,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,240,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,256,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,270,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,282,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,300,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,360,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,400,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,448,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,480,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,512,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,540,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,564,MODE_SDL, 1);
|
||||
Definir_mode_video( 360,600,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,200,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,224,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,240,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,256,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,270,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,282,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,300,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,360,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,400,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,448,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,480,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,512,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,540,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,564,MODE_SDL, 1);
|
||||
Definir_mode_video( 400,600,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,224,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,240,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,256,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,270,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,300,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,350,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,400,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,448,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,480,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,512,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,540,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,564,MODE_SDL, 1);
|
||||
Definir_mode_video( 640,600,MODE_SDL, 1);
|
||||
Definir_mode_video( 800,600,MODE_SDL, 1);
|
||||
Definir_mode_video(1024,768,MODE_SDL, 1);
|
||||
|
||||
Modes = SDL_ListModes(NULL, SDL_FULLSCREEN);
|
||||
if ((Modes != (SDL_Rect**)0) && (Modes!=(SDL_Rect**)-1))
|
||||
@ -1414,7 +1419,7 @@ void Definition_des_modes_video(void)
|
||||
if (Indice2 >= Nb_modes_video)
|
||||
{
|
||||
// Nouveau mode à ajouter à la liste
|
||||
Definir_mode_video( Nb_modes_video++,Modes[Indice]->w,Modes[Indice]->h,MODE_SDL, 1);
|
||||
Definir_mode_video(Modes[Indice]->w,Modes[Indice]->h,MODE_SDL, 1);
|
||||
}
|
||||
}
|
||||
return;
|
||||
|
||||
@ -1289,8 +1289,8 @@ typedef struct
|
||||
{
|
||||
word Width;
|
||||
word Height;
|
||||
short Xorg; // Inutile
|
||||
short Yorg; // Inutile
|
||||
word Xorg; // Inutile
|
||||
word Yorg; // Inutile
|
||||
byte BitPlanes;
|
||||
byte Mask;
|
||||
byte Compression;
|
||||
@ -1298,8 +1298,8 @@ typedef struct
|
||||
word Transp_col;
|
||||
byte Xaspect; // Inutile
|
||||
byte Yaspect; // Inutile
|
||||
short Xscreen;
|
||||
short Yscreen;
|
||||
word Xscreen;
|
||||
word Yscreen;
|
||||
} __attribute__((__packed__)) T_Header_LBM;
|
||||
|
||||
// -- Tester si un fichier est au format LBM --------------------------------
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user