Browse Source

Update raudio_standalone.c

raysan5 5 years ago
parent
commit
168948d91d
1 changed files with 57 additions and 50 deletions
  1. 57 50
      examples/others/raudio_standalone.c

+ 57 - 50
examples/others/raudio_standalone.c

@@ -49,49 +49,27 @@
 #if defined(_WIN32)
 #if defined(_WIN32)
     #include <conio.h>          // Windows only, no stardard library
     #include <conio.h>          // Windows only, no stardard library
 #else
 #else
-    
-// Provide kbhit() function in non-Windows platforms
-#include <stdio.h>
-#include <termios.h>
-#include <unistd.h>
-#include <fcntl.h>
-
-// Check if a key has been pressed
-static int kbhit(void)
-{
-    struct termios oldt, newt;
-    int ch;
-    int oldf;
-
-    tcgetattr(STDIN_FILENO, &oldt);
-    newt = oldt;
-    newt.c_lflag &= ~(ICANON | ECHO);
-    tcsetattr(STDIN_FILENO, TCSANOW, &newt);
-    oldf = fcntl(STDIN_FILENO, F_GETFL, 0);
-    fcntl(STDIN_FILENO, F_SETFL, oldf | O_NONBLOCK);
-
-    ch = getchar();
-
-    tcsetattr(STDIN_FILENO, TCSANOW, &oldt);
-    fcntl(STDIN_FILENO, F_SETFL, oldf);
-
-    if (ch != EOF)
-    {
-        ungetc(ch, stdin);
-        return 1;
-    }
-
-    return 0;
-}
-
-// Get pressed character
-static char getch() { return getchar(); }
-
+    // Required for kbhit() function in non-Windows platforms
+    #include <stdio.h>
+    #include <termios.h>
+    #include <unistd.h>
+    #include <fcntl.h>
 #endif
 #endif
 
 
 #define KEY_ESCAPE  27
 #define KEY_ESCAPE  27
 
 
-int main()
+//----------------------------------------------------------------------------------
+// Module Functions Declaration
+//----------------------------------------------------------------------------------
+#if !defined(_WIN32)
+static int kbhit(void);             // Check if a key has been pressed
+static char getch();                // Get pressed character
+#endif
+
+//------------------------------------------------------------------------------------
+// Program main entry point
+//------------------------------------------------------------------------------------
+int main(int argc, char *argv[])
 {
 {
     // Initialization
     // Initialization
     //--------------------------------------------------------------------------------------
     //--------------------------------------------------------------------------------------
@@ -113,17 +91,10 @@ int main()
     {
     {
         if (kbhit()) key = getch();
         if (kbhit()) key = getch();
 
 
-        if (key == 's')
-        {
-            PlaySound(fxWav);
-            key = 0;
-        }
-
-        if (key == 'd')
-        {
-            PlaySound(fxOgg);
-            key = 0;
-        }
+        if ((key == 's') || (key == 'S')) PlaySound(fxWav);
+        if ((key == 'd') || (key == 'D')) PlaySound(fxOgg);
+        
+        key = 0;
 
 
         UpdateMusicStream(music);
         UpdateMusicStream(music);
     }
     }
@@ -140,3 +111,39 @@ int main()
 
 
     return 0;
     return 0;
 }
 }
+
+//----------------------------------------------------------------------------------
+// Module Functions Definition
+//----------------------------------------------------------------------------------
+#if !defined(_WIN32)
+// Check if a key has been pressed
+static int kbhit(void)
+{
+	struct termios oldt, newt;
+	int ch;
+	int oldf;
+
+	tcgetattr(STDIN_FILENO, &oldt);
+	newt = oldt;
+	newt.c_lflag &= ~(ICANON | ECHO);
+	tcsetattr(STDIN_FILENO, TCSANOW, &newt);
+	oldf = fcntl(STDIN_FILENO, F_GETFL, 0);
+	fcntl(STDIN_FILENO, F_SETFL, oldf | O_NONBLOCK);
+
+	ch = getchar();
+
+	tcsetattr(STDIN_FILENO, TCSANOW, &oldt);
+	fcntl(STDIN_FILENO, F_SETFL, oldf);
+
+	if (ch != EOF)
+	{
+		ungetc(ch, stdin);
+		return 1;
+	}
+
+	return 0;
+}
+
+// Get pressed character
+static char getch() { return getchar(); }
+#endif