]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
imported winuaesrc1340.zip
authorToni Wilen <twilen@winuae.net>
Sat, 30 Dec 2006 19:59:53 +0000 (21:59 +0200)
committerToni Wilen <twilen@winuae.net>
Mon, 22 Feb 2010 19:31:11 +0000 (21:31 +0200)
od-win32/WinUAE_Install.nsi
od-win32/makeexe.bat
od-win32/sounddep/sound.c
od-win32/srcrelease.bat
od-win32/win32.c
od-win32/win32.h
od-win32/win32gui.c
od-win32/winuaechangelog.txt

index 608d44ff86d3b836bfacd05fc7f4be140bb43eaa..d19604abeae47caa74a1c5cd67e1e5315e6c4d12 100755 (executable)
@@ -1,5 +1,5 @@
 !define PRODUCT_NAME "WinUAE"
-!define PRODUCT_VERSION "1.3.3"
+!define PRODUCT_VERSION "1.3.4"
 !define PRODUCT_PUBLISHER "Toni Wilen"
 !define PRODUCT_WEB_SITE "http://www.winuae.net/"
 !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\winuae.exe"
@@ -7,7 +7,7 @@
 !define PRODUCT_UNINST_ROOT_KEY "HKLM"
 
 ;-- Your path here
-!define DISTPATH "d:\projects\winuae\distribution"
+!define DISTPATH "c:\projects\winuae\distribution"
 
 SetCompressor lzma
 
index c58d8cbb0c59a3a454a3f12f638b5a4606b3586e..1a476fa699e8d2a20800478afc914741b3d122c5 100755 (executable)
@@ -1,19 +1,17 @@
 del *.zip
-copy f:\amiga\winuae.exe d:\projects\winuae\distribution
-copy resourcedll\release\resourcedll.dll f:\amiga\WinUAE_default.dll
-"d:\winutils\NSIS\makensis.exe" winuae_install
-cd d:\projects\winuae\distribution
-copy docs\windows\translation.txt f:\amiga
-zip -9 -r d:\projects\winuae\src\od-win32\winuae.zip *
-cd d:\projects\winuae\src\od-win32
-copy installwinuae.exe f:\amiga\InstallWinUAE%1.exe
-copy winuae.zip f:\amiga\WinUAE%1.zip
-cdd f:\amiga
+copy d:\amiga\winuae.exe c:\projects\winuae\distribution
+"c:\program files (x86)\NSIS\makensis.exe" winuae_install
+cd c:\projects\winuae\distribution
+copy docs\windows\translation.txt d:\amiga
+zip -9 -r c:\projects\winuae\src\od-win32\winuae.zip *
+cd c:\projects\winuae\src\od-win32
+copy installwinuae.exe d:\amiga\InstallWinUAE%1.exe
+copy winuae.zip d:\amiga\WinUAE%1.zip
+cdd d:\amiga
 zip -9 WinUAE%1_translation WinUAE_default.dll translation.txt
-del WinUAE_default.dll
 del translation.txt
 rem zip -9 WinUAEMini%1 winuae_mini.exe
-cdd d:\projects\winuae\src\od-win32
-zip -9 winuaedebug%1 winuae_msvc\release\winuae.pdb
-copy winuaedebug%1.zip f:\amiga\winuaepackets
+cdd c:\projects\winuae\src\od-win32
+zip -9 winuaedebug%1 winuae_msvc\release\winuae.pdb winuae_msvc\fullrelease\winuae.pdb
+copy winuaedebug%1.zip d:\amiga\winuaepackets
 del *.zip
index 96145804649788783b7e304fe7096fd322c28b5b..fafbfab512588dfa9c70b7fcefe793ad14beeaa6 100755 (executable)
@@ -68,7 +68,9 @@ static char *sound_devices[MAX_SOUND_DEVICES];
 GUID sound_device_guid[MAX_SOUND_DEVICES];
 static int num_sound_devices;
 
+#ifdef USE_PRIMARY_BUFFER
 static LPDIRECTSOUNDBUFFER lpDSBprimary;
+#endif
 
 #define USE_DS8
 #ifdef USE_DS8
@@ -184,10 +186,12 @@ static void close_audio_ds (void)
     waiting_for_buffer = 0;
     if (lpDSBsecondary)
        IDirectSound_Release (lpDSBsecondary);
+    lpDSBsecondary = 0;
+#ifdef USE_PRIMARY_BUFFER
     if (lpDSBprimary)
        IDirectSound_Release (lpDSBprimary);
-    lpDSBsecondary = 0;
     lpDSBprimary = 0;
+#endif
     if (lpDS) {
        IDirectSound_Release (lpDS);
        write_log ("SOUND: DirectSound driver freed\n");
@@ -209,6 +213,7 @@ static void setvolume (void)
         write_log ("SOUND: SetVolume(%d) failed: %s\n", vol, DXError (hr));
     setvolume_ahi (vol);
 }
+
 static void recalc_offsets(void)
 {
     snd_writeoffset = max_sndbufsize * 5 / 8;
@@ -225,17 +230,21 @@ static int open_audio_ds (int size)
     HRESULT hr;
     DSBUFFERDESC sound_buffer;
     DSCAPS DSCaps;
+#ifdef USE_PRIMARY_BUFFER
     DSBCAPS DSBCaps;
+#endif
     WAVEFORMATEXTENSIBLE wavfmt;
-    int freq = currprefs.sound_freq;
     LPDIRECTSOUNDBUFFER pdsb;
-    
+    int freq = currprefs.sound_freq;
+    int ch = (currprefs.sound_stereo == 3 || currprefs.sound_stereo == 2) ? 4 : (currprefs.sound_stereo ? 2 : 1);
+    int round;
+
     enumerate_sound_devices (0);
-    if (currprefs.sound_stereo == 3) {
+    if (ch == 4) {
        size <<= 3;
     } else {
        size <<= 1;
-       if (currprefs.sound_stereo)
+       if (ch == 2)
            size <<= 1;
     }
     snd_configsize = size;
@@ -258,24 +267,6 @@ static int open_audio_ds (int size)
 
     recalc_offsets();
 
-    memset (&wavfmt, 0, sizeof (WAVEFORMATEXTENSIBLE));
-    wavfmt.Format.nChannels = (currprefs.sound_stereo == 3 || currprefs.sound_stereo == 2) ? 4 : (currprefs.sound_stereo ? 2 : 1);
-    wavfmt.Format.wFormatTag = wavfmt.Format.nChannels > 2 ? WAVE_FORMAT_EXTENSIBLE : WAVE_FORMAT_PCM;
-    wavfmt.Format.nSamplesPerSec = freq;
-    wavfmt.Format.wBitsPerSample = 16;
-    wavfmt.Format.nBlockAlign = wavfmt.Format.wBitsPerSample / 8 * wavfmt.Format.nChannels;
-    wavfmt.Format.nAvgBytesPerSec = wavfmt.Format.nBlockAlign * wavfmt.Format.nSamplesPerSec;
-    if (wavfmt.Format.nChannels > 2) {
-       wavfmt.Format.cbSize = sizeof (WAVEFORMATEXTENSIBLE) - sizeof (WAVEFORMATEX);
-       wavfmt.SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
-       wavfmt.Samples.wValidBitsPerSample = 16;
-       wavfmt.dwChannelMask = KSAUDIO_SPEAKER_QUAD;
-    }
-
-    write_log ("SOUND: '%s'/%d/%d bits/%d Hz/buffer %d/dist %d\n",
-       sound_devices[currprefs.win32_soundcard],
-       wavfmt.Format.nChannels, 16, freq, max_sndbufsize, snd_configsize);
-
 #ifdef USE_DS8
     hr = DirectSoundCreate8 (&sound_device_guid[currprefs.win32_soundcard], &lpDS, NULL);
 #else
@@ -316,7 +307,8 @@ static int open_audio_ds (int size)
            write_log("SOUND: maximum supported frequency: %d\n", maxfreq);
        }
     }
-    
+
+#if 0
     memset (&sound_buffer, 0, sizeof (sound_buffer));
     sound_buffer.dwSize = sizeof (sound_buffer);
     sound_buffer.dwFlags = DSBCAPS_PRIMARYBUFFER;
@@ -339,24 +331,57 @@ static int open_audio_ds (int size)
         write_log ("SOUND: Primary SetFormat() failure: %s\n", DXError (hr));
         goto error;
     }
+#endif
 
-    memset (&sound_buffer, 0, sizeof (sound_buffer));
-    sound_buffer.dwSize = sizeof (sound_buffer);
-    sound_buffer.dwBufferBytes = dsoundbuf;
-    sound_buffer.lpwfxFormat = &wavfmt.Format;
-    sound_buffer.dwFlags = DSBCAPS_GETCURRENTPOSITION2 | DSBCAPS_GLOBALFOCUS;
-    sound_buffer.dwFlags |= DSBCAPS_CTRLVOLUME | DSBCAPS_LOCSOFTWARE;
-    sound_buffer.guid3DAlgorithm = GUID_NULL;
+    round = 0;
+    for (;;) {
+       int extend = round > 0 && ch > 2;
+
+       memset (&wavfmt, 0, sizeof (WAVEFORMATEXTENSIBLE));
+       wavfmt.Format.nChannels = ch;
+       wavfmt.Format.wFormatTag = extend ? WAVE_FORMAT_EXTENSIBLE : WAVE_FORMAT_PCM;
+       wavfmt.Format.nSamplesPerSec = freq;
+       wavfmt.Format.wBitsPerSample = 16;
+       wavfmt.Format.nBlockAlign = wavfmt.Format.wBitsPerSample / 8 * wavfmt.Format.nChannels;
+       wavfmt.Format.nAvgBytesPerSec = wavfmt.Format.nBlockAlign * wavfmt.Format.nSamplesPerSec;
+       if (extend) {
+           wavfmt.Format.cbSize = sizeof (WAVEFORMATEXTENSIBLE) - sizeof (WAVEFORMATEX);
+           wavfmt.SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
+           wavfmt.Samples.wValidBitsPerSample = 16;
+           wavfmt.dwChannelMask = round == 1 ? SPEAKER_ALL : KSAUDIO_SPEAKER_QUAD;
+       }
 
-    hr = IDirectSound_CreateSoundBuffer(lpDS, &sound_buffer, &pdsb, NULL);
-    if (FAILED(hr)) {
-        write_log ("SOUND: Secondary CreateSoundBuffer() failure: %s\n", DXError (hr));
-        goto error;
+       write_log ("SOUND: %s:%d '%s'/%d/%d bits/%d Hz/buffer %d/dist %d\n",
+           extend ? "EXT" : "PCM", round,
+           sound_devices[currprefs.win32_soundcard],
+           wavfmt.Format.nChannels, 16, freq, max_sndbufsize, snd_configsize);
+
+       memset (&sound_buffer, 0, sizeof (sound_buffer));
+       sound_buffer.dwSize = sizeof (sound_buffer);
+       sound_buffer.dwBufferBytes = dsoundbuf;
+       sound_buffer.lpwfxFormat = &wavfmt.Format;
+       sound_buffer.dwFlags = DSBCAPS_GETCURRENTPOSITION2 | DSBCAPS_GLOBALFOCUS;
+       sound_buffer.dwFlags |= DSBCAPS_CTRLVOLUME | DSBCAPS_LOCSOFTWARE;
+       sound_buffer.guid3DAlgorithm = GUID_NULL;
+
+       hr = IDirectSound_CreateSoundBuffer(lpDS, &sound_buffer, &pdsb, NULL);
+       if (FAILED(hr)) {
+           write_log ("SOUND: Secondary CreateSoundBuffer() failure: %s\n", DXError (hr));
+           if (ch <= 2)
+               goto error;
+           if (round < 3) {
+               round++;
+               continue;
+           }
+           goto error;
+       }
+       break;
     }
+
 #ifdef USE_DS8
     hr = IDirectSound_QueryInterface(pdsb, &IID_IDirectSoundBuffer8, (LPVOID*)&lpDSBsecondary);
     if (FAILED(hr))  {
-        write_log ("SOUND: Primary QueryInterface() failure: %s\n", DXError (hr));
+        write_log ("SOUND: Secondary QueryInterface() failure: %s\n", DXError (hr));
        goto error;
     }
     IDirectSound_Release(pdsb);
@@ -747,7 +772,7 @@ void finish_sound_buffer (void)
     finish_sound_buffer_ds ();
 }
 
-static BOOL CALLBACK DSEnumProc(LPGUID lpGUID, LPCTSTR lpszDesc, LPCTSTR lpszDrvName,  LPVOID lpContext)
+static BOOL CALLBACK DSEnumProc(LPGUID lpGUID, LPCTSTR lpszDesc, LPCTSTR lpszDrvName, LPVOID lpContext)
 {
     int i = num_sound_devices;
     if (i == MAX_SOUND_DEVICES)
index fe4bcfecf1b57e6949a1521a60d7377ecb247b45..f0598a46c47ad60baf50357ebaefadf53a4cae6c 100755 (executable)
@@ -89,6 +89,12 @@ cd resourcedll
 rm -rf debug
 rm -rf release
 cd ..
+
+cd fdrawcmd
+rm -rf debug
+rm -rf release
+cd ..
+
 cd ..
 
 zip -9 -r winuaesrc *
index e534a80f2ddc4b857d0eaeed225d3b83969a6acf..604839ebefae14c5b6c354750ec85ab2139f56b7 100755 (executable)
@@ -2200,7 +2200,7 @@ static void WIN32_HandleRegistryStuff(void)
     load_keyring(NULL, NULL);
 }
 
-#ifdef WINUAEPUBLICBETA
+#if WINUAEPUBLICBETA > 0
 static char *BETAMESSAGE = {
     "This is unstable beta software. Click cancel if you are not comfortable using software that is incomplete and can have serious programming errors."
 };
@@ -2208,7 +2208,7 @@ static char *BETAMESSAGE = {
 
 static int betamessage (void)
 {
-#ifdef WINUAEPUBLICBETA
+#if WINUAEPUBLICBETA > 0
     int showmsg = TRUE;
     HANDLE h = INVALID_HANDLE_VALUE;
     ULONGLONG regft64;
@@ -2554,9 +2554,12 @@ static void makeverstr(char *s)
 #if WINUAEBETA > 0
     sprintf(BetaStr, " (%sBeta %d, %d.%02d.%02d)", WINUAEPUBLICBETA > 0 ? "Public " : "", WINUAEBETA,
        GETBDY(WINUAEDATE), GETBDM(WINUAEDATE), GETBDD(WINUAEDATE));
-#endif
     sprintf(s, "WinUAE %d.%d.%d%s",
        UAEMAJOR, UAEMINOR, UAESUBREV, BetaStr);
+#else
+    sprintf(s, "WinUAE %d.%d.%d (%d.%02d.%02d)",
+       UAEMAJOR, UAEMINOR, UAESUBREV, GETBDY(WINUAEDATE), GETBDM(WINUAEDATE), GETBDD(WINUAEDATE));
+#endif
 }
 
 static int multi_display = 1;
index 9b08def341c7960c4a5835eaf5555c25c11ba8b6..80b8709372cca94ef995a44925f6a60ef3106ab0 100755 (executable)
@@ -15,9 +15,9 @@
 #define GETBDM(x) (((x) - ((x / 10000) * 10000)) / 100)
 #define GETBDD(x) ((x) % 100)
 
-#define WINUAEBETA 9
-#define WINUAEPUBLICBETA 1
-#define WINUAEDATE MAKEBD(2006, 12, 29)
+#define WINUAEBETA 0
+#define WINUAEPUBLICBETA 0
+#define WINUAEDATE MAKEBD(2006, 12, 30)
 
 #define IHF_WINDOWHIDDEN 6
 #define NORMAL_WINDOW_STYLE (WS_VISIBLE | WS_BORDER | WS_CAPTION | WS_MINIMIZEBOX | WS_SYSMENU)
index b8e51adc6dab2f8810c35d55a3f4bf31c700fed2..6bf7467421478f4f84409b5bf0e71638d1613dcd 100755 (executable)
@@ -2724,7 +2724,7 @@ static INT_PTR CALLBACK PathsDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM
        recursive++;
        pages[PATHS_ID] = hDlg;
        currentpage = PATHS_ID;
-#if !WINUAEBETA
+#if WINUAEBETA == 0
        ShowWindow (GetDlgItem (hDlg, IDC_RESETREGISTRY), FALSE);
 #endif
        numtypes = 0;
@@ -7981,7 +7981,7 @@ static INT_PTR CALLBACK hw3dDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM l
     switch (msg) 
     {
     case WM_INITDIALOG:
-#if !WINUAEBETA
+#if WINUAEBETA == 0
        ShowWindow (GetDlgItem(hDlg, IDC_FILTERAUTORES), SW_HIDE);
 #endif
        pages[HW3D_ID] = hDlg;
index 97a2b9a282c09183b6f78b8d75063ae095d59cea..a922cdddc6d7b4658b84ea9ac4d88afe73e3a584 100755 (executable)
@@ -3,8 +3,7 @@ Beta 9:
 
 - interrupt timing tweak (Gravity Force in ce-mode)
 - CPU Idle tweak (slightly less aggressive)
-- file dialogs work again in Windows9X/ME.. Apparently
-  nobody is using 9x anymore, I like it :)
+- file dialogs work again in Windows9X/ME..
 - sound problems really fixed now
 
 Beta 8: (RC3, really final?)