Fix many bugs introduced by the gp2x "hack" of not having a windowed mode.
Still not working perfectly, but at least i can manage to get the program in 320x240 by default on gp2x, without modifying the config files. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@856 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
92b5727994
commit
8987f07c8a
@ -1506,7 +1506,7 @@ void Button_Resolution(void)
|
||||
|
||||
default: // Boutons de tag des états des modes
|
||||
temp=list_start+clicked_button-8;
|
||||
if (temp && // On n'a pas le droit de cocher le mode fenêtré
|
||||
if (Video_mode[temp].Fullscreen==1 && // On n'a pas le droit de cocher le mode fenêtré
|
||||
!(Video_mode[temp].State & 128)) // Ni ceux non détectés par SDL
|
||||
{
|
||||
if (Window_attribute1==LEFT_SIDE)
|
||||
|
||||
29
init.c
29
init.c
@ -1671,7 +1671,13 @@ void Set_all_video_modes(void)
|
||||
for (index=0; Modes[index]; index++)
|
||||
{
|
||||
int index2;
|
||||
for (index2=1; index2 < Nb_video_modes; index2++)
|
||||
#if defined(__GP2X__)
|
||||
// On the GP2X the first mode is not windowed, so include it in the search.
|
||||
index2=0;
|
||||
#else
|
||||
index2=1;
|
||||
#endif
|
||||
for (/**/; index2 < Nb_video_modes; index2++)
|
||||
if (Modes[index]->w == Video_mode[index2].Width &&
|
||||
Modes[index]->h == Video_mode[index2].Height)
|
||||
{
|
||||
@ -1813,7 +1819,12 @@ int Load_CFG(int reload_all)
|
||||
!Read_word_le(Handle, &cfg_video_mode.Height) )
|
||||
goto Erreur_lecture_config;
|
||||
|
||||
for (index2=1; index2<Nb_video_modes; index2++)
|
||||
#if defined(__GP2X__)
|
||||
index2=0;
|
||||
#else
|
||||
index2=1;
|
||||
#endif
|
||||
for (/**/; index2<Nb_video_modes; index2++)
|
||||
{
|
||||
if (Video_mode[index2].Width==cfg_video_mode.Width &&
|
||||
Video_mode[index2].Height==cfg_video_mode.Height)
|
||||
@ -2044,7 +2055,12 @@ int Save_CFG(void)
|
||||
|
||||
// D'abord compter les modes pour lesquels l'utilisateur a mis une préférence
|
||||
modes_to_save=0;
|
||||
for (index=1; index<Nb_video_modes; index++)
|
||||
#if defined(__GP2X__)
|
||||
index = 0;
|
||||
#else
|
||||
index = 1;
|
||||
#endif
|
||||
for (/**/; index<Nb_video_modes; index++)
|
||||
if (Video_mode[index].State==0 || Video_mode[index].State==2 || Video_mode[index].State==3)
|
||||
modes_to_save++;
|
||||
|
||||
@ -2055,7 +2071,12 @@ int Save_CFG(void)
|
||||
if (!Write_byte(Handle, Chunk.Number) ||
|
||||
!Write_word_le(Handle, Chunk.Size) )
|
||||
goto Erreur_sauvegarde_config;
|
||||
for (index=1; index<Nb_video_modes; index++)
|
||||
#if defined(__GP2X__)
|
||||
index = 0;
|
||||
#else
|
||||
index = 1;
|
||||
#endif
|
||||
for (/**/; index<Nb_video_modes; index++)
|
||||
if (Video_mode[index].State==0 || Video_mode[index].State==2 || Video_mode[index].State==3)
|
||||
{
|
||||
cfg_video_mode.State =Video_mode[index].State;
|
||||
|
||||
2
misc.c
2
misc.c
@ -798,7 +798,7 @@ int Convert_videomode_arg(const char *argument)
|
||||
int mode_index;
|
||||
for (mode_index=0; mode_index<Nb_video_modes; mode_index++)
|
||||
// Attention les vieilles fonctions de lecture .ini mettent tout en MAJUSCULE.
|
||||
if (!strcasecmp(Mode_label(mode_index), argument))
|
||||
if (!strcasecmp(Mode_label(mode_index), argument) && (Video_mode[mode_index].State &128) ==0)
|
||||
return mode_index;
|
||||
|
||||
return -1;
|
||||
|
||||
18
readini.c
18
readini.c
@ -713,14 +713,18 @@ int Load_INI(T_Config * conf)
|
||||
}
|
||||
|
||||
// Optionnel, les dimensions de la fenêtre (à partir de beta 97.0%)
|
||||
Video_mode[0].Width = 640;
|
||||
Video_mode[0].Height = 480;
|
||||
if (!Load_INI_get_values (file,buffer,"Default_window_size",2,values))
|
||||
// Do that only if the first mode is actually windowed (not the case on gp2x for example)
|
||||
if(Video_mode[0].Fullscreen==0)
|
||||
{
|
||||
if ((values[0]>=320))
|
||||
Video_mode[0].Width = values[0];
|
||||
if ((values[1]>=200))
|
||||
Video_mode[0].Height = values[1];
|
||||
Video_mode[0].Width = 640;
|
||||
Video_mode[0].Height = 480;
|
||||
if (!Load_INI_get_values (file,buffer,"Default_window_size",2,values))
|
||||
{
|
||||
if ((values[0]>=320))
|
||||
Video_mode[0].Width = values[0];
|
||||
if ((values[1]>=200))
|
||||
Video_mode[0].Height = values[1];
|
||||
}
|
||||
}
|
||||
|
||||
conf->Mouse_merge_movement=100;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user