]> git.mxchange.org Git - flightgear.git/commitdiff
"H" / "h" now control hud brightness as well with off being one of the
authorcurt <curt>
Thu, 16 Jul 1998 17:33:34 +0000 (17:33 +0000)
committercurt <curt>
Thu, 16 Jul 1998 17:33:34 +0000 (17:33 +0000)
  states.
Better checking for xmesa/fx 3dfx fullscreen/window support for deciding
  whether or not to build in the feature.
Translucent menu support.
HAVE_AUDIO_SUPPORT -> ENABLE_AUDIO_SUPPORT
Use fork() / wait() for playing mp3 init music in background under unix.
Changed default tile diameter to 5.

Main/GLUTkey.cxx
Main/GLUTmain.cxx
Main/Makefile.am
Main/options.cxx

index c176504fec57756d15107e3279aa2ae3708c1d58..3c68267a773817d89786c0d8048c7dc09373fb03 100644 (file)
@@ -39,6 +39,7 @@
 
 #include <Aircraft/aircraft.h>
 #include <Autopilot/autopilot.h> // Added autopilot.h to list, Jeff Goeke-Smith
+#include <Cockpit/hud.hxx>
 #include <Debug/fg_debug.h>
 #include <GUI/gui.h>
 #include <Include/fg_constants.h>
@@ -99,8 +100,9 @@ void GLUTkey(unsigned char k, int x, int y) {
            v->goal_view_offset = FG_PI * 1.75;
            return;
        case 72: /* H key */
-           status = current_options.get_hud_status();
-           current_options.set_hud_status(!status);
+           // status = current_options.get_hud_status();
+           // current_options.set_hud_status(!status);
+           HUD_brightkey( true );
            return;
        case 77: /* M key */
            t->warp -= 60;
@@ -111,7 +113,9 @@ void GLUTkey(unsigned char k, int x, int y) {
        case 87: /* W key */
 #if defined(FX) && !defined(WIN32)
            fullscreen = ( !fullscreen );
+#if defined(XMESA_FX_FULLSCREEN) && defined(XMESA_FX_WINDOW)
            XMesaSetFXmode(fullscreen ? XMESA_FX_FULLSCREEN : XMESA_FX_WINDOW);
+#endif
 #endif
            return;
        case 88: /* X key */
@@ -177,6 +181,9 @@ void GLUTkey(unsigned char k, int x, int y) {
        case 51: /* numeric keypad 3 (Pg Dn) */
            fgThrottleMove(0, -0.01);
            return;
+       case 104: /* h key */
+           HUD_brightkey( false );
+           return;
        case 109: /* m key */
            t->warp += 60;
            return;
@@ -298,9 +305,19 @@ void GLUTspecialkey(int k, int x, int y) {
 
 
 /* $Log$
-/* Revision 1.15  1998/07/13 21:01:34  curt
-/* Wrote access functions for current fgOPTIONS.
+/* Revision 1.16  1998/07/16 17:33:34  curt
+/* "H" / "h" now control hud brightness as well with off being one of the
+/*   states.
+/* Better checking for xmesa/fx 3dfx fullscreen/window support for deciding
+/*   whether or not to build in the feature.
+/* Translucent menu support.
+/* HAVE_AUDIO_SUPPORT -> ENABLE_AUDIO_SUPPORT
+/* Use fork() / wait() for playing mp3 init music in background under unix.
+/* Changed default tile diameter to 5.
 /*
+ * Revision 1.15  1998/07/13 21:01:34  curt
+ * Wrote access functions for current fgOPTIONS.
+ *
  * Revision 1.14  1998/07/06 02:42:02  curt
  * Added support for switching between fullscreen and window mode for
  * Mesa/3dfx/glide.
index bea6d42151d08db95a0559ce9568bccf71f8ff82..b4d7f400f0f5fe08b6429edffa3c77011789e9fa 100644 (file)
@@ -45,7 +45,9 @@
 #include <sys/stat.h> /* for stat() */
 
 #ifdef HAVE_UNISTD_H
-#  include <unistd.h>   /* for stat() */
+#  include <unistd.h>    /* for fork() && stat() */
+#  include <sys/types.h> /* for wait() */
+#  include <sys/wait.h>  /* for wait() */
 #endif
 
 #include <Include/fg_constants.h>  // for VERSION
@@ -58,7 +60,7 @@
 #include <Astro/stars.hxx>
 #include <Astro/sun.hxx>
 
-#ifdef HAVE_AUDIO_SUPPORT
+#ifdef ENABLE_AUDIO_SUPPORT
 #  include <Audio/src/sl.h>
 #  include <Audio/src/sm.h>
 #endif
@@ -98,7 +100,7 @@ static idle_state = 0;
 int use_signals = 0;
 
 // Global structures for the Audio library
-#ifdef HAVE_AUDIO_SUPPORT
+#ifdef ENABLE_AUDIO_SUPPORT
 slScheduler *audio_sched;
 smMixer *audio_mixer;
 slSample *s1;
@@ -155,9 +157,9 @@ static void fgInitVisuals( void ) {
     if ( (current_options.get_fog() == 1) || 
         (current_options.get_shading() == 0) ) {
        // if fastest fog requested, or if flat shading force fastest
-       xglHint (GL_FOG_HINT, GL_FASTEST );
+       xglHint ( GL_FOG_HINT, GL_FASTEST );
     } else if ( current_options.get_fog() == 2 ) {
-       xglHint (GL_FOG_HINT, GL_NICEST );
+       xglHint ( GL_FOG_HINT, GL_NICEST );
     }
     if ( current_options.get_wireframe() ) {
        // draw wire frame
@@ -424,7 +426,12 @@ static void fgRenderFrame( void ) {
        // if (!o->panel_status) {
        // fgUpdateInstrViewParams();
        // }
+
+       // We can do translucent menus, so why not. :-)
+       xglEnable    ( GL_BLEND ) ;
+       xglBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ) ;
        puDisplay();
+       xglDisable   ( GL_BLEND ) ;
     }
 
     xglutSwapBuffers();
@@ -609,7 +616,7 @@ static void fgMainLoop( void ) {
     global_events.Process();
 
     // Run audio scheduler
-#ifdef HAVE_AUDIO_SUPPORT
+#ifdef ENABLE_AUDIO_SUPPORT
     audio_sched -> update();
 #endif
 
@@ -631,7 +638,7 @@ static void fgMainLoop( void ) {
 static void fgIdleFunction ( void ) {
     fgGENERAL *g;
     char path[256], mp3file[256], command[256], slfile[256];
-    static char *lockfile = "/tmp/mpg123.running";
+    // static char *lockfile = "/tmp/mpg123.running";
 
     g = &general;
 
@@ -651,12 +658,21 @@ static void fgIdleFunction ( void ) {
            current_options.get_fg_root(mp3file);
            strcat(mp3file, "/Sounds/");
            strcat(mp3file, "intro.mp3");
+           /* 
            sprintf(command, 
                    "(touch %s; mpg123 %s > /dev/null 2>&1; /bin/rm %s) &", 
                    lockfile, mp3file, lockfile );
+                   */
+           sprintf(command, "mpg123 %s > /dev/null 2>&1", mp3file);
            fgPrintf( FG_GENERAL, FG_INFO, 
                      "Starting intro music: %s\n", mp3file);
-           system(command);
+
+           int pid = fork () ;
+
+           if ( pid == 0 ) {
+               system ( command );
+               exit ( 0 ) ;
+           }
        }
 #endif
 
@@ -704,21 +720,25 @@ static void fgIdleFunction ( void ) {
        idle_state++;
     } else if ( idle_state == 6 ) {
        // Initialize audio support
-#ifdef HAVE_AUDIO_SUPPORT
+#ifdef ENABLE_AUDIO_SUPPORT
 
 #if !defined(WIN32)
        if ( current_options.get_intro_music() ) {
            // Let's wait for mpg123 to finish
-           struct stat stat_buf;
+           // struct stat stat_buf;
 
            fgPrintf( FG_GENERAL, FG_INFO, 
-                     "Waiting for mpg123 player to finish " );
+                     "Waiting for mpg123 player to finish ...\n" );
+           /*
            while ( stat(lockfile, &stat_buf) == 0 ) {
                // file exist, wait ...
                sleep(1);
                fgPrintf( FG_GENERAL, FG_INFO, ".");
            }
            fgPrintf( FG_GENERAL, FG_INFO, "\n");
+           */
+
+           wait(0);
        }
 #endif // WIN32
 
@@ -728,12 +748,12 @@ static void fgIdleFunction ( void ) {
        audio_sched -> setSafetyMargin ( 1.0 ) ;
        current_options.get_fg_root(path);
        strcat(path, "/Sounds/");
-
        strcpy(slfile, path);
-       strcat(slfile, "prpidle.wav");
-       // s1 = new slSample ( slfile );
-       s1 = new slSample ( "/dos/X-System-HSR/sounds/xp_recip.wav", 
-                           audio_sched );
+       strcat(slfile, "wasp.wav");
+
+       s1 = new slSample ( slfile );
+       // s1 = new slSample ( "/dos/X-System-HSR/sounds/xp_recip.wav", 
+       //                     audio_sched );
        printf("Rate = %d  Bps = %d  Stereo = %d\n", 
               s1 -> getRate(), s1 -> getBps(), s1 -> getStereo());
        audio_sched -> loopSample ( s1 );
@@ -894,6 +914,16 @@ int main( int argc, char **argv ) {
 
 
 // $Log$
+// Revision 1.36  1998/07/16 17:33:35  curt
+// "H" / "h" now control hud brightness as well with off being one of the
+//   states.
+// Better checking for xmesa/fx 3dfx fullscreen/window support for deciding
+//   whether or not to build in the feature.
+// Translucent menu support.
+// HAVE_AUDIO_SUPPORT -> ENABLE_AUDIO_SUPPORT
+// Use fork() / wait() for playing mp3 init music in background under unix.
+// Changed default tile diameter to 5.
+//
 // Revision 1.35  1998/07/13 21:01:36  curt
 // Wrote access functions for current fgOPTIONS.
 //
index 454d74120ac439771ce73638445fe9d021ab416d..4c9b973907c1fe147abe89a8814a4e767d16569f 100644 (file)
@@ -1,14 +1,18 @@
-if HAVE_AUDIO_SUPPORT
-DEFS += -DHAVE_AUDIO_SUPPORT
+if ENABLE_AUDIO_SUPPORT
+DEFS += -DENABLE_AUDIO_SUPPORT
 AUDIO_LIBS = \
        $(top_builddir)/Lib/Audio/src/libsl.la \
        $(top_builddir)/Lib/Audio/src/libsm.la
 endif
 
-if HAVE_WIN32_AUDIO
+if ENABLE_WIN32_AUDIO
 LIBS += -lwinmm
 endif
 
+if ENABLE_XMESA_FX
+DEFS += -DXMESA -DFX
+endif
+
 EXTRA_DIST = runfg.in runfg.bat.in
 
 bin_PROGRAMS = fg
index 5e3b9ff400f442716fdcead1af367adfc0cd4e29..314dbe576b383516ee5c77969cf1bf4ccf376d91 100644 (file)
@@ -86,7 +86,7 @@ fgOPTIONS::fgOPTIONS( void ) {
     wireframe = 0;
 
     // Scenery options
-    tile_diameter = 7;
+    tile_diameter = 5;
 
     // Time options
     time_offset = 0;
@@ -488,6 +488,16 @@ fgOPTIONS::~fgOPTIONS( void ) {
 
 
 // $Log$
+// Revision 1.17  1998/07/16 17:33:38  curt
+// "H" / "h" now control hud brightness as well with off being one of the
+//   states.
+// Better checking for xmesa/fx 3dfx fullscreen/window support for deciding
+//   whether or not to build in the feature.
+// Translucent menu support.
+// HAVE_AUDIO_SUPPORT -> ENABLE_AUDIO_SUPPORT
+// Use fork() / wait() for playing mp3 init music in background under unix.
+// Changed default tile diameter to 5.
+//
 // Revision 1.16  1998/07/13 21:01:39  curt
 // Wrote access functions for current fgOPTIONS.
 //