mirror of
https://github.com/LIV2/WinUAE.git
synced 2025-12-06 00:12:52 +00:00
2500b13
This commit is contained in:
parent
bdcf870e76
commit
f4e416cf97
73
audio.cpp
73
audio.cpp
@ -318,12 +318,14 @@ typedef uae_s8 sample8_t;
|
||||
#define DO_CHANNEL_1(v, c) do { (v) *= audio_channel[c].vol; } while (0)
|
||||
#define SBASEVAL16(logn) ((logn) == 1 ? SOUND16_BASE_VAL >> 1 : SOUND16_BASE_VAL)
|
||||
|
||||
STATIC_INLINE int FINISH_DATA (int data, int bits, int logn)
|
||||
STATIC_INLINE int FINISH_DATA (int data, int bits)
|
||||
{
|
||||
if (14 - bits + logn > 0) {
|
||||
data >>= 14 - bits + logn;
|
||||
if (bits == 16) {
|
||||
return data;
|
||||
} else if (bits - 16 > 0) {
|
||||
data >>= bits - 16;
|
||||
} else {
|
||||
int shift = bits - 14 - logn;
|
||||
int shift = 16 - bits;
|
||||
int right = data & ((1 << shift) - 1);
|
||||
data <<= shift;
|
||||
data |= right;
|
||||
@ -529,7 +531,8 @@ static void sinc_prehandler (unsigned long best_evtime)
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
acd = &audio_channel[i];
|
||||
output = (acd->current_sample * acd->vol) & acd->adk_mask;
|
||||
int vol = acd->vol;
|
||||
output = (acd->current_sample * vol) & acd->adk_mask;
|
||||
|
||||
/* if output state changes, record the state change and also
|
||||
* write data into sinc queue for mixing in the BLEP */
|
||||
@ -570,12 +573,12 @@ STATIC_INLINE void samplexx_sinc_handler (int *datasp)
|
||||
int offsetpos = acd->sinc_queue_head & (SINC_QUEUE_LENGTH - 1);
|
||||
for (j = 0; j < SINC_QUEUE_LENGTH; j += 1) {
|
||||
int age = acd->sinc_queue_time - acd->sinc_queue[offsetpos].time;
|
||||
if (age >= SINC_QUEUE_MAX_AGE)
|
||||
if (age >= SINC_QUEUE_MAX_AGE || age < 0)
|
||||
break;
|
||||
sum -= winsinc[age] * acd->sinc_queue[offsetpos].output;
|
||||
offsetpos = (offsetpos + 1) & (SINC_QUEUE_LENGTH - 1);
|
||||
}
|
||||
v = sum >> 17;
|
||||
v = sum >> 15;
|
||||
if (v > 32767)
|
||||
v = 32767;
|
||||
else if (v < -32768)
|
||||
@ -590,7 +593,7 @@ static void sample16i_sinc_handler (void)
|
||||
|
||||
samplexx_sinc_handler (datas);
|
||||
data1 = datas[0] + datas[3] + datas[1] + datas[2];
|
||||
data1 = FINISH_DATA (data1, 16, 2);
|
||||
data1 = FINISH_DATA (data1, 18);
|
||||
set_sound_buffers ();
|
||||
PUT_SOUND_WORD_MONO (data1);
|
||||
check_sound_buffers ();
|
||||
@ -616,7 +619,7 @@ void sample16_handler (void)
|
||||
data0 += data2;
|
||||
data0 += data3;
|
||||
data = SBASEVAL16(2) + data0;
|
||||
data = FINISH_DATA (data, 16, 2);
|
||||
data = FINISH_DATA (data, 16);
|
||||
set_sound_buffers ();
|
||||
PUT_SOUND_WORD_MONO (data);
|
||||
check_sound_buffers ();
|
||||
@ -630,7 +633,7 @@ static void sample16i_anti_handler (void)
|
||||
|
||||
samplexx_anti_handler (datas);
|
||||
data1 = datas[0] + datas[3] + datas[1] + datas[2];
|
||||
data1 = FINISH_DATA (data1, 16, 2);
|
||||
data1 = FINISH_DATA (data1, 16);
|
||||
set_sound_buffers ();
|
||||
PUT_SOUND_WORD_MONO (data1);
|
||||
check_sound_buffers ();
|
||||
@ -682,7 +685,7 @@ static void sample16i_rh_handler (void)
|
||||
ratio = ((audio_channel[3].evtime % delta) << 8) / delta;
|
||||
data0 += (data3 * (256 - ratio) + data3p * ratio) >> 8;
|
||||
data = SBASEVAL16(2) + data0;
|
||||
data = FINISH_DATA (data, 16, 2);
|
||||
data = FINISH_DATA (data, 16);
|
||||
set_sound_buffers ();
|
||||
PUT_SOUND_WORD_MONO (data);
|
||||
check_sound_buffers ();
|
||||
@ -754,7 +757,7 @@ static void sample16i_crux_handler (void)
|
||||
data0 += data3;
|
||||
data0 += data1;
|
||||
data = SBASEVAL16(2) + data0;
|
||||
data = FINISH_DATA (data, 16, 2);
|
||||
data = FINISH_DATA (data, 16);
|
||||
set_sound_buffers ();
|
||||
PUT_SOUND_WORD_MONO (data);
|
||||
check_sound_buffers ();
|
||||
@ -786,10 +789,10 @@ void sample16ss_handler (void)
|
||||
data2 &= audio_channel[2].adk_mask;
|
||||
data3 &= audio_channel[3].adk_mask;
|
||||
|
||||
data0 = FINISH_DATA (data0, 16, 0);
|
||||
data1 = FINISH_DATA (data1, 16, 0);
|
||||
data2 = FINISH_DATA (data2, 16, 0);
|
||||
data3 = FINISH_DATA (data3, 16, 0);
|
||||
data0 = FINISH_DATA (data0, 14);
|
||||
data1 = FINISH_DATA (data1, 14);
|
||||
data2 = FINISH_DATA (data2, 14);
|
||||
data3 = FINISH_DATA (data3, 14);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data0);
|
||||
put_sound_word_right (data1);
|
||||
@ -809,10 +812,10 @@ void sample16ss_anti_handler (void)
|
||||
int datas[4];
|
||||
|
||||
samplexx_anti_handler (datas);
|
||||
data0 = FINISH_DATA (datas[0], 16, 0);
|
||||
data1 = FINISH_DATA (datas[1], 16, 0);
|
||||
data2 = FINISH_DATA (datas[2], 16, 0);
|
||||
data3 = FINISH_DATA (datas[3], 16, 0);
|
||||
data0 = FINISH_DATA (datas[0], 14);
|
||||
data1 = FINISH_DATA (datas[1], 14);
|
||||
data2 = FINISH_DATA (datas[2], 14);
|
||||
data3 = FINISH_DATA (datas[3], 14);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data0);
|
||||
put_sound_word_right (data1);
|
||||
@ -830,8 +833,8 @@ static void sample16si_anti_handler (void)
|
||||
samplexx_anti_handler (datas);
|
||||
data1 = datas[0] + datas[3];
|
||||
data2 = datas[1] + datas[2];
|
||||
data1 = FINISH_DATA (data1, 16, 1);
|
||||
data2 = FINISH_DATA (data2, 16, 1);
|
||||
data1 = FINISH_DATA (data1, 15);
|
||||
data2 = FINISH_DATA (data2, 15);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data1);
|
||||
put_sound_word_right (data2);
|
||||
@ -844,10 +847,10 @@ void sample16ss_sinc_handler (void)
|
||||
int datas[4];
|
||||
|
||||
samplexx_sinc_handler (datas);
|
||||
data0 = FINISH_DATA (datas[0], 16, 0);
|
||||
data1 = FINISH_DATA (datas[1], 16, 0);
|
||||
data2 = FINISH_DATA (datas[2], 16, 0);
|
||||
data3 = FINISH_DATA (datas[3], 16, 0);
|
||||
data0 = FINISH_DATA (datas[0], 16);
|
||||
data1 = FINISH_DATA (datas[1], 16);
|
||||
data2 = FINISH_DATA (datas[2], 16);
|
||||
data3 = FINISH_DATA (datas[3], 16);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data0);
|
||||
put_sound_word_right (data1);
|
||||
@ -865,8 +868,8 @@ static void sample16si_sinc_handler (void)
|
||||
samplexx_sinc_handler (datas);
|
||||
data1 = datas[0] + datas[3];
|
||||
data2 = datas[1] + datas[2];
|
||||
data1 = FINISH_DATA (data1, 16, 1);
|
||||
data2 = FINISH_DATA (data2, 16, 1);
|
||||
data1 = FINISH_DATA (data1, 17);
|
||||
data2 = FINISH_DATA (data2, 17);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data1);
|
||||
put_sound_word_right (data2);
|
||||
@ -892,9 +895,9 @@ void sample16s_handler (void)
|
||||
data0 += data3;
|
||||
data1 += data2;
|
||||
data2 = SBASEVAL16(1) + data0;
|
||||
data2 = FINISH_DATA (data2, 16, 1);
|
||||
data2 = FINISH_DATA (data2, 15);
|
||||
data3 = SBASEVAL16(1) + data1;
|
||||
data3 = FINISH_DATA (data3, 16, 1);
|
||||
data3 = FINISH_DATA (data3, 15);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data2);
|
||||
put_sound_word_right (data3);
|
||||
@ -965,9 +968,9 @@ static void sample16si_crux_handler (void)
|
||||
data1 += data2;
|
||||
data0 += data3;
|
||||
data2 = SBASEVAL16(1) + data0;
|
||||
data2 = FINISH_DATA (data2, 16, 1);
|
||||
data2 = FINISH_DATA (data2, 15);
|
||||
data3 = SBASEVAL16(1) + data1;
|
||||
data3 = FINISH_DATA (data3, 16, 1);
|
||||
data3 = FINISH_DATA (data3, 15);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data2);
|
||||
put_sound_word_right (data3);
|
||||
@ -1019,9 +1022,9 @@ static void sample16si_rh_handler (void)
|
||||
ratio = ((audio_channel[3].evtime % delta) << 8) / delta;
|
||||
data0 += (data3 * (256 - ratio) + data3p * ratio) >> 8;
|
||||
data2 = SBASEVAL16(1) + data0;
|
||||
data2 = FINISH_DATA (data2, 16, 1);
|
||||
data2 = FINISH_DATA (data2, 15);
|
||||
data3 = SBASEVAL16(1) + data1;
|
||||
data3 = FINISH_DATA (data3, 16, 1);
|
||||
data3 = FINISH_DATA (data3, 15);
|
||||
set_sound_buffers ();
|
||||
put_sound_word_left (data2);
|
||||
put_sound_word_right (data3);
|
||||
@ -1105,7 +1108,7 @@ static void audio_deactivate (void)
|
||||
return;
|
||||
gui_data.sndbuf_status = 3;
|
||||
gui_data.sndbuf = 0;
|
||||
reset_sound ();
|
||||
pause_sound_buffer ();
|
||||
clear_sound_buffers ();
|
||||
audio_event_reset ();
|
||||
}
|
||||
|
||||
@ -881,6 +881,7 @@ void cfgfile_save_options (struct zfile *f, struct uae_prefs *p, int type)
|
||||
cfgfile_dwrite (f, _T("gfx_filter_blur"), _T("%d"), p->gfx_filter_blur);
|
||||
cfgfile_dwrite (f, _T("gfx_filter_noise"), _T("%d"), p->gfx_filter_noise);
|
||||
cfgfile_dwrite_bool (f, _T("gfx_filter_bilinear"), p->gfx_filter_bilinear != 0);
|
||||
cfgfile_dwrite (f, _T("gfx_filter_keep_autoscale_aspect"), _T("%d"), p->gfx_filter_keep_autoscale_aspect);
|
||||
cfgfile_dwrite_str (f, _T("gfx_filter_keep_aspect"), aspects[p->gfx_filter_keep_aspect]);
|
||||
cfgfile_dwrite_str (f, _T("gfx_filter_autoscale"), autoscale[p->gfx_filter_autoscale]);
|
||||
cfgfile_dwrite (f, _T("gfx_filter_aspect_ratio"), _T("%d:%d"),
|
||||
@ -1535,6 +1536,7 @@ static int cfgfile_parse_host (struct uae_prefs *p, TCHAR *option, TCHAR *value)
|
||||
|| cfgfile_intval (option, value, _T("gfx_luminance"), &p->gfx_luminance, 1)
|
||||
|| cfgfile_intval (option, value, _T("gfx_contrast"), &p->gfx_contrast, 1)
|
||||
|| cfgfile_intval (option, value, _T("gfx_gamma"), &p->gfx_gamma, 1)
|
||||
|| cfgfile_intval (option, value, _T("gfx_filter_keep_autoscale_aspect"), &p->gfx_filter_keep_autoscale_aspect, 1)
|
||||
|| cfgfile_string (option, value, _T("gfx_filter_mask"), p->gfx_filtermask, sizeof p->gfx_filtermask / sizeof (TCHAR))
|
||||
|| cfgfile_intval (option, value, _T("filesys_max_size"), &p->filesys_limit, 1)
|
||||
|
||||
@ -4255,6 +4257,7 @@ void default_prefs (struct uae_prefs *p, int type)
|
||||
p->gfx_filter_scanlineratio = (1 << 4) | 1;
|
||||
p->gfx_filter_keep_aspect = 0;
|
||||
p->gfx_filter_autoscale = AUTOSCALE_STATIC_AUTO;
|
||||
p->gfx_filter_keep_autoscale_aspect = 0;
|
||||
p->gfx_filteroverlay_overscan = 0;
|
||||
|
||||
_tcscpy (p->floppyslots[0].df, _T("df0.adf"));
|
||||
|
||||
14
cia.cpp
14
cia.cpp
@ -1841,6 +1841,14 @@ static void save_cia_prepare (void)
|
||||
compute_passed_time ();
|
||||
}
|
||||
|
||||
void restore_cia_start (void)
|
||||
{
|
||||
/* Fixes very old statefiles without keyboard state */
|
||||
kbstate = 3;
|
||||
setcapslockstate (0);
|
||||
kblostsynccnt = 0;
|
||||
}
|
||||
|
||||
void restore_cia_finish (void)
|
||||
{
|
||||
eventtab[ev_cia].oldcycles = get_cycles ();
|
||||
@ -2022,10 +2030,12 @@ uae_u8 *restore_keyboard (uae_u8 *src)
|
||||
restore_u8 ();
|
||||
restore_u8 ();
|
||||
restore_u8 ();
|
||||
if (!(v & 1))
|
||||
kbstate = 3;
|
||||
kbcode = restore_u8 ();
|
||||
kblostsynccnt = restore_u16 ();
|
||||
if (!(v & 1)) {
|
||||
kbstate = 3;
|
||||
kblostsynccnt = 0;
|
||||
}
|
||||
return src;
|
||||
}
|
||||
|
||||
|
||||
47
custom.cpp
47
custom.cpp
@ -250,7 +250,7 @@ static bool bpl1dat_written, bpl1dat_early, bpl1dat_written_at_least_once;
|
||||
static uae_s16 bpl1mod, bpl2mod;
|
||||
static uaecptr prevbpl[2][MAXVPOS][8];
|
||||
static uaecptr bplpt[8], bplptx[8];
|
||||
static bool brdblank_prevframe[MAXVPOS];
|
||||
static bool brdblank_prevframe[MAXVPOS * 2 + 2];
|
||||
|
||||
/*static int blitcount[256]; blitter debug */
|
||||
|
||||
@ -1907,15 +1907,19 @@ static void start_bpl_dma (int hpos, int hstart)
|
||||
plfstrt_sprite = plfstrt;
|
||||
fetch_start (hpos);
|
||||
fetch_cycle = 0;
|
||||
last_fetch_hpos = hstart;
|
||||
cycle_diagram_shift = last_fetch_hpos;
|
||||
reset_bpl_vars ();
|
||||
|
||||
ddfstate = DIW_waiting_stop;
|
||||
compute_toscr_delay (last_fetch_hpos, bplcon1);
|
||||
|
||||
/* If someone already wrote BPL1DAT, clear the area between that point and
|
||||
the real fetch start. */
|
||||
if (bpl1dat_written_at_least_once && hstart > last_fetch_hpos) {
|
||||
update_fetch_x (hstart, fetchmode);
|
||||
bpl1dat_written_at_least_once = false;
|
||||
} else {
|
||||
reset_bpl_vars ();
|
||||
}
|
||||
#if 0
|
||||
if (!nodraw ()) {
|
||||
if (thisline_decision.plfleft >= 0) {
|
||||
out_nbits = (plfstrt - thisline_decision.plfleft) << (1 + toscr_res);
|
||||
@ -1924,6 +1928,9 @@ static void start_bpl_dma (int hpos, int hstart)
|
||||
}
|
||||
update_toscr_planes ();
|
||||
}
|
||||
#endif
|
||||
last_fetch_hpos = hstart;
|
||||
cycle_diagram_shift = hstart;
|
||||
}
|
||||
|
||||
/* this may turn on datafetch if program turns dma on during the ddf */
|
||||
@ -2661,6 +2668,7 @@ static void finish_decisions (void)
|
||||
if (brdblank_prevframe[vpos] != thisline_decision.brdblank_seen) {
|
||||
changed = 1;
|
||||
brdblank_prevframe[vpos] = thisline_decision.brdblank_seen;
|
||||
//write_log (_T("%d.%d "), vpos, thisline_decision.brdblank_seen);
|
||||
}
|
||||
|
||||
if (changed) {
|
||||
@ -2959,13 +2967,13 @@ void compute_framesync (void)
|
||||
int res2, vres2;
|
||||
|
||||
res2 = currprefs.gfx_resolution;
|
||||
if (doublescan)
|
||||
if (doublescan > 0)
|
||||
res2++;
|
||||
if (res2 > RES_MAX)
|
||||
res2 = RES_MAX;
|
||||
|
||||
vres2 = currprefs.gfx_vresolution;
|
||||
if (doublescan && !islace)
|
||||
if (doublescan > 0 && !islace)
|
||||
vres2--;
|
||||
|
||||
if (vres2 < 0)
|
||||
@ -3102,7 +3110,9 @@ void init_hz (bool fullinit)
|
||||
htotal = MAXHPOS - 1;
|
||||
maxhpos = htotal + 1;
|
||||
vblank_hz = 227.0 * 312.0 * 50.0 / (maxvpos * maxhpos);
|
||||
minfirstline = vsstop;
|
||||
minfirstline = vsstop > vbstop ? vsstop : vbstop;
|
||||
if (minfirstline > maxvpos / 2)
|
||||
minfirstline = vsstop > vsstop ? vbstop : vsstop;
|
||||
if (minfirstline < 2)
|
||||
minfirstline = 2;
|
||||
if (minfirstline >= maxvpos)
|
||||
@ -3271,8 +3281,9 @@ static uae_u32 REGPARAM2 timehack_helper (TrapContext *context)
|
||||
/*
|
||||
* register functions
|
||||
*/
|
||||
STATIC_INLINE uae_u16 DENISEID (void)
|
||||
STATIC_INLINE uae_u16 DENISEID (int *missing)
|
||||
{
|
||||
*missing = 0;
|
||||
if (currprefs.cs_deniserev >= 0)
|
||||
return currprefs.cs_deniserev;
|
||||
#ifdef AGA
|
||||
@ -3284,6 +3295,8 @@ STATIC_INLINE uae_u16 DENISEID (void)
|
||||
#endif
|
||||
if (currprefs.chipset_mask & CSMASK_ECS_DENISE)
|
||||
return 0xFFFC;
|
||||
if (currprefs.cpu_model == 68000 && (currprefs.cpu_compatible || currprefs.cpu_cycle_exact))
|
||||
*missing = 1;
|
||||
return 0xFFFF;
|
||||
}
|
||||
STATIC_INLINE uae_u16 DMACONR (int hpos)
|
||||
@ -6865,6 +6878,7 @@ static uae_u32 REGPARAM2 custom_lgeti (uaecptr addr)
|
||||
STATIC_INLINE uae_u32 REGPARAM2 custom_wget_1 (int hpos, uaecptr addr, int noput)
|
||||
{
|
||||
uae_u16 v;
|
||||
int missing;
|
||||
#ifdef JIT
|
||||
special_mem |= S_READ;
|
||||
#endif
|
||||
@ -6889,7 +6903,11 @@ STATIC_INLINE uae_u32 REGPARAM2 custom_wget_1 (int hpos, uaecptr addr, int noput
|
||||
case 0x01A: v = DSKBYTR (hpos); break;
|
||||
case 0x01C: v = INTENAR (); break;
|
||||
case 0x01E: v = INTREQR (); break;
|
||||
case 0x07C: v = DENISEID (); break;
|
||||
case 0x07C:
|
||||
v = DENISEID (&missing);
|
||||
if (missing)
|
||||
goto writeonly;
|
||||
break;
|
||||
|
||||
#ifdef AGA
|
||||
case 0x180: case 0x182: case 0x184: case 0x186: case 0x188: case 0x18A:
|
||||
@ -6898,11 +6916,14 @@ STATIC_INLINE uae_u32 REGPARAM2 custom_wget_1 (int hpos, uaecptr addr, int noput
|
||||
case 0x1A4: case 0x1A6: case 0x1A8: case 0x1AA: case 0x1AC: case 0x1AE:
|
||||
case 0x1B0: case 0x1B2: case 0x1B4: case 0x1B6: case 0x1B8: case 0x1BA:
|
||||
case 0x1BC: case 0x1BE:
|
||||
if (!(currprefs.chipset_mask & CSMASK_AGA))
|
||||
goto writeonly;
|
||||
v = COLOR_READ ((addr & 0x3E) / 2);
|
||||
break;
|
||||
#endif
|
||||
|
||||
default:
|
||||
writeonly:
|
||||
/* OCS/ECS:
|
||||
* reading write-only register causes write with last value in chip
|
||||
* bus (custom registers, chipram, slowram)
|
||||
@ -7447,7 +7468,7 @@ extern uae_u16 serper;
|
||||
uae_u8 *save_custom (int *len, uae_u8 *dstptr, int full)
|
||||
{
|
||||
uae_u8 *dstbak, *dst;
|
||||
int i;
|
||||
int i, dummy;
|
||||
uae_u32 dskpt;
|
||||
uae_u16 dsklen, dsksync, dskbytr;
|
||||
|
||||
@ -7516,7 +7537,7 @@ uae_u8 *save_custom (int *len, uae_u8 *dstptr, int full)
|
||||
SW (0); /* 076 ? */
|
||||
SW (0); /* 078 ? */
|
||||
SW (0); /* 07A ? */
|
||||
SW (DENISEID ()); /* 07C DENISEID/LISAID */
|
||||
SW (DENISEID (&dummy)); /* 07C DENISEID/LISAID */
|
||||
SW (dsksync); /* 07E DSKSYNC */
|
||||
SL (cop1lc); /* 080-083 COP1LC */
|
||||
SL (cop2lc); /* 084-087 COP2LC */
|
||||
@ -7810,7 +7831,7 @@ uae_u8 *save_custom_event_delay (int *len, uae_u8 *dstptr)
|
||||
uae_u8 *dstbak, *dst;
|
||||
int cnt = 0;
|
||||
|
||||
for (int i = ev2_misc; i < ev2_max; i++) {
|
||||
for (int i = ev2_misc; i < ev2_max; i++) {
|
||||
struct ev2 *e = &eventtab2[i];
|
||||
if (e->active && e->handler == send_interrupt_do) {
|
||||
cnt++;
|
||||
@ -7826,7 +7847,7 @@ uae_u8 *save_custom_event_delay (int *len, uae_u8 *dstptr)
|
||||
|
||||
save_u32 (1);
|
||||
save_u8 (cnt);
|
||||
for (int i = ev2_misc; i < ev2_max; i++) {
|
||||
for (int i = ev2_misc; i < ev2_max; i++) {
|
||||
struct ev2 *e = &eventtab2[i];
|
||||
if (e->active && e->handler == send_interrupt_do) {
|
||||
save_u8 (1);
|
||||
|
||||
8
disk.cpp
8
disk.cpp
@ -1169,7 +1169,7 @@ static int drive_empty (drive * drv)
|
||||
if (drv->catweasel)
|
||||
return catweasel_disk_changed (drv->catweasel) == 0;
|
||||
#endif
|
||||
return drv->diskfile == 0;
|
||||
return drv->diskfile == 0 && drv->dskchange_time >= 0;
|
||||
}
|
||||
|
||||
static void drive_step (drive * drv, int step_direction)
|
||||
@ -2513,7 +2513,7 @@ void DISK_vsync (void)
|
||||
drv->dskready = true;
|
||||
}
|
||||
/* delay until new disk image is inserted */
|
||||
if (drv->dskchange_time) {
|
||||
if (drv->dskchange_time > 0) {
|
||||
drv->dskchange_time--;
|
||||
if (drv->dskchange_time == 0) {
|
||||
drive_insert (drv, &currprefs, i, drv->newname, false);
|
||||
@ -3787,7 +3787,9 @@ uae_u8 *restore_disk (int num,uae_u8 *src)
|
||||
drive_insert (floppy + num, &currprefs, num, changed_prefs.floppyslots[num].df, false);
|
||||
if (drive_empty (floppy + num))
|
||||
drv->dskchange = true;
|
||||
}
|
||||
} else {
|
||||
drv->dskchange_time = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
23
drawing.cpp
23
drawing.cpp
@ -340,7 +340,7 @@ extern int lof_store;
|
||||
#define MAX_DISPLAY_W 362
|
||||
#define MAX_DISPLAY_H 283
|
||||
|
||||
static int gclow, gcloh, gclox, gcloy;
|
||||
static int gclow, gcloh, gclox, gcloy, gclorealh;
|
||||
|
||||
void get_custom_topedge (int *x, int *y)
|
||||
{
|
||||
@ -356,6 +356,7 @@ void get_custom_topedge (int *x, int *y)
|
||||
static void reset_custom_limits (void)
|
||||
{
|
||||
gclow = gcloh = gclox = gcloy = 0;
|
||||
gclorealh = -1;
|
||||
}
|
||||
|
||||
void set_custom_limits (int w, int h, int dx, int dy)
|
||||
@ -384,7 +385,7 @@ void set_custom_limits (int w, int h, int dx, int dy)
|
||||
notice_screen_contents_lost ();
|
||||
}
|
||||
|
||||
int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy)
|
||||
int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy, int *prealh)
|
||||
{
|
||||
int w, h, dx, dy, y1, y2, dbl1, dbl2;
|
||||
int ret = 0;
|
||||
@ -399,6 +400,7 @@ int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy)
|
||||
*ph = gfxvidinfo.outbuffer->outheight;
|
||||
*pdx = 0;
|
||||
*pdy = 0;
|
||||
*prealh = -1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -406,6 +408,7 @@ int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy)
|
||||
*ph = gcloh;
|
||||
*pdx = gclox;
|
||||
*pdy = gcloy;
|
||||
*prealh = gclorealh;
|
||||
|
||||
if (gclow > 0 && gcloh > 0)
|
||||
ret = -1;
|
||||
@ -480,6 +483,15 @@ int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy)
|
||||
if (dx < 0)
|
||||
dx = 0;
|
||||
|
||||
*prealh = -1;
|
||||
if (!programmedmode && first_planes_vpos) {
|
||||
int th = (maxvpos - minfirstline) * 95 / 100;
|
||||
if (th > h) {
|
||||
th = xshift (th, dbl1);
|
||||
*prealh = th;
|
||||
}
|
||||
}
|
||||
|
||||
dy = xshift (dy, dbl2);
|
||||
h = xshift (h, dbl1);
|
||||
|
||||
@ -521,6 +533,7 @@ int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy)
|
||||
gcloh = h;
|
||||
gclox = dx;
|
||||
gcloy = dy;
|
||||
gclorealh = *prealh;
|
||||
*pw = w;
|
||||
*ph = h;
|
||||
*pdx = dx;
|
||||
@ -2696,7 +2709,7 @@ void finish_drawing_frame (void)
|
||||
hposblank = 0;
|
||||
pfield_draw_line (vb, line, where2, amiga2aspect_line_map[i1 + 1]);
|
||||
}
|
||||
|
||||
#if 0
|
||||
/* clear possible old garbage at the bottom if emulated area become smaller */
|
||||
for (i = last_max_ypos; i < vb->outheight; i++) {
|
||||
int i1 = i + min_ypos_for_screen;
|
||||
@ -2708,7 +2721,7 @@ void finish_drawing_frame (void)
|
||||
if (where2 < 0)
|
||||
continue;
|
||||
|
||||
hposblank = i > last_max_ypos ;// + AMIGA_HEIGHT_EXTRA;
|
||||
hposblank = i > last_max_ypos || i >= max_ypos_thisframe;
|
||||
|
||||
xlinebuffer = vb->linemem;
|
||||
if (xlinebuffer == 0)
|
||||
@ -2719,7 +2732,7 @@ void finish_drawing_frame (void)
|
||||
linestate[line] = LINE_UNDECIDED;
|
||||
do_flush_line (vb, where2);
|
||||
}
|
||||
|
||||
#endif
|
||||
if (currprefs.leds_on_screen) {
|
||||
int slx, sly;
|
||||
statusline_getpos (&slx, &sly, vb->outwidth, vb->outheight);
|
||||
|
||||
@ -1963,7 +1963,7 @@ static TCHAR *get_nname (Unit *unit, a_inode *base, TCHAR *rel, TCHAR **modified
|
||||
return 0;
|
||||
/* A file called "." (or whatever else is invalid on this filesystem)
|
||||
* does not exist, as far as the Amiga side is concerned. */
|
||||
if (fsdb_name_invalid (rel))
|
||||
if (fsdb_name_invalid_dir (rel))
|
||||
return 0;
|
||||
|
||||
/* See if we have a file that has the same name as the aname we are
|
||||
@ -3642,7 +3642,7 @@ static int action_examine_all_do (Unit *unit, uaecptr lock, ExAllKey *eak, uaecp
|
||||
ok = isofs_readdir (d->isod, fn, &uniq);
|
||||
else
|
||||
ok = 0;
|
||||
} while (ok && d->fstype == FS_DIRECTORY && fsdb_name_invalid (fn));
|
||||
} while (ok && d->fstype == FS_DIRECTORY && fsdb_name_invalid_dir (fn));
|
||||
if (!ok)
|
||||
return 0;
|
||||
} else {
|
||||
@ -3915,7 +3915,7 @@ static void populate_directory (Unit *unit, a_inode *base)
|
||||
ok = isofs_readdir (d->isod, fn, &uniq);
|
||||
else
|
||||
ok = 0;
|
||||
} while (ok && d->fstype == FS_DIRECTORY && fsdb_name_invalid (fn));
|
||||
} while (ok && d->fstype == FS_DIRECTORY && fsdb_name_invalid_dir (fn));
|
||||
if (!ok)
|
||||
break;
|
||||
/* This calls init_child_aino, which will notice that the parent is
|
||||
|
||||
@ -272,7 +272,7 @@ extern bool notice_interlace_seen (bool);
|
||||
extern void notice_resolution_seen (int, bool);
|
||||
extern void frame_drawn (void);
|
||||
extern void redraw_frame (void);
|
||||
extern int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy);
|
||||
extern int get_custom_limits (int *pw, int *ph, int *pdx, int *pdy, int *prealh);
|
||||
extern void set_custom_limits (int w, int h, int dx, int dy);
|
||||
extern void get_custom_topedge (int *x, int *y);
|
||||
extern void putpixel (uae_u8 *buf, int bpp, int x, xcolnr c8, int opaq);
|
||||
|
||||
@ -113,11 +113,12 @@ extern void fsdb_dir_writeback (a_inode *);
|
||||
extern int fsdb_used_as_nname (a_inode *base, const TCHAR *);
|
||||
extern a_inode *fsdb_lookup_aino_aname (a_inode *base, const TCHAR *);
|
||||
extern a_inode *fsdb_lookup_aino_nname (a_inode *base, const TCHAR *);
|
||||
extern int fsdb_exists (TCHAR *nname);
|
||||
extern int fsdb_exists (const TCHAR *nname);
|
||||
extern int same_aname (const TCHAR *an1, const TCHAR *an2);
|
||||
|
||||
/* Filesystem-dependent functions. */
|
||||
extern int fsdb_name_invalid (const TCHAR *n);
|
||||
extern int fsdb_name_invalid_dir (const TCHAR *n);
|
||||
extern int fsdb_fill_file_attrs (a_inode *, a_inode *);
|
||||
extern int fsdb_set_file_attrs (a_inode *);
|
||||
extern int fsdb_mode_representable_p (const a_inode *, int);
|
||||
|
||||
@ -72,7 +72,7 @@ struct inputevent {
|
||||
int data;
|
||||
};
|
||||
|
||||
#define MAX_INPUT_QUALIFIERS (8+4)
|
||||
#define MAX_INPUT_QUALIFIERS (8 + 5)
|
||||
|
||||
/* event flags */
|
||||
#define ID_FLAG_AUTOFIRE 1
|
||||
@ -84,22 +84,23 @@ struct inputevent {
|
||||
#define ID_FLAG_GAMEPORTSCUSTOM_MASK (ID_FLAG_GAMEPORTSCUSTOM1 | ID_FLAG_GAMEPORTSCUSTOM2)
|
||||
#define ID_FLAG_AUTOFIRE_MASK (ID_FLAG_TOGGLE | ID_FLAG_INVERTTOGGLE | ID_FLAG_AUTOFIRE)
|
||||
|
||||
#define ID_FLAG_QUALIFIER1 0x00000100000000
|
||||
#define ID_FLAG_QUALIFIER1_R 0x00000200000000
|
||||
#define ID_FLAG_QUALIFIER2 0x00000400000000
|
||||
#define ID_FLAG_QUALIFIER3 0x00001000000000
|
||||
#define ID_FLAG_QUALIFIER4 0x00004000000000
|
||||
#define ID_FLAG_QUALIFIER5 0x00010000000000
|
||||
#define ID_FLAG_QUALIFIER6 0x00040000000000
|
||||
#define ID_FLAG_QUALIFIER7 0x00100000000000
|
||||
#define ID_FLAG_QUALIFIER8 0x00400000000000
|
||||
#define ID_FLAG_QUALIFIER_SPECIAL 0x01000000000000
|
||||
#define ID_FLAG_QUALIFIER_SPECIAL_R 0x02000000000000
|
||||
#define ID_FLAG_QUALIFIER_SHIFT 0x04000000000000
|
||||
#define ID_FLAG_QUALIFIER_CONTROL 0x10000000000000
|
||||
#define ID_FLAG_QUALIFIER_ALT 0x40000000000000
|
||||
#define ID_FLAG_QUALIFIER_MASK 0xffffff00000000
|
||||
#define ID_FLAG_QUALIFIER_MASK_R 0xaaaaaa00000000
|
||||
#define ID_FLAG_QUALIFIER1 0x000000100000000
|
||||
#define ID_FLAG_QUALIFIER1_R 0x000000200000000
|
||||
#define ID_FLAG_QUALIFIER2 0x000000400000000
|
||||
#define ID_FLAG_QUALIFIER3 0x000001000000000
|
||||
#define ID_FLAG_QUALIFIER4 0x000004000000000
|
||||
#define ID_FLAG_QUALIFIER5 0x000010000000000
|
||||
#define ID_FLAG_QUALIFIER6 0x000040000000000
|
||||
#define ID_FLAG_QUALIFIER7 0x000100000000000
|
||||
#define ID_FLAG_QUALIFIER8 0x000400000000000
|
||||
#define ID_FLAG_QUALIFIER_SPECIAL 0x001000000000000
|
||||
#define ID_FLAG_QUALIFIER_SPECIAL_R 0x002000000000000
|
||||
#define ID_FLAG_QUALIFIER_SHIFT 0x004000000000000
|
||||
#define ID_FLAG_QUALIFIER_CONTROL 0x010000000000000
|
||||
#define ID_FLAG_QUALIFIER_ALT 0x040000000000000
|
||||
#define ID_FLAG_QUALIFIER_WIN 0x100000000000000
|
||||
#define ID_FLAG_QUALIFIER_MASK 0xfffffff00000000
|
||||
#define ID_FLAG_QUALIFIER_MASK_R 0xaaaaaaa00000000
|
||||
|
||||
#define IDEV_WIDGET_NONE 0
|
||||
#define IDEV_WIDGET_BUTTON 1
|
||||
@ -113,19 +114,20 @@ struct inputevent {
|
||||
#define IDEV_MAPPED_INVERTTOGGLE 8
|
||||
#define IDEV_MAPPED_GAMEPORTSCUSTOM1 16
|
||||
#define IDEV_MAPPED_GAMEPORTSCUSTOM2 32
|
||||
#define IDEV_MAPPED_QUALIFIER1 0x00000100000000
|
||||
#define IDEV_MAPPED_QUALIFIER2 0x00000400000000
|
||||
#define IDEV_MAPPED_QUALIFIER3 0x00001000000000
|
||||
#define IDEV_MAPPED_QUALIFIER4 0x00004000000000
|
||||
#define IDEV_MAPPED_QUALIFIER5 0x00010000000000
|
||||
#define IDEV_MAPPED_QUALIFIER6 0x00040000000000
|
||||
#define IDEV_MAPPED_QUALIFIER7 0x00100000000000
|
||||
#define IDEV_MAPPED_QUALIFIER8 0x00400000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_SPECIAL 0x01000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_SHIFT 0x04000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_CONTROL 0x10000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_ALT 0x40000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_MASK 0xffffff00000000
|
||||
#define IDEV_MAPPED_QUALIFIER1 0x000000100000000
|
||||
#define IDEV_MAPPED_QUALIFIER2 0x000000400000000
|
||||
#define IDEV_MAPPED_QUALIFIER3 0x000001000000000
|
||||
#define IDEV_MAPPED_QUALIFIER4 0x000004000000000
|
||||
#define IDEV_MAPPED_QUALIFIER5 0x000010000000000
|
||||
#define IDEV_MAPPED_QUALIFIER6 0x000040000000000
|
||||
#define IDEV_MAPPED_QUALIFIER7 0x000100000000000
|
||||
#define IDEV_MAPPED_QUALIFIER8 0x000400000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_SPECIAL 0x001000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_SHIFT 0x004000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_CONTROL 0x010000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_ALT 0x040000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_WIN 0x100000000000000
|
||||
#define IDEV_MAPPED_QUALIFIER_MASK 0xfffffff00000000
|
||||
|
||||
#define ID_BUTTON_OFFSET 0
|
||||
#define ID_BUTTON_TOTAL 32
|
||||
|
||||
@ -168,7 +168,7 @@ enum aks { AKS_ENTERGUI = 0x200, AKS_SCREENSHOT_FILE, AKS_SCREENSHOT_CLIPBOARD,
|
||||
AKS_QUALIFIER1, AKS_QUALIFIER2, AKS_QUALIFIER3, AKS_QUALIFIER4,
|
||||
AKS_QUALIFIER5, AKS_QUALIFIER6, AKS_QUALIFIER7, AKS_QUALIFIER8,
|
||||
AKS_QUALIFIER_SPECIAL, AKS_QUALIFIER_SHIFT, AKS_QUALIFIER_CONTROL,
|
||||
AKS_QUALIFIER_ALT
|
||||
AKS_QUALIFIER_ALT, AKS_QUALIFIER_WIN
|
||||
};
|
||||
|
||||
#define AKS_FIRST AKS_ENTERGUI
|
||||
|
||||
@ -8,8 +8,8 @@
|
||||
*/
|
||||
|
||||
#define UAEMAJOR 2
|
||||
#define UAEMINOR 4
|
||||
#define UAESUBREV 2
|
||||
#define UAEMINOR 5
|
||||
#define UAESUBREV 0
|
||||
|
||||
typedef enum { KBD_LANG_US, KBD_LANG_DK, KBD_LANG_DE, KBD_LANG_SE, KBD_LANG_FR, KBD_LANG_IT, KBD_LANG_ES } KbdLang;
|
||||
|
||||
@ -298,6 +298,7 @@ struct uae_prefs {
|
||||
int gfx_filter_saturation, gfx_filter_luminance, gfx_filter_contrast, gfx_filter_gamma;
|
||||
int gfx_filter_keep_aspect, gfx_filter_aspect;
|
||||
int gfx_filter_autoscale;
|
||||
int gfx_filter_keep_autoscale_aspect;
|
||||
|
||||
bool immediate_blits;
|
||||
int waiting_blits;
|
||||
@ -486,6 +487,7 @@ struct uae_prefs {
|
||||
TCHAR win32_parjoyport0[MAX_DPATH];
|
||||
TCHAR win32_parjoyport1[MAX_DPATH];
|
||||
TCHAR win32_guipage[32];
|
||||
bool win32_filesystem_mangle_reserved_names;
|
||||
|
||||
int statecapturerate, statecapturebuffersize;
|
||||
|
||||
|
||||
@ -113,6 +113,7 @@ extern void restore_audio_finish (void);
|
||||
extern uae_u8 *restore_cia (int, uae_u8 *);
|
||||
extern uae_u8 *save_cia (int, int *, uae_u8 *);
|
||||
extern void restore_cia_finish (void);
|
||||
extern void restore_cia_start (void);
|
||||
|
||||
extern uae_u8 *restore_expansion (uae_u8 *);
|
||||
extern uae_u8 *save_expansion (int *, uae_u8 *);
|
||||
|
||||
@ -635,12 +635,23 @@ static TCHAR *getstring (const TCHAR **pp)
|
||||
int i;
|
||||
static TCHAR str[CONFIG_BLEN];
|
||||
const TCHAR *p = *pp;
|
||||
bool quoteds = false;
|
||||
bool quotedd = false;
|
||||
|
||||
if (*p == 0)
|
||||
return 0;
|
||||
i = 0;
|
||||
while (*p != 0 && *p !='.' && *p != ',' && i < 1000 - 1)
|
||||
while (*p != 0 && i < 1000 - 1) {
|
||||
if (*p == '\"')
|
||||
quotedd = quotedd ? false : true;
|
||||
if (*p == '\'')
|
||||
quoteds = quoteds ? false : true;
|
||||
if (!quotedd && !quoteds) {
|
||||
if (*p == '.' || *p == ',')
|
||||
break;
|
||||
}
|
||||
str[i++] = *p++;
|
||||
}
|
||||
if (*p == '.' || *p == ',')
|
||||
p++;
|
||||
str[i] = 0;
|
||||
@ -3431,17 +3442,33 @@ static bool process_custom_event (struct uae_input_device *id, int offset, int s
|
||||
if (!id)
|
||||
return false;
|
||||
|
||||
slotoffset = sub / 4;
|
||||
slotoffset = sub & ~3;
|
||||
sub &= 3;
|
||||
flags = id->flags[offset][slotoffset];
|
||||
qual = flags & ID_FLAG_QUALIFIER_MASK;
|
||||
custom = id->custom[offset][slotoffset];
|
||||
int af = flags & ID_FLAG_AUTOFIRE_MASK;
|
||||
|
||||
// check that slots 0 and 2 have same qualifiers, only allow toggle if both are same and neither has autofire
|
||||
if ((id->flags[offset][slotoffset + 2] & ID_FLAG_QUALIFIER_MASK) != qual ||
|
||||
(id->custom[offset][slotoffset] == NULL && id->custom[offset][slotoffset + 2] == NULL) ||
|
||||
(id->flags[offset][slotoffset + 2] & ID_FLAG_AUTOFIRE_MASK) || (af & ID_FLAG_AUTOFIRE_MASK)) {
|
||||
for (idx = 1; idx < 4; idx++) {
|
||||
uae_u64 flags2 = id->flags[offset][slotoffset + idx];
|
||||
TCHAR *custom2 = id->custom[offset][slotoffset + idx];
|
||||
|
||||
// all slots must have same qualifier
|
||||
if ((flags2 & ID_FLAG_QUALIFIER_MASK) != qual)
|
||||
break;
|
||||
// no slot must have autofire
|
||||
if ((flags2 & ID_FLAG_AUTOFIRE_MASK) || (flags & ID_FLAG_AUTOFIRE_MASK))
|
||||
break;
|
||||
}
|
||||
// at least slot 0 and 2 must have custom
|
||||
if (custom == NULL || id->custom[offset][slotoffset + 2] == NULL)
|
||||
idx = -1;
|
||||
|
||||
if (idx < 4) {
|
||||
id->flags[offset][slotoffset] &= ~(ID_FLAG_CUSTOMEVENT_TOGGLED1 | ID_FLAG_CUSTOMEVENT_TOGGLED2);
|
||||
if (checkqualifiers (id->eventid[offset][slotoffset + sub], id->flags[offset][slotoffset + sub], qualmask, NULL)) {
|
||||
int evt2 = id->eventid[offset][slotoffset + sub];
|
||||
uae_u64 flags2 = id->flags[offset][slotoffset + sub];
|
||||
if (checkqualifiers (evt2, flags2, qualmask, NULL)) {
|
||||
custom = id->custom[offset][slotoffset + sub];
|
||||
if (state && custom) {
|
||||
if (autofire)
|
||||
@ -5432,6 +5459,13 @@ static int put_event_data (const struct inputdevice_functions *id, int devnum, i
|
||||
if ((flags & (mask1 | mask2)) == (mask1 | mask2))
|
||||
flags &= ~mask2;
|
||||
}
|
||||
if (custom && custom[0] == 0) {
|
||||
custom = NULL;
|
||||
eventid = 0;
|
||||
}
|
||||
if (eventid <= 0 && !custom) {
|
||||
flags = 0;
|
||||
}
|
||||
|
||||
ret = -1;
|
||||
if (type == IDEV_WIDGET_BUTTON || type == IDEV_WIDGET_BUTTONAXIS) {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
/* joystick/mouse port 1 */
|
||||
|
||||
DEFEVENT(JOYPORT1_START,_T("Joystick port 1"), AM_INFO, 0,1,0)
|
||||
DEFEVENT(JOYPORT1_START,_T("[Joystick port 1]"), AM_INFO, 0,1,0)
|
||||
|
||||
DEFEVENT(MOUSE1_FIRST, _T(""), AM_DUMMY, 0,0,0)
|
||||
|
||||
@ -52,7 +52,7 @@ DEFEVENT(JOY1_CD32_BLUE,_T("Joy1 CD32 Blue"),AM_K,4,1,JOYBUTTON_CD32_BLUE)
|
||||
|
||||
/* joystick/mouse port 2 */
|
||||
|
||||
DEFEVENT(JOYPORT2_START,_T("Joystick port 2"), AM_INFO, 0,2,0)
|
||||
DEFEVENT(JOYPORT2_START,_T("[Joystick port 2]"), AM_INFO, 0,2,0)
|
||||
|
||||
DEFEVENT(MOUSE2_FIRST, _T(""), AM_DUMMY, 0,0,0)
|
||||
|
||||
@ -103,7 +103,7 @@ DEFEVENT(LIGHTPEN_DOWN,_T("Lightpen Down"),AM_K,1,5,DIR_DOWN)
|
||||
|
||||
/* parallel port joystick adapter */
|
||||
|
||||
DEFEVENT(PAR_JOY1_START, _T("Parallel port joystick adapter"), AM_INFO, 0,3,0)
|
||||
DEFEVENT(PAR_JOY1_START, _T("[Parallel port joystick adapter]"), AM_INFO, 0,3,0)
|
||||
|
||||
DEFEVENT(PAR_JOY1_HORIZ,_T("Parallel Joy1 Horizontal"),AM_JOY_AXIS,0,3,DIR_LEFT|DIR_RIGHT)
|
||||
DEFEVENT(PAR_JOY1_VERT,_T("Parallel Joy1 Vertical"),AM_JOY_AXIS,0,3,DIR_UP|DIR_DOWN)
|
||||
@ -137,7 +137,7 @@ DEFEVENT(PAR_JOY_END, _T(""), AM_DUMMY, 0,0,0)
|
||||
|
||||
/* qualifiers */
|
||||
|
||||
DEFEVENT(SPC_QUALIFIER_START,_T("Qualifiers"),AM_INFO, 0,0,0)
|
||||
DEFEVENT(SPC_QUALIFIER_START,_T("[Qualifiers]"),AM_INFO, 0,0,0)
|
||||
|
||||
DEFEVENT(SPC_QUALIFIER1,_T("Qualifier 1"),AM_KK,0,0,AKS_QUALIFIER1)
|
||||
DEFEVENT(SPC_QUALIFIER2,_T("Qualifier 2"),AM_KK,0,0,AKS_QUALIFIER2)
|
||||
@ -151,12 +151,13 @@ DEFEVENT(SPC_QUALIFIER_SPECIAL,_T("Qualifier Special"),AM_KK,0,0,AKS_QUALIFIER_S
|
||||
DEFEVENT(SPC_QUALIFIER_SHIFT,_T("Qualifier Shift"),AM_KK,0,0,AKS_QUALIFIER_SHIFT)
|
||||
DEFEVENT(SPC_QUALIFIER_CONTROL,_T("Qualifier Control"),AM_KK,0,0,AKS_QUALIFIER_CONTROL)
|
||||
DEFEVENT(SPC_QUALIFIER_ALT,_T("Qualifier Alt"),AM_KK,0,0,AKS_QUALIFIER_ALT)
|
||||
DEFEVENT(SPC_QUALIFIER_WIN,_T("Qualifier Win"),AM_KK,0,0,AKS_QUALIFIER_WIN)
|
||||
|
||||
DEFEVENT(SPC_QUALIFIER_END, _T(""), AM_DUMMY, 0,0,0)
|
||||
|
||||
/* keys */
|
||||
|
||||
DEFEVENT(KEY_START,_T("Keyboard"),AM_INFO, 0,0,0)
|
||||
DEFEVENT(KEY_START,_T("[Keyboard]"),AM_INFO, 0,0,0)
|
||||
|
||||
DEFEVENT(KEY_F1,_T("F1"),AM_K,0,0,AK_F1)
|
||||
DEFEVENT(KEY_F2,_T("F2"),AM_K,0,0,AK_F2)
|
||||
@ -315,6 +316,8 @@ DEFEVENT(KEY_7F,_T("Keycode 0x7F"),AM_K,0,0,0x7f)
|
||||
|
||||
/* special */
|
||||
|
||||
DEFEVENT(SPC_START,_T("[Miscellaneous]"),AM_INFO,0,0,0)
|
||||
|
||||
DEFEVENT(SPC_CUSTOM_EVENT,_T("<Custom Event>"),AM_K,0,0,0)
|
||||
DEFEVENT(SPC_ENTERGUI,_T("Enter GUI"),AM_K,0,0,AKS_ENTERGUI)
|
||||
DEFEVENT(SPC_SCREENSHOT,_T("Screenshot (file)"),AM_K,0,0,AKS_SCREENSHOT_FILE)
|
||||
|
||||
2
main.cpp
2
main.cpp
@ -498,6 +498,8 @@ void fixup_prefs (struct uae_prefs *p)
|
||||
#endif
|
||||
if (p->maprom && !p->address_space_24)
|
||||
p->maprom = 0x0f000000;
|
||||
if ((p->maprom & 0xff000000) && p->address_space_24)
|
||||
p->maprom = 0x00e00000;
|
||||
if (p->tod_hack && p->cs_ciaatod == 0)
|
||||
p->cs_ciaatod = p->ntscmode ? 2 : 1;
|
||||
|
||||
|
||||
@ -2516,8 +2516,8 @@ void memory_reset (void)
|
||||
protect_roms (true);
|
||||
}
|
||||
|
||||
if (cloanto_rom && currprefs.maprom < 0x01000000)
|
||||
currprefs.maprom = changed_prefs.maprom = 0;
|
||||
if ((cloanto_rom || extendedkickmem_size) && currprefs.maprom && currprefs.maprom < 0x01000000)
|
||||
currprefs.maprom = changed_prefs.maprom = 0x00a80000;
|
||||
|
||||
map_banks (&custom_bank, 0xC0, 0xE0 - 0xC0, 0);
|
||||
map_banks (&cia_bank, 0xA0, 32, 0);
|
||||
@ -2592,7 +2592,7 @@ void memory_reset (void)
|
||||
|
||||
map_banks (&kickmem_bank, 0xF8, 8, 0);
|
||||
if (currprefs.maprom)
|
||||
map_banks (&kickram_bank, currprefs.maprom >> 16, 8, 0);
|
||||
map_banks (&kickram_bank, currprefs.maprom >> 16, extendedkickmem2_size ? 32 : (extendedkickmem_size ? 16 : 8), 0);
|
||||
/* map beta Kickstarts at 0x200000/0xC00000/0xF00000 */
|
||||
if (kickmemory[0] == 0x11 && kickmemory[2] == 0x4e && kickmemory[3] == 0xf9 && kickmemory[4] == 0x00) {
|
||||
uae_u32 addr = kickmemory[5];
|
||||
|
||||
@ -33,48 +33,79 @@ int my_setcurrentdir (const TCHAR *curdir, TCHAR *oldcur)
|
||||
int ret = 0;
|
||||
if (oldcur)
|
||||
ret = GetCurrentDirectory (MAX_DPATH, oldcur);
|
||||
if (curdir)
|
||||
ret = SetCurrentDirectory (curdir);
|
||||
if (curdir) {
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, curdir);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = curdir;
|
||||
}
|
||||
ret = SetCurrentDirectory (namep);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
int my_mkdir (const TCHAR *name)
|
||||
{
|
||||
return CreateDirectory (name, NULL) == 0 ? -1 : 0;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
return CreateDirectory (namep, NULL) == 0 ? -1 : 0;
|
||||
}
|
||||
|
||||
static int recycle (const TCHAR *name)
|
||||
{
|
||||
DWORD dirattr = GetFileAttributes (name);
|
||||
DWORD dirattr = GetFileAttributesSafe (name);
|
||||
bool isdir = dirattr != INVALID_FILE_ATTRIBUTES && (dirattr & FILE_ATTRIBUTE_DIRECTORY);
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
|
||||
if (currprefs.win32_norecyclebin || isdir) {
|
||||
if (currprefs.win32_norecyclebin || isdir || currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
if (isdir)
|
||||
return RemoveDirectory (name) ? 0 : -1;
|
||||
return RemoveDirectory (namep) ? 0 : -1;
|
||||
else
|
||||
return DeleteFile (name) ? 0 : -1;
|
||||
return DeleteFile (namep) ? 0 : -1;
|
||||
} else {
|
||||
SHFILEOPSTRUCT fos;
|
||||
HANDLE h;
|
||||
|
||||
h = CreateFile (name, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
|
||||
h = CreateFile (namep, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
|
||||
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
if (h != INVALID_HANDLE_VALUE) {
|
||||
LARGE_INTEGER size;
|
||||
if (GetFileSizeEx (h, &size)) {
|
||||
if (size.QuadPart == 0) {
|
||||
CloseHandle (h);
|
||||
return DeleteFile (name) ? 0 : -1;
|
||||
return DeleteFile (namep) ? 0 : -1;
|
||||
}
|
||||
}
|
||||
CloseHandle (h);
|
||||
}
|
||||
|
||||
/* name must be terminated by \0\0 */
|
||||
TCHAR *p = xcalloc (TCHAR, _tcslen (name) + 2);
|
||||
TCHAR *p = xcalloc (TCHAR, _tcslen (namep) + 2);
|
||||
int v;
|
||||
|
||||
_tcscpy (p, name);
|
||||
_tcscpy (p, namep);
|
||||
memset (&fos, 0, sizeof (fos));
|
||||
fos.wFunc = FO_DELETE;
|
||||
fos.pFrom = p;
|
||||
@ -136,7 +167,21 @@ int my_unlink (const TCHAR *name)
|
||||
|
||||
int my_rename (const TCHAR *oldname, const TCHAR *newname)
|
||||
{
|
||||
return MoveFile (oldname, newname) == 0 ? -1 : 0;
|
||||
const TCHAR *onamep, *nnamep;
|
||||
TCHAR opath[MAX_DPATH], npath[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (opath, PATHPREFIX);
|
||||
_tcscat (opath, oldname);
|
||||
onamep = opath;
|
||||
_tcscpy (npath, PATHPREFIX);
|
||||
_tcscat (npath, newname);
|
||||
nnamep = npath;
|
||||
} else {
|
||||
onamep = oldname;
|
||||
nnamep = newname;
|
||||
}
|
||||
return MoveFile (onamep, nnamep) == 0 ? -1 : 0;
|
||||
}
|
||||
|
||||
struct my_opendir_s {
|
||||
@ -154,7 +199,10 @@ struct my_opendir_s *my_opendir (const TCHAR *name, const TCHAR *mask)
|
||||
struct my_opendir_s *mod;
|
||||
TCHAR tmp[MAX_DPATH];
|
||||
|
||||
_tcscpy (tmp, name);
|
||||
tmp[0] = 0;
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false)
|
||||
_tcscpy (tmp, PATHPREFIX);
|
||||
_tcscat (tmp, name);
|
||||
_tcscat (tmp, _T("\\"));
|
||||
_tcscat (tmp, mask);
|
||||
mod = xmalloc (struct my_opendir_s, 1);
|
||||
@ -239,19 +287,50 @@ unsigned int my_write (struct my_openfile_s *mos, void *b, unsigned int size)
|
||||
return written;
|
||||
}
|
||||
|
||||
static DWORD GetFileAttributesSafe (const TCHAR *name)
|
||||
BOOL SetFileAttributesSafe (const TCHAR *name, DWORD attr)
|
||||
{
|
||||
DWORD attr, last;
|
||||
DWORD last;
|
||||
BOOL ret;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
last = SetErrorMode (SEM_FAILCRITICALERRORS);
|
||||
attr = GetFileAttributes (name);
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
ret = SetFileAttributes (namep, attr);
|
||||
SetErrorMode (last);
|
||||
return ret;
|
||||
}
|
||||
|
||||
DWORD GetFileAttributesSafe (const TCHAR *name)
|
||||
{
|
||||
DWORD attr, last;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
last = SetErrorMode (SEM_FAILCRITICALERRORS);
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
attr = GetFileAttributes (namep);
|
||||
SetErrorMode (last);
|
||||
return attr;
|
||||
}
|
||||
|
||||
int my_existsfile (const TCHAR *name)
|
||||
{
|
||||
DWORD attr = GetFileAttributesSafe (name);
|
||||
DWORD attr;
|
||||
|
||||
attr = GetFileAttributesSafe (name);
|
||||
if (attr == INVALID_FILE_ATTRIBUTES)
|
||||
return 0;
|
||||
if (!(attr & FILE_ATTRIBUTE_DIRECTORY))
|
||||
@ -261,7 +340,9 @@ int my_existsfile (const TCHAR *name)
|
||||
|
||||
int my_existsdir (const TCHAR *name)
|
||||
{
|
||||
DWORD attr = GetFileAttributesSafe (name);
|
||||
DWORD attr;
|
||||
|
||||
attr = GetFileAttributesSafe (name);
|
||||
if (attr == INVALID_FILE_ATTRIBUTES)
|
||||
return 0;
|
||||
if (attr & FILE_ATTRIBUTE_DIRECTORY)
|
||||
@ -278,7 +359,16 @@ struct my_openfile_s *my_open (const TCHAR *name, int flags)
|
||||
DWORD CreationDisposition = OPEN_EXISTING;
|
||||
DWORD FlagsAndAttributes = FILE_ATTRIBUTE_NORMAL;
|
||||
DWORD attr;
|
||||
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
mos = xmalloc (struct my_openfile_s, 1);
|
||||
if (!mos)
|
||||
return NULL;
|
||||
@ -295,20 +385,19 @@ struct my_openfile_s *my_open (const TCHAR *name, int flags)
|
||||
}
|
||||
if (flags & O_RDWR)
|
||||
DesiredAccess = GENERIC_READ | GENERIC_WRITE;
|
||||
if (CreationDisposition == CREATE_ALWAYS && attr != INVALID_FILE_ATTRIBUTES &&
|
||||
(attr & (FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN)))
|
||||
SetFileAttributes (name, FILE_ATTRIBUTE_NORMAL);
|
||||
h = CreateFile (name, DesiredAccess, ShareMode, NULL, CreationDisposition, FlagsAndAttributes, NULL);
|
||||
if (CreationDisposition == CREATE_ALWAYS && attr != INVALID_FILE_ATTRIBUTES && (attr & (FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN)))
|
||||
SetFileAttributesSafe (name, FILE_ATTRIBUTE_NORMAL);
|
||||
h = CreateFile (namep, DesiredAccess, ShareMode, NULL, CreationDisposition, FlagsAndAttributes, NULL);
|
||||
if (h == INVALID_HANDLE_VALUE) {
|
||||
DWORD err = GetLastError();
|
||||
if (err == ERROR_ACCESS_DENIED && (DesiredAccess & GENERIC_WRITE)) {
|
||||
DesiredAccess &= ~GENERIC_WRITE;
|
||||
h = CreateFile (name, DesiredAccess, ShareMode, NULL, CreationDisposition, FlagsAndAttributes, NULL);
|
||||
h = CreateFile (namep, DesiredAccess, ShareMode, NULL, CreationDisposition, FlagsAndAttributes, NULL);
|
||||
if (h == INVALID_HANDLE_VALUE)
|
||||
err = GetLastError();
|
||||
}
|
||||
if (h == INVALID_HANDLE_VALUE) {
|
||||
write_log (_T("failed to open '%s' %x %x err=%d\n"), name, DesiredAccess, CreationDisposition, err);
|
||||
write_log (_T("failed to open '%s' %x %x err=%d\n"), namep, DesiredAccess, CreationDisposition, err);
|
||||
xfree (mos);
|
||||
mos = NULL;
|
||||
goto err;
|
||||
@ -316,7 +405,7 @@ struct my_openfile_s *my_open (const TCHAR *name, int flags)
|
||||
}
|
||||
mos->h = h;
|
||||
err:
|
||||
//write_log (_T("open '%s' = %x\n"), name, mos ? mos->h : 0);
|
||||
//write_log (_T("open '%s' = %x\n"), namep, mos ? mos->h : 0);
|
||||
return mos;
|
||||
}
|
||||
|
||||
@ -325,22 +414,31 @@ int my_truncate (const TCHAR *name, uae_u64 len)
|
||||
HANDLE hFile;
|
||||
BOOL bResult = FALSE;
|
||||
int result = -1;
|
||||
|
||||
if ((hFile = CreateFile (name, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
if ((hFile = CreateFile (namep, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
|
||||
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ) ) != INVALID_HANDLE_VALUE )
|
||||
{
|
||||
LARGE_INTEGER li;
|
||||
li.QuadPart = len;
|
||||
li.LowPart = SetFilePointer (hFile, li.LowPart, &li.HighPart, FILE_BEGIN);
|
||||
if (li.LowPart == INVALID_SET_FILE_POINTER && GetLastError () != NO_ERROR) {
|
||||
write_log (_T("truncate: SetFilePointer() failure for %s to posn %d\n"), name, len);
|
||||
write_log (_T("truncate: SetFilePointer() failure for %s to posn %d\n"), namep, len);
|
||||
} else {
|
||||
if (SetEndOfFile (hFile) == TRUE)
|
||||
result = 0;
|
||||
}
|
||||
CloseHandle (hFile);
|
||||
} else {
|
||||
write_log (_T("truncate: CreateFile() failed to open %s\n"), name);
|
||||
write_log (_T("truncate: CreateFile() failed to open %s\n"), namep);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -59,14 +59,16 @@ static TCHAR *make_uaefsdbpath (const TCHAR *dir, const TCHAR *name)
|
||||
len = _tcslen (dir) + 1 + 1;
|
||||
if (name)
|
||||
len += 1 + _tcslen (name);
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false)
|
||||
len += _tcslen (PATHPREFIX);
|
||||
len += 1 + _tcslen (FSDB_FILE);
|
||||
p = xmalloc (TCHAR, len);
|
||||
if (!p)
|
||||
return NULL;
|
||||
if (name)
|
||||
_stprintf (p, _T("%s\\%s:%s"), dir, name, FSDB_FILE);
|
||||
_stprintf (p, _T("%s%s\\%s:%s"), currprefs.win32_filesystem_mangle_reserved_names == false ? PATHPREFIX : _T(""), dir, name, FSDB_FILE);
|
||||
else
|
||||
_stprintf (p, _T("%s:%s"), dir, FSDB_FILE);
|
||||
_stprintf (p, _T("%s%s:%s"), currprefs.win32_filesystem_mangle_reserved_names == false ? PATHPREFIX : _T(""), dir, FSDB_FILE);
|
||||
return p;
|
||||
}
|
||||
|
||||
@ -131,13 +133,24 @@ static int write_uaefsdb (const TCHAR *dir, uae_u8 *fsdb)
|
||||
FILETIME t1, t2, t3;
|
||||
int time_valid = FALSE;
|
||||
int ret = 0;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, dir);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = dir;
|
||||
}
|
||||
|
||||
p = make_uaefsdbpath (dir, NULL);
|
||||
dirattr = GetFileAttributes (dir);
|
||||
|
||||
dirattr = GetFileAttributesSafe (dir);
|
||||
dirflag = FILE_ATTRIBUTE_NORMAL;
|
||||
if (dirattr != INVALID_FILE_ATTRIBUTES && (dirattr & FILE_ATTRIBUTE_DIRECTORY))
|
||||
dirflag = FILE_FLAG_BACKUP_SEMANTICS; /* argh... */
|
||||
h = CreateFile (dir, GENERIC_READ, 0,
|
||||
h = CreateFile (namep, GENERIC_READ, 0,
|
||||
NULL, OPEN_EXISTING, dirflag, NULL);
|
||||
if (h != INVALID_HANDLE_VALUE) {
|
||||
if (GetFileTime (h, &t1, &t2, &t3))
|
||||
@ -188,7 +201,7 @@ end:
|
||||
if (attr != INVALID_FILE_ATTRIBUTES)
|
||||
SetFileAttributes (p, attr);
|
||||
if (time_valid) {
|
||||
h = CreateFile (dir, GENERIC_WRITE, 0,
|
||||
h = CreateFile (namep, GENERIC_WRITE, 0,
|
||||
NULL, OPEN_EXISTING, dirflag, NULL);
|
||||
if (h != INVALID_HANDLE_VALUE) {
|
||||
SetFileTime (h, &t1, &t2, &t3);
|
||||
@ -258,7 +271,7 @@ static a_inode *aino_from_buf (a_inode *base, uae_u8 *buf, int *winmode)
|
||||
aino->has_dbentry = 0;
|
||||
aino->dirty = 0;
|
||||
aino->db_offset = 0;
|
||||
if((mode = GetFileAttributes (aino->nname)) == INVALID_FILE_ATTRIBUTES) {
|
||||
if((mode = GetFileAttributesSafe (aino->nname)) == INVALID_FILE_ATTRIBUTES) {
|
||||
write_log (_T("xGetFileAttributes('%s') failed! error=%d, aino=%p\n"),
|
||||
aino->nname, GetLastError (), aino);
|
||||
return aino;
|
||||
@ -268,7 +281,7 @@ static a_inode *aino_from_buf (a_inode *base, uae_u8 *buf, int *winmode)
|
||||
}
|
||||
|
||||
/* Return nonzero for any name we can't create on the native filesystem. */
|
||||
static int fsdb_name_invalid_2 (const TCHAR *n)
|
||||
static int fsdb_name_invalid_2 (const TCHAR *n, int dir)
|
||||
{
|
||||
int i;
|
||||
static char s1[MAX_DPATH];
|
||||
@ -279,6 +292,17 @@ static int fsdb_name_invalid_2 (const TCHAR *n)
|
||||
TCHAR d = (c == '\0' ? c : n[3]);
|
||||
int l = _tcslen (n), ll;
|
||||
|
||||
/* the reserved fsdb filename */
|
||||
if (_tcscmp (n, FSDB_FILE) == 0)
|
||||
return -1;
|
||||
|
||||
if (dir) {
|
||||
if (n[0] == '.' && l == 1)
|
||||
return -1;
|
||||
if (n[0] == '.' && n[1] == '.' && l == 2)
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (a >= 'a' && a <= 'z')
|
||||
a -= 32;
|
||||
if (b >= 'a' && b <= 'z')
|
||||
@ -286,22 +310,24 @@ static int fsdb_name_invalid_2 (const TCHAR *n)
|
||||
if (c >= 'a' && c <= 'z')
|
||||
c -= 32;
|
||||
|
||||
/* reserved dos devices */
|
||||
ll = 0;
|
||||
if (a == 'A' && b == 'U' && c == 'X') ll = 3; /* AUX */
|
||||
if (a == 'C' && b == 'O' && c == 'N') ll = 3; /* CON */
|
||||
if (a == 'P' && b == 'R' && c == 'N') ll = 3; /* PRN */
|
||||
if (a == 'N' && b == 'U' && c == 'L') ll = 3; /* NUL */
|
||||
if (a == 'L' && b == 'P' && c == 'T' && (d >= '0' && d <= '9')) ll = 4; /* LPT# */
|
||||
if (a == 'C' && b == 'O' && c == 'M' && (d >= '0' && d <= '9')) ll = 4; /* COM# */
|
||||
/* AUX.anything, CON.anything etc.. are also illegal names */
|
||||
if (ll && (l == ll || (l > ll && n[ll] == '.')))
|
||||
return 1;
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names) {
|
||||
/* reserved dos devices */
|
||||
ll = 0;
|
||||
if (a == 'A' && b == 'U' && c == 'X') ll = 3; /* AUX */
|
||||
if (a == 'C' && b == 'O' && c == 'N') ll = 3; /* CON */
|
||||
if (a == 'P' && b == 'R' && c == 'N') ll = 3; /* PRN */
|
||||
if (a == 'N' && b == 'U' && c == 'L') ll = 3; /* NUL */
|
||||
if (a == 'L' && b == 'P' && c == 'T' && (d >= '0' && d <= '9')) ll = 4; /* LPT# */
|
||||
if (a == 'C' && b == 'O' && c == 'M' && (d >= '0' && d <= '9')) ll = 4; /* COM# */
|
||||
/* AUX.anything, CON.anything etc.. are also illegal names */
|
||||
if (ll && (l == ll || (l > ll && n[ll] == '.')))
|
||||
return 1;
|
||||
|
||||
/* spaces and periods at the end are a no-no */
|
||||
i = l - 1;
|
||||
if (n[i] == '.' || n[i] == ' ')
|
||||
return -1;
|
||||
/* spaces and periods at the end are a no-no */
|
||||
i = l - 1;
|
||||
if (n[i] == '.' || n[i] == ' ')
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* these characters are *never* allowed */
|
||||
for (i = 0; i < NUM_EVILCHARS; i++) {
|
||||
@ -309,10 +335,6 @@ static int fsdb_name_invalid_2 (const TCHAR *n)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* the reserved fsdb filename */
|
||||
if (_tcscmp (n, FSDB_FILE) == 0)
|
||||
return -1;
|
||||
|
||||
s1[0] = 0;
|
||||
s2[0] = 0;
|
||||
ua_fs_copy (s1, MAX_DPATH, n, -1);
|
||||
@ -325,7 +347,16 @@ static int fsdb_name_invalid_2 (const TCHAR *n)
|
||||
|
||||
int fsdb_name_invalid (const TCHAR *n)
|
||||
{
|
||||
int v = fsdb_name_invalid_2 (n);
|
||||
int v = fsdb_name_invalid_2 (n, 0);
|
||||
if (v <= 0)
|
||||
return v;
|
||||
write_log (_T("FILESYS: '%s' illegal filename\n"), n);
|
||||
return v;
|
||||
}
|
||||
|
||||
int fsdb_name_invalid_dir (const TCHAR *n)
|
||||
{
|
||||
int v = fsdb_name_invalid_2 (n, 1);
|
||||
if (v <= 0)
|
||||
return v;
|
||||
write_log (_T("FILESYS: '%s' illegal filename\n"), n);
|
||||
@ -337,11 +368,9 @@ uae_u32 filesys_parse_mask(uae_u32 mask)
|
||||
return mask ^ 0xf;
|
||||
}
|
||||
|
||||
int fsdb_exists (TCHAR *nname)
|
||||
int fsdb_exists (const TCHAR *nname)
|
||||
{
|
||||
if (GetFileAttributes(nname) == INVALID_FILE_ATTRIBUTES)
|
||||
return 0;
|
||||
return 1;
|
||||
return GetFileAttributesSafe (nname) != INVALID_FILE_ATTRIBUTES;
|
||||
}
|
||||
|
||||
/* For an a_inode we have newly created based on a filename we found on the
|
||||
@ -352,7 +381,7 @@ int fsdb_fill_file_attrs (a_inode *base, a_inode *aino)
|
||||
uae_u8 fsdb[UAEFSDB2_LEN];
|
||||
int reset = 0;
|
||||
|
||||
if((mode = GetFileAttributes(aino->nname)) == INVALID_FILE_ATTRIBUTES) {
|
||||
if((mode = GetFileAttributesSafe (aino->nname)) == INVALID_FILE_ATTRIBUTES) {
|
||||
write_log (_T("GetFileAttributes('%s') failed! error=%d, aino=%p dir=%d\n"),
|
||||
aino->nname, GetLastError(), aino, aino->dir);
|
||||
return 0;
|
||||
@ -415,7 +444,7 @@ int fsdb_set_file_attrs (a_inode *aino)
|
||||
|
||||
tmpmask = filesys_parse_mask (aino->amigaos_mode);
|
||||
|
||||
mode = GetFileAttributes (aino->nname);
|
||||
mode = GetFileAttributesSafe (aino->nname);
|
||||
if (mode == INVALID_FILE_ATTRIBUTES)
|
||||
return ERROR_OBJECT_NOT_AROUND;
|
||||
mode &= FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_ARCHIVE | FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN;
|
||||
@ -429,7 +458,7 @@ int fsdb_set_file_attrs (a_inode *aino)
|
||||
mode |= FILE_ATTRIBUTE_SYSTEM;
|
||||
if (tmpmask & A_FIBF_HIDDEN)
|
||||
mode |= FILE_ATTRIBUTE_HIDDEN;
|
||||
SetFileAttributes (aino->nname, mode);
|
||||
SetFileAttributesSafe (aino->nname, mode);
|
||||
|
||||
aino->dirty = 1;
|
||||
if (aino->volflags & MYVOLUMEINFO_STREAMS) {
|
||||
@ -523,9 +552,20 @@ TCHAR *fsdb_search_dir (const TCHAR *dirname, TCHAR *rel)
|
||||
WIN32_FIND_DATA fd;
|
||||
HANDLE h;
|
||||
TCHAR *tmp, *p = 0;
|
||||
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
tmp = build_nname (dirname, rel);
|
||||
h = FindFirstFile (tmp, &fd);
|
||||
if (!tmp)
|
||||
return NULL;
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, tmp);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = tmp;
|
||||
}
|
||||
h = FindFirstFile (namep, &fd);
|
||||
if (h != INVALID_HANDLE_VALUE) {
|
||||
if (_tcscmp (fd.cFileName, rel) == 0)
|
||||
p = rel;
|
||||
@ -544,11 +584,22 @@ static a_inode *custom_fsdb_lookup_aino (a_inode *base, const TCHAR *aname, int
|
||||
HANDLE h;
|
||||
WIN32_FIND_DATA fd;
|
||||
static a_inode dummy;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
tmp1 = build_nname (base->nname, UAEFSDB_BEGINSX);
|
||||
if (!tmp1)
|
||||
return NULL;
|
||||
h = FindFirstFile (tmp1, &fd);
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, tmp1);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = tmp1;
|
||||
}
|
||||
|
||||
h = FindFirstFile (namep, &fd);
|
||||
if (h != INVALID_HANDLE_VALUE) {
|
||||
do {
|
||||
if (read_uaefsdb (base->nname, fd.cFileName, fsdb)) {
|
||||
|
||||
@ -126,11 +126,11 @@ static struct uae_input_device_kbr_default keytrans_amiga[] = {
|
||||
|
||||
{ DIK_LSHIFT, INPUTEVENT_KEY_SHIFT_LEFT, 0, INPUTEVENT_SPC_QUALIFIER_SHIFT },
|
||||
{ DIK_LCONTROL, INPUTEVENT_KEY_CTRL, 0, INPUTEVENT_SPC_QUALIFIER_CONTROL },
|
||||
{ DIK_LWIN, INPUTEVENT_KEY_AMIGA_LEFT },
|
||||
{ DIK_LWIN, INPUTEVENT_KEY_AMIGA_LEFT, 0, INPUTEVENT_SPC_QUALIFIER_WIN },
|
||||
{ DIK_LMENU, INPUTEVENT_KEY_ALT_LEFT, 0, INPUTEVENT_SPC_QUALIFIER_ALT },
|
||||
{ DIK_RMENU, INPUTEVENT_KEY_ALT_RIGHT, 0, INPUTEVENT_SPC_QUALIFIER_ALT },
|
||||
{ DIK_RWIN, INPUTEVENT_KEY_AMIGA_RIGHT },
|
||||
{ DIK_APPS, INPUTEVENT_KEY_AMIGA_RIGHT },
|
||||
{ DIK_RWIN, INPUTEVENT_KEY_AMIGA_RIGHT, 0, INPUTEVENT_SPC_QUALIFIER_WIN },
|
||||
{ DIK_APPS, INPUTEVENT_KEY_AMIGA_RIGHT, 0, INPUTEVENT_SPC_QUALIFIER_WIN },
|
||||
{ DIK_RCONTROL, INPUTEVENT_KEY_CTRL, 0, INPUTEVENT_SPC_QUALIFIER_CONTROL },
|
||||
{ DIK_RSHIFT, INPUTEVENT_KEY_SHIFT_RIGHT, 0, INPUTEVENT_SPC_QUALIFIER_SHIFT },
|
||||
|
||||
|
||||
@ -118,9 +118,19 @@ int posixemu_stat (const TCHAR *name, struct _stat64 *statbuf)
|
||||
FILETIME ft, lft;
|
||||
HANDLE h;
|
||||
BY_HANDLE_FILE_INFORMATION fi;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
|
||||
// FILE_FLAG_BACKUP_SEMANTICS = can also "open" directories
|
||||
h = CreateFile (name, 0, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
||||
h = CreateFile (namep, 0, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
||||
if (h == INVALID_HANDLE_VALUE) {
|
||||
write_log (_T("Stat CreateFile(%s) failed: %d\n"), name, GetLastError ());
|
||||
return -1;
|
||||
@ -135,7 +145,7 @@ int posixemu_stat (const TCHAR *name, struct _stat64 *statbuf)
|
||||
ft = fi.ftLastWriteTime;
|
||||
statbuf->st_size = ((uae_u64)fi.nFileSizeHigh << 32) | fi.nFileSizeLow;
|
||||
} else {
|
||||
write_log (_T("GetFileInformationByHandle(%s) failed: %d\n"), name, GetLastError ());
|
||||
write_log (_T("GetFileInformationByHandle(%s) failed: %d\n"), namep, GetLastError ());
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -157,7 +167,7 @@ int posixemu_chmod (const TCHAR *name, int mode)
|
||||
attr |= FILE_ATTRIBUTE_READONLY;
|
||||
if (mode & FILEFLAG_ARCHIVE)
|
||||
attr |= FILE_ATTRIBUTE_ARCHIVE;
|
||||
if (SetFileAttributes (name,attr))
|
||||
if (SetFileAttributesSafe (name,attr))
|
||||
return 1;
|
||||
return -1;
|
||||
}
|
||||
@ -182,8 +192,18 @@ static int setfiletime (const TCHAR *name, unsigned int days, int minute, int ti
|
||||
{
|
||||
FILETIME LocalFileTime, FileTime;
|
||||
HANDLE hFile;
|
||||
const TCHAR *namep;
|
||||
TCHAR path[MAX_DPATH];
|
||||
|
||||
if (currprefs.win32_filesystem_mangle_reserved_names == false) {
|
||||
_tcscpy (path, PATHPREFIX);
|
||||
_tcscat (path, name);
|
||||
namep = path;
|
||||
} else {
|
||||
namep = name;
|
||||
}
|
||||
|
||||
if ((hFile = CreateFile (name, GENERIC_WRITE,FILE_SHARE_READ | FILE_SHARE_WRITE,NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, NULL)) == INVALID_HANDLE_VALUE)
|
||||
if ((hFile = CreateFile (namep, GENERIC_WRITE,FILE_SHARE_READ | FILE_SHARE_WRITE,NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, NULL)) == INVALID_HANDLE_VALUE)
|
||||
return 0;
|
||||
|
||||
for (;;) {
|
||||
|
||||
@ -6,6 +6,7 @@
|
||||
#define IDS_DISK 2
|
||||
#define IDS_DISPLAY 3
|
||||
#define IDC_HARDDRIVE_IMAGE 3
|
||||
#define IDC_LISTDIALOG_CLEAR 3
|
||||
#define IDS_HARDDISK 4
|
||||
#define IDS_FLOPPY 5
|
||||
#define IDS_ABOUT 6
|
||||
@ -363,6 +364,10 @@
|
||||
#define IDS_WSTYLE_MINIMAL 383
|
||||
#define IDS_WSTYLE_STANDARD 384
|
||||
#define IDS_WSTYLE_EXTENDED 385
|
||||
#define IDD_LIST 386
|
||||
#define IDS_MISCLISTITEMS1 386
|
||||
#define IDS_MISCLISTITEMS2 387
|
||||
#define IDS_MISCLISTITEMS3 388
|
||||
#define IDS_QS_MODELS 1000
|
||||
#define IDS_QS_MODEL_A500 1001
|
||||
#define IDS_QS_MODEL_A500P 1002
|
||||
@ -539,6 +544,9 @@
|
||||
#define IDC_SAVEIMAGE2 1287
|
||||
#define IDC_PROWIZARD 1288
|
||||
#define IDC_SAVEIMAGE3 1288
|
||||
#define IDC_GUI_FONT 1288
|
||||
#define IDC_GUI_DEFAULT 1289
|
||||
#define IDC_GUI_LISTFONT 1290
|
||||
#define IDC_PORT0_JOYSC 1302
|
||||
#define IDC_PORT0_KBDA 1303
|
||||
#define IDC_PORT0_KBDB 1304
|
||||
@ -664,6 +672,7 @@
|
||||
#define IDC_DF0WP 1519
|
||||
#define IDC_OCS 1520
|
||||
#define IDC_HDFLOPPY 1520
|
||||
#define IDC_SETTINGSTEXT3 1520
|
||||
#define IDC_ECS_AGNUS 1521
|
||||
#define IDC_ECS_DENISE 1522
|
||||
#define IDC_ECS 1523
|
||||
@ -682,11 +691,12 @@
|
||||
#define IDC_MINIMIZED_PAUSE 1531
|
||||
#define IDC_STATEREC_RECORD 1532
|
||||
#define IDC_KBLED_USB 1533
|
||||
#define IDC_STATEREC_CAPTURE2 1533
|
||||
#define IDC_ACTIVE_PAUSE 1534
|
||||
#define IDC_KBLED_USB2 1534
|
||||
#define IDC_ACTIVE_NOSOUND 1535
|
||||
#define IDC_STATECLEAR 1536
|
||||
#define IDC_SER_SHARED 1553
|
||||
#define IDC_GUI_RESIZE 1553
|
||||
#define IDC_SER_CTSRTS 1554
|
||||
#define IDC_SER_DIRECT 1555
|
||||
#define IDC_PSPRINTER 1556
|
||||
@ -823,6 +833,8 @@
|
||||
#define IDC_SOUNDCALIBRATE 1641
|
||||
#define IDC_ACTIVE_PRIORITY 1642
|
||||
#define IDC_SOUNDDRIVE 1642
|
||||
#define IDC_KBLED4 1642
|
||||
#define IDC_GUI_SIZE 1642
|
||||
#define IDC_INACTIVE_PRIORITY 1643
|
||||
#define IDC_ACTIVE_PRI 1644
|
||||
#define IDC_MINIMIZED_PRIORITY 1645
|
||||
@ -938,6 +950,7 @@
|
||||
#define IDC_SOUND_AUTO 1709
|
||||
#define IDC_FILTERKEEPASPECT 1709
|
||||
#define IDC_CS_RTC 1710
|
||||
#define IDC_FILTERKEEPAUTOSCALEASPECT 1710
|
||||
#define IDC_CS_CIAA_TOD1 1711
|
||||
#define IDC_CS_CIAA_TOD2 1712
|
||||
#define IDC_CS_EXT 1712
|
||||
@ -1083,6 +1096,7 @@
|
||||
#define IDC_MISCLIST 1810
|
||||
#define IDC_STATENAME 1811
|
||||
#define IDC_SAMPLER_STEREO 1812
|
||||
#define IDC_LISTDIALOG_LIST 1813
|
||||
#define ID__FLOPPYDRIVES 40004
|
||||
#define ID_FLOPPYDRIVES_DF0 40005
|
||||
#define ID_ST_CONFIGURATION 40010
|
||||
@ -1131,9 +1145,9 @@
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NO_MFC 1
|
||||
#define _APS_3D_CONTROLS 1
|
||||
#define _APS_NEXT_RESOURCE_VALUE 386
|
||||
#define _APS_NEXT_RESOURCE_VALUE 387
|
||||
#define _APS_NEXT_COMMAND_VALUE 40050
|
||||
#define _APS_NEXT_CONTROL_VALUE 1813
|
||||
#define _APS_NEXT_CONTROL_VALUE 1814
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
|
||||
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
|
||||
<dependency>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity type="win32"
|
||||
@ -18,4 +18,9 @@
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
<asmv3:application>
|
||||
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
|
||||
<dpiAware>true</dpiAware>
|
||||
</asmv3:windowsSettings>
|
||||
</asmv3:application>
|
||||
</assembly>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -728,7 +728,7 @@ static int _cdecl portAudioCallback (const void *inputBuffer, void *outputBuffer
|
||||
int bytestocopy;
|
||||
int diff;
|
||||
|
||||
if (!framesPerBuffer || !s->pafinishsb)
|
||||
if (!framesPerBuffer || !s->pafinishsb || sdp->deactive)
|
||||
return paContinue;
|
||||
|
||||
if (!s->pacallbacksize)
|
||||
@ -1702,8 +1702,15 @@ static void restart_sound_buffer2 (struct sound_data *sd)
|
||||
cf (s->writepos);
|
||||
}
|
||||
|
||||
void pause_sound_buffer (void)
|
||||
{
|
||||
sdp->deactive = true;
|
||||
reset_sound ();
|
||||
}
|
||||
|
||||
void restart_sound_buffer (void)
|
||||
{
|
||||
sdp->deactive = false;
|
||||
restart_sound_buffer2 (sdp);
|
||||
}
|
||||
|
||||
|
||||
@ -13,6 +13,7 @@ extern uae_u16 *paula_sndbufpt;
|
||||
extern int paula_sndbufsize;
|
||||
extern void finish_sound_buffer (void);
|
||||
extern void restart_sound_buffer (void);
|
||||
extern void pause_sound_buffer (void);
|
||||
extern int init_sound (void);
|
||||
extern void close_sound (void);
|
||||
extern int setup_sound (void);
|
||||
@ -33,6 +34,7 @@ struct sound_dp;
|
||||
struct sound_data
|
||||
{
|
||||
int waiting_for_buffer;
|
||||
int deactive;
|
||||
int devicetype;
|
||||
int obtainedfreq;
|
||||
int paused;
|
||||
|
||||
@ -158,6 +158,7 @@ static int recapture;
|
||||
static int focus;
|
||||
int mouseactive;
|
||||
int minimized;
|
||||
int monitor_off;
|
||||
|
||||
static int mm_timerres;
|
||||
static int timermode, timeon;
|
||||
@ -683,6 +684,7 @@ static void setmouseactive2 (int active, bool allowpause)
|
||||
}
|
||||
void setmouseactive (int active)
|
||||
{
|
||||
monitor_off = 0;
|
||||
setmouseactive2 (active, true);
|
||||
}
|
||||
|
||||
@ -693,6 +695,7 @@ static void winuae_active (HWND hWnd, int minimized)
|
||||
struct threadpriorities *pri;
|
||||
|
||||
write_log (_T("winuae_active(%d)\n"), minimized);
|
||||
monitor_off = 0;
|
||||
/* without this returning from hibernate-mode causes wrong timing
|
||||
*/
|
||||
timeend ();
|
||||
@ -733,7 +736,6 @@ static void winuae_active (HWND hWnd, int minimized)
|
||||
lcd_priority (1);
|
||||
#endif
|
||||
clipboard_active (hAmigaWnd, 1);
|
||||
SetThreadExecutionState (ES_CONTINUOUS | ES_DISPLAY_REQUIRED);
|
||||
#if USETHREADCHARACTERICS
|
||||
if (os_vista && AVTask == NULL) {
|
||||
DWORD taskIndex = 0;
|
||||
@ -967,6 +969,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam,
|
||||
switch (message)
|
||||
{
|
||||
case WM_INPUT:
|
||||
monitor_off = 0;
|
||||
handle_rawinput (lParam);
|
||||
DefWindowProc (hWnd, message, wParam, lParam);
|
||||
return 0;
|
||||
@ -1189,6 +1192,8 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam,
|
||||
case WM_MOUSEMOVE:
|
||||
{
|
||||
int wm = dinput_winmouse ();
|
||||
|
||||
monitor_off = 0;
|
||||
|
||||
mx = (signed short) LOWORD (lParam);
|
||||
my = (signed short) HIWORD (lParam);
|
||||
@ -1345,10 +1350,15 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam,
|
||||
case WM_SYSCOMMAND:
|
||||
switch (wParam & 0xfff0) // Check System Calls
|
||||
{
|
||||
// SetThreadExecutionState handles this now
|
||||
case SC_SCREENSAVE: // Screensaver Trying To Start?
|
||||
break;
|
||||
case SC_MONITORPOWER: // Monitor Trying To Enter Powersave?
|
||||
|
||||
// SetThreadExecutionState handles this now
|
||||
write_log (_T("SC_MONITORPOWER=%d"), lParam);
|
||||
if ((int)lParam < 0)
|
||||
monitor_off = 0;
|
||||
else if ((int)lParam > 0)
|
||||
monitor_off = 1;
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -1875,7 +1885,7 @@ void handle_events (void)
|
||||
{
|
||||
MSG msg;
|
||||
int was_paused = 0;
|
||||
static int cnt;
|
||||
static int cnt1, cnt2;
|
||||
|
||||
if (hStatusWnd && guijoychange && window_led_joy_start > 0) {
|
||||
guijoychange = false;
|
||||
@ -1903,10 +1913,18 @@ void handle_events (void)
|
||||
#ifdef RETROPLATFORM
|
||||
rp_vsync ();
|
||||
#endif
|
||||
cnt = 0;
|
||||
cnt1 = 0;
|
||||
while (checkIPC (globalipc, &currprefs));
|
||||
if (quit_program)
|
||||
break;
|
||||
cnt2--;
|
||||
if (cnt2 <= 0) {
|
||||
if (currprefs.win32_powersavedisabled)
|
||||
SetThreadExecutionState (ES_CONTINUOUS | ES_DISPLAY_REQUIRED);
|
||||
else
|
||||
SetThreadExecutionState (ES_CONTINUOUS);
|
||||
cnt2 = 10;
|
||||
}
|
||||
}
|
||||
#if 0
|
||||
while (PeekMessage (&msg, 0, 0, 0, PM_REMOVE)) {
|
||||
@ -1920,11 +1938,19 @@ void handle_events (void)
|
||||
sound_closed = 0;
|
||||
manual_painting_needed--;
|
||||
}
|
||||
cnt--;
|
||||
if (cnt <= 0) {
|
||||
cnt1--;
|
||||
if (cnt1 <= 0) {
|
||||
figure_processor_speed ();
|
||||
flush_log ();
|
||||
cnt = 50 * 5;
|
||||
cnt1 = 50 * 5;
|
||||
cnt2--;
|
||||
if (cnt2 <= 0) {
|
||||
if (currprefs.win32_powersavedisabled)
|
||||
SetThreadExecutionState (ES_CONTINUOUS | ES_DISPLAY_REQUIRED);
|
||||
else
|
||||
SetThreadExecutionState (ES_CONTINUOUS);
|
||||
cnt2 = 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2904,7 +2930,7 @@ void target_default_options (struct uae_prefs *p, int type)
|
||||
p->win32_uaescsimode = UAESCSI_CDEMU;
|
||||
p->win32_borderless = 0;
|
||||
p->win32_blankmonitors = false;
|
||||
p->win32_powersavedisabled = 1;
|
||||
p->win32_powersavedisabled = true;
|
||||
p->sana2 = 0;
|
||||
p->win32_rtgmatchdepth = 1;
|
||||
p->win32_rtgscaleifsmall = 1;
|
||||
@ -2932,6 +2958,7 @@ void target_default_options (struct uae_prefs *p, int type)
|
||||
p->win32_automount_cddrives = 0;
|
||||
p->win32_automount_netdrives = 0;
|
||||
p->picasso96_modeflags = RGBFF_CLUT | RGBFF_R5G6B5PC | RGBFF_B8G8R8A8;
|
||||
p->win32_filesystem_mangle_reserved_names = true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -3035,6 +3062,7 @@ void target_save_options (struct zfile *f, struct uae_prefs *p)
|
||||
cfgfile_target_dwrite_str (f, _T("parjoyport0"), p->win32_parjoyport0);
|
||||
cfgfile_target_dwrite_str (f, _T("parjoyport1"), p->win32_parjoyport1);
|
||||
cfgfile_target_dwrite_str (f, _T("gui_page"), p->win32_guipage);
|
||||
cfgfile_target_dwrite_bool (f, _T("filesystem_mangle_reserved_names"), p->win32_filesystem_mangle_reserved_names);
|
||||
}
|
||||
|
||||
static int fetchpri (int pri, int defpri)
|
||||
@ -3107,6 +3135,7 @@ int target_parse_option (struct uae_prefs *p, const TCHAR *option, const TCHAR *
|
||||
|| cfgfile_string (option, value, _T("gui_page"), p->win32_guipage, sizeof p->win32_guipage / sizeof (TCHAR))
|
||||
|| cfgfile_intval (option, value, _T("guikey"), &p->win32_guikey, 1)
|
||||
|| cfgfile_intval (option, value, _T("kbledmode"), &p->win32_kbledmode, 1)
|
||||
|| cfgfile_yesno (option, value, _T("filesystem_mangle_reserved_names"), &p->win32_filesystem_mangle_reserved_names)
|
||||
|| cfgfile_intval (option, value, _T("cpu_idle"), &p->cpu_idle, 1));
|
||||
|
||||
if (cfgfile_yesno (option, value, _T("rtg_match_depth"), &p->win32_rtgmatchdepth))
|
||||
@ -5862,13 +5891,11 @@ void fpux_restore (int *v)
|
||||
#endif
|
||||
}
|
||||
|
||||
typedef BOOL (CALLBACK* SETPROCESSDPIAWARE)(void);
|
||||
typedef BOOL (CALLBACK* CHANGEWINDOWMESSAGEFILTER)(UINT, DWORD);
|
||||
|
||||
|
||||
int PASCAL wWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow)
|
||||
{
|
||||
SETPROCESSDPIAWARE pSetProcessDPIAware;
|
||||
DWORD_PTR sys_aff;
|
||||
HANDLE thread;
|
||||
|
||||
@ -5908,12 +5935,7 @@ int PASCAL wWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdL
|
||||
pChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD);
|
||||
#endif
|
||||
|
||||
pSetProcessDPIAware = (SETPROCESSDPIAWARE)GetProcAddress (
|
||||
GetModuleHandle (_T("user32.dll")), "SetProcessDPIAware");
|
||||
if (pSetProcessDPIAware)
|
||||
pSetProcessDPIAware ();
|
||||
log_open (NULL, 0, 0);
|
||||
|
||||
|
||||
__try {
|
||||
WinMain2 (hInstance, hPrevInstance, lpCmdLine, nCmdShow);
|
||||
|
||||
@ -19,8 +19,8 @@
|
||||
#define LANG_DLL 1
|
||||
|
||||
//#define WINUAEBETA _T("")
|
||||
#define WINUAEBETA _T("12")
|
||||
#define WINUAEDATE MAKEBD(2012, 8, 14)
|
||||
#define WINUAEBETA _T("13")
|
||||
#define WINUAEDATE MAKEBD(2012, 8, 26)
|
||||
#define WINUAEEXTRA _T("")
|
||||
//#define WINUAEEXTRA _T("AmiKit Preview")
|
||||
#define WINUAEREV _T("")
|
||||
@ -37,6 +37,7 @@ extern int manual_painting_needed;
|
||||
extern int manual_palette_refresh_needed;
|
||||
extern int mouseactive;
|
||||
extern int minimized;
|
||||
extern int monitor_off;
|
||||
extern int ignore_messages_all;
|
||||
extern void *globalipc, *serialipc;
|
||||
|
||||
@ -195,4 +196,8 @@ struct assext {
|
||||
struct assext exts[];
|
||||
void associate_file_extensions (void);
|
||||
|
||||
#define PATHPREFIX _T("\\\\?\\")
|
||||
DWORD GetFileAttributesSafe (const TCHAR *name);
|
||||
BOOL SetFileAttributesSafe (const TCHAR *name, DWORD attr);
|
||||
|
||||
#endif
|
||||
|
||||
@ -147,7 +147,8 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
bool specialmode = !isnativevidbuf ();
|
||||
float mrmx, mrmy, mrsx, mrsy;
|
||||
int extraw2;
|
||||
|
||||
bool doautoaspect = false;
|
||||
float autoaspectratio;
|
||||
|
||||
int filter_horiz_zoom = currprefs.gfx_filter_horiz_zoom;
|
||||
int filter_vert_zoom = currprefs.gfx_filter_vert_zoom;
|
||||
@ -232,7 +233,7 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
bool scl = false;
|
||||
|
||||
if (scalemode) {
|
||||
int cw, ch, cx, cy, cv;
|
||||
int cw, ch, cx, cy, cv, crealh = 0;
|
||||
static int oxmult, oymult;
|
||||
|
||||
filterxmult = 1000 / scale;
|
||||
@ -276,7 +277,7 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
}
|
||||
|
||||
if (scalemode == AUTOSCALE_INTEGER_AUTOSCALE)
|
||||
ok = get_custom_limits (&cw, &ch, &cx, &cy);
|
||||
ok = get_custom_limits (&cw, &ch, &cx, &cy, &crealh);
|
||||
if (scalemode == AUTOSCALE_INTEGER || ok == false)
|
||||
getmanualpos (&cx, &cy, &cw, &ch);
|
||||
|
||||
@ -330,11 +331,11 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
|
||||
} else if (scalemode == AUTOSCALE_CENTER || scalemode == AUTOSCALE_RESIZE) {
|
||||
|
||||
cv = get_custom_limits (&cw, &ch, &cx, &cy);
|
||||
cv = get_custom_limits (&cw, &ch, &cx, &cy, &crealh);
|
||||
|
||||
} else {
|
||||
|
||||
cv = get_custom_limits (&cw, &ch, &cx, &cy);
|
||||
cv = get_custom_limits (&cw, &ch, &cx, &cy, &crealh);
|
||||
if (cv) {
|
||||
set_custom_limits (cw, ch, cx, cy);
|
||||
scl = true;
|
||||
@ -344,6 +345,12 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
|
||||
if (!scl)
|
||||
set_custom_limits (-1, -1, -1, -1);
|
||||
|
||||
autoaspectratio = 0;
|
||||
if (currprefs.gfx_filter_keep_autoscale_aspect && crealh > 0 && (scalemode == AUTOSCALE_NORMAL || scalemode == AUTOSCALE_INTEGER_AUTOSCALE)) {
|
||||
autoaspectratio = ((float)crealh / ch);
|
||||
doautoaspect = true;
|
||||
}
|
||||
|
||||
if (currprefs.gfx_api == 0) {
|
||||
if (cx < 0)
|
||||
@ -450,11 +457,14 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
filteroffsetx = -zr->left / scale;
|
||||
filteroffsety = -zr->top / scale;
|
||||
|
||||
bool aspect = false;
|
||||
int diffx = dr->right - dr->left;
|
||||
int diffy = dr->bottom - dr->top;
|
||||
|
||||
xmult = 1.0;
|
||||
ymult = 1.0;
|
||||
|
||||
if (currprefs.gfx_filter_keep_aspect || currprefs.gfx_filter_aspect != 0) {
|
||||
int diffx = dr->right - dr->left;
|
||||
int diffy = dr->bottom - dr->top;
|
||||
float xmult = 1.0;
|
||||
float ymult = 1.0;
|
||||
|
||||
if (currprefs.gfx_filter_keep_aspect) {
|
||||
if (currprefs.ntscmode) {
|
||||
@ -470,6 +480,19 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
dstratio = dstratio * 0.95;
|
||||
}
|
||||
}
|
||||
aspect = true;
|
||||
|
||||
} else if (doautoaspect) {
|
||||
|
||||
aspect = true;
|
||||
|
||||
}
|
||||
|
||||
if (aspect) {
|
||||
|
||||
if (doautoaspect) {
|
||||
srcratio *= autoaspectratio;
|
||||
}
|
||||
|
||||
if (srcratio > dstratio) {
|
||||
ymult = ymult * srcratio / dstratio;
|
||||
@ -500,6 +523,7 @@ void getfilterrect2 (RECT *sr, RECT *dr, RECT *zr, int dst_width, int dst_height
|
||||
|
||||
}
|
||||
cont:
|
||||
|
||||
if (!filter_horiz_zoom_mult && !filter_vert_zoom_mult) {
|
||||
|
||||
sizeoffset (dr, zr, extraw, extrah);
|
||||
|
||||
@ -930,7 +930,7 @@ bool render_screen (bool immediate)
|
||||
bool v = false;
|
||||
|
||||
render_ok = false;
|
||||
if (minimized || picasso_on || dx_islost ())
|
||||
if (minimized || picasso_on || monitor_off || dx_islost ())
|
||||
return render_ok;
|
||||
flushymin = 0;
|
||||
flushymax = currentmode->amiga_height;
|
||||
@ -1744,7 +1744,7 @@ int check_prefs_changed_gfx (void)
|
||||
currprefs.gfx_ycenter = changed_prefs.gfx_ycenter;
|
||||
currprefs.gfx_filter_autoscale = changed_prefs.gfx_filter_autoscale;
|
||||
|
||||
get_custom_limits (NULL, NULL, NULL, NULL);
|
||||
get_custom_limits (NULL, NULL, NULL, NULL, NULL);
|
||||
fixup_prefs_dimensions (&changed_prefs);
|
||||
|
||||
return 1;
|
||||
|
||||
@ -91,6 +91,10 @@
|
||||
#include "rp.h"
|
||||
#endif
|
||||
|
||||
#define GUI_SCALE_DEFAULT 90
|
||||
#define MIN_GUI_INTERNAL_WIDTH 512
|
||||
#define MIN_GUI_INTERNAL_HEIGHT 400
|
||||
|
||||
#define ARCHIVE_STRING _T("*.zip;*.7z;*.rar;*.lha;*.lzh;*.lzx")
|
||||
|
||||
#define DISK_FORMAT_STRING _T("(*.adf;*.adz;*.gz;*.dms;*.fdi;*.ipf;*.exe)\0*.adf;*.adz;*.gz;*.dms;*.fdi;*.ipf;*.exe;*.ima;*.wrp;*.dsq;*.st;") ARCHIVE_STRING _T("\0")
|
||||
@ -132,6 +136,7 @@ extern int mouseactive;
|
||||
|
||||
TCHAR config_filename[256] = _T("");
|
||||
static TCHAR stored_path[MAX_DPATH];
|
||||
static int gui_size_changed;
|
||||
|
||||
#define Error(x) MessageBox (NULL, (x), _T("WinUAE Error"), MB_OK)
|
||||
|
||||
@ -1763,7 +1768,9 @@ int target_cfgfile_load (struct uae_prefs *p, const TCHAR *filename, int type, i
|
||||
return v;
|
||||
}
|
||||
|
||||
static int gui_width = 640, gui_height = 480;
|
||||
static int gui_width, gui_height;
|
||||
static bool gui_resize;
|
||||
// Internal panel max size: 396, 318
|
||||
|
||||
static int mm = 0;
|
||||
static void m (void)
|
||||
@ -1812,9 +1819,6 @@ void gui_display (int shortcut)
|
||||
w = currprefs.gfx_size.width;
|
||||
h = currprefs.gfx_size.height;
|
||||
}
|
||||
scaleresource_setmaxsize (-1, -1);
|
||||
if (w > 0 && h > 0)
|
||||
scaleresource_setmaxsize (w, h);
|
||||
manual_painting_needed++; /* So that WM_PAINT will refresh the display */
|
||||
|
||||
flush_log ();
|
||||
@ -3346,6 +3350,10 @@ static void getqualifiername (TCHAR *p, uae_u64 mask)
|
||||
_tcscpy (p, _T("Alt"));
|
||||
} else if (mask == (IDEV_MAPPED_QUALIFIER_ALT << 1)) {
|
||||
_tcscpy (p, _T("Alt [R]"));
|
||||
} else if (mask == IDEV_MAPPED_QUALIFIER_WIN) {
|
||||
_tcscpy (p, _T("Win"));
|
||||
} else if (mask == (IDEV_MAPPED_QUALIFIER_WIN << 1)) {
|
||||
_tcscpy (p, _T("Win [R]"));
|
||||
} else {
|
||||
int j;
|
||||
uae_u64 i;
|
||||
@ -3757,8 +3765,12 @@ void InitializeListView (HWND hDlg)
|
||||
|
||||
} else if (lv_type == LV_MISC1) {
|
||||
|
||||
int itemids[] = { IDS_MISCLISTITEMS1, IDS_MISCLISTITEMS2, IDS_MISCLISTITEMS3, -1 };
|
||||
int itemoffset = 0;
|
||||
int itemcnt = 0;
|
||||
listview_column_width[0] = 150;
|
||||
for (i = 0; misclist[i].name; i++) {
|
||||
TCHAR tmpentry[MAX_DPATH], itemname[MAX_DPATH];
|
||||
struct miscentry *me = &misclist[i];
|
||||
int type = me->type;
|
||||
bool checked = false;
|
||||
@ -3768,9 +3780,36 @@ void InitializeListView (HWND hDlg)
|
||||
} else if (me->i) {
|
||||
checked = ((*me->i) & me->imask) != 0;
|
||||
}
|
||||
_tcscpy (itemname, me->name);
|
||||
|
||||
for (;;) {
|
||||
if (itemids[itemcnt] < 0)
|
||||
break;
|
||||
WIN32GUI_LoadUIString (itemids[itemcnt], tmpentry, sizeof tmpentry / sizeof (TCHAR));
|
||||
TCHAR *p = tmpentry;
|
||||
for (int j = 0; j < itemoffset; j++) {
|
||||
p = _tcschr (p, '\n');
|
||||
if (!p || p[1] == 0) {
|
||||
p = NULL;
|
||||
itemoffset = 0;
|
||||
itemcnt++;
|
||||
break;
|
||||
}
|
||||
p++;
|
||||
}
|
||||
if (!p)
|
||||
continue;
|
||||
TCHAR *p2 = _tcschr (p, '\n');
|
||||
if (p2) {
|
||||
*p2 = 0;
|
||||
_tcscpy (itemname, p);
|
||||
}
|
||||
itemoffset++;
|
||||
break;
|
||||
}
|
||||
|
||||
lvstruct.mask = LVIF_TEXT | LVIF_PARAM;
|
||||
lvstruct.pszText = me->name;
|
||||
lvstruct.pszText = itemname;
|
||||
lvstruct.lParam = 0;
|
||||
lvstruct.iItem = i;
|
||||
lvstruct.iSubItem = 0;
|
||||
@ -4578,6 +4617,9 @@ static void SetupRichText(HWND hDlg, urlinfo *url)
|
||||
{
|
||||
CHARFORMAT CharFormat;
|
||||
CharFormat.cbSize = sizeof (CharFormat);
|
||||
int my;
|
||||
|
||||
scaleresource_getmult (NULL, &my);
|
||||
|
||||
SetDlgItemText (hDlg, url->id, url->display);
|
||||
SendDlgItemMessage (hDlg, url->id, EM_GETCHARFORMAT, 0, (LPARAM)&CharFormat);
|
||||
@ -7737,7 +7779,16 @@ static void misc_lang (HWND hDlg)
|
||||
}
|
||||
}
|
||||
SendDlgItemMessage (hDlg, IDC_LANGUAGE, CB_SETCURSEL, idx, 0);
|
||||
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_RESETCONTENT, 0, 0);
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_ADDSTRING, 0, (LPARAM)_T("Select"));
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_ADDSTRING, 0, (LPARAM)_T("110%"));
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_ADDSTRING, 0, (LPARAM)_T("100%"));
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_ADDSTRING, 0, (LPARAM)_T(" 90%"));
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_ADDSTRING, 0, (LPARAM)_T(" 80%"));
|
||||
SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_SETCURSEL, 0, 0);
|
||||
}
|
||||
|
||||
static void misc_setlang (int v)
|
||||
{
|
||||
int i;
|
||||
@ -7767,6 +7818,12 @@ static void misc_setlang (int v)
|
||||
exit_gui(0);
|
||||
}
|
||||
|
||||
static void misc_gui_font (HWND hDlg, int fonttype)
|
||||
{
|
||||
if (scaleresource_choosefont (hDlg, fonttype))
|
||||
gui_size_changed = 1;
|
||||
}
|
||||
|
||||
static void values_to_miscdlg (HWND hDlg)
|
||||
{
|
||||
TCHAR tmp[MAX_DPATH];
|
||||
@ -7777,6 +7834,7 @@ static void values_to_miscdlg (HWND hDlg)
|
||||
misc_kbled (hDlg, IDC_KBLED2, workprefs.keyboard_leds[1]);
|
||||
misc_kbled (hDlg, IDC_KBLED3, workprefs.keyboard_leds[2]);
|
||||
CheckDlgButton (hDlg, IDC_KBLED_USB, workprefs.win32_kbledmode);
|
||||
CheckDlgButton (hDlg, IDC_GUI_RESIZE, gui_resize);
|
||||
|
||||
misc_scsi (hDlg);
|
||||
misc_lang (hDlg);
|
||||
@ -7936,7 +7994,7 @@ static INT_PTR MiscDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
if (HIWORD (wParam) == CBN_SELENDOK) {
|
||||
v = SendDlgItemMessage (hDlg, IDC_LANGUAGE, CB_GETCURSEL, 0, 0L);
|
||||
if (v != CB_ERR)
|
||||
misc_setlang(v);
|
||||
misc_setlang (v);
|
||||
}
|
||||
break;
|
||||
case IDC_DXMODE:
|
||||
@ -7979,6 +8037,32 @@ static INT_PTR MiscDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
|
||||
switch(wParam)
|
||||
{
|
||||
case IDC_GUI_DEFAULT:
|
||||
scaleresource_setdefaults ();
|
||||
v = SendDlgItemMessage (hDlg, IDC_GUI_SIZE, CB_GETCURSEL, 0, 0L);
|
||||
if (v != CB_ERR) {
|
||||
if (v == 0) {
|
||||
v = GUI_SCALE_DEFAULT;
|
||||
} else {
|
||||
v--;
|
||||
v = 110 - v * 10;
|
||||
}
|
||||
gui_width = GUI_INTERNAL_WIDTH * v / 100;
|
||||
gui_height = GUI_INTERNAL_HEIGHT * v / 100;
|
||||
scaleresource_setmult (guiDlg, gui_width, gui_height);
|
||||
gui_size_changed = 1;
|
||||
}
|
||||
break;
|
||||
case IDC_GUI_FONT:
|
||||
misc_gui_font (hDlg, 0);
|
||||
break;
|
||||
case IDC_GUI_LISTFONT:
|
||||
misc_gui_font (hDlg, 1);
|
||||
break;
|
||||
case IDC_GUI_RESIZE:
|
||||
gui_resize = ischecked (hDlg, IDC_GUI_RESIZE);
|
||||
gui_size_changed = 2;
|
||||
break;
|
||||
case IDC_ASSOCIATE_ON:
|
||||
for (i = 0; exts[i].ext; i++)
|
||||
exts[i].enabled = 1;
|
||||
@ -9727,16 +9811,21 @@ static void harddiskdlg_volume_notify (HWND hDlg, NM_LISTVIEW *nmlistview)
|
||||
}
|
||||
}
|
||||
|
||||
static void hilitehd (void)
|
||||
static void hilitehd (HWND hDlg)
|
||||
{
|
||||
int total = ListView_GetItemCount (cachedlist);
|
||||
if (total <= 0)
|
||||
if (total <= 0) {
|
||||
ew (hDlg, IDC_EDIT, FALSE);
|
||||
ew (hDlg, IDC_REMOVE, FALSE);
|
||||
return;
|
||||
}
|
||||
if (clicked_entry < 0)
|
||||
clicked_entry = 0;
|
||||
if (clicked_entry >= total)
|
||||
clicked_entry = total;
|
||||
ListView_SetItemState (cachedlist, clicked_entry, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED);
|
||||
ew (hDlg, IDC_EDIT, TRUE);
|
||||
ew (hDlg, IDC_REMOVE, TRUE);
|
||||
}
|
||||
|
||||
static INT_PTR CALLBACK HarddiskDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
@ -9760,7 +9849,7 @@ static INT_PTR CALLBACK HarddiskDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPA
|
||||
addfloppyhistory_2 (hDlg, 0, IDC_CD_TEXT, HISTORY_CD);
|
||||
addcdtype (hDlg, IDC_CD_TYPE);
|
||||
InitializeListView (hDlg);
|
||||
hilitehd ();
|
||||
hilitehd (hDlg);
|
||||
break;
|
||||
|
||||
case WM_MOUSEMOVE:
|
||||
@ -9774,7 +9863,7 @@ static INT_PTR CALLBACK HarddiskDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPA
|
||||
move_filesys_unitconfig (&workprefs, draggeditems[0], item);
|
||||
InitializeListView (hDlg);
|
||||
clicked_entry = item;
|
||||
hilitehd ();
|
||||
hilitehd (hDlg);
|
||||
}
|
||||
xfree (draggeditems);
|
||||
break;
|
||||
@ -9824,16 +9913,16 @@ static INT_PTR CALLBACK HarddiskDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPA
|
||||
{
|
||||
case 10001:
|
||||
clicked_entry--;
|
||||
hilitehd ();
|
||||
hilitehd (hDlg);
|
||||
break;
|
||||
case 10002:
|
||||
clicked_entry++;
|
||||
hilitehd ();
|
||||
hilitehd (hDlg);
|
||||
break;
|
||||
default:
|
||||
if (harddiskdlg_button (hDlg, wParam)) {
|
||||
InitializeListView (hDlg);
|
||||
hilitehd ();
|
||||
hilitehd (hDlg);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -11696,6 +11785,7 @@ static void init_inputdlg_2 (HWND hDlg)
|
||||
WIN32GUI_LoadUIString (IDS_INPUT_CUSTOMEVENT, tmp1, MAX_DPATH);
|
||||
SendDlgItemMessage (hDlg, IDC_INPUTAMIGA, CB_ADDSTRING, 0, (LPARAM)tmp1);
|
||||
index = 0; af = 0; port = 0;
|
||||
input_selected_event = -1;
|
||||
if (input_selected_widget >= 0) {
|
||||
inputdevice_get_mapping (input_selected_device, input_selected_widget, NULL, &port, name1, custom1, input_selected_sub_num);
|
||||
cnt = 2;
|
||||
@ -11714,6 +11804,7 @@ static void init_inputdlg_2 (HWND hDlg)
|
||||
if (index >= 0) {
|
||||
SendDlgItemMessage (hDlg, IDC_INPUTAMIGA, CB_SETCURSEL, index, 0);
|
||||
SendDlgItemMessage (hDlg, IDC_INPUTAMIGACNT, CB_SETCURSEL, input_selected_sub_num, 0);
|
||||
input_selected_event = index;
|
||||
}
|
||||
}
|
||||
if (input_selected_widget < 0 || workprefs.input_selected_setting == GAMEPORT_INPUT_SETTINGS || port > 0) {
|
||||
@ -11811,6 +11902,7 @@ static void doinputcustom (HWND hDlg, int newcustom)
|
||||
&flags, NULL, NULL, custom1, input_selected_sub_num);
|
||||
if (_tcslen (custom1) > 0 || newcustom) {
|
||||
if (askinputcustom (hDlg, custom1, sizeof custom1 / sizeof (TCHAR), IDS_SB_CUSTOMEVENT)) {
|
||||
if (custom1[0])
|
||||
inputdevice_set_mapping (input_selected_device, input_selected_widget,
|
||||
NULL, custom1, flags, -1, input_selected_sub_num);
|
||||
}
|
||||
@ -11842,6 +11934,7 @@ static void values_from_inputdlg (HWND hDlg, int inputchange)
|
||||
{
|
||||
int doselect = 0;
|
||||
LRESULT item;
|
||||
bool iscustom = false;
|
||||
|
||||
item = SendDlgItemMessage (hDlg, IDC_INPUTAMIGACNT, CB_GETCURSEL, 0, 0L);
|
||||
if (item != CB_ERR && input_selected_sub_num != item) {
|
||||
@ -11853,7 +11946,7 @@ static void values_from_inputdlg (HWND hDlg, int inputchange)
|
||||
}
|
||||
|
||||
item = SendDlgItemMessage (hDlg, IDC_INPUTTYPE, CB_GETCURSEL, 0, 0L);
|
||||
if(item != CB_ERR) {
|
||||
if (item != CB_ERR) {
|
||||
if (item != workprefs.input_selected_setting) {
|
||||
workprefs.input_selected_setting = (int)item;
|
||||
input_selected_widget = -1;
|
||||
@ -11864,7 +11957,7 @@ static void values_from_inputdlg (HWND hDlg, int inputchange)
|
||||
}
|
||||
}
|
||||
item = SendDlgItemMessage (hDlg, IDC_INPUTDEVICE, CB_GETCURSEL, 0, 0L);
|
||||
if(item != CB_ERR) {
|
||||
if (item != CB_ERR) {
|
||||
if (item != input_selected_device) {
|
||||
input_selected_device = (int)item;
|
||||
input_selected_widget = -1;
|
||||
@ -11876,22 +11969,26 @@ static void values_from_inputdlg (HWND hDlg, int inputchange)
|
||||
}
|
||||
}
|
||||
item = SendDlgItemMessage (hDlg, IDC_INPUTAMIGA, CB_GETCURSEL, 0, 0L);
|
||||
if(item != CB_ERR) {
|
||||
if (item != CB_ERR) {
|
||||
if (item != input_selected_event) {
|
||||
uae_u64 flags;
|
||||
TCHAR custom[MAX_DPATH];
|
||||
input_selected_event = (int)item;
|
||||
doselect = 1;
|
||||
if (item == 1) {
|
||||
inputdevice_get_mapping (input_selected_device, input_selected_widget,
|
||||
&flags, NULL, 0, custom, input_selected_sub_num);
|
||||
if (item == 1 && custom[0] == 0) {
|
||||
doinputcustom (hDlg, 1);
|
||||
iscustom = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (inputchange && doselect && input_selected_device >= 0 && input_selected_event >= 0) {
|
||||
uae_u64 flags;
|
||||
bool iscustom = false;
|
||||
TCHAR custom[MAX_DPATH];
|
||||
|
||||
if (eventnames[input_selected_event] && !_tcscmp (inputdevice_get_eventinfo (INPUTEVENT_SPC_CUSTOM_EVENT)->name, eventnames[input_selected_event])) {
|
||||
if (!iscustom && eventnames[input_selected_event] && !_tcscmp (inputdevice_get_eventinfo (INPUTEVENT_SPC_CUSTOM_EVENT)->name, eventnames[input_selected_event])) {
|
||||
doinputcustom (hDlg, 1);
|
||||
iscustom = true;
|
||||
}
|
||||
@ -12414,15 +12511,155 @@ static int genericpopupmenu (HWND hwnd, TCHAR **items, int *flags, int num)
|
||||
return item - 1;
|
||||
}
|
||||
|
||||
static void qualifierlistview (HWND list)
|
||||
{
|
||||
uae_u64 flags;
|
||||
int evt;
|
||||
TCHAR name[256];
|
||||
TCHAR custom[MAX_DPATH];
|
||||
|
||||
evt = inputdevice_get_mapping (input_selected_device, input_selected_widget,
|
||||
&flags, NULL, name, custom, input_selected_sub_num);
|
||||
|
||||
ListView_DeleteAllItems (list);
|
||||
|
||||
for (int i = 0; i < MAX_INPUT_QUALIFIERS; i++) {
|
||||
TCHAR tmp[MAX_DPATH];
|
||||
getqualifiername (tmp, IDEV_MAPPED_QUALIFIER1 << (i * 2));
|
||||
|
||||
LV_ITEM lvi = { 0 };
|
||||
lvi.mask = LVIF_TEXT | LVIF_PARAM;
|
||||
lvi.pszText = tmp;
|
||||
lvi.lParam = 0;
|
||||
lvi.iItem = i;
|
||||
lvi.iSubItem = 0;
|
||||
ListView_InsertItem (list, &lvi);
|
||||
|
||||
_tcscpy (tmp, _T("-"));
|
||||
if (flags & (IDEV_MAPPED_QUALIFIER1 << (i * 2)))
|
||||
_tcscpy (tmp, _T("*"));
|
||||
else if (flags & (IDEV_MAPPED_QUALIFIER1 << (i * 2 + 1)))
|
||||
_tcscpy (tmp, _T("R"));
|
||||
|
||||
ListView_SetItemText (list, i, 1, tmp);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static INT_PTR CALLBACK QualifierProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
static int recursive = 0;
|
||||
HWND list = GetDlgItem (hDlg, IDC_LISTDIALOG_LIST);
|
||||
|
||||
|
||||
switch (msg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
recursive++;
|
||||
|
||||
int lvflags = LVS_EX_DOUBLEBUFFER | LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT | LVS_EX_FULLROWSELECT;
|
||||
ListView_SetExtendedListViewStyleEx (list, lvflags , lvflags);
|
||||
|
||||
LV_COLUMN lvc = { 0 };
|
||||
|
||||
lvc.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
|
||||
lvc.iSubItem = 0;
|
||||
lvc.fmt = LVCFMT_LEFT;
|
||||
lvc.pszText = _T("Qualifier");
|
||||
lvc.cx = 150;
|
||||
ListView_InsertColumn (list, 0, &lvc);
|
||||
lvc.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
|
||||
lvc.iSubItem = 1;
|
||||
lvc.fmt = LVCFMT_LEFT;
|
||||
lvc.pszText = _T("Selection");
|
||||
lvc.cx = 150;
|
||||
ListView_InsertColumn (list, 1, &lvc);
|
||||
|
||||
|
||||
qualifierlistview (list);
|
||||
|
||||
recursive--;
|
||||
}
|
||||
return TRUE;
|
||||
|
||||
case WM_NOTIFY:
|
||||
if (((LPNMHDR) lParam)->idFrom == IDC_LISTDIALOG_LIST)
|
||||
{
|
||||
uae_u64 flags;
|
||||
int evt;
|
||||
TCHAR name[256];
|
||||
TCHAR custom[MAX_DPATH];
|
||||
int column, entry;
|
||||
NM_LISTVIEW *nmlistview = (NM_LISTVIEW *) lParam;
|
||||
list = nmlistview->hdr.hwndFrom;
|
||||
switch (nmlistview->hdr.code)
|
||||
{
|
||||
case NM_RCLICK:
|
||||
case NM_CLICK:
|
||||
entry = listview_entry_from_click (list, &column);
|
||||
if (entry >= 0) {
|
||||
uae_u64 mask = IDEV_MAPPED_QUALIFIER1 << (entry * 2);
|
||||
evt = inputdevice_get_mapping (input_selected_device, input_selected_widget,
|
||||
&flags, NULL, name, custom, input_selected_sub_num);
|
||||
if (evt <= 0)
|
||||
name[0] = 0;
|
||||
if (flags & mask) {
|
||||
flags &= ~(mask | (mask << 1));
|
||||
flags |= mask << 1;
|
||||
} else if (flags & (mask << 1)) {
|
||||
flags &= ~(mask | (mask << 1));
|
||||
} else {
|
||||
flags &= ~(mask | (mask << 1));
|
||||
flags |= mask;
|
||||
}
|
||||
inputdevice_set_mapping (input_selected_device, input_selected_widget,
|
||||
name, custom, flags, -1, input_selected_sub_num);
|
||||
qualifierlistview (list);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case WM_COMMAND:
|
||||
if (recursive)
|
||||
break;
|
||||
recursive++;
|
||||
|
||||
switch(wParam)
|
||||
{
|
||||
case IDC_LISTDIALOG_CLEAR:
|
||||
{
|
||||
uae_u64 flags;
|
||||
int evt;
|
||||
TCHAR name[256];
|
||||
TCHAR custom[MAX_DPATH];
|
||||
evt = inputdevice_get_mapping (input_selected_device, input_selected_widget,
|
||||
&flags, NULL, name, custom, input_selected_sub_num);
|
||||
flags &= ~IDEV_MAPPED_QUALIFIER_MASK;
|
||||
inputdevice_set_mapping (input_selected_device, input_selected_widget,
|
||||
name, custom, flags, -1, input_selected_sub_num);
|
||||
qualifierlistview (list);
|
||||
break;
|
||||
}
|
||||
case IDOK:
|
||||
EndDialog (hDlg, 1);
|
||||
break;
|
||||
case IDCANCEL:
|
||||
EndDialog (hDlg, 0);
|
||||
break;
|
||||
}
|
||||
recursive--;
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void input_qualifiers (HWND hDlg)
|
||||
{
|
||||
uae_u64 flags;
|
||||
int evt, item;
|
||||
int evt;
|
||||
TCHAR name[256];
|
||||
TCHAR custom[MAX_DPATH];
|
||||
TCHAR *names[MAX_INPUT_QUALIFIERS * 2];
|
||||
int mflags[MAX_INPUT_QUALIFIERS * 2];
|
||||
TCHAR tmp[MAX_DPATH];
|
||||
|
||||
if (input_selected_device < 0 || input_selected_widget < 0)
|
||||
return;
|
||||
@ -12431,23 +12668,15 @@ static void input_qualifiers (HWND hDlg)
|
||||
if (evt <= 0)
|
||||
name[0] = 0;
|
||||
|
||||
for (int i = 0; i < MAX_INPUT_QUALIFIERS * 2; i++) {
|
||||
getqualifiername (tmp, IDEV_MAPPED_QUALIFIER1 << i);
|
||||
mflags[i] = 0;
|
||||
if (flags & (IDEV_MAPPED_QUALIFIER1 << i))
|
||||
mflags[i] = 1;
|
||||
names[i] = my_strdup (tmp);
|
||||
}
|
||||
item = genericpopupmenu (hDlg, names, mflags, MAX_INPUT_QUALIFIERS * 2);
|
||||
CustomDialogBox (IDD_LIST, hDlg, QualifierProc);
|
||||
#if 0
|
||||
int item = genericpopupmenu (hDlg, names, mflags, MAX_INPUT_QUALIFIERS * 2);
|
||||
if (item >= 0)
|
||||
flags ^= IDEV_MAPPED_QUALIFIER1 << item;
|
||||
|
||||
inputdevice_set_mapping (input_selected_device, input_selected_widget,
|
||||
name, custom, flags, -1, input_selected_sub_num);
|
||||
|
||||
for (int i = 0; i < MAX_INPUT_QUALIFIERS * 2; i++) {
|
||||
xfree (names[i]);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
static void input_toggletoggle (void)
|
||||
{
|
||||
@ -12663,6 +12892,7 @@ static void enable_for_hw3ddlg (HWND hDlg)
|
||||
ew (hDlg, IDC_FILTERKEEPASPECT, v);
|
||||
ew (hDlg, IDC_FILTERASPECT, v);
|
||||
ew (hDlg, IDC_FILTERASPECT2, v && workprefs.gfx_filter_keep_aspect);
|
||||
ew (hDlg, IDC_FILTERKEEPAUTOSCALEASPECT, (workprefs.gfx_filter_autoscale == AUTOSCALE_NORMAL || workprefs.gfx_filter_autoscale == AUTOSCALE_INTEGER_AUTOSCALE));
|
||||
ew (hDlg, IDC_FILTEROVERLAY, workprefs.gfx_api);
|
||||
ew (hDlg, IDC_FILTEROVERLAYTYPE, workprefs.gfx_api);
|
||||
|
||||
@ -12805,6 +13035,7 @@ static void values_to_hw3ddlg (HWND hDlg)
|
||||
(workprefs.gfx_filter_aspect == 16 * 256 + 10) ? 6 : 0, 0);
|
||||
|
||||
CheckDlgButton (hDlg, IDC_FILTERKEEPASPECT, workprefs.gfx_filter_keep_aspect);
|
||||
CheckDlgButton (hDlg, IDC_FILTERKEEPAUTOSCALEASPECT, workprefs.gfx_filter_keep_autoscale_aspect != 0);
|
||||
|
||||
SendDlgItemMessage (hDlg, IDC_FILTERASPECT2, CB_SETCURSEL,
|
||||
workprefs.gfx_filter_keep_aspect, 0);
|
||||
@ -13293,6 +13524,14 @@ static INT_PTR CALLBACK hw3dDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM
|
||||
updatedisplayarea ();
|
||||
WIN32GFX_WindowMove ();
|
||||
}
|
||||
case IDC_FILTERKEEPAUTOSCALEASPECT:
|
||||
{
|
||||
workprefs.gfx_filter_keep_autoscale_aspect = currprefs.gfx_filter_keep_autoscale_aspect = ischecked (hDlg, IDC_FILTERKEEPAUTOSCALEASPECT) ? 10 : 0;
|
||||
enable_for_hw3ddlg (hDlg);
|
||||
values_to_hw3ddlg (hDlg);
|
||||
updatedisplayarea ();
|
||||
WIN32GFX_WindowMove ();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (HIWORD (wParam) == CBN_SELCHANGE || HIWORD (wParam) == CBN_KILLFOCUS) {
|
||||
@ -13981,20 +14220,30 @@ static BOOL CALLBACK childenumproc (HWND hwnd, LPARAM lParam)
|
||||
return 1;
|
||||
}
|
||||
|
||||
#define PANEL_X 174
|
||||
#define PANEL_Y 12
|
||||
#define PANEL_WIDTH 456
|
||||
#define PANEL_HEIGHT 396
|
||||
static void getguisize (HWND hDlg, int *width, int *height)
|
||||
{
|
||||
RECT r;
|
||||
|
||||
GetClientRect (hDlg, &r);
|
||||
*width = r.right;
|
||||
*height = r.bottom;
|
||||
}
|
||||
|
||||
static HWND updatePanel (int id)
|
||||
{
|
||||
HWND hDlg = guiDlg;
|
||||
static HWND hwndTT;
|
||||
static bool first = true;
|
||||
RECT r1c, r1w, r2c, r2w, r3c, r3w;
|
||||
int w, h, pw, ph, x , y, i;
|
||||
int w, h, x , y, i, pw, ph;
|
||||
int fullpanel;
|
||||
struct newresource *tres;
|
||||
|
||||
if (first) {
|
||||
first = false;
|
||||
getguisize (hDlg, &gui_width, &gui_height);
|
||||
}
|
||||
|
||||
if (cachedlist) {
|
||||
if (lv_old_type >= 0)
|
||||
lv_oldidx[lv_old_type] = ListView_GetTopIndex (cachedlist);
|
||||
@ -14041,16 +14290,19 @@ static HWND updatePanel (int id)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
fullpanel = ppage[id].fullpanel;
|
||||
GetWindowRect (GetDlgItem (hDlg, IDC_PANEL_FRAME), &r1w);
|
||||
GetClientRect (GetDlgItem (hDlg, IDC_PANEL_FRAME), &r1c);
|
||||
GetWindowRect (hDlg, &r2w);
|
||||
GetClientRect (hDlg, &r2c);
|
||||
gui_width = r2c.right;
|
||||
gui_height = r2c.bottom;
|
||||
tres = scaleresource (ppage[id].nres, hDlg);
|
||||
|
||||
fullpanel = ppage[id].fullpanel;
|
||||
tres = scaleresource (ppage[id].nres, hDlg, -1);
|
||||
panelDlg = CreateDialogIndirectParam (tres->inst, tres->resource, hDlg, ppage[id].dlgproc, id);
|
||||
freescaleresource(tres);
|
||||
scaleresource_setfont (panelDlg);
|
||||
|
||||
GetWindowRect (hDlg, &r3w);
|
||||
GetClientRect (panelDlg, &r3c);
|
||||
x = r1w.left - r2w.left;
|
||||
@ -14069,6 +14321,7 @@ static HWND updatePanel (int id)
|
||||
SetWindowPos (panelDlg, HWND_TOP, x + (pw - w) / 2, y + (ph - h) / 2, 0, 0,
|
||||
SWP_NOSIZE | SWP_NOOWNERZORDER);
|
||||
}
|
||||
|
||||
ShowWindow (GetDlgItem (hDlg, IDC_PANEL_FRAME), SW_HIDE);
|
||||
ShowWindow (GetDlgItem (hDlg, IDC_PANEL_FRAME_OUTER), !fullpanel ? SW_SHOW : SW_HIDE);
|
||||
ShowWindow (GetDlgItem (hDlg, IDC_PANELTREE), !fullpanel ? SW_SHOW : SW_HIDE);
|
||||
@ -14216,7 +14469,7 @@ static bool dodialogmousemove (void)
|
||||
{
|
||||
if (full_property_sheet || isfullscreen () <= 0)
|
||||
return false;
|
||||
if (currprefs.gfx_size_fs.width >= 640 && currprefs.gfx_size.height >= 480)
|
||||
if (currprefs.gfx_size_fs.width >= gui_width && currprefs.gfx_size.height >= gui_height)
|
||||
return false;
|
||||
struct MultiDisplay *mdc = getdisplay (&currprefs);
|
||||
for (int i = 0; Displays[i].monitorid; i++) {
|
||||
@ -14253,7 +14506,7 @@ static void centerWindow (HWND hDlg)
|
||||
SetForegroundWindow (hDlg);
|
||||
pt1.x = x + 100;
|
||||
pt1.y = y + (GetSystemMetrics (SM_CYMENU) + GetSystemMetrics (SM_CYBORDER)) / 2;
|
||||
pt2.x = x + 640 - 100;
|
||||
pt2.x = x + gui_width - 100;
|
||||
pt2.y = pt1.y;
|
||||
if (MonitorFromPoint (pt1, MONITOR_DEFAULTTONULL) == NULL && MonitorFromPoint (pt2, MONITOR_DEFAULTTONULL) == NULL) {
|
||||
if (isfullscreen () > 0) {
|
||||
@ -14521,9 +14774,40 @@ static INT_PTR CALLBACK DialogProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l
|
||||
{
|
||||
static int recursive = 0;
|
||||
static int waitfornext;
|
||||
static int oldwidth, oldheight;
|
||||
|
||||
switch (msg)
|
||||
{
|
||||
case WM_SIZING:
|
||||
{
|
||||
if (!recursive) {
|
||||
RECT *r = (RECT*)lParam;
|
||||
if (r->right - r->left < MIN_GUI_INTERNAL_WIDTH)
|
||||
r->right = r->left + MIN_GUI_INTERNAL_WIDTH;
|
||||
if (r->bottom - r->top < MIN_GUI_INTERNAL_HEIGHT)
|
||||
r->bottom = r->top + MIN_GUI_INTERNAL_HEIGHT;
|
||||
return FALSE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case WM_ENTERSIZEMOVE:
|
||||
if (!recursive) {
|
||||
getguisize (hDlg, &oldwidth, &oldheight);
|
||||
return FALSE;
|
||||
}
|
||||
break;
|
||||
case WM_EXITSIZEMOVE:
|
||||
if (!recursive) {
|
||||
int w, h;
|
||||
getguisize (hDlg, &w, &h);
|
||||
if (w != oldwidth || h != oldheight) {
|
||||
gui_width = w;
|
||||
gui_height = h;
|
||||
gui_size_changed = 1;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
break;
|
||||
case WM_DEVICECHANGE:
|
||||
{
|
||||
DEV_BROADCAST_HDR *pBHdr = (DEV_BROADCAST_HDR *)lParam;
|
||||
@ -14564,6 +14848,7 @@ static INT_PTR CALLBACK DialogProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l
|
||||
case WM_INITDIALOG:
|
||||
waitfornext = 0;
|
||||
guiDlg = hDlg;
|
||||
scaleresource_setfont (hDlg);
|
||||
SendMessage (hDlg, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon (GetModuleHandle (NULL), MAKEINTRESOURCE(IDI_APPICON)));
|
||||
if (full_property_sheet) {
|
||||
TCHAR tmp[100];
|
||||
@ -14701,7 +14986,7 @@ INT_PTR CustomDialogBox (int templ, HWND hDlg, DLGPROC proc)
|
||||
res = getresource (templ);
|
||||
if (!res)
|
||||
return h;
|
||||
r = scaleresource (res, hDlg);
|
||||
r = scaleresource (res, hDlg, -1);
|
||||
if (r) {
|
||||
h = DialogBoxIndirect (r->inst, r->resource, hDlg, proc);
|
||||
freescaleresource (r);
|
||||
@ -14720,7 +15005,7 @@ HWND CustomCreateDialog (int templ, HWND hDlg, DLGPROC proc)
|
||||
res = getresource (templ);
|
||||
if (!res)
|
||||
return h;
|
||||
r = scaleresource (res, hDlg);
|
||||
r = scaleresource (res, hDlg, -1);
|
||||
if (r) {
|
||||
h = CreateDialogIndirect (r->inst, r->resource, hDlg, proc);
|
||||
freescaleresource (r);
|
||||
@ -14902,74 +15187,127 @@ static int GetSettings (int all_options, HWND hwnd)
|
||||
currentpage = LOADSAVE_ID;
|
||||
}
|
||||
|
||||
if (all_options || !configstore)
|
||||
CreateConfigStore (NULL, FALSE);
|
||||
int fmultx = 0, fmulty = 0;
|
||||
for (;;) {
|
||||
int v = 0;
|
||||
gui_width = GUI_INTERNAL_WIDTH * 90 / 100;
|
||||
gui_height = GUI_INTERNAL_HEIGHT * 90 / 100;
|
||||
regqueryint (NULL, _T("GUIResize"), &v);
|
||||
gui_resize = v != 0;
|
||||
if (full_property_sheet || isfullscreen () == 0) {
|
||||
regqueryint (NULL, _T("GUISizeX"), &gui_width);
|
||||
regqueryint (NULL, _T("GUISizeY"), &gui_height);
|
||||
scaleresource_init (_T(""));
|
||||
} else if (isfullscreen () < 0) {
|
||||
regqueryint (NULL, _T("GUISizeFWX"), &gui_width);
|
||||
regqueryint (NULL, _T("GUISizeFWY"), &gui_height);
|
||||
scaleresource_init (_T("FW"));
|
||||
} else if (isfullscreen () > 0) {
|
||||
regqueryint (NULL, _T("GUISizeFSX"), &gui_width);
|
||||
regqueryint (NULL, _T("GUISizeFSY"), &gui_height);
|
||||
scaleresource_init (_T("FS"));
|
||||
}
|
||||
if (gui_width < MIN_GUI_INTERNAL_WIDTH)
|
||||
gui_width = MIN_GUI_INTERNAL_WIDTH;
|
||||
if (gui_height < MIN_GUI_INTERNAL_HEIGHT)
|
||||
gui_height = MIN_GUI_INTERNAL_HEIGHT;
|
||||
|
||||
dialogreturn = -1;
|
||||
hAccelTable = NULL;
|
||||
DragAcceptFiles (hwnd, TRUE);
|
||||
if (first)
|
||||
write_log (_T("Entering GUI idle loop\n"));
|
||||
if (all_options || !configstore)
|
||||
CreateConfigStore (NULL, FALSE);
|
||||
|
||||
scaleresource_setmaxsize (800, 600);
|
||||
tres = scaleresource (panelresource, hwnd);
|
||||
dhwnd = CreateDialogIndirect (tres->inst, tres->resource, hwnd, DialogProc);
|
||||
dialog_rect.top = dialog_rect.left = 0;
|
||||
dialog_rect.right = tres->width;
|
||||
dialog_rect.bottom = tres->height;
|
||||
freescaleresource (tres);
|
||||
psresult = 0;
|
||||
if (dhwnd != NULL) {
|
||||
MSG msg;
|
||||
DWORD v;
|
||||
dialogreturn = -1;
|
||||
hAccelTable = NULL;
|
||||
DragAcceptFiles (hwnd, TRUE);
|
||||
if (first)
|
||||
write_log (_T("Entering GUI idle loop\n"));
|
||||
|
||||
setguititle (dhwnd);
|
||||
ShowWindow (dhwnd, SW_SHOW);
|
||||
MapDialogRect (dhwnd, &dialog_rect);
|
||||
if (fmultx > 0)
|
||||
scaleresource_setmult (hwnd, -fmultx, -fmulty);
|
||||
else
|
||||
scaleresource_setmult (hwnd, gui_width, gui_height);
|
||||
tres = scaleresource (panelresource, hwnd, gui_resize);
|
||||
dhwnd = CreateDialogIndirect (tres->inst, tres->resource, hwnd, DialogProc);
|
||||
dialog_rect.top = dialog_rect.left = 0;
|
||||
dialog_rect.right = tres->width;
|
||||
dialog_rect.bottom = tres->height;
|
||||
freescaleresource (tres);
|
||||
psresult = 0;
|
||||
if (dhwnd != NULL) {
|
||||
MSG msg;
|
||||
DWORD v;
|
||||
|
||||
hGUIWnd = dhwnd;
|
||||
setguititle (dhwnd);
|
||||
ShowWindow (dhwnd, SW_SHOW);
|
||||
MapDialogRect (dhwnd, &dialog_rect);
|
||||
|
||||
for (;;) {
|
||||
HANDLE IPChandle;
|
||||
IPChandle = geteventhandleIPC (globalipc);
|
||||
if (globalipc && IPChandle != INVALID_HANDLE_VALUE) {
|
||||
MsgWaitForMultipleObjects (1, &IPChandle, FALSE, INFINITE, QS_ALLINPUT);
|
||||
while (checkIPC (globalipc, &workprefs));
|
||||
} else {
|
||||
WaitMessage();
|
||||
}
|
||||
dialogmousemove (dhwnd);
|
||||
while ((v = PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))) {
|
||||
hGUIWnd = dhwnd;
|
||||
|
||||
for (;;) {
|
||||
HANDLE IPChandle;
|
||||
IPChandle = geteventhandleIPC (globalipc);
|
||||
if (globalipc && IPChandle != INVALID_HANDLE_VALUE) {
|
||||
MsgWaitForMultipleObjects (1, &IPChandle, FALSE, INFINITE, QS_ALLINPUT);
|
||||
while (checkIPC (globalipc, &workprefs));
|
||||
} else {
|
||||
WaitMessage();
|
||||
}
|
||||
dialogmousemove (dhwnd);
|
||||
while ((v = PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))) {
|
||||
if (dialogreturn >= 0)
|
||||
break;
|
||||
if (v == -1)
|
||||
continue;
|
||||
if (!IsWindow (dhwnd))
|
||||
continue;
|
||||
if (hAccelTable && panelDlg && !rawmode) {
|
||||
if (TranslateAccelerator (panelDlg, hAccelTable, &msg))
|
||||
continue;
|
||||
}
|
||||
if (rawmode) {
|
||||
if (msg.message == WM_INPUT) {
|
||||
handlerawinput (msg.hwnd, msg.message, msg.wParam, msg.lParam);
|
||||
continue;
|
||||
}
|
||||
// eat all accelerators
|
||||
if (msg.message == WM_KEYDOWN || msg.message == WM_MOUSEMOVE || msg.message == WM_MOUSEWHEEL
|
||||
|| msg.message == WM_MOUSEHWHEEL || msg.message == WM_LBUTTONDOWN)
|
||||
continue;
|
||||
}
|
||||
// IsDialogMessage() eats WM_INPUT messages?!?!
|
||||
if (!rawmode && IsDialogMessage (dhwnd, &msg))
|
||||
continue;
|
||||
TranslateMessage (&msg);
|
||||
DispatchMessage (&msg);
|
||||
}
|
||||
if (dialogreturn >= 0)
|
||||
break;
|
||||
if (v == -1)
|
||||
continue;
|
||||
if (!IsWindow (dhwnd))
|
||||
continue;
|
||||
if (hAccelTable && panelDlg && !rawmode) {
|
||||
if (TranslateAccelerator (panelDlg, hAccelTable, &msg))
|
||||
continue;
|
||||
}
|
||||
if (rawmode) {
|
||||
if (msg.message == WM_INPUT) {
|
||||
handlerawinput (msg.hwnd, msg.message, msg.wParam, msg.lParam);
|
||||
continue;
|
||||
if (gui_size_changed > 0 && gui_size_changed < 10) {
|
||||
if (gui_size_changed == 2) {
|
||||
scaleresource_getmult (&fmultx, &fmulty);
|
||||
} else {
|
||||
fmultx = fmulty = 0;
|
||||
}
|
||||
// eat all accelerators
|
||||
if (msg.message == WM_KEYDOWN || msg.message == WM_MOUSEMOVE || msg.message == WM_MOUSEWHEEL
|
||||
|| msg.message == WM_MOUSEHWHEEL || msg.message == WM_LBUTTONDOWN)
|
||||
continue;
|
||||
gui_size_changed = 10;
|
||||
SendMessage (dhwnd, WM_COMMAND, IDCANCEL, 0);
|
||||
}
|
||||
// IsDialogMessage() eats WM_INPUT messages?!?!
|
||||
if (!rawmode && IsDialogMessage (dhwnd, &msg))
|
||||
continue;
|
||||
TranslateMessage (&msg);
|
||||
DispatchMessage (&msg);
|
||||
}
|
||||
if (dialogreturn >= 0)
|
||||
break;
|
||||
psresult = dialogreturn;
|
||||
}
|
||||
psresult = dialogreturn;
|
||||
if (!gui_size_changed)
|
||||
break;
|
||||
if (full_property_sheet || isfullscreen () == 0) {
|
||||
regsetint (NULL, _T("GUISizeX"), gui_width);
|
||||
regsetint (NULL, _T("GUISizeY"), gui_height);
|
||||
} else if (isfullscreen () < 0) {
|
||||
regsetint (NULL, _T("GUISizeFWX"), gui_width);
|
||||
regsetint (NULL, _T("GUISizeFWY"), gui_height);
|
||||
} else if (isfullscreen () > 0) {
|
||||
regsetint (NULL, _T("GUISizeFSX"), gui_width);
|
||||
regsetint (NULL, _T("GUISizeFSY"), gui_height);
|
||||
}
|
||||
regsetint (NULL, _T("GUIResize"), gui_resize ? 1 : 0);
|
||||
gui_size_changed = 0;
|
||||
quit_program = 0;
|
||||
}
|
||||
|
||||
hGUIWnd = NULL;
|
||||
|
||||
@ -27,12 +27,21 @@ struct newresource
|
||||
int width, height;
|
||||
};
|
||||
|
||||
extern struct newresource *scaleresource(struct newresource *res, HWND);
|
||||
extern void freescaleresource(struct newresource*);
|
||||
extern void scaleresource_setmaxsize(int w, int h);
|
||||
#define GUI_INTERNAL_WIDTH 800
|
||||
#define GUI_INTERNAL_HEIGHT 600
|
||||
#define GUI_INTERNAL_FONT 8
|
||||
|
||||
extern struct newresource *scaleresource (struct newresource *res, HWND, int);
|
||||
extern void freescaleresource (struct newresource*);
|
||||
extern void scaleresource_setmult (HWND hDlg, int w, int h);
|
||||
extern void scaleresource_getmult (int *mx, int *my);
|
||||
extern HWND CustomCreateDialog (int templ, HWND hDlg, DLGPROC proc);
|
||||
extern INT_PTR CustomDialogBox (int templ, HWND hDlg, DLGPROC proc);
|
||||
extern struct newresource *getresource(int tmpl);
|
||||
extern struct newresource *resourcefont(struct newresource*, TCHAR *font, int size);
|
||||
extern struct newresource *getresource (int tmpl);
|
||||
extern struct newresource *resourcefont (struct newresource*, TCHAR *font, int size);
|
||||
extern void scaleresource_init (const TCHAR*);
|
||||
extern int scaleresource_choosefont (HWND hDlg, int fonttype);
|
||||
extern void scaleresource_setdefaults (void);
|
||||
extern void scaleresource_setfont (HWND hDlg);
|
||||
|
||||
#endif
|
||||
|
||||
@ -25,7 +25,23 @@
|
||||
#include "win32.h"
|
||||
#include "win32gui.h"
|
||||
|
||||
static int max_w = 800, max_h = 600, mult = 100, pointsize;
|
||||
#define MAX_GUI_FONTS 2
|
||||
#define DEFAULT_FONTSIZE 8
|
||||
|
||||
static double multx, multy;
|
||||
|
||||
static TCHAR fontname_gui[32], fontname_list[32];
|
||||
static int fontsize_gui = DEFAULT_FONTSIZE;
|
||||
static int fontsize_list = DEFAULT_FONTSIZE;
|
||||
static int fontstyle_gui = 0;
|
||||
static int fontstyle_list = 0;
|
||||
static int fontweight_gui = FW_REGULAR;
|
||||
static int fontweight_list = FW_REGULAR;
|
||||
|
||||
static int listviews[16];
|
||||
static int listviewcnt;
|
||||
static HFONT listviewfont;
|
||||
static const TCHAR *fontprefix;
|
||||
|
||||
#include <pshpack2.h>
|
||||
typedef struct {
|
||||
@ -78,6 +94,22 @@ static wchar_t wfont_old[] = _T("MS Sans Serif");
|
||||
static TCHAR font_vista[] = _T("Segoe UI");
|
||||
static TCHAR font_xp[] = _T("Tahoma");
|
||||
|
||||
static int align (double f)
|
||||
{
|
||||
int v = (int)(f + 0.5);
|
||||
return v;
|
||||
}
|
||||
|
||||
static int mmx (int v)
|
||||
{
|
||||
return align ((v * multx) / 100.0 + 0.5);
|
||||
}
|
||||
static int mmy (int v)
|
||||
{
|
||||
return align ((v * multy) / 100.0 + 0.5);
|
||||
}
|
||||
|
||||
|
||||
static BYTE *skiptextone (BYTE *s)
|
||||
{
|
||||
s -= sizeof (WCHAR);
|
||||
@ -110,31 +142,49 @@ static BYTE *todword (BYTE *p)
|
||||
return p;
|
||||
}
|
||||
|
||||
static void modifytemplate (DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, int id, int mult)
|
||||
static void modifytemplate (DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, int id)
|
||||
{
|
||||
|
||||
d->cx = d->cx * mult / 100;
|
||||
d->cy = d->cy * mult / 100;
|
||||
d->cx = mmx (d->cx);
|
||||
d->cy = mmy (d->cy);
|
||||
}
|
||||
|
||||
static void modifytemplatefont (DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2)
|
||||
{
|
||||
wchar_t *p = NULL;
|
||||
|
||||
if (font_vista_ok)
|
||||
p = wfont_vista;
|
||||
else
|
||||
p = wfont_xp;
|
||||
if (p && !wcscmp (d2->typeface, wfont_old))
|
||||
wcscpy (d2->typeface, p);
|
||||
if (!wcscmp (d2->typeface, wfont_old)) {
|
||||
wcscpy (d2->typeface, fontname_gui);
|
||||
d2->pointsize = fontsize_gui;
|
||||
d2->italic = (fontstyle_gui & ITALIC_FONTTYPE) != 0;
|
||||
d2->weight = fontweight_gui;
|
||||
}
|
||||
}
|
||||
|
||||
static void modifyitem (DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, DLGITEMTEMPLATEEX *dt, int id, int mult)
|
||||
static void modifyitem (DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, DLGITEMTEMPLATEEX *dt, int id)
|
||||
{
|
||||
dt->cy = dt->cy * mult / 100;
|
||||
dt->cx = dt->cx * mult / 100;
|
||||
dt->y = dt->y * mult / 100;
|
||||
dt->x = dt->x * mult / 100;
|
||||
bool noyscale = false;
|
||||
|
||||
if (dt->windowClass[0] != 0xffff && (!_tcsicmp (dt->windowClass, WC_LISTVIEWW) || !_tcsicmp (dt->windowClass, WC_TREEVIEWW)))
|
||||
listviews[listviewcnt++] = dt->id;
|
||||
|
||||
if (multy >= 89 && multy <= 111) {
|
||||
int wc = 0;
|
||||
|
||||
if (dt->windowClass[0] == 0xffff)
|
||||
wc = dt->windowClass[1];
|
||||
|
||||
if (wc == 0x0080 && dt->cy <= 20) // button
|
||||
noyscale = true;
|
||||
if (wc == 0x0085) // checkbox
|
||||
noyscale = true;
|
||||
if (wc == 0x0081 && dt->cy <= 20) // edit box
|
||||
noyscale = true;
|
||||
}
|
||||
|
||||
if (!noyscale)
|
||||
dt->cy = mmy (dt->cy);
|
||||
|
||||
dt->cx = mmx (dt->cx);
|
||||
dt->y = mmy (dt->y);
|
||||
dt->x = mmx (dt->x);
|
||||
}
|
||||
|
||||
static INT_PTR CALLBACK DummyProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
@ -153,7 +203,7 @@ static INT_PTR CALLBACK DummyProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lP
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
struct newresource *scaleresource (struct newresource *res, HWND parent)
|
||||
struct newresource *scaleresource (struct newresource *res, HWND parent, int resize)
|
||||
{
|
||||
DLGTEMPLATEEX *d;
|
||||
DLGTEMPLATEEX_END *d2;
|
||||
@ -162,6 +212,8 @@ struct newresource *scaleresource (struct newresource *res, HWND parent)
|
||||
int i;
|
||||
struct newresource *ns;
|
||||
|
||||
listviewcnt = 0;
|
||||
|
||||
d = (DLGTEMPLATEEX*)res->resource;
|
||||
d2 = (DLGTEMPLATEEX_END*)res->resource;
|
||||
|
||||
@ -174,10 +226,19 @@ struct newresource *scaleresource (struct newresource *res, HWND parent)
|
||||
ns->inst = res->inst;
|
||||
ns->size = res->size;
|
||||
ns->tmpl = res->tmpl;
|
||||
ns->resource = (LPCDLGTEMPLATEW)xmalloc (uae_u8, ns->size);
|
||||
ns->resource = (LPCDLGTEMPLATEW)xmalloc (uae_u8, ns->size + 32);
|
||||
memcpy ((void*)ns->resource, res->resource, ns->size);
|
||||
|
||||
d = (DLGTEMPLATEEX*)ns->resource;
|
||||
|
||||
if (resize > 0) {
|
||||
d->style &= ~DS_MODALFRAME;
|
||||
d->style |= WS_THICKFRAME;
|
||||
} else if (resize == 0) {
|
||||
d->style |= DS_MODALFRAME;
|
||||
d->style &= ~WS_THICKFRAME;
|
||||
}
|
||||
|
||||
d2 = (DLGTEMPLATEEX_END*)ns->resource;
|
||||
p = (BYTE*)d + sizeof (DLGTEMPLATEEX);
|
||||
p = skiptext (p);
|
||||
@ -198,11 +259,11 @@ struct newresource *scaleresource (struct newresource *res, HWND parent)
|
||||
if (p != p2)
|
||||
memmove (p, p2, ns->size - (p2 - (BYTE*)ns->resource));
|
||||
|
||||
modifytemplate(d, d2, ns->tmpl, mult);
|
||||
modifytemplate(d, d2, ns->tmpl);
|
||||
|
||||
for (i = 0; i < d->cDlgItems; i++) {
|
||||
dt = (DLGITEMTEMPLATEEX*)p;
|
||||
modifyitem (d, d2, dt, ns->tmpl, mult);
|
||||
modifyitem (d, d2, dt, ns->tmpl);
|
||||
p += sizeof (DLGITEMTEMPLATEEX);
|
||||
p = skiptextone (p);
|
||||
p = skiptext (p);
|
||||
@ -222,11 +283,241 @@ void freescaleresource (struct newresource *ns)
|
||||
xfree (ns);
|
||||
}
|
||||
|
||||
void scaleresource_setmaxsize (int w, int h)
|
||||
static void openfont (bool force)
|
||||
{
|
||||
HDC hdc;
|
||||
int size;
|
||||
|
||||
if (listviewfont && !force)
|
||||
return;
|
||||
if (listviewfont)
|
||||
DeleteObject (listviewfont);
|
||||
|
||||
hdc = GetDC (NULL);
|
||||
|
||||
size = -MulDiv (fontsize_list, GetDeviceCaps (hdc, LOGPIXELSY), 72);
|
||||
listviewfont = CreateFont (size, 0, 0, 0, fontweight_list, (fontstyle_list & ITALIC_FONTTYPE) != 0, 0, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, fontname_list);
|
||||
|
||||
ReleaseDC (NULL, hdc);
|
||||
}
|
||||
|
||||
void scaleresource_setfont (HWND hDlg)
|
||||
{
|
||||
if (!listviewcnt || (!_tcscmp (fontname_gui, fontname_list) && fontsize_gui == fontsize_list && fontstyle_gui == fontstyle_list && fontweight_gui == fontweight_list))
|
||||
return;
|
||||
openfont (false);
|
||||
if (!listviewfont)
|
||||
return;
|
||||
for (int i = 0; i < listviewcnt; i++) {
|
||||
SendMessage (GetDlgItem (hDlg, listviews[i]), WM_SETFONT, WPARAM(listviewfont), FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
static void setdeffont (void)
|
||||
{
|
||||
_tcscpy (fontname_gui, font_vista_ok ? wfont_vista : wfont_xp);
|
||||
fontsize_gui = DEFAULT_FONTSIZE;
|
||||
fontstyle_gui = 0;
|
||||
fontweight_gui = FW_REGULAR;
|
||||
_tcscpy (fontname_list, font_vista_ok ? wfont_vista : wfont_xp);
|
||||
fontsize_list = DEFAULT_FONTSIZE;
|
||||
fontstyle_list = 0;
|
||||
fontweight_list = FW_REGULAR;
|
||||
}
|
||||
|
||||
static TCHAR *fontreg[2] = { _T("GUIFont"), _T("GUIListFont") };
|
||||
|
||||
static void regsetfont (UAEREG *reg, const TCHAR *prefix, const TCHAR *name, const TCHAR *fontname, int fontsize, int fontstyle, int fontweight)
|
||||
{
|
||||
TCHAR tmp[256], tmp2[256];
|
||||
|
||||
_stprintf (tmp, _T("%s:%d:%d:%d"), fontname, fontsize, fontstyle, fontweight);
|
||||
_stprintf (tmp2, _T("%s%s"), name, prefix);
|
||||
regsetstr (reg, tmp2, tmp);
|
||||
}
|
||||
static void regqueryfont (UAEREG *reg, const TCHAR *prefix, const TCHAR *name, TCHAR *fontname, int *pfontsize, int *pfontstyle, int *pfontweight)
|
||||
{
|
||||
TCHAR tmp2[256], tmp[256], *p1, *p2, *p3, *p4;
|
||||
int size;
|
||||
int fontsize, fontstyle, fontweight;
|
||||
|
||||
_tcscpy (tmp2, name);
|
||||
_tcscat (tmp2, prefix);
|
||||
size = sizeof tmp / sizeof (TCHAR);
|
||||
if (!regquerystr (reg, tmp2, tmp, &size))
|
||||
return;
|
||||
p1 = _tcschr (tmp, ':');
|
||||
if (!p1)
|
||||
return;
|
||||
*p1++ = 0;
|
||||
p2 = _tcschr (p1, ':');
|
||||
if (!p2)
|
||||
return;
|
||||
*p2++ = 0;
|
||||
p3 = _tcschr (p2, ':');
|
||||
if (!p3)
|
||||
return;
|
||||
*p3++ = 0;
|
||||
p4 = _tcschr (p3, ':');
|
||||
if (p4)
|
||||
*p4 = 0;
|
||||
|
||||
_tcscpy (fontname, tmp);
|
||||
fontsize = _tstoi (p1);
|
||||
fontstyle = _tstoi (p2);
|
||||
fontweight = _tstoi (p3);
|
||||
|
||||
if (fontsize == 0)
|
||||
fontsize = 8;
|
||||
if (fontsize < 5)
|
||||
fontsize = 5;
|
||||
if (fontsize > 20)
|
||||
fontsize = 20;
|
||||
*pfontsize = fontsize;
|
||||
|
||||
*pfontstyle = fontstyle;
|
||||
|
||||
*pfontweight = fontweight;
|
||||
}
|
||||
|
||||
void scaleresource_setdefaults (void)
|
||||
{
|
||||
setdeffont ();
|
||||
for (int i = 0; i < MAX_GUI_FONTS; i++) {
|
||||
TCHAR tmp[256];
|
||||
_stprintf (tmp, _T("%s%s"), fontreg[i], fontprefix);
|
||||
regdelete (NULL, tmp);
|
||||
}
|
||||
openfont (true);
|
||||
}
|
||||
|
||||
static int lpx, lpy;
|
||||
|
||||
void scaleresource_init (const TCHAR *prefix)
|
||||
{
|
||||
if (os_vista)
|
||||
font_vista_ok = 1;
|
||||
max_w = w;
|
||||
max_h = h;
|
||||
mult = 100;
|
||||
|
||||
fontprefix = prefix;
|
||||
|
||||
HDC hdc = GetDC (NULL);
|
||||
lpx = GetDeviceCaps (hdc, LOGPIXELSX);
|
||||
lpy = GetDeviceCaps (hdc, LOGPIXELSY);
|
||||
ReleaseDC (NULL, hdc);
|
||||
|
||||
setdeffont ();
|
||||
|
||||
regqueryfont (NULL, fontprefix, fontreg[0], fontname_gui, &fontsize_gui, &fontstyle_gui, &fontweight_gui);
|
||||
regqueryfont (NULL, fontprefix, fontreg[1], fontname_list, &fontsize_list, &fontstyle_list, &fontweight_list);
|
||||
|
||||
openfont (true);
|
||||
}
|
||||
|
||||
static void sizefont (HWND hDlg, const TCHAR *name, int size, int style, int weight, int *width, int *height)
|
||||
{
|
||||
/* ARGH!!! */
|
||||
|
||||
HDC hdc = GetDC (hDlg);
|
||||
size = -MulDiv (size, lpy, 72);
|
||||
HFONT font = CreateFont (size, 0, 0, 0, weight,
|
||||
(style & ITALIC_FONTTYPE) != 0, 0, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, name);
|
||||
HFONT hFontOld = (HFONT)SelectObject (hdc, font);
|
||||
TEXTMETRIC tm;
|
||||
SIZE fsize;
|
||||
GetTextMetrics (hdc, &tm);
|
||||
GetTextExtentPoint32 (hdc, _T("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"), 52, &fsize);
|
||||
*width = (fsize.cx / 26 + 1) / 2;
|
||||
*height = MulDiv (tm.tmHeight, 72, lpy);
|
||||
SelectObject (hdc, hFontOld);
|
||||
DeleteObject (font);
|
||||
ReleaseDC (hDlg, hdc);
|
||||
}
|
||||
|
||||
void scaleresource_setmult (HWND hDlg, int w, int h)
|
||||
{
|
||||
int width, height, width2, height2;
|
||||
|
||||
if (w < 0) {
|
||||
multx = -w;
|
||||
multy = -h;
|
||||
return;
|
||||
}
|
||||
|
||||
sizefont (hDlg, fontname_gui, fontsize_gui, fontstyle_gui, fontweight_gui, &width, &height);
|
||||
sizefont (hDlg, wfont_old, 8, REGULAR_FONTTYPE, FW_REGULAR, &width2, &height2);
|
||||
|
||||
h += GetSystemMetrics (SM_CYBORDER) * 2 + GetSystemMetrics (SM_CYCAPTION);
|
||||
w += GetSystemMetrics (SM_CXSIZEFRAME) * 2;
|
||||
|
||||
multx = (w * width2) * 100.0 / (GUI_INTERNAL_WIDTH * width);
|
||||
multy = (h * height2) * 100.0 / (GUI_INTERNAL_HEIGHT * height);
|
||||
|
||||
multx = MulDiv (multx, 96, lpx);
|
||||
multy = MulDiv (multy, 96, lpy);
|
||||
}
|
||||
|
||||
void scaleresource_getmult (int *mx, int *my)
|
||||
{
|
||||
if (mx)
|
||||
*mx = (int)(multx + 0.5);
|
||||
if (my)
|
||||
*my = (int)(multy + 0.5);
|
||||
}
|
||||
|
||||
|
||||
int scaleresource_choosefont (HWND hDlg, int fonttype)
|
||||
{
|
||||
CHOOSEFONT cf = { 0 };
|
||||
LOGFONT lf = { 0 };
|
||||
HDC hdc;
|
||||
TCHAR *fontname[2];
|
||||
int *fontsize[2], *fontstyle[2], *fontweight[2];
|
||||
int lm;
|
||||
|
||||
fontname[0] = fontname_gui;
|
||||
fontname[1] = fontname_list;
|
||||
fontsize[0] = &fontsize_gui;
|
||||
fontsize[1] = &fontsize_list;
|
||||
fontstyle[0] = &fontstyle_gui;
|
||||
fontstyle[1] = &fontstyle_list;
|
||||
fontweight[0] = &fontweight_gui;
|
||||
fontweight[1] = &fontweight_list;
|
||||
|
||||
cf.lStructSize = sizeof cf;
|
||||
cf.hwndOwner = hDlg;
|
||||
cf.Flags = CF_FORCEFONTEXIST | CF_INITTOLOGFONTSTRUCT | CF_NOSCRIPTSEL | CF_SCREENFONTS;
|
||||
cf.lpLogFont = &lf;
|
||||
cf.nFontType = REGULAR_FONTTYPE;
|
||||
cf.iPointSize = *fontsize[fonttype];
|
||||
|
||||
hdc = GetDC (NULL);
|
||||
lm = GetDeviceCaps (hdc, LOGPIXELSY);
|
||||
|
||||
_tcscpy (lf.lfFaceName, fontname[fonttype]);
|
||||
lf.lfHeight = -MulDiv (*fontsize[fonttype], lm, 72);
|
||||
lf.lfWeight = *fontweight[fonttype];
|
||||
lf.lfItalic = (*fontstyle[fonttype] & ITALIC_FONTTYPE) != 0;
|
||||
|
||||
if (!ChooseFont (&cf)) {
|
||||
ReleaseDC (NULL, hdc);
|
||||
return 0;
|
||||
}
|
||||
|
||||
_tcscpy (fontname[fonttype], lf.lfFaceName);
|
||||
*fontsize[fonttype] = lf.lfHeight;
|
||||
*fontsize[fonttype] = -MulDiv (*fontsize[fonttype], 72, GetDeviceCaps (hdc, LOGPIXELSY));
|
||||
|
||||
*fontstyle[fonttype] = lf.lfItalic ? ITALIC_FONTTYPE : 0;
|
||||
|
||||
*fontweight[fonttype] = lf.lfWeight;
|
||||
|
||||
ReleaseDC (NULL, hdc);
|
||||
|
||||
regsetfont (NULL, fontprefix, fontreg[fonttype], fontname[fonttype], *fontsize[fonttype], *fontstyle[fonttype], *fontweight[fonttype]);
|
||||
|
||||
openfont (true);
|
||||
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@ -113,7 +113,6 @@ Global
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Release|x64.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
|
||||
1
od-win32/winuae_msvc11/winuae.idc
Normal file
1
od-win32/winuae_msvc11/winuae.idc
Normal file
@ -0,0 +1 @@
|
||||
<Configurations active="Default"><Configuration name="Default"><GuestCommandRemote val="project command through a shared folder"></GuestCommandRemote><ShareFoldersRemote val=""></ShareFoldersRemote><RemoteDebugMonitor val="C:\msvs\Common7\IDE\Remote Debugger\x86\msvsmon.exe"></RemoteDebugMonitor><MonitorName val="VMDebug"></MonitorName><RemoteVM val=""></RemoteVM><StartMode val="No"></StartMode><TerminationModeRemote val="No operation"></TerminationModeRemote><CopyFilesRemote val=""></CopyFilesRemote><PreRemoteCommandLine val=""></PreRemoteCommandLine><PostRemoteCommandLine val=""></PostRemoteCommandLine><RecordingToReplay val=""></RecordingToReplay><ReplayVM val=""></ReplayVM><BaseSnapshotForRecording val=""></BaseSnapshotForRecording><CopyFilesRecord val=""></CopyFilesRecord><PreRecordCommandLine val=""></PreRecordCommandLine><PostRecordCommandLine val=""></PostRecordCommandLine><TerminationModeRecord val="No operation"></TerminationModeRecord><InstanceToDebug val=""></InstanceToDebug><GuestCommandReplay val="project command through a shared folder"></GuestCommandReplay><ShareFoldersRecord val=""></ShareFoldersRecord><RemoteReplayFlag val=""></RemoteReplayFlag><RemoteMachine val=""></RemoteMachine><RemoteReplayVM val=""></RemoteReplayVM><RemoteRecordingToReplay val=""></RemoteRecordingToReplay><RemoteReplayPasscode val=""></RemoteReplayPasscode><HostSearchPath val=""></HostSearchPath></Configuration></Configurations>
|
||||
144
od-win32/winuae_msvc11/winuae_msvc.sln
Normal file
144
od-win32/winuae_msvc11/winuae_msvc.sln
Normal file
@ -0,0 +1,144 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winuae", "winuae_msvc.vcxproj", "{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gencpu", "..\gencpu_msvc\gencpu_msvc.vcxproj", "{DEF7ACF7-050E-4069-BB99-5B5D93F60521}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gencomp", "..\gencomp_msvc\gencomp_msvc.vcxproj", "{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genblitter", "..\genblitter_msvc\genblitter_msvc.vcxproj", "{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build68k", "..\build68k_msvc\build68k_msvc.vcxproj", "{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "singlefilehelper", "..\singlefilehelper\singlefilehelper.vcxproj", "{DAF2EB1A-546A-41B3-9755-187562C01E3C}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "resourcedll", "..\resourcedll\resourcedll.vcxproj", "{C85288FB-A035-42CA-B5FB-8E6214319E97}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdrawcmd", "..\fdrawcmd\fdrawcmd.vcxproj", "{960E83B5-9118-4EBD-AF50-18EFC1DC764B}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ipctester", "..\ipctester\ipctester.vcxproj", "{79BDABE6-5308-4D64-8884-A5A35909D8D3}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genlinetoscr", "..\genlinetoscr_msvc\genlinetoscr_msvc.vcxproj", "{E9F73E11-A463-45C6-A733-2BED75852BA1}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "decompress", "..\decompress\decompress.vcxproj", "{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uaeunp", "..\uaeunp\uaeunp.vcxproj", "{6181E50C-5F32-42DC-BEF6-827AA8A5429D}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "consolewrapper", "..\consolewrapper\consolewrapper.vcxproj", "{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "prowizard", "..\prowizard\prowizard.vcxproj", "{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unpackers", "..\unpackers\unpackers.vcxproj", "{98BA115B-829F-4085-9729-ABD0D779A60A}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x64 = Debug|x64
|
||||
FullRelease|Win32 = FullRelease|Win32
|
||||
FullRelease|x64 = FullRelease|x64
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Debug|x64.Build.0 = Debug|x64
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.FullRelease|Win32.Build.0 = FullRelease|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.FullRelease|x64.ActiveCfg = FullRelease|x64
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.FullRelease|x64.Build.0 = FullRelease|x64
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Release|Win32.Build.0 = Release|Win32
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Release|x64.ActiveCfg = Release|x64
|
||||
{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}.Release|x64.Build.0 = Release|x64
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{DEF7ACF7-050E-4069-BB99-5B5D93F60521}.Release|x64.ActiveCfg = Release|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{54197DFF-9CAA-4A9F-B9C2-2881EA04EACB}.Release|x64.ActiveCfg = Release|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{765B0AF0-B8D3-4998-89AF-D6F939E1CD18}.Release|x64.ActiveCfg = Release|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{AF3DBBDE-E006-4DC3-9A26-CB0D7D82AE3C}.Release|x64.ActiveCfg = Release|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{DAF2EB1A-546A-41B3-9755-187562C01E3C}.Release|x64.ActiveCfg = Release|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C85288FB-A035-42CA-B5FB-8E6214319E97}.Release|x64.ActiveCfg = Release|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{960E83B5-9118-4EBD-AF50-18EFC1DC764B}.Release|x64.ActiveCfg = Release|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{79BDABE6-5308-4D64-8884-A5A35909D8D3}.Release|x64.ActiveCfg = Release|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.FullRelease|Win32.ActiveCfg = FullRelease|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.FullRelease|x64.ActiveCfg = FullRelease|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{E9F73E11-A463-45C6-A733-2BED75852BA1}.Release|x64.ActiveCfg = Release|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{38FAC3FB-A2B7-453F-8A6A-73B97201BB04}.Release|x64.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{6181E50C-5F32-42DC-BEF6-827AA8A5429D}.Release|x64.ActiveCfg = Release|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2C44DD04-F5D6-4CC3-B0D6-1F4E51A0D962}.Release|x64.ActiveCfg = Release|x64
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{8627DA33-98D1-4F60-B404-ECCEE0EE7BF9}.Release|x64.ActiveCfg = Release|x64
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.FullRelease|Win32.ActiveCfg = Release|Win32
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.FullRelease|x64.ActiveCfg = Release|Win32
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{98BA115B-829F-4085-9729-ABD0D779A60A}.Release|x64.ActiveCfg = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
791
od-win32/winuae_msvc11/winuae_msvc.vcxproj
Normal file
791
od-win32/winuae_msvc11/winuae_msvc.vcxproj
Normal file
@ -0,0 +1,791 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="FullRelease|Win32">
|
||||
<Configuration>FullRelease</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="FullRelease|x64">
|
||||
<Configuration>FullRelease</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>winuae</ProjectName>
|
||||
<ProjectGuid>{4ADAA943-1AC8-4FB5-82E5-4FB753B6C2DA}</ProjectGuid>
|
||||
<RootNamespace>winuae</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</GenerateManifest>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</GenerateManifest>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</GenerateManifest>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">false</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">true</GenerateManifest>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">d:\amiga\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">$(Platform)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">false</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</GenerateManifest>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">winuae64</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">winuae64</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">winuae64</TargetName>
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;C:\dev\include;$(IncludePath)</IncludePath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;C:\dev\lib;C:\dev\WinDDK\7600.16385.1\lib\win7\i386;$(LibraryPath)</LibraryPath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;C:\dev\lib;C:\dev\WinDDK\7600.16385.1\lib\win7\i386;$(LibraryPath)</LibraryPath>
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;C:\dev\include;$(IncludePath)</IncludePath>
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;C:\dev\include;$(IncludePath)</IncludePath>
|
||||
<ReferencePath Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">$(ReferencePath)</ReferencePath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;C:\dev\lib;$(LibraryPath)</LibraryPath>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Debug/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;..\..\prowizard\include;..\tun;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;_DEBUG;WIN32_IE=0x0700;WIN32;_CRT_SECURE_NO_WARNINGS;D3D_DEBUG_INFO;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
|
||||
<PreprocessKeepComments>false</PreprocessKeepComments>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
||||
<PrecompiledHeaderOutputFile>.\Debug/winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\Debug/</AssemblerListingLocation>
|
||||
<ObjectFileName>.\Debug/</ObjectFileName>
|
||||
<ProgramDataBaseFileName>.\Debug/</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<ForcedIncludeFiles>%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<InlineFunctionExpansion>Disabled</InlineFunctionExpansion>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9d.lib;winio.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;zlibstat.lib;libpng15.lib;lglcd.lib;wpcap.lib;packet.lib;openal32.lib;wintab32.lib;portaudio_x86.lib;vfw32.lib;wtsapi32.lib;enet.lib;prowizard.lib;lzmalib.lib;libFLAC_static.lib;Avrt.lib;hid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ShowProgress>NotSet</ShowProgress>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_43.dll;openal32.dll;wintab32.dll;portaudio_x86.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;ddraw.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>.\Debug/winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>2621440</StackReserveSize>
|
||||
<StackCommitSize>2621440</StackCommitSize>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>
|
||||
</IgnoreAllDefaultLibraries>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
<TypeLibraryName>.\Debug/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;..\..\prowizard\include;..\tun;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;_DEBUG;WIN32_IE=0x0700;WIN32;WIN64;_CRT_SECURE_NO_WARNINGS;D3D_DEBUG_INFO;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeaderOutputFile>$(Platform)\$(Configuration)\winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||
<ObjectFileName>$(Platform)\$(Configuration)\</ObjectFileName>
|
||||
<ProgramDataBaseFileName>$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;vfw32.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;zlibstat.lib;portaudio_x64.lib;packet.lib;wpcap.lib;openal32.lib;libpng15.lib;lglcd.lib;wtsapi32.lib;wntab32x.lib;enet_x64.lib;prowizard_x64.lib;lzmalib.lib;libFLAC_static.lib;avrt.lib;hid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_42.dll;openal32.dll;wintab32.dll;portaudio_x64.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;avrt.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(Platform)\$(Configuration)\winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>2621440</StackReserveSize>
|
||||
<StackCommitSize>2621440</StackCommitSize>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>
|
||||
</IgnoreAllDefaultLibraries>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae64.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Full</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;..\..\prowizard\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;NDEBUG;_WIN32_IE=0x0700;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<PrecompiledHeaderOutputFile>.\Release/winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\Release/</AssemblerListingLocation>
|
||||
<ObjectFileName>.\Release/</ObjectFileName>
|
||||
<ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<ForcedIncludeFiles>%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9.lib;winio.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;libpng15.lib;lglcd.lib;wpcap.lib;packet.lib;openal32.lib;wintab32.lib;portaudio_x86.lib;vfw32.lib;wtsapi32.lib;enet.lib;lzmalib.lib;prowizard.lib;libFLAC_static.lib;Avrt.lib;hid.lib;zlibstat.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<AdditionalManifestDependencies>%(AdditionalManifestDependencies)</AdditionalManifestDependencies>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_43.dll;openal32.dll;wintab32.dll;portaudio_x86.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;wininet.dll;avrt.dll;ddraw.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>.\Release/winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>2621440</StackReserveSize>
|
||||
<StackCommitSize>2621440</StackCommitSize>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration>
|
||||
</LinkTimeCodeGeneration>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<FixedBaseAddress>false</FixedBaseAddress>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<MinimumRequiredVersion>
|
||||
</MinimumRequiredVersion>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Full</Optimization>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;NDEBUG;_WIN32_IE=0x0700;WIN32;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<PrecompiledHeaderOutputFile>$(Platform)\$(Configuration)/winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||
<ObjectFileName>$(Platform)\$(Configuration)\</ObjectFileName>
|
||||
<ProgramDataBaseFileName>$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<ForcedIncludeFiles>%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;vfw32.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;zlibstat.lib;portaudio_x64.lib;packet.lib;wpcap.lib;openal32.lib;libpng15.lib;lglcd.lib;wtsapi32.lib;wntab32x.lib;enet_x64.lib;prowizard_x64.lib;lzmalib.lib;libFLAC_static.lib;avrt.lib;hid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ShowProgress>NotSet</ShowProgress>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_43.dll;openal32.dll;wintab32.dll;portaudio_x64.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;avrt.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(Platform)\$(Configuration)\winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>0</StackReserveSize>
|
||||
<StackCommitSize>0</StackCommitSize>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration>
|
||||
</LinkTimeCodeGeneration>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<FixedBaseAddress>false</FixedBaseAddress>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae64.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Full</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;..\..\prowizard\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;NDEBUG;_WIN32_IE=0x0700;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<PrecompiledHeaderOutputFile>.\FullRelease/winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>.\FullRelease/</AssemblerListingLocation>
|
||||
<ObjectFileName>.\FullRelease/</ObjectFileName>
|
||||
<ProgramDataBaseFileName>.\FullRelease/</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<ForcedIncludeFiles>%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9.lib;winio.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;zlibstat.lib;libpng15.lib;lglcd.lib;wpcap.lib;packet.lib;openal32.lib;wintab32.lib;portaudio_x86.lib;vfw32.lib;wtsapi32.lib;avrt.lib;enet.lib;prowizard.lib;lzmalib.lib;libFLAC_static.lib;Avrt.lib;hid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<AdditionalManifestDependencies>%(AdditionalManifestDependencies)</AdditionalManifestDependencies>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_43.dll;openal32.dll;wintab32.dll;portaudio_x86.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;wininet.dll;avrt.dll;ddraw.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>.\FullRelease/winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>2621440</StackReserveSize>
|
||||
<StackCommitSize>2621440</StackCommitSize>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<FixedBaseAddress>false</FixedBaseAddress>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<MinimumRequiredVersion>
|
||||
</MinimumRequiredVersion>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae9.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/winuae_msvc.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Full</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;..\..;..\;..\resources;..\osdep;..\sounddep;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WINVER=0x0500;NDEBUG;_WIN32_IE=0x0700;WIN32;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<PrecompiledHeaderOutputFile>$(Platform)\$(Configuration)\winuae_msvc.pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||
<ObjectFileName>$(Platform)\$(Configuration)\</ObjectFileName>
|
||||
<ProgramDataBaseFileName>$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<CallingConvention>StdCall</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||
<ForcedIncludeFiles>%(ForcedIncludeFiles)</ForcedIncludeFiles>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;ddraw.lib;dxguid.lib;winmm.lib;comctl32.lib;version.lib;vfw32.lib;msacm32.lib;dsound.lib;dinput8.lib;d3d9.lib;d3dx9.lib;setupapi.lib;wininet.lib;dxerr.lib;shlwapi.lib;zlibstat.lib;portaudio_x64.lib;packet.lib;wpcap.lib;openal32.lib;libpng15.lib;lglcd.lib;wtsapi32.lib;wntab32x.lib;enet_x64.lib;prowizard_x64.lib;lzmalib.lib;libFLAC_static.lib;avrt.lib;hid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<ShowProgress>NotSet</ShowProgress>
|
||||
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories);$(SolutionDir)\..\lib\</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<DelayLoadDLLs>wpcap.dll;packet.dll;d3dx9_43.dll;openal32.dll;wintab32.dll;portaudio_x64.dll;ws2_32.dll;msacm32.dll;wtsapi32.dll;dsound.dll;avrt.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(Platform)\$(Configuration)\winuae.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<StackReserveSize>0</StackReserveSize>
|
||||
<StackCommitSize>0</StackCommitSize>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<FixedBaseAddress>false</FixedBaseAddress>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>..\resources\winuae64.exe.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
</Manifest>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\archivers\dms\crc_csum.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\getbits.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\maketbl.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\pfile.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\tables.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_deep.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_heavy.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_init.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_medium.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_quick.cpp" />
|
||||
<ClCompile Include="..\..\archivers\dms\u_rle.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\crcio.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\dhuf.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\header.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\huf.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\larc.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\lhamaketbl.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\lharc.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\shuf.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\slide.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\uae_lha.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lha\util.cpp" />
|
||||
<ClCompile Include="..\..\archivers\lzx\unlzx.cpp" />
|
||||
<ClCompile Include="..\..\archivers\wrp\warp.cpp" />
|
||||
<ClCompile Include="..\..\archivers\zip\unzip.cpp" />
|
||||
<ClCompile Include="..\..\aros.rom.cpp" />
|
||||
<ClCompile Include="..\..\calc.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_21.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_22.cpp" />
|
||||
<ClCompile Include="..\..\events.cpp" />
|
||||
<ClCompile Include="..\..\hrtmon.rom.cpp" />
|
||||
<ClCompile Include="..\..\inputrecord.cpp" />
|
||||
<ClCompile Include="..\..\isofs.cpp" />
|
||||
<ClCompile Include="..\..\specialmonitors.cpp" />
|
||||
<ClCompile Include="..\..\statusline.cpp" />
|
||||
<ClCompile Include="..\ahidsound_dsonly.cpp" />
|
||||
<ClCompile Include="..\ahidsound_new.cpp" />
|
||||
<ClCompile Include="..\avioutput.cpp" />
|
||||
<ClCompile Include="..\blkdev_win32_ioctl.cpp" />
|
||||
<ClCompile Include="..\blkdev_win32_spti.cpp" />
|
||||
<ClCompile Include="..\bsdsock.cpp" />
|
||||
<ClCompile Include="..\caps\caps_win32.cpp" />
|
||||
<ClCompile Include="..\cda_play.cpp" />
|
||||
<ClCompile Include="..\clipboard_win32.cpp" />
|
||||
<ClCompile Include="..\debug_win32.cpp" />
|
||||
<ClCompile Include="..\dinput.cpp" />
|
||||
<ClCompile Include="..\direct3d.cpp" />
|
||||
<ClCompile Include="..\driveclick_win32.cpp" />
|
||||
<ClCompile Include="..\dxwrap.cpp" />
|
||||
<ClCompile Include="..\fsdb_mywin32.cpp" />
|
||||
<ClCompile Include="..\fsdb_win32.cpp" />
|
||||
<ClCompile Include="..\hardfile_win32.cpp" />
|
||||
<ClCompile Include="..\hq2x_d3d.cpp" />
|
||||
<ClCompile Include="..\ioport.cpp" />
|
||||
<ClCompile Include="..\keyboard_win32.cpp" />
|
||||
<ClCompile Include="..\lcd.cpp" />
|
||||
<ClCompile Include="..\midi.cpp" />
|
||||
<ClCompile Include="..\mman.cpp" />
|
||||
<ClCompile Include="..\mp3decoder.cpp" />
|
||||
<ClCompile Include="..\parser.cpp" />
|
||||
<ClCompile Include="..\picasso96_win.cpp" />
|
||||
<ClCompile Include="..\posixemu.cpp" />
|
||||
<ClCompile Include="..\registry.cpp" />
|
||||
<ClCompile Include="..\cloanto\RetroPlatformGuestIPC.cpp" />
|
||||
<ClCompile Include="..\rp.cpp" />
|
||||
<ClCompile Include="..\scaler.cpp" />
|
||||
<ClCompile Include="..\scaler_more.cpp" />
|
||||
<ClCompile Include="..\screenshot.cpp" />
|
||||
<ClCompile Include="..\serial_win32.cpp" />
|
||||
<ClCompile Include="..\sounddep\sound.cpp" />
|
||||
<ClCompile Include="..\unicode.cpp" />
|
||||
<ClCompile Include="..\win32.cpp" />
|
||||
<ClCompile Include="..\win32_scaler.cpp" />
|
||||
<ClCompile Include="..\win32_uaenet.cpp" />
|
||||
<ClCompile Include="..\win32gfx.cpp" />
|
||||
<ClCompile Include="..\win32gui.cpp" />
|
||||
<ClCompile Include="..\win32gui_extra.cpp" />
|
||||
<ClCompile Include="..\writelog.cpp" />
|
||||
<ClCompile Include="..\..\a2065.cpp" />
|
||||
<ClCompile Include="..\..\a2091.cpp" />
|
||||
<ClCompile Include="..\..\akiko.cpp" />
|
||||
<ClCompile Include="..\..\amax.cpp" />
|
||||
<ClCompile Include="..\..\ar.cpp" />
|
||||
<ClCompile Include="..\..\arcadia.cpp" />
|
||||
<ClCompile Include="..\..\audio.cpp" />
|
||||
<ClCompile Include="..\..\autoconf.cpp" />
|
||||
<ClCompile Include="..\..\blitfunc.cpp" />
|
||||
<ClCompile Include="..\..\blittable.cpp" />
|
||||
<ClCompile Include="..\..\blitter.cpp" />
|
||||
<ClCompile Include="..\..\blkdev.cpp" />
|
||||
<ClCompile Include="..\..\blkdev_cdimage.cpp" />
|
||||
<ClCompile Include="..\..\bsdsocket.cpp" />
|
||||
<ClCompile Include="..\..\catweasel.cpp" />
|
||||
<ClCompile Include="..\..\cd32_fmv.cpp" />
|
||||
<ClCompile Include="..\..\cdrom.cpp" />
|
||||
<ClCompile Include="..\..\cdtv.cpp" />
|
||||
<ClCompile Include="..\..\cfgfile.cpp" />
|
||||
<ClCompile Include="..\..\cia.cpp" />
|
||||
<ClCompile Include="..\..\consolehook.cpp" />
|
||||
<ClCompile Include="..\..\cpudefs.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_0.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_11.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_12.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_20.cpp" />
|
||||
<ClCompile Include="..\..\cpuemu_31.cpp" />
|
||||
<ClCompile Include="..\..\cpummu.cpp" />
|
||||
<ClCompile Include="..\..\cpustbl.cpp" />
|
||||
<ClCompile Include="..\..\crc32.cpp" />
|
||||
<ClCompile Include="..\..\custom.cpp" />
|
||||
<ClCompile Include="..\..\debug.cpp" />
|
||||
<ClCompile Include="..\..\disk.cpp" />
|
||||
<ClCompile Include="..\..\diskutil.cpp" />
|
||||
<ClCompile Include="..\..\dongle.cpp" />
|
||||
<ClCompile Include="..\..\drawing.cpp" />
|
||||
<ClCompile Include="..\..\driveclick.cpp" />
|
||||
<ClCompile Include="..\..\enforcer.cpp" />
|
||||
<ClCompile Include="..\..\epsonprinter.cpp" />
|
||||
<ClCompile Include="..\..\expansion.cpp" />
|
||||
<ClCompile Include="..\..\fdi2raw.cpp" />
|
||||
<ClCompile Include="..\..\filesys.cpp" />
|
||||
<ClCompile Include="..\..\fpp.cpp" />
|
||||
<ClCompile Include="..\..\fsdb.cpp" />
|
||||
<ClCompile Include="..\..\fsusage.cpp" />
|
||||
<ClCompile Include="..\..\gayle.cpp" />
|
||||
<ClCompile Include="..\..\gfxutil.cpp" />
|
||||
<ClCompile Include="..\..\hardfile.cpp" />
|
||||
<ClCompile Include="..\..\identify.cpp" />
|
||||
<ClCompile Include="..\..\inputdevice.cpp" />
|
||||
<ClCompile Include="..\..\keybuf.cpp" />
|
||||
<ClCompile Include="..\..\main.cpp" />
|
||||
<ClCompile Include="..\..\memory.cpp" />
|
||||
<ClCompile Include="..\..\missing.cpp" />
|
||||
<ClCompile Include="..\..\native2amiga.cpp" />
|
||||
<ClCompile Include="..\..\ncr_scsi.cpp" />
|
||||
<ClCompile Include="..\..\newcpu.cpp" />
|
||||
<ClCompile Include="..\..\readcpu.cpp" />
|
||||
<ClCompile Include="..\..\rommgr.cpp" />
|
||||
<ClCompile Include="..\..\sampler.cpp" />
|
||||
<ClCompile Include="..\..\sana2.cpp" />
|
||||
<ClCompile Include="..\..\savestate.cpp" />
|
||||
<ClCompile Include="..\..\scsi.cpp" />
|
||||
<ClCompile Include="..\..\scsiemul.cpp" />
|
||||
<ClCompile Include="..\..\traps.cpp" />
|
||||
<ClCompile Include="..\..\uaeexe.cpp" />
|
||||
<ClCompile Include="..\..\uaeipc.cpp" />
|
||||
<ClCompile Include="..\..\uaelib.cpp" />
|
||||
<ClCompile Include="..\..\uaeresource.cpp" />
|
||||
<ClCompile Include="..\..\uaeserial.cpp" />
|
||||
<ClCompile Include="..\..\zfile.cpp" />
|
||||
<ClCompile Include="..\..\zfile_archive.cpp" />
|
||||
<ClCompile Include="..\..\jit\compemu.cpp" />
|
||||
<ClCompile Include="..\..\jit\compemu_fpp.cpp" />
|
||||
<ClCompile Include="..\..\jit\compemu_support.cpp" />
|
||||
<ClCompile Include="..\..\jit\compstbl.cpp" />
|
||||
<ClCompile Include="..\..\moduleripper.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\resources\35floppy.ico" />
|
||||
<None Include="..\resources\amigainfo.ico" />
|
||||
<None Include="..\resources\avioutput.ico" />
|
||||
<None Include="..\resources\chip.ico" />
|
||||
<None Include="..\resources\configfile.ico" />
|
||||
<None Include="configfile.ico" />
|
||||
<None Include="..\resources\cpu.ico" />
|
||||
<None Include="diskimage.ico" />
|
||||
<None Include="..\resources\diskimage.ico" />
|
||||
<None Include="..\resources\Drive.ico" />
|
||||
<None Include="..\resources\expansion.ico" />
|
||||
<None Include="expansion.ico" />
|
||||
<None Include="..\resources\file.ico" />
|
||||
<None Include="file.ico" />
|
||||
<None Include="..\resources\folder.ico" />
|
||||
<None Include="..\resources\h_arrow.cur" />
|
||||
<None Include="..\resources\icon3.ico" />
|
||||
<None Include="..\resources\joystick.ico" />
|
||||
<None Include="..\resources\lcd.bmp" />
|
||||
<None Include="..\resources\misc.ico" />
|
||||
<None Include="..\resources\move_dow.ico" />
|
||||
<None Include="..\resources\move_up.ico" />
|
||||
<None Include="..\resources\paths.ico" />
|
||||
<None Include="..\resources\port.ico" />
|
||||
<None Include="port.ico" />
|
||||
<None Include="..\resources\quickstart.ico" />
|
||||
<None Include="..\resources\root.ico" />
|
||||
<None Include="..\resources\screen.ico" />
|
||||
<None Include="..\resources\sound.ico" />
|
||||
<None Include="..\resources\winuae.ico" />
|
||||
<None Include="..\resources\xarcade-winuae.bmp" />
|
||||
<None Include="..\resources\drive_click.wav" />
|
||||
<None Include="..\resources\drive_snatch.wav" />
|
||||
<None Include="..\resources\drive_spin.wav" />
|
||||
<None Include="..\resources\drive_spinnd.wav" />
|
||||
<None Include="..\resources\drive_startup.wav" />
|
||||
<None Include="..\resources\resource" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\resources\winuae.rc">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='FullRelease|Win32'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\projects\winuae\src\od-win32\resources</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Library Include="..\hq2x16.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
<Library Include="..\hq2x32.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
<Library Include="..\hq3x16.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
<Library Include="..\hq3x32.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
<Library Include="..\hq4x16.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
<Library Include="..\hq4x32.obj">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='FullRelease|x64'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<FileType>Document</FileType>
|
||||
</Library>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
626
od-win32/winuae_msvc11/winuae_msvc.vcxproj.filters
Normal file
626
od-win32/winuae_msvc11/winuae_msvc.vcxproj.filters
Normal file
@ -0,0 +1,626 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="win32">
|
||||
<UniqueIdentifier>{86cfeeb5-a9b0-4c06-bd94-69c258884a66}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="win32\Resource Files">
|
||||
<UniqueIdentifier>{5c4c971a-37b6-4c1e-82f1-d225ebb12808}</UniqueIdentifier>
|
||||
<Extensions>ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="common">
|
||||
<UniqueIdentifier>{c0e78831-47fa-48a0-a34e-8c3c4410c34b}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="jit">
|
||||
<UniqueIdentifier>{e76a708a-933c-4af4-bad2-0820d79b6a78}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="prowizard">
|
||||
<UniqueIdentifier>{dab2f6c7-d741-4002-b0c9-566a1536642a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers">
|
||||
<UniqueIdentifier>{a88602d5-1980-49b2-a87a-79afa3ca7346}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\dms">
|
||||
<UniqueIdentifier>{6b855260-58da-4be4-b914-621ca2e33ca5}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\lha">
|
||||
<UniqueIdentifier>{1af2c9da-63ab-4226-8b97-5544a0a34433}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\lzx">
|
||||
<UniqueIdentifier>{99d2fcb7-e014-45fe-a543-4a9b9242a35b}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\wrp">
|
||||
<UniqueIdentifier>{d2f2439b-d15d-47d5-bb26-1a9436aef770}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\xfd">
|
||||
<UniqueIdentifier>{d69b4a6c-84db-480b-8b80-60a2a3646f6e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="unpackers\zip">
|
||||
<UniqueIdentifier>{93fcf20a-8921-43e8-b4b9-e5fceb81332d}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\ahidsound_dsonly.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\ahidsound_new.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\avioutput.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\blkdev_win32_ioctl.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\blkdev_win32_spti.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\bsdsock.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\caps\caps_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\clipboard_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\debug_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\dinput.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\direct3d.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\driveclick_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\dxwrap.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\fsdb_mywin32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\fsdb_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\hardfile_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\hq2x_d3d.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\ioport.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\keyboard_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\lcd.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\midi.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\mman.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\parser.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\picasso96_win.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\posixemu.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\registry.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\cloanto\RetroPlatformGuestIPC.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\rp.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\scaler.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\scaler_more.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\screenshot.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\serial_win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\sounddep\sound.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\unicode.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32_uaenet.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32gfx.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32gui.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32gui_extra.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\writelog.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\a2065.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\a2091.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\akiko.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\amax.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\ar.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\arcadia.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\audio.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\autoconf.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\blitfunc.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\blittable.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\blitter.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\blkdev.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\blkdev_cdimage.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\bsdsocket.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\catweasel.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cd32_fmv.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cdrom.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cdtv.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cfgfile.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cia.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\consolehook.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpudefs.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_0.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_11.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_12.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_20.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_31.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpummu.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpustbl.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\crc32.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\custom.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\debug.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\disk.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\diskutil.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\dongle.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\drawing.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\driveclick.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\enforcer.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\epsonprinter.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\expansion.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\fdi2raw.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\filesys.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\fpp.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\fsdb.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\fsusage.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\gayle.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\gfxutil.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\hardfile.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\identify.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\inputdevice.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\keybuf.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\main.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\memory.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\missing.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\native2amiga.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\ncr_scsi.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\newcpu.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\readcpu.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\rommgr.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\sampler.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\sana2.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\savestate.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\scsi.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\scsiemul.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\traps.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\uaeexe.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\uaeipc.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\uaelib.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\uaeresource.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\uaeserial.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\zfile.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\zfile_archive.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\jit\compemu.cpp">
|
||||
<Filter>jit</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\jit\compemu_fpp.cpp">
|
||||
<Filter>jit</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\jit\compemu_support.cpp">
|
||||
<Filter>jit</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\jit\compstbl.cpp">
|
||||
<Filter>jit</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\moduleripper.cpp">
|
||||
<Filter>prowizard</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\win32_scaler.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\crc_csum.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\getbits.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\maketbl.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\pfile.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\tables.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_deep.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_heavy.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_init.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_medium.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_quick.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\dms\u_rle.cpp">
|
||||
<Filter>unpackers\dms</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\crcio.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\dhuf.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\header.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\huf.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\larc.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\lhamaketbl.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\lharc.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\shuf.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\slide.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\uae_lha.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lha\util.cpp">
|
||||
<Filter>unpackers\lha</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\lzx\unlzx.cpp">
|
||||
<Filter>unpackers\lzx</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\wrp\warp.cpp">
|
||||
<Filter>unpackers\wrp</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\archivers\zip\unzip.cpp">
|
||||
<Filter>unpackers\zip</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_21.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\mp3decoder.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\cda_play.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\inputrecord.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\statusline.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\hrtmon.rom.cpp">
|
||||
<Filter>win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\aros.rom.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\specialmonitors.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\events.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\calc.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\isofs.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\cpuemu_22.cpp">
|
||||
<Filter>common</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\resources\35floppy.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\amigainfo.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\avioutput.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\chip.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\configfile.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="configfile.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\cpu.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="diskimage.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\diskimage.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\Drive.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\expansion.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="expansion.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\file.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="file.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\folder.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\h_arrow.cur">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\icon3.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\joystick.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\lcd.bmp">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\misc.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\move_dow.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\move_up.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\paths.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\port.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="port.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\quickstart.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\root.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\screen.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\sound.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\winuae.ico">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\xarcade-winuae.bmp">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</None>
|
||||
<None Include="..\resources\drive_click.wav" />
|
||||
<None Include="..\resources\drive_snatch.wav" />
|
||||
<None Include="..\resources\drive_spin.wav" />
|
||||
<None Include="..\resources\drive_spinnd.wav" />
|
||||
<None Include="..\resources\drive_startup.wav" />
|
||||
<None Include="..\resources\resource" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\resources\winuae.rc">
|
||||
<Filter>win32\Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Library Include="..\hq2x16.obj" />
|
||||
<Library Include="..\hq2x32.obj" />
|
||||
<Library Include="..\hq3x16.obj" />
|
||||
<Library Include="..\hq3x32.obj" />
|
||||
<Library Include="..\hq4x16.obj" />
|
||||
<Library Include="..\hq4x32.obj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@ -1,6 +1,52 @@
|
||||
|
||||
- restore only single input target to default.
|
||||
|
||||
Beta 13:
|
||||
|
||||
- Parallel port audio sampler had very bad quality on some systems. NOTE: Sampler requires exact DirectSound
|
||||
recording position reporting = not that good results when using some onboard Realteks etc..
|
||||
(It can be made better but because this is really pointless feature: pay or buy a better PC)
|
||||
- Very old statefiles triggered keyboard powerup initialization sequence when restored, caused phantom keypresses.
|
||||
- Sinc audio interpolation filter clipping fixed. (Was always wrong in UAE, was much more noticeable after b11 audio update)
|
||||
- Input configuration parser didn't parse custom input event strings correctly if it contained '.' or ',' characters.
|
||||
- Added experimental (and mostly useless) option that removes DOS reserved name restriction (CON is the most popular because
|
||||
it is also included with WB disks). Note that this causes some interesting side effects: most Windows programs, including
|
||||
Explorer, won't be able to open any file if it has DOS reserved name... You don't need this option, UAE has always
|
||||
mangled illegal names transparently (for example CON becomes something like "__uae__con" on host side)
|
||||
Configuration file only: win32.filesystem_mangle_reserved_names=false (defaults to true if not set)
|
||||
- Disable screensaver option didn't work, SetThreadExecutionState() needs to be called periodically, not just once,
|
||||
function documentation is a bit confusing..
|
||||
- When deciding first visible line and programmed mode: select which is largest, VBSTOP or VSSTOP. (SuperPlus)
|
||||
- Added Keep autoscale aspect ratio checkbox, only sort of working now...
|
||||
- Map rom region size mirrors ROM size, address automatically moved to 0xe00000 (512k) or 0xa80000 (1M) if 24-bit CPU.
|
||||
- Remove interlace artifacts option halved size of display horizontally in some programmed screen modes.
|
||||
- Portaudio sound and sound was deactivated automatically: sound led kept showing buffer underrun state.
|
||||
- Disable screen updates if monitor enters power saving mode.
|
||||
- When restoring state file with floppy image(s) missing (files moved etc..), there still was rare possibility that floppy
|
||||
drive was reported as empty.
|
||||
- Some more manual BPLxDAT emulation updates, Sequential Magnet part garbage introduced in previous update is gone.
|
||||
- Color registers were emulated as non-existing instead of write-only in OCS/ECS modes. (I guess only visible difference
|
||||
- DENISEID is now non-existing if 68000 prefetch or cycle-exact and OCS Denise. (Programs may misdetect if no prefetch emulated,
|
||||
and now programs, if they even exist, that misdetect it on real OCS A500 will misdetect it on emulation too! :)
|
||||
will be more colorful display if program crashes or does weird things and starts reading from color registers..)
|
||||
- Renamed Paths panel "WinUAE defaults"-paths, meaning of selection should make more sense now.
|
||||
- Better input qualifier GUI, Windows key default qualifier added.
|
||||
- Slot #5-#8 custom events didn't work correctly.
|
||||
|
||||
- GUI resize and font selection support added (misc panel). It was possible after all, needed only some hacking..
|
||||
* Default size is now larger then previously.
|
||||
* This is a hack, rebuilds classic Windows dialog resources on the fly while adjusting GUI element coordinates and size.
|
||||
* GUI size after resizing may not be exactly what you expected.
|
||||
* Windows always closes and reopens after resize. It is also normal, can be improved, later if ever..
|
||||
* Window/Fullwindow/Fullscreen have separate position, size and font settings.
|
||||
* Less than 80% size not officially supported, overlapping and clipping is normal. Select smaller font.
|
||||
* Possible future improvements: more preset sizes, some kind of autofit in smaller fullscreen modes.
|
||||
* I hope GUI now appears to be more modern than it actually is :)
|
||||
|
||||
- Version bumped to 2.5.0.
|
||||
|
||||
Beta 12:
|
||||
|
||||
- Moved cycle-exact option to Chipset group in GUI. Other options are minor options/hacks, CE is not.
|
||||
- Do not enable wait for blit if immediate blitter is enabled in quickstart mode.
|
||||
- Added RTG hardware sprite (mouse cursor) enable/disable option. Enabled by default if D3D mode. Was always enabled
|
||||
|
||||
24
sampler.cpp
24
sampler.cpp
@ -31,7 +31,7 @@ static int sampleframes;
|
||||
static int recordbufferframes;
|
||||
static float clockspersample;
|
||||
static int vsynccnt;
|
||||
static int safepos;
|
||||
static int safediff;
|
||||
float sampler_evtime;
|
||||
|
||||
static int capture_init (void)
|
||||
@ -115,7 +115,6 @@ uae_u8 sampler_getsample (int channel)
|
||||
#endif
|
||||
static double doffset_offset;
|
||||
HRESULT hr;
|
||||
DWORD pos;
|
||||
DWORD t;
|
||||
void *p1, *p2;
|
||||
DWORD len1, len2;
|
||||
@ -128,6 +127,7 @@ uae_u8 sampler_getsample (int channel)
|
||||
channel = 0;
|
||||
|
||||
if (!inited) {
|
||||
DWORD pos;
|
||||
if (!capture_init ()) {
|
||||
capture_free ();
|
||||
return 0;
|
||||
@ -136,6 +136,18 @@ uae_u8 sampler_getsample (int channel)
|
||||
oldcycles = get_cycles ();
|
||||
oldoffset = -1;
|
||||
doffset_offset = 0;
|
||||
hr = lpDSB2r->GetCurrentPosition (&t, &pos);
|
||||
if (FAILED (hr)) {
|
||||
sampler_free ();
|
||||
return 0;
|
||||
}
|
||||
if (t >= pos)
|
||||
safediff = t - pos;
|
||||
else
|
||||
safediff = recordbufferframes * SAMPLESIZE - pos + t;
|
||||
write_log (_T("SAMPLER: safediff %d %d\n"), safediff, safediff + sampleframes * SAMPLESIZE);
|
||||
safediff += 4 * sampleframes * SAMPLESIZE;
|
||||
|
||||
#if 0
|
||||
diffsample = 0;
|
||||
safepos = -recordbufferframes / 10 * SAMPLESIZE;
|
||||
@ -174,8 +186,12 @@ uae_u8 sampler_getsample (int channel)
|
||||
samplecnt++;
|
||||
}
|
||||
}
|
||||
hr = lpDSB2r->GetCurrentPosition (&t, &pos);
|
||||
hr = lpDSB2r->Lock (t, sampleframes * SAMPLESIZE, &p1, &len1, &p2, &len2, 0);
|
||||
hr = lpDSB2r->GetCurrentPosition (&t, NULL);
|
||||
int pos = t;
|
||||
pos -= safediff;
|
||||
if (pos < 0)
|
||||
pos += recordbufferframes * SAMPLESIZE;
|
||||
hr = lpDSB2r->Lock (pos, sampleframes * SAMPLESIZE, &p1, &len1, &p2, &len2, 0);
|
||||
if (FAILED (hr)) {
|
||||
write_log (_T("SAMPLER: Lock() failed %x\n"), hr);
|
||||
return 0;
|
||||
|
||||
@ -516,6 +516,7 @@ void restore_state (const TCHAR *filename)
|
||||
savestate_file = f;
|
||||
restore_header (chunk);
|
||||
xfree (chunk);
|
||||
restore_cia_start ();
|
||||
changed_prefs.bogomem_size = 0;
|
||||
changed_prefs.chipmem_size = 0;
|
||||
changed_prefs.fastmem_size = 0;
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
/* tables are: a500 off, a500 on, a1200 off, a1200 on, vanilla. */
|
||||
const int winsinc_integral[5][2048] = {
|
||||
const int winsinc_integral[5][SINC_QUEUE_MAX_AGE] = {
|
||||
{
|
||||
131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,
|
||||
131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131070,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user