@@ -25,6 +25,8 @@ int main(int argc, char* argv[])
2525 char * rom_file = NULL ;
2626 char * symbol_file = NULL ;
2727 bool show_usage = false ;
28+ bool force_fullscreen = false ;
29+ bool force_windowed = false ;
2830 int ret = 0 ;
2931
3032 for (int i = 0 ; i < argc; i++)
@@ -42,6 +44,14 @@ int main(int argc, char* argv[])
4244 printf (" Author: Ignacio Sánchez (drhelius)\n " );
4345 return 0 ;
4446 }
47+ else if ((strcmp (argv[i], " -f" ) == 0 ) || (strcmp (argv[i], " --fullscreen" ) == 0 ))
48+ {
49+ force_fullscreen = true ;
50+ }
51+ else if ((strcmp (argv[i], " -w" ) == 0 ) || (strcmp (argv[i], " --windowed" ) == 0 ))
52+ {
53+ force_windowed = true ;
54+ }
4555 else if (argv[i][0 ] == ' -' )
4656 {
4757 show_usage = true ;
@@ -68,11 +78,20 @@ int main(int argc, char* argv[])
6878
6979 if (show_usage)
7080 {
71- printf (" Usage: %s [rom_file] [symbol_file]\n " , argv[0 ]);
81+ printf (" Usage: %s [options] [rom_file] [symbol_file]\n " , argv[0 ]);
82+ printf (" Options:\n " );
83+ printf (" -f, --fullscreen Start in fullscreen mode\n " );
84+ printf (" -w, --windowed Start in windowed mode with menu visible\n " );
85+ printf (" -v, --version Display version information\n " );
86+ printf (" -h, --help Display this help message\n " );
7287 return ret;
7388 }
7489
75- ret = application_init (rom_file, symbol_file);
90+ // Don't allow both fullscreen and windowed at the same time
91+ if (force_fullscreen && force_windowed)
92+ force_fullscreen = false ;
93+
94+ ret = application_init (rom_file, symbol_file, force_fullscreen, force_windowed);
7695
7796 if (ret == 0 )
7897 application_mainloop ();
0 commit comments