Sound buffer length now configurable in wxWidgets GUI. Patch from bit.
This commit is contained in:
parent
e61d25eedd
commit
0928b4fbdf
3 changed files with 1256 additions and 1189 deletions
23
src/pc.xrc
23
src/pc.xrc
|
|
@ -28,6 +28,7 @@
|
||||||
<ids-range name="IDM_VID_SCALE" start="1200" />
|
<ids-range name="IDM_VID_SCALE" start="1200" />
|
||||||
<ids-range name="IDM_VID_SCALE_MODE" start="1300" />
|
<ids-range name="IDM_VID_SCALE_MODE" start="1300" />
|
||||||
<ids-range name="IDM_VID_RENDER_DRIVER" start="1400" />
|
<ids-range name="IDM_VID_RENDER_DRIVER" start="1400" />
|
||||||
|
<ids-range name="IDM_SND_BUF" start="2000" />
|
||||||
<object class="wxMenuBar" name="status_menu">
|
<object class="wxMenuBar" name="status_menu">
|
||||||
<object class="wxMenu">
|
<object class="wxMenu">
|
||||||
<label>_Options</label>
|
<label>_Options</label>
|
||||||
|
|
@ -229,6 +230,28 @@
|
||||||
<checkable>1</checkable>
|
<checkable>1</checkable>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="wxMenu">
|
||||||
|
<label>Sound</label>
|
||||||
|
<object class="wxMenu">
|
||||||
|
<label>_Buffer length</label>
|
||||||
|
<object class="wxMenuItem" name="IDM_SND_BUF[0]">
|
||||||
|
<label>_50 ms</label>
|
||||||
|
<radio>1</radio>
|
||||||
|
</object>
|
||||||
|
<object class="wxMenuItem" name="IDM_SND_BUF[1]">
|
||||||
|
<label>_100 ms</label>
|
||||||
|
<radio>1</radio>
|
||||||
|
</object>
|
||||||
|
<object class="wxMenuItem" name="IDM_SND_BUF[2]">
|
||||||
|
<label>_200 ms</label>
|
||||||
|
<radio>1</radio>
|
||||||
|
</object>
|
||||||
|
<object class="wxMenuItem" name="IDM_SND_BUF[3]">
|
||||||
|
<label>_400 ms</label>
|
||||||
|
<radio>1</radio>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
<object class="separator"/>
|
<object class="separator"/>
|
||||||
<object class="wxMenuItem" name="IDM_STATUS">
|
<object class="wxMenuItem" name="IDM_STATUS">
|
||||||
<label>_Machine</label>
|
<label>_Machine</label>
|
||||||
|
|
|
||||||
3657
src/wx-resources.cpp
3657
src/wx-resources.cpp
File diff suppressed because it is too large
Load diff
|
|
@ -15,6 +15,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <math.h>
|
||||||
#include "ibm.h"
|
#include "ibm.h"
|
||||||
#include "cdrom-ioctl.h"
|
#include "cdrom-ioctl.h"
|
||||||
#include "cdrom-image.h"
|
#include "cdrom-image.h"
|
||||||
|
|
@ -41,6 +42,8 @@
|
||||||
|
|
||||||
#define IDM_CDROM_REAL 1500
|
#define IDM_CDROM_REAL 1500
|
||||||
|
|
||||||
|
#define MIN_SND_BUF 50
|
||||||
|
|
||||||
uint64_t timer_freq;
|
uint64_t timer_freq;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -285,6 +288,9 @@ void wx_setupmenu()
|
||||||
window_remember ? WX_MB_CHECKED : WX_MB_UNCHECKED);
|
window_remember ? WX_MB_CHECKED : WX_MB_UNCHECKED);
|
||||||
wx_checkmenuitem(menu, WX_ID("IDM_BPB_DISABLE"), bpb_disable ? WX_MB_CHECKED : WX_MB_UNCHECKED);
|
wx_checkmenuitem(menu, WX_ID("IDM_BPB_DISABLE"), bpb_disable ? WX_MB_CHECKED : WX_MB_UNCHECKED);
|
||||||
|
|
||||||
|
sprintf(menuitem, "IDM_SND_BUF[%d]", (int)(log(sound_buf_len/MIN_SND_BUF)/log(2)));
|
||||||
|
wx_checkmenuitem(menu, WX_ID(menuitem), WX_MB_CHECKED);
|
||||||
|
|
||||||
sprintf(menuitem, "IDM_VID_SCALE_MODE[%d]", video_scale_mode);
|
sprintf(menuitem, "IDM_VID_SCALE_MODE[%d]", video_scale_mode);
|
||||||
wx_checkmenuitem(menu, WX_ID(menuitem), WX_MB_CHECKED);
|
wx_checkmenuitem(menu, WX_ID(menuitem), WX_MB_CHECKED);
|
||||||
sprintf(menuitem, "IDM_VID_SCALE[%d]", video_scale);
|
sprintf(menuitem, "IDM_VID_SCALE[%d]", video_scale);
|
||||||
|
|
@ -729,6 +735,11 @@ int wx_handle_command(void* hwnd, int wParam, int checked)
|
||||||
video_focus_dim = checked;
|
video_focus_dim = checked;
|
||||||
saveconfig(NULL);
|
saveconfig(NULL);
|
||||||
}
|
}
|
||||||
|
else if (ID_RANGE("IDM_SND_BUF[start]", "IDM_SND_BUF[end]"))
|
||||||
|
{
|
||||||
|
sound_buf_len = MIN_SND_BUF*1<<(wParam - wx_xrcid("IDM_SND_BUF[start]"));
|
||||||
|
saveconfig(NULL);
|
||||||
|
}
|
||||||
else if (ID_IS("IDM_CDROM_DISABLED"))
|
else if (ID_IS("IDM_CDROM_DISABLED"))
|
||||||
{
|
{
|
||||||
if (cdrom_enabled)
|
if (cdrom_enabled)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue