From 0330567861e816691e1c20b958c365a40d5d1037 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Wed, 28 Mar 2007 20:49:42 +0300 Subject: [PATCH] imported winuaesrc1420b1.zip --- blitter.c | 4 +- cfgfile.c | 14 +- custom.c | 24 +- debug.c | 179 +- drawing.c | 38 +- include/custom.h | 2 +- include/debug.h | 7 + include/newcpu.h | 1 + include/options.h | 2 +- include/sysdeps.h | 3 + inputdevice.c | 7 +- main.c | 1 + newcpu.c | 45 +- od-win32/avioutput.c | 1 - od-win32/bsdsock.c | 2 +- od-win32/debug_win32.c | 912 +++++++++ od-win32/debug_win32.h | 44 + od-win32/dinput.c | 8 +- od-win32/direct3d.c | 5 +- od-win32/hardfile_win32.c | 6 +- od-win32/ioport.c | 31 +- od-win32/keyboard_win32.c | 2 +- od-win32/makeexe.bat | 1 + od-win32/opengl.c | 6 +- od-win32/picasso96_win.c | 6 +- od-win32/resources/resource | 932 +++++++++ od-win32/resources/resource.h | 40 +- od-win32/resources/winuae.rc | 383 ++-- od-win32/resources/winuae_minimal.rc | 2440 ++++++++++++----------- od-win32/win32.c | 77 +- od-win32/win32.h | 6 +- od-win32/win32gfx.c | 204 +- od-win32/win32gui.c | 356 +++- od-win32/win32gui.h | 17 + od-win32/win32gui_extra.c | 208 ++ od-win32/winuae_msvc/winuae_msvc.vcproj | 12 +- od-win32/winuaechangelog.txt | 41 + od-win32/writelog.c | 211 +- zfile.c | 2 +- 39 files changed, 4453 insertions(+), 1827 deletions(-) create mode 100755 od-win32/debug_win32.c create mode 100755 od-win32/debug_win32.h create mode 100755 od-win32/resources/resource create mode 100755 od-win32/win32gui_extra.c diff --git a/blitter.c b/blitter.c index e7b9462c..d0468589 100755 --- a/blitter.c +++ b/blitter.c @@ -140,7 +140,7 @@ static const int blit_cycle_diagram[][10] = { 3, 3, 1,3,4, 1,3,0 }, /* B */ { 2, 3, 1,2,0, 1,2 }, /* C */ { 3, 3, 1,2,4, 1,2,0 }, /* D */ - { 0, 4, 1,2,3,0 }, /* E */ + { 0, 3, 1,2,3 }, /* E */ { 4, 4, 1,2,3,4, 1,2,3,0 } /* F */ }; @@ -162,7 +162,7 @@ static const int blit_cycle_diagram_fill[][10] = { 3, 3, 1,3,4, 1,3,0 }, /* B */ { 2, 3, 1,2,5, 1,2 }, /* C */ { 3, 4, 1,2,5,4, 1,2,0 }, /* D */ - { 0, 4, 1,2,3,0 }, /* E */ + { 0, 3, 1,2,3 }, /* E */ { 4, 4, 1,2,3,4, 1,2,3,0 } /* F */ }; diff --git a/cfgfile.c b/cfgfile.c index 3695c339..4aea8486 100755 --- a/cfgfile.c +++ b/cfgfile.c @@ -147,7 +147,11 @@ static const char *idemode[] = { "none", "a600/a1200", "a4000", 0 }; static const char *rtctype[] = { "none", "MSM6242B", "RP5C01A", 0 }; static const char *ciaatodmode[] = { "vblank", "50hz", "60hz", 0 }; static const char *ksmirrortype[] = { "none", "e0", "a8+e0", 0 }; -static const char *cscompa[] = { "-", "Generic", "CDTV", "CD32", "A500", "A500+", "A600", "A1000", "A1200", "A2000", "A4000", 0 }; +static const char *cscompa[] = { + "-", "Generic", "CDTV", "CD32", "A500", "A500+", "A600", + "A1000", "A1200", "A2000", "A3000", "A3000T", "A4000", "A4000T", 0 +}; +static const char *fullmodes[] = { "false", "true", "fullwindow", 0 }; static const char *obsolete[] = { "accuracy", "gfx_opengl", "gfx_32bit_blits", "32bit_blits", @@ -404,8 +408,8 @@ void cfgfile_save_options (struct zfile *f, struct uae_prefs *p, int type) cfgfile_write (f, "gfx_lores_mode=%s\n", loresmode[p->gfx_lores_mode]); cfgfile_write (f, "gfx_linemode=%s\n", linemode1[p->gfx_linedbl]); cfgfile_write (f, "gfx_correct_aspect=%s\n", p->gfx_correct_aspect ? "true" : "false"); - cfgfile_write (f, "gfx_fullscreen_amiga=%s\n", p->gfx_afullscreen ? "true" : "false"); - cfgfile_write (f, "gfx_fullscreen_picasso=%s\n", p->gfx_pfullscreen ? "true" : "false"); + cfgfile_write (f, "gfx_fullscreen_amiga=%s\n", fullmodes[p->gfx_afullscreen]); + cfgfile_write (f, "gfx_fullscreen_picasso=%s\n", fullmodes[p->gfx_pfullscreen]); cfgfile_write (f, "gfx_center_horizontal=%s\n", centermode1[p->gfx_xcenter]); cfgfile_write (f, "gfx_center_vertical=%s\n", centermode1[p->gfx_ycenter]); cfgfile_write (f, "gfx_colour_mode=%s\n", colormode1[p->color_mode]); @@ -763,8 +767,6 @@ static int cfgfile_parse_host (struct uae_prefs *p, char *option, char *value) || cfgfile_yesno (option, value, "gfx_vsync", &p->gfx_vsync) || cfgfile_yesno (option, value, "gfx_lores", &p->gfx_lores) || cfgfile_yesno (option, value, "gfx_correct_aspect", &p->gfx_correct_aspect) - || cfgfile_yesno (option, value, "gfx_fullscreen_amiga", &p->gfx_afullscreen) - || cfgfile_yesno (option, value, "gfx_fullscreen_picasso", &p->gfx_pfullscreen) || cfgfile_yesno (option, value, "show_leds", &p->leds_on_screen) || cfgfile_yesno (option, value, "synchronize_clock", &p->tod_hack) || cfgfile_yesno (option, value, "bsdsocket_emu", &p->socket_emu)) @@ -778,6 +780,8 @@ static int cfgfile_parse_host (struct uae_prefs *p, char *option, char *value) || cfgfile_strval (option, value, "use_gui", &p->start_gui, guimode1, 1) || cfgfile_strval (option, value, "use_gui", &p->start_gui, guimode2, 1) || cfgfile_strval (option, value, "use_gui", &p->start_gui, guimode3, 0) + || cfgfile_strval (option, value, "gfx_fullscreen_amiga", &p->gfx_afullscreen, fullmodes, 0) + || cfgfile_strval (option, value, "gfx_fullscreen_picasso", &p->gfx_pfullscreen, fullmodes, 0) || cfgfile_strval (option, value, "gfx_lores_mode", &p->gfx_lores_mode, loresmode, 0) || cfgfile_strval (option, value, "gfx_linemode", &p->gfx_linedbl, linemode1, 1) || cfgfile_strval (option, value, "gfx_linemode", &p->gfx_linedbl, linemode2, 0) diff --git a/custom.c b/custom.c index f829e890..077892e9 100755 --- a/custom.c +++ b/custom.c @@ -159,6 +159,7 @@ static uae_u32 cop1lc,cop2lc,copcon; int maxhpos = MAXHPOS_PAL; int maxvpos = MAXVPOS_PAL; +int maxvpos_max = MAXVPOS_PAL; int minfirstline = VBLANK_ENDLINE_PAL; int vblank_hz = VBLANK_HZ_PAL, fake_vblank_hz, vblank_skip; frame_time_t syncbase; @@ -2252,6 +2253,7 @@ void init_hz (void) vblank_hz = VBLANK_HZ_NTSC; sprite_vblank_endline = VBLANK_SPRITE_NTSC; } + maxvpos_max = maxvpos; } if (beamcon0 & 0x80) { if (vtotal >= MAXVPOS) @@ -2267,6 +2269,7 @@ void init_hz (void) if (minfirstline >= maxvpos) minfirstline = maxvpos - 1; sprite_vblank_endline = minfirstline - 2; + maxvpos_max = maxvpos; dumpsync(); } /* limit to sane values */ @@ -2318,21 +2321,6 @@ static void calcdiw (void) plffirstline = vstrt; plflastline = vstop; -#if 0 - /* This happens far too often. */ - if (plffirstline < minfirstline_bpl) { - write_log ("Warning: Playfield begins before line %d (%d)!\n", minfirstline_bpl, plffirstline); - } -#endif - -#if 0 /* this comparison is not needed but previous is.. */ - if (plflastline > 313) { - /* Turrican does this */ - write_log ("Warning: Playfield out of range!\n"); - plflastline = 313; - } -#endif - plfstrt = ddfstrt; plfstop = ddfstop; /* probably not the correct place.. */ @@ -4153,7 +4141,7 @@ static void vsync_handler (void) handle_events (); - INTREQ_d (0x8000 | 0x0020, 2); + INTREQ_d (0x8000 | 0x0020, 3); if (bplcon0 & 4) lof ^= 0x8000; @@ -4163,8 +4151,6 @@ static void vsync_handler (void) picasso_handle_vsync (); #endif - vsync_handle_redraw (lof, lof_changed); - if (quit_program > 0) { /* prevent possible infinite loop at wait_cycles().. */ framecnt = 0; @@ -4185,6 +4171,8 @@ static void vsync_handler (void) if (debug_copper) record_copper_reset(); + vsync_handle_redraw (lof, lof_changed); + /* For now, let's only allow this to change at vsync time. It gets too * hairy otherwise. */ if ((beamcon0 & (0x20|0x80)) != (new_beamcon0 & (0x20|0x80)) || hack_vpos) diff --git a/debug.c b/debug.c index 1837fa02..e4e0c5b7 100755 --- a/debug.c +++ b/debug.c @@ -32,7 +32,7 @@ #include "inputdevice.h" #include "crc32.h" -static int debugger_active; +int debugger_active; static uaecptr skipaddr_start, skipaddr_end; static int skipaddr_doskip; static uae_u32 skipins; @@ -51,6 +51,13 @@ extern int inputdevice_logging; static FILE *logfile; +void deactivate_debugger (void) +{ + debugger_active = 0; + debugging = 0; + exception_debugging = 0; +} + void activate_debugger (void) { if (logfile) @@ -76,6 +83,7 @@ static char help[] = { " c Dump state of the CIA, disk drives and custom registers\n" " r Dump state of the CPU\n" " m
[] Memory dump starting at
\n" + " m r Memory dump starting at \n" " d
[] Disassembly starting at
\n" " t [instructions] Step one or more instructions\n" " z Step through one instruction - useful for JSR, DBRA etc\n" @@ -116,10 +124,14 @@ static char help[] = { " Also enables extended disk logging\n" " dj [] Enable joystick/mouse input debugging\n" " dm Dump current address space map\n" +#ifdef WIN32 + " x Close debugger.\n" + " xx Switch between console and GUI debugger.\n" +#endif " q Quit the emulator. You don't want to use this command.\n\n" }; -static void debug_help (void) +void debug_help (void) { console_out (help); } @@ -280,29 +292,103 @@ static uaecptr nextaddr (uaecptr addr, uaecptr *end) return addr; } +int safe_addr(uaecptr addr, int size) +{ + addrbank *ab = &get_mem_bank (addr); + if (!ab) + return 0; + if (!ab->check (addr, size)) + return 0; + if (ab->flags == ABFLAG_RAM || ab->flags == ABFLAG_ROM) + return 1; + return 0; +} + +uaecptr dumpmem2 (uaecptr addr, char *out, int osize) +{ + int i, cols = 8; + int nonsafe = 0; + + if (osize <= (9 + cols * 5 + 1 + 2 * cols)) + return addr; + sprintf (out, "%08lX ", addr); + for (i = 0; i < cols; i++) { + uae_u8 b1, b2; + b1 = b2 = 0; + if (safe_addr(addr, 2)) { + b1 = get_byte (addr + 0); + b2 = get_byte (addr + 1); + sprintf (out + 9 + i * 5, "%02X%02X ", b1, b2); + out[9 + cols * 5 + 1 + i * 2 + 0] = b1 >= 32 && b1 < 127 ? b1 : '.'; + out[9 + cols * 5 + 1 + i * 2 + 1] = b2 >= 32 && b2 < 127 ? b2 : '.'; + } else { + nonsafe++; + strcpy (out + 9 + i * 5, "**** "); + out[9 + cols * 5 + 1 + i * 2 + 0] = '*'; + out[9 + cols * 5 + 1 + i * 2 + 1] = '*'; + } + addr += 2; + } + out[9 + cols * 5] = ' '; + out[9 + cols * 5 + 1 + 2 * cols] = 0; + if (nonsafe == cols) { + addrbank *ab = &get_mem_bank (addr); + if (ab->name) + memcpy (out + 9 + 4 + 1, ab->name, strlen (ab->name)); + } + return addr; +} + static void dumpmem (uaecptr addr, uaecptr *nxmem, int lines) { - char line[80]; - int cols = 8; + char line[MAX_LINEWIDTH + 1]; for (;lines--;) { - int i; - sprintf (line, "%08lx ", addr); - for (i = 0; i < cols; i++) { - uae_u8 b1 = get_byte (addr + 0); - uae_u8 b2 = get_byte (addr + 1); - addr += 2; - sprintf (line + 9 + i * 5, "%02x%02x ", b1, b2); - line[9 + cols * 5 + 1 + i * 2 + 0] = b1 >= 32 && b1 < 127 ? b1 : '.'; - line[9 + cols * 5 + 1 + i * 2 + 1] = b2 >= 32 && b2 < 127 ? b2 : '.'; - } - line[9 + cols * 5] = ' '; - line[9 + cols * 5 + 1 + 2 * cols] = 0; - console_out ("%s", line); + addr = dumpmem2 (addr, line, sizeof(line)); + console_out ("%s", line); console_out ("\n"); } *nxmem = addr; } +static void dumpmemreg (char **inptr) +{ + int i; + char *p = *inptr; + uaecptr nxmem, addr; + char tmp[10]; + + addr = 0; + i = 0; + while (p[i]) { + tmp[i] = toupper(p[i]); + if (i >= sizeof (tmp) - 1) + break; + i++; + } + tmp[i] = 0; + if (!strcmp(tmp, "USP")) + addr = regs.usp; + if (!strcmp(tmp, "VBR")) + addr = regs.vbr; + if (!strcmp(tmp, "MSP")) + addr = regs.msp; + if (!strcmp(tmp, "ISP")) + addr = regs.isp; + if (!strcmp(tmp, "PC")) + addr = regs.pc; + if (toupper(p[0]) == 'A' || toupper(p[0]) == 'D') { + int reg = 0; + if (toupper(p[0]) == 'A') + reg += 8; + reg += p[1] - '0'; + if (reg < 0 || reg > 15) + return; + addr = regs.regs[reg]; + } + addr -= 16; + dumpmem (addr, &nxmem, 20); +} + static void dump_custom_regs (int aga) { int len, i, j, end; @@ -795,7 +881,7 @@ static void cheatsearch (char **c) } listcheater(0); } - console_out ("Found %d possible addresses with 0x%x (%u) (%d bytes)\n", count, val, val, size); + console_out ("Found %d possible addresses with 0x%X (%u) (%d bytes)\n", count, val, val, size); console_out ("Now continue with 'g' and use 'C' with a different value\n"); first = 0; } @@ -1400,7 +1486,7 @@ static void writeintomem (char **c) put_byte (addr, val); cc = 'B'; } - console_out ("Wrote %x (%u) at %08x.%c\n", val, val, addr, cc); + console_out ("Wrote %X (%u) at %08X.%c\n", val, val, addr, cc); } static uae_u8 *dump_xlate(uae_u32 addr) @@ -1494,22 +1580,22 @@ static void show_exec_tasks (void) uaecptr taskready = get_long (execbase + 406); uaecptr taskwait = get_long (execbase + 420); uaecptr node, end; - console_out ("execbase at 0x%08lx\n", (unsigned long) execbase); + console_out ("execbase at 0x%08X\n", (unsigned long) execbase); console_out ("Current:\n"); node = get_long (execbase + 276); - console_out ("%08lx: %08lx %s\n", node, 0, get_real_address (get_long (node + 10))); + console_out ("%08X: %08X %s\n", node, 0, get_real_address (get_long (node + 10))); console_out ("Ready:\n"); node = get_long (taskready); end = get_long (taskready + 4); while (node) { - console_out ("%08lx: %08lx %s\n", node, 0, get_real_address (get_long (node + 10))); + console_out ("%08X: %08X %s\n", node, 0, get_real_address (get_long (node + 10))); node = get_long (node); } console_out ("Waiting:\n"); node = get_long (taskwait); end = get_long (taskwait + 4); while (node) { - console_out ("%08lx: %08lx %s\n", node, 0, get_real_address (get_long (node + 10))); + console_out ("%08X: %08X %s\n", node, 0, get_real_address (get_long (node + 10))); node = get_long (node); } } @@ -1700,7 +1786,7 @@ static void searchmem (char **cc) if (more_params (cc)) endaddr = readhex (cc); } - console_out ("Searching from %08x to %08x..\n", addr, endaddr); + console_out ("Searching from %08X to %08X..\n", addr, endaddr); while ((addr = nextaddr (addr, NULL)) != 0xffffffff) { if (addr == endaddr) break; @@ -1716,7 +1802,7 @@ static void searchmem (char **cc) } if (i == sslen) { got++; - console_out (" %08x", addr); + console_out (" %08X", addr); if (got > 100) { console_out ("\nMore than 100 results, aborting.."); break; @@ -1851,7 +1937,7 @@ static void m68k_modify (char **inptr) static void debug_1 (void) { - char input[80]; + char input[MAX_LINEWIDTH]; uaecptr nxdis, nxmem, addr; m68k_dumpstate (stdout, &nextpc); @@ -1860,9 +1946,12 @@ static void debug_1 (void) for (;;) { char cmd, *inptr; + if (!debugger_active) + return; + update_debug_info(); console_out (">"); console_flush (); - if (!console_get (input, 80)) + if (!console_get (input, MAX_LINEWIDTH)) continue; inptr = input; cmd = next_char (&inptr); @@ -1960,9 +2049,9 @@ static void debug_1 (void) } break; - case 'q': uae_quit(); - debugger_active = 0; - debugging = 0; + case 'q': + uae_quit(); + deactivate_debugger(); return; case 'g': @@ -1970,11 +2059,19 @@ static void debug_1 (void) m68k_setpc (®s, readhex (&inptr)); fill_prefetch_slow (®s); } - debugger_active = 0; - debugging = 0; - exception_debugging = 0; + deactivate_debugger(); return; + case 'x': + if (toupper(inptr[0]) == 'X') { + debugger_change(-1); + } else { + deactivate_debugger(); + close_console(); + return; + } + break; + case 'H': { int count, temp, badly; @@ -2017,11 +2114,19 @@ static void debug_1 (void) break; case 'm': { - uae_u32 maddr; int lines; - if (more_params(&inptr)) - maddr = readhex(&inptr); - else + uae_u32 maddr; + int lines; + if (more_params(&inptr)) { + if (toupper(inptr[0]) == 'R') { + inptr++; + dumpmemreg(&inptr); + break; + } else { + maddr = readhex(&inptr); + } + } else { maddr = nxmem; + } if (more_params(&inptr)) lines = readhex(&inptr); else diff --git a/drawing.c b/drawing.c index c5c28b0d..5131570d 100755 --- a/drawing.c +++ b/drawing.c @@ -1166,7 +1166,7 @@ static void init_aspect_maps (void) if (currprefs.gfx_ycenter && !(currprefs.gfx_correct_aspect)) { /* @@@ verify maxvpos vs. MAXVPOS */ - extra_y_adjust = (gfxvidinfo.height - (maxvpos << (currprefs.gfx_linedbl ? 1 : 0))) >> 1; + extra_y_adjust = (gfxvidinfo.height - (maxvpos_max << (currprefs.gfx_linedbl ? 1 : 0))) >> 1; if (extra_y_adjust < 0) extra_y_adjust = 0; } @@ -1674,13 +1674,13 @@ static void center_image (void) thisframe_y_adjust = prev_y_adjust; } /* Make sure the value makes sense */ - if (thisframe_y_adjust + max_drawn_amiga_line > maxvpos) - thisframe_y_adjust = maxvpos - max_drawn_amiga_line; + if (thisframe_y_adjust + max_drawn_amiga_line > maxvpos_max) + thisframe_y_adjust = maxvpos_max - max_drawn_amiga_line; if (thisframe_y_adjust < minfirstline) thisframe_y_adjust = minfirstline; } thisframe_y_adjust_real = thisframe_y_adjust << (currprefs.gfx_linedbl ? 1 : 0); - tmp = (maxvpos - thisframe_y_adjust) << (currprefs.gfx_linedbl ? 1 : 0); + tmp = (maxvpos_max - thisframe_y_adjust) << (currprefs.gfx_linedbl ? 1 : 0); if (tmp != max_ypos_thisframe) { last_max_ypos = tmp; if (last_max_ypos < 0) @@ -1754,7 +1754,8 @@ static void init_drawing_frame (void) if (thisframe_first_drawn_line > thisframe_last_drawn_line) thisframe_last_drawn_line = thisframe_first_drawn_line; - maxline = currprefs.gfx_linedbl ? (maxvpos + 1) * 2 + 1 : (maxvpos + 1) + 1; + maxline = currprefs.gfx_linedbl ? (maxvpos_max + 1) * 2 + 1 : (maxvpos_max + 1) + 1; + maxline++; #ifdef SMART_UPDATE for (i = 0; i < maxline; i++) { switch (linestate[i]) { @@ -2057,8 +2058,8 @@ static void lightpen_update (void) lightpen_cx -= maxhpos; if (lightpen_cy < minfirstline) lightpen_cy = minfirstline; - if (lightpen_cy >= maxvpos) - lightpen_cy = maxvpos - 1; + if (lightpen_cy >= maxvpos_max) + lightpen_cy = maxvpos_max - 1; for (i = 0; i < LIGHTPEN_HEIGHT; i++) { int line = lightpen_y + i - LIGHTPEN_HEIGHT / 2; @@ -2089,9 +2090,9 @@ void finish_drawing_frame (void) return; #endif for (i = 0; i < max_ypos_thisframe; i++) { - int where; int i1 = i + min_ypos_for_screen; int line = i + thisframe_y_adjust_real; + int where; if (linestate[line] == LINE_UNDECIDED) break; @@ -2099,24 +2100,33 @@ void finish_drawing_frame (void) where = amiga2aspect_line_map[i1]; if (where >= gfxvidinfo.height) break; - if (where == -1) + if (where < 0) continue; pfield_draw_line (line, where, amiga2aspect_line_map[i1 + 1]); } /* clear possible old garbage at the bottom if emulated area become smaller */ - while (last_max_ypos < gfxvidinfo.height) { - xcolnr tmp = colors_for_drawing.acolors[0]; + for (i = last_max_ypos; i < gfxvidinfo.height; i++) { + int i1 = i + min_ypos_for_screen; + int line = i + thisframe_y_adjust_real; + int where = amiga2aspect_line_map[i1]; + xcolnr tmp; + + if (where >= gfxvidinfo.height) + break; + if (where < 0) + continue; + tmp = colors_for_drawing.acolors[0]; colors_for_drawing.acolors[0] = getxcolor (0); xlinebuffer = gfxvidinfo.linemem; if (xlinebuffer == 0) - xlinebuffer = row_map[last_max_ypos]; + xlinebuffer = row_map[where]; xlinebuffer -= linetoscr_x_adjust_bytes; fill_line (); - do_flush_line (last_max_ypos); + linestate[line] = LINE_UNDECIDED; + do_flush_line (where); colors_for_drawing.acolors[0] = tmp; - last_max_ypos++; } if (currprefs.leds_on_screen) { diff --git a/include/custom.h b/include/custom.h index 6e719a1e..02ea74fe 100755 --- a/include/custom.h +++ b/include/custom.h @@ -101,7 +101,7 @@ extern uae_u16 INTREQR (void); #define VBLANK_HZ_PAL 50 #define VBLANK_HZ_NTSC 60 -extern int maxhpos, maxvpos, minfirstline, vblank_endline, numscrlines; +extern int maxhpos, maxvpos, maxvpos_max, minfirstline, vblank_endline, numscrlines; extern int vblank_hz, fake_vblank_hz, vblank_skip; extern frame_time_t syncbase; #define NUMSCRLINES (maxvpos+1-minfirstline+1) diff --git a/include/debug.h b/include/debug.h index 52eb43fe..aba13192 100755 --- a/include/debug.h +++ b/include/debug.h @@ -10,14 +10,18 @@ #ifdef DEBUGGER #define MAX_HIST 100 +#define MAX_LINEWIDTH 90 extern int debugging; extern int exception_debugging; extern int debug_copper; extern int debug_sprite_mask; +extern int debugger_active; extern void debug(void); +extern void debugger_change(int mode); extern void activate_debugger(void); +extern void deactivate_debugger (void); extern int notinrom (void); extern const char *debuginfo(int); extern void record_copper (uaecptr addr, int hpos, int vpos); @@ -26,6 +30,9 @@ extern int mmu_init(int,uaecptr,uaecptr); extern void mmu_do_hit(void); extern void dump_aga_custom (void); extern void memory_map_dump (void); +extern void debug_help (void); +extern uaecptr dumpmem2 (uaecptr addr, char *out, int osize); +extern void update_debug_info (void); #else STATIC_INLINE void activate_debugger (void) { }; diff --git a/include/newcpu.h b/include/newcpu.h index 58c15f0b..08ca5156 100755 --- a/include/newcpu.h +++ b/include/newcpu.h @@ -286,6 +286,7 @@ extern uae_u32 REGPARAM3 get_disp_ea_020i (struct regstruct *regs, uae_u32 base, extern uae_u32 REGPARAM3 get_disp_ea_000 (struct regstruct *regs, uae_u32 base, uae_u32 dp) REGPARAM; extern void m68k_disasm_ea (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *seaddr, uae_u32 *deaddr); extern void m68k_disasm (void *f, uaecptr addr, uaecptr *nextpc, int cnt); +extern void m68k_disasm_2 (char *buf, int bufsize, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *seaddr, uae_u32 *deaddr, int safemode); extern void REGPARAM3 MakeSR (struct regstruct *regs) REGPARAM; extern void REGPARAM3 MakeFromSR (struct regstruct *regs) REGPARAM; diff --git a/include/options.h b/include/options.h index 714bc402..3229e3a2 100755 --- a/include/options.h +++ b/include/options.h @@ -9,7 +9,7 @@ #define UAEMAJOR 1 #define UAEMINOR 4 -#define UAESUBREV 1 +#define UAESUBREV 2 typedef enum { KBD_LANG_US, KBD_LANG_DK, KBD_LANG_DE, KBD_LANG_SE, KBD_LANG_FR, KBD_LANG_IT, KBD_LANG_ES } KbdLang; diff --git a/include/sysdeps.h b/include/sysdeps.h index eedf866f..d812a0e7 100755 --- a/include/sysdeps.h +++ b/include/sysdeps.h @@ -452,10 +452,13 @@ extern void write_log (const char *, ...); #endif extern void write_dlog (const char *, ...); +extern void close_console (void); +extern void reopen_console (void); extern void console_out (const char *, ...); extern void console_flush (void); extern int console_get (char *, int); extern void f_out (void *, const char *, ...); +extern char* buf_out (char *buffer, int *bufsize, const char *format, ...); extern void gui_message (const char *,...); extern int gui_message_multibutton (int flags, const char *format,...); #define write_log_err write_log diff --git a/inputdevice.c b/inputdevice.c index 32badfac..bb0e4721 100755 --- a/inputdevice.c +++ b/inputdevice.c @@ -777,7 +777,7 @@ static uaecptr get_intuitionbase(void) magicmouse_ibase = 0xffffffff; return 0; } - if (b->flags != ABFLAG_ROM) + if (b->flags != ABFLAG_ROM && b->flags != ABFLAG_RAM) return 0; p = b->xlateaddr(v2); if (!strcmp(p, "intuition.library")) @@ -809,8 +809,7 @@ static void mousehack_setpos(int mousexpos, int mouseypos) } static int mouseedge_x, mouseedge_y, mouseedge_time; -#define MOUSEEDGE_RANGE 1000 -#define MOUSEEDGE_RANGE_MENU 1000 +#define MOUSEEDGE_RANGE 300 #define MOUSEEDGE_TIME 2 void setamigamouse(int x, int y) @@ -865,7 +864,7 @@ static void mouseedge(void) melast_x = x; } if (melast_y == y) { - if (mouseedge_y < -MOUSEEDGE_RANGE_MENU) { + if (mouseedge_y < -MOUSEEDGE_RANGE) { mouseedge_y = 0; dir |= 4; goto end; diff --git a/main.c b/main.c index 810ecf77..99e08622 100755 --- a/main.c +++ b/main.c @@ -354,6 +354,7 @@ void uae_reset (int hardreset) void uae_quit (void) { + deactivate_debugger(); if (quit_program != -1) quit_program = -1; } diff --git a/newcpu.c b/newcpu.c index 159974a5..123d63c2 100755 --- a/newcpu.c +++ b/newcpu.c @@ -1851,7 +1851,7 @@ static void out_cd32io (uae_u32 pc) if (cmd == 2) { cnt--; if (cnt == 0) - activate_debugger(); + activate_debugger(1); } #endif write_log ("CMD=%d DATA=%08.8X LEN=%d %OFF=%d\n", @@ -2271,11 +2271,13 @@ static const char* ccnames[] = { "T ","F ","HI","LS","CC","CS","NE","EQ", "VC","VS","PL","MI","GE","LT","GT","LE" }; -void m68k_disasm_2 (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *seaddr, uae_u32 *deaddr, int safemode) +void m68k_disasm_2 (char *buf, int bufsize, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *seaddr, uae_u32 *deaddr, int safemode) { uaecptr newpc = 0; m68kpc_offset = addr - m68k_getpc (®s); + if (buf) + memset(buf, 0, bufsize); while (cnt-- > 0) { char instrname[100], *ccpt; int i; @@ -2293,7 +2295,8 @@ void m68k_disasm_2 (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *se for (lookup = lookuptab;lookup->mnemo != dp->mnemo; lookup++) ; - f_out (f, "%08lx ", m68k_getpc (®s) + m68kpc_offset); + buf = buf_out(buf, &bufsize, "%08lX ", m68k_getpc (®s) + m68kpc_offset); + m68kpc_offset += 2; strcpy (instrname, lookup->name); @@ -2320,25 +2323,29 @@ void m68k_disasm_2 (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *se } for (i = 0; i < (m68kpc_offset - oldpc) / 2; i++) { - f_out (f, "%04x ", get_iword_1 (oldpc + i * 2)); + buf = buf_out (buf, &bufsize, "%04x ", get_iword_1 (oldpc + i * 2)); } while (i++ < 5) - f_out (f, " "); - f_out (f, instrname); + buf = buf_out (buf, &bufsize, " "); + if (strlen(instrname) > 79) { + int i = 0; + } + + buf = buf_out (buf, &bufsize, instrname); if (ccpt != 0) { if (deaddr) *deaddr = newpc; if (cctrue(®s.ccrflags, dp->cc)) - f_out (f, " == %08lx (TRUE)", newpc); + buf = buf_out (buf, &bufsize, " == %08lX (TRUE)", newpc); else - f_out (f, " == %08lx (FALSE)", newpc); + buf = buf_out (buf, &bufsize, " == %08lX (FALSE)", newpc); } else if ((opcode & 0xff00) == 0x6100) { /* BSR */ if (deaddr) *deaddr = newpc; - f_out (f, " == %08lx", newpc); + buf = buf_out (buf, &bufsize, " == %08lX", newpc); } - f_out (f, "\n"); + buf = buf_out (buf, &bufsize, "\n"); } if (nextpc) *nextpc = m68k_getpc (®s) + m68kpc_offset; @@ -2346,11 +2353,25 @@ void m68k_disasm_2 (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *se void m68k_disasm_ea (void *f, uaecptr addr, uaecptr *nextpc, int cnt, uae_u32 *seaddr, uae_u32 *deaddr) { - m68k_disasm_2 (f, addr, nextpc, cnt, seaddr, deaddr, 1); + char *buf; + + buf = malloc((MAX_LINEWIDTH + 1) * cnt); + if (!buf) + return; + m68k_disasm_2 (buf, (MAX_LINEWIDTH + 1) * cnt, addr, nextpc, cnt, seaddr, deaddr, 1); + f_out(f, "%s", buf); + free(buf); } void m68k_disasm (void *f, uaecptr addr, uaecptr *nextpc, int cnt) { - m68k_disasm_2 (f, addr, nextpc, cnt, NULL, NULL, 0); + char *buf; + + buf = malloc((MAX_LINEWIDTH + 1) * cnt); + if (!buf) + return; + m68k_disasm_2 (buf, (MAX_LINEWIDTH + 1) * cnt, addr, nextpc, cnt, NULL, NULL, 0); + f_out(f, "%s", buf); + free(buf); } /************************************************************* diff --git a/od-win32/avioutput.c b/od-win32/avioutput.c index 60892b7b..78021d22 100755 --- a/od-win32/avioutput.c +++ b/od-win32/avioutput.c @@ -342,7 +342,6 @@ int AVIOutput_ChooseAudioCodec(HWND hwnd, char *s, int len) case ACMERR_CANCELED: AVIOutput_GetAudioFromRegistry(NULL); AVIOutput_ReleaseAudio(); - //MessageBox(hwnd, "The user chose the Cancel button or the Close command on the System menu to close the dialog box.", VersionStr, MB_OK | MB_ICONERROR | MB_APPLMODAL | MB_SETFOREGROUND); break; case ACMERR_NOTPOSSIBLE: diff --git a/od-win32/bsdsock.c b/od-win32/bsdsock.c index edbe3b6b..9bf20537 100755 --- a/od-win32/bsdsock.c +++ b/od-win32/bsdsock.c @@ -1943,7 +1943,7 @@ static BOOL CheckOnline(SB) bReturn = FALSE; // No success or aborted } - if (isfullscreen()) { + if (isfullscreen() > 0) { ShowWindow (hAmigaWnd, SW_RESTORE); SetActiveWindow(hAmigaWnd); } diff --git a/od-win32/debug_win32.c b/od-win32/debug_win32.c new file mode 100755 index 00000000..ff42c399 --- /dev/null +++ b/od-win32/debug_win32.c @@ -0,0 +1,912 @@ + /* + * WinUAE GUI debugger + * + * Copyright 2007 Karsten Bock + * Copyright 2007 Toni Wilen + * + */ + +#include "sysconfig.h" +#include "sysdeps.h" + +#include +#include +#include "resource.h" +#include "options.h" +#include "memory.h" +#include "custom.h" +#include "newcpu.h" +#include "debug.h" +#include "debug_win32.h" +#include "win32.h" +#include "win32gui.h" + +#include "uae.h" + +static HWND hDbgWnd = 0; +static HWND hOutput = 0; +static HACCEL dbgaccel = 0; + +extern int consoleopen; +extern uae_u32 get_fpsr(); + +static char linebreak[] = {'\r', '\n', '\0'}; + +#define MAXLINES 250 +#define MAXINPUTHIST 50 +#define MAXPAGECONTROLS 5 +#define MAXPAGES 10 + +static int inputfinished = 0; + +static FARPROC OldInputProc, OldMemInputProc; +static WORD* dlgtmpl; +static int reopen; + +struct histnode { + char *command; + struct histnode *prev; + struct histnode *next; +}; + +static struct histnode *firsthist, *lasthist, *currhist; +static int histcount; + +struct debuggerpage { + HWND ctrl[MAXPAGECONTROLS]; + uae_u32 addr; + char addrinput[9]; + int init; +}; +static struct debuggerpage dbgpage[MAXPAGES]; +static int currpage, pages; +static int pagetype; + +static void OutputCurrHistNode(HWND hWnd) +{ + int txtlen; + char *buf; + + if (currhist->command) { + txtlen = GetWindowTextLength(hWnd); + buf = malloc(txtlen + 1); + GetWindowText(hWnd, buf, txtlen + 1); + if (strcmp(buf, currhist->command)) { + SetWindowText(hWnd, currhist->command); + txtlen = strlen(currhist->command); + SendMessage(hWnd, EM_SETSEL, (WPARAM)txtlen, (LPARAM)txtlen); + SendMessage(hWnd, EM_SETSEL, -1, -1); + } + } +} + +static void SetPrevHistNode(HWND hWnd) +{ + if (currhist) { + if (currhist->prev) + currhist = currhist->prev; + OutputCurrHistNode(hWnd); + + } + else if (lasthist) { + currhist = lasthist; + OutputCurrHistNode(hWnd); + } +} + +static void SetNextHistNode(HWND hWnd) +{ + if (currhist) { + if (currhist->next) + currhist = currhist->next; + OutputCurrHistNode(hWnd); + } +} + +static void DeleteFromHistory(int count) +{ + int i; + struct histnode *tmp; + + for (i = 0; i < count && histcount; i++) { + tmp = firsthist; + firsthist = firsthist->next; + if (currhist == tmp) + currhist = NULL; + if (lasthist == tmp) + lasthist = NULL; + if (firsthist) + firsthist->prev = NULL; + free(tmp->command); + free(tmp); + histcount--; + } +} + +static void AddToHistory(const char *command) +{ + struct histnode *tmp; + + if (histcount > 0 && !strcmp(command, lasthist->command)) + return; + else if (histcount == MAXINPUTHIST) { + DeleteFromHistory(1); + } + tmp = lasthist; + lasthist = malloc(sizeof(struct histnode)); + if (histcount == 0) + firsthist = lasthist; + lasthist->command = strdup(command); + lasthist->next = NULL; + lasthist->prev = tmp; + if (tmp) + tmp->next = lasthist; + histcount++; + currhist = NULL; +} + +int GetInput (char *out, int maxlen) +{ + HWND hInput; + int chars; + + if (!hDbgWnd) + return 0; + inputfinished = 0; + hInput = GetDlgItem(hDbgWnd, IDC_DBG_INPUT); + chars = GetWindowText(hInput, out, maxlen); + if (chars == 0) + return 0; + WriteOutput(linebreak + 1, 2); + WriteOutput(out, strlen(out)); + WriteOutput(linebreak + 1, 2); + AddToHistory(out); + SetWindowText(hInput, ""); + return chars; +} + +static int CheckLineLimit(HWND hWnd, const char *out) +{ + char *tmp, *p; + int lines_have, lines_new = 0, lastchr, txtlen, visible; + + tmp = (char *)out; + lines_have = SendMessage(hWnd, EM_GETLINECOUNT, 0, 0); + while (strlen(tmp) > 0 && (p = strchr(tmp, '\n')) > 0) { + lines_new++; + tmp = p + 1; + } + lines_new++; + if (lines_new > MAXLINES) + return 0; + if (lines_have + lines_new > MAXLINES) { + visible = IsWindowVisible(hWnd); + if (visible) + SendMessage(hWnd, WM_SETREDRAW, FALSE, 0); + lastchr = SendMessage(hWnd, EM_LINEINDEX, lines_have + lines_new - MAXLINES, 0); + SendMessage(hWnd, EM_SETSEL, 0, lastchr); + SendMessage(hWnd, EM_REPLACESEL, FALSE, (LPARAM)""); + txtlen = GetWindowTextLength(hWnd); + SendMessage(hWnd, EM_SETSEL, (WPARAM)txtlen, (LPARAM)txtlen); + SendMessage(hWnd, EM_SETSEL, -1, -1); + if (visible) + SendMessage(hWnd, WM_SETREDRAW, TRUE, 0); + } + return 1; +} + +void WriteOutput(const char *out, int len) +{ + int txtlen, pos = 0, count, index, leave = 0; + char *buf = 0, *p, *tmp; + + if (!hOutput || !strcmp(out, ">") || len == 0) + return; + if (!CheckLineLimit(hOutput, out)) + return; + tmp = (char *)out; + for(;;) { + p = strchr(tmp, '\n'); + if (p) { + pos = p - tmp + 1; + if (pos > (MAX_LINEWIDTH + 1)) + pos = MAX_LINEWIDTH + 1; + buf = xmalloc(pos + 2); + memset(buf, 0, pos + 2); + strncpy(buf, tmp, pos - 1); + strcat(buf, linebreak); + } else if (strlen(tmp) == 0) { + leave = 1; + } else { + count = SendMessage(hOutput, EM_GETLINECOUNT, 0, 0); + index = SendMessage(hOutput, EM_LINEINDEX, count - 1, 0); + txtlen = SendMessage(hOutput, EM_LINELENGTH, index, 0); + if (strlen(tmp) + txtlen > MAX_LINEWIDTH) { + buf = xmalloc(MAX_LINEWIDTH + 3 - txtlen); + memset(buf, 0, MAX_LINEWIDTH + 3 - txtlen); + strncpy(buf, tmp, MAX_LINEWIDTH - txtlen); + strcat(buf, linebreak); + } + leave = 1; + } + txtlen = GetWindowTextLength(hOutput); + SendMessage(hOutput, EM_SETSEL, (WPARAM)txtlen, (LPARAM)txtlen); + SendMessage(hOutput, EM_REPLACESEL, FALSE, (LPARAM)(buf ? buf : tmp)); + if (buf) { + xfree(buf); + buf = 0; + tmp += pos; + } + if (leave) + return; + } +} + +static void UpdateListboxString(HWND hWnd, int pos, char *out, int mark) +{ + int count; + char text[MAX_LINEWIDTH + 1]; + COLORREF cr; + + if (!IsWindowEnabled(hWnd)) + return; + if (strlen(out) > MAX_LINEWIDTH) + out[MAX_LINEWIDTH] = '\0'; + cr = GetSysColor(COLOR_WINDOWTEXT); + count = SendMessage(hWnd, (UINT) LB_GETCOUNT, 0, 0); + if (pos < count) { + memset(text, 0, MAX_LINEWIDTH + 1); + SendMessage(hWnd, LB_GETTEXT, pos, (LPARAM)((LPTSTR)text)); + if (strcmp(out, text) != 0 && mark) + cr = GetSysColor(COLOR_HIGHLIGHT); + SendMessage(hWnd, LB_DELETESTRING, pos, 0); + } + SendMessage(hWnd, LB_INSERTSTRING, pos, (LPARAM)out); + SendMessage(hWnd, LB_SETITEMDATA, pos, cr); +} + +static int GetLBOutputLines(HWND hWnd) +{ + int lines = 0, clientsize, itemsize; + RECT rc; + + GetClientRect(hWnd, &rc); + clientsize = rc.bottom - rc.top; + itemsize = SendMessage(hWnd, LB_GETITEMHEIGHT, 0, 0); + while (clientsize > itemsize) { + lines ++; + clientsize -= itemsize; + } + return lines; +} + +static void ShowMem(int offset) +{ + uae_u32 addr; + int i; + char out[MAX_LINEWIDTH + 1]; + HWND hMemory; + + dbgpage[currpage].addr += offset; + addr = dbgpage[currpage].addr; + hMemory = GetDlgItem(hDbgWnd, IDC_DBG_MEM); + for (i = 0; i < GetLBOutputLines(hMemory); i++) { + addr = dumpmem2(addr, out, sizeof(out)); + UpdateListboxString(hMemory, i, out, FALSE); + } +} + +static int GetPrevAddr(uae_u32 addr, uae_u32 *prevaddr) +{ + uae_u32 dasmaddr, next; + + *prevaddr = addr; + dasmaddr = addr - 20; + while (dasmaddr < addr) { + next = dasmaddr + 2; + m68k_disasm_2(NULL, 0, dasmaddr, &next, 1, NULL, NULL, 0); + if (next == addr) { + *prevaddr = dasmaddr; + return 1; + } + dasmaddr = next; + } + return 0; +} + +static void ShowDasm(int direction) +{ + uae_u32 addr = 0, prev; + int i; + char out[MAX_LINEWIDTH + 1], *p; + HWND hDasm; + + hDasm = GetDlgItem(hDbgWnd, IDC_DBG_DASM); + if (!dbgpage[currpage].init) { + addr = m68k_getpc(®s); + dbgpage[currpage].init = 1; + } + else + addr = dbgpage[currpage].addr; + if (direction > 0) { + m68k_disasm_2(NULL, 0, addr, &addr, 1, NULL, NULL, 0); + if (!addr || addr < dbgpage[currpage].addr) + addr = dbgpage[currpage].addr; + } + else if (direction < 0 && addr > 0) { + if (GetPrevAddr(addr, &prev)) + addr = prev; + else + addr -= 2; + } + if (addr % 2) + return; + dbgpage[currpage].addr = addr; + for (i = 0; i < GetLBOutputLines(hDasm); i++) { + m68k_disasm_2(out, sizeof(out), addr, &addr, 1, NULL, NULL, 0); + p = strchr(out, '\n'); + if (p) + *p = '\0'; + if (addr > dbgpage[currpage].addr) + UpdateListboxString(hDasm, i, out, FALSE); + else + UpdateListboxString(hDasm, i, "", FALSE); + } +} + +static void SetMemToPC(void) +{ + int i, id; + + dbgpage[currpage].addr = m68k_getpc(®s); + sprintf(dbgpage[currpage].addrinput, "%08lX", dbgpage[currpage].addr); + for (i = 0; i < MAXPAGECONTROLS; i++) { + id = GetDlgCtrlID(dbgpage[currpage].ctrl[i]); + if (id == IDC_DBG_MEMINPUT) + SetWindowText(dbgpage[currpage].ctrl[i], dbgpage[currpage].addrinput); + } + ShowDasm(0); +} + +static void ShowPage(int index, int force) +{ + int i, id; + + if (index >= pages || ((index == currpage) && !force)) + return; + if (currpage >= 0) { + for (i = 0; i < MAXPAGECONTROLS; i++) { + if (dbgpage[currpage].ctrl[i]) { + id = GetDlgCtrlID(dbgpage[currpage].ctrl[i]); + if (id == IDC_DBG_MEMINPUT) + GetWindowText(dbgpage[currpage].ctrl[i], dbgpage[currpage].addrinput, 9); + ShowWindow(dbgpage[currpage].ctrl[i], SW_HIDE); + } + } + } + pagetype = 0; + currpage = index; + for (i = 0; i < MAXPAGECONTROLS; i++) { + if (dbgpage[index].ctrl[i]) { + id = GetDlgCtrlID(dbgpage[index].ctrl[i]); + if (id == IDC_DBG_OUTPUT1 || id == IDC_DBG_OUTPUT2) { + hOutput = dbgpage[index].ctrl[i]; + } else if (id == IDC_DBG_MEM) { + ShowMem(0); + pagetype = id; + } else if (id == IDC_DBG_DASM) { + ShowDasm(0); + pagetype = id; + } else if (id == IDC_DBG_MEMINPUT) { + SetWindowText(dbgpage[index].ctrl[i], dbgpage[index].addrinput); + } + ShowWindow(dbgpage[index].ctrl[i], SW_SHOW); + } + } +} + +static void AddPage(int *iddata) // iddata[0] = idcount! +{ + int i; + + if (pages >= MAXPAGES) + return; + memset(&dbgpage[pages], 0, sizeof(struct debuggerpage)); + for (i = 0; i < iddata[0]; i++) { + dbgpage[pages].ctrl[i] = GetDlgItem(hDbgWnd, iddata[i + 1]); + ShowWindow(dbgpage[pages].ctrl[i], SW_HIDE); + } + pages++; +} + +static void InitPages(void) +{ + int i; + + int dpage[][MAXPAGECONTROLS + 1] = { + { 1, IDC_DBG_OUTPUT1 }, + { 1, IDC_DBG_OUTPUT2 }, + { 4, IDC_DBG_MEM, IDC_DBG_MEMINPUT, IDC_DBG_MEMUP, IDC_DBG_MEMDOWN }, + { 4, IDC_DBG_MEM, IDC_DBG_MEMINPUT, IDC_DBG_MEMUP, IDC_DBG_MEMDOWN }, + { 5, IDC_DBG_DASM, IDC_DBG_MEMINPUT, IDC_DBG_MEMTOPC }, + { 5, IDC_DBG_DASM, IDC_DBG_MEMINPUT, IDC_DBG_MEMTOPC } + }; + + pages = 0; + for (i = 0; i < (sizeof(dpage) / sizeof(dpage[0])); i++) + AddPage(dpage[i]); +} + +static LRESULT CALLBACK InputProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + switch (message) { + case WM_KEYUP: + switch (wParam) { + case VK_RETURN: + inputfinished = 1; + break; + case VK_UP: + SetPrevHistNode(hWnd); + return TRUE; + case VK_DOWN: + SetNextHistNode(hWnd); + return TRUE; + } + break; + } + return CallWindowProc((WNDPROC)OldInputProc, hWnd, message, wParam, lParam); +} + +static LRESULT CALLBACK MemInputProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + HANDLE hdata; + LPTSTR lptstr; + char allowed[] = "1234567890abcdefABCDEF"; + int ok = 1; + char addrstr[11]; + uae_u32 addr; + + switch (message) { + case WM_CHAR: + if (wParam == VK_BACK) + break; + if (!strchr(allowed, wParam)) + return TRUE; + break; + case WM_PASTE: + if (!OpenClipboard(NULL)) + return TRUE; + hdata = GetClipboardData(CF_TEXT); + if (hdata) { + lptstr = GlobalLock(hdata); + if (lptstr) { + if (strspn(lptstr, allowed) != strlen(lptstr)) + ok = 0; + GlobalUnlock(hdata); + } + } + CloseClipboard(); + if (!ok) + return TRUE; + break; + case WM_KEYUP: + switch (wParam) { + case VK_RETURN: + sprintf(addrstr, "0x"); + GetWindowText(hWnd, addrstr + 2, 9); + addr = strtoul(addrstr, NULL, 0); + dbgpage[currpage].addr = addr; + ShowPage(currpage, TRUE); + break; + } + break; + } + return CallWindowProc((WNDPROC)OldMemInputProc, hWnd, message, wParam, lParam); +} + +static void moveupdown(int dir) +{ + if (pagetype == IDC_DBG_MEM) { + if (dir > 1 || dir < -1) + dir *= 4; + ShowMem(dir * 16); + } else if (pagetype == IDC_DBG_DASM) { + if (dir > 1 || dir < -1) + dir *= 4; + while(dir) { + ShowDasm(dir > 0 ? 1 : -1); + if (dir > 0) + dir--; + if (dir < 0) + dir++; + } + } +} + +static int width_adjust, height_adjust; +static RECT dlgRect; + +static void adjustitem(HWND hwnd, int x, int y, int w, int h) +{ + WINDOWINFO pwi; + RECT *r; + pwi.cbSize = sizeof pwi; + GetWindowInfo(hwnd, &pwi); + r = &pwi.rcWindow; + r->bottom -= r->top; + r->right -= r->left; + r->left -= dlgRect.left; + r->top -= dlgRect.top; + r->left += x; + r->top += y; + r->right += w; + r->bottom += h; + MoveWindow(hwnd, r->left, r->top, r->right, r->bottom, TRUE); +} + +static BOOL CALLBACK childenumproc (HWND hwnd, LPARAM lParam) +{ + int id1y[] = { IDC_DBG_OUTPUT1, IDC_DBG_OUTPUT2, IDC_DBG_MEM, IDC_DBG_DASM, -1 }; + int id2y[] = { IDC_DBG_INPUT, IDC_DBG_HELP, -1 }; + + int id1x[] = { IDC_DBG_OUTPUT1, IDC_DBG_OUTPUT2, IDC_DBG_MEM, IDC_DBG_DASM, + IDC_DBG_AMEM, IDC_DBG_PREFETCH, IDC_DBG_INPUT, -1 }; + int id2x[] = { IDC_DBG_HELP, IDC_DBG_CCR, IDC_DBG_SP_VBR, IDC_DBG_MISC, + IDC_DBG_FPREG, IDC_DBG_FPSR, -1 }; + + int dlgid, j; + + dlgid = GetDlgCtrlID(hwnd); + + j = 0; + while (id1y[j] >= 0) { + if (id1y[j] == dlgid) + adjustitem(hwnd, 0, 0, 0, height_adjust); + j++; + } + j = 0; + while (id2y[j] >= 0) { + if (id2y[j] == dlgid) + adjustitem(hwnd, 0, height_adjust, 0, 0); + j++; + } + j = 0; + while (id1x[j] >= 0) { + if (id1x[j] == dlgid) + adjustitem(hwnd, 0, 0, width_adjust,0); + j++; + } + j = 0; + while (id2x[j] >= 0) { + if (id2x[j] == dlgid) + adjustitem(hwnd, width_adjust,0, 0, 0); + j++; + } + return TRUE; +} + +static void AdjustDialog(HWND hDlg) +{ + RECT r, r2; + GetClientRect(hDlg, &r); + width_adjust = (r.right - r.left) - (dlgRect.right - dlgRect.left); + height_adjust = (r.bottom - r.top) - (dlgRect.bottom - dlgRect.top); + GetWindowRect(hDlg, &dlgRect); + r2.left = r2.top = r2.right = r2.bottom = 0; + AdjustWindowRect(&r2, WS_POPUP | WS_CAPTION | WS_THICKFRAME, FALSE); + dlgRect.left -= r2.left; + dlgRect.top -= r2.top; + EnumChildWindows (hDlg, &childenumproc, 0); + dlgRect = r; +} + + +static LRESULT CALLBACK DebuggerProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + int len; + HWND hwnd; + DRAWITEMSTRUCT *pdis; + HDC hdc; + RECT rc; + char text[MAX_LINEWIDTH + 1]; + HFONT hfont, hfontold; + TEXTMETRIC tm; + + switch (message) { + case WM_INITDIALOG: + { + int newpos = 0; + LONG x, y, w, h; + DWORD regkeytype; + DWORD regkeysize = sizeof(LONG); + GetClientRect(hDlg, &dlgRect); + if (hWinUAEKey) { + newpos = 1; + if (RegQueryValueEx (hWinUAEKey, "DebuggerPosX", 0, ®keytype, (LPBYTE)&x, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "DebuggerPosY", 0, ®keytype, (LPBYTE)&y, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "DebuggerPosW", 0, ®keytype, (LPBYTE)&w, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "DebuggerPosH", 0, ®keytype, (LPBYTE)&h, ®keysize) != ERROR_SUCCESS) + newpos = 0; + } + if (newpos) { + RECT rc; + rc.left = x; + rc.top = y; + rc.right = x + w; + rc.bottom = y + h; + if (MonitorFromRect (&rc, MONITOR_DEFAULTTONULL) != NULL) + SetWindowPos(hDlg, 0, x, y, w, h, SWP_NOOWNERZORDER | SWP_NOREDRAW | SWP_NOACTIVATE | SWP_DEFERERASE); + } + SendMessage(hDlg, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon (GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_APPICON))); + hwnd = GetDlgItem(hDlg, IDC_DBG_INPUT); + OldInputProc = (FARPROC)SetWindowLong(hwnd, GWL_WNDPROC, (DWORD)InputProc); + SendMessage(hwnd, EM_LIMITTEXT, MAX_LINEWIDTH, 0); + hwnd = GetDlgItem(hDlg, IDC_DBG_MEMINPUT); + OldMemInputProc = (FARPROC)SetWindowLong(hwnd, GWL_WNDPROC, (DWORD)MemInputProc); + SendMessage(hwnd, EM_LIMITTEXT, 8, 0); + if (!currprefs.cpu_compatible) { + hwnd = GetDlgItem(hDlg, IDC_DBG_PREFETCH); + EnableWindow(hwnd, FALSE); + } + if (currprefs.cpu_level < 2) { + hwnd = GetDlgItem(hDlg, IDC_DBG_FPREG); + EnableWindow(hwnd, FALSE); + hwnd = GetDlgItem(hDlg, IDC_DBG_FPSR); + EnableWindow(hwnd, FALSE); + } + currpage = -1; + firsthist = lasthist = currhist = NULL; + histcount = 0; + inputfinished = 0; + AdjustDialog(hDlg); + return TRUE; + } + case WM_CLOSE: + DestroyWindow(hDlg); + uae_quit(); + return TRUE; + case WM_DESTROY: + { + RECT r; + if (GetWindowRect (hDlg, &r) && hWinUAEKey) { + r.right -= r.left; + r.bottom -= r.top; + RegSetValueEx (hWinUAEKey, "DebuggerPosX", 0, REG_DWORD, (LPBYTE)&r.left, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "DebuggerPosY", 0, REG_DWORD, (LPBYTE)&r.top, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "DebuggerPosW", 0, REG_DWORD, (LPBYTE)&r.right, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "DebuggerPosH", 0, REG_DWORD, (LPBYTE)&r.bottom, sizeof(LONG)); + } + hDbgWnd = 0; + PostQuitMessage(0); + DeleteFromHistory(histcount); + consoleopen = 0; + return TRUE; + } + case WM_GETMINMAXINFO: + { + MINMAXINFO *mmi = (MINMAXINFO*)lParam; + mmi->ptMinTrackSize.x = 640; + mmi->ptMinTrackSize.y = 480; + return TRUE; + } + case WM_EXITSIZEMOVE: + { + AdjustDialog(hDlg); + return TRUE; + } + + case WM_CTLCOLORSTATIC: + SetBkColor((HDC)wParam, GetSysColor(COLOR_WINDOW)); + return (LRESULT)GetSysColorBrush(COLOR_WINDOW); + case WM_CTLCOLORLISTBOX: + hwnd = (HWND)lParam; + if (!IsWindowEnabled(hwnd)) { + SetBkColor((HDC)wParam, GetSysColor(COLOR_3DFACE)); + return (LRESULT)GetSysColorBrush(COLOR_3DFACE); + } + SetBkColor((HDC)wParam, GetSysColor(COLOR_WINDOW)); + return (LRESULT)GetSysColorBrush(COLOR_WINDOW); + case WM_COMMAND: + switch (LOWORD(wParam)) { + case IDC_DBG_HELP: + WriteOutput(linebreak + 1, 2); + debug_help(); + return TRUE; + case ID_DBG_PAGE1: + case ID_DBG_PAGE2: + case ID_DBG_PAGE3: + case ID_DBG_PAGE4: + case ID_DBG_PAGE5: + case ID_DBG_PAGE6: + // IDs have to be consecutive and in order of page order for this to work + ShowPage(LOWORD(wParam) - ID_DBG_PAGE1, FALSE); + return TRUE; + case IDC_DBG_MEMUP: + moveupdown(-1); + return TRUE; + case IDC_DBG_MEMDOWN: + moveupdown(1); + return TRUE; + case IDC_DBG_MEMUPFAST: + moveupdown(-2); + return TRUE; + case IDC_DBG_MEMDOWNFAST: + moveupdown(2); + return TRUE; + case IDC_DBG_MEMTOPC: + SetMemToPC(); + return TRUE; + } + break; + case WM_MEASUREITEM: + hdc = GetDC(hDlg); + hfont = (HFONT)SendMessage(hDlg, WM_GETFONT, 0, 0); + hfontold = (HFONT)SelectObject(hdc, hfont); + GetTextMetrics(hdc, &tm); + ((MEASUREITEMSTRUCT*)(lParam))->itemHeight = tm.tmHeight + tm.tmExternalLeading; + SelectObject(hdc, hfontold); + ReleaseDC(hDlg, hdc); + return TRUE; + case WM_DRAWITEM: + pdis = (DRAWITEMSTRUCT *)lParam; + hdc = pdis->hDC; + rc = pdis->rcItem; + SetBkMode(hdc, TRANSPARENT); + if (pdis->itemID < 0) { + if (pdis->itemAction & ODA_FOCUS) + DrawFocusRect(hdc, &rc); + return TRUE; + } + memset(text, MAX_LINEWIDTH + 1, 0); + len = SendMessage(pdis->hwndItem, LB_GETTEXT, pdis->itemID, (LPARAM)(LPSTR)text); + if (!IsWindowEnabled(pdis->hwndItem)) { + FillRect(hdc, &rc, GetSysColorBrush(COLOR_3DFACE)); + SetBkColor(hdc, GetSysColor(COLOR_3DFACE)); + } + else { + FillRect(hdc, &rc, GetSysColorBrush(COLOR_WINDOW)); + SetBkColor(hdc, GetSysColor(COLOR_WINDOW)); + } + SetTextColor(hdc, pdis->itemData); + if (len > 0) + TextOut(hdc, rc.left, rc.top, text, strlen(text)); + if ((pdis->itemState) & (ODS_FOCUS)) + DrawFocusRect(hdc, &rc); + return TRUE; + } + return FALSE; +} + +int open_debug_window(void) +{ + + struct newresource *nr; + + if (hDbgWnd) + return 0; + reopen = 0; + dbgaccel = LoadAccelerators(hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDR_DBGACCEL)); + nr = getresource(IDD_DEBUGGER); + if (nr) { + hDbgWnd = CreateDialogIndirect (nr->inst, nr->resource, NULL, DebuggerProc); + freescaleresource(nr); + } + if (!hDbgWnd) + return 0; + InitPages(); + ShowPage(0, TRUE); + ShowWindow(hDbgWnd, SW_SHOWNORMAL); + UpdateWindow(hDbgWnd); + update_debug_info(); + return 1; +} + +void close_debug_window(void) +{ + DestroyWindow(hDbgWnd); + } + +int console_get_gui (char *out, int maxlen) +{ + MSG msg; + int ret; + + while ((ret = GetMessage(&msg, NULL, 0, 0)) != 0) { + if (!debugger_active || ret == -1) { + return 0; + } else if (!IsWindow(hDbgWnd) || !TranslateAccelerator(hDbgWnd, dbgaccel, &msg) || !IsDialogMessage(hDbgWnd, &msg)) { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + if (inputfinished) + return GetInput(out, maxlen); + } + return 0; +} + +void update_debug_info(void) +{ + int i; + char out[MAX_LINEWIDTH + 1]; + HWND hwnd; + struct instr *dp; + struct mnemolookup *lookup1, *lookup2; + uae_u32 fpsr; + + if (!hDbgWnd) + return; + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_DREG); + for (i = 0; i < 8; i++) { + sprintf(out, "D%d: %08lX", i, m68k_dreg(®s, i)); + UpdateListboxString(hwnd, i, out, TRUE); + } + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_AREG); + for (i = 0; i < 8; i++) { + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_AREG); + sprintf(out, "A%d: %08lX", i, m68k_areg(®s, i)); + UpdateListboxString(hwnd, i, out, TRUE); + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_AMEM); + dumpmem2(m68k_areg(®s, i), out, sizeof(out)); + UpdateListboxString(hwnd, i, out + 9, TRUE); + } + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_CCR); + UpdateListboxString(hwnd, 0, GET_XFLG(®s.ccrflags) ? "X: 1" : "X: 0", TRUE); + UpdateListboxString(hwnd, 1, GET_NFLG(®s.ccrflags) ? "N: 1" : "N: 0", TRUE); + UpdateListboxString(hwnd, 2, GET_ZFLG(®s.ccrflags) ? "Z: 1" : "Z: 0", TRUE); + UpdateListboxString(hwnd, 3, GET_VFLG(®s.ccrflags) ? "V: 1" : "V: 0", TRUE); + UpdateListboxString(hwnd, 4, GET_CFLG(®s.ccrflags) ? "C: 1" : "C: 0", TRUE); + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_SP_VBR); + sprintf(out, "USP: %08lX", regs.usp); + UpdateListboxString(hwnd, 0, out, TRUE); + sprintf(out, "ISP: %08lX", regs.isp); + UpdateListboxString(hwnd, 1, out, TRUE); + sprintf(out, "MSP: %08lX", regs.msp); + UpdateListboxString(hwnd, 2, out, TRUE); + sprintf(out, "VBR: %08lX", regs.vbr); + UpdateListboxString(hwnd, 3, out, TRUE); + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_MISC); + sprintf(out, "T: %d%d", regs.t1, regs.t0); + UpdateListboxString(hwnd, 0, out, TRUE); + sprintf(out, "S: %d", regs.s); + UpdateListboxString(hwnd, 1, out, TRUE); + sprintf(out, "M: %d", regs.m); + UpdateListboxString(hwnd, 2, out, TRUE); + sprintf(out, "IMASK: %d", regs.intmask); + UpdateListboxString(hwnd, 3, out, TRUE); + sprintf(out, "STP: %d", regs.stopped); + UpdateListboxString(hwnd, 4, out, TRUE); + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_PC); + sprintf(out, "PC: %08lX", m68k_getpc(®s)); + UpdateListboxString(hwnd, 0, out, TRUE); + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_PREFETCH); + dp = table68k + regs.irc; + for (lookup1 = lookuptab; lookup1->mnemo != dp->mnemo; lookup1++); + dp = table68k + regs.ir; + for (lookup2 = lookuptab; lookup2->mnemo != dp->mnemo; lookup2++); + sprintf(out, "Prefetch: %04X (%s) %04X (%s)", regs.irc, lookup1->name, regs.ir, lookup2->name); + UpdateListboxString(hwnd, 0, out, TRUE); + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_FPREG); + for (i = 0; i < 8; i++) { + sprintf(out, "FP%d: %g", i, regs.fp[i]); + UpdateListboxString(hwnd, i, out, TRUE); + } + + hwnd = GetDlgItem(hDbgWnd, IDC_DBG_FPSR); + fpsr = get_fpsr(); + UpdateListboxString(hwnd, 0, ((fpsr & 0x8000000) != 0) ? "N: 1" : "N: 0", TRUE); + UpdateListboxString(hwnd, 1, ((fpsr & 0x4000000) != 0) ? "Z: 1" : "Z: 0", TRUE); + UpdateListboxString(hwnd, 2, ((fpsr & 0x2000000) != 0) ? "I: 1" : "I: 0", TRUE); + UpdateListboxString(hwnd, 3, ((fpsr & 0x1000000) != 0) ? "NAN: 1" : "NAN: 0", TRUE); + + ShowPage(currpage, TRUE); +} diff --git a/od-win32/debug_win32.h b/od-win32/debug_win32.h new file mode 100755 index 00000000..ee7b0d38 --- /dev/null +++ b/od-win32/debug_win32.h @@ -0,0 +1,44 @@ +#ifndef __DEBUG_WIN32_H__ +#define __DEBUG_WIN32_H__ + +extern int open_debug_window(void); +extern void close_debug_window(void); +extern void WriteOutput(const char *out, int len); +extern int GetInput (char *out, int maxlen); +extern int console_get_gui (char *out, int maxlen); + +#include +typedef struct { + WORD dlgVer; + WORD signature; + DWORD helpID; + DWORD exStyle; + DWORD style; + WORD cDlgItems; + short x; + short y; + short cx; + short cy; +} DLGTEMPLATEEX; + +typedef struct { + WORD pointsize; + WORD weight; + BYTE italic; + BYTE charset; + WCHAR typeface[0]; +} DLGTEMPLATEEX_END; + +typedef struct { + DWORD helpID; + DWORD exStyle; + DWORD style; + short x; + short y; + short cx; + short cy; + DWORD id; +} DLGITEMTEMPLATEEX; +#include + +#endif diff --git a/od-win32/dinput.c b/od-win32/dinput.c index 178e41cc..9ca6bd91 100755 --- a/od-win32/dinput.c +++ b/od-win32/dinput.c @@ -486,7 +486,7 @@ static void handle_rawinput_2 (RAWINPUT *raw) } if (focus) { - if (mouseactive || isfullscreen ()) { + if (mouseactive || isfullscreen () > 0) { for (i = 0; i < (5 > did->buttons ? did->buttons : 5); i++) { if (rm->usButtonFlags & (3 << (i * 2))) setmousebuttonstate (num, i, (rm->usButtonFlags & (1 << (i * 2))) ? 1 : 0); @@ -497,7 +497,7 @@ static void handle_rawinput_2 (RAWINPUT *raw) } if (did->buttons >= 3 && (rm->usButtonFlags & RI_MOUSE_MIDDLE_BUTTON_DOWN)) { if (currprefs.win32_middle_mouse) { - if (isfullscreen ()) + if (isfullscreen () > 0) minimizewindow (); if (mouseactive) setmouseactive(0); @@ -1058,7 +1058,7 @@ static void read_mouse (void) DWORD elements; HRESULT hr; int i, j, k; - int fs = isfullscreen(); + int fs = isfullscreen() > 0 ? 1 : 0; for (i = 0; i < MAX_INPUT_DEVICES; i++) { struct didata *did = &di_mouse[i]; @@ -1116,7 +1116,7 @@ static void read_mouse (void) } } if (currprefs.win32_middle_mouse && dimofs == DIMOFS_BUTTON2 && state) { - if (isfullscreen ()) + if (isfullscreen () > 0) minimizewindow (); if (mouseactive) setmouseactive(0); diff --git a/od-win32/direct3d.c b/od-win32/direct3d.c index f7848381..10efa307 100755 --- a/od-win32/direct3d.c +++ b/od-win32/direct3d.c @@ -196,6 +196,7 @@ static int createtexture (int w, int h) write_log ("D3D: %d*%d texture allocated, bits per pixel %d\n", ww, hh, t_depth); return 1; } + static int createsltexture (void) { UINT ww = required_sl_texture_w; @@ -309,7 +310,7 @@ const char *D3D_init (HWND ahwnd, int w_w, int w_h, int t_w, int t_h, int depth) IDirect3D9_GetDeviceCaps(d3d, adapter, D3DDEVTYPE_HAL, &d3dCaps); memset (&dpp, 0, sizeof (dpp)); - dpp.Windowed = currprefs.gfx_afullscreen ? FALSE : TRUE; + dpp.Windowed = isfullscreen() <= 0; dpp.BackBufferFormat = mode.Format; dpp.BackBufferCount = 1; dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; @@ -318,7 +319,7 @@ const char *D3D_init (HWND ahwnd, int w_w, int w_h, int t_w, int t_h, int depth) dpp.BackBufferHeight = w_h; dpp.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; vsync2 = 0; - if (currprefs.gfx_afullscreen) { + if (isfullscreen() > 0) { dpp.FullScreen_RefreshRateInHz = currprefs.gfx_refreshrate; if (currprefs.gfx_vsync > 0) { dpp.PresentationInterval = D3DPRESENT_INTERVAL_ONE; diff --git a/od-win32/hardfile_win32.c b/od-win32/hardfile_win32.c index 89aa99df..f87f1d4f 100755 --- a/od-win32/hardfile_win32.c +++ b/od-win32/hardfile_win32.c @@ -32,7 +32,7 @@ struct uae_driveinfo { char product_id[128]; char product_rev[128]; char product_serial[128]; - char device_name[256]; + char device_name[2048]; char device_path[2048]; uae_u64 size; uae_u64 offset; @@ -817,6 +817,10 @@ Return Value: strcat (udi->device_name, " "); strcat (udi->device_name, udi->product_serial); } + if (!udi->device_name[0]) { + write_log("empty device id?!?, replacing with device path\n"); + strcpy (udi->device_name, udi->device_path); + } write_log ("device id string: '%s'\n", udi->device_name); if (!DeviceIoControl (hDevice, IOCTL_DISK_GET_DRIVE_GEOMETRY, NULL, 0, (void*)&dg, sizeof (dg), &returnedLength, NULL)) { diff --git a/od-win32/ioport.c b/od-win32/ioport.c index 54ed666b..8032c871 100755 --- a/od-win32/ioport.c +++ b/od-win32/ioport.c @@ -312,7 +312,7 @@ int parallel_direct_read_status (uae_u8 *vp) int parallel_direct_write_data (uae_u8 v, uae_u8 dir) { - PARAPORT_CYCLE c[2]; + PARAPORT_CYCLE c[3]; int ok = 1; if (!pport) @@ -321,15 +321,18 @@ int parallel_direct_write_data (uae_u8 v, uae_u8 dir) write_log ("PARAPORT: unsupported mixed i/o attempted, DATA=%02.2X DIR=%02.2X, ignored\n", v, dir); return 0; } - memset (c + 0, 0, sizeof (PARAPORT_CYCLE)); - memset (c + 1, 0, sizeof (PARAPORT_CYCLE)); + memset (c, 0, 3 * sizeof (PARAPORT_CYCLE)); + c[0].Data = v; c[0].MaskData = 0xff; c[0].MaskControl = PARAPORT_MASK_CONTROL_STROBE; - c[0].Control = PARAPORT_MASK_CONTROL_STROBE; - c[0].RepeatFactor = 1; + c[1].MaskControl = PARAPORT_MASK_CONTROL_STROBE; - if (!pp_executecycle (pport, c, 2)) { + c[1].Control = PARAPORT_MASK_CONTROL_STROBE; + + c[2].MaskControl = PARAPORT_MASK_CONTROL_STROBE; + + if (!pp_executecycle (pport, c, 3)) { write_log ("PARAPORT: write executeCycle failed, data=%02.2X\n", v); return 0; } @@ -340,19 +343,23 @@ int parallel_direct_write_data (uae_u8 v, uae_u8 dir) int parallel_direct_read_data (uae_u8 *v) { static uae_u8 olda, oldb; - PARAPORT_CYCLE c[2]; + PARAPORT_CYCLE c[3]; int ok = 1; if (!pport) return 0; - memset (c + 0, 0, sizeof (PARAPORT_CYCLE)); - memset (c + 1, 0, sizeof (PARAPORT_CYCLE)); + memset (c, 0, 3 * sizeof (PARAPORT_CYCLE)); + c[0].MaskData = 0xff; c[0].MaskControl = PARAPORT_MASK_CONTROL_DIRECTION | PARAPORT_MASK_CONTROL_STROBE; - c[0].Control = PARAPORT_MASK_CONTROL_DIRECTION | PARAPORT_MASK_CONTROL_STROBE; - c[0].RepeatFactor = 1; + c[0].Control = PARAPORT_MASK_CONTROL_DIRECTION; + c[1].MaskControl = PARAPORT_MASK_CONTROL_STROBE; - if (!pp_executecycle (pport, c, 2)) { + c[1].Control = PARAPORT_MASK_CONTROL_STROBE; + + c[2].MaskControl = PARAPORT_MASK_CONTROL_STROBE; + + if (!pp_executecycle (pport, c, 3)) { write_log ("PARAPORT: DATA read executeCycle failed\n"); return 0; } diff --git a/od-win32/keyboard_win32.c b/od-win32/keyboard_win32.c index b2dcc7c1..5c5d50b0 100755 --- a/od-win32/keyboard_win32.c +++ b/od-win32/keyboard_win32.c @@ -361,7 +361,7 @@ void my_kbd_handler (int keyboard, int scancode, int newstate) if (ctrlpressed ()) { code = AKS_TOGGLEFULLSCREEN; } else if (shiftpressed () || specialpressed ()) { - if (!isfullscreen()) { + if (isfullscreen() <= 0) { disablecapture (); code = AKS_ENTERDEBUGGER; } diff --git a/od-win32/makeexe.bat b/od-win32/makeexe.bat index 1a476fa6..760674d5 100755 --- a/od-win32/makeexe.bat +++ b/od-win32/makeexe.bat @@ -7,6 +7,7 @@ zip -9 -r c:\projects\winuae\src\od-win32\winuae.zip * cd c:\projects\winuae\src\od-win32 copy installwinuae.exe d:\amiga\InstallWinUAE%1.exe copy winuae.zip d:\amiga\WinUAE%1.zip +copy resourcedll\release\resourcedll.dll d:\amiga\WinUAE_default.dll cdd d:\amiga zip -9 WinUAE%1_translation WinUAE_default.dll translation.txt del translation.txt diff --git a/od-win32/opengl.c b/od-win32/opengl.c index d373753e..6aaa6821 100755 --- a/od-win32/opengl.c +++ b/od-win32/opengl.c @@ -200,7 +200,7 @@ const char *OGL_init (HWND ahwnd, int w_w, int w_h, int t_w, int t_h, int depth) hwnd = ahwnd; total_textures = 2; - if (currprefs.gfx_afullscreen && WIN32GFX_GetDepth (TRUE) < 15) { + if (isfullscreen() > 0 && WIN32GFX_GetDepth (TRUE) < 15) { strcpy (errmsg, "OPENGL: display depth must be at least 15 bit"); return errmsg; } @@ -218,7 +218,7 @@ const char *OGL_init (HWND ahwnd, int w_w, int w_h, int t_w, int t_h, int depth) if(!arbMultisampleSupported) { PixelFormat = ChoosePixelFormat (openglhdc, &pfd); // Find A Compatible Pixel Format - if (PixelFormat == 0) { // Did We Find A Compatible Format? + if (PixelFormat == 0) { // Did We Find A Compatible Format? strcpy (errmsg, "OPENGL: can't find suitable pixelformat"); return errmsg; } @@ -432,7 +432,7 @@ static void OGL_swapinterval (void) doublevsync = 0; if (wglSwapIntervalEXT) { int i1, i2; - i1 = (currprefs.gfx_vsync > 0 && currprefs.gfx_afullscreen) ? (currprefs.gfx_refreshrate > 85 ? 2 : 1) : 0; + i1 = (currprefs.gfx_vsync > 0 && isfullscreen() > 0) ? (currprefs.gfx_refreshrate > 85 ? 2 : 1) : 0; if (turbo_emulation) i1 = 0; wglSwapIntervalEXT (i1); i2 = wglGetSwapIntervalEXT (); diff --git a/od-win32/picasso96_win.c b/od-win32/picasso96_win.c index 5faef01f..b391a51d 100755 --- a/od-win32/picasso96_win.c +++ b/od-win32/picasso96_win.c @@ -2672,7 +2672,7 @@ uae_u32 REGPARAM2 picasso_BlitPattern (struct regstruct *regs) case 1: { uae_u8 *addr = uae_mem2 + bits; - do_put_mem_byte (addr, (uae_u8)(do_get_mem_byte (addr) ^ fgpen)); + do_put_mem_byte (addr, (uae_u8)(do_get_mem_byte (addr) ^ 0xff)); } break; case 2: @@ -2858,7 +2858,7 @@ uae_u32 REGPARAM2 picasso_BlitTemplate (struct regstruct *regs) case 1: { uae_u8 *addr = uae_mem2 + bits; - do_put_mem_byte (addr, (uae_u8)(do_get_mem_byte (addr) ^ fgpen)); + do_put_mem_byte (addr, (uae_u8)(do_get_mem_byte (addr) ^ 0xff)); } break; case 2: @@ -2957,7 +2957,7 @@ void init_hz_p96 (void) { int rate; p96syncrate = maxvpos * vblank_hz; - if (isfullscreen ()) + if (isfullscreen () > 0) rate = DirectDraw_CurrentRefreshRate (); else rate = abs (currprefs.gfx_refreshrate); diff --git a/od-win32/resources/resource b/od-win32/resources/resource new file mode 100755 index 00000000..071d0279 --- /dev/null +++ b/od-win32/resources/resource @@ -0,0 +1,932 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by winuae.rc +// +#define IDS_KICKSTART 1 +#define IDS_DISK 2 +#define IDS_DISPLAY 3 +#define IDC_HARDDRIVE_IMAGE 3 +#define IDS_HARDDISK 4 +#define IDS_FLOPPY 5 +#define IDS_ABOUT 6 +#define IDS_LOADSAVE 7 +#define IDS_AVIOUTPUT 8 +#define IDS_PORTS 9 +#define IDS_MISC1 10 +#define IDS_MEMORY 11 +#define IDS_CPU 12 +#define IDS_CHIPSET 13 +#define IDS_INPUT 14 +#define IDS_OPENGL 15 +#define IDS_FILTER 15 +#define IDS_MISC2 16 +#define IDS_PATHS 17 +#define IDS_QUICKSTART 18 +#define IDS_FRONTEND 19 +#define IDS_CHIPSET2 20 +#define IDS_EXTTEXT 100 +#define IDS_EXTACTUAL 101 +#define IDS_SOUND 102 +#define IDS_CDROM 103 +#define IDS_FRAMERATE 104 +#define IDS_SECOND 105 +#define IDS_THIRD 106 +#define IDD_KICKSTART 107 +#define IDS_FOURTH 107 +#define IDD_DISPLAY 108 +#define IDS_FIFTH 108 +#define IDD_MEMORY 109 +#define IDS_SIXTH 109 +#define IDD_FLOPPY 110 +#define IDS_SEVENTH 110 +#define IDD_CPU 111 +#define IDS_EIGHTH 111 +#define IDD_ABOUT 112 +#define IDS_NINTH 112 +#define IDD_HARDDISK 113 +#define IDS_TENTH 113 +#define IDS_SELECTADF 114 +#define IDS_ADF 115 +#define IDS_CHOOSEBLANK 116 +#define IDS_SELECTHDF 117 +#define IDS_HDF 118 +#define IDS_SELECTUAE 119 +#define IDS_UAE 120 +#define IDS_SELECTROM 121 +#define IDD_SOUND 122 +#define IDS_ROM 122 +#define IDI_APPICON 123 +#define IDS_SELECTKEY 123 +#define IDI_CPU 124 +#define IDS_KEY 124 +#define IDI_ABOUT 125 +#define IDS_SELECTINFO 125 +#define IDS_NONE 126 +#define IDS_VOLUME 127 +#define IDI_HARDDISK 128 +#define IDS_PATH 128 +#define IDS_RW 129 +#define IDI_SOUND 130 +#define IDS_SECTORS 130 +#define IDS_SURFACES 131 +#define IDS_RESERVED 132 +#define IDS_BLOCKSIZE 133 +#define IDI_FLOPPY 134 +#define IDS_NAME 134 +#define IDD_LOADSAVE 135 +#define IDS_DESCRIPTION 135 +#define IDS_ONEINSTANCE 136 +#define IDI_PORTS 137 +#define IDS_INSTALLDIRECTX 137 +#define IDD_PORTS 138 +#define IDS_REGKEYCREATEFAILED 138 +#define IDS_COULDNOTLOADCONFIG 139 +#define IDD_CONTRIBUTORS 140 +#define IDS_NOHELP 140 +#define IDD_MISC1 141 +#define IDS_MUSTSELECTCONFIG 141 +#define IDD_HARDFILE 142 +#define IDS_NOAGA 142 +#define IDD_FILESYS 143 +#define IDS_INVALIDCOMPORT 143 +#define IDS_WSOCK2NEEDED 144 +#define IDD_MISC2 144 +#define IDS_UNSUPPORTEDPIXELFORMAT 145 +#define IDS_WAVEOUTOPENFAILURE 146 +#define IDS_MUSTENTERNAME 147 +#define IDS_MUSTSELECTCONFIGFORDELETE 148 +#define IDS_DELETECONFIGCONFIRMATION 149 +#define IDI_MISC1 150 +#define IDS_DELETECONFIGTITLE 150 +#define IDC_MYHAND 151 +#define IDS_GFXCARDCHECK 151 +#define IDD_DIALOG1 152 +#define IDS_GFXCARDTITLE 152 +#define IDD_DEBUGGER 152 +#define IDD_SETINFO 153 +#define IDS_MUSTSELECTPATH 153 +#define IDI_ICON1 153 +#define IDS_SETTINGSERROR 154 +#define IDD_CHIPSET 154 +#define IDS_MUSTSELECTNAME 155 +#define IDI_MOVE_UP 155 +#define IDD_CHIPSET2 155 +#define IDS_MUSTSELECTFILE 156 +#define IDI_MOVE_DOWN 156 +#define IDS_FAILEDHARDFILECREATION 157 +#define IDD_AVIOUTPUT 157 +#define IDS_CREATIONERROR 158 +#define IDI_AVIOUTPUT 158 +#define IDS_ERRORTITLE 159 +#define IDS_SELECTFILESYSROOT 160 +#define IDD_OPENGL 160 +#define IDD_FILTER 160 +#define IDS_DEFAULTMIDIOUT 161 +#define IDS_DEFAULTMIDIIN 162 +#define IDS_CONTRIBUTORS1 163 +#define IDD_HARDDRIVE 163 +#define IDS_CONTRIBUTORS2 164 +#define IDS_INVALIDPRTPORT 165 +#define IDS_SELECTUSS 166 +#define IDS_RESTOREUSS 166 +#define IDS_USS 167 +#define IDS_WRONGOSVERSION 168 +#define IDR_DRIVE_STARTUP_A500_1 168 +#define IDS_SELECTFLASH 169 +#define IDR_DRIVE_CLICK_A500_1 169 +#define IDS_FLASH 170 +#define IDR_DRIVE_SPIN_A500_1 170 +#define IDD_INPUT 171 +#define IDS_INPUTHOSTWIDGET 171 +#define IDI_INPUT 172 +#define IDS_INPUTAMIGAEVENT 172 +#define IDD_DISK 172 +#define IDS_INPUTAUTOFIRE 173 +#define IDS_SAVEUSS 174 +#define IDS_MIDIOVERFLOW 175 +#define IDS_HFDSIZE 176 +#define IDS_DEVICE 177 +#define IDS_BOOTPRI 178 +#define IDS_WRONGDXVERSION 179 +#define IDI_MISC2 180 +#define IDS_FLOPPY_COMPATIBLE 180 +#define IDR_DRIVE_SNATCH_A500_1 181 +#define IDS_FLOPPY_TURBO 181 +#define IDI_DISK 182 +#define IDR_DRIVE_SPINND_A500_1 182 +#define IDS_YES 182 +#define IDD_PANEL 183 +#define IDS_NO 183 +#define IDD_PATHS 184 +#define IDS_PRI_ABOVENORMAL 184 +#define IDI_CONFIGFILE 185 +#define IDD_QUICKSTART 185 +#define IDS_PRI_NORMAL 185 +#define IDM_SYSTRAY 186 +#define IDS_PRI_BELOWNORMAL 186 +#define IDS_PRI_LOW 187 +#define IDI_FOLDER 188 +#define IDS_OLDRTGLIBRARY 188 +#define IDS_DEFAULT_AF2005 189 +#define IDI_DISPLAY 190 +#define IDS_DEFAULT_AF 190 +#define IDS_DEFAULT_WINUAE 191 +#define IDI_ROOT 192 +#define IDS_INP 192 +#define IDS_RESTOREINP 193 +#define IDI_ICON2 194 +#define IDI_MEMORY 194 +#define IDS_SAVEINP 194 +#define IDS_SCREEN_WINDOWED 195 +#define IDS_SCREEN_FULLSCREEN 196 +#define IDS_SCREEN_FULLWINDOW 197 +#define IDS_SOUND_MONO 200 +#define IDS_SOUND_MIXED 201 +#define IDI_QUICKSTART 201 +#define IDS_SOUND_STEREO 202 +#define IDS_SOUND_INTERPOL_DISABLED 203 +#define IDS_SOUND_INTERPOL_RH 204 +#define IDI_PATHS 204 +#define IDS_SOUND_INTERPOL_CRUX 205 +#define IDS_SOUND_FILTER_OFF 206 +#define IDS_SOUND_FILTER_EMULATED 207 +#define IDS_SOUND_FILTER_EMULATED_E 208 +#define IDS_INPUT_COMPATIBILITY 209 +#define IDS_INPUT_CUSTOM 210 +#define IDS_INPUT_COPY_DEFAULT 211 +#define IDS_INPUT_COPY_CUSTOM 212 +#define IDS_3D_NO_FILTER 213 +#define IDS_3D_BILINEAR 214 +#define IDS_VSYNC_DEFAULT 215 +#define IDS_DRIVESOUND_NONE 216 +#define IDS_DRIVESOUND_DEFAULT_A500 217 +#define IDS_AVIOUTPUT_NOCODEC 218 +#define IDS_DISK_IMAGENAME 219 +#define IDS_DISK_DRIVENAME 220 +#define IDS_AGA8BIT 221 +#define IDS_UNSUPPORTEDSCREENMODE 222 +#define IDS_UNSUPPORTEDSCREENMODE_1 223 +#define IDS_UNSUPPORTEDSCREENMODE_2 224 +#define IDS_UNSUPPORTEDSCREENMODE_3 225 +#define IDS_UNSUPPORTEDSCREENMODE_4 226 +#define IDS_FLOPPYTYPE35DD 227 +#define IDS_FLOPPYTYPE35HD 228 +#define IDS_FLOPPYTYPE525SD 229 +#define IDS_FLOPPYTYPEDISABLED 230 +#define IDS_STMENUNOFLOPPY 231 +#define IDS_TREEVIEW_HARDWARE 232 +#define IDS_TREEVIEW_HOST 233 +#define IDS_TREEVIEW_MISC 234 +#define IDS_TREEVIEW_SETTINGS 235 +#define IDS_WINUAETITLE_MMB 236 +#define IDS_WINUAETITLE_NORMAL 237 +#define IDS_STARTEMULATION 238 +#define IDS_TREEVIEW_ABOUT 239 +#define IDS_NOHARDDRIVES 240 +#define IDS_DEFAULT_HOST 241 +#define IDS_SOUND_4CHANNEL 242 +#define IDS_HF_FS_CUSTOM 243 +#define IDS_SELECTFS 244 +#define IDS_KEYJOY 245 +#define IDB_XARCADE 246 +#define IDS_STATEFILE_UNCOMPRESSED 246 +#define IDS_STATEFILE_RAMDUMP 247 +#define IDS_STATEFILE_WAVE 248 +#define IDD_FRONTEND 249 +#define IDS_SOUND_SWAP_PAULA 249 +#define IDS_SOUND_SWAP_AHI 250 +#define IDD_PROGRESSBAR 250 +#define IDS_SOUND_SWAP_BOTH 251 +#define IDD_STRINGBOX 251 +#define IDB_BITMAP1 252 +#define IDB_LCD160X43 252 +#define IDS_SOUND_FILTER_ON_AGA 252 +#define IDS_SOUND_FILTER_ON 253 +#define IDS_SOUND_FILTER_ON_A500 253 +#define IDS_DRIVESOUND_PC_FLOPPY 254 +#define IDS_FLOPPYTYPE35DDESCOM 255 +#define IDS_SOUND_STEREO2 256 +#define IDS_INPUT_CUSTOMEVENT 257 +#define IDS_NUMSG_NEEDEXT2 300 +#define IDS_NUMSG_NOROMKEY 301 +#define IDS_NUMSG_KSROMCRCERROR 302 +#define IDS_NUMSG_KSROMREADERROR 303 +#define IDS_NUMSG_NOEXTROM 304 +#define IDS_NUMSG_MODRIP_NOTFOUND 305 +#define IDS_NUMSG_MODRIP_FINISHED 306 +#define IDS_NUMSG_MODRIP_SAVE 307 +#define IDS_NUMSG_KS68020 308 +#define IDS_NUMSG_ROMNEED 309 +#define IDS_NUMSG_NOZLIB 310 +#define IDS_NUMSG_STATEHD 311 +#define IDS_NUMSG_NOCAPS 312 +#define IDS_NUMSG_OLDCAPS 313 +#define IDS_IMGCHK_BOOTBLOCKCRCERROR 314 +#define IDS_IMGCHK_BOOTBLOCKNO 315 +#define IDS_IMGCHK_DAMAGED 316 +#define IDS_IMGCHK_KS2 317 +#define IDS_IMGCHK_KS3 318 +#define IDS_ROMSCANEND 319 +#define IDS_ROM_AVAILABLE 320 +#define IDS_ROM_UNAVAILABLE 321 +#define IDS_HARDDRIVESAFETYWARNING 322 +#define IDS_NUMSG_KS68EC020 323 +#define IDS_ROMSCANNOROMS 324 +#define IDS_NUMSG_KICKREP 325 +#define IDS_NUMSG_KICKREPNO 326 +#define IDS_NUMSG_NOROM 327 +#define IDS_HDCLONE_OK 328 +#define IDS_HDCLONE_FAIL 329 +#define IDR_DBGACCEL 330 +#define IDS_QS_MODELS 1000 +#define IDS_QS_MODEL_A500 1001 +#define IDS_QS_MODEL_A500P 1002 +#define IDS_QS_MODEL_A600 1003 +#define IDS_QS_MODEL_A1000 1004 +#define IDS_QS_MODEL_A1200 1005 +#define IDS_QS_MODEL_CD32 1006 +#define IDS_QS_MODEL_CDTV 1007 +#define IDS_QS_MODEL_UAE 1008 +#define IDS_QS_MODEL_ARCADIA 1009 +#define IDC_RESOLUTION 1021 +#define IDC_SERIAL 1022 +#define IDC_REFRESHRATE 1022 +#define IDC_ILLEGAL 1023 +#define IDC_MIDILIST 1023 +#define IDC_MIDIOUTLIST 1023 +#define IDC_DA_MODE 1023 +#define IDC_SHOWGUI 1024 +#define IDC_MIDIINLIST 1024 +#define IDC_RESOLUTION2 1024 +#define IDC_DISPLAYSELECT 1024 +#define IDC_AUTOCONFIG 1025 +#define IDC_PRINTERLIST 1025 +#define IDC_RESOLUTION3 1025 +#define IDC_RESOLUTIONDEPTH 1025 +#define IDC_CHIPMEM 1026 +#define IDC_CREATELOGFILE 1026 +#define IDC_PORT0_JOYS 1026 +#define IDC_SCREENMODE_NATIVE 1026 +#define IDC_FASTMEM 1027 +#define IDC_SHOWLEDS 1027 +#define IDC_PORT1_JOYS 1027 +#define IDC_SCREENMODE_RTG 1027 +#define IDC_MBMEM1 1028 +#define IDC_SLOWMEM 1030 +#define IDC_MBMEM2 1031 +#define IDC_PARALLEL 1033 +#define IDC_JULIAN 1040 +#define IDC_FASTTEXT 1043 +#define IDC_FASTRAM 1044 +#define IDC_CHIPRAM 1045 +#define IDC_SLOWRAM 1046 +#define IDC_Z3TEXT 1047 +#define IDC_Z3FASTRAM 1048 +#define IDC_Z3FASTMEM 1049 +#define IDC_MBRAM1 1050 +#define IDC_MBRAM2 1051 +#define IDC_UAEHOME 1070 +#define IDC_PICASSOHOME 1071 +#define IDC_AMIGAHOME 1072 +#define IDC_WINUAEHOME 1073 +#define IDC_AIABHOME 1074 +#define IDC_CLOANTOHOME 1075 +#define IDC_THEROOTS 1076 +#define IDC_CAPS 1077 +#define IDC_ABIME 1078 +#define IDC_AMIGASYS 1079 +#define IDC_AMIKIT 1080 +#define IDC_RICHEDIT1 1091 +#define IDC_RICHEDIT2 1092 +#define IDC_CONTRIBUTORS 1124 +#define IDC_ASPECT 1170 +#define IDC_BLIT32 1173 +#define IDC_BLITIMM 1174 +#define IDC_LORES 1176 +#define IDC_VSYNC 1177 +#define IDC_AFULLSCREEN 1178 +#define IDC_LORES_SMOOTHED 1179 +#define IDC_FRAMERATE 1185 +#define IDC_RATETEXT 1186 +#define IDC_XSIZE 1187 +#define IDC_YSIZE 1188 +#define IDC_INPUTAUTOFIRERATE 1188 +#define IDC_LM_NORMAL 1189 +#define IDC_INPUTSPEEDD 1189 +#define IDC_LM_DOUBLED 1190 +#define IDC_INPUTSPEEDA 1190 +#define IDC_GFXCARDTEXT 1191 +#define IDC_LM_SCANLINES 1191 +#define IDC_INPUTSPEEDM 1191 +#define IDC_P96RAM 1192 +#define IDC_PFULLSCREEN 1192 +#define IDC_P96MEM 1193 +#define IDC_DA_SLIDER 1193 +#define IDC_FRAMERATE2 1194 +#define IDC_RATE2TEXT 1195 +#define IDC_CPU0 1200 +#define IDC_CPU1 1201 +#define IDC_CPU2 1202 +#define IDC_CPU3 1203 +#define IDC_CPU4 1204 +#define IDC_CPU5 1205 +#define IDC_CPU6 1206 +#define IDC_SPEED 1207 +#define IDC_CS_HOST 1209 +#define IDC_CS_68000 1210 +#define IDC_CS_ADJUSTABLE 1211 +#define IDC_CS_CPU_TEXT 1212 +#define IDC_CS_CHIPSET_TEXT 1213 +#define IDC_COMPATIBLE 1214 +#define IDC_TRUST0 1215 +#define IDC_TRUST1 1216 +#define IDC_TRUST2 1217 +#define IDC_CACHE 1218 +#define IDC_CYCLEEXACT 1219 +#define IDC_CS_CPU_TEXT2 1219 +#define IDC_CPUIDLE 1220 +#define IDC_GENLOCK 1220 +#define IDC_COMPATIBLE_FPU 1221 +#define IDC_FASTERRTG 1221 +#define IDC_SOUNDSETTINGS 1229 +#define IDC_8BIT 1230 +#define IDC_16BIT 1231 +#define IDC_11KHZ 1232 +#define IDC_22KHZ 1233 +#define IDC_44KHZ 1234 +#define IDC_48KHZ 1235 +#define IDC_SOUNDSIZE 1236 +#define IDC_FREQUENCY 1237 +#define IDC_SOUND0 1238 +#define IDC_SOUND1 1239 +#define IDC_SOUND2 1240 +#define IDC_SOUND3 1241 +#define IDC_SOUNDSTYLE 1242 +#define IDC_SOUNDSTYLE0 1243 +#define IDC_STEREO 1244 +#define IDC_SOUNDSTYLE1 1245 +#define IDC_SOUNDINTERPOLATION 1248 +#define IDC_INTERPOLATION0 1249 +#define IDC_INTERPOLATION1 1250 +#define IDC_INTERPOLATION2 1251 +#define IDC_STEREOMODE 1252 +#define IDC_SOUNDINTERPOLATION2 1252 +#define IDC_STEREOMODE0 1253 +#define IDC_STEREOMODE1 1254 +#define IDC_STEREOMODE2 1255 +#define IDC_SOUNDINTERPOLATION3 1256 +#define IDC_DF0TEXT 1270 +#define IDC_DF1TEXT 1271 +#define IDC_DF2TEXT 1272 +#define IDC_DF3TEXT 1273 +#define IDC_EJECT0 1274 +#define IDC_EJECT1 1275 +#define IDC_EJECT2 1276 +#define IDC_EJECT3 1277 +#define IDC_DF0 1278 +#define IDC_DF1 1279 +#define IDC_DF2 1280 +#define IDC_DF3 1281 +#define IDC_CREATE 1282 +#define IDC_CREATE_RAW 1283 +#define IDC_SNAPSHOTNAME 1284 +#define IDC_SNAPSHOT 1285 +#define IDC_SAVEIMAGE0 1285 +#define IDC_DOSAVESTATE 1286 +#define IDC_SAVEIMAGE1 1286 +#define IDC_DOLOADSTATE 1287 +#define IDC_SAVEIMAGE2 1287 +#define IDC_PROWIZARD 1288 +#define IDC_SAVEIMAGE3 1288 +#define IDC_PORT0_JOYSC 1302 +#define IDC_PORT0_KBDA 1303 +#define IDC_PORT0_KBDB 1304 +#define IDC_PORT0_KBDC 1305 +#define IDC_PORT0_KBDD 1306 +#define IDC_PORT0_KBDE 1307 +#define IDC_PORT1_JOYSC 1308 +#define IDC_PORT1_KBDA 1309 +#define IDC_PORT1_KBDB 1310 +#define IDC_PORT1_KBDC 1311 +#define IDC_PORT1_KBDD 1312 +#define IDC_PORT1_KBDE 1313 +#define IDC_MIDIFRAME 1314 +#define IDC_SERPARFRAME 1315 +#define IDC_SERIALFRAME 1316 +#define IDC_EDIT 1334 +#define IDC_REMOVE 1335 +#define IDC_VOLUMELIST 1336 +#define IDC_UP 1337 +#define IDC_DOWN 1338 +#define IDC_NEW_FS 1339 +#define IDC_NEW_HF 1340 +#define IDC_NEW_HD 1341 +#define IDC_PORT0 1342 +#define IDC_PORT1 1343 +#define IDC_PATH_NAME 1362 +#define IDC_SELECTOR 1363 +#define IDC_VOLUME_NAME 1364 +#define IDC_HARDFILE_DEVICE 1364 +#define IDC_SECTORS 1365 +#define IDC_VOLUME_DEVICE 1365 +#define IDC_HEADS 1366 +#define IDC_RESERVED 1367 +#define IDC_BLOCKSIZE 1368 +#define IDC_HARDFILE_BOOTPRI 1369 +#define IDC_SECTORS_TEXT 1370 +#define IDC_SURFACES_TEXT 1371 +#define IDC_RESERVED_TEXT 1372 +#define IDC_RESERVED_TEXT2 1373 +#define IDC_BLOCKSIZE_TEXT 1374 +#define ID_OK 1375 +#define IDC_HARDFILE_BOOTPRI_TEXT 1375 +#define IDC_PATH_FILESYS 1376 +#define IDC_HARDFILE_DIR_TEXT 1377 +#define IDC_HARDFILE_DEVICE_TEXT 1378 +#define IDC_RW 1379 +#define IDC_HFRDB 1380 +#define IDC_RW2 1380 +#define IDC_RDB 1380 +#define IDC_HARDFILE_FILESYS_TEXT 1380 +#define IDC_FILESYS_SELECTOR 1381 +#define IDC_ROMFILE 1390 +#define IDC_KEYFILE 1391 +#define IDC_KICKCHOOSER 1392 +#define IDC_KEYCHOOSER 1393 +#define IDC_ROMFILE2 1394 +#define IDC_ROMCHOOSER2 1395 +#define IDC_FLASHCHOOSER 1396 +#define IDC_FLASHFILE 1397 +#define IDC_CARTFILE 1398 +#define IDC_CARTCHOOSER 1399 +#define IDC_SAVE 1400 +#define IDC_LOAD 1401 +#define IDC_DELETE 1403 +#define IDC_CONFIGLIST 1404 +#define IDC_EDITNAME 1405 +#define IDC_EDITDESCRIPTION 1406 +#define IDC_QUICKSAVE 1408 +#define IDC_QUICKLOAD 1409 +#define IDC_EXIT 1410 +#define IDC_EDITPATH 1410 +#define IDC_HDF_RDB 1500 +#define IDC_HFSIZE 1501 +#define IDC_HF_SIZE 1501 +#define IDC_LINEMODE 1502 +#define IDC_CREATEHF 1502 +#define IDC_HF_CREATE 1502 +#define IDC_SOCKETS 1503 +#define IDC_HF_DOSTYPE 1503 +#define IDC_RESETAMIGA 1504 +#define IDC_QUITEMU 1505 +#define IDC_TEST16BIT 1506 +#define IDC_MAPDRIVES 1507 +#define IDC_CPUTEXT 1508 +#define IDC_MAPDRIVES_NET 1508 +#define IDC_SWAP 1509 +#define IDC_CACHETEXT 1509 +#define IDC_SELECTRESTEXT 1510 +#define IDC_FLUSHPRINTER 1510 +#define IDC_SCREENRESTEXT 1511 +#define IDC_WIDTHTEXT 1512 +#define IDC_WINDOWEDTEXT 1512 +#define IDC_HEIGHTTEXT 1513 +#define IDC_SETTINGSTEXT 1514 +#define IDC_REFRESHTEXT 1515 +#define IDC_SETTINGSTEXT2 1515 +#define IDC_DISABLE1 1516 +#define IDC_DF1WP 1516 +#define IDC_QUICKSTART_COMPA 1516 +#define IDC_REFRESH2TEXT 1516 +#define IDC_DISABLE2 1517 +#define IDC_DF2WP 1517 +#define IDC_QUICKSTART_DF 1517 +#define IDC_DISABLE3 1518 +#define IDC_XCENTER 1518 +#define IDC_DF3WP 1518 +#define IDC_DF1WP2 1518 +#define IDC_QUICKSTART_HOST 1518 +#define IDC_YCENTER 1519 +#define IDC_DISABLE0 1519 +#define IDC_DF0WP 1519 +#define IDC_OCS 1520 +#define IDC_HDFLOPPY 1520 +#define IDC_ECS_AGNUS 1521 +#define IDC_ECS_DENISE 1522 +#define IDC_ECS 1523 +#define IDC_AGA 1524 +#define IDC_NTSC 1525 +#define IDC_NOSPEED 1527 +#define IDC_NOSOUND 1528 +#define IDC_INACTIVE_NOSOUND 1528 +#define IDC_MIDI 1529 +#define IDC_NOSPEEDPAUSE 1529 +#define IDC_INACTIVE_PAUSE 1529 +#define IDC_KICKSHIFTER 1530 +#define IDC_MIDI2 1530 +#define IDC_HIGHPRIORITY 1530 +#define IDC_MINIMIZED_NOSOUND 1530 +#define IDC_MINIMIZED_PAUSE 1531 +#define IDC_STATE_CAPTURE 1532 +#define IDC_KBLED_USB 1533 +#define IDC_SER_SHARED 1553 +#define IDC_SER_CTSRTS 1554 +#define IDC_SER_DIRECT 1555 +#define IDC_PSPRINTER 1556 +#define IDC_PSPRINTERDETECT 1557 +#define IDC_UAESERIAL 1558 +#define IDC_VIEWINFO 1568 +#define IDC_SETINFO 1569 +#define IDC_FLOPPYSLIDER 1570 +#define IDC_FLOPPYSLIDERTEXT 1571 +#define IDC_FLOPPYSPEED 1572 +#define IDC_FLOPPYSPD 1572 +#define IDC_GUILANGUAGE_LIST 1573 +#define IDC_SOUNDBUFFERRAM 1574 +#define IDC_SOUNDADJUST 1575 +#define IDC_SOUNDBUFFERTEXT 1576 +#define IDC_SOUNDVOLUME 1576 +#define IDC_SOUNDBUFFERMEM 1577 +#define IDC_HARDFLUSH 1578 +#define IDC_SOUNDADJUSTNUM 1578 +#define IDC_CONSTJUMP 1579 +#define IDC_SOUNDDRIVEVOLUME 1579 +#define IDC_JITFPU 1580 +#define IDC_SOUNDVOLUME2 1580 +#define IDC_NOFLAGS 1581 +#define IDC_SOUNDDRIVEVOLUME2 1581 +#define IDC_CS_CACHE_TEXT 1582 +#define IDC_FORCE 1583 +#define IDC_COLLISIONS 1584 +#define IDC_JITENABLE 1584 +#define IDC_DISASSEMBLY 1585 +#define IDC_CTRLF11 1586 +#define IDC_FASTCOPPER 1588 +#define IDC_COLLISION0 1589 +#define IDC_COLLISION1 1590 +#define IDC_AUDIOSYNC 1590 +#define IDC_COLLISION2 1591 +#define IDC_COLLISION3 1592 +#define IDC_SOUNDLAGSLIDER 1592 +#define IDC_SOUNDLAGCAPTION 1594 +#define IDC_FLOPPYTYPE 1594 +#define IDC_SYNCPARAMS 1595 +#define IDC_DF0TYPE 1595 +#define IDC_SOUNDLAGTEXT 1596 +#define IDC_DF1TYPE 1596 +#define IDC_DF2TYPE 1597 +#define IDC_SOUNDSPEEDSLIDER 1598 +#define IDC_DF0TYPE4 1598 +#define IDC_DF3TYPE 1598 +#define IDC_SOUNDSPEEDTEXT 1599 +#define IDC_SOUNDSPEEDCAPTION 1600 +#define IDC_NOOVERLAY 1601 +#define IDC_ROMFILE2TEXT 1602 +#define IDC_ROMTEXT 1603 +#define IDC_KEYTEXT 1604 +#define IDC_CD32 1605 +#define IDC_AKIKOC2P 1605 +#define IDC_FLASHTEXT 1605 +#define IDC_SCSIDEVICE 1606 +#define IDC_FLASHTEXT2 1606 +#define IDC_AVIOUTPUT_PAL 1607 +#define IDC_INPUTTYPE 1607 +#define IDC_AVIOUTPUT_NTSC 1608 +#define IDC_INPUTSELECTTEXT 1608 +#define IDC_NOUAEFSDB 1608 +#define IDC_NOTASKBARBUTTON 1608 +#define IDC_CLOCKSYNC 1609 +#define IDC_AVIOUTPUT_FPS 1609 +#define IDC_INPUTDEVICE 1609 +#define IDC_MAPROM 1609 +#define IDC_NORECYCLEBIN 1609 +#define IDC_AVIOUTPUT_FILETEXT 1610 +#define IDC_INPUTDEVICETEXT 1610 +#define IDC_ALWAYSONTOP 1610 +#define IDC_MAPROM2 1610 +#define IDC_HRTMON 1610 +#define IDC_AVIOUTPUT_FILE 1611 +#define IDC_INPUTLIST 1611 +#define IDC_CATWEASEL 1611 +#define IDC_AVIOUTPUT_FPS_STATIC 1612 +#define IDC_INPUTAMIGA 1612 +#define IDC_ALWAYSONTOP2 1612 +#define IDC_BORDERLESS 1612 +#define IDC_POWERSAVE 1612 +#define IDC_AVIOUTPUT_VIDEO 1613 +#define IDC_INPUTAUTOFIRE 1613 +#define IDC_MOUSETRICK 1613 +#define IDC_AVIOUTPUT_AUDIO 1614 +#define IDC_INPUTCOPYFROM 1614 +#define IDC_AVIOUTPUT_VIDEO_CODEC 1615 +#define IDC_OPENGLENABLE 1615 +#define IDC_INPUTDEVICEDISABLE 1615 +#define IDC_AVIOUTPUT_ACTIVATED 1615 +#define IDC_FILTERENABLE 1615 +#define IDC_AVIOUTPUT_AUDIO_CODEC 1616 +#define IDC_OPENGLHZ 1616 +#define IDC_INPUTAMIGACNT 1616 +#define IDC_FILTERHZ 1616 +#define IDC_SAMPLERIPPER_ACTIVATED 1616 +#define IDC_AVIOUTPUT_BORDER_TRIM 1617 +#define IDC_OPENGLVZ 1617 +#define IDC_FILTERVZ 1617 +#define IDC_INPREC_RECORD 1617 +#define IDC_AVIOUTPUT_AUDIO_STATIC 1618 +#define IDC_OPENGLHO 1618 +#define IDC_FILTERHO 1618 +#define IDC_AVIOUTPUT_VIDEO_STATIC 1619 +#define IDC_OPENGLVO 1619 +#define IDC_FILTERVO 1619 +#define IDC_AVIOUTPUT_8BIT 1620 +#define IDC_OPENGLHZV 1620 +#define IDC_INPREC_PLAY 1620 +#define IDC_AVIOUTPUT_24BIT 1621 +#define IDC_OPENGLVZV 1621 +#define IDC_AVIOUTPUT_WIDTH 1622 +#define IDC_OPENGLHOV 1622 +#define IDC_AVIOUTPUT_HEIGHT 1623 +#define IDC_OPENGLVOV 1623 +#define IDC_AVIOUTPUT_FRAME 1624 +#define IDC_OPENGLSL 1624 +#define IDC_FILTERSL 1624 +#define IDC_OPENGLSLR 1625 +#define IDC_FILTERSLR 1625 +#define IDC_OPENGLSLV 1626 +#define IDC_FILTERHZMULT 1626 +#define IDC_OPENGLBITS 1627 +#define IDC_OPENGLMODE 1627 +#define IDC_FILTERMODE 1627 +#define IDC_OPENGLFILTER 1628 +#define IDC_FILTERFILTER 1628 +#define IDC_OPENGLDEFAULT 1629 +#define IDC_FILTERDEFAULT 1629 +#define IDC_INPUTDEADZONE 1630 +#define IDC_OPENGLSL2 1630 +#define IDC_FILTERSL2 1630 +#define IDC_INPUTCOPY 1631 +#define IDC_OPENGLSL2V 1631 +#define IDC_FILTERPRESETS 1631 +#define IDC_SCREENSHOT 1632 +#define IDC_INPUTSWAP 1632 +#define IDC_FILTERPRESETLOAD 1632 +#define IDC_FLOPPYSPDTEXT 1633 +#define IDC_FILTERPRESETSAVE 1633 +#define IDC_FLOPPYSPD_TEXT 1634 +#define IDC_FILTERPRESETDELETE 1634 +#define IDC_HARDDRIVE 1635 +#define IDC_INACTIVE_PRI 1635 +#define IDC_FILTERSLR3 1635 +#define IDC_FILTERVZMULT 1635 +#define IDC_SOUNDPRIMARY 1636 +#define IDC_MINIMIZED_PRI 1636 +#define IDC_VOLUME_BOOTPRI_TEXT 1637 +#define IDC_VOLUME_BOOTPRI 1638 +#define IDC_KBLED1 1639 +#define IDC_KBLED2 1640 +#define IDC_SOUNDFILTER 1640 +#define IDC_KBLED3 1641 +#define IDC_SOUNDCALIBRATE 1641 +#define IDC_ACTIVE_PRIORITY 1642 +#define IDC_SOUNDDRIVE 1642 +#define IDC_INACTIVE_PRIORITY 1643 +#define IDC_ACTIVE_PRI 1644 +#define IDC_MINIMIZED_PRIORITY 1645 +#define IDC_AVIOUTPUT_FRAMELIMITER 1645 +#define IDC_STATE_RATE 1646 +#define IDC_INPREC_PLAYMODE 1646 +#define IDC_STATE_BUFFERSIZE 1647 +#define IDC_SOUNDDRIVESELECT 1647 +#define IDC_PANELTREE 1647 +#define IDC_AVIOUTPUT_FRAMELIMITER2 1647 +#define IDC_AVIOUTPUT_NOSOUNDOUTPUT 1647 +#define IDC_AVIOUTPUT_DIMENSIONS_STATIC 1648 +#define IDC_STATE_BUFFERSIZE_TEXT 1648 +#define IDC_CONFIGTREE 1648 +#define IDC_AVIOUTPUT_OPTIONS 1649 +#define IDC_STATE_RATE_TEXT 1649 +#define IDC_DISKLISTREMOVE 1649 +#define IDC_SOUNDCARD 1650 +#define IDC_CS_SOUND0 1650 +#define IDC_UPBM 1650 +#define IDC_DISKLISTREMOVE2 1650 +#define IDC_DISKLISTINSERT 1650 +#define IDC_SOUNDCARDLIST 1651 +#define IDC_CS_SOUND1 1651 +#define IDC_SOUNDFREQ 1652 +#define IDC_CS_SOUND2 1652 +#define IDC_SOUNDCARD2 1653 +#define IDC_SOUNDFREQTXT 1653 +#define IDC_PANEL_FRAME 1653 +#define IDC_SOUNDFILTERTXT 1654 +#define IDC_PANEL_FRAME_OUTER 1654 +#define IDC_SOUNDSTEREO 1655 +#define IDC_CONFIGTYPE 1655 +#define IDC_SOUNDDRIVETXT 1656 +#define IDC_PATHS_ROM 1656 +#define IDC_SOUNDSTEREOSEP 1656 +#define IDC_SOUNDSTEREOTXT 1657 +#define IDC_PATHS_CONFIG 1657 +#define IDC_SOUNDINTERPOLATIONTXT 1658 +#define IDC_PATHS_SCREENSHOT 1658 +#define IDC_DISK 1659 +#define IDC_DISKLIST 1659 +#define IDC_PATHS_SAVEIMAGE 1659 +#define IDC_SOUNDSTEREOSEPTXT 1659 +#define IDC_PATHS_SAVESTATE 1660 +#define IDC_SOUNDSTEREOMIXTXT 1660 +#define IDC_PATHS_ROMS 1661 +#define IDC_SOUNDSTEREOMIX 1661 +#define IDC_PATHS_CONFIGS 1662 +#define IDC_SOUNDSWAP 1662 +#define IDC_PATHS_SCREENSHOTS 1663 +#define IDC_PATHS_SAVESTATES 1664 +#define IDC_SOUNDSTEREOSWAPTXT 1664 +#define IDC_SOUNDSWAPTXT 1664 +#define IDC_PATHS_SAVEIMAGES 1665 +#define IDC_PATHS_ROML 1666 +#define IDC_PATHS_CONFIGL 1667 +#define IDC_PATHS_SCREENSHOTL 1668 +#define IDC_PATHS_STATEFILEL 1669 +#define IDC_PATHS_SAVEIMAGEL 1670 +#define IDC_PATHS_DEFAULT 1671 +#define IDC_ROM_RESCAN 1672 +#define IDC_QUICKSTARTMODE 1673 +#define IDC_RESETREGISTRY 1673 +#define IDC_QUICKSTART_MODEL 1674 +#define IDC_PATHS_AVIOUTPUTL 1674 +#define IDC_QUICKSTART_CONFIGURATION 1675 +#define IDC_PATHS_AVIOUTPUT 1675 +#define IDC_QUICKSTART_COMPATIBILITY 1676 +#define IDC_PATHS_AVIOUTPUTS 1676 +#define IDC_QUICKSTART_CONFIG 1677 +#define IDC_RESETDISKHISTORY 1677 +#define IDC_DF0Q 1678 +#define IDC_DF0QQ 1678 +#define IDC_DF1Q 1679 +#define IDC_QUICKSTART_HOSTCONFIG 1679 +#define IDC_DF1QQ 1680 +#define IDC_QUICKSTART_SETCONFIG 1681 +#define IDC_CONFIGAUTO 1682 +#define IDC_DF0TEXTQ 1683 +#define IDC_CONFIGNOLINK 1683 +#define IDC_DF0WPQ 1684 +#define IDC_EJECT0Q 1685 +#define IDC_DF1WPQ 1686 +#define IDC_EJECT1Q 1687 +#define IDC_DF1TEXTQ 1688 +#define IDC_FILTERSL2V 1691 +#define IDC_FILTERSLV 1692 +#define IDC_FILTERVOV 1693 +#define IDC_FILTERHOV 1694 +#define IDC_CONFIGLINK 1694 +#define IDC_FILTERVZV 1695 +#define IDC_PS_PARAMS 1695 +#define IDC_FILTERHZV 1696 +#define IDC_HF_TYPE 1696 +#define IDC_PRINTERAUTOFLUSH 1697 +#define IDC_PRINTERAUTOFLUSHTXT 1698 +#define IDC_DISKTEXT 1699 +#define IDC_FE_LIST 1700 +#define IDC_FE_INFO 1701 +#define IDC_FE_INFO2 1702 +#define IDC_FE_SCREENSHOT 1702 +#define IDC_PATHS_DEFAULTTYPE 1704 +#define IDC_SCSIMODE 1705 +#define IDC_PROGRESS1 1705 +#define IDC_PROGRESSBAR 1705 +#define IDC_PROGRESSBAR_TEXT 1706 +#define IDC_SCSIMODE2 1706 +#define IDC_LANGUAGE 1706 +#define IDC_CREATE_NAME 1707 +#define IDC_FILTERAUTORES 1708 +#define IDC_SOUND_AUTO 1709 +#define IDC_CS_RTC 1710 +#define IDC_CS_CIAA_TOD1 1711 +#define IDC_CS_CIAA_TOD2 1712 +#define IDC_CS_EXT 1712 +#define IDC_CS_CIAA_TOD3 1713 +#define IDC_CS_COMPATIBLE 1714 +#define IDC_CS_RAMSEYREV 1715 +#define IDC_CS_KSMIRROR 1716 +#define IDC_STRINGBOXEDIT 1716 +#define IDC_CS_CD32CD 1717 +#define IDC_STRINGBOX_TEXT 1717 +#define IDC_CS_CD32C2P 1718 +#define IDC_CS_CD32NVRAM 1719 +#define IDC_CS_CDTVCD 1720 +#define IDC_CS_CDTVRAM 1721 +#define IDC_CS_IDE1 1722 +#define IDC_CS_IDE2 1723 +#define IDC_CS_IDE3 1724 +#define IDC_CS_A1000RAM 1724 +#define IDC_CS_RAMSEY 1725 +#define IDC_CS_GARY 1726 +#define IDC_CS_FATGARY 1726 +#define IDC_CS_DMAC 1727 +#define IDC_CS_RTCADJUST 1728 +#define IDC_CS_RAMSEYREV3 1729 +#define IDC_CS_FATGARYREV 1729 +#define IDC_CS_CDTVRAMEXP 1730 +#define IDC_CS_RTC1 1731 +#define IDC_CS_RTC2 1732 +#define IDC_CS_RTC3 1733 +#define IDC_CS_IDE4 1734 +#define IDC_CS_DF0IDHW 1734 +#define IDC_CS_AGNUS 1735 +#define IDC_CS_AGNUSREV 1736 +#define IDC_CS_DENISE 1737 +#define IDC_CS_AGNUSREV2 1738 +#define IDC_CS_DENISEREV 1738 +#define IDC_DBG_OUTPUT1 1739 +#define IDC_DBG_HELP 1740 +#define IDC_DBG_INPUT 1741 +#define IDC_DBG_DREG 1742 +#define IDC_DBG_AREG 1743 +#define IDC_DBG_CCR 1744 +#define IDC_DBG_AMEM 1745 +#define IDC_DBG_SP_VBR 1746 +#define IDC_DBG_MISC 1747 +#define IDC_DBG_PC 1748 +#define IDC_DBG_PREFETCH 1749 +#define IDC_DBG_FPREG 1750 +#define IDC_DBG_FPSR 1751 +#define IDC_DBG_OUTPUT2 1752 +#define IDC_DBG_MEMINPUT 1753 +#define IDC_DBG_MEMDOWN 1754 +#define IDC_DBG_MEMUP 1755 +#define IDC_DBG_MEM 1756 +#define IDC_DBG_DASM 1757 +#define IDC_DBG_MEMDOWNFAST 1758 +#define IDC_DBG_MEMTOPC 1759 +#define IDC_DBG_MEMUPFAST 1760 +#define ID__FLOPPYDRIVES 40004 +#define ID_FLOPPYDRIVES_DF0 40005 +#define ID_ST_CONFIGURATION 40010 +#define ID_ST_HELP 40011 +#define ID_ST_QUIT 40012 +#define ID_ST_EJECTALL 40013 +#define ID_ST_DF0 40014 +#define ID_ST_DF1 40015 +#define ID_ST_DF2 40016 +#define ID_ST_DF3 40017 +#define ID_ST_RESET 40019 +#define ID_DBG_PAGE1 40020 +#define ID_DBG_PAGE2 40021 +#define ID_DBG_PAGE3 40022 +#define ID_DBG_PAGE4 40023 +#define ID_DBG_PAGE5 40024 +#define ID_DBG_PAGE6 40025 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NO_MFC 1 +#define _APS_3D_CONTROLS 1 +#define _APS_NEXT_RESOURCE_VALUE 258 +#define _APS_NEXT_COMMAND_VALUE 40026 +#define _APS_NEXT_CONTROL_VALUE 1761 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/od-win32/resources/resource.h b/od-win32/resources/resource.h index 87a8d0a9..e5904f8a 100755 --- a/od-win32/resources/resource.h +++ b/od-win32/resources/resource.h @@ -177,6 +177,9 @@ #define IDI_ICON2 194 #define IDI_MEMORY 194 #define IDS_SAVEINP 194 +#define IDS_SCREEN_WINDOWED 195 +#define IDS_SCREEN_FULLSCREEN 196 +#define IDS_SCREEN_FULLWINDOW 197 #define IDS_SOUND_MONO 200 #define IDS_SOUND_MIXED 201 #define IDI_QUICKSTART 201 @@ -274,6 +277,7 @@ #define IDS_NUMSG_NOROM 327 #define IDS_HDCLONE_OK 328 #define IDS_HDCLONE_FAIL 329 +#define IDR_DBGACCEL 330 #define IDS_QS_MODELS 1000 #define IDS_QS_MODEL_A500 1001 #define IDS_QS_MODEL_A500P 1002 @@ -302,9 +306,11 @@ #define IDC_CHIPMEM 1026 #define IDC_CREATELOGFILE 1026 #define IDC_PORT0_JOYS 1026 +#define IDC_SCREENMODE_NATIVE 1026 #define IDC_FASTMEM 1027 #define IDC_SHOWLEDS 1027 #define IDC_PORT1_JOYS 1027 +#define IDC_SCREENMODE_RTG 1027 #define IDC_MBMEM1 1028 #define IDC_SLOWMEM 1030 #define IDC_MBMEM2 1031 @@ -338,7 +344,6 @@ #define IDC_BLITIMM 1174 #define IDC_LORES 1176 #define IDC_VSYNC 1177 -#define IDC_AFULLSCREEN 1178 #define IDC_LORES_SMOOTHED 1179 #define IDC_FRAMERATE 1185 #define IDC_RATETEXT 1186 @@ -353,7 +358,6 @@ #define IDC_LM_SCANLINES 1191 #define IDC_INPUTSPEEDM 1191 #define IDC_P96RAM 1192 -#define IDC_PFULLSCREEN 1192 #define IDC_P96MEM 1193 #define IDC_DA_SLIDER 1193 #define IDC_FRAMERATE2 1194 @@ -872,6 +876,28 @@ #define IDC_CS_DENISE 1737 #define IDC_CS_AGNUSREV2 1738 #define IDC_CS_DENISEREV 1738 +#define IDC_DBG_OUTPUT1 1739 +#define IDC_DBG_HELP 1740 +#define IDC_DBG_INPUT 1741 +#define IDC_DBG_DREG 1742 +#define IDC_DBG_AREG 1743 +#define IDC_DBG_CCR 1744 +#define IDC_DBG_AMEM 1745 +#define IDC_DBG_SP_VBR 1746 +#define IDC_DBG_MISC 1747 +#define IDC_DBG_PC 1748 +#define IDC_DBG_PREFETCH 1749 +#define IDC_DBG_FPREG 1750 +#define IDC_DBG_FPSR 1751 +#define IDC_DBG_OUTPUT2 1752 +#define IDC_DBG_MEMINPUT 1753 +#define IDC_DBG_MEMDOWN 1754 +#define IDC_DBG_MEMUP 1755 +#define IDC_DBG_MEM 1756 +#define IDC_DBG_DASM 1757 +#define IDC_DBG_MEMDOWNFAST 1758 +#define IDC_DBG_MEMTOPC 1759 +#define IDC_DBG_MEMUPFAST 1760 #define ID__FLOPPYDRIVES 40004 #define ID_FLOPPYDRIVES_DF0 40005 #define ID_ST_CONFIGURATION 40010 @@ -883,6 +909,12 @@ #define ID_ST_DF2 40016 #define ID_ST_DF3 40017 #define ID_ST_RESET 40019 +#define ID_DBG_PAGE1 40020 +#define ID_DBG_PAGE2 40021 +#define ID_DBG_PAGE3 40022 +#define ID_DBG_PAGE4 40023 +#define ID_DBG_PAGE5 40024 +#define ID_DBG_PAGE6 40025 // Next default values for new objects // @@ -891,8 +923,8 @@ #define _APS_NO_MFC 1 #define _APS_3D_CONTROLS 1 #define _APS_NEXT_RESOURCE_VALUE 253 -#define _APS_NEXT_COMMAND_VALUE 40021 -#define _APS_NEXT_CONTROL_VALUE 1718 +#define _APS_NEXT_COMMAND_VALUE 40026 +#define _APS_NEXT_CONTROL_VALUE 1761 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif diff --git a/od-win32/resources/winuae.rc b/od-win32/resources/winuae.rc index 035c3923..7907697e 100755 --- a/od-win32/resources/winuae.rc +++ b/od-win32/resources/winuae.rc @@ -21,6 +21,26 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US #pragma code_page(1252) #endif //_WIN32 +///////////////////////////////////////////////////////////////////////////// +// +// Accelerator +// + +IDR_DBGACCEL ACCELERATORS +BEGIN + VK_F1, ID_DBG_PAGE1, VIRTKEY, NOINVERT + VK_F2, ID_DBG_PAGE2, VIRTKEY, NOINVERT + VK_F3, ID_DBG_PAGE3, VIRTKEY, NOINVERT + VK_F4, ID_DBG_PAGE4, VIRTKEY, NOINVERT + VK_F5, ID_DBG_PAGE5, VIRTKEY, NOINVERT + VK_F6, ID_DBG_PAGE6, VIRTKEY, NOINVERT + VK_DOWN, IDC_DBG_MEMDOWN, VIRTKEY, ALT, NOINVERT + VK_RIGHT, IDC_DBG_MEMDOWNFAST, VIRTKEY, ALT, NOINVERT + VK_UP, IDC_DBG_MEMUP, VIRTKEY, ALT, NOINVERT + VK_LEFT, IDC_DBG_MEMUPFAST, VIRTKEY, ALT, NOINVERT +END + + ///////////////////////////////////////////////////////////////////////////// // // Dialog @@ -39,9 +59,9 @@ BEGIN COMBOBOX IDC_ROMFILE2,89,31,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "...",IDC_ROMCHOOSER2,280,30,10,15 CONTROL "MapROM emulation [] Creates a BlizKick-compatible memory area.",IDC_MAPROM, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,82,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,87,10 CONTROL "ShapeShifter support [] Patches the system ROM for ShapeShifter compatibility.",IDC_KICKSHIFTER, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,54,80,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,54,87,10 GROUPBOX "Miscellaneous",-1,5,76,290,57 RTEXT "Cartridge ROM file:",IDC_FLASHTEXT2,8,93,75,10 COMBOBOX IDC_CARTFILE,89,90,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP @@ -51,45 +71,46 @@ BEGIN PUSHBUTTON "...",IDC_FLASHCHOOSER,280,110,10,15 GROUPBOX "HRTMon Settings",-1,5,136,290,31 CONTROL "Enable HRTMon [] HRTMon is monitor/debugger similar to Action Replay series, default activation key is Page Up.",IDC_HRTMON, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,89,148,75,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,89,148,84,10 END -IDD_DISPLAY DIALOGEX 0, 0, 300, 202 +IDD_DISPLAY DIALOGEX 0, 0, 300, 235 STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN GROUPBOX "Screen",IDC_SCREENRESTEXT,12,0,199,67,BS_LEFT - RTEXT "Full screen:",IDC_SELECTRESTEXT,17,17,38,15,SS_CENTERIMAGE + RTEXT "Full screen:",IDC_SELECTRESTEXT,15,17,40,15,SS_CENTERIMAGE COMBOBOX IDC_DISPLAYSELECT,59,10,147,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_RESOLUTION,59,27,52,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_REFRESHRATE,145,27,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "Windowed:",IDC_WINDOWEDTEXT,18,51,37,8 EDITTEXT IDC_XSIZE,59,48,35,12,ES_NUMBER EDITTEXT IDC_YSIZE,103,48,35,12,ES_NUMBER - CONTROL "Vertical sync",IDC_VSYNC,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,147,49,54,10 - GROUPBOX "Settings",IDC_SETTINGSTEXT,12,73,199,93 - CONTROL "Full-screen native modes",IDC_AFULLSCREEN,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,85,92,10 - CONTROL "Full-screen RTG modes",IDC_PFULLSCREEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,85,87,10 - CONTROL "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,99,92,10 - CONTROL "Force low resolution",IDC_LORES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,99,85,10 - LTEXT "Refresh:",IDC_REFRESHTEXT,18,129,28,8 - CONTROL "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,124,75,20 - EDITTEXT IDC_RATETEXT,127,128,77,12,ES_CENTER | ES_READONLY + CONTROL "Vertical sync",IDC_VSYNC,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,147,49,57,10 + GROUPBOX "Settings",IDC_SETTINGSTEXT,12,73,199,125 + CONTROL "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,19,126,92,10 + CONTROL "Force low resolution",IDC_LORES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,126,89,10 + LTEXT "Refresh:",IDC_REFRESHTEXT,18,162,28,8 + CONTROL "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,157,75,20 + EDITTEXT IDC_RATETEXT,127,161,77,12,ES_CENTER | ES_READONLY GROUPBOX "Centering",IDC_STATIC,221,0,61,67 - CONTROL "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,16,45,10 - CONTROL "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,32,39,10 + CONTROL "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,16,49,10 + CONTROL "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,32,49,10 GROUPBOX "Line Mode",IDC_LINEMODE,222,73,61,73 CONTROL "Normal",IDC_LM_NORMAL,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,231,89,44,10 CONTROL "Double",IDC_LM_DOUBLED,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,105,45,10 CONTROL "Scanlines",IDC_LM_SCANLINES,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,121,46,10 - COMBOBOX IDC_DA_MODE,35,183,58,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | NOT WS_VISIBLE | WS_VSCROLL | WS_TABSTOP - CONTROL "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | NOT WS_VISIBLE | WS_TABSTOP,99,179,101,20 - PUSHBUTTON "Detect Pixel Format",IDC_TEST16BIT,210,181,73,14 - LTEXT "FPS adj.:",IDC_REFRESH2TEXT,17,149,30,8 - CONTROL "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,144,127,20 - EDITTEXT IDC_RATE2TEXT,178,148,26,12,ES_CENTER | ES_READONLY + COMBOBOX IDC_DA_MODE,35,217,58,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | NOT WS_VISIBLE | WS_VSCROLL | WS_TABSTOP + CONTROL "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | NOT WS_VISIBLE | WS_TABSTOP,99,213,101,20 + LTEXT "FPS adj.:",IDC_REFRESH2TEXT,16,182,32,8 + CONTROL "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,177,127,20 + EDITTEXT IDC_RATE2TEXT,178,181,26,12,ES_CENTER | ES_READONLY COMBOBOX IDC_RESOLUTIONDEPTH,112,27,32,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,113,85,10 + CONTROL "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,140,89,10 + COMBOBOX IDC_SCREENMODE_NATIVE,100,85,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_SCREENMODE_RTG,100,103,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + RTEXT "Native mode:",IDC_STATIC,19,85,59,15,SS_CENTERIMAGE + RTEXT "Windowed:",IDC_WINDOWEDTEXT,15,51,40,8 + RTEXT "RTG mode:",IDC_STATIC,19,101,59,15,SS_CENTERIMAGE END IDD_MEMORY DIALOGEX 0, 0, 300, 175 @@ -122,47 +143,48 @@ BEGIN EDITTEXT IDC_MBRAM2,243,142,30,12,ES_CENTER | ES_READONLY END -IDD_CPU DIALOGEX 0, 0, 300, 177 +IDD_CPU DIALOGEX 0, 0, 300, 192 STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN - GROUPBOX "CPU",IDC_STATIC,5,5,81,166,BS_LEFT - CONTROL "68000",IDC_CPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,10,18,63,10 - CONTROL "68010",IDC_CPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,33,65,10 - CONTROL "68EC020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,48,65,10 - CONTROL "68EC020 + FPU",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,63,68,10 - CONTROL "68020",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,78,63,10 - CONTROL "68020 + FPU",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,93,64,10 - CONTROL "68040",IDC_CPU6,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,108,66,10 + GROUPBOX "CPU",IDC_STATIC,5,3,81,148,BS_LEFT + CONTROL "68000",IDC_CPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,10,16,63,10 + CONTROL "68010",IDC_CPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,31,65,10 + CONTROL "68EC020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,46,65,10 + CONTROL "68EC020 + FPU",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,61,68,10 + CONTROL "68020",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,76,63,10 + CONTROL "68020 + FPU",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,91,64,10 + CONTROL "68040",IDC_CPU6,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,106,66,10 CONTROL "More compatible [] Emulate 68000's prefetch registers. More compatible but slower.",IDC_COMPATIBLE, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,126,73,10 + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,10,124,73,8 CONTROL "JIT [] Enable just-in-time CPU emulator. Significantly increases the speed of the CPU emulation. Requires 68020 or 68040 CPU.",IDC_JITENABLE, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,149,73,10 - GROUPBOX "CPU Emulation Speed",IDC_STATIC,90,5,205,86 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,137,73,10 + GROUPBOX "CPU Emulation Speed",IDC_STATIC,90,3,205,90 CONTROL "Fastest possible, but maintain chipset timing",IDC_CS_HOST, "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,95,18,195,10 CONTROL "Match A500 speed",IDC_CS_68000,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,32,195,10 CONTROL "Adjustable between CPU and chipset",IDC_CS_ADJUSTABLE, "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,47,195,10 - RTEXT "CPU",IDC_CS_CPU_TEXT,96,71,15,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,66,67,20 - LTEXT "Chipset",IDC_CS_CHIPSET_TEXT,182,71,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP + RTEXT "CPU",IDC_CS_CPU_TEXT,96,73,15,10,SS_CENTERIMAGE | WS_TABSTOP + CONTROL "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,68,67,20 + LTEXT "Chipset",IDC_CS_CHIPSET_TEXT,182,73,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP RTEXT "CPU idle",IDC_CS_CPU_TEXT2,236,56,32,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "",IDC_CPUIDLE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,219,66,69,20 - GROUPBOX "Advanced JIT Settings",IDC_STATIC,90,92,205,79 - RTEXT "Cache size:",IDC_CS_CACHE_TEXT,95,109,45,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "Slider1",IDC_CACHE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,140,104,115,20 - EDITTEXT IDC_CACHETEXT,255,109,30,12,ES_CENTER | ES_READONLY - CONTROL "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,128,60,10 - CONTROL "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,142,60,10 - CONTROL "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,60,10 - CONTROL "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,128,61,10 - CONTROL "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,142,60,10 - CONTROL "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,230,128,34,10 - CONTROL "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,142,45,10 - CONTROL "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,155,64,10 - CONTROL "More accurate FPU [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,137,73,10 + CONTROL "",IDC_CPUIDLE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,219,68,69,20 + GROUPBOX "Advanced JIT Settings",IDC_STATIC,90,94,205,93 + RTEXT "Cache size:",IDC_CS_CACHE_TEXT,95,113,45,10,SS_CENTERIMAGE | WS_TABSTOP + CONTROL "Slider1",IDC_CACHE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,140,108,115,20 + EDITTEXT IDC_CACHETEXT,255,113,30,12,ES_CENTER | ES_READONLY + CONTROL "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,141,60,10 + CONTROL "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,60,10 + CONTROL "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,168,60,10 + CONTROL "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,141,61,10 + CONTROL "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,155,60,10 + CONTROL "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,230,141,34,10 + CONTROL "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,155,45,10 + CONTROL "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,168,59,10 + CONTROL "More compatible [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,169,73,10 + GROUPBOX "FPU",IDC_STATIC,6,155,81,32,BS_LEFT END IDD_FLOPPY DIALOGEX 0, 0, 300, 240 @@ -218,14 +240,14 @@ EXSTYLE WS_EX_CONTEXTHELP FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "List1",IDC_VOLUMELIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,0,290,182 - PUSHBUTTON "Add &Directory...",IDC_NEW_FS,5,186,60,15 - PUSHBUTTON "Add &Hardfile...",IDC_NEW_HF,70,186,60,15 - PUSHBUTTON "Add Ha&rd Drive...",IDC_NEW_HD,135,186,60,15 + PUSHBUTTON "Add &Directory...",IDC_NEW_FS,5,186,64,15 + PUSHBUTTON "Add &Hardfile...",IDC_NEW_HF,74,186,64,15 + PUSHBUTTON "Add Ha&rd Drive...",IDC_NEW_HD,143,186,65,15 PUSHBUTTON "Remove",IDC_REMOVE,235,186,60,15 PUSHBUTTON "&Properties",IDC_EDIT,235,207,60,15 CONTROL "Add PC drives at startup",IDC_MAPDRIVES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,205,100,10 - CONTROL "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,205,115,10 - CONTROL "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,216,115,10 + CONTROL "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,205,119,10 + CONTROL "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,216,121,10 CONTROL "Include network drives",IDC_MAPDRIVES_NET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,216,101,10 END @@ -236,10 +258,10 @@ BEGIN RTEXT "Sound device:",IDC_SOUNDCARD,8,9,51,13,SS_CENTERIMAGE COMBOBOX IDC_SOUNDCARDLIST,64,9,229,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Sound Emulation",IDC_SOUNDSETTINGS,5,30,120,81 - CONTROL "Disabled",IDC_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,45,43,10 - CONTROL "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,88,10 - CONTROL "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,42,10 - CONTROL "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,93,10 + CONTROL "Disabled",IDC_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,45,101,10 + CONTROL "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,102,10 + CONTROL "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,102,10 + CONTROL "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,101,10 GROUPBOX "Volume",IDC_STATIC,131,36,164,31 CONTROL "",IDC_SOUNDVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,44,105,20 EDITTEXT IDC_SOUNDVOLUME2,247,47,40,12,ES_CENTER | ES_READONLY @@ -247,17 +269,17 @@ BEGIN CONTROL "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,138,81,106,19 EDITTEXT IDC_SOUNDBUFFERMEM,248,84,40,12,ES_CENTER | ES_READONLY GROUPBOX "Settings",IDC_SOUNDINTERPOLATION2,6,114,290,60 - LTEXT "Frequency:",IDC_SOUNDFREQTXT,11,124,37,8,SS_CENTERIMAGE + LTEXT "Frequency:",IDC_SOUNDFREQTXT,11,124,53,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDFREQ,13,133,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - LTEXT "Audio filter:",IDC_SOUNDFILTERTXT,209,148,34,8,SS_CENTERIMAGE + LTEXT "Audio filter:",IDC_SOUNDFILTERTXT,209,148,77,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDFILTER,209,157,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo mode:",IDC_SOUNDSTEREOTXT,74,124,41,8,SS_CENTERIMAGE + LTEXT "Stereo mode:",IDC_SOUNDSTEREOTXT,74,124,57,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDSTEREO,73,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,41,8,SS_CENTERIMAGE + LTEXT "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,75,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDINTERPOLATION,209,132,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,56,8,SS_CENTERIMAGE + LTEXT "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,63,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDSTEREOSEP,142,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo mixing delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE + LTEXT "Stereo delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE COMBOBOX IDC_SOUNDSTEREOMIX,142,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Floppy Drive Sound Emulation",IDC_STATIC,6,177,290,46 CONTROL "",IDC_SOUNDDRIVEVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,14,185,107,19 @@ -265,7 +287,7 @@ BEGIN COMBOBOX IDC_SOUNDDRIVE,237,187,46,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_SOUNDDRIVESELECT,18,205,265,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_SOUNDSWAP,73,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Swap channels:",IDC_SOUNDSWAPTXT,74,148,50,8,SS_CENTERIMAGE + LTEXT "Swap channels:",IDC_SOUNDSWAPTXT,74,148,61,8,SS_CENTERIMAGE CONTROL "Automatic switching",IDC_SOUND_AUTO,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,14,95,103,10 END @@ -274,23 +296,23 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "",IDC_CONFIGTREE,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,6,3,289,153,WS_EX_CLIENTEDGE - RTEXT "Name:",IDC_STATIC,0,161,40,15,SS_CENTERIMAGE - EDITTEXT IDC_EDITNAME,44,162,150,13,ES_AUTOHSCROLL - RTEXT "Description:",IDC_STATIC,4,183,37,15,SS_CENTERIMAGE - EDITTEXT IDC_EDITDESCRIPTION,44,183,150,13,ES_AUTOHSCROLL - RTEXT "Link:",IDC_STATIC,0,204,40,15,SS_CENTERIMAGE - COMBOBOX IDC_CONFIGLINK,44,205,97,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + RTEXT "Name:",IDC_STATIC,4,161,40,15,SS_CENTERIMAGE + EDITTEXT IDC_EDITNAME,48,162,146,13,ES_AUTOHSCROLL + RTEXT "Description:",IDC_STATIC,4,183,41,15,SS_CENTERIMAGE + EDITTEXT IDC_EDITDESCRIPTION,48,183,146,13,ES_AUTOHSCROLL + RTEXT "Link:",IDC_STATIC,4,204,40,15,SS_CENTERIMAGE + COMBOBOX IDC_CONFIGLINK,48,205,93,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP CONTROL "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,206,48,10 EDITTEXT IDC_EDITPATH,199,161,49,15,ES_AUTOHSCROLL | WS_DISABLED CONTROL "Autoload",IDC_CONFIGAUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,253,163,42,10 GROUPBOX "Additional Information",IDC_STATIC,199,179,96,38,BS_LEFT - PUSHBUTTON "View",IDC_VIEWINFO,210,195,35,15 - PUSHBUTTON "Set",IDC_SETINFO,250,195,35,15 - PUSHBUTTON "Load",IDC_QUICKLOAD,5,225,40,15 - PUSHBUTTON "Save",IDC_QUICKSAVE,50,225,40,15 - PUSHBUTTON "Load From...",IDC_LOAD,125,225,45,15 - PUSHBUTTON "Delete",IDC_DELETE,255,225,40,15 - PUSHBUTTON "Save As...",IDC_SAVE,175,225,40,15 + PUSHBUTTON "View",IDC_VIEWINFO,208,195,37,15 + PUSHBUTTON "Set",IDC_SETINFO,250,195,37,15 + PUSHBUTTON "Load",IDC_QUICKLOAD,5,225,44,15 + PUSHBUTTON "Save",IDC_QUICKSAVE,54,225,44,15 + PUSHBUTTON "Load From...",IDC_LOAD,121,225,49,15 + PUSHBUTTON "Delete",IDC_DELETE,251,225,44,15 + PUSHBUTTON "Save As...",IDC_SAVE,175,225,44,15 END IDD_PORTS DIALOGEX 0, 0, 300, 238 @@ -301,12 +323,12 @@ BEGIN RTEXT "Printer:",IDC_STATIC,12,15,25,15,SS_CENTERIMAGE COMBOBOX IDC_PRINTERLIST,49,15,153,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "Flush print job",IDC_FLUSHPRINTER,220,14,58,12 - CONTROL "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,78,12 - CONTROL "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,93,33,100,12 - RTEXT "Autoflush timeout [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE + CONTROL "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,79,12 + CONTROL "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,95,33,110,12 + RTEXT "Autoflush [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE EDITTEXT IDC_PRINTERAUTOFLUSH,263,33,25,12,ES_NUMBER - RTEXT "Ghostscript extra parameters:",IDC_STATIC,12,49,91,15,SS_CENTERIMAGE - EDITTEXT IDC_PS_PARAMS,120,50,169,12,ES_AUTOHSCROLL + RTEXT "Ghostscript extra parameters:",IDC_STATIC,12,49,102,15,SS_CENTERIMAGE + EDITTEXT IDC_PS_PARAMS,124,50,165,12,ES_AUTOHSCROLL GROUPBOX "Serial Port",IDC_SERIALFRAME,4,72,292,48 COMBOBOX IDC_SERIAL,49,84,232,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,102,48,13 @@ -362,15 +384,15 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN GROUPBOX "Advanced",IDC_STATIC,8,2,285,110 - CONTROL "Untrap mouse with middle button",IDC_JULIAN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,15,120,10 - CONTROL "Show GUI on startup",IDC_SHOWGUI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,27,120,10 - CONTROL "On-screen LEDs",IDC_SHOWLEDS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,40,115,10 - CONTROL "uaescsi.device",IDC_SCSIDEVICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,53,117,10 - CONTROL "Don't show taskbar button",IDC_NOTASKBARBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,66,117,10 - CONTROL "bsdsocket.library emulation",IDC_SOCKETS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,15,120,10 - CONTROL "Use CTRL-F11 to quit",IDC_CTRLF11,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,27,120,10 - CONTROL "Don't use RGB overlays",IDC_NOOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,40,120,10 - CONTROL "Synchronize clock",IDC_CLOCKSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,66,115,10 + CONTROL "Untrap mouse with middle button",IDC_JULIAN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,15,129,10 + CONTROL "Show GUI on startup",IDC_SHOWGUI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,27,120,10 + CONTROL "On-screen LEDs",IDC_SHOWLEDS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,40,115,10 + CONTROL "uaescsi.device",IDC_SCSIDEVICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,53,117,10 + CONTROL "Don't show taskbar button",IDC_NOTASKBARBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,66,117,10 + CONTROL "bsdsocket.library emulation",IDC_SOCKETS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,15,120,10 + CONTROL "Use CTRL-F11 to quit",IDC_CTRLF11,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,27,120,10 + CONTROL "Don't use RGB overlays",IDC_NOOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,40,120,10 + CONTROL "Synchronize clock",IDC_CLOCKSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,66,115,10 GROUPBOX "Keyboard LEDs",IDC_STATIC,7,140,85,94 COMBOBOX IDC_KBLED1,22,154,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_KBLED2,22,173,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -386,14 +408,14 @@ BEGIN COMBOBOX IDC_STATE_RATE,248,197,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP RTEXT "Recording buffer (MB):",IDC_STATIC,157,219,83,10,SS_CENTERIMAGE | WS_TABSTOP COMBOBOX IDC_STATE_BUFFERSIZE,248,217,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - CONTROL "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,79,117,10 - CONTROL "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,79,115,10 + CONTROL "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,79,117,10 + CONTROL "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,79,115,10 CONTROL "USB mode",IDC_KBLED_USB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,216,64,10 - COMBOBOX IDC_SCSIMODE,159,51,104,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_SCSIMODE,161,51,104,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_LANGUAGE,103,121,179,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Language",IDC_STATIC,7,112,285,25 - CONTROL "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,92,117,10 - CONTROL "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,92,119,10 + CONTROL "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,92,120,10 + CONTROL "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,92,119,10 END IDD_HARDFILE DIALOGEX 0, 0, 299, 212 @@ -429,8 +451,8 @@ BEGIN PUSHBUTTON "Cancel",IDCANCEL,158,191,50,14 EDITTEXT IDC_HF_DOSTYPE,146,158,61,15 COMBOBOX IDC_HF_TYPE,50,158,80,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "DOS type",IDC_STATIC,212,160,30,10,SS_CENTERIMAGE - RTEXT "MB",IDC_STATIC,212,138,11,10,SS_CENTERIMAGE + RTEXT "DOS type",IDC_STATIC,214,160,32,10,SS_CENTERIMAGE + RTEXT "MB",IDC_STATIC,214,138,13,10,SS_CENTERIMAGE RTEXT "Type:",IDC_STATIC,18,160,25,10,SS_CENTERIMAGE END @@ -483,17 +505,17 @@ BEGIN GROUPBOX "Options",IDC_STATIC,168,11,114,89 CONTROL "Immediate Blitter [] Faster but less compatible blitter emulation.",IDC_BLITIMM, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,30,96,10 - CONTROL "Cycle-exact CPU and Blitter [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT, + CONTROL "Cycle-exact [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT, "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,43,100,10 GROUPBOX "Collision Level",IDC_STATIC,14,105,267,48 CONTROL "None [] Collision hardware emulation disabled.",IDC_COLLISION0, - "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,50,10 + "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,59,10 CONTROL "Sprites only [] Emulate only sprite vs. sprite collisions.",IDC_COLLISION1, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,50,10 + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,62,10 CONTROL "Sprites and Sprites vs. Playfield [] Recommended collision emulation level.",IDC_COLLISION2, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,121,161,10 + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,121,161,10 CONTROL "Full [] 100% collision hardware emulation. Only very few games need this option. Slowest.",IDC_COLLISION3, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,137,82,10 + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,137,119,10 GROUPBOX "Sound Emulation",IDC_STATIC,13,159,268,65 CONTROL "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,39,175,102,10 CONTROL "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,190,91,10 @@ -521,15 +543,15 @@ BEGIN CONTROL "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,95,81,85,10 CONTROL "Power Supply 60Hz",IDC_CS_CIAA_TOD3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,192,81,88,10 CONTROL "Boot ROM Mirror",IDC_CS_KSMIRROR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,128,80,10 - CONTROL "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,128,86,10 + CONTROL "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,128,88,10 CONTROL "CD32 CD",IDC_CS_CD32CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,141,76,10 - CONTROL "CD32 C2P",IDC_CS_CD32C2P,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,141,85,10 + CONTROL "CD32 C2P",IDC_CS_CD32C2P,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,141,87,10 CONTROL "CD32 NVRAM",IDC_CS_CD32NVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,141,84,10 CONTROL "CDTV CD",IDC_CS_CDTVCD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,154,47,10 - CONTROL "CDTV SRAM",IDC_CS_CDTVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,153,85,10 + CONTROL "CDTV SRAM",IDC_CS_CDTVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,153,87,10 CONTROL "CDTV SRAM Expansion",IDC_CS_CDTVRAMEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,153,90,10 CONTROL "A600/A1200 IDE",IDC_CS_IDE1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,166,79,10 - CONTROL "A4000 IDE",IDC_CS_IDE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,166,84,10 + CONTROL "A4000 IDE",IDC_CS_IDE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,166,88,10 CONTROL "Ramsey revision:",IDC_CS_RAMSEY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,201,71,10 EDITTEXT IDC_CS_RAMSEYREV,94,199,45,13,ES_AUTOHSCROLL CONTROL "Fat Gary revision:",IDC_CS_FATGARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,214,71,10 @@ -550,16 +572,16 @@ BEGIN GROUPBOX "Output Properties",IDC_STATIC,5,8,274,118 EDITTEXT IDC_AVIOUTPUT_FILETEXT,15,21,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE PUSHBUTTON "...",IDC_AVIOUTPUT_FILE,249,20,19,12 - CONTROL "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,32,11 + CONTROL "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,39,11 CONTROL "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,36,209,11 - CONTROL "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,32,11 + CONTROL "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,39,11 CONTROL "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,50,209,11 CONTROL "Disable frame rate limit while recording",IDC_AVIOUTPUT_FRAMELIMITER, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,136,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,158,10 CONTROL "AVI output enabled",IDC_AVIOUTPUT_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,15,103,108,14 CONTROL "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,133,103,66,14 CONTROL "NTSC",IDC_AVIOUTPUT_NTSC,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,204,103,66,14 - CONTROL "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,156,84,97,11 + CONTROL "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,166,84,87,11 LTEXT "fps",IDC_AVIOUTPUT_FPS_STATIC,255,84,19,8 PUSHBUTTON "Save screenshot",IDC_SCREENSHOT,16,141,76,14 GROUPBOX "Ripper",IDC_STATIC,5,127,274,38 @@ -570,7 +592,7 @@ BEGIN CONTROL "Playback",IDC_INPREC_PLAY,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,16,178,77,14 CONTROL "Alt. playback mode",IDC_INPREC_PLAYMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,103,180,78,10 CONTROL "Disable sound output while recording",IDC_AVIOUTPUT_NOSOUNDOUTPUT, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,85,136,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,85,148,10 END IDD_INPUT DIALOGEX 0, 0, 300, 242 @@ -583,16 +605,16 @@ BEGIN CONTROL "List1",IDC_INPUTLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,22,290,146 COMBOBOX IDC_INPUTAMIGACNT,5,174,24,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_INPUTAMIGA,33,174,262,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "Joystick dead zone (%):",-1,8,196,76,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTDEADZONE,89,195,25,12,ES_NUMBER - RTEXT "Autofire rate (frames):",-1,9,212,68,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTAUTOFIRERATE,89,210,25,12,ES_NUMBER - RTEXT "Digital joy-mouse speed:",-1,121,196,76,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDD,207,195,25,12,ES_NUMBER - RTEXT "Analog joy-mouse speed:",-1,120,212,80,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDA,207,211,25,12,ES_NUMBER - RTEXT "Mouse speed:",-1,132,228,68,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDM,207,227,25,12,ES_NUMBER + RTEXT "Joystick dead zone (%):",-1,7,196,79,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTDEADZONE,92,195,25,12,ES_NUMBER + RTEXT "Autofire rate (frames):",-1,10,212,76,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTAUTOFIRERATE,92,210,25,12,ES_NUMBER + RTEXT "Digital joy-mouse speed:",-1,124,196,84,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDD,215,195,25,12,ES_NUMBER + RTEXT "Analog joy-mouse speed:",-1,120,212,88,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDA,215,211,25,12,ES_NUMBER + RTEXT "Mouse speed:",-1,132,228,76,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDM,215,227,25,12,ES_NUMBER PUSHBUTTON "Copy from:",IDC_INPUTCOPY,249,195,45,14 COMBOBOX IDC_INPUTCOPYFROM,249,211,45,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "Swap 1<>2",IDC_INPUTSWAP,249,226,45,14 @@ -603,21 +625,21 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN GROUPBOX "Filter Settings",-1,0,0,294,186 - CONTROL "Enable",IDC_FILTERENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,17,38,10 - COMBOBOX IDC_FILTERMODE,67,15,56,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_FILTERFILTER,128,15,65,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Reset to defaults",IDC_FILTERDEFAULT,197,15,73,14 - RTEXT "Horizontal size:",-1,9,44,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,37,142,19 + CONTROL "Enable",IDC_FILTERENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,17,46,10 + COMBOBOX IDC_FILTERMODE,62,15,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_FILTERFILTER,128,15,81,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Reset to defaults",IDC_FILTERDEFAULT,213,15,73,14 + RTEXT "Horiz. size:",-1,4,44,54,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,37,152,19 EDITTEXT IDC_FILTERHZV,253,40,34,12,ES_CENTER | ES_READONLY - RTEXT "Vertical size:",-1,10,64,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,57,142,19 + RTEXT "Vert. size:",-1,5,64,54,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,57,152,19 EDITTEXT IDC_FILTERVZV,253,59,34,12,ES_CENTER | ES_READONLY - RTEXT "Horizontal position:",-1,10,84,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,77,141,19 + RTEXT "Horiz. position:",-1,5,84,55,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,77,151,19 EDITTEXT IDC_FILTERHOV,253,79,34,12,ES_CENTER | ES_READONLY - RTEXT "Vertical position:",-1,10,103,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,99,141,19 + RTEXT "Vert. position:",-1,5,103,55,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,99,151,19 EDITTEXT IDC_FILTERVOV,253,101,34,12,ES_CENTER | ES_READONLY RTEXT "Scanlines:",-1,27,133,57,10,SS_CENTERIMAGE CONTROL "Slider1",IDC_FILTERSL,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,94,126,157,19 @@ -630,8 +652,8 @@ BEGIN PUSHBUTTON "Load",IDC_FILTERPRESETLOAD,132,200,47,14 PUSHBUTTON "Save",IDC_FILTERPRESETSAVE,184,200,47,14 PUSHBUTTON "Delete",IDC_FILTERPRESETDELETE,236,200,47,14 - COMBOBOX IDC_FILTERHZMULT,77,43,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_FILTERVZMULT,77,63,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_FILTERHZMULT,67,43,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_FILTERVZMULT,67,63,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP CONTROL "Autoscale",IDC_FILTERAUTORES,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,26,168,63,10 END @@ -642,10 +664,10 @@ FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN LTEXT "Hard drive:",-1,7,11,35,10 COMBOBOX IDC_HARDDRIVE,49,9,325,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,245,33,50,10 - DEFPUSHBUTTON "Add hard drive",IDOK,176,30,57,14 + CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,247,33,55,10 + DEFPUSHBUTTON "Add hard drive",IDOK,173,30,65,14 PUSHBUTTON "Cancel",IDCANCEL,321,30,54,14 - DEFPUSHBUTTON "Create hard disk image file",IDC_HARDDRIVE_IMAGE,49,30,95,14 + DEFPUSHBUTTON "Create hard disk image file",IDC_HARDDRIVE_IMAGE,49,30,115,14 EDITTEXT IDC_PATH_NAME,89,49,169,15,ES_AUTOHSCROLL | NOT WS_VISIBLE END @@ -654,18 +676,18 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN GROUPBOX "When Active",IDC_STATIC,8,7,88,73 - RTEXT "Run at priority:",IDC_ACTIVE_PRI,14,17,45,10,SS_CENTERIMAGE | WS_TABSTOP + RTEXT "Run at priority:",IDC_ACTIVE_PRI,14,17,52,10,SS_CENTERIMAGE | WS_TABSTOP COMBOBOX IDC_ACTIVE_PRIORITY,14,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "When Inactive",IDC_STATIC,102,7,92,73 - RTEXT "Run at priority:",IDC_INACTIVE_PRI,109,17,45,10,SS_CENTERIMAGE | WS_TABSTOP + RTEXT "Run at priority:",IDC_INACTIVE_PRI,109,17,51,10,SS_CENTERIMAGE | WS_TABSTOP COMBOBOX IDC_INACTIVE_PRIORITY,109,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Pause emulation",IDC_INACTIVE_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,50,69,10 - CONTROL "Disable sound output",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10 + CONTROL "Disable sound",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10 GROUPBOX "When Minimized",IDC_STATIC,199,7,92,73 - RTEXT "Run at priority:",IDC_MINIMIZED_PRI,207,18,45,10,SS_CENTERIMAGE | WS_TABSTOP + RTEXT "Run at priority:",IDC_MINIMIZED_PRI,207,18,51,10,SS_CENTERIMAGE | WS_TABSTOP COMBOBOX IDC_MINIMIZED_PRIORITY,207,30,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Pause emulation",IDC_MINIMIZED_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,50,69,10 - CONTROL "Disable sound output",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10 + CONTROL "Disable sound",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10 END IDD_DISK DIALOGEX 0, 0, 300, 242 @@ -673,9 +695,9 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_SETFOREGROUND | DS_3DLOOK | DS_CONTROL | DS FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN CONTROL "",IDC_DISKLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,4,6,292,196 - PUSHBUTTON "Remove floppy disk image",IDC_DISKLISTREMOVE,153,223,93,15 + PUSHBUTTON "Remove floppy disk image",IDC_DISKLISTREMOVE,149,223,101,15 COMBOBOX IDC_DISKTEXT,3,205,293,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Insert floppy disk image",IDC_DISKLISTINSERT,38,223,93,15 + PUSHBUTTON "Insert floppy disk image",IDC_DISKLISTINSERT,34,223,101,15 END IDD_PANEL DIALOGEX 0, 0, 420, 278 @@ -728,10 +750,10 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN GROUPBOX "Emulated Hardware",IDC_QUICKSTART_CONFIG,3,0,294,54 - RTEXT "Model:",IDC_STATIC,5,14,56,10,SS_CENTERIMAGE - COMBOBOX IDC_QUICKSTART_MODEL,65,12,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Configuration:",IDC_STATIC,5,33,56,10,SS_CENTERIMAGE - COMBOBOX IDC_QUICKSTART_CONFIGURATION,65,31,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Model:",IDC_STATIC,5,14,50,10,SS_CENTERIMAGE + COMBOBOX IDC_QUICKSTART_MODEL,59,12,233,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Configuration:",IDC_STATIC,5,33,50,10,SS_CENTERIMAGE + COMBOBOX IDC_QUICKSTART_CONFIGURATION,59,31,233,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Compatibility vs Required CPU Power ",IDC_QUICKSTART_COMPA,3,56,294,33 RTEXT "Best compatibility",IDC_STATIC,13,70,67,10,SS_CENTERIMAGE CONTROL "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,88,65,115,21 @@ -740,21 +762,21 @@ BEGIN RTEXT "Configuration:",IDC_STATIC,5,105,55,10,SS_CENTERIMAGE COMBOBOX IDC_QUICKSTART_HOSTCONFIG,65,103,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Emulated Floppy Drives",IDC_QUICKSTART_DF,3,126,294,84 - LTEXT "Floppy drive DF0:",IDC_STATIC,10,138,56,10,SS_CENTERIMAGE - PUSHBUTTON "Select disk image",IDC_DF0QQ,77,135,98,15 + LTEXT "Floppy drive DF0:",IDC_STATIC,10,138,64,10,SS_CENTERIMAGE + PUSHBUTTON "Select disk image",IDC_DF0QQ,82,135,98,15 RTEXT "Write-protected",IDC_STATIC,180,139,58,10,SS_CENTERIMAGE CONTROL "",IDC_DF0WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,137,10,15 PUSHBUTTON "Eject",IDC_EJECT0Q,260,136,30,15 COMBOBOX IDC_DF0TEXTQ,9,154,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - LTEXT "Floppy drive DF1:",IDC_STATIC,10,176,56,10,SS_CENTERIMAGE - PUSHBUTTON "Select disk image",IDC_DF1QQ,77,172,98,15 + LTEXT "Floppy drive DF1:",IDC_STATIC,10,176,63,10,SS_CENTERIMAGE + PUSHBUTTON "Select disk image",IDC_DF1QQ,82,172,98,15 RTEXT "Write-protected",IDC_STATIC,180,175,58,10,SS_CENTERIMAGE CONTROL "",IDC_DF1WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,173,10,15 PUSHBUTTON "Eject",IDC_EJECT1Q,260,172,30,15 COMBOBOX IDC_DF1TEXTQ,9,190,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "Set configuration",IDC_QUICKSTART_SETCONFIG,9,219,72,15,NOT WS_VISIBLE GROUPBOX "Mode",IDC_STATIC,190,211,107,27,BS_LEFT - CONTROL "Start in Quickstart mode",IDC_QUICKSTARTMODE,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,199,222,94,10 + CONTROL "Start in Quickstart mode",IDC_QUICKSTARTMODE,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,197,222,94,10 END IDD_FRONTEND DIALOGEX 0, 0, 420, 242 @@ -787,6 +809,32 @@ BEGIN CTEXT "Custom input event",IDC_STRINGBOX_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP END +IDD_DEBUGGER DIALOGEX 0, 0, 454, 298 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_THICKFRAME +EXSTYLE WS_EX_CONTROLPARENT +CAPTION "WinUAE Debugger" +FONT 8, "Courier New", 0, 0, 0x0 +BEGIN + EDITTEXT IDC_DBG_OUTPUT1,1,79,370,205,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_VSCROLL | NOT WS_TABSTOP + EDITTEXT IDC_DBG_OUTPUT2,1,79,370,205,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_VSCROLL | NOT WS_TABSTOP + LISTBOX IDC_DBG_MEM,1,92,370,205,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_DASM,1,92,370,205,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + EDITTEXT IDC_DBG_MEMINPUT,1,79,36,12,ES_AUTOHSCROLL | ES_WANTRETURN + EDITTEXT IDC_DBG_INPUT,1,285,354,12,ES_AUTOHSCROLL | ES_WANTRETURN + PUSHBUTTON "?",IDC_DBG_HELP,356,285,15,12,NOT WS_TABSTOP + PUSHBUTTON "Set to PC",IDC_DBG_MEMTOPC,38,79,45,12,NOT WS_TABSTOP + LISTBOX IDC_DBG_DREG,1,1,52,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_AREG,54,1,52,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_AMEM,106,1,231,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_CCR,338,1,57,42,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_SP_VBR,338,44,115,34,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_MISC,396,1,57,42,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_PC,1,68,52,10,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_PREFETCH,54,68,283,10,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_FPREG,372,79,81,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT + LISTBOX IDC_DBG_FPSR,372,146,81,34,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT +END + ///////////////////////////////////////////////////////////////////////////// // @@ -823,8 +871,8 @@ IDI_PATHS ICON "paths.ico" // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,1,0 - PRODUCTVERSION 1,4,1,0 + FILEVERSION 1,4,2,0 + PRODUCTVERSION 1,4,2,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -840,12 +888,12 @@ BEGIN BLOCK "040904b0" BEGIN VALUE "FileDescription", "WinUAE" - VALUE "FileVersion", "1.4.1" + VALUE "FileVersion", "1.4.2" VALUE "InternalName", "WinUAE" VALUE "LegalCopyright", "© 1996-2007 under the GNU Public License (GPL)" VALUE "OriginalFilename", "WinUAE.exe" VALUE "ProductName", "WinUAE" - VALUE "ProductVersion", "1.4.1" + VALUE "ProductVersion", "1.4.2" END END BLOCK "VarFileInfo" @@ -1039,8 +1087,6 @@ BEGIN IDS_DELETECONFIGCONFIRMATION "Are you sure you want to Delete this configuration?\n" IDS_DELETECONFIGTITLE "Confirm Delete" - IDS_GFXCARDCHECK "WinUAE will now determine the 16-bit pixel format of your graphics card. Your screen will go black for two seconds, with a resolution of 640x480 @ 60Hz. This procedure is required for best rendering of the emulation environment on 16-bit display-modes, and should be done whenever you run WinUAE for the first time, or install a new graphics card in your PC. Proceed with this test?" - IDS_GFXCARDTITLE "Pixel format detection" IDS_MUSTSELECTPATH "You must select a path!" IDS_SETTINGSERROR "Settings error" IDS_MUSTSELECTNAME "You must select a name for the volume!" @@ -1055,6 +1101,9 @@ BEGIN IDS_INP "WinUAE Input Recording" IDS_RESTOREINP "Playback a WinUAE input recording" IDS_SAVEINP "Record a WinUAE input recording" + IDS_SCREEN_WINDOWED "Windowed" + IDS_SCREEN_FULLSCREEN "Fullscreen" + IDS_SCREEN_FULLWINDOW "Full-window" IDS_SOUND_MONO "Mono" IDS_SOUND_MIXED "Mixed" IDS_SOUND_STEREO "Stereo" diff --git a/od-win32/resources/winuae_minimal.rc b/od-win32/resources/winuae_minimal.rc index de964565..df1239f6 100755 --- a/od-win32/resources/winuae_minimal.rc +++ b/od-win32/resources/winuae_minimal.rc @@ -1,1215 +1,1225 @@ -// Microsoft Visual C++ generated resource script. -// -#include "resource." - -#define APSTUDIO_READONLY_SYMBOLS -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 2 resource. -// -#include "afxres.h" - -///////////////////////////////////////////////////////////////////////////// -#undef APSTUDIO_READONLY_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -// English (U.S.) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) -#ifdef _WIN32 -LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US -#pragma code_page(1252) -#endif //_WIN32 - -///////////////////////////////////////////////////////////////////////////// -// -// Dialog -// - -IDD_KICKSTART DIALOGEX 0, 0, 300, 176 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -EXSTYLE WS_EX_CONTEXTHELP -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "System ROM Settings",-1,5,0,290,74 - RTEXT "Main ROM file:",IDC_ROMTEXT,10,15,75,10 - COMBOBOX IDC_ROMFILE,89,12,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "...",IDC_KICKCHOOSER,280,10,10,15 - RTEXT "Extended ROM file:",IDC_ROMFILE2TEXT,10,35,75,10 - COMBOBOX IDC_ROMFILE2,89,31,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "...",IDC_ROMCHOOSER2,280,30,10,15 - CONTROL "MapROM emulation [] Creates a BlizKick-compatible memory area.",IDC_MAPROM, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,82,10 - CONTROL "ShapeShifter support [] Patches the system ROM for ShapeShifter compatibility.",IDC_KICKSHIFTER, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,54,80,10 - GROUPBOX "Miscellaneous",-1,5,76,290,57 - RTEXT "Cartridge ROM file:",IDC_FLASHTEXT2,8,93,75,10 - COMBOBOX IDC_CARTFILE,89,90,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "...",IDC_CARTCHOOSER,280,90,10,15 - RTEXT "Flash RAM file:",IDC_FLASHTEXT,8,112,75,10 - EDITTEXT IDC_FLASHFILE,89,110,185,13,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_FLASHCHOOSER,280,110,10,15 - GROUPBOX "HRTMon Settings",-1,5,136,290,31 - CONTROL "Enable HRTMon [] HRTMon is monitor/debugger similar to Action Replay series, default activation key is Page Up.",IDC_HRTMON, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,89,148,75,10 -END - -IDD_DISPLAY DIALOGEX 0, 0, 300, 202 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Screen",IDC_SCREENRESTEXT,12,0,199,67,BS_LEFT - RTEXT "Full screen:",IDC_SELECTRESTEXT,17,17,38,15,SS_CENTERIMAGE - COMBOBOX IDC_DISPLAYSELECT,59,10,147,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_RESOLUTION,59,27,52,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_REFRESHRATE,145,27,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "Windowed:",IDC_WINDOWEDTEXT,18,51,37,8 - EDITTEXT IDC_XSIZE,59,48,35,12,ES_NUMBER - EDITTEXT IDC_YSIZE,103,48,35,12,ES_NUMBER - CONTROL "Vertical sync",IDC_VSYNC,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,147,49,54,10 - GROUPBOX "Settings",IDC_SETTINGSTEXT,12,73,199,93 - CONTROL "Full-screen native modes",IDC_AFULLSCREEN,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,85,92,10 - CONTROL "Full-screen RTG modes",IDC_PFULLSCREEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,85,87,10 - CONTROL "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,99,92,10 - CONTROL "Force low resolution",IDC_LORES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,99,85,10 - LTEXT "Refresh:",IDC_REFRESHTEXT,18,129,28,8 - CONTROL "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,124,75,20 - EDITTEXT IDC_RATETEXT,127,128,77,12,ES_CENTER | ES_READONLY - GROUPBOX "Centering",IDC_STATIC,221,0,61,67 - CONTROL "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,16,45,10 - CONTROL "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,32,39,10 - GROUPBOX "Line Mode",IDC_LINEMODE,222,73,61,73 - CONTROL "Normal",IDC_LM_NORMAL,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,231,89,44,10 - CONTROL "Double",IDC_LM_DOUBLED,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,105,45,10 - CONTROL "Scanlines",IDC_LM_SCANLINES,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,121,46,10 - COMBOBOX IDC_DA_MODE,35,183,58,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | NOT WS_VISIBLE | WS_VSCROLL | WS_TABSTOP - CONTROL "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | NOT WS_VISIBLE | WS_TABSTOP,99,179,101,20 - PUSHBUTTON "Detect Pixel Format",IDC_TEST16BIT,210,181,73,14 - LTEXT "FPS adj.:",IDC_REFRESH2TEXT,17,149,30,8 - CONTROL "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,144,127,20 - EDITTEXT IDC_RATE2TEXT,178,148,26,12,ES_CENTER | ES_READONLY - COMBOBOX IDC_RESOLUTIONDEPTH,112,27,32,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,113,85,10 -END - -IDD_MEMORY DIALOGEX 0, 0, 300, 175 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -EXSTYLE WS_EX_CONTEXTHELP -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Memory Settings",-1,14,7,274,91 - RTEXT "Chip:",-1,24,31,20,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_CHIPMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,22,50,20 - EDITTEXT IDC_CHIPRAM,105,26,30,12,ES_CENTER | ES_READONLY - RTEXT "Slow:",-1,149,31,20,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_SLOWMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,22,60,20 - EDITTEXT IDC_SLOWRAM,243,25,30,12,ES_CENTER | ES_READONLY - RTEXT "Fast:",IDC_FASTTEXT,24,52,20,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,47,50,20 - EDITTEXT IDC_FASTRAM,105,53,30,12,ES_CENTER | ES_READONLY - RTEXT "Z3 Fast:",IDC_Z3TEXT,139,52,30,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_Z3FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,47,60,20 - EDITTEXT IDC_Z3FASTRAM,243,52,30,12,ES_CENTER | ES_READONLY - RTEXT "RTG: [] Graphics card memory. Required for RTG (Picasso96) emulation.",IDC_GFXCARDTEXT,81,77,90,10,SS_NOTIFY | SS_CENTERIMAGE - CONTROL "Slider1",IDC_P96MEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,72,60,20 - EDITTEXT IDC_P96RAM,243,75,30,12,ES_CENTER | ES_READONLY - GROUPBOX "Advanced Memory Settings",-1,13,104,275,65 - RTEXT "Motherboard RAM (Low area):",-1,39,122,129,10,SS_CENTERIMAGE - CONTROL "",IDC_MBMEM1,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,117,59,20 - EDITTEXT IDC_MBRAM1,243,121,30,12,ES_CENTER | ES_READONLY - RTEXT "Motherboard RAM (High area):",-1,39,144,127,10,SS_CENTERIMAGE - CONTROL "",IDC_MBMEM2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,139,59,20 - EDITTEXT IDC_MBRAM2,243,142,30,12,ES_CENTER | ES_READONLY -END - -IDD_CPU DIALOGEX 0, 0, 300, 177 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - GROUPBOX "CPU",IDC_STATIC,5,5,81,166,BS_LEFT - CONTROL "68000",IDC_CPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,10,18,63,10 - CONTROL "68010",IDC_CPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,33,65,10 - CONTROL "68EC020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,48,65,10 - CONTROL "68EC020 + FPU",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,63,68,10 - CONTROL "68020",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,78,63,10 - CONTROL "68020 + FPU",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,93,64,10 - CONTROL "68040",IDC_CPU6,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,108,66,10 - CONTROL "More compatible [] Emulate 68000's prefetch registers. More compatible but slower.",IDC_COMPATIBLE, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,126,73,10 - CONTROL "JIT [] Enable just-in-time CPU emulator. Significantly increases the speed of the CPU emulation. Requires 68020 or 68040 CPU.",IDC_JITENABLE, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,149,73,10 - GROUPBOX "CPU Emulation Speed",IDC_STATIC,90,5,205,86 - CONTROL "Fastest possible, but maintain chipset timing",IDC_CS_HOST, - "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,95,18,195,10 - CONTROL "Match A500 speed",IDC_CS_68000,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,32,195,10 - CONTROL "Adjustable between CPU and chipset",IDC_CS_ADJUSTABLE, - "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,47,195,10 - RTEXT "CPU",IDC_CS_CPU_TEXT,96,71,15,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,66,67,20 - LTEXT "Chipset",IDC_CS_CHIPSET_TEXT,182,71,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP - RTEXT "CPU idle",IDC_CS_CPU_TEXT2,236,56,32,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "",IDC_CPUIDLE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,219,66,69,20 - GROUPBOX "Advanced JIT Settings",IDC_STATIC,90,92,205,79 - RTEXT "Cache size:",IDC_CS_CACHE_TEXT,95,109,45,10,SS_CENTERIMAGE | WS_TABSTOP - CONTROL "Slider1",IDC_CACHE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,140,104,115,20 - EDITTEXT IDC_CACHETEXT,255,109,30,12,ES_CENTER | ES_READONLY - CONTROL "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,128,60,10 - CONTROL "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,142,60,10 - CONTROL "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,60,10 - CONTROL "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,128,61,10 - CONTROL "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,142,60,10 - CONTROL "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,230,128,34,10 - CONTROL "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,142,45,10 - CONTROL "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,155,64,10 - CONTROL "More accurate FPU [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,137,73,10 -END - -IDD_FLOPPY DIALOGEX 0, 0, 300, 240 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - RTEXT "DF0:",IDC_STATIC,10,7,20,10,SS_CENTERIMAGE - COMBOBOX IDC_DF0TEXT,2,22,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_DF0TYPE,123,6,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Write-protected",IDC_STATIC,174,8,59,10,SS_CENTERIMAGE - CONTROL "",IDC_DF0WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,4,10,15 - PUSHBUTTON "Eject",IDC_EJECT0,253,4,30,15 - PUSHBUTTON "...",IDC_DF0,287,4,10,15 - RTEXT "DF1:",IDC_STATIC,10,42,20,10,SS_CENTERIMAGE - COMBOBOX IDC_DF1TEXT,2,58,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_DF1TYPE,123,42,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Write-protected",IDC_STATIC,174,43,59,10,SS_CENTERIMAGE - CONTROL "",IDC_DF1WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,40,10,15 - PUSHBUTTON "Eject",IDC_EJECT1,253,40,30,15 - PUSHBUTTON "...",IDC_DF1,287,40,10,15 - RTEXT "DF2:",IDC_STATIC,10,77,20,10,SS_CENTERIMAGE - COMBOBOX IDC_DF2TEXT,2,93,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_DF2TYPE,123,77,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Write-protected",IDC_STATIC,174,77,59,10,SS_CENTERIMAGE - CONTROL "",IDC_DF2WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,75,9,15 - PUSHBUTTON "Eject",IDC_EJECT2,253,75,30,15 - PUSHBUTTON "...",IDC_DF2,287,75,10,15 - RTEXT "DF3:",IDC_STATIC,10,112,20,9,SS_CENTERIMAGE - COMBOBOX IDC_DF3TEXT,2,128,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_DF3TYPE,123,112,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Write-protected",IDC_STATIC,174,113,59,10,SS_CENTERIMAGE - CONTROL "",IDC_DF3WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,111,9,15 - PUSHBUTTON "Eject",IDC_EJECT3,253,110,30,15 - PUSHBUTTON "...",IDC_DF3,287,109,10,15 - GROUPBOX "New Floppy Disk Image",IDC_SETTINGSTEXT,5,183,289,49 - COMBOBOX IDC_FLOPPYTYPE,16,196,51,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Create Standard Disk [] Creates a standard 880 or 1760 KB ADF disk image.",IDC_CREATE,76,196,97,15 - PUSHBUTTON "Create Custom Disk [] Creates a low level (MFM) ADF disk image (about 2MB). Useful for programs that use non-standard disk formats (for example some save disks or DOS-formatted floppies)",IDC_CREATE_RAW,183,196,101,15 - GROUPBOX "Floppy Drive Emulation Speed",IDC_SETTINGSTEXT2,5,144,289,35 - CONTROL "",IDC_FLOPPYSPD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,32,152,116,20 - EDITTEXT IDC_FLOPPYSPDTEXT,169,155,107,12,ES_CENTER | ES_READONLY - PUSHBUTTON "Delete save image",IDC_SAVEIMAGE0,43,5,70,15,NOT WS_VISIBLE - PUSHBUTTON "Delete save image",IDC_SAVEIMAGE1,43,40,70,15,NOT WS_VISIBLE - PUSHBUTTON "Delete save image",IDC_SAVEIMAGE2,43,75,70,15,NOT WS_VISIBLE - PUSHBUTTON "Delete save image",IDC_SAVEIMAGE3,43,110,70,15,NOT WS_VISIBLE - EDITTEXT IDC_CREATE_NAME,75,215,98,13,ES_AUTOHSCROLL - RTEXT "Disk label:",IDC_STATIC,14,216,52,10,SS_CENTERIMAGE -END - -IDD_HARDDISK DIALOGEX 0, 0, 300, 231 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -EXSTYLE WS_EX_CONTEXTHELP -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - CONTROL "List1",IDC_VOLUMELIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,0,290,182 - PUSHBUTTON "Add &Directory...",IDC_NEW_FS,5,186,60,15 - PUSHBUTTON "Add &Hardfile...",IDC_NEW_HF,70,186,60,15 - PUSHBUTTON "Add Ha&rd Drive...",IDC_NEW_HD,135,186,60,15 - PUSHBUTTON "Remove",IDC_REMOVE,235,186,60,15 - PUSHBUTTON "&Properties",IDC_EDIT,235,207,60,15 - CONTROL "Add PC drives at startup",IDC_MAPDRIVES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,205,100,10 - CONTROL "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,205,115,10 - CONTROL "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,216,115,10 - CONTROL "Include network drives",IDC_MAPDRIVES_NET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,216,101,10 -END - -IDD_SOUND DIALOGEX 0, 0, 300, 231 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - RTEXT "Sound device:",IDC_SOUNDCARD,8,9,51,13,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDCARDLIST,64,9,229,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Sound Emulation",IDC_SOUNDSETTINGS,5,30,120,81 - CONTROL "Disabled",IDC_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,45,43,10 - CONTROL "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,88,10 - CONTROL "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,42,10 - CONTROL "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,93,10 - GROUPBOX "Volume",IDC_STATIC,131,36,164,31 - CONTROL "",IDC_SOUNDVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,44,105,20 - EDITTEXT IDC_SOUNDVOLUME2,247,47,40,12,ES_CENTER | ES_READONLY - GROUPBOX "Sound Buffer Size",IDC_STATIC,132,73,164,31 - CONTROL "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,138,81,106,19 - EDITTEXT IDC_SOUNDBUFFERMEM,248,84,40,12,ES_CENTER | ES_READONLY - GROUPBOX "Settings",IDC_SOUNDINTERPOLATION2,6,114,290,60 - LTEXT "Frequency:",IDC_SOUNDFREQTXT,11,124,37,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDFREQ,13,133,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - LTEXT "Audio filter:",IDC_SOUNDFILTERTXT,209,148,34,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDFILTER,209,157,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo mode:",IDC_SOUNDSTEREOTXT,74,124,41,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDSTEREO,73,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,41,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDINTERPOLATION,209,132,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,56,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDSTEREOSEP,142,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Stereo mixing delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE - COMBOBOX IDC_SOUNDSTEREOMIX,142,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Floppy Drive Sound Emulation",IDC_STATIC,6,177,290,46 - CONTROL "",IDC_SOUNDDRIVEVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,14,185,107,19 - EDITTEXT IDC_SOUNDDRIVEVOLUME2,124,191,40,12,ES_CENTER | ES_READONLY - COMBOBOX IDC_SOUNDDRIVE,237,187,46,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_SOUNDDRIVESELECT,18,205,265,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_SOUNDSWAP,73,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "Swap channels:",IDC_SOUNDSWAPTXT,74,148,50,8,SS_CENTERIMAGE - CONTROL "Automatic switching",IDC_SOUND_AUTO,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,14,95,103,10 -END - -IDD_LOADSAVE DIALOGEX 0, 0, 302, 241 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - CONTROL "",IDC_CONFIGTREE,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,6,3,289,153,WS_EX_CLIENTEDGE - RTEXT "Name:",IDC_STATIC,0,161,40,15,SS_CENTERIMAGE - EDITTEXT IDC_EDITNAME,44,162,150,13,ES_AUTOHSCROLL - RTEXT "Description:",IDC_STATIC,4,183,37,15,SS_CENTERIMAGE - EDITTEXT IDC_EDITDESCRIPTION,44,183,150,13,ES_AUTOHSCROLL - RTEXT "Link:",IDC_STATIC,0,204,40,15,SS_CENTERIMAGE - COMBOBOX IDC_CONFIGLINK,44,205,97,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,206,48,10 - EDITTEXT IDC_EDITPATH,199,161,49,15,ES_AUTOHSCROLL | WS_DISABLED - CONTROL "Autoload",IDC_CONFIGAUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,253,163,42,10 - GROUPBOX "Additional Information",IDC_STATIC,199,179,96,38,BS_LEFT - PUSHBUTTON "View",IDC_VIEWINFO,210,195,35,15 - PUSHBUTTON "Set",IDC_SETINFO,250,195,35,15 - PUSHBUTTON "Load",IDC_QUICKLOAD,5,225,40,15 - PUSHBUTTON "Save",IDC_QUICKSAVE,50,225,40,15 - PUSHBUTTON "Load From...",IDC_LOAD,125,225,45,15 - PUSHBUTTON "Delete",IDC_DELETE,255,225,40,15 - PUSHBUTTON "Save As...",IDC_SAVE,175,225,40,15 -END - -IDD_PORTS DIALOGEX 0, 0, 300, 238 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Parallel Port",IDC_SERPARFRAME,5,2,291,68 - RTEXT "Printer:",IDC_STATIC,12,15,25,15,SS_CENTERIMAGE - COMBOBOX IDC_PRINTERLIST,49,15,153,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Flush print job",IDC_FLUSHPRINTER,220,14,58,12 - CONTROL "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,78,12 - CONTROL "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,93,33,100,12 - RTEXT "Autoflush timeout [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE - EDITTEXT IDC_PRINTERAUTOFLUSH,263,33,25,12,ES_NUMBER - RTEXT "Ghostscript extra parameters:",IDC_STATIC,12,49,91,15,SS_CENTERIMAGE - EDITTEXT IDC_PS_PARAMS,120,50,169,12,ES_AUTOHSCROLL - GROUPBOX "Serial Port",IDC_SERIALFRAME,4,72,292,48 - COMBOBOX IDC_SERIAL,49,84,232,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - CONTROL "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,102,48,13 - CONTROL "RTS/CTS",IDC_SER_CTSRTS,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,65,102,55,12 - GROUPBOX "MIDI",IDC_MIDIFRAME,4,123,292,33 - RTEXT "Out:",IDC_MIDI,10,134,34,15,SS_CENTERIMAGE - COMBOBOX IDC_MIDIOUTLIST,50,134,95,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "In:",IDC_MIDI2,150,134,29,15,SS_CENTERIMAGE - COMBOBOX IDC_MIDIINLIST,185,134,95,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Mouse/Joystick Ports",IDC_PORT0,4,158,292,75 - COMBOBOX IDC_PORT0_JOYS,45,174,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_PORT1_JOYS,45,195,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Swap ports",IDC_SWAP,211,214,75,14 - RTEXT "Port 0:",IDC_STATIC,11,173,25,15,SS_CENTERIMAGE - RTEXT "Port 1:",IDC_STATIC,11,194,25,15,SS_CENTERIMAGE - LTEXT "X-Arcade layout information []#1",IDC_STATIC,16,213,106,15,SS_NOTIFY | SS_CENTERIMAGE - CONTROL "Direct []Use when emulating serial-link games on two PCs running WinUAE",IDC_SER_DIRECT, - "Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,132,103,65,12 - CONTROL "uaeserial.device",IDC_UAESERIAL,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,207,103,78,13 -END - -IDD_CONTRIBUTORS DIALOGEX 0, 0, 411, 242 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION -CAPTION "UAE Authors and Contributors..." -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - DEFPUSHBUTTON "Ok",ID_OK,177,219,53,14 - CONTROL "",IDC_CONTRIBUTORS,"RICHEDIT",TCS_HOTTRACK | TCS_VERTICAL | TCS_RAGGEDRIGHT | TCS_OWNERDRAWFIXED | TCS_MULTISELECT | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP,4,5,404,206 -END - -IDD_ABOUT DIALOGEX 0, 0, 300, 191 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - CONTROL "",IDC_RICHEDIT1,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,45,10,210,15 - CONTROL "",IDC_RICHEDIT2,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,30,260,13 - PUSHBUTTON "Contributors",IDC_CONTRIBUTORS,110,55,80,15 - CONTROL "",IDC_UAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,120,80,15 - CONTROL "",IDC_PICASSOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,90,80,20 - CONTROL "",IDC_AMIGAHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,109,90,80,20 - CONTROL "",IDC_WINUAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,120,80,15 - CONTROL "",IDC_AIABHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,120,80,15 - CONTROL "",IDC_THEROOTS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,145,80,15 - CONTROL "",IDC_CAPS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,145,80,15 - CONTROL "",IDC_ABIME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,145,80,15 - CONTROL "",IDC_CLOANTOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,90,80,20 - CONTROL "",IDC_AMIGASYS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,63,169,80,15 - CONTROL "",IDC_AMIKIT,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,157,169,80,15 -END - -IDD_MISC1 DIALOGEX 0, 0, 300, 237 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Advanced",IDC_STATIC,8,2,285,110 - CONTROL "Untrap mouse with middle button",IDC_JULIAN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,15,120,10 - CONTROL "Show GUI on startup",IDC_SHOWGUI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,27,120,10 - CONTROL "On-screen LEDs",IDC_SHOWLEDS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,40,115,10 - CONTROL "uaescsi.device",IDC_SCSIDEVICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,53,117,10 - CONTROL "Don't show taskbar button",IDC_NOTASKBARBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,66,117,10 - CONTROL "bsdsocket.library emulation",IDC_SOCKETS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,15,120,10 - CONTROL "Use CTRL-F11 to quit",IDC_CTRLF11,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,27,120,10 - CONTROL "Don't use RGB overlays",IDC_NOOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,40,120,10 - CONTROL "Synchronize clock",IDC_CLOCKSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,66,115,10 - GROUPBOX "Keyboard LEDs",IDC_STATIC,7,140,85,94 - COMBOBOX IDC_KBLED1,22,154,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_KBLED2,22,173,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_KBLED3,22,193,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Logging",IDC_STATIC,97,140,195,25 - CONTROL "Create log file",IDC_CREATELOGFILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,151,72,10 - CONTROL "Illegal memory accesses",IDC_ILLEGAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,189,151,95,10 - GROUPBOX "State Files",IDC_STATIC,98,165,195,69 - PUSHBUTTON "Load state...",IDC_DOLOADSTATE,105,182,49,14 - PUSHBUTTON "Save state...",IDC_DOSAVESTATE,105,208,49,14 - CONTROL "Enable state recording",IDC_STATE_CAPTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,188,181,88,10 - RTEXT "Recording rate (seconds):",IDC_STATIC,157,199,86,10,SS_CENTERIMAGE | WS_TABSTOP - COMBOBOX IDC_STATE_RATE,248,197,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - RTEXT "Recording buffer (MB):",IDC_STATIC,157,219,83,10,SS_CENTERIMAGE | WS_TABSTOP - COMBOBOX IDC_STATE_BUFFERSIZE,248,217,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP - CONTROL "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,79,117,10 - CONTROL "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,79,115,10 - CONTROL "USB mode",IDC_KBLED_USB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,216,64,10 - COMBOBOX IDC_SCSIMODE,159,51,104,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_LANGUAGE,103,121,179,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Language",IDC_STATIC,7,112,285,25 - CONTROL "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,92,117,10 - CONTROL "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,92,119,10 -END - -IDD_HARDFILE DIALOGEX 0, 0, 299, 212 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Hardfile Settings" -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - GROUPBOX "Settings",IDC_STATIC,10,5,280,113 - RTEXT "Path:",IDC_HARDFILE_DIR_TEXT,26,18,22,10 - EDITTEXT IDC_PATH_NAME,52,15,213,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_SELECTOR,271,15,11,15 - RTEXT "FileSys:",IDC_HARDFILE_FILESYS_TEXT,14,37,34,10 - EDITTEXT IDC_PATH_FILESYS,52,34,213,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_FILESYS_SELECTOR,271,34,11,15 - RTEXT "Device:",IDC_HARDFILE_DEVICE_TEXT,17,58,31,10 - EDITTEXT IDC_HARDFILE_DEVICE,52,54,40,15,ES_AUTOHSCROLL - RTEXT "Boot priority:",IDC_HARDFILE_BOOTPRI_TEXT,15,101,44,8 - EDITTEXT IDC_HARDFILE_BOOTPRI,65,96,40,15 - CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,57,50,10 - PUSHBUTTON "Enable RDB mode",IDC_HDF_RDB,192,55,92,14 - RTEXT "Surfaces:",IDC_SURFACES_TEXT,112,79,30,10 - EDITTEXT IDC_HEADS,147,75,35,15,ES_NUMBER - RTEXT "Reserved:",IDC_RESERVED_TEXT,197,79,35,10 - EDITTEXT IDC_RESERVED,237,75,35,15,ES_NUMBER - RTEXT "Sectors:",IDC_SECTORS_TEXT,112,101,30,10 - EDITTEXT IDC_SECTORS,147,96,35,15,ES_NUMBER - RTEXT "Block size:",IDC_BLOCKSIZE_TEXT,197,101,35,10 - EDITTEXT IDC_BLOCKSIZE,237,96,35,15,ES_NUMBER - GROUPBOX "New hard disk image file",IDC_STATIC,10,120,280,62 - PUSHBUTTON "Create",IDC_HF_CREATE,50,135,80,14 - EDITTEXT IDC_HF_SIZE,146,135,61,15,ES_NUMBER - PUSHBUTTON "OK",IDOK,102,191,50,14 - PUSHBUTTON "Cancel",IDCANCEL,158,191,50,14 - EDITTEXT IDC_HF_DOSTYPE,146,158,61,15 - COMBOBOX IDC_HF_TYPE,50,158,80,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "DOS type",IDC_STATIC,212,160,30,10,SS_CENTERIMAGE - RTEXT "MB",IDC_STATIC,212,138,11,10,SS_CENTERIMAGE - RTEXT "Type:",IDC_STATIC,18,160,25,10,SS_CENTERIMAGE -END - -IDD_FILESYS DIALOGEX 15, 25, 299, 111 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Volume Settings" -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - LTEXT "Device name:",-1,5,9,54,10 - EDITTEXT IDC_VOLUME_DEVICE,65,5,86,15,ES_AUTOHSCROLL - LTEXT "Volume label:",-1,5,31,54,10 - EDITTEXT IDC_VOLUME_NAME,65,25,85,15,ES_AUTOHSCROLL - LTEXT "Path:",-1,5,51,44,10 - EDITTEXT IDC_PATH_NAME,65,46,213,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_SELECTOR,283,46,10,15 - CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,72,70,50,10 - RTEXT "Boot priority:",IDC_VOLUME_BOOTPRI_TEXT,135,70,51,8 - EDITTEXT IDC_VOLUME_BOOTPRI,199,68,27,15 - PUSHBUTTON "OK",IDOK,120,91,48,15 - PUSHBUTTON "Cancel",IDCANCEL,175,91,48,15 -END - -IDD_SETINFO DIALOGEX 0, 0, 229, 85 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Additional Information Settings" -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - RTEXT "Path:",-1,5,20,24,15,SS_CENTERIMAGE - EDITTEXT IDC_PATH_NAME,35,20,169,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_SELECTOR,210,20,10,15 - PUSHBUTTON "OK",IDOK,120,65,48,15 - PUSHBUTTON "Cancel",IDCANCEL,175,65,48,15 -END - -IDD_CHIPSET DIALOGEX 0, 65490, 300, 229 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - GROUPBOX "Chipset",IDC_STATIC,14,11,145,90 - CONTROL "OCS [] Original chipset. A1000 and most A500s.",IDC_OCS, - "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,37,26,51,10 - CONTROL "ECS Agnus [] Enhanced chipset (ECS Agnus chip only). Later A500 and A2000 hardware revisions.",IDC_ECS_AGNUS, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,42,55,10 - CONTROL "Full ECS [] Full ECS chipset (ECS Agnus and ECS Denise chips). A500+, A600 and A3000.",IDC_ECS, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,58,52,10 - CONTROL "AGA [] Advanced Graphics Architecture chipset. A1200, A4000 and CD32.",IDC_AGA, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,26,51,10 - CONTROL "NTSC [] North American and Japanese display standard, 60Hz refresh rate. Other countries use PAL (50Hz. display refresh rate)",IDC_NTSC, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,101,58,50,10 - GROUPBOX "Options",IDC_STATIC,168,11,114,89 - CONTROL "Immediate Blitter [] Faster but less compatible blitter emulation.",IDC_BLITIMM, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,30,96,10 - CONTROL "Cycle-exact CPU and Blitter [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,43,100,10 - GROUPBOX "Collision Level",IDC_STATIC,14,105,267,48 - CONTROL "None [] Collision hardware emulation disabled.",IDC_COLLISION0, - "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,50,10 - CONTROL "Sprites only [] Emulate only sprite vs. sprite collisions.",IDC_COLLISION1, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,50,10 - CONTROL "Sprites and Sprites vs. Playfield [] Recommended collision emulation level.",IDC_COLLISION2, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,121,161,10 - CONTROL "Full [] 100% collision hardware emulation. Only very few games need this option. Slowest.",IDC_COLLISION3, - "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,137,82,10 - GROUPBOX "Sound Emulation",IDC_STATIC,13,159,268,65 - CONTROL "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,39,175,102,10 - CONTROL "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,190,91,10 - CONTROL "Emulated, 100% accurate",IDC_CS_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,205,95,10 - CONTROL "Genlock connected [] Allow boot sequence to detect genlock. Genlock is not emulated.",IDC_GENLOCK, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,56,100,10 - CONTROL "Faster RTG [] Enables less accurate custom chipset emulation mode when Picasso96 is enabled.",IDC_FASTERRTG, - "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,68,100,10 - COMBOBOX IDC_CS_EXT,101,80,49,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Chipset Extra",IDC_STATIC,25,79,52,15,SS_CENTERIMAGE -END - -IDD_CHIPSET2 DIALOGEX 0, 65490, 300, 247 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - GROUPBOX "Advanced Chipset Options",IDC_STATIC,7,6,287,239 - GROUPBOX "Battery Backed Up Real Time Clock",IDC_STATIC,14,37,275,29 - CONTROL "None",IDC_CS_RTC1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,22,49,55,10 - CONTROL "MSM6242B",IDC_CS_RTC2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,91,49,52,10 - CONTROL "RF5C01A",IDC_CS_RTC3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,160,49,46,10 - EDITTEXT IDC_CS_RTCADJUST,218,47,64,13,ES_AUTOHSCROLL - GROUPBOX "CIA-A TOD Clock Source",IDC_STATIC,12,69,275,29 - CONTROL "Vertical Sync",IDC_CS_CIAA_TOD1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,25,81,63,10 - CONTROL "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,95,81,85,10 - CONTROL "Power Supply 60Hz",IDC_CS_CIAA_TOD3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,192,81,88,10 - CONTROL "Boot ROM Mirror",IDC_CS_KSMIRROR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,128,80,10 - CONTROL "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,128,86,10 - CONTROL "CD32 CD",IDC_CS_CD32CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,141,76,10 - CONTROL "CD32 C2P",IDC_CS_CD32C2P,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,141,85,10 - CONTROL "CD32 NVRAM",IDC_CS_CD32NVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,141,84,10 - CONTROL "CDTV CD",IDC_CS_CDTVCD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,154,47,10 - CONTROL "CDTV SRAM",IDC_CS_CDTVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,153,85,10 - CONTROL "CDTV SRAM Expansion",IDC_CS_CDTVRAMEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,153,90,10 - CONTROL "A600/A1200 IDE",IDC_CS_IDE1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,166,79,10 - CONTROL "A4000 IDE",IDC_CS_IDE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,166,84,10 - CONTROL "Ramsey revision:",IDC_CS_RAMSEY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,201,71,10 - EDITTEXT IDC_CS_RAMSEYREV,94,199,45,13,ES_AUTOHSCROLL - CONTROL "Fat Gary revision:",IDC_CS_FATGARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,214,71,10 - EDITTEXT IDC_CS_FATGARYREV,94,213,45,13,ES_AUTOHSCROLL - CONTROL "Motherboard Super DMAC",IDC_CS_DMAC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,227,118,10 - CONTROL "Compatible Settings",IDC_CS_COMPATIBLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,21,234,10 - CONTROL "DF0: ID Hardware",IDC_CS_DF0IDHW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,128,92,10 - CONTROL "Agnus/Alice revision:",IDC_CS_AGNUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,150,201,81,10 - EDITTEXT IDC_CS_AGNUSREV,235,199,45,13,ES_AUTOHSCROLL | NOT WS_VISIBLE - CONTROL "Denise/Lisa revision:",IDC_CS_DENISE,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,150,214,81,10 - EDITTEXT IDC_CS_DENISEREV,235,213,45,13,ES_AUTOHSCROLL | NOT WS_VISIBLE -END - -IDD_AVIOUTPUT DIALOGEX 0, 0, 288, 203 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Output Properties",IDC_STATIC,5,8,274,118 - EDITTEXT IDC_AVIOUTPUT_FILETEXT,15,21,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE - PUSHBUTTON "...",IDC_AVIOUTPUT_FILE,249,20,19,12 - CONTROL "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,32,11 - CONTROL "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,36,209,11 - CONTROL "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,32,11 - CONTROL "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,50,209,11 - CONTROL "Disable frame rate limit while recording",IDC_AVIOUTPUT_FRAMELIMITER, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,136,10 - CONTROL "AVI output enabled",IDC_AVIOUTPUT_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,15,103,108,14 - CONTROL "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,133,103,66,14 - CONTROL "NTSC",IDC_AVIOUTPUT_NTSC,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,204,103,66,14 - CONTROL "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,156,84,97,11 - LTEXT "fps",IDC_AVIOUTPUT_FPS_STATIC,255,84,19,8 - PUSHBUTTON "Save screenshot",IDC_SCREENSHOT,16,141,76,14 - GROUPBOX "Ripper",IDC_STATIC,5,127,274,38 - PUSHBUTTON "Pro Wizard",IDC_PROWIZARD,100,141,76,14,WS_DISABLED - CONTROL "Sample ripper",IDC_SAMPLERIPPER_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,192,141,77,14 - GROUPBOX "Input Recorder",IDC_STATIC,5,166,274,33 - CONTROL "Record",IDC_INPREC_RECORD,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,191,177,77,14 - CONTROL "Playback",IDC_INPREC_PLAY,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,16,178,77,14 - CONTROL "Alt. playback mode",IDC_INPREC_PLAYMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,103,180,78,10 - CONTROL "Disable sound output while recording",IDC_AVIOUTPUT_NOSOUNDOUTPUT, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,85,136,10 -END - -IDD_INPUT DIALOGEX 0, 0, 300, 242 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - COMBOBOX IDC_INPUTTYPE,5,5,98,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_INPUTDEVICE,109,5,167,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "",IDC_INPUTDEVICEDISABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,282,8,9,8 - CONTROL "List1",IDC_INPUTLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,22,290,146 - COMBOBOX IDC_INPUTAMIGACNT,5,174,24,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_INPUTAMIGA,33,174,262,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - RTEXT "Joystick dead zone (%):",-1,8,196,76,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTDEADZONE,89,195,25,12,ES_NUMBER - RTEXT "Autofire rate (frames):",-1,9,212,68,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTAUTOFIRERATE,89,210,25,12,ES_NUMBER - RTEXT "Digital joy-mouse speed:",-1,121,196,76,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDD,207,195,25,12,ES_NUMBER - RTEXT "Analog joy-mouse speed:",-1,120,212,80,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDA,207,211,25,12,ES_NUMBER - RTEXT "Mouse speed:",-1,132,228,68,10,SS_CENTERIMAGE - EDITTEXT IDC_INPUTSPEEDM,207,227,25,12,ES_NUMBER - PUSHBUTTON "Copy from:",IDC_INPUTCOPY,249,195,45,14 - COMBOBOX IDC_INPUTCOPYFROM,249,211,45,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Swap 1<>2",IDC_INPUTSWAP,249,226,45,14 -END - -IDD_FILTER DIALOGEX 0, 0, 296, 224 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Filter Settings",-1,0,0,294,186 - CONTROL "Enable",IDC_FILTERENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,17,38,10 - COMBOBOX IDC_FILTERMODE,67,15,56,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_FILTERFILTER,128,15,65,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Reset to defaults",IDC_FILTERDEFAULT,197,15,73,14 - RTEXT "Horizontal size:",-1,9,44,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,37,142,19 - EDITTEXT IDC_FILTERHZV,253,40,34,12,ES_CENTER | ES_READONLY - RTEXT "Vertical size:",-1,10,64,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,57,142,19 - EDITTEXT IDC_FILTERVZV,253,59,34,12,ES_CENTER | ES_READONLY - RTEXT "Horizontal position:",-1,10,84,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,77,141,19 - EDITTEXT IDC_FILTERHOV,253,79,34,12,ES_CENTER | ES_READONLY - RTEXT "Vertical position:",-1,10,103,59,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,99,141,19 - EDITTEXT IDC_FILTERVOV,253,101,34,12,ES_CENTER | ES_READONLY - RTEXT "Scanlines:",-1,27,133,57,10,SS_CENTERIMAGE - CONTROL "Slider1",IDC_FILTERSL,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,94,126,157,19 - EDITTEXT IDC_FILTERSLV,253,128,34,12,ES_CENTER | ES_READONLY - COMBOBOX IDC_FILTERSLR,56,146,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Slider1",IDC_FILTERSL2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,94,146,157,19 - EDITTEXT IDC_FILTERSL2V,253,151,34,12,ES_CENTER | ES_READONLY - GROUPBOX "Presets",-1,0,187,296,36 - COMBOBOX IDC_FILTERPRESETS,8,201,119,150,CBS_DROPDOWN | CBS_SORT | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Load",IDC_FILTERPRESETLOAD,132,200,47,14 - PUSHBUTTON "Save",IDC_FILTERPRESETSAVE,184,200,47,14 - PUSHBUTTON "Delete",IDC_FILTERPRESETDELETE,236,200,47,14 - COMBOBOX IDC_FILTERHZMULT,77,43,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_FILTERVZMULT,77,63,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Autoscale",IDC_FILTERAUTORES,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,26,168,63,10 -END - -IDD_HARDDRIVE DIALOGEX 0, 0, 380, 66 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Harddrive Settings" -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - LTEXT "Hard drive:",-1,7,11,35,10 - COMBOBOX IDC_HARDDRIVE,49,9,325,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,245,33,50,10 - DEFPUSHBUTTON "Add hard drive",IDOK,176,30,57,14 - PUSHBUTTON "Cancel",IDCANCEL,321,30,54,14 - DEFPUSHBUTTON "Create hard disk image file",IDC_HARDDRIVE_IMAGE,49,30,95,14 - EDITTEXT IDC_PATH_NAME,89,49,169,15,ES_AUTOHSCROLL | NOT WS_VISIBLE -END - -IDD_MISC2 DIALOGEX 0, 0, 300, 92 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "When Active",IDC_STATIC,8,7,88,73 - RTEXT "Run at priority:",IDC_ACTIVE_PRI,14,17,45,10,SS_CENTERIMAGE | WS_TABSTOP - COMBOBOX IDC_ACTIVE_PRIORITY,14,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "When Inactive",IDC_STATIC,102,7,92,73 - RTEXT "Run at priority:",IDC_INACTIVE_PRI,109,17,45,10,SS_CENTERIMAGE | WS_TABSTOP - COMBOBOX IDC_INACTIVE_PRIORITY,109,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - CONTROL "Pause emulation",IDC_INACTIVE_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,50,69,10 - CONTROL "Disable sound output",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10 - GROUPBOX "When Minimized",IDC_STATIC,199,7,92,73 - RTEXT "Run at priority:",IDC_MINIMIZED_PRI,207,18,45,10,SS_CENTERIMAGE | WS_TABSTOP - COMBOBOX IDC_MINIMIZED_PRIORITY,207,30,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - CONTROL "Pause emulation",IDC_MINIMIZED_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,50,69,10 - CONTROL "Disable sound output",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10 -END - -IDD_DISK DIALOGEX 0, 0, 300, 242 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_SETFOREGROUND | DS_3DLOOK | DS_CONTROL | DS_CENTER | DS_CENTERMOUSE | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - CONTROL "",IDC_DISKLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,4,6,292,196 - PUSHBUTTON "Remove floppy disk image",IDC_DISKLISTREMOVE,153,223,93,15 - COMBOBOX IDC_DISKTEXT,3,205,293,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Insert floppy disk image",IDC_DISKLISTINSERT,38,223,93,15 -END - -IDD_PANEL DIALOGEX 0, 0, 420, 278 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_SYSMENU -EXSTYLE WS_EX_ACCEPTFILES | WS_EX_CONTROLPARENT -CAPTION "WinUAE Properties" -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - GROUPBOX "",IDC_PANEL_FRAME,112,4,303,247,NOT WS_VISIBLE - CONTROL "",IDC_PANELTREE,"SysTreeView32",TVS_HASLINES | TVS_SHOWSELALWAYS | TVS_NOSCROLL | WS_BORDER | WS_TABSTOP,5,5,101,248,WS_EX_CLIENTEDGE - GROUPBOX "",IDC_PANEL_FRAME_OUTER,110,2,307,251 - PUSHBUTTON "Reset",IDC_RESETAMIGA,6,259,47,14 - PUSHBUTTON "Quit",IDC_QUITEMU,57,259,47,14 - DEFPUSHBUTTON "OK",IDOK,260,259,50,14 - PUSHBUTTON "Cancel",IDCANCEL,313,259,50,14 - PUSHBUTTON "Help",IDHELP,366,259,50,14,WS_DISABLED -END - -IDD_PATHS DIALOGEX 0, 0, 300, 237 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - LTEXT "System ROMs:",IDC_PATHS_ROML,14,9,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_ROM,14,22,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_ROMS,281,22,11,15 - LTEXT "Configuration files:",IDC_PATHS_CONFIGL,14,40,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_CONFIG,14,52,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_CONFIGS,281,52,11,15 - LTEXT "Screenshots:",IDC_PATHS_SCREENSHOTL,14,71,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_SCREENSHOT,14,83,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_SCREENSHOTS,281,83,11,15 - LTEXT "State files:",IDC_PATHS_STATEFILEL,14,102,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_SAVESTATE,14,114,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_SAVESTATES,281,114,11,15 - LTEXT "Videos:",IDC_PATHS_AVIOUTPUTL,14,132,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_AVIOUTPUT,14,144,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_AVIOUTPUTS,282,144,11,15 - LTEXT "Saveimages:",IDC_PATHS_SAVEIMAGEL,14,163,260,8,SS_CENTERIMAGE - EDITTEXT IDC_PATHS_SAVEIMAGE,14,175,261,15,ES_AUTOHSCROLL - PUSHBUTTON "...",IDC_PATHS_SAVEIMAGES,281,175,11,15 - PUSHBUTTON "Reset to defaults",IDC_PATHS_DEFAULT,14,199,92,14 - PUSHBUTTON "Rescan ROMs",IDC_ROM_RESCAN,14,218,92,14 - PUSHBUTTON "Clear registry",IDC_RESETREGISTRY,112,218,77,14 - COMBOBOX IDC_PATHS_DEFAULTTYPE,112,199,163,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Clear disk history",IDC_RESETDISKHISTORY,198,218,77,14 -END - -IDD_QUICKSTART DIALOGEX 0, 0, 300, 242 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - GROUPBOX "Emulated Hardware",IDC_QUICKSTART_CONFIG,3,0,294,54 - RTEXT "Model:",IDC_STATIC,5,14,56,10,SS_CENTERIMAGE - COMBOBOX IDC_QUICKSTART_MODEL,65,12,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - RTEXT "Configuration:",IDC_STATIC,5,33,56,10,SS_CENTERIMAGE - COMBOBOX IDC_QUICKSTART_CONFIGURATION,65,31,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Compatibility vs Required CPU Power ",IDC_QUICKSTART_COMPA,3,56,294,33 - RTEXT "Best compatibility",IDC_STATIC,13,70,67,10,SS_CENTERIMAGE - CONTROL "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,88,65,115,21 - RTEXT "Low compatibility",IDC_STATIC,215,70,63,10,SS_CENTERIMAGE - GROUPBOX "Host Configuration",IDC_QUICKSTART_HOST,3,91,294,33 - RTEXT "Configuration:",IDC_STATIC,5,105,55,10,SS_CENTERIMAGE - COMBOBOX IDC_QUICKSTART_HOSTCONFIG,65,103,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - GROUPBOX "Emulated Floppy Drives",IDC_QUICKSTART_DF,3,126,294,84 - LTEXT "Floppy drive DF0:",IDC_STATIC,10,138,56,10,SS_CENTERIMAGE - PUSHBUTTON "Select disk image",IDC_DF0QQ,77,135,98,15 - RTEXT "Write-protected",IDC_STATIC,180,139,58,10,SS_CENTERIMAGE - CONTROL "",IDC_DF0WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,137,10,15 - PUSHBUTTON "Eject",IDC_EJECT0Q,260,136,30,15 - COMBOBOX IDC_DF0TEXTQ,9,154,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - LTEXT "Floppy drive DF1:",IDC_STATIC,10,176,56,10,SS_CENTERIMAGE - PUSHBUTTON "Select disk image",IDC_DF1QQ,77,172,98,15 - RTEXT "Write-protected",IDC_STATIC,180,175,58,10,SS_CENTERIMAGE - CONTROL "",IDC_DF1WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,173,10,15 - PUSHBUTTON "Eject",IDC_EJECT1Q,260,172,30,15 - COMBOBOX IDC_DF1TEXTQ,9,190,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Set configuration",IDC_QUICKSTART_SETCONFIG,9,219,72,15,NOT WS_VISIBLE - GROUPBOX "Mode",IDC_STATIC,190,211,107,27,BS_LEFT - CONTROL "Start in Quickstart mode",IDC_QUICKSTARTMODE,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,199,222,94,10 -END - -IDD_FRONTEND DIALOGEX 0, 0, 420, 242 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD -FONT 8, "MS Sans Serif", 0, 0, 0x1 -BEGIN - CONTROL "",IDC_FE_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,6,9,235,124 - GROUPBOX "",IDC_FE_INFO,249,140,160,95 - GROUPBOX "",IDC_FE_SCREENSHOT,249,7,160,128 -END - -IDD_PROGRESSBAR DIALOGEX 0, 0, 229, 58 -STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Processing..." -FONT 8, "MS Sans Serif", 0, 0, 0x0 -BEGIN - PUSHBUTTON "Cancel",IDCANCEL,88,40,50,14 - CONTROL "",IDC_PROGRESSBAR,"msctls_progress32",WS_BORDER | 0x1,7,19,215,14 - CTEXT "x",IDC_PROGRESSBAR_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP -END - - -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_APPICON ICON "winuae.ico" -IDI_FLOPPY ICON "35floppy.ico" -IDI_ABOUT ICON "amigainfo.ico" -IDI_HARDDISK ICON "Drive.ico" -IDI_CPU ICON "cpu.ico" -IDI_PORTS ICON "joystick.ico" -IDI_INPUT ICON "joystick.ico" -IDI_MISC1 ICON "misc.ico" -IDI_MISC2 ICON "misc.ico" -IDI_MOVE_UP ICON "move_up.ico" -IDI_MOVE_DOWN ICON "move_dow.ico" -IDI_AVIOUTPUT ICON "avioutput.ico" -IDI_DISK ICON "Drive.ico" -IDI_CONFIGFILE ICON "file.ico" -IDI_FOLDER ICON "folder.ico" -IDI_SOUND ICON "sound.ico" -IDI_DISPLAY ICON "screen.ico" -IDI_ROOT ICON "root.ico" -IDI_MEMORY ICON "chip.ico" -IDI_QUICKSTART ICON "quickstart.ico" -IDI_PATHS ICON "paths.ico" - -///////////////////////////////////////////////////////////////////////////// -// -// Version -// - -VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,0,0 - PRODUCTVERSION 1,4,0,0 - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS 0x40004L - FILETYPE 0x1L - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "FileDescription", "WinUAE" - VALUE "FileVersion", "1.4.0" - VALUE "InternalName", "WinUAE" - VALUE "LegalCopyright", "© 1996-2007 under the GNU Public License (GPL)" - VALUE "OriginalFilename", "WinUAE.exe" - VALUE "ProductName", "WinUAE" - VALUE "ProductVersion", "1.4.0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END - - -///////////////////////////////////////////////////////////////////////////// -// -// Cursor -// - -IDC_MYHAND CURSOR "H_arrow.cur" - -///////////////////////////////////////////////////////////////////////////// -// -// Menu -// - -IDM_SYSTRAY MENU -BEGIN - POPUP "Menu" - BEGIN - MENUITEM "Configuration", ID_ST_CONFIGURATION - POPUP "Floppy drives" - BEGIN - MENUITEM "Eject all drives", ID_ST_EJECTALL - MENUITEM "DF0:", ID_ST_DF0 - MENUITEM "DF1:", ID_ST_DF1 - MENUITEM "DF2:", ID_ST_DF2 - MENUITEM "DF3:", ID_ST_DF3 - END - MENUITEM "Reset", ID_ST_RESET - MENUITEM "Help", ID_ST_HELP - MENUITEM "Quit WinUAE", ID_ST_QUIT - END -END - -///////////////////////////////////////////////////////////////////////////// -// -// String Table -// - -STRINGTABLE -BEGIN - IDS_KICKSTART "ROM" - IDS_DISK "Disk swapper" - IDS_DISPLAY "Display" - IDS_HARDDISK "Hard drives" - IDS_FLOPPY "Floppy drives" - IDS_ABOUT "About" - IDS_LOADSAVE "Configurations" - IDS_AVIOUTPUT "Output" - IDS_PORTS "Game & I/O ports" - IDS_MISC1 "Misc" - IDS_MEMORY "RAM" - IDS_CPU "CPU" - IDS_CHIPSET "Chipset" - IDS_INPUT "Input" - IDS_FILTER "Filter" -END - -STRINGTABLE -BEGIN - IDS_MISC2 "Priority" - IDS_PATHS "Paths" - IDS_QUICKSTART "Quickstart" - IDS_FRONTEND "Frontend" - IDS_CHIPSET2 "Adv. Chipset" -END - -STRINGTABLE -BEGIN - IDS_EXTTEXT "Floppy disk image files" - IDS_EXTACTUAL "ADF" - IDS_SOUND "Sound" - IDS_CDROM "CD-ROM" - IDS_FRAMERATE "Every %1Frame" - IDS_SECOND "second " - IDS_THIRD "third " - IDS_FOURTH "fourth " - IDS_FIFTH "fifth " - IDS_SIXTH "sixth " - IDS_SEVENTH "seventh " - IDS_EIGHTH "eighth " -END - -STRINGTABLE -BEGIN - IDS_NINTH "ninth " - IDS_TENTH "tenth " - IDS_SELECTADF "Select a floppy disk image file..." - IDS_ADF "Floppy disk image files" - IDS_CHOOSEBLANK "Choose a blank floppy disk image file..." - IDS_SELECTHDF "Select a hard disk image file..." - IDS_HDF "Hard disk image files" - IDS_SELECTUAE "Select a WinUAE configuration file..." - IDS_UAE "WinUAE configuration files" - IDS_SELECTROM "Select a system ROM file..." - IDS_ROM "System ROM files" - IDS_SELECTKEY "Select a system ROM key file..." - IDS_KEY "System ROM key files" - IDS_SELECTINFO "Select information for your configuration..." - IDS_NONE "none" - IDS_VOLUME "Volume" -END - -STRINGTABLE -BEGIN - IDS_SELECTFILESYSROOT "Please select the root directory of the file system..." - IDS_DEFAULTMIDIOUT "Default MIDI-Out Device" - IDS_CONTRIBUTORS1 "Bernd Schmidt - The Grand-Master\nSam Jordan - Custom-chip, floppy-DMA, etc.\nMathias Ortmann - Original WinUAE Main Guy, BSD Socket support\nBrian King - Picasso96 Support, Integrated GUI for WinUAE, previous WinUAE Main Guy\nToni Wilen - Core updates, WinUAE Main Guy\nGustavo Goedert/Peter Remmers/Michael Sontheimer/Tomi Hakala/Tim Gunn/Nemo Pohle - DOS Port Stuff\nSamuel Devulder/Olaf Barthel/Sam Jordan - Amiga Ports\nKrister Bergman - XFree86 and OS/2 Port\nA. Blanchard/Ernesto Corvi - MacOS Port\nChristian Bauer - BeOS Port\nIan Stephenson - NextStep Port\nPeter Teichmann - Acorn/RiscOS Port\nStefan Reinauer - ZorroII/III AutoConfig, Serial Support\nChristian Schmitt/Chris Hames - Serial Support\nHerman ten Brugge - 68020/68881 Emulation Code\nTauno Taipaleenmaki - Various UAE-Control/UAE-Library Support\nBrett Eden/Tim Gunn/Paolo Besser/Nemo Pohle - Various Docs and Web-Sites\nGeorg Veichtlbauer - Help File coordinator, German GUI\nFulvio Leonardi - Italian translator for WinUAE\n" - IDS_CONTRIBUTORS2 "Bill Panagouleas - Hardware support\nSpecial thanks to Alexander Kneer and Tobias Abt (The Picasso96 Team)\nSteven Weiser - Postscript printing emulation idea and testing.\nPéter Tóth /Balázs Rátkai/Iván Herczeg/András Arató - Hungarian translation" - IDS_INVALIDPRTPORT "The printer you have in this configuration is not valid on this machine.\n" - IDS_RESTOREUSS "Restore a WinUAE snapshot file" - IDS_USS "WinUAE snapshot files" - IDS_WRONGOSVERSION "WinUAE is no longer supported on Windows NT. Please upgrade to either Windows 2000 or Windows XP or a later version." - IDS_SELECTFLASH "Select a flash or battery-backed RAM file..." - IDS_FLASH "WinUAE flash or battery-backed RAM file" - IDS_INPUTHOSTWIDGET "Input source" - IDS_INPUTAMIGAEVENT "Input target" - IDS_INPUTAUTOFIRE "Autofire" - IDS_SAVEUSS "Save a WinUAE snapshot file" - IDS_MIDIOVERFLOW "Sysexbuffer overflow. Should not happen. Please report this to\nberndroesch1@compuserve.de" -END - -STRINGTABLE -BEGIN - IDS_PATH "Path" - IDS_RW "R/W" - IDS_SECTORS "Sectors" - IDS_SURFACES "Bill Panagouleas - Hardware support\nSpecial thanks to Alexander Kneer and Tobias Abt (The Picasso96 Team)\nSteven Weiser - Postscript printing emulation idea and testing.\nHungarian translation - Péter Tóth , Balázs Rátkai , Iván Herczeg , András Arató" - IDS_RESERVED "Reserved" - IDS_BLOCKSIZE "Block size" - IDS_NAME "Name" - IDS_DESCRIPTION "Description" - IDS_COULDNOTLOADCONFIG "Could not load the selected configuration!\n" - IDS_NOHELP "Online help is disabled because the HTML Help functionality is not installed on this system. HTML Help is available from http://www.microsoft.com/downloads/.\n" - IDS_MUSTSELECTCONFIG "You must select a configuration or enter a name before selecting Load...\n" - IDS_INVALIDCOMPORT "The serial port you have in this configuration is not valid on this machine.\n" -END - -STRINGTABLE -BEGIN - IDS_HFDSIZE "Size" - IDS_DEVICE "Device" - IDS_BOOTPRI "BootPri" - IDS_FLOPPY_COMPATIBLE " (compatible)" - IDS_FLOPPY_TURBO "Turbo" - IDS_YES "yes" - IDS_NO "no" - IDS_PRI_ABOVENORMAL "Above Normal" - IDS_PRI_NORMAL "Normal" - IDS_PRI_BELOWNORMAL "Below Normal" - IDS_PRI_LOW "Low" - IDS_OLDRTGLIBRARY "The installed LIBS:Picasso96/rtg.library (%d.%d) file needs to be updated.\nA newer version is included in the ""Amiga Programs"" directory of the WinUAE distribution archive.\nThe new library fixes graphics problems and increases performance." - IDS_DEFAULT_AF2005 "Amiga Forever" - IDS_DEFAULT_AF "Amiga Forever (old)" - IDS_DEFAULT_WINUAE "WinUAE default" -END - -STRINGTABLE -BEGIN - IDS_UNSUPPORTEDPIXELFORMAT - "Error: unsupported pixel format. Please use a different screen mode.\n" - IDS_MUSTENTERNAME "You must select a configuration or enter a name before selecting Save...\n" - IDS_MUSTSELECTCONFIGFORDELETE - "You must select a configuration or enter a name before selecting Delete...\n" - IDS_DELETECONFIGCONFIRMATION - "Are you sure you want to Delete this configuration?\n" - IDS_DELETECONFIGTITLE "Confirm Delete" - IDS_GFXCARDCHECK "WinUAE will now determine the 16-bit pixel format of your graphics card. Your screen will go black for two seconds, with a resolution of 640x480 @ 60Hz. This procedure is required for best rendering of the emulation environment on 16-bit display-modes, and should be done whenever you run WinUAE for the first time, or install a new graphics card in your PC. Proceed with this test?" - IDS_GFXCARDTITLE "Pixel format detection" - IDS_MUSTSELECTPATH "You must select a path!" - IDS_SETTINGSERROR "Settings error" - IDS_MUSTSELECTNAME "You must select a name for the volume!" - IDS_MUSTSELECTFILE "You must select a file!" - IDS_FAILEDHARDFILECREATION "Failed to create hard disk image file..." - IDS_CREATIONERROR "Creation error" - IDS_ERRORTITLE "WinUAE message" -END - -STRINGTABLE -BEGIN - IDS_INP "WinUAE Input Recording" - IDS_RESTOREINP "Playback a WinUAE input recording" - IDS_SAVEINP "Record a WinUAE input recording" - IDS_SOUND_MONO "Mono" - IDS_SOUND_MIXED "Mixed" - IDS_SOUND_STEREO "Stereo" - IDS_SOUND_INTERPOL_DISABLED "Disabled" - IDS_SOUND_FILTER_OFF "Always off" - IDS_SOUND_FILTER_EMULATED "Emulated (A500)" -END - -STRINGTABLE -BEGIN - IDS_SOUND_FILTER_EMULATED_E "Emulated (A1200)" - IDS_INPUT_COMPATIBILITY "Compatibility mode" - IDS_INPUT_CUSTOM "Configuration #%d" - IDS_INPUT_COPY_DEFAULT "Default" - IDS_INPUT_COPY_CUSTOM "Config #%d" - IDS_3D_NO_FILTER "Point (%d-bit)" - IDS_3D_BILINEAR "Bilinear (%d-bit)" - IDS_VSYNC_DEFAULT "Default" - IDS_DRIVESOUND_NONE "No sound" - IDS_DRIVESOUND_DEFAULT_A500 "A500 (WinUAE built-in)" - IDS_AVIOUTPUT_NOCODEC "no codec selected" - IDS_DISK_IMAGENAME "Disk image" - IDS_DISK_DRIVENAME "Drive" - IDS_AGA8BIT "AGA emulation requires a 16-bit or higher display depth.\nSwitching from 8-bit to 16-bit." - IDS_UNSUPPORTEDSCREENMODE - "The selected screen mode can't be displayed in a window, because %s\nSwitching to full-screen display." - IDS_UNSUPPORTEDSCREENMODE_1 - "the desktop is running in an unknown color mode." -END - -STRINGTABLE -BEGIN - IDS_UNSUPPORTEDSCREENMODE_2 - "the desktop is running in 8-bit color depth, which WinUAE can't use in windowed mode." - IDS_UNSUPPORTEDSCREENMODE_3 - "the desktop is too small for the specified window size." - IDS_UNSUPPORTEDSCREENMODE_4 - "you selected an RTG (Picasso96) display with a color depth different from that of the desktop and an overlay was unavailable." - IDS_FLOPPYTYPE35DD "3.5"" DD" - IDS_FLOPPYTYPE35HD "3.5"" HD" - IDS_FLOPPYTYPE525SD "5.25"" SD" - IDS_FLOPPYTYPEDISABLED "Disabled" - IDS_STMENUNOFLOPPY "No floppy disk inserted" - IDS_TREEVIEW_HARDWARE "Hardware" - IDS_TREEVIEW_HOST "Host" - IDS_TREEVIEW_MISC "Miscellaneous" - IDS_TREEVIEW_SETTINGS "Settings" - IDS_WINUAETITLE_MMB "[Mouse active - press ALT+TAB or middle mouse button to cancel]" - IDS_WINUAETITLE_NORMAL "[Mouse active - press ALT+TAB to cancel]" - IDS_STARTEMULATION "Start" - IDS_TREEVIEW_ABOUT "About" -END - -STRINGTABLE -BEGIN - IDS_NOHARDDRIVES "No hard disks detected that were either empty or RDB-partitioned." - IDS_DEFAULT_HOST "Default Configuration" - IDS_SOUND_4CHANNEL "4 Channels" - IDS_HF_FS_CUSTOM "Custom" - IDS_SELECTFS "Select file system handler (FastFileSystem, SmartFilesystem, etc.)" - IDS_KEYJOY "Keyboard Layout A (Numeric keypad, 0 and 5 = Fire)\nKeyboard Layout B (Cursor keys, Right CTRL and ALT = Fire)\nKeyboard Layout C (W=Up S=Down A=Left D=Right, Left ALT = Fire)\nX-Arcade (Left)\nX-Arcade (Right)" - IDS_STATEFILE_UNCOMPRESSED "Uncompressed" - IDS_STATEFILE_RAMDUMP "RAM dump" - IDS_STATEFILE_WAVE "Wave audio dump" - IDS_SOUND_SWAP_PAULA "Paula only" - IDS_SOUND_SWAP_AHI "AHI only" - IDS_SOUND_SWAP_BOTH "Both" - IDS_SOUND_FILTER_ON_AGA "Always on (A500)" - IDS_SOUND_FILTER_ON_A500 "Always on (A1200)" - IDS_DRIVESOUND_PC_FLOPPY "PC floppy drive %c" - IDS_FLOPPYTYPE35DDESCOM "3.5"" ESCOM" -END - -STRINGTABLE -BEGIN - IDS_NUMSG_NEEDEXT2 "The software uses a non-standard floppy disk format. You may need to use a custom floppy disk image file instead of a standard one. This message will not appear again." - IDS_NUMSG_NOROMKEY "Could not find system ROM key file." - IDS_NUMSG_KSROMCRCERROR "System ROM checksum incorrect. The system ROM image file may be corrupt." - IDS_NUMSG_KSROMREADERROR "Error while reading system ROM." -END - -STRINGTABLE -BEGIN - IDS_NUMSG_NOEXTROM "No extended ROM found." - IDS_NUMSG_MODRIP_NOTFOUND "No music modules or packed data found." - IDS_NUMSG_MODRIP_FINISHED "Scan finished." - IDS_NUMSG_MODRIP_SAVE "Module/packed data found\n%s\nWould you like to save it?" - IDS_NUMSG_KS68020 "The selected system ROM requires a 68020 or higher CPU." - IDS_NUMSG_ROMNEED "One of the following system ROMs is required:\n\n%s\n\nCheck the System ROM path in the Paths panel and click Rescan ROMs." - IDS_NUMSG_STATEHD "WARNING: State saves do not support hard drive emulation. This message will not appear again." - IDS_NUMSG_NOCAPS "Selected disk image needs the SPS plugin\nwhich is available from\nhttp//www.softpres.org/" - IDS_NUMSG_OLDCAPS "You need an updated SPS plugin\nwhich is available from\nhttp//www.softpres.org/" - IDS_IMGCHK_BOOTBLOCKCRCERROR - "The selected floppy disk image is not bootable (boot block checksum error)" - IDS_IMGCHK_BOOTBLOCKNO "The selected floppy disk image is not bootable (no boot block)" - IDS_IMGCHK_DAMAGED "The selected floppy disk image is damaged or unformatted" - IDS_IMGCHK_KS2 "The selected floppy disk image requires a 2.04 or later system ROM.\nThe configuration has been updated." - IDS_IMGCHK_KS3 "The selected floppy disk image requires a 3.0 or later system ROM.\nThe configuration has been updated." - IDS_ROMSCANEND "Scan of ROMs finished" -END - -STRINGTABLE -BEGIN - IDS_ROM_AVAILABLE "available" - IDS_ROM_UNAVAILABLE "unavailable" - IDS_HARDDRIVESAFETYWARNING - "Warning: The safety test has been disabled, and non-empty hard disks were detected.\n\nHard disks marked with 'HD_*_' are not empty." - IDS_NUMSG_KS68EC020 "The selected system ROM requires a 68EC020 or higher CPU." - IDS_ROMSCANNOROMS "No supported system ROMs detected." - IDS_NUMSG_KICKREP "You need to have a floppy disk (image file) in DF0: to use the system ROM replacement." - IDS_NUMSG_KICKREPNO "The floppy disk (image file) in DF0: is not compatible with the system ROM replacement functionality." - IDS_NUMSG_NOROM "Could not load system ROM, trying system ROM replacement." - IDS_HDCLONE_OK "Hard drive image file created succesfully." - IDS_HDCLONE_FAIL "Hard drive image file creation failed.\nError code %d:%d." -END - -STRINGTABLE -BEGIN - IDS_QS_MODELS "A500\nA500+\nA600\nA1000\nA1200\nCD32\nCDTV\nArcadia Multi Select system\nExpanded WinUAE example configuration" - IDS_QS_MODEL_A500 "1.3 ROM, OCS, 512 KB Chip + 512 KB Slow RAM (most common)\nThis configuration is capable of running most games and demos produced for first-generation hardware. Only few exceptions need a different configuration (e.g. the oldest games tend to be incompatible with this configuration).\n1.3 ROM, ECS Agnus, 512 KB Chip RAM + 512 KB Slow RAM\nLater hardware revision of the A500. Nearly 100% compatible with the previous configuration.\n1.3 ROM, ECS Agnus, 1 MB Chip RAM\nFew newer games and demos require this configuration.\n1.3 ROM, OCS Agnus, 512 KB Chip RAM\nVery old (e.g. pre-1988) games and demos may require this configuration.\n1.2 ROM, OCS Agnus, 512 KB Chip RAM\nAs available for the A1000, and installed on the first A500 and A2000 series. Some very old programs only work correctly with this configuration. Note: This system ROM version can only boot from floppy disk (no hard disk boot support).\n1.2 ROM, OCS Agnus, 512 KB Chip RAM + 512 KB Slow RAM\nThis configuration adds expansion memory to the first A500 produced. Try this if your game does not work with newer configurations, but works with the previous one. It could add some features to the game, including faster loading times. Note: This system ROM version can only boot from floppy disk (no hard disk boot support)." - IDS_QS_MODEL_A500P "Basic non-expanded configuration\nThe A500+ adds an ECS Agnus chip, 1 MB of Chip RAM and a 2.0 ROM to the A500. Many A500 games and demos don't work properly on an A500+.\n2 MB Chip RAM expanded configuration\n\n4 MB Fast RAM expanded configuration\n" - IDS_QS_MODEL_A600 "Basic non-expanded configuration\nThe A600 is smaller than the A500+ and has an updated 2.0 ROM.\n2 MB Chip RAM expanded configuration\n\n4 MB Fast RAM expanded configuration\n" - IDS_QS_MODEL_A1000 "512 KB Chip RAM\nThe A1000 was the first model produced, with a configuration equivalent to that of an A500 with OCS chipset. You normally don't need to use this configuration, unless you are nostalgic and would like to hear the short A1000 boot tune\n256 KB Chip RAM\nUnexpanded A1000. All later A1000 models were sold with a 256 KB RAM expansion built-in." - IDS_QS_MODEL_A1200 "Basic non-expanded configuration\nUse this configuration to run most AGA demos and games\n4 MB Fast RAM expanded configuration\nSome newer AGA games and demos need an expanded A1200 to run." - IDS_QS_MODEL_CD32 "CD32\nThe CD32 was one the first 32-bit consoles on the market. It is basically an A1200 with a built-in CD-ROM drive. Insert your CD32 or CDTV CD-ROM into a free CD-ROM drive before starting the emulation." - IDS_QS_MODEL_CDTV "CDTV\nThe CDTV was the first model with a built-in CD-ROM drive. Looking like a black CD player, it featured a configuration equivalent to that of an A500 with 1 MB RAM and an ECS chipset.\nFloppy drive and 64KB SRAM card expanded CDTV\n" -END - -STRINGTABLE -BEGIN - IDS_QS_MODEL_UAE "High-end expanded configuration" - IDS_QS_MODEL_ARCADIA "Arcadia\nArcadia Multi Select system is arcade platform developed by Arcadia and Mastertronic. It is based on an A500 mainboard with ROM cage attached to expansion port. Arcadia ROM files go to ""Cartridge ROM File"" in ROM-panel." -END - -STRINGTABLE -BEGIN - IDS_SOUND_STEREO2 "Cloned Stereo" -END - -#endif // English (U.S.) resources -///////////////////////////////////////////////////////////////////////////// - - -///////////////////////////////////////////////////////////////////////////// -// Finnish resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FIN) -#ifdef _WIN32 -LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT -#pragma code_page(1252) -#endif //_WIN32 - -#ifdef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// TEXTINCLUDE -// - -1 TEXTINCLUDE -BEGIN - "resource.\0" -END - -3 TEXTINCLUDE -BEGIN - "\r\0" -END - -2 TEXTINCLUDE -BEGIN - "#include ""afxres.h""\r\0" -END - -#endif // APSTUDIO_INVOKED - -#endif // Finnish resources -///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED - +// Microsoft Visual C++ generated resource script. +// +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "afxres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (U.S.) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +#ifdef _WIN32 +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) +#endif //_WIN32 + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +IDD_KICKSTART DIALOGEX 0, 0, 300, 176 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +EXSTYLE WS_EX_CONTEXTHELP +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "System ROM Settings",-1,5,0,290,74 + RTEXT "Main ROM file:",IDC_ROMTEXT,10,15,75,10 + COMBOBOX IDC_ROMFILE,89,12,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "...",IDC_KICKCHOOSER,280,10,10,15 + RTEXT "Extended ROM file:",IDC_ROMFILE2TEXT,10,35,75,10 + COMBOBOX IDC_ROMFILE2,89,31,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "...",IDC_ROMCHOOSER2,280,30,10,15 + CONTROL "MapROM emulation [] Creates a BlizKick-compatible memory area.",IDC_MAPROM, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,82,10 + CONTROL "ShapeShifter support [] Patches the system ROM for ShapeShifter compatibility.",IDC_KICKSHIFTER, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,54,80,10 + GROUPBOX "Miscellaneous",-1,5,76,290,57 + RTEXT "Cartridge ROM file:",IDC_FLASHTEXT2,8,93,75,10 + COMBOBOX IDC_CARTFILE,89,90,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "...",IDC_CARTCHOOSER,280,90,10,15 + RTEXT "Flash RAM file:",IDC_FLASHTEXT,8,112,75,10 + EDITTEXT IDC_FLASHFILE,89,110,185,13,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_FLASHCHOOSER,280,110,10,15 + GROUPBOX "HRTMon Settings",-1,5,136,290,31 + CONTROL "Enable HRTMon [] HRTMon is monitor/debugger similar to Action Replay series, default activation key is Page Up.",IDC_HRTMON, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,89,148,75,10 +END + +IDD_DISPLAY DIALOGEX 0, 0, 300, 202 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Screen",IDC_SCREENRESTEXT,12,0,199,67,BS_LEFT + RTEXT "Full screen:",IDC_SELECTRESTEXT,17,17,38,15,SS_CENTERIMAGE + COMBOBOX IDC_DISPLAYSELECT,59,10,147,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_RESOLUTION,59,27,52,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_REFRESHRATE,145,27,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + RTEXT "Windowed:",IDC_WINDOWEDTEXT,18,51,37,8 + EDITTEXT IDC_XSIZE,59,48,35,12,ES_NUMBER + EDITTEXT IDC_YSIZE,103,48,35,12,ES_NUMBER + CONTROL "Vertical sync",IDC_VSYNC,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,147,49,54,10 + GROUPBOX "Settings",IDC_SETTINGSTEXT,12,73,199,93 + CONTROL "Full-screen native modes",IDC_AFULLSCREEN,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,85,92,10 + CONTROL "Full-screen RTG modes",IDC_PFULLSCREEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,85,87,10 + CONTROL "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,21,99,92,10 + CONTROL "Force low resolution",IDC_LORES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,99,85,10 + LTEXT "Refresh:",IDC_REFRESHTEXT,18,129,28,8 + CONTROL "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,124,75,20 + EDITTEXT IDC_RATETEXT,127,128,77,12,ES_CENTER | ES_READONLY + GROUPBOX "Centering",IDC_STATIC,221,0,61,67 + CONTROL "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,16,45,10 + CONTROL "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,32,39,10 + GROUPBOX "Line Mode",IDC_LINEMODE,222,73,61,73 + CONTROL "Normal",IDC_LM_NORMAL,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,231,89,44,10 + CONTROL "Double",IDC_LM_DOUBLED,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,105,45,10 + CONTROL "Scanlines",IDC_LM_SCANLINES,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,121,46,10 + COMBOBOX IDC_DA_MODE,35,183,58,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | NOT WS_VISIBLE | WS_VSCROLL | WS_TABSTOP + CONTROL "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | NOT WS_VISIBLE | WS_TABSTOP,99,179,101,20 + PUSHBUTTON "Detect Pixel Format",IDC_TEST16BIT,210,181,73,14 + LTEXT "FPS adj.:",IDC_REFRESH2TEXT,17,149,30,8 + CONTROL "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,144,127,20 + EDITTEXT IDC_RATE2TEXT,178,148,26,12,ES_CENTER | ES_READONLY + COMBOBOX IDC_RESOLUTIONDEPTH,112,27,32,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,113,85,10 +END + +IDD_MEMORY DIALOGEX 0, 0, 300, 175 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +EXSTYLE WS_EX_CONTEXTHELP +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Memory Settings",-1,14,7,274,91 + RTEXT "Chip:",-1,24,31,20,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_CHIPMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,22,50,20 + EDITTEXT IDC_CHIPRAM,105,26,30,12,ES_CENTER | ES_READONLY + RTEXT "Slow:",-1,149,31,20,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_SLOWMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,22,60,20 + EDITTEXT IDC_SLOWRAM,243,25,30,12,ES_CENTER | ES_READONLY + RTEXT "Fast:",IDC_FASTTEXT,24,52,20,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,47,50,20 + EDITTEXT IDC_FASTRAM,105,53,30,12,ES_CENTER | ES_READONLY + RTEXT "Z3 Fast:",IDC_Z3TEXT,139,52,30,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_Z3FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,47,60,20 + EDITTEXT IDC_Z3FASTRAM,243,52,30,12,ES_CENTER | ES_READONLY + RTEXT "RTG: [] Graphics card memory. Required for RTG (Picasso96) emulation.",IDC_GFXCARDTEXT,81,77,90,10,SS_NOTIFY | SS_CENTERIMAGE + CONTROL "Slider1",IDC_P96MEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,72,60,20 + EDITTEXT IDC_P96RAM,243,75,30,12,ES_CENTER | ES_READONLY + GROUPBOX "Advanced Memory Settings",-1,13,104,275,65 + RTEXT "Motherboard RAM (Low area):",-1,39,122,129,10,SS_CENTERIMAGE + CONTROL "",IDC_MBMEM1,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,117,59,20 + EDITTEXT IDC_MBRAM1,243,121,30,12,ES_CENTER | ES_READONLY + RTEXT "Motherboard RAM (High area):",-1,39,144,127,10,SS_CENTERIMAGE + CONTROL "",IDC_MBMEM2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,139,59,20 + EDITTEXT IDC_MBRAM2,243,142,30,12,ES_CENTER | ES_READONLY +END + +IDD_CPU DIALOGEX 0, 0, 300, 177 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + GROUPBOX "CPU",IDC_STATIC,5,5,81,166,BS_LEFT + CONTROL "68000",IDC_CPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,10,18,63,10 + CONTROL "68010",IDC_CPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,33,65,10 + CONTROL "68EC020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,48,65,10 + CONTROL "68EC020 + FPU",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,63,68,10 + CONTROL "68020",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,78,63,10 + CONTROL "68020 + FPU",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,93,64,10 + CONTROL "68040",IDC_CPU6,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,10,108,66,10 + CONTROL "More compatible [] Emulate 68000's prefetch registers. More compatible but slower.",IDC_COMPATIBLE, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,126,73,10 + CONTROL "JIT [] Enable just-in-time CPU emulator. Significantly increases the speed of the CPU emulation. Requires 68020 or 68040 CPU.",IDC_JITENABLE, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,149,73,10 + GROUPBOX "CPU Emulation Speed",IDC_STATIC,90,5,205,86 + CONTROL "Fastest possible, but maintain chipset timing",IDC_CS_HOST, + "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,95,18,195,10 + CONTROL "Match A500 speed",IDC_CS_68000,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,32,195,10 + CONTROL "Adjustable between CPU and chipset",IDC_CS_ADJUSTABLE, + "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,47,195,10 + RTEXT "CPU",IDC_CS_CPU_TEXT,96,71,15,10,SS_CENTERIMAGE | WS_TABSTOP + CONTROL "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,66,67,20 + LTEXT "Chipset",IDC_CS_CHIPSET_TEXT,182,71,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP + RTEXT "CPU idle",IDC_CS_CPU_TEXT2,236,56,32,10,SS_CENTERIMAGE | WS_TABSTOP + CONTROL "",IDC_CPUIDLE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,219,66,69,20 + GROUPBOX "Advanced JIT Settings",IDC_STATIC,90,92,205,79 + RTEXT "Cache size:",IDC_CS_CACHE_TEXT,95,109,45,10,SS_CENTERIMAGE | WS_TABSTOP + CONTROL "Slider1",IDC_CACHE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,140,104,115,20 + EDITTEXT IDC_CACHETEXT,255,109,30,12,ES_CENTER | ES_READONLY + CONTROL "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,128,60,10 + CONTROL "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,142,60,10 + CONTROL "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,60,10 + CONTROL "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,128,61,10 + CONTROL "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,165,142,60,10 + CONTROL "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,230,128,34,10 + CONTROL "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,142,45,10 + CONTROL "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,230,155,64,10 + CONTROL "More accurate FPU [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,137,73,10 +END + +IDD_FLOPPY DIALOGEX 0, 0, 300, 240 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + RTEXT "DF0:",IDC_STATIC,10,7,20,10,SS_CENTERIMAGE + COMBOBOX IDC_DF0TEXT,2,22,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_DF0TYPE,123,6,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Write-protected",IDC_STATIC,174,8,59,10,SS_CENTERIMAGE + CONTROL "",IDC_DF0WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,4,10,15 + PUSHBUTTON "Eject",IDC_EJECT0,253,4,30,15 + PUSHBUTTON "...",IDC_DF0,287,4,10,15 + RTEXT "DF1:",IDC_STATIC,10,42,20,10,SS_CENTERIMAGE + COMBOBOX IDC_DF1TEXT,2,58,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_DF1TYPE,123,42,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Write-protected",IDC_STATIC,174,43,59,10,SS_CENTERIMAGE + CONTROL "",IDC_DF1WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,40,10,15 + PUSHBUTTON "Eject",IDC_EJECT1,253,40,30,15 + PUSHBUTTON "...",IDC_DF1,287,40,10,15 + RTEXT "DF2:",IDC_STATIC,10,77,20,10,SS_CENTERIMAGE + COMBOBOX IDC_DF2TEXT,2,93,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_DF2TYPE,123,77,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Write-protected",IDC_STATIC,174,77,59,10,SS_CENTERIMAGE + CONTROL "",IDC_DF2WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,75,9,15 + PUSHBUTTON "Eject",IDC_EJECT2,253,75,30,15 + PUSHBUTTON "...",IDC_DF2,287,75,10,15 + RTEXT "DF3:",IDC_STATIC,10,112,20,9,SS_CENTERIMAGE + COMBOBOX IDC_DF3TEXT,2,128,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_DF3TYPE,123,112,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Write-protected",IDC_STATIC,174,113,59,10,SS_CENTERIMAGE + CONTROL "",IDC_DF3WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,111,9,15 + PUSHBUTTON "Eject",IDC_EJECT3,253,110,30,15 + PUSHBUTTON "...",IDC_DF3,287,109,10,15 + GROUPBOX "New Floppy Disk Image",IDC_SETTINGSTEXT,5,183,289,49 + COMBOBOX IDC_FLOPPYTYPE,16,196,51,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Create Standard Disk [] Creates a standard 880 or 1760 KB ADF disk image.",IDC_CREATE,76,196,97,15 + PUSHBUTTON "Create Custom Disk [] Creates a low level (MFM) ADF disk image (about 2MB). Useful for programs that use non-standard disk formats (for example some save disks or DOS-formatted floppies)",IDC_CREATE_RAW,183,196,101,15 + GROUPBOX "Floppy Drive Emulation Speed",IDC_SETTINGSTEXT2,5,144,289,35 + CONTROL "",IDC_FLOPPYSPD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,32,152,116,20 + EDITTEXT IDC_FLOPPYSPDTEXT,169,155,107,12,ES_CENTER | ES_READONLY + PUSHBUTTON "Delete save image",IDC_SAVEIMAGE0,43,5,70,15,NOT WS_VISIBLE + PUSHBUTTON "Delete save image",IDC_SAVEIMAGE1,43,40,70,15,NOT WS_VISIBLE + PUSHBUTTON "Delete save image",IDC_SAVEIMAGE2,43,75,70,15,NOT WS_VISIBLE + PUSHBUTTON "Delete save image",IDC_SAVEIMAGE3,43,110,70,15,NOT WS_VISIBLE + EDITTEXT IDC_CREATE_NAME,75,215,98,13,ES_AUTOHSCROLL + RTEXT "Disk label:",IDC_STATIC,14,216,52,10,SS_CENTERIMAGE +END + +IDD_HARDDISK DIALOGEX 0, 0, 300, 231 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +EXSTYLE WS_EX_CONTEXTHELP +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + CONTROL "List1",IDC_VOLUMELIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,0,290,182 + PUSHBUTTON "Add &Directory...",IDC_NEW_FS,5,186,60,15 + PUSHBUTTON "Add &Hardfile...",IDC_NEW_HF,70,186,60,15 + PUSHBUTTON "Add Ha&rd Drive...",IDC_NEW_HD,135,186,60,15 + PUSHBUTTON "Remove",IDC_REMOVE,235,186,60,15 + PUSHBUTTON "&Properties",IDC_EDIT,235,207,60,15 + CONTROL "Add PC drives at startup",IDC_MAPDRIVES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,205,100,10 + CONTROL "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,205,115,10 + CONTROL "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,216,115,10 + CONTROL "Include network drives",IDC_MAPDRIVES_NET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,216,101,10 +END + +IDD_SOUND DIALOGEX 0, 0, 300, 231 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + RTEXT "Sound device:",IDC_SOUNDCARD,8,9,51,13,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDCARDLIST,64,9,229,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Sound Emulation",IDC_SOUNDSETTINGS,5,30,120,81 + CONTROL "Disabled",IDC_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,45,43,10 + CONTROL "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,88,10 + CONTROL "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,42,10 + CONTROL "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,93,10 + GROUPBOX "Volume",IDC_STATIC,131,36,164,31 + CONTROL "",IDC_SOUNDVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,44,105,20 + EDITTEXT IDC_SOUNDVOLUME2,247,47,40,12,ES_CENTER | ES_READONLY + GROUPBOX "Sound Buffer Size",IDC_STATIC,132,73,164,31 + CONTROL "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,138,81,106,19 + EDITTEXT IDC_SOUNDBUFFERMEM,248,84,40,12,ES_CENTER | ES_READONLY + GROUPBOX "Settings",IDC_SOUNDINTERPOLATION2,6,114,290,60 + LTEXT "Frequency:",IDC_SOUNDFREQTXT,11,124,37,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDFREQ,13,133,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + LTEXT "Audio filter:",IDC_SOUNDFILTERTXT,209,148,34,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDFILTER,209,157,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "Stereo mode:",IDC_SOUNDSTEREOTXT,74,124,41,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDSTEREO,73,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,41,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDINTERPOLATION,209,132,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,56,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDSTEREOSEP,142,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "Stereo mixing delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE + COMBOBOX IDC_SOUNDSTEREOMIX,142,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Floppy Drive Sound Emulation",IDC_STATIC,6,177,290,46 + CONTROL "",IDC_SOUNDDRIVEVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,14,185,107,19 + EDITTEXT IDC_SOUNDDRIVEVOLUME2,124,191,40,12,ES_CENTER | ES_READONLY + COMBOBOX IDC_SOUNDDRIVE,237,187,46,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_SOUNDDRIVESELECT,18,205,265,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_SOUNDSWAP,73,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "Swap channels:",IDC_SOUNDSWAPTXT,74,148,50,8,SS_CENTERIMAGE + CONTROL "Automatic switching",IDC_SOUND_AUTO,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,14,95,103,10 +END + +IDD_LOADSAVE DIALOGEX 0, 0, 302, 241 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + CONTROL "",IDC_CONFIGTREE,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,6,3,289,153,WS_EX_CLIENTEDGE + RTEXT "Name:",IDC_STATIC,0,161,40,15,SS_CENTERIMAGE + EDITTEXT IDC_EDITNAME,44,162,150,13,ES_AUTOHSCROLL + RTEXT "Description:",IDC_STATIC,4,183,37,15,SS_CENTERIMAGE + EDITTEXT IDC_EDITDESCRIPTION,44,183,150,13,ES_AUTOHSCROLL + RTEXT "Link:",IDC_STATIC,0,204,40,15,SS_CENTERIMAGE + COMBOBOX IDC_CONFIGLINK,44,205,97,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,206,48,10 + EDITTEXT IDC_EDITPATH,199,161,49,15,ES_AUTOHSCROLL | WS_DISABLED + CONTROL "Autoload",IDC_CONFIGAUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,253,163,42,10 + GROUPBOX "Additional Information",IDC_STATIC,199,179,96,38,BS_LEFT + PUSHBUTTON "View",IDC_VIEWINFO,210,195,35,15 + PUSHBUTTON "Set",IDC_SETINFO,250,195,35,15 + PUSHBUTTON "Load",IDC_QUICKLOAD,5,225,40,15 + PUSHBUTTON "Save",IDC_QUICKSAVE,50,225,40,15 + PUSHBUTTON "Load From...",IDC_LOAD,125,225,45,15 + PUSHBUTTON "Delete",IDC_DELETE,255,225,40,15 + PUSHBUTTON "Save As...",IDC_SAVE,175,225,40,15 +END + +IDD_PORTS DIALOGEX 0, 0, 300, 238 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Parallel Port",IDC_SERPARFRAME,5,2,291,68 + RTEXT "Printer:",IDC_STATIC,12,15,25,15,SS_CENTERIMAGE + COMBOBOX IDC_PRINTERLIST,49,15,153,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Flush print job",IDC_FLUSHPRINTER,220,14,58,12 + CONTROL "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,78,12 + CONTROL "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,93,33,100,12 + RTEXT "Autoflush timeout [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE + EDITTEXT IDC_PRINTERAUTOFLUSH,263,33,25,12,ES_NUMBER + RTEXT "Ghostscript extra parameters:",IDC_STATIC,12,49,91,15,SS_CENTERIMAGE + EDITTEXT IDC_PS_PARAMS,120,50,169,12,ES_AUTOHSCROLL + GROUPBOX "Serial Port",IDC_SERIALFRAME,4,72,292,48 + COMBOBOX IDC_SERIAL,49,84,232,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,102,48,13 + CONTROL "RTS/CTS",IDC_SER_CTSRTS,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,65,102,55,12 + GROUPBOX "MIDI",IDC_MIDIFRAME,4,123,292,33 + RTEXT "Out:",IDC_MIDI,10,134,34,15,SS_CENTERIMAGE + COMBOBOX IDC_MIDIOUTLIST,50,134,95,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "In:",IDC_MIDI2,150,134,29,15,SS_CENTERIMAGE + COMBOBOX IDC_MIDIINLIST,185,134,95,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Mouse/Joystick Ports",IDC_PORT0,4,158,292,75 + COMBOBOX IDC_PORT0_JOYS,45,174,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_PORT1_JOYS,45,195,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Swap ports",IDC_SWAP,211,214,75,14 + RTEXT "Port 0:",IDC_STATIC,11,173,25,15,SS_CENTERIMAGE + RTEXT "Port 1:",IDC_STATIC,11,194,25,15,SS_CENTERIMAGE + LTEXT "X-Arcade layout information []#1",IDC_STATIC,16,213,106,15,SS_NOTIFY | SS_CENTERIMAGE + CONTROL "Direct []Use when emulating serial-link games on two PCs running WinUAE",IDC_SER_DIRECT, + "Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,132,103,65,12 + CONTROL "uaeserial.device",IDC_UAESERIAL,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,207,103,78,13 +END + +IDD_CONTRIBUTORS DIALOGEX 0, 0, 411, 242 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION +CAPTION "UAE Authors and Contributors..." +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + DEFPUSHBUTTON "Ok",ID_OK,177,219,53,14 + CONTROL "",IDC_CONTRIBUTORS,"RICHEDIT",TCS_HOTTRACK | TCS_VERTICAL | TCS_RAGGEDRIGHT | TCS_OWNERDRAWFIXED | TCS_MULTISELECT | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP,4,5,404,206 +END + +IDD_ABOUT DIALOGEX 0, 0, 300, 191 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + CONTROL "",IDC_RICHEDIT1,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,45,10,210,15 + CONTROL "",IDC_RICHEDIT2,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,30,260,13 + PUSHBUTTON "Contributors",IDC_CONTRIBUTORS,110,55,80,15 + CONTROL "",IDC_UAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,120,80,15 + CONTROL "",IDC_PICASSOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,90,80,20 + CONTROL "",IDC_AMIGAHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,109,90,80,20 + CONTROL "",IDC_WINUAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,120,80,15 + CONTROL "",IDC_AIABHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,120,80,15 + CONTROL "",IDC_THEROOTS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,145,80,15 + CONTROL "",IDC_CAPS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,145,80,15 + CONTROL "",IDC_ABIME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,145,80,15 + CONTROL "",IDC_CLOANTOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,90,80,20 + CONTROL "",IDC_AMIGASYS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,63,169,80,15 + CONTROL "",IDC_AMIKIT,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,157,169,80,15 +END + +IDD_MISC1 DIALOGEX 0, 0, 300, 237 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Advanced",IDC_STATIC,8,2,285,110 + CONTROL "Untrap mouse with middle button",IDC_JULIAN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,15,120,10 + CONTROL "Show GUI on startup",IDC_SHOWGUI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,27,120,10 + CONTROL "On-screen LEDs",IDC_SHOWLEDS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,40,115,10 + CONTROL "uaescsi.device",IDC_SCSIDEVICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,53,117,10 + CONTROL "Don't show taskbar button",IDC_NOTASKBARBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,66,117,10 + CONTROL "bsdsocket.library emulation",IDC_SOCKETS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,15,120,10 + CONTROL "Use CTRL-F11 to quit",IDC_CTRLF11,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,27,120,10 + CONTROL "Don't use RGB overlays",IDC_NOOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,40,120,10 + CONTROL "Synchronize clock",IDC_CLOCKSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,66,115,10 + GROUPBOX "Keyboard LEDs",IDC_STATIC,7,140,85,94 + COMBOBOX IDC_KBLED1,22,154,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_KBLED2,22,173,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_KBLED3,22,193,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Logging",IDC_STATIC,97,140,195,25 + CONTROL "Create log file",IDC_CREATELOGFILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,151,72,10 + CONTROL "Illegal memory accesses",IDC_ILLEGAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,189,151,95,10 + GROUPBOX "State Files",IDC_STATIC,98,165,195,69 + PUSHBUTTON "Load state...",IDC_DOLOADSTATE,105,182,49,14 + PUSHBUTTON "Save state...",IDC_DOSAVESTATE,105,208,49,14 + CONTROL "Enable state recording",IDC_STATE_CAPTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,188,181,88,10 + RTEXT "Recording rate (seconds):",IDC_STATIC,157,199,86,10,SS_CENTERIMAGE | WS_TABSTOP + COMBOBOX IDC_STATE_RATE,248,197,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + RTEXT "Recording buffer (MB):",IDC_STATIC,157,219,83,10,SS_CENTERIMAGE | WS_TABSTOP + COMBOBOX IDC_STATE_BUFFERSIZE,248,217,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + CONTROL "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,79,117,10 + CONTROL "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,79,115,10 + CONTROL "USB mode",IDC_KBLED_USB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,216,64,10 + COMBOBOX IDC_SCSIMODE,159,51,104,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_LANGUAGE,103,121,179,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Language",IDC_STATIC,7,112,285,25 + CONTROL "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,29,92,117,10 + CONTROL "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,92,119,10 +END + +IDD_HARDFILE DIALOGEX 0, 0, 299, 212 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Hardfile Settings" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + GROUPBOX "Settings",IDC_STATIC,10,5,280,113 + RTEXT "Path:",IDC_HARDFILE_DIR_TEXT,26,18,22,10 + EDITTEXT IDC_PATH_NAME,52,15,213,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_SELECTOR,271,15,11,15 + RTEXT "FileSys:",IDC_HARDFILE_FILESYS_TEXT,14,37,34,10 + EDITTEXT IDC_PATH_FILESYS,52,34,213,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_FILESYS_SELECTOR,271,34,11,15 + RTEXT "Device:",IDC_HARDFILE_DEVICE_TEXT,17,58,31,10 + EDITTEXT IDC_HARDFILE_DEVICE,52,54,40,15,ES_AUTOHSCROLL + RTEXT "Boot priority:",IDC_HARDFILE_BOOTPRI_TEXT,15,101,44,8 + EDITTEXT IDC_HARDFILE_BOOTPRI,65,96,40,15 + CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,57,50,10 + PUSHBUTTON "Enable RDB mode",IDC_HDF_RDB,192,55,92,14 + RTEXT "Surfaces:",IDC_SURFACES_TEXT,112,79,30,10 + EDITTEXT IDC_HEADS,147,75,35,15,ES_NUMBER + RTEXT "Reserved:",IDC_RESERVED_TEXT,197,79,35,10 + EDITTEXT IDC_RESERVED,237,75,35,15,ES_NUMBER + RTEXT "Sectors:",IDC_SECTORS_TEXT,112,101,30,10 + EDITTEXT IDC_SECTORS,147,96,35,15,ES_NUMBER + RTEXT "Block size:",IDC_BLOCKSIZE_TEXT,197,101,35,10 + EDITTEXT IDC_BLOCKSIZE,237,96,35,15,ES_NUMBER + GROUPBOX "New hard disk image file",IDC_STATIC,10,120,280,62 + PUSHBUTTON "Create",IDC_HF_CREATE,50,135,80,14 + EDITTEXT IDC_HF_SIZE,146,135,61,15,ES_NUMBER + PUSHBUTTON "OK",IDOK,102,191,50,14 + PUSHBUTTON "Cancel",IDCANCEL,158,191,50,14 + EDITTEXT IDC_HF_DOSTYPE,146,158,61,15 + COMBOBOX IDC_HF_TYPE,50,158,80,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + RTEXT "DOS type",IDC_STATIC,212,160,30,10,SS_CENTERIMAGE + RTEXT "MB",IDC_STATIC,212,138,11,10,SS_CENTERIMAGE + RTEXT "Type:",IDC_STATIC,18,160,25,10,SS_CENTERIMAGE +END + +IDD_FILESYS DIALOGEX 15, 25, 299, 111 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Volume Settings" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + LTEXT "Device name:",-1,5,9,54,10 + EDITTEXT IDC_VOLUME_DEVICE,65,5,86,15,ES_AUTOHSCROLL + LTEXT "Volume label:",-1,5,31,54,10 + EDITTEXT IDC_VOLUME_NAME,65,25,85,15,ES_AUTOHSCROLL + LTEXT "Path:",-1,5,51,44,10 + EDITTEXT IDC_PATH_NAME,65,46,213,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_SELECTOR,283,46,10,15 + CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,72,70,50,10 + RTEXT "Boot priority:",IDC_VOLUME_BOOTPRI_TEXT,135,70,51,8 + EDITTEXT IDC_VOLUME_BOOTPRI,199,68,27,15 + PUSHBUTTON "OK",IDOK,120,91,48,15 + PUSHBUTTON "Cancel",IDCANCEL,175,91,48,15 +END + +IDD_SETINFO DIALOGEX 0, 0, 229, 85 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Additional Information Settings" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + RTEXT "Path:",-1,5,20,24,15,SS_CENTERIMAGE + EDITTEXT IDC_PATH_NAME,35,20,169,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_SELECTOR,210,20,10,15 + PUSHBUTTON "OK",IDOK,120,65,48,15 + PUSHBUTTON "Cancel",IDCANCEL,175,65,48,15 +END + +IDD_CHIPSET DIALOGEX 0, 65490, 300, 229 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + GROUPBOX "Chipset",IDC_STATIC,14,11,145,90 + CONTROL "OCS [] Original chipset. A1000 and most A500s.",IDC_OCS, + "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,37,26,51,10 + CONTROL "ECS Agnus [] Enhanced chipset (ECS Agnus chip only). Later A500 and A2000 hardware revisions.",IDC_ECS_AGNUS, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,42,55,10 + CONTROL "Full ECS [] Full ECS chipset (ECS Agnus and ECS Denise chips). A500+, A600 and A3000.",IDC_ECS, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,58,52,10 + CONTROL "AGA [] Advanced Graphics Architecture chipset. A1200, A4000 and CD32.",IDC_AGA, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,26,51,10 + CONTROL "NTSC [] North American and Japanese display standard, 60Hz refresh rate. Other countries use PAL (50Hz. display refresh rate)",IDC_NTSC, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,101,58,50,10 + GROUPBOX "Options",IDC_STATIC,168,11,114,89 + CONTROL "Immediate Blitter [] Faster but less compatible blitter emulation.",IDC_BLITIMM, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,30,96,10 + CONTROL "Cycle-exact CPU and Blitter [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,43,100,10 + GROUPBOX "Collision Level",IDC_STATIC,14,105,267,48 + CONTROL "None [] Collision hardware emulation disabled.",IDC_COLLISION0, + "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,50,10 + CONTROL "Sprites only [] Emulate only sprite vs. sprite collisions.",IDC_COLLISION1, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,50,10 + CONTROL "Sprites and Sprites vs. Playfield [] Recommended collision emulation level.",IDC_COLLISION2, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,121,161,10 + CONTROL "Full [] 100% collision hardware emulation. Only very few games need this option. Slowest.",IDC_COLLISION3, + "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,104,137,82,10 + GROUPBOX "Sound Emulation",IDC_STATIC,13,159,268,65 + CONTROL "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,39,175,102,10 + CONTROL "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,190,91,10 + CONTROL "Emulated, 100% accurate",IDC_CS_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,205,95,10 + CONTROL "Genlock connected [] Allow boot sequence to detect genlock. Genlock is not emulated.",IDC_GENLOCK, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,56,100,10 + CONTROL "Faster RTG [] Enables less accurate custom chipset emulation mode when Picasso96 is enabled.",IDC_FASTERRTG, + "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,68,100,10 + COMBOBOX IDC_CS_EXT,101,80,49,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Chipset Extra",IDC_STATIC,25,79,52,15,SS_CENTERIMAGE +END + +IDD_CHIPSET2 DIALOGEX 0, 65490, 300, 247 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + GROUPBOX "Advanced Chipset Options",IDC_STATIC,7,6,287,239 + GROUPBOX "Battery Backed Up Real Time Clock",IDC_STATIC,14,37,275,29 + CONTROL "None",IDC_CS_RTC1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,22,49,55,10 + CONTROL "MSM6242B",IDC_CS_RTC2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,91,49,52,10 + CONTROL "RF5C01A",IDC_CS_RTC3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,160,49,46,10 + EDITTEXT IDC_CS_RTCADJUST,218,47,64,13,ES_AUTOHSCROLL + GROUPBOX "CIA-A TOD Clock Source",IDC_STATIC,12,69,275,29 + CONTROL "Vertical Sync",IDC_CS_CIAA_TOD1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,25,81,63,10 + CONTROL "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,95,81,85,10 + CONTROL "Power Supply 60Hz",IDC_CS_CIAA_TOD3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,192,81,88,10 + CONTROL "Boot ROM Mirror",IDC_CS_KSMIRROR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,128,80,10 + CONTROL "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,128,86,10 + CONTROL "CD32 CD",IDC_CS_CD32CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,141,76,10 + CONTROL "CD32 C2P",IDC_CS_CD32C2P,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,141,85,10 + CONTROL "CD32 NVRAM",IDC_CS_CD32NVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,141,84,10 + CONTROL "CDTV CD",IDC_CS_CDTVCD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,154,47,10 + CONTROL "CDTV SRAM",IDC_CS_CDTVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,153,85,10 + CONTROL "CDTV SRAM Expansion",IDC_CS_CDTVRAMEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,153,90,10 + CONTROL "A600/A1200 IDE",IDC_CS_IDE1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,166,79,10 + CONTROL "A4000 IDE",IDC_CS_IDE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,102,166,84,10 + CONTROL "Ramsey revision:",IDC_CS_RAMSEY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,201,71,10 + EDITTEXT IDC_CS_RAMSEYREV,94,199,45,13,ES_AUTOHSCROLL + CONTROL "Fat Gary revision:",IDC_CS_FATGARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,214,71,10 + EDITTEXT IDC_CS_FATGARYREV,94,213,45,13,ES_AUTOHSCROLL + CONTROL "Motherboard Super DMAC",IDC_CS_DMAC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,227,118,10 + CONTROL "Compatible Settings",IDC_CS_COMPATIBLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,21,234,10 + CONTROL "DF0: ID Hardware",IDC_CS_DF0IDHW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,193,128,92,10 + CONTROL "Agnus/Alice revision:",IDC_CS_AGNUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,150,201,81,10 + EDITTEXT IDC_CS_AGNUSREV,235,199,45,13,ES_AUTOHSCROLL | NOT WS_VISIBLE + CONTROL "Denise/Lisa revision:",IDC_CS_DENISE,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,150,214,81,10 + EDITTEXT IDC_CS_DENISEREV,235,213,45,13,ES_AUTOHSCROLL | NOT WS_VISIBLE +END + +IDD_AVIOUTPUT DIALOGEX 0, 0, 288, 203 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Output Properties",IDC_STATIC,5,8,274,118 + EDITTEXT IDC_AVIOUTPUT_FILETEXT,15,21,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE + PUSHBUTTON "...",IDC_AVIOUTPUT_FILE,249,20,19,12 + CONTROL "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,32,11 + CONTROL "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,36,209,11 + CONTROL "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,32,11 + CONTROL "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,50,209,11 + CONTROL "Disable frame rate limit while recording",IDC_AVIOUTPUT_FRAMELIMITER, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,136,10 + CONTROL "AVI output enabled",IDC_AVIOUTPUT_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,15,103,108,14 + CONTROL "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,133,103,66,14 + CONTROL "NTSC",IDC_AVIOUTPUT_NTSC,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,204,103,66,14 + CONTROL "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,156,84,97,11 + LTEXT "fps",IDC_AVIOUTPUT_FPS_STATIC,255,84,19,8 + PUSHBUTTON "Save screenshot",IDC_SCREENSHOT,16,141,76,14 + GROUPBOX "Ripper",IDC_STATIC,5,127,274,38 + PUSHBUTTON "Pro Wizard",IDC_PROWIZARD,100,141,76,14,WS_DISABLED + CONTROL "Sample ripper",IDC_SAMPLERIPPER_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,192,141,77,14 + GROUPBOX "Input Recorder",IDC_STATIC,5,166,274,33 + CONTROL "Record",IDC_INPREC_RECORD,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,191,177,77,14 + CONTROL "Playback",IDC_INPREC_PLAY,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,16,178,77,14 + CONTROL "Alt. playback mode",IDC_INPREC_PLAYMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,103,180,78,10 + CONTROL "Disable sound output while recording",IDC_AVIOUTPUT_NOSOUNDOUTPUT, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,85,136,10 +END + +IDD_INPUT DIALOGEX 0, 0, 300, 242 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + COMBOBOX IDC_INPUTTYPE,5,5,98,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_INPUTDEVICE,109,5,167,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "",IDC_INPUTDEVICEDISABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,282,8,9,8 + CONTROL "List1",IDC_INPUTLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,22,290,146 + COMBOBOX IDC_INPUTAMIGACNT,5,174,24,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_INPUTAMIGA,33,174,262,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + RTEXT "Joystick dead zone (%):",-1,8,196,76,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTDEADZONE,89,195,25,12,ES_NUMBER + RTEXT "Autofire rate (frames):",-1,9,212,68,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTAUTOFIRERATE,89,210,25,12,ES_NUMBER + RTEXT "Digital joy-mouse speed:",-1,121,196,76,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDD,207,195,25,12,ES_NUMBER + RTEXT "Analog joy-mouse speed:",-1,120,212,80,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDA,207,211,25,12,ES_NUMBER + RTEXT "Mouse speed:",-1,132,228,68,10,SS_CENTERIMAGE + EDITTEXT IDC_INPUTSPEEDM,207,227,25,12,ES_NUMBER + PUSHBUTTON "Copy from:",IDC_INPUTCOPY,249,195,45,14 + COMBOBOX IDC_INPUTCOPYFROM,249,211,45,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Swap 1<>2",IDC_INPUTSWAP,249,226,45,14 +END + +IDD_FILTER DIALOGEX 0, 0, 296, 224 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Filter Settings",-1,0,0,294,186 + CONTROL "Enable",IDC_FILTERENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,17,38,10 + COMBOBOX IDC_FILTERMODE,67,15,56,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_FILTERFILTER,128,15,65,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Reset to defaults",IDC_FILTERDEFAULT,197,15,73,14 + RTEXT "Horizontal size:",-1,9,44,59,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,37,142,19 + EDITTEXT IDC_FILTERHZV,253,40,34,12,ES_CENTER | ES_READONLY + RTEXT "Vertical size:",-1,10,64,59,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,57,142,19 + EDITTEXT IDC_FILTERVZV,253,59,34,12,ES_CENTER | ES_READONLY + RTEXT "Horizontal position:",-1,10,84,59,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,77,141,19 + EDITTEXT IDC_FILTERHOV,253,79,34,12,ES_CENTER | ES_READONLY + RTEXT "Vertical position:",-1,10,103,59,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,108,99,141,19 + EDITTEXT IDC_FILTERVOV,253,101,34,12,ES_CENTER | ES_READONLY + RTEXT "Scanlines:",-1,27,133,57,10,SS_CENTERIMAGE + CONTROL "Slider1",IDC_FILTERSL,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,94,126,157,19 + EDITTEXT IDC_FILTERSLV,253,128,34,12,ES_CENTER | ES_READONLY + COMBOBOX IDC_FILTERSLR,56,146,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "Slider1",IDC_FILTERSL2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,94,146,157,19 + EDITTEXT IDC_FILTERSL2V,253,151,34,12,ES_CENTER | ES_READONLY + GROUPBOX "Presets",-1,0,187,296,36 + COMBOBOX IDC_FILTERPRESETS,8,201,119,150,CBS_DROPDOWN | CBS_SORT | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Load",IDC_FILTERPRESETLOAD,132,200,47,14 + PUSHBUTTON "Save",IDC_FILTERPRESETSAVE,184,200,47,14 + PUSHBUTTON "Delete",IDC_FILTERPRESETDELETE,236,200,47,14 + COMBOBOX IDC_FILTERHZMULT,77,43,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_FILTERVZMULT,77,63,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "Autoscale",IDC_FILTERAUTORES,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,26,168,63,10 +END + +IDD_HARDDRIVE DIALOGEX 0, 0, 380, 66 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Harddrive Settings" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + LTEXT "Hard drive:",-1,7,11,35,10 + COMBOBOX IDC_HARDDRIVE,49,9,325,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + CONTROL "Read/write",IDC_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,245,33,50,10 + DEFPUSHBUTTON "Add hard drive",IDOK,176,30,57,14 + PUSHBUTTON "Cancel",IDCANCEL,321,30,54,14 + DEFPUSHBUTTON "Create hard disk image file",IDC_HARDDRIVE_IMAGE,49,30,95,14 + EDITTEXT IDC_PATH_NAME,89,49,169,15,ES_AUTOHSCROLL | NOT WS_VISIBLE +END + +IDD_MISC2 DIALOGEX 0, 0, 300, 92 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "When Active",IDC_STATIC,8,7,88,73 + RTEXT "Run at priority:",IDC_ACTIVE_PRI,14,17,45,10,SS_CENTERIMAGE | WS_TABSTOP + COMBOBOX IDC_ACTIVE_PRIORITY,14,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "When Inactive",IDC_STATIC,102,7,92,73 + RTEXT "Run at priority:",IDC_INACTIVE_PRI,109,17,45,10,SS_CENTERIMAGE | WS_TABSTOP + COMBOBOX IDC_INACTIVE_PRIORITY,109,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Pause emulation",IDC_INACTIVE_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,50,69,10 + CONTROL "Disable sound output",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10 + GROUPBOX "When Minimized",IDC_STATIC,199,7,92,73 + RTEXT "Run at priority:",IDC_MINIMIZED_PRI,207,18,45,10,SS_CENTERIMAGE | WS_TABSTOP + COMBOBOX IDC_MINIMIZED_PRIORITY,207,30,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Pause emulation",IDC_MINIMIZED_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,50,69,10 + CONTROL "Disable sound output",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10 +END + +IDD_DISK DIALOGEX 0, 0, 300, 242 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_SETFOREGROUND | DS_3DLOOK | DS_CONTROL | DS_CENTER | DS_CENTERMOUSE | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + CONTROL "",IDC_DISKLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,4,6,292,196 + PUSHBUTTON "Remove floppy disk image",IDC_DISKLISTREMOVE,153,223,93,15 + COMBOBOX IDC_DISKTEXT,3,205,293,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Insert floppy disk image",IDC_DISKLISTINSERT,38,223,93,15 +END + +IDD_PANEL DIALOGEX 0, 0, 420, 278 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_SYSMENU +EXSTYLE WS_EX_ACCEPTFILES | WS_EX_CONTROLPARENT +CAPTION "WinUAE Properties" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + GROUPBOX "",IDC_PANEL_FRAME,112,4,303,247,NOT WS_VISIBLE + CONTROL "",IDC_PANELTREE,"SysTreeView32",TVS_HASLINES | TVS_SHOWSELALWAYS | TVS_NOSCROLL | WS_BORDER | WS_TABSTOP,5,5,101,248,WS_EX_CLIENTEDGE + GROUPBOX "",IDC_PANEL_FRAME_OUTER,110,2,307,251 + PUSHBUTTON "Reset",IDC_RESETAMIGA,6,259,47,14 + PUSHBUTTON "Quit",IDC_QUITEMU,57,259,47,14 + DEFPUSHBUTTON "OK",IDOK,260,259,50,14 + PUSHBUTTON "Cancel",IDCANCEL,313,259,50,14 + PUSHBUTTON "Help",IDHELP,366,259,50,14,WS_DISABLED +END + +IDD_PATHS DIALOGEX 0, 0, 300, 237 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + LTEXT "System ROMs:",IDC_PATHS_ROML,14,9,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_ROM,14,22,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_ROMS,281,22,11,15 + LTEXT "Configuration files:",IDC_PATHS_CONFIGL,14,40,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_CONFIG,14,52,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_CONFIGS,281,52,11,15 + LTEXT "Screenshots:",IDC_PATHS_SCREENSHOTL,14,71,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_SCREENSHOT,14,83,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_SCREENSHOTS,281,83,11,15 + LTEXT "State files:",IDC_PATHS_STATEFILEL,14,102,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_SAVESTATE,14,114,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_SAVESTATES,281,114,11,15 + LTEXT "Videos:",IDC_PATHS_AVIOUTPUTL,14,132,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_AVIOUTPUT,14,144,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_AVIOUTPUTS,282,144,11,15 + LTEXT "Saveimages:",IDC_PATHS_SAVEIMAGEL,14,163,260,8,SS_CENTERIMAGE + EDITTEXT IDC_PATHS_SAVEIMAGE,14,175,261,15,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_PATHS_SAVEIMAGES,281,175,11,15 + PUSHBUTTON "Reset to defaults",IDC_PATHS_DEFAULT,14,199,92,14 + PUSHBUTTON "Rescan ROMs",IDC_ROM_RESCAN,14,218,92,14 + PUSHBUTTON "Clear registry",IDC_RESETREGISTRY,112,218,77,14 + COMBOBOX IDC_PATHS_DEFAULTTYPE,112,199,163,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Clear disk history",IDC_RESETDISKHISTORY,198,218,77,14 +END + +IDD_QUICKSTART DIALOGEX 0, 0, 300, 242 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + GROUPBOX "Emulated Hardware",IDC_QUICKSTART_CONFIG,3,0,294,54 + RTEXT "Model:",IDC_STATIC,5,14,56,10,SS_CENTERIMAGE + COMBOBOX IDC_QUICKSTART_MODEL,65,12,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + RTEXT "Configuration:",IDC_STATIC,5,33,56,10,SS_CENTERIMAGE + COMBOBOX IDC_QUICKSTART_CONFIGURATION,65,31,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Compatibility vs Required CPU Power ",IDC_QUICKSTART_COMPA,3,56,294,33 + RTEXT "Best compatibility",IDC_STATIC,13,70,67,10,SS_CENTERIMAGE + CONTROL "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,88,65,115,21 + RTEXT "Low compatibility",IDC_STATIC,215,70,63,10,SS_CENTERIMAGE + GROUPBOX "Host Configuration",IDC_QUICKSTART_HOST,3,91,294,33 + RTEXT "Configuration:",IDC_STATIC,5,105,55,10,SS_CENTERIMAGE + COMBOBOX IDC_QUICKSTART_HOSTCONFIG,65,103,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Emulated Floppy Drives",IDC_QUICKSTART_DF,3,126,294,84 + LTEXT "Floppy drive DF0:",IDC_STATIC,10,138,56,10,SS_CENTERIMAGE + PUSHBUTTON "Select disk image",IDC_DF0QQ,77,135,98,15 + RTEXT "Write-protected",IDC_STATIC,180,139,58,10,SS_CENTERIMAGE + CONTROL "",IDC_DF0WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,137,10,15 + PUSHBUTTON "Eject",IDC_EJECT0Q,260,136,30,15 + COMBOBOX IDC_DF0TEXTQ,9,154,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + LTEXT "Floppy drive DF1:",IDC_STATIC,10,176,56,10,SS_CENTERIMAGE + PUSHBUTTON "Select disk image",IDC_DF1QQ,77,172,98,15 + RTEXT "Write-protected",IDC_STATIC,180,175,58,10,SS_CENTERIMAGE + CONTROL "",IDC_DF1WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,173,10,15 + PUSHBUTTON "Eject",IDC_EJECT1Q,260,172,30,15 + COMBOBOX IDC_DF1TEXTQ,9,190,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Set configuration",IDC_QUICKSTART_SETCONFIG,9,219,72,15,NOT WS_VISIBLE + GROUPBOX "Mode",IDC_STATIC,190,211,107,27,BS_LEFT + CONTROL "Start in Quickstart mode",IDC_QUICKSTARTMODE,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,199,222,94,10 +END + +IDD_FRONTEND DIALOGEX 0, 0, 420, 242 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD +FONT 8, "MS Sans Serif", 0, 0, 0x1 +BEGIN + CONTROL "",IDC_FE_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,6,9,235,124 + GROUPBOX "",IDC_FE_INFO,249,140,160,95 + GROUPBOX "",IDC_FE_SCREENSHOT,249,7,160,128 +END + +IDD_PROGRESSBAR DIALOGEX 0, 0, 229, 58 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Processing..." +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + PUSHBUTTON "Cancel",IDCANCEL,88,40,50,14 + CONTROL "",IDC_PROGRESSBAR,"msctls_progress32",WS_BORDER | 0x1,7,19,215,14 + CTEXT "x",IDC_PROGRESSBAR_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP +END + +IDD_STRINGBOX DIALOGEX 0, 0, 229, 58 +STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Enter text..." +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + DEFPUSHBUTTON "OK",IDOK,48,39,50,14 + PUSHBUTTON "Cancel",IDCANCEL,151,39,50,14 + EDITTEXT IDC_STRINGBOXEDIT,7,17,214,14,ES_AUTOHSCROLL | ES_WANTRETURN + CTEXT "Custom input event",IDC_STRINGBOX_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_APPICON ICON "winuae.ico" +IDI_FLOPPY ICON "35floppy.ico" +IDI_ABOUT ICON "amigainfo.ico" +IDI_HARDDISK ICON "Drive.ico" +IDI_CPU ICON "cpu.ico" +IDI_PORTS ICON "joystick.ico" +IDI_INPUT ICON "joystick.ico" +IDI_MISC1 ICON "misc.ico" +IDI_MISC2 ICON "misc.ico" +IDI_MOVE_UP ICON "move_up.ico" +IDI_MOVE_DOWN ICON "move_dow.ico" +IDI_AVIOUTPUT ICON "avioutput.ico" +IDI_DISK ICON "Drive.ico" +IDI_CONFIGFILE ICON "file.ico" +IDI_FOLDER ICON "folder.ico" +IDI_SOUND ICON "sound.ico" +IDI_DISPLAY ICON "screen.ico" +IDI_ROOT ICON "root.ico" +IDI_MEMORY ICON "chip.ico" +IDI_QUICKSTART ICON "quickstart.ico" +IDI_PATHS ICON "paths.ico" + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,4,1,0 + PRODUCTVERSION 1,4,1,0 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x40004L + FILETYPE 0x1L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "FileDescription", "WinUAE" + VALUE "FileVersion", "1.4.1" + VALUE "InternalName", "WinUAE" + VALUE "LegalCopyright", "© 1996-2007 under the GNU Public License (GPL)" + VALUE "OriginalFilename", "WinUAE.exe" + VALUE "ProductName", "WinUAE" + VALUE "ProductVersion", "1.4.1" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Cursor +// + +IDC_MYHAND CURSOR "H_arrow.cur" + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +IDM_SYSTRAY MENU +BEGIN + POPUP "Menu" + BEGIN + MENUITEM "Configuration", ID_ST_CONFIGURATION + POPUP "Floppy drives" + BEGIN + MENUITEM "Eject all drives", ID_ST_EJECTALL + MENUITEM "DF0:", ID_ST_DF0 + MENUITEM "DF1:", ID_ST_DF1 + MENUITEM "DF2:", ID_ST_DF2 + MENUITEM "DF3:", ID_ST_DF3 + END + MENUITEM "Reset", ID_ST_RESET + MENUITEM "Help", ID_ST_HELP + MENUITEM "Quit WinUAE", ID_ST_QUIT + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE +BEGIN + IDS_KICKSTART "ROM" + IDS_DISK "Disk swapper" + IDS_DISPLAY "Display" + IDS_HARDDISK "Hard drives" + IDS_FLOPPY "Floppy drives" + IDS_ABOUT "About" + IDS_LOADSAVE "Configurations" + IDS_AVIOUTPUT "Output" + IDS_PORTS "Game & I/O ports" + IDS_MISC1 "Misc" + IDS_MEMORY "RAM" + IDS_CPU "CPU" + IDS_CHIPSET "Chipset" + IDS_INPUT "Input" + IDS_FILTER "Filter" +END + +STRINGTABLE +BEGIN + IDS_MISC2 "Priority" + IDS_PATHS "Paths" + IDS_QUICKSTART "Quickstart" + IDS_FRONTEND "Frontend" + IDS_CHIPSET2 "Adv. Chipset" +END + +STRINGTABLE +BEGIN + IDS_EXTTEXT "Floppy disk image files" + IDS_EXTACTUAL "ADF" + IDS_SOUND "Sound" + IDS_CDROM "CD-ROM" + IDS_FRAMERATE "Every %1Frame" + IDS_SECOND "second " + IDS_THIRD "third " + IDS_FOURTH "fourth " + IDS_FIFTH "fifth " + IDS_SIXTH "sixth " + IDS_SEVENTH "seventh " + IDS_EIGHTH "eighth " +END + +STRINGTABLE +BEGIN + IDS_NINTH "ninth " + IDS_TENTH "tenth " + IDS_SELECTADF "Select a floppy disk image file..." + IDS_ADF "Floppy disk image files" + IDS_CHOOSEBLANK "Choose a blank floppy disk image file..." + IDS_SELECTHDF "Select a hard disk image file..." + IDS_HDF "Hard disk image files" + IDS_SELECTUAE "Select a WinUAE configuration file..." + IDS_UAE "WinUAE configuration files" + IDS_SELECTROM "Select a system ROM file..." + IDS_ROM "System ROM files" + IDS_SELECTKEY "Select a system ROM key file..." + IDS_KEY "System ROM key files" + IDS_SELECTINFO "Select information for your configuration..." + IDS_NONE "none" + IDS_VOLUME "Volume" +END + +STRINGTABLE +BEGIN + IDS_SELECTFILESYSROOT "Please select the root directory of the file system..." + IDS_DEFAULTMIDIOUT "Default MIDI-Out Device" + IDS_CONTRIBUTORS1 "Bernd Schmidt - The Grand-Master\nSam Jordan - Custom-chip, floppy-DMA, etc.\nMathias Ortmann - Original WinUAE Main Guy, BSD Socket support\nBrian King - Picasso96 Support, Integrated GUI for WinUAE, previous WinUAE Main Guy\nToni Wilen - Core updates, WinUAE Main Guy\nGustavo Goedert/Peter Remmers/Michael Sontheimer/Tomi Hakala/Tim Gunn/Nemo Pohle - DOS Port Stuff\nSamuel Devulder/Olaf Barthel/Sam Jordan - Amiga Ports\nKrister Bergman - XFree86 and OS/2 Port\nA. Blanchard/Ernesto Corvi - MacOS Port\nChristian Bauer - BeOS Port\nIan Stephenson - NextStep Port\nPeter Teichmann - Acorn/RiscOS Port\nStefan Reinauer - ZorroII/III AutoConfig, Serial Support\nChristian Schmitt/Chris Hames - Serial Support\nHerman ten Brugge - 68020/68881 Emulation Code\nTauno Taipaleenmaki - Various UAE-Control/UAE-Library Support\nBrett Eden/Tim Gunn/Paolo Besser/Nemo Pohle - Various Docs and Web-Sites\nGeorg Veichtlbauer - Help File coordinator, German GUI\nFulvio Leonardi - Italian translator for WinUAE\n" + IDS_CONTRIBUTORS2 "Bill Panagouleas - Hardware support\nSpecial thanks to Alexander Kneer and Tobias Abt (The Picasso96 Team)\nSteven Weiser - Postscript printing emulation idea and testing.\nPéter Tóth /Balázs Rátkai/Iván Herczeg/András Arató - Hungarian translation" + IDS_INVALIDPRTPORT "The printer you have in this configuration is not valid on this machine.\n" + IDS_RESTOREUSS "Restore a WinUAE snapshot file" + IDS_USS "WinUAE snapshot files" + IDS_WRONGOSVERSION "WinUAE is no longer supported on Windows NT. Please upgrade to either Windows 2000 or Windows XP or a later version." + IDS_SELECTFLASH "Select a flash or battery-backed RAM file..." + IDS_FLASH "WinUAE flash or battery-backed RAM file" + IDS_INPUTHOSTWIDGET "Input source" + IDS_INPUTAMIGAEVENT "Input target" + IDS_INPUTAUTOFIRE "Autofire" + IDS_SAVEUSS "Save a WinUAE snapshot file" + IDS_MIDIOVERFLOW "Sysexbuffer overflow. Should not happen. Please report this to\nberndroesch1@compuserve.de" +END + +STRINGTABLE +BEGIN + IDS_PATH "Path" + IDS_RW "R/W" + IDS_SECTORS "Sectors" + IDS_SURFACES "Bill Panagouleas - Hardware support\nSpecial thanks to Alexander Kneer and Tobias Abt (The Picasso96 Team)\nSteven Weiser - Postscript printing emulation idea and testing.\nHungarian translation - Péter Tóth , Balázs Rátkai , Iván Herczeg , András Arató" + IDS_RESERVED "Reserved" + IDS_BLOCKSIZE "Block size" + IDS_NAME "Name" + IDS_DESCRIPTION "Description" + IDS_COULDNOTLOADCONFIG "Could not load the selected configuration!\n" + IDS_NOHELP "Online help is disabled because the HTML Help functionality is not installed on this system. HTML Help is available from http://www.microsoft.com/downloads/.\n" + IDS_MUSTSELECTCONFIG "You must select a configuration or enter a name before selecting Load...\n" + IDS_INVALIDCOMPORT "The serial port you have in this configuration is not valid on this machine.\n" +END + +STRINGTABLE +BEGIN + IDS_HFDSIZE "Size" + IDS_DEVICE "Device" + IDS_BOOTPRI "BootPri" + IDS_FLOPPY_COMPATIBLE " (compatible)" + IDS_FLOPPY_TURBO "Turbo" + IDS_YES "yes" + IDS_NO "no" + IDS_PRI_ABOVENORMAL "Above Normal" + IDS_PRI_NORMAL "Normal" + IDS_PRI_BELOWNORMAL "Below Normal" + IDS_PRI_LOW "Low" + IDS_OLDRTGLIBRARY "The installed LIBS:Picasso96/rtg.library (%d.%d) file needs to be updated.\nA newer version is included in the ""Amiga Programs"" directory of the WinUAE distribution archive.\nThe new library fixes graphics problems and increases performance." + IDS_DEFAULT_AF2005 "Amiga Forever" + IDS_DEFAULT_AF "Amiga Forever (old)" + IDS_DEFAULT_WINUAE "WinUAE default" +END + +STRINGTABLE +BEGIN + IDS_UNSUPPORTEDPIXELFORMAT + "Error: unsupported pixel format. Please use a different screen mode.\n" + IDS_MUSTENTERNAME "You must select a configuration or enter a name before selecting Save...\n" + IDS_MUSTSELECTCONFIGFORDELETE + "You must select a configuration or enter a name before selecting Delete...\n" + IDS_DELETECONFIGCONFIRMATION + "Are you sure you want to Delete this configuration?\n" + IDS_DELETECONFIGTITLE "Confirm Delete" + IDS_GFXCARDCHECK "WinUAE will now determine the 16-bit pixel format of your graphics card. Your screen will go black for two seconds, with a resolution of 640x480 @ 60Hz. This procedure is required for best rendering of the emulation environment on 16-bit display-modes, and should be done whenever you run WinUAE for the first time, or install a new graphics card in your PC. Proceed with this test?" + IDS_GFXCARDTITLE "Pixel format detection" + IDS_MUSTSELECTPATH "You must select a path!" + IDS_SETTINGSERROR "Settings error" + IDS_MUSTSELECTNAME "You must select a name for the volume!" + IDS_MUSTSELECTFILE "You must select a file!" + IDS_FAILEDHARDFILECREATION "Failed to create hard disk image file..." + IDS_CREATIONERROR "Creation error" + IDS_ERRORTITLE "WinUAE message" +END + +STRINGTABLE +BEGIN + IDS_INP "WinUAE Input Recording" + IDS_RESTOREINP "Playback a WinUAE input recording" + IDS_SAVEINP "Record a WinUAE input recording" + IDS_SOUND_MONO "Mono" + IDS_SOUND_MIXED "Mixed" + IDS_SOUND_STEREO "Stereo" + IDS_SOUND_INTERPOL_DISABLED "Disabled" + IDS_SOUND_FILTER_OFF "Always off" + IDS_SOUND_FILTER_EMULATED "Emulated (A500)" +END + +STRINGTABLE +BEGIN + IDS_SOUND_FILTER_EMULATED_E "Emulated (A1200)" + IDS_INPUT_COMPATIBILITY "Compatibility mode" + IDS_INPUT_CUSTOM "Configuration #%d" + IDS_INPUT_COPY_DEFAULT "Default" + IDS_INPUT_COPY_CUSTOM "Config #%d" + IDS_3D_NO_FILTER "Point (%d-bit)" + IDS_3D_BILINEAR "Bilinear (%d-bit)" + IDS_VSYNC_DEFAULT "Default" + IDS_DRIVESOUND_NONE "No sound" + IDS_DRIVESOUND_DEFAULT_A500 "A500 (WinUAE built-in)" + IDS_AVIOUTPUT_NOCODEC "no codec selected" + IDS_DISK_IMAGENAME "Disk image" + IDS_DISK_DRIVENAME "Drive" + IDS_AGA8BIT "AGA emulation requires a 16-bit or higher display depth.\nSwitching from 8-bit to 16-bit." + IDS_UNSUPPORTEDSCREENMODE + "The selected screen mode can't be displayed in a window, because %s\nSwitching to full-screen display." + IDS_UNSUPPORTEDSCREENMODE_1 + "the desktop is running in an unknown color mode." +END + +STRINGTABLE +BEGIN + IDS_UNSUPPORTEDSCREENMODE_2 + "the desktop is running in 8-bit color depth, which WinUAE can't use in windowed mode." + IDS_UNSUPPORTEDSCREENMODE_3 + "the desktop is too small for the specified window size." + IDS_UNSUPPORTEDSCREENMODE_4 + "you selected an RTG (Picasso96) display with a color depth different from that of the desktop and an overlay was unavailable." + IDS_FLOPPYTYPE35DD "3.5"" DD" + IDS_FLOPPYTYPE35HD "3.5"" HD" + IDS_FLOPPYTYPE525SD "5.25"" SD" + IDS_FLOPPYTYPEDISABLED "Disabled" + IDS_STMENUNOFLOPPY "No floppy disk inserted" + IDS_TREEVIEW_HARDWARE "Hardware" + IDS_TREEVIEW_HOST "Host" + IDS_TREEVIEW_MISC "Miscellaneous" + IDS_TREEVIEW_SETTINGS "Settings" + IDS_WINUAETITLE_MMB "[Mouse active - press ALT+TAB or middle mouse button to cancel]" + IDS_WINUAETITLE_NORMAL "[Mouse active - press ALT+TAB to cancel]" + IDS_STARTEMULATION "Start" + IDS_TREEVIEW_ABOUT "About" +END + +STRINGTABLE +BEGIN + IDS_NOHARDDRIVES "No hard disks detected that were either empty or RDB-partitioned." + IDS_DEFAULT_HOST "Default Configuration" + IDS_SOUND_4CHANNEL "4 Channels" + IDS_HF_FS_CUSTOM "Custom" + IDS_SELECTFS "Select file system handler (FastFileSystem, SmartFilesystem, etc.)" + IDS_KEYJOY "Keyboard Layout A (Numeric keypad, 0 and 5 = Fire)\nKeyboard Layout B (Cursor keys, Right CTRL and ALT = Fire)\nKeyboard Layout C (W=Up S=Down A=Left D=Right, Left ALT = Fire)\nX-Arcade (Left)\nX-Arcade (Right)" + IDS_STATEFILE_UNCOMPRESSED "Uncompressed" + IDS_STATEFILE_RAMDUMP "RAM dump" + IDS_STATEFILE_WAVE "Wave audio dump" + IDS_SOUND_SWAP_PAULA "Paula only" + IDS_SOUND_SWAP_AHI "AHI only" + IDS_SOUND_SWAP_BOTH "Both" + IDS_SOUND_FILTER_ON_AGA "Always on (A500)" + IDS_SOUND_FILTER_ON_A500 "Always on (A1200)" + IDS_DRIVESOUND_PC_FLOPPY "PC floppy drive %c" + IDS_FLOPPYTYPE35DDESCOM "3.5"" ESCOM" +END + +STRINGTABLE +BEGIN + IDS_NUMSG_NEEDEXT2 "The software uses a non-standard floppy disk format. You may need to use a custom floppy disk image file instead of a standard one. This message will not appear again." + IDS_NUMSG_NOROMKEY "Could not find system ROM key file." + IDS_NUMSG_KSROMCRCERROR "System ROM checksum incorrect. The system ROM image file may be corrupt." + IDS_NUMSG_KSROMREADERROR "Error while reading system ROM." +END + +STRINGTABLE +BEGIN + IDS_NUMSG_NOEXTROM "No extended ROM found." + IDS_NUMSG_MODRIP_NOTFOUND "No music modules or packed data found." + IDS_NUMSG_MODRIP_FINISHED "Scan finished." + IDS_NUMSG_MODRIP_SAVE "Module/packed data found\n%s\nWould you like to save it?" + IDS_NUMSG_KS68020 "The selected system ROM requires a 68020 or higher CPU." + IDS_NUMSG_ROMNEED "One of the following system ROMs is required:\n\n%s\n\nCheck the System ROM path in the Paths panel and click Rescan ROMs." + IDS_NUMSG_STATEHD "WARNING: State saves do not support hard drive emulation. This message will not appear again." + IDS_NUMSG_NOCAPS "Selected disk image needs the SPS plugin\nwhich is available from\nhttp//www.softpres.org/" + IDS_NUMSG_OLDCAPS "You need an updated SPS plugin\nwhich is available from\nhttp//www.softpres.org/" + IDS_IMGCHK_BOOTBLOCKCRCERROR + "The selected floppy disk image is not bootable (boot block checksum error)" + IDS_IMGCHK_BOOTBLOCKNO "The selected floppy disk image is not bootable (no boot block)" + IDS_IMGCHK_DAMAGED "The selected floppy disk image is damaged or unformatted" + IDS_IMGCHK_KS2 "The selected floppy disk image requires a 2.04 or later system ROM.\nThe configuration has been updated." + IDS_IMGCHK_KS3 "The selected floppy disk image requires a 3.0 or later system ROM.\nThe configuration has been updated." + IDS_ROMSCANEND "Scan of ROMs finished" +END + +STRINGTABLE +BEGIN + IDS_ROM_AVAILABLE "available" + IDS_ROM_UNAVAILABLE "unavailable" + IDS_HARDDRIVESAFETYWARNING + "Warning: The safety test has been disabled, and non-empty hard disks were detected.\n\nHard disks marked with 'HD_*_' are not empty." + IDS_NUMSG_KS68EC020 "The selected system ROM requires a 68EC020 or higher CPU." + IDS_ROMSCANNOROMS "No supported system ROMs detected." + IDS_NUMSG_KICKREP "You need to have a floppy disk (image file) in DF0: to use the system ROM replacement." + IDS_NUMSG_KICKREPNO "The floppy disk (image file) in DF0: is not compatible with the system ROM replacement functionality." + IDS_NUMSG_NOROM "Could not load system ROM, trying system ROM replacement." + IDS_HDCLONE_OK "Hard drive image file created succesfully." + IDS_HDCLONE_FAIL "Hard drive image file creation failed.\nError code %d:%d." +END + +STRINGTABLE +BEGIN + IDS_QS_MODELS "A500\nA500+\nA600\nA1000\nA1200\nCD32\nCDTV\nArcadia Multi Select system\nExpanded WinUAE example configuration" + IDS_QS_MODEL_A500 "1.3 ROM, OCS, 512 KB Chip + 512 KB Slow RAM (most common)\nThis configuration is capable of running most games and demos produced for first-generation hardware. Only few exceptions need a different configuration (e.g. the oldest games tend to be incompatible with this configuration).\n1.3 ROM, ECS Agnus, 512 KB Chip RAM + 512 KB Slow RAM\nLater hardware revision of the A500. Nearly 100% compatible with the previous configuration.\n1.3 ROM, ECS Agnus, 1 MB Chip RAM\nFew newer games and demos require this configuration.\n1.3 ROM, OCS Agnus, 512 KB Chip RAM\nVery old (e.g. pre-1988) games and demos may require this configuration.\n1.2 ROM, OCS Agnus, 512 KB Chip RAM\nAs available for the A1000, and installed on the first A500 and A2000 series. Some very old programs only work correctly with this configuration. Note: This system ROM version can only boot from floppy disk (no hard disk boot support).\n1.2 ROM, OCS Agnus, 512 KB Chip RAM + 512 KB Slow RAM\nThis configuration adds expansion memory to the first A500 produced. Try this if your game does not work with newer configurations, but works with the previous one. It could add some features to the game, including faster loading times. Note: This system ROM version can only boot from floppy disk (no hard disk boot support)." + IDS_QS_MODEL_A500P "Basic non-expanded configuration\nThe A500+ adds an ECS Agnus chip, 1 MB of Chip RAM and a 2.0 ROM to the A500. Many A500 games and demos don't work properly on an A500+.\n2 MB Chip RAM expanded configuration\n\n4 MB Fast RAM expanded configuration\n" + IDS_QS_MODEL_A600 "Basic non-expanded configuration\nThe A600 is smaller than the A500+ and has an updated 2.0 ROM.\n2 MB Chip RAM expanded configuration\n\n4 MB Fast RAM expanded configuration\n" + IDS_QS_MODEL_A1000 "512 KB Chip RAM\nThe A1000 was the first model produced, with a configuration equivalent to that of an A500 with OCS chipset. You normally don't need to use this configuration, unless you are nostalgic and would like to hear the short A1000 boot tune\n256 KB Chip RAM\nUnexpanded A1000. All later A1000 models were sold with a 256 KB RAM expansion built-in." + IDS_QS_MODEL_A1200 "Basic non-expanded configuration\nUse this configuration to run most AGA demos and games\n4 MB Fast RAM expanded configuration\nSome newer AGA games and demos need an expanded A1200 to run." + IDS_QS_MODEL_CD32 "CD32\nThe CD32 was one the first 32-bit consoles on the market. It is basically an A1200 with a built-in CD-ROM drive. Insert your CD32 or CDTV CD-ROM into a free CD-ROM drive before starting the emulation." + IDS_QS_MODEL_CDTV "CDTV\nThe CDTV was the first model with a built-in CD-ROM drive. Looking like a black CD player, it featured a configuration equivalent to that of an A500 with 1 MB RAM and an ECS chipset.\nFloppy drive and 64KB SRAM card expanded CDTV\n" +END + +STRINGTABLE +BEGIN + IDS_QS_MODEL_UAE "High-end expanded configuration" + IDS_QS_MODEL_ARCADIA "Arcadia\nArcadia Multi Select system is arcade platform developed by Arcadia and Mastertronic. It is based on an A500 mainboard with ROM cage attached to expansion port. Arcadia ROM files go to ""Cartridge ROM File"" in ROM-panel." +END + +STRINGTABLE +BEGIN + IDS_SOUND_STEREO2 "Cloned Stereo" + IDS_INPUT_CUSTOMEVENT "" +END + +#endif // English (U.S.) resources +///////////////////////////////////////////////////////////////////////////// + + +///////////////////////////////////////////////////////////////////////////// +// Finnish resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FIN) +#ifdef _WIN32 +LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT +#pragma code_page(1252) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.\0" +END + + +3 TEXTINCLUDE +BEGIN + "\r\0" +END + +#endif // APSTUDIO_INVOKED + +#endif // Finnish resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/od-win32/win32.c b/od-win32/win32.c index 8da22a67..791c37f1 100755 --- a/od-win32/win32.c +++ b/od-win32/win32.c @@ -495,7 +495,7 @@ void setmouseactive (int active) recapture = 0; #if 0 if (active > 0 && mousehack_allowed () && mousehack_alive ()) { - if (!isfullscreen ()) + if (isfullscreen () <= 0) return; } #endif @@ -588,7 +588,7 @@ static void winuae_active (HWND hWnd, int minimized) inputdevice_acquire (); wait_keyrelease (); inputdevice_acquire (); - if (isfullscreen()) + if (isfullscreen() > 0) setmouseactive (1); manual_palette_refresh_needed = 1; @@ -648,7 +648,7 @@ extern void setamigamouse(int,int); void setmouseactivexy(int x, int y, int dir) { int diff = 8; - if (isfullscreen()) + if (isfullscreen() > 0) return; x += amigawin_rect.left; y += amigawin_rect.top; @@ -708,7 +708,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, #if MSGDEBUG write_log ("WM_SIZE %x %d %d\n", hWnd, wParam, minimized); #endif - if (isfullscreen ()) { + if (isfullscreen () > 0) { v = minimized; switch (wParam) { @@ -742,7 +742,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, #if MSGDEBUG write_log ("WM_ACTIVATE %x %d %d %d\n", hWnd, HIWORD (wParam), LOWORD (wParam), minimized); #endif - if (!isfullscreen ()) { + if (isfullscreen () <= 0) { minimized = HIWORD (wParam); if (LOWORD (wParam) != WA_INACTIVE) { winuae_active (hWnd, minimized); @@ -805,7 +805,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, return 0; case WM_LBUTTONDOWN: case WM_LBUTTONDBLCLK: - if (!mouseactive && !isfullscreen() && !gui_active) { + if (!mouseactive && isfullscreen() <= 0 && !gui_active) { setmouseactive (1); } if (dinput_winmouse () >= 0) @@ -830,7 +830,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, case WM_MBUTTONDBLCLK: if (currprefs.win32_middle_mouse) { #ifndef _DEBUG - if (isfullscreen ()) + if (isfullscreen () > 0) minimizewindow (); #endif if (mouseactive) @@ -905,7 +905,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, case WM_WINDOWPOSCHANGED: GetWindowRect (hWnd, &amigawin_rect); - if (!isfullscreen()) { + if (isfullscreen() == 0) { changed_prefs.gfx_size_win.x = amigawin_rect.left; changed_prefs.gfx_size_win.y = amigawin_rect.top; } @@ -915,7 +915,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, { mx = (signed short) LOWORD (lParam); my = (signed short) HIWORD (lParam); - if (recapture && !isfullscreen()) { + if (recapture && isfullscreen() <= 0) { setmouseactive(1); setamigamouse(mx, my); return 0; @@ -937,7 +937,7 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, setmousestate (dinput_winmouse (), 0, mx, 0); setmousestate (dinput_winmouse (), 1, my, 0); } - } else if ((!mouseactive && !isfullscreen())) { + } else if ((!mouseactive && isfullscreen() <= 0)) { setmousestate (0, 0, mx, 1); setmousestate (0, 1, my, 1); } @@ -1097,19 +1097,19 @@ static LRESULT CALLBACK AmigaWindowProc (HWND hWnd, UINT message, WPARAM wParam, disk_eject (3); break; case ID_ST_DF0: - DiskSelection (isfullscreen() ? NULL : hWnd, IDC_DF0, 0, &changed_prefs, 0); + DiskSelection (isfullscreen() > 0 ? NULL : hWnd, IDC_DF0, 0, &changed_prefs, 0); disk_insert (0, changed_prefs.df[0]); break; case ID_ST_DF1: - DiskSelection (isfullscreen() ? NULL : hWnd, IDC_DF1, 0, &changed_prefs, 0); + DiskSelection (isfullscreen() > 0 ? NULL : hWnd, IDC_DF1, 0, &changed_prefs, 0); disk_insert (1, changed_prefs.df[0]); break; case ID_ST_DF2: - DiskSelection (isfullscreen() ? NULL : hWnd, IDC_DF2, 0, &changed_prefs, 0); + DiskSelection (isfullscreen() > 0 ? NULL : hWnd, IDC_DF2, 0, &changed_prefs, 0); disk_insert (2, changed_prefs.df[0]); break; case ID_ST_DF3: - DiskSelection (isfullscreen() ? NULL : hWnd, IDC_DF3, 0, &changed_prefs, 0); + DiskSelection (isfullscreen() > 0 ? NULL : hWnd, IDC_DF3, 0, &changed_prefs, 0); disk_insert (3, changed_prefs.df[0]); break; } @@ -1173,7 +1173,7 @@ static LRESULT CALLBACK MainWindowProc (HWND hWnd, UINT message, WPARAM wParam, return AmigaWindowProc (hWnd, message, wParam, lParam); case WM_DISPLAYCHANGE: - if (!isfullscreen() && !currprefs.gfx_filter && (wParam + 7) / 8 != DirectDraw_GetBytesPerPixel() ) + if (isfullscreen() <= 0 && !currprefs.gfx_filter && (wParam + 7) / 8 != DirectDraw_GetBytesPerPixel() ) WIN32GFX_DisplayChangeRequested(); break; @@ -1191,7 +1191,7 @@ static LRESULT CALLBACK MainWindowProc (HWND hWnd, UINT message, WPARAM wParam, if (in_sizemove > 0) break; - if (!isfullscreen() && hAmigaWnd) { + if (isfullscreen() == 0 && hAmigaWnd) { static int store_xy; RECT rc2; if (GetWindowRect(hMainWnd, &rc2)) { @@ -1203,8 +1203,8 @@ static LRESULT CALLBACK MainWindowProc (HWND hWnd, UINT message, WPARAM wParam, } if (hWinUAEKey && store_xy++) { - RegSetValueEx(hWinUAEKey, "xPos", 0, REG_DWORD, (LPBYTE)&left, sizeof(LONG)); - RegSetValueEx(hWinUAEKey, "yPos", 0, REG_DWORD, (LPBYTE)&top, sizeof(LONG)); + RegSetValueEx(hWinUAEKey, "MainPosX", 0, REG_DWORD, (LPBYTE)&left, sizeof(LONG)); + RegSetValueEx(hWinUAEKey, "MainPosY", 0, REG_DWORD, (LPBYTE)&top, sizeof(LONG)); } changed_prefs.gfx_size_win.x = left; changed_prefs.gfx_size_win.y = top; @@ -2180,12 +2180,10 @@ static void WIN32_HandleRegistryStuff(void) initpath ("InputPath", start_path_data); if (disposition == REG_CREATED_NEW_KEY) { /* Create and initialize all our sub-keys to the default values */ - colortype = 0; - RegSetValueEx(hWinUAEKey, "DisplayInfo", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); - RegSetValueEx(hWinUAEKey, "xPos", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); - RegSetValueEx(hWinUAEKey, "yPos", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); - RegSetValueEx(hWinUAEKey, "xPosGUI", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); - RegSetValueEx(hWinUAEKey, "yPosGUI", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); + RegSetValueEx(hWinUAEKey, "MainPosX", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); + RegSetValueEx(hWinUAEKey, "MainPosY", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); + RegSetValueEx(hWinUAEKey, "GUIPosX", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); + RegSetValueEx(hWinUAEKey, "GUIPosY", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); } size = sizeof (version); dwType = REG_SZ; @@ -2207,28 +2205,11 @@ static void WIN32_HandleRegistryStuff(void) forceroms = 1; } - dwType = REG_DWORD; - RegQueryValueEx(hWinUAEKey, "DisplayInfo", 0, &dwType, (LPBYTE)&colortype, &dwDisplayInfoSize); - if (colortype == 0) /* No color information stored in the registry yet */ - { - char szMessage[4096]; - char szTitle[MAX_DPATH]; - WIN32GUI_LoadUIString(IDS_GFXCARDCHECK, szMessage, 4096); - WIN32GUI_LoadUIString(IDS_GFXCARDTITLE, szTitle, MAX_DPATH); - - if(MessageBox(NULL, szMessage, szTitle, MB_YESNO | MB_ICONWARNING | MB_TASKMODAL | MB_SETFOREGROUND ) == IDYES) { - colortype = WIN32GFX_FigurePixelFormats(0); - RegSetValueEx( hWinUAEKey, "DisplayInfo", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof( colortype ) ); - } - } - if (colortype) { - /* Set the 16-bit pixel format for the appropriate modes */ - WIN32GFX_FigurePixelFormats(colortype); - } size = sizeof (quickstart); dwType = REG_DWORD; RegQueryValueEx(hWinUAEKey, "QuickStartMode", 0, &dwType, (LPBYTE)&quickstart, &size); } + reopen_console(); fetch_path ("ConfigurationPath", path, sizeof (path)); path[strlen (path) - 1] = 0; CreateDirectory (path, NULL); @@ -2825,6 +2806,7 @@ static int PASCAL WinMain2 (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR closeprinter (); #endif WIN32_CleanupLibraries(); + close_console(); _fcloseall(); if(hWinUAEKey) RegCloseKey(hWinUAEKey); @@ -2993,7 +2975,7 @@ LONG WINAPI WIN32_ExceptionFilter(struct _EXCEPTION_POINTERS *pExceptionPointers exinfo.ClientPointers = 0; dump (GetCurrentProcess(), GetCurrentProcessId(), f, MiniDumpNormal, &exinfo, NULL, NULL); CloseHandle (f); - if (!isfullscreen ()) { + if (isfullscreen () <= 0) { sprintf (msg, "Crash detected. MiniDump saved as:\n%s\n", path2); MessageBox( NULL, msg, "Crash", MB_OK | MB_ICONWARNING | MB_TASKMODAL | MB_SETFOREGROUND ); } @@ -3068,7 +3050,7 @@ void systraymenu (HWND hwnd) EnableMenuItem (menu2, drvs[i], currprefs.dfxtype[i] < 0 ? MF_GRAYED : MF_ENABLED); i++; } - if (!isfullscreen ()) + if (isfullscreen () <= 0) SetForegroundWindow (hwnd); TrackPopupMenu (menu2, TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_RIGHTBUTTON, pt.x, pt.y, 0, hwnd, NULL); @@ -3146,11 +3128,13 @@ end: return m; } +typedef BOOL (CALLBACK* SETPROCESSDPIAWARE)(void); typedef BOOL (CALLBACK* CHANGEWINDOWMESSAGEFILTER)(UINT, DWORD); #define MSGFLT_ADD 1 int PASCAL WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { + SETPROCESSDPIAWARE pSetProcessDPIAware; HANDLE thread; thread = GetCurrentThread(); @@ -3162,6 +3146,11 @@ int PASCAL WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLin if (pChangeWindowMessageFilter) pChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD); #endif + pSetProcessDPIAware = (SETPROCESSDPIAWARE)GetProcAddress( + GetModuleHandle("user32.dll"), "SetProcessDPIAware"); + if (pSetProcessDPIAware) + pSetProcessDPIAware(); + __try { WinMain2 (hInstance, hPrevInstance, lpCmdLine, nCmdShow); } __except(WIN32_ExceptionFilter(GetExceptionInformation(), GetExceptionCode())) { diff --git a/od-win32/win32.h b/od-win32/win32.h index de9d0918..df1ce7f6 100755 --- a/od-win32/win32.h +++ b/od-win32/win32.h @@ -15,9 +15,9 @@ #define GETBDM(x) (((x) - ((x / 10000) * 10000)) / 100) #define GETBDD(x) ((x) % 100) -#define WINUAEBETA 0 -#define WINUAEPUBLICBETA 0 -#define WINUAEDATE MAKEBD(2007, 3, 18) +#define WINUAEBETA 1 +#define WINUAEPUBLICBETA 1 +#define WINUAEDATE MAKEBD(2007, 3, 28) #define IHF_WINDOWHIDDEN 6 #define NORMAL_WINDOW_STYLE (WS_VISIBLE | WS_BORDER | WS_CAPTION | WS_MINIMIZEBOX | WS_SYSMENU) diff --git a/od-win32/win32gfx.c b/od-win32/win32gfx.c index 234e7050..3652e71a 100755 --- a/od-win32/win32gfx.c +++ b/od-win32/win32gfx.c @@ -71,10 +71,11 @@ struct winuae_modes { }; struct winuae_currentmode { struct winuae_modes *mode; - struct winuae_modes *pmode[2]; - struct winuae_modes *amode[2]; + struct winuae_modes *pmode[3]; + struct winuae_modes *amode[3]; unsigned int flags; - int current_width, current_height, current_depth, real_depth, pitch; + int native_width, native_height, native_depth, pitch; + int current_width, current_height, current_depth; int amiga_width, amiga_height; int frequency; int mapping_is_mainscreen; @@ -98,10 +99,14 @@ int b0rken_ati_overlay; #define SM_WINDOW_OVERLAY 1 #define SM_FULLSCREEN_DX 2 #define SM_OPENGL_WINDOW 3 +#define SM_OPENGL_FULLWINDOW 9 #define SM_OPENGL_FULLSCREEN_DX 4 #define SM_D3D_WINDOW 5 +#define SM_D3D_FULLWINDOW 10 #define SM_D3D_FULLSCREEN_DX 6 -#define SM_NONE 7 +#define SM_FULLWINDOW 7 +#define SM_FULLWINDOW_OVERLAY 8 +#define SM_NONE 11 static struct winuae_modes wmodes[] = { @@ -117,7 +122,6 @@ static struct winuae_modes wmodes[] = }, { 1, "Fullscreen", -// DM_OVERLAY | DM_W_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW, DM_DX_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW, DM_DX_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW | DM_PICASSO96 }, @@ -141,6 +145,26 @@ static struct winuae_modes wmodes[] = DM_D3D | DM_D3D_FULLSCREEN, 0 }, + { + 1, "Fullwindow", + DM_W_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW, + DM_W_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW | DM_PICASSO96 + }, + { + 1, "Fullwindow overlay", + DM_OVERLAY | DM_W_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW, + DM_OVERLAY | DM_W_FULLSCREEN | DM_DX_DIRECT | DM_DDRAW | DM_PICASSO96 + }, + { + 1, "Fullwindow OpenGL", + DM_W_FULLSCREEN | DM_OPENGL | DM_DX_DIRECT, + 0 + }, + { + 0, "Fullwindow Direct3D", + DM_W_FULLSCREEN | DM_D3D, + 0 + }, { 0, "none", 0, @@ -189,7 +213,7 @@ static int modefallback (unsigned int mask) int screen_is_picasso = 0; -int WIN32GFX_IsPicassoScreen( void ) +int WIN32GFX_IsPicassoScreen(void) { return screen_is_picasso; } @@ -218,9 +242,9 @@ int isscreen (void) int isfullscreen (void) { if (screen_is_picasso) - return currprefs.gfx_pfullscreen; + return currprefs.gfx_pfullscreen == 1 ? 1 : (currprefs.gfx_pfullscreen == 2 ? -1 : 0); else - return currprefs.gfx_afullscreen; + return currprefs.gfx_afullscreen == 1 ? 1 : (currprefs.gfx_afullscreen == 2 ? -1 : 0); } int is3dmode (void) @@ -230,17 +254,17 @@ int is3dmode (void) int WIN32GFX_GetDepth (int real) { - if (!currentmode->real_depth) + if (!currentmode->native_depth) return currentmode->current_depth; - return real ? currentmode->real_depth : currentmode->current_depth; + return real ? currentmode->native_depth : currentmode->current_depth; } -int WIN32GFX_GetWidth( void ) +int WIN32GFX_GetWidth(void) { return currentmode->current_width; } -int WIN32GFX_GetHeight( void ) +int WIN32GFX_GetHeight(void) { return currentmode->current_height; } @@ -308,8 +332,8 @@ static int set_ddraw (void) { HRESULT ddrval; int bits = (currentmode->current_depth + 7) & ~7; - int width = currentmode->current_width; - int height = currentmode->current_height; + int width = currentmode->native_width; + int height = currentmode->native_height; int freq = currentmode->frequency; int dxfullscreen, wfullscreen, dd, overlay; @@ -630,88 +654,6 @@ void sortdisplays (void) displayGUID = NULL; } -static int our_possible_depths[] = { 8, 15, 16, 24, 32 }; - -RGBFTYPE WIN32GFX_FigurePixelFormats( RGBFTYPE colortype ) -{ - HRESULT ddrval; - int got_16bit_mode = 0; - int window_created = 0; - struct PicassoResolution *dm; - int i; - - ignore_messages_all++; - DirectDraw_Start (NULL); - if(colortype == 0) /* Need to query a 16-bit display mode for its pixel-format. Do this by opening such a screen */ - { - hAmigaWnd = CreateWindowEx (WS_EX_TOPMOST, - "AmigaPowah", VersionStr, - WS_VISIBLE | WS_POPUP, - CW_USEDEFAULT, CW_USEDEFAULT, - 1,//GetSystemMetrics (SM_CXSCREEN), - 1,//GetSystemMetrics (SM_CYSCREEN), - hHiddenWnd, NULL, 0, NULL); - if(hAmigaWnd) - { - window_created = 1; - ddrval = DirectDraw_SetCooperativeLevel( hAmigaWnd, TRUE ); /* TRUE indicates full-screen */ - if(FAILED(ddrval)) - { - gui_message("WIN32GFX_FigurePixelFormats: ERROR - %s\n", DXError(ddrval)); - goto out; - } - } - else - { - gui_message("WIN32GFX_FigurePixelFormats: ERROR - test-window could not be created.\n"); - } - } - else - { - got_16bit_mode = 1; - } - - i = 0; - while (DisplayModes[i].depth >= 0) { - dm = &DisplayModes[i++]; - if (!got_16bit_mode) { - write_log ("figure_pixel_formats: Attempting %dx%d..\n", dm->res.width, dm->res.height); - - ddrval = DirectDraw_SetDisplayMode (dm->res.width, dm->res.height, 16, 0); /* 0 for default freq */ - if (FAILED(ddrval)) - continue; - - ddrval = DirectDraw_GetDisplayMode(); - if (FAILED(ddrval)) - continue; - - colortype = DirectDraw_GetPixelFormat(); - if (colortype != RGBFB_NONE) { - /* Clear the 16-bit information, and get the real stuff! */ - dm->colormodes &= ~(RGBFF_R5G6B5PC|RGBFF_R5G5B5PC|RGBFF_R5G6B5|RGBFF_R5G5B5|RGBFF_B5G6R5PC|RGBFF_B5G5R5PC); - dm->colormodes |= 1 << colortype; - got_16bit_mode = 1; - write_log( "Got real 16-bit colour-depth information: 0x%x\n", colortype ); - } - } else if (dm->colormodes & (RGBFF_R5G6B5PC|RGBFF_R5G5B5PC|RGBFF_R5G6B5|RGBFF_R5G5B5|RGBFF_B5G6R5PC|RGBFF_B5G5R5PC) ) { - /* Clear the 16-bit information, and set the real stuff! */ - dm->colormodes &= ~(RGBFF_R5G6B5PC|RGBFF_R5G5B5PC|RGBFF_R5G6B5|RGBFF_R5G5B5|RGBFF_B5G6R5PC|RGBFF_B5G5R5PC); - dm->colormodes |= 1 << colortype; - } - } - - out: - if (window_created) - { - Sleep (1000); - DestroyWindow (hAmigaWnd); - hAmigaWnd = NULL; - } - DirectDraw_Release (); - ignore_messages_all--; - return colortype; -} - /* DirectX will fail with "Mode not supported" if we try to switch to a full * screen mode that doesn't match one of the dimensions we got during enumeration. * So try to find a best match for the given resolution in our list. */ @@ -829,8 +771,8 @@ void setoverlay(int quick) dr.right -= mi.rcMonitor.left; dr.bottom -= mi.rcMonitor.top; - w = currentmode->current_width; - h = currentmode->current_height; + w = currentmode->native_width; + h = currentmode->native_height; sr.left = 0; sr.top = 0; @@ -1385,7 +1327,7 @@ void init_colors (void) } if (currentmode->current_depth > 8) { if (!(currentmode->flags & DM_OPENGL|DM_D3D)) { - if (currentmode->current_depth != currentmode->real_depth) { + if (currentmode->current_depth != currentmode->native_depth) { if (currentmode->current_depth == 16) { red_bits = 5; green_bits = 6; blue_bits = 5; red_shift = 11; green_shift = 5; blue_shift = 0; @@ -1599,6 +1541,16 @@ static COLORREF BuildColorRef(int color, RGBFTYPE pixelformat) #endif } +static void centerrect(RECT *r) +{ + if(!(currentmode->flags & (DM_DX_FULLSCREEN | DM_OVERLAY | DM_W_FULLSCREEN))) + OffsetRect(r, amigawin_rect.left, amigawin_rect.top); + if (currentmode->flags & DM_W_FULLSCREEN) + OffsetRect(r, (currentmode->native_width - currentmode->current_width) / 2, + (currentmode->native_height - currentmode->current_height) / 2); +} + + /* This is a general purpose DirectDrawSurface filling routine. It can fill within primary surface. * Definitions: * - primary is the displayed (visible) surface in VRAM, which may have an associated offscreen surface (or back-buffer) @@ -1616,12 +1568,11 @@ int DX_Fill(int dstx, int dsty, int width, int height, uae_u32 color, RGBFTYPE r /* Set up our source rectangle. This NEVER needs to be adjusted for windowed display, since the * source is ALWAYS in an offscreen buffer, or we're in full-screen mode. */ - SetRect(&srcrect, dstx, dsty, dstx+width, dsty+height); + SetRect(&srcrect, dstx, dsty, dstx + width, dsty + height); /* Set up our destination rectangle, and adjust for blit to windowed display (if necessary ) */ SetRect(&dstrect, dstx, dsty, dstx+width, dsty+height); - if(!(currentmode->flags & (DM_DX_FULLSCREEN | DM_OVERLAY))) - OffsetRect(&dstrect, amigawin_rect.left, amigawin_rect.top); + centerrect(&dstrect); /* Render our fill to the visible (primary) surface */ hr = DirectDraw_Blt(primary_surface, &dstrect, invalid_surface, NULL, DDBLT_WAIT | DDBLT_COLORFILL, &ddbltfx); @@ -1688,8 +1639,7 @@ int DX_Blit(int srcx, int srcy, int dstx, int dsty, int width, int height, BLIT_ /* Set up our destination rectangle, and adjust for blit to windowed display (if necessary ) */ SetRect(&dstrect, dstx, dsty, dstx + width, dsty + height); - if(!(currentmode->flags & (DM_DX_FULLSCREEN | DM_OVERLAY))) - OffsetRect(&dstrect, amigawin_rect.left, amigawin_rect.top); + centerrect(&dstrect); /* Render our blit within the primary surface */ result = DirectDraw_Blt(primary_surface, &dstrect, DirectDraw_GetLockableType(), &srcrect, DDBLT_WAIT | DDBLT_ROP, &fx); @@ -1799,18 +1749,22 @@ static void gfxmode_reset (void) #endif currentmode->amode[0] = &wmodes[currprefs.win32_no_overlay ? SM_WINDOW : SM_WINDOW_OVERLAY]; currentmode->amode[1] = &wmodes[SM_FULLSCREEN_DX]; + currentmode->amode[2] = &wmodes[SM_FULLWINDOW]; currentmode->pmode[0] = &wmodes[currprefs.win32_no_overlay ? SM_WINDOW : SM_WINDOW_OVERLAY]; currentmode->pmode[1] = &wmodes[SM_FULLSCREEN_DX]; + currentmode->pmode[2] = &wmodes[SM_FULLWINDOW]; #if defined (OPENGL) && defined (GFXFILTER) if (usedfilter && usedfilter->type == UAE_FILTER_OPENGL) { currentmode->amode[0] = &wmodes[SM_OPENGL_WINDOW]; currentmode->amode[1] = &wmodes[SM_OPENGL_FULLSCREEN_DX]; + currentmode->amode[2] = &wmodes[SM_OPENGL_FULLWINDOW]; } #endif #if defined (D3D) && defined (GFXFILTER) if (usedfilter && usedfilter->type == UAE_FILTER_DIRECT3D) { currentmode->amode[0] = &wmodes[SM_D3D_WINDOW]; currentmode->amode[1] = &wmodes[SM_D3D_FULLSCREEN_DX]; + currentmode->amode[2] = &wmodes[SM_D3D_FULLWINDOW]; } #endif } @@ -1950,6 +1904,10 @@ static int create_windows (void) int gap = 3; int x, y; + if (fsw) + borderless = 1; + currentmode->native_width = currentmode->current_width; + currentmode->native_height = currentmode->current_height; window_led_drives = 0; window_led_drives_end = 0; hMainWnd = NULL; @@ -1965,8 +1923,8 @@ static int create_windows (void) int oldx, oldy; int first = 2; - RegQueryValueEx(hWinUAEKey, "xPos", 0, ®keytype, (LPBYTE)&stored_x, ®keysize); - RegQueryValueEx(hWinUAEKey, "yPos", 0, ®keytype, (LPBYTE)&stored_y, ®keysize); + RegQueryValueEx(hWinUAEKey, "MainPosX", 0, ®keytype, (LPBYTE)&stored_x, ®keysize); + RegQueryValueEx(hWinUAEKey, "MainPosY", 0, ®keytype, (LPBYTE)&stored_y, ®keysize); while (first) { first--; @@ -2006,8 +1964,8 @@ static int create_windows (void) rc = Displays[currprefs.gfx_display].rect; flags |= WS_EX_TOPMOST; style = WS_POPUP; - currentmode->current_width = rc.right - rc.left; - currentmode->current_height = rc.bottom - rc.top; + currentmode->native_width = rc.right - rc.left; + currentmode->native_height = rc.bottom - rc.top; } flags |= (currprefs.win32_alwaysontop ? WS_EX_TOPMOST : 0); @@ -2037,7 +1995,7 @@ static int create_windows (void) "AmigaPowah", "WinUAE", WS_CLIPCHILDREN | WS_CLIPSIBLINGS | (hMainWnd ? WS_VISIBLE | WS_CHILD : WS_VISIBLE | WS_POPUP), x, y, - currentmode->current_width, currentmode->current_height, + currentmode->native_width, currentmode->native_height, hMainWnd ? hMainWnd : hhWnd, NULL, 0, NULL); if (!hAmigaWnd) { @@ -2092,13 +2050,13 @@ static BOOL doInit (void) for (;;) { updatemodes (); - currentmode->real_depth = 0; + currentmode->native_depth = 0; tmp_depth = currentmode->current_depth; write_log("W=%d H=%d B=%d CT=%d\n", DirectDraw_CurrentWidth (), DirectDraw_CurrentHeight (), DirectDraw_GetSurfaceBitCount (), colortype); - if (currentmode->current_depth < 15 && (currprefs.chipset_mask & CSMASK_AGA) && isfullscreen () && !WIN32GFX_IsPicassoScreen()) { + if (currentmode->current_depth < 15 && (currprefs.chipset_mask & CSMASK_AGA) && isfullscreen () > 0 && !WIN32GFX_IsPicassoScreen()) { static int warned; if (!warned) { char szMessage[MAX_DPATH]; @@ -2109,7 +2067,7 @@ static BOOL doInit (void) warned = 1; } - if (!(currentmode->flags & DM_OVERLAY) && !isfullscreen() && !(currentmode->flags & (DM_OPENGL | DM_D3D))) { + if (!(currentmode->flags & DM_OVERLAY) && isfullscreen() <= 0 && !(currentmode->flags & (DM_OPENGL | DM_D3D))) { write_log ("using desktop depth (%d -> %d) because not using overlay or opengl mode\n", currentmode->current_depth, DirectDraw_GetSurfaceBitCount()); currentmode->current_depth = DirectDraw_GetSurfaceBitCount(); @@ -2127,8 +2085,8 @@ static BOOL doInit (void) fs_warning = IDS_UNSUPPORTEDSCREENMODE_1; } else if (colortype == RGBFB_CLUT && !(currentmode->flags & DM_OVERLAY)) { fs_warning = IDS_UNSUPPORTEDSCREENMODE_2; - } else if (currentmode->current_width >= GetSystemMetrics(SM_CXVIRTUALSCREEN) || - currentmode->current_height >= GetSystemMetrics(SM_CYVIRTUALSCREEN)) { + } else if (currentmode->native_width >= GetSystemMetrics(SM_CXVIRTUALSCREEN) || + currentmode->native_height >= GetSystemMetrics(SM_CYVIRTUALSCREEN)) { if (!console_logging) fs_warning = IDS_UNSUPPORTEDSCREENMODE_3; #ifdef PICASSO96 @@ -2140,7 +2098,7 @@ static BOOL doInit (void) fs_warning = IDS_UNSUPPORTEDSCREENMODE_4; #endif } - if (fs_warning >= 0 && !isfullscreen ()) { + if (fs_warning >= 0 && isfullscreen () <= 0) { char szMessage[MAX_DPATH], szMessage2[MAX_DPATH]; WIN32GUI_LoadUIString(IDS_UNSUPPORTEDSCREENMODE, szMessage, MAX_DPATH); WIN32GUI_LoadUIString(fs_warning, szMessage2, MAX_DPATH); @@ -2186,7 +2144,7 @@ static BOOL doInit (void) if (!DirectDraw_Start (displayGUID)) break; continue; } - currentmode->real_depth = currentmode->current_depth; + currentmode->native_depth = currentmode->current_depth; #if defined (GFXFILTER) if (currentmode->flags & (DM_OPENGL | DM_D3D | DM_SWSCALE)) { currentmode->amiga_width = AMIGA_WIDTH_MAX >> (currprefs.gfx_lores ? 1 : 0); @@ -2202,7 +2160,7 @@ static BOOL doInit (void) j++; } if ((usedfilter->x[j] & (UAE_FILTER_MODE_16 | UAE_FILTER_MODE_32)) == (UAE_FILTER_MODE_16 | UAE_FILTER_MODE_32)) { - currentmode->current_depth = currentmode->real_depth; + currentmode->current_depth = currentmode->native_depth; } else { currentmode->current_depth = (usedfilter->x[j] & UAE_FILTER_MODE_16) ? 16 : 32; } @@ -2269,11 +2227,11 @@ static BOOL doInit (void) if (currentmode->flags & DM_SWSCALE) { S2X_init (currentmode->current_width, currentmode->current_height, currentmode->amiga_width, currentmode->amiga_height, - mult, currentmode->current_depth, currentmode->real_depth); + mult, currentmode->current_depth, currentmode->native_depth); } #if defined OPENGL if (currentmode->flags & DM_OPENGL) { - const char *err = OGL_init (hAmigaWnd, currentmode->current_width, currentmode->current_height, + const char *err = OGL_init (hAmigaWnd, currentmode->native_width, currentmode->native_height, currentmode->amiga_width, currentmode->amiga_height, currentmode->current_depth); if (err) { OGL_free (); @@ -2281,7 +2239,7 @@ static BOOL doInit (void) gui_message (err); changed_prefs.gfx_filter = currprefs.gfx_filter = 0; } - currentmode->current_depth = currentmode->real_depth; + currentmode->current_depth = currentmode->native_depth; gfxmode_reset (); ret = -1; goto oops; @@ -2296,7 +2254,7 @@ static BOOL doInit (void) D3D_free (); gui_message (err); changed_prefs.gfx_filter = currprefs.gfx_filter = 0; - currentmode->current_depth = currentmode->real_depth; + currentmode->current_depth = currentmode->native_depth; gfxmode_reset (); ret = -1; goto oops; @@ -2379,7 +2337,7 @@ void updatedisplayarea (void) #if defined (GFXFILTER) if (currentmode->flags & DM_SWSCALE) { S2X_refresh (); - if(!isfullscreen()) { + if(isfullscreen() <= 0) { if(DirectDraw_GetLockableType() != overlay_surface) DX_Blit(0, 0, 0, 0, WIN32GFX_GetWidth(), WIN32GFX_GetHeight(), BLIT_SRC); } else { @@ -2389,7 +2347,7 @@ void updatedisplayarea (void) else #endif { - if (!isfullscreen()) { + if (isfullscreen() <= 0) { surface_type_e s; s = DirectDraw_GetLockableType(); if (s != overlay_surface && s != invalid_surface) diff --git a/od-win32/win32gui.c b/od-win32/win32gui.c index eaa7f90e..f46fdc6a 100755 --- a/od-win32/win32gui.c +++ b/od-win32/win32gui.c @@ -495,7 +495,8 @@ static int scan_rom (char *path, HKEY fkey) break; } if (!uae_archive_extensions[i]) { - if (stricmp (ext, "rom") && stricmp (ext, "adf") && stricmp (ext, "key")) { + if (stricmp (ext, "rom") && stricmp (ext, "adf") && stricmp (ext, "key") + && stricmp (ext, "a500") && stricmp (ext, "a1200") && stricmp (ext, "a4000")) { write_log("ROMSCAN: skipping file '%s', unknown extension\n", path); return 0; } @@ -831,8 +832,8 @@ static void m(void) void gui_display(int shortcut) { static int here; - int flipflop = 0; HRESULT hr; + int w, h; if (here) return; @@ -847,18 +848,22 @@ void gui_display(int shortcut) clearallkeys (); setmouseactive (0); - if ((!WIN32GFX_IsPicassoScreen() && currprefs.gfx_afullscreen && (currprefs.gfx_size.width < gui_width || currprefs.gfx_size.height < gui_height)) -#ifdef PICASSO96 - || (WIN32GFX_IsPicassoScreen() && currprefs.gfx_pfullscreen && (picasso96_state.Width < gui_width || picasso96_state.Height < gui_height)) -#endif - ) { - flipflop = 1; + w = h = -1; + if (!WIN32GFX_IsPicassoScreen() && currprefs.gfx_afullscreen && (currprefs.gfx_size.width < gui_width || currprefs.gfx_size.height < gui_height)) { + w = currprefs.gfx_size.width; + h = currprefs.gfx_size.height; } - + if (WIN32GFX_IsPicassoScreen() && currprefs.gfx_pfullscreen && (picasso96_state.Width < gui_width || picasso96_state.Height < gui_height)) { + w = currprefs.gfx_size.width; + h = currprefs.gfx_size.height; + } + scaleresource_setmaxsize (-1, -1); + if (w > 0 && h > 0) + scaleresource_setmaxsize (w, h); WIN32GFX_ClearPalette(); manual_painting_needed++; /* So that WM_PAINT will refresh the display */ - if (isfullscreen ()) { + if (isfullscreen () > 0) { hr = DirectDraw_FlipToGDISurface(); if (FAILED(hr)) write_log ("FlipToGDISurface failed, %s\n", DXError (hr)); @@ -866,11 +871,7 @@ void gui_display(int shortcut) if (shortcut == -1) { int ret; - if (flipflop) - ShowWindow (hAmigaWnd, SW_MINIMIZE); - ret = GetSettings (0, flipflop ? (currprefs.win32_notaskbarbutton ? hHiddenWnd : NULL) : hAmigaWnd); - if (flipflop > 0) - ShowWindow (hAmigaWnd, SW_RESTORE); + ret = GetSettings (0, hAmigaWnd); if (!ret) { savestate_state = 0; } @@ -890,8 +891,7 @@ void gui_display(int shortcut) inputdevice_config_change_test (); clearallkeys (); inputdevice_acquire (); - if (flipflop >= 0) - setmouseactive (1); + setmouseactive (1); #ifdef D3D D3D_guimode (FALSE); #endif @@ -2496,7 +2496,7 @@ static INT_PTR CALLBACK LoadSaveDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPA } break; case IDC_SETINFO: - if (DialogBox(hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_SETINFO), hDlg, InfoSettingsProc)) + if (CustomDialogBox(IDD_SETINFO, hDlg, InfoSettingsProc)) EnableWindow( GetDlgItem( hDlg, IDC_VIEWINFO ), workprefs.info[0] ); break; case IDC_CONFIGAUTO: @@ -2610,19 +2610,17 @@ static INT_PTR CALLBACK ContributorsProc (HWND hDlg, UINT msg, WPARAM wParam, LP case WM_INITDIALOG: CharFormat.cbSize = sizeof (CharFormat); - WIN32GUI_LoadUIString( IDS_CONTRIBUTORS1, szContributors1, MAX_CONTRIBUTORS_LENGTH ); - WIN32GUI_LoadUIString( IDS_CONTRIBUTORS2, szContributors2, MAX_CONTRIBUTORS_LENGTH ); - sprintf( szContributors, "%s%s", szContributors1, szContributors2 ); + WIN32GUI_LoadUIString(IDS_CONTRIBUTORS1, szContributors1, MAX_CONTRIBUTORS_LENGTH); + WIN32GUI_LoadUIString(IDS_CONTRIBUTORS2, szContributors2, MAX_CONTRIBUTORS_LENGTH); + sprintf(szContributors, "%s%s", szContributors1, szContributors2); SetDlgItemText (hDlg, IDC_CONTRIBUTORS, szContributors ); SendDlgItemMessage (hDlg, IDC_CONTRIBUTORS, EM_GETCHARFORMAT, 0, (LPARAM) & CharFormat); CharFormat.dwMask |= CFM_SIZE | CFM_FACE; - CharFormat.yHeight = 10 * 20; /* height in twips, where a twip is 1/20th of a point - for a pt.size of 18 */ + CharFormat.yHeight = 8 * 20; /* height in twips, where a twip is 1/20th of a point - for a pt.size of 18 */ - strcpy (CharFormat.szFaceName, "Times New Roman"); + strcpy (CharFormat.szFaceName, os_vista ? "Segoe UI" : (os_winnt ? "Tahoma" : "Times New Roman")); SendDlgItemMessage (hDlg, IDC_CONTRIBUTORS, EM_SETCHARFORMAT, SCF_ALL, (LPARAM) & CharFormat); - /* SendDlgItemMessage(hDlg, IDC_CONTRIBUTORS, EM_SETBKGNDCOLOR,0,GetSysColor( COLOR_3DFACE ) ); */ - return TRUE; } return FALSE; @@ -2630,7 +2628,7 @@ static INT_PTR CALLBACK ContributorsProc (HWND hDlg, UINT msg, WPARAM wParam, LP static void DisplayContributors (HWND hDlg) { - DialogBox( hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_CONTRIBUTORS), hDlg, ContributorsProc); + CustomDialogBox(IDD_CONTRIBUTORS, hDlg, ContributorsProc); } typedef struct url_info @@ -3423,7 +3421,7 @@ static void enable_for_displaydlg (HWND hDlg) #ifndef PICASSO96 rtg = FALSE; #endif - ew (hDlg, IDC_PFULLSCREEN, rtg); + ew (hDlg, IDC_SCREENMODE_RTG, rtg); if (!full_property_sheet) { /* Disable certain controls which are only to be set once at start-up... */ ew (hDlg, IDC_TEST16BIT, FALSE); @@ -3713,10 +3711,10 @@ static void values_to_displaydlg (HWND hDlg) v = workprefs.cpu_cycle_exact ? 1 : workprefs.gfx_framerate; SendDlgItemMessage (hDlg, IDC_FRAMERATE, TBM_SETPOS, TRUE, v); - WIN32GUI_LoadUIString( IDS_FRAMERATE, buffer, MAX_FRAMERATE_LENGTH ); + WIN32GUI_LoadUIString(IDS_FRAMERATE, buffer, sizeof buffer); LoadNthString (v - 1, Nth, MAX_NTH_LENGTH); - if(FormatMessage( FORMAT_MESSAGE_FROM_STRING | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_ALLOCATE_BUFFER, - buffer, 0, 0, (LPTSTR)&string, MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH, (va_list *)blah ) == 0) + if(FormatMessage(FORMAT_MESSAGE_FROM_STRING | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_ALLOCATE_BUFFER, + buffer, 0, 0, (LPTSTR)&string, MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH, (va_list *)blah ) == 0) { DWORD dwLastError = GetLastError(); sprintf (buffer, "Every %s Frame", nth[v - 1]); @@ -3727,8 +3725,25 @@ static void values_to_displaydlg (HWND hDlg) } CheckRadioButton (hDlg, IDC_LM_NORMAL, IDC_LM_SCANLINES, IDC_LM_NORMAL + workprefs.gfx_linedbl); - CheckDlgButton (hDlg, IDC_AFULLSCREEN, workprefs.gfx_afullscreen); - CheckDlgButton (hDlg, IDC_PFULLSCREEN, workprefs.gfx_pfullscreen); + + SendDlgItemMessage(hDlg, IDC_SCREENMODE_NATIVE, CB_RESETCONTENT, 0, 0); + WIN32GUI_LoadUIString(IDS_SCREEN_WINDOWED, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_NATIVE, CB_ADDSTRING, 0, (LPARAM)buffer); + WIN32GUI_LoadUIString(IDS_SCREEN_FULLSCREEN, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_NATIVE, CB_ADDSTRING, 0, (LPARAM)buffer); + WIN32GUI_LoadUIString(IDS_SCREEN_FULLWINDOW, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_NATIVE, CB_ADDSTRING, 0, (LPARAM)buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_NATIVE, CB_SETCURSEL, workprefs.gfx_afullscreen, 0); + + SendDlgItemMessage(hDlg, IDC_SCREENMODE_RTG, CB_RESETCONTENT, 0, 0); + WIN32GUI_LoadUIString(IDS_SCREEN_WINDOWED, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_RTG, CB_ADDSTRING, 0, (LPARAM)buffer); + WIN32GUI_LoadUIString(IDS_SCREEN_FULLSCREEN, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_RTG, CB_ADDSTRING, 0, (LPARAM)buffer); + WIN32GUI_LoadUIString(IDS_SCREEN_FULLWINDOW, buffer, sizeof buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_RTG, CB_ADDSTRING, 0, (LPARAM)buffer); + SendDlgItemMessage(hDlg, IDC_SCREENMODE_RTG, CB_SETCURSEL, workprefs.gfx_pfullscreen, 0); + CheckDlgButton (hDlg, IDC_ASPECT, workprefs.gfx_correct_aspect); CheckDlgButton (hDlg, IDC_LORES, workprefs.gfx_lores); CheckDlgButton (hDlg, IDC_LORES_SMOOTHED, workprefs.gfx_lores_mode); @@ -3751,7 +3766,7 @@ static void init_resolution_combo (HWND hDlg) while (DisplayModes[i].depth >= 0) { if (DisplayModes[i].residx != idx) { sprintf (tmp, "%dx%d", DisplayModes[i].res.width, DisplayModes[i].res.height); - SendDlgItemMessage( hDlg, IDC_RESOLUTION, CB_ADDSTRING, 0, (LPARAM)tmp); + SendDlgItemMessage(hDlg, IDC_RESOLUTION, CB_ADDSTRING, 0, (LPARAM)tmp); idx = DisplayModes[i].residx; } i++; @@ -3776,15 +3791,20 @@ static void values_from_displaydlg (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l int i, j; int gfx_width = workprefs.gfx_size_win.width; int gfx_height = workprefs.gfx_size_win.height; + LRESULT posn; - workprefs.gfx_pfullscreen = IsDlgButtonChecked (hDlg, IDC_PFULLSCREEN); - workprefs.gfx_afullscreen = IsDlgButtonChecked (hDlg, IDC_AFULLSCREEN); + posn = SendDlgItemMessage (hDlg, IDC_SCREENMODE_NATIVE, CB_GETCURSEL, 0, 0); + if (posn != CB_ERR) + workprefs.gfx_afullscreen = posn; + posn = SendDlgItemMessage (hDlg, IDC_SCREENMODE_RTG, CB_GETCURSEL, 0, 0); + if (posn != CB_ERR) + workprefs.gfx_pfullscreen = posn; workprefs.gfx_lores = IsDlgButtonChecked (hDlg, IDC_LORES); workprefs.gfx_lores_mode = IsDlgButtonChecked (hDlg, IDC_LORES_SMOOTHED); workprefs.gfx_correct_aspect = IsDlgButtonChecked (hDlg, IDC_ASPECT); - workprefs.gfx_linedbl = ( IsDlgButtonChecked( hDlg, IDC_LM_SCANLINES ) ? 2 : - IsDlgButtonChecked( hDlg, IDC_LM_DOUBLED ) ? 1 : 0 ); + workprefs.gfx_linedbl = (IsDlgButtonChecked(hDlg, IDC_LM_SCANLINES) ? 2 : + IsDlgButtonChecked(hDlg, IDC_LM_DOUBLED) ? 1 : 0); workprefs.gfx_framerate = SendDlgItemMessage (hDlg, IDC_FRAMERATE, TBM_GETPOS, 0, 0); workprefs.chipset_refreshrate = SendDlgItemMessage (hDlg, IDC_FRAMERATE2, TBM_GETPOS, 0, 0); @@ -3796,19 +3816,19 @@ static void values_from_displaydlg (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l LPSTR blah[1] = { Nth }; LPTSTR string = NULL; - WIN32GUI_LoadUIString( IDS_FRAMERATE, buffer, MAX_FRAMERATE_LENGTH ); - LoadNthString( workprefs.gfx_framerate - 1, Nth, MAX_NTH_LENGTH ); - if( FormatMessage( FORMAT_MESSAGE_FROM_STRING | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_ALLOCATE_BUFFER, - buffer, 0, 0, (LPTSTR)&string, MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH, (va_list *)blah ) == 0 ) + WIN32GUI_LoadUIString(IDS_FRAMERATE, buffer, MAX_FRAMERATE_LENGTH); + LoadNthString(workprefs.gfx_framerate - 1, Nth, MAX_NTH_LENGTH); + if(FormatMessage(FORMAT_MESSAGE_FROM_STRING | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_ALLOCATE_BUFFER, + buffer, 0, 0, (LPTSTR)&string, MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH, (va_list *)blah ) == 0) { DWORD dwLastError = GetLastError(); sprintf (buffer, "Every %s Frame", nth[workprefs.gfx_framerate - 1]); - SetDlgItemText( hDlg, IDC_RATETEXT, buffer ); + SetDlgItemText(hDlg, IDC_RATETEXT, buffer); } else { - SetDlgItemText( hDlg, IDC_RATETEXT, string ); - LocalFree( string ); + SetDlgItemText(hDlg, IDC_RATETEXT, string); + LocalFree(string); } sprintf (buffer, "%d", workprefs.chipset_refreshrate); SetDlgItemText (hDlg, IDC_RATE2TEXT, buffer); @@ -3827,7 +3847,7 @@ static void values_from_displaydlg (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l if (msg == WM_COMMAND && HIWORD (wParam) == CBN_SELCHANGE) { if (LOWORD (wParam) == IDC_DISPLAYSELECT) { - LRESULT posn = SendDlgItemMessage (hDlg, IDC_DISPLAYSELECT, CB_GETCURSEL, 0, 0); + posn = SendDlgItemMessage (hDlg, IDC_DISPLAYSELECT, CB_GETCURSEL, 0, 0); if (posn != CB_ERR && posn != workprefs.gfx_display) { if (Displays[posn].disabled) posn = 0; @@ -3910,10 +3930,6 @@ static int hw3d_changed; static INT_PTR CALLBACK DisplayDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) { static int recursive = 0; - HKEY hPixelFormatKey; - RGBFTYPE colortype = RGBFB_NONE; - DWORD dwType = REG_DWORD; - DWORD dwDisplayInfoSize = sizeof( colortype ); switch (msg) { @@ -3942,27 +3958,12 @@ static INT_PTR CALLBACK DisplayDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR if (recursive > 0) break; recursive++; - if((wParam == IDC_TEST16BIT) && DirectDraw_Start(NULL)) { - if(RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Arabuusimiehet\\WinUAE", 0, KEY_WRITE | KEY_READ, &hPixelFormatKey) == ERROR_SUCCESS) { - char szMessage[4096]; - char szTitle[MAX_DPATH]; - WIN32GUI_LoadUIString(IDS_GFXCARDCHECK, szMessage, 4096); - WIN32GUI_LoadUIString(IDS_GFXCARDTITLE, szTitle, MAX_DPATH); - - if(MessageBox(NULL, szMessage, szTitle, MB_YESNO | MB_ICONWARNING | MB_TASKMODAL | MB_SETFOREGROUND) == IDYES) { - colortype = WIN32GFX_FigurePixelFormats(0); - RegSetValueEx(hPixelFormatKey, "DisplayInfo", 0, REG_DWORD, (CONST BYTE *)&colortype, sizeof(colortype)); - } - RegCloseKey(hPixelFormatKey); - } - DirectDraw_Release(); - } else { #if 0 - handle_da (hDlg); + handle_da (hDlg); #endif - values_from_displaydlg (hDlg, msg, wParam, lParam); - enable_for_displaydlg (hDlg); - } + values_from_displaydlg (hDlg, msg, wParam, lParam); + enable_for_displaydlg (hDlg); + recursive--; break; @@ -6202,7 +6203,7 @@ static void harddisk_edit (HWND hDlg) } current_hfdlg.rw = !uci->readonly; current_hfdlg.bootpri = uci->bootpri; - if (DialogBox( hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_HARDFILE), hDlg, HardfileSettingsProc)) + if (CustomDialogBox(IDD_HARDFILE, hDlg, HardfileSettingsProc)) { int result = add_filesys_config (&workprefs, entry, current_hfdlg.devicename, 0, current_hfdlg.filename, ! current_hfdlg.rw, current_hfdlg.sectors, current_hfdlg.surfaces, @@ -6214,7 +6215,7 @@ static void harddisk_edit (HWND hDlg) current_hfdlg.rw = !uci->readonly; strncpy (current_hfdlg.filename, uci->rootdir, (sizeof current_hfdlg.filename) - 1); current_hfdlg.filename[(sizeof current_hfdlg.filename) - 1] = '\0'; - if (DialogBox(hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_HARDDRIVE), hDlg, HarddriveSettingsProc)) + if (CustomDialogBox(IDD_HARDDRIVE, hDlg, HarddriveSettingsProc)) { int result = add_filesys_config (&workprefs, entry, 0, 0, current_hfdlg.filename, ! current_hfdlg.rw, 0, 0, @@ -6234,7 +6235,7 @@ static void harddisk_edit (HWND hDlg) } current_fsvdlg.rw = !uci->readonly; current_fsvdlg.bootpri = uci->bootpri; - if (DialogBox( hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_FILESYS), hDlg, VolumeSettingsProc)) { + if (CustomDialogBox(IDD_FILESYS, hDlg, VolumeSettingsProc)) { int result = add_filesys_config (&workprefs, entry, current_fsvdlg.device, current_fsvdlg.volume, current_fsvdlg.rootdir, ! current_fsvdlg.rw, 0, 0, 0, 0, current_fsvdlg.bootpri, 0, 0); } @@ -6253,13 +6254,13 @@ static void harddiskdlg_button (HWND hDlg, int button) switch (button) { case IDC_NEW_FS: current_fsvdlg = empty_fsvdlg; - if (DialogBox (hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_FILESYS), hDlg, VolumeSettingsProc)) + if (CustomDialogBox(IDD_FILESYS, hDlg, VolumeSettingsProc)) new_filesys (hDlg); break; case IDC_NEW_HF: current_hfdlg = empty_hfdlg; - if (DialogBox (hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_HARDFILE), hDlg, HardfileSettingsProc)) + if (CustomDialogBox (IDD_HARDFILE, hDlg, HardfileSettingsProc)) new_hardfile (hDlg); break; @@ -6270,7 +6271,7 @@ static void harddiskdlg_button (HWND hDlg, int button) WIN32GUI_LoadUIString (IDS_NOHARDDRIVES, tmp, sizeof (tmp)); gui_message (tmp); } else { - if (DialogBox (hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_HARDDRIVE), hDlg, HarddriveSettingsProc)) + if (CustomDialogBox (IDD_HARDDRIVE, hDlg, HarddriveSettingsProc)) new_harddrive (hDlg); } break; @@ -7651,7 +7652,7 @@ static int askinputcustom(HWND hDlg, char *custom, int maxlen) char txt[MAX_DPATH]; stringboxdialogactive = 1; - hwnd = CreateDialog (hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_STRINGBOX), hDlg, StringBoxDialogProc); + hwnd = CustomCreateDialog (IDD_STRINGBOX, hDlg, StringBoxDialogProc); if (hwnd == NULL) return 0; SendMessage(GetDlgItem(hwnd, IDC_STRINGBOXEDIT), WM_SETTEXT, 0, (LPARAM)custom); @@ -8506,6 +8507,7 @@ static void enable_for_avioutputdlg(HWND hDlg) #endif ew (hDlg, IDC_SCREENSHOT, full_property_sheet ? FALSE : TRUE); + ew (hDlg, IDC_SAMPLERIPPER_ACTIVATED, full_property_sheet ? FALSE : TRUE); ew (hDlg, IDC_AVIOUTPUT_PAL, TRUE); ew (hDlg, IDC_AVIOUTPUT_NTSC, TRUE); @@ -8735,14 +8737,16 @@ static INT_PTR CALLBACK AVIOutputDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPA #endif struct GUIPAGE { - PROPSHEETPAGE pp; + DLGPROC dlgproc; + LPCTSTR title; + LPCTSTR icon; HTREEITEM tv; int himg; int idx; const char *help; HACCEL accel; int fullpanel; - int tmpl; + struct newresource *nres; }; static int GetPanelRect (HWND hDlg, RECT *r) @@ -8968,6 +8972,7 @@ static HWND updatePanel (HWND hDlg, int id) RECT r1c, r1w, r2c, r2w, r3c, r3w; int w, h, pw, ph, x , y, i; int fullpanel; + struct newresource *tres; ew (guiDlg, IDC_RESETAMIGA, full_property_sheet ? FALSE : TRUE); ew (guiDlg, IDOK, TRUE); @@ -8986,15 +8991,14 @@ static HWND updatePanel (HWND hDlg, int id) } hAccelTable = NULL; if (id < 0) { - if (!isfullscreen ()) { + if (isfullscreen () <= 0) { RECT r; - LONG left, top; - GetWindowRect (hDlg, &r); - left = r.left; - top = r.top; - if (hWinUAEKey) { - RegSetValueEx (hWinUAEKey, "xPosGUI", 0, REG_DWORD, (LPBYTE)&left, sizeof(LONG)); - RegSetValueEx (hWinUAEKey, "yPosGUI", 0, REG_DWORD, (LPBYTE)&top, sizeof(LONG)); + if (GetWindowRect (hDlg, &r) && hWinUAEKey) { + LONG left, top; + left = r.left; + top = r.top; + RegSetValueEx (hWinUAEKey, "GUIPosX", 0, REG_DWORD, (LPBYTE)&left, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "GUIPosY", 0, REG_DWORD, (LPBYTE)&top, sizeof(LONG)); } } ew (hDlg, IDHELP, FALSE); @@ -9008,7 +9012,9 @@ static HWND updatePanel (HWND hDlg, int id) GetClientRect (hDlg, &r2c); gui_width = r2c.right; gui_height = r2c.bottom; - panelDlg = CreateDialogParam (hUIDLL ? hUIDLL : hInst, ppage[id].pp.pszTemplate, hDlg, ppage[id].pp.pfnDlgProc, id); + tres = scaleresource(ppage[id].nres, hDlg); + panelDlg = CreateDialogIndirectParam (tres->inst, tres->resource, hDlg, ppage[id].dlgproc, id); + freescaleresource(tres); GetWindowRect (hDlg, &r3w); GetClientRect (panelDlg, &r3c); x = r1w.left - r2w.left; @@ -9048,7 +9054,7 @@ static HWND updatePanel (HWND hDlg, int id) SendMessage(ToolTipHWND, TTM_SETDELAYTIME, (WPARAM)TTDT_AUTOPOP, (LPARAM)MAKELONG(20000, 0)); SendMessage(ToolTipHWND, TTM_SETMAXTIPWIDTH, 0, 400); - EnumChildWindows (panelDlg, &childenumproc, (LPARAM)ppage[currentpage].tmpl); + EnumChildWindows (panelDlg, &childenumproc, (LPARAM)ppage[currentpage].nres->tmpl); SendMessage (panelDlg, WM_NULL, 0, 0); hAccelTable = ppage[currentpage].accel; @@ -9087,7 +9093,7 @@ static void CreateNode (HWND TVhDlg, int page, HTREEITEM parent) is.hInsertAfter = TVI_LAST; is.hParent = parent; is.itemex.mask = TVIF_TEXT | TVIF_PARAM | TVIF_STATE | TVIF_IMAGE | TVIF_SELECTEDIMAGE; - is.itemex.pszText = (char*)p->pp.pszTitle; + is.itemex.pszText = (char*)p->title; is.itemex.lParam = (LPARAM)p->idx; is.itemex.iImage = p->himg; is.itemex.iSelectedImage = is.itemex.iImage; @@ -9106,7 +9112,7 @@ static void createTreeView (HWND hDlg, int currentpage) if (himl) { HICON icon; for (i = 0; i < C_PAGES; i++) { - icon = LoadIcon (hInst, (LPCSTR)ppage[i].pp.pszIcon); + icon = LoadIcon (hInst, (LPCSTR)ppage[i].icon); ppage[i].himg = ImageList_AddIcon (himl, icon); } icon = LoadIcon (hInst, MAKEINTRESOURCE (IDI_ROOT)); @@ -9147,6 +9153,8 @@ static void createTreeView (HWND hDlg, int currentpage) TreeView_SelectItem (TVhDlg, ppage[currentpage].tv); } +static int dialog_x_offset, dialog_y_offset; + static void centerWindow (HWND hDlg) { RECT rc, rcDlg, rcOwner; @@ -9156,13 +9164,13 @@ static void centerWindow (HWND hDlg) if (owner == NULL) owner = GetDesktopWindow(); - if (!isfullscreen ()) { + if (isfullscreen () <= 0) { DWORD regkeytype; DWORD regkeysize = sizeof(LONG); if (hWinUAEKey) { - if (RegQueryValueEx (hWinUAEKey, "xPosGUI", 0, ®keytype, (LPBYTE)&x, ®keysize) != ERROR_SUCCESS) + if (RegQueryValueEx (hWinUAEKey, "GUIPosX", 0, ®keytype, (LPBYTE)&x, ®keysize) != ERROR_SUCCESS) x = 0; - if (RegQueryValueEx (hWinUAEKey, "yPosGUI", 0, ®keytype, (LPBYTE)&y, ®keysize) != ERROR_SUCCESS) + if (RegQueryValueEx (hWinUAEKey, "GUIPosY", 0, ®keytype, (LPBYTE)&y, ®keysize) != ERROR_SUCCESS) y = 0; } else { x = y = 0; @@ -9183,7 +9191,7 @@ static void centerWindow (HWND hDlg) pt2.x = x + 16; pt2.y = y + GetSystemMetrics (SM_CYMENU) + GetSystemMetrics (SM_CYBORDER); if (MonitorFromPoint (pt1, MONITOR_DEFAULTTONULL) == NULL || MonitorFromPoint (pt2, MONITOR_DEFAULTTONULL) == NULL) { - if (isfullscreen()) { + if (isfullscreen() > 0) { x = 0; y = 0; } else { @@ -9191,6 +9199,8 @@ static void centerWindow (HWND hDlg) y = 16; } } + dialog_x_offset = x; + dialog_y_offset = y; SetWindowPos (hDlg, HWND_TOP, x, y, 0, 0, SWP_NOSIZE); } @@ -9368,13 +9378,14 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lP centerWindow (hDlg); createTreeView (hDlg, currentpage); updatePanel (hDlg, currentpage); - return TRUE; + return TRUE; case WM_DROPFILES: if (dragdrop (hDlg, (HDROP)wParam, (gui_active || full_property_sheet) ? &workprefs : &changed_prefs, currentpage)) SendMessage (hDlg, WM_COMMAND, IDOK, 0); updatePanel (hDlg, currentpage); - return FALSE; + return FALSE; case WM_NOTIFY: + { switch (((LPNMHDR)lParam)->code) { case TVN_SELCHANGING: @@ -9395,7 +9406,9 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lP break; } break; + } case WM_COMMAND: + { switch (LOWORD(wParam)) { case IDC_RESETAMIGA: @@ -9428,7 +9441,8 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lP guiDlg = NULL; return TRUE; } - break; + break; + } } return FALSE; } @@ -9438,23 +9452,93 @@ static ACCEL EmptyAccel[] = { { 0, 0, 0 } }; +struct newresource *getresource(int tmpl) +{ + char rid[10]; + HRSRC hrsrc; + HGLOBAL res; + HINSTANCE inst = hUIDLL ? hUIDLL : hInst; + void *resdata, *newres; + struct newresource *nr; + int size; + + sprintf(rid,"#%d", tmpl); + hrsrc = FindResource (inst, rid, RT_DIALOG); + if (!hrsrc) { + inst = hInst; + hrsrc = FindResource (inst, rid, RT_DIALOG); + } + if (!hrsrc) + return NULL; + res = LoadResource(inst, hrsrc); + if (!res) + return NULL; + resdata = LockResource(res); + size = SizeofResource(inst, hrsrc); + nr = xcalloc (sizeof (struct newresource), 1); + newres = xmalloc (size); + memcpy (newres, resdata, size); + nr->resource = newres; + nr->size = size; + nr->tmpl = tmpl; + nr->inst = inst; + return nr; +} + +INT_PTR CustomDialogBox(int templ, HWND hDlg, DLGPROC proc) +{ + struct newresource *res, *r; + INT_PTR h = -1; + + res = getresource (templ); + if (!res) + return h; + r = scaleresource (res, hDlg); + if (r) { + h = DialogBoxIndirect (r->inst, r->resource, hDlg, proc); + freescaleresource (r); + } + freescaleresource (res); + return h; +} + +HWND CustomCreateDialog (int templ, HWND hDlg, DLGPROC proc) +{ + struct newresource *res, *r; + HWND h = NULL; + + res = getresource (templ); + if (!res) + return h; + r = scaleresource (res, hDlg); + if (r) { + h = CreateDialogIndirect (r->inst, r->resource, hDlg, proc); + freescaleresource (r); + } + freescaleresource (res); + return h; +} + static int init_page (int tmpl, int icon, int title, INT_PTR (CALLBACK FAR *func) (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam), ACCEL *accels, char *help) { + LPTSTR lpstrTitle; static id = 0; int i = -1; + struct newresource *res; - LPTSTR lpstrTitle; - ppage[id].pp.pszTemplate = MAKEINTRESOURCE (tmpl); - ppage[id].pp.pszIcon = MAKEINTRESOURCE (icon); + res = getresource(tmpl); + if (!res) + return -1; + ppage[id].nres = res; + ppage[id].icon = MAKEINTRESOURCE (icon); lpstrTitle = calloc (1, MAX_DPATH); LoadString (hUIDLL, title, lpstrTitle, MAX_DPATH); - ppage[id].pp.pszTitle = lpstrTitle; - ppage[id].pp.pfnDlgProc = func; + ppage[id].title = lpstrTitle; + ppage[id].dlgproc = func; ppage[id].help = help; ppage[id].idx = id; ppage[id].accel = NULL; - ppage[id].tmpl = tmpl; if (!accels) accels = EmptyAccel; while (accels[++i].key); @@ -9465,12 +9549,68 @@ static int init_page (int tmpl, int icon, int title, return id - 1; } +static RECT dialog_rect; + +static void dialogmousemove(HWND hDlg, MSG *msg) +{ + int edge2 = 80; + int rate = 32; + int qual = msg->wParam; + int newmx, newmy; + static int oldx, oldy, ignorenext; + int mx, my; + + mx = (signed short) LOWORD (msg->lParam); + my = (signed short) HIWORD (msg->lParam); + + if (!(qual & MK_CONTROL) || ignorenext > 0) { + oldx = mx; + oldy = my; + if (ignorenext > 0) + ignorenext--; + return; + } + + newmx = mx - oldx; + newmy = my - oldy; + + oldx = mx; + oldy = my; + + if (newmx < -edge2 || newmy < -edge2 || newmx > edge2 || newmy > edge2) { + ignorenext++; + return; + } + + write_log("%dx%d\n", newmx, newmy); + + dialog_x_offset += newmx; + dialog_y_offset += newmy; + + /* + if (dialog_x_offset >= dialog_rect.right - WIN32GFX_GetWidth() + edge2) + dialog_x_offset = dialog_rect.right - WIN32GFX_GetWidth() + edge2; + if (dialog_y_offset >= dialog_rect.bottom - WIN32GFX_GetHeight() + edge2) + dialog_y_offset = dialog_rect.bottom - WIN32GFX_GetHeight() + edge2; + if (dialog_x_offset < -edge2) + dialog_x_offset = -edge2; + if (dialog_y_offset < -edge2) + dialog_y_offset = -edge2; +*/ + SetWindowPos(hDlg, 0, dialog_x_offset, dialog_y_offset, 0, 0, + SWP_NOOWNERZORDER | SWP_NOREDRAW | SWP_NOSIZE | SWP_NOACTIVATE | SWP_DEFERERASE); + ignorenext++; + +} + static int GetSettings (int all_options, HWND hwnd) { static int init_called = 0; int psresult; HWND dhwnd; int first = 0; + static struct newresource *panelresource; + struct newresource *tres; gui_active++; @@ -9484,6 +9624,7 @@ static int GetSettings (int all_options, HWND hwnd) if (!init_called) { first = 1; + panelresource = getresource(IDD_PANEL); LOADSAVE_ID = init_page (IDD_LOADSAVE, IDI_CONFIGFILE, IDS_LOADSAVE, LoadSaveDlgProc, NULL, "gui/configurations.htm"); MEMORY_ID = init_page (IDD_MEMORY, IDI_MEMORY, IDS_MEMORY, MemoryDlgProc, NULL, "gui/ram.htm"); KICKSTART_ID = init_page (IDD_KICKSTART, IDI_MEMORY, IDS_KICKSTART, KickstartDlgProc, NULL, "gui/rom.htm"); @@ -9527,7 +9668,13 @@ static int GetSettings (int all_options, HWND hwnd) DragAcceptFiles(hwnd, TRUE); if (first) write_log("Entering GUI idle loop\n"); - dhwnd = CreateDialog (hUIDLL ? hUIDLL : hInst, MAKEINTRESOURCE (IDD_PANEL), hwnd, DialogProc); + 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; @@ -9539,6 +9686,7 @@ static int GetSettings (int all_options, HWND hwnd) SetWindowText (dhwnd, tmp); } ShowWindow (dhwnd, SW_SHOW); + MapDialogRect(dhwnd, &dialog_rect); for (;;) { HANDLE IPChandle; IPChandle = geteventhandleIPC(); @@ -9756,7 +9904,7 @@ static int fsdialog (HWND *hwnd, DWORD *flags) return 0; } *hwnd = hAmigaWnd; - if (!isfullscreen ()) + if (isfullscreen () <= 0) return 0; hr = DirectDraw_FlipToGDISurface(); if (FAILED(hr)) diff --git a/od-win32/win32gui.h b/od-win32/win32gui.h index 0d25899e..942aa1d3 100755 --- a/od-win32/win32gui.h +++ b/od-win32/win32gui.h @@ -19,4 +19,21 @@ int dragdrop (HWND hDlg, HDROP hd, struct uae_prefs *prefs, int currentpage); HKEY read_disk_history (void); void write_disk_history (void); +struct newresource +{ + void *resource; + HINSTANCE inst; + int size; + int tmpl; + int width, height; +}; + +extern struct newresource *scaleresource(struct newresource *res, HWND); +extern void freescaleresource(struct newresource*); +extern void scaleresource_setmaxsize(int w, int h); +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*, char *font, int size); + #endif diff --git a/od-win32/win32gui_extra.c b/od-win32/win32gui_extra.c new file mode 100755 index 00000000..08806f22 --- /dev/null +++ b/od-win32/win32gui_extra.c @@ -0,0 +1,208 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "sysconfig.h" +#include "sysdeps.h" + +#include "resource.h" +#include "win32.h" +#include "win32gui.h" + +static int max_w, max_h, mult, pointsize; + +typedef struct { + WORD dlgVer; + WORD signature; + DWORD helpID; + DWORD exStyle; + DWORD style; + WORD cDlgItems; + short x; + short y; + short cx; + short cy; +/* + sz_Or_Ord menu; + sz_Or_Ord windowClass; +*/ +} DLGTEMPLATEEX; + +typedef struct { + WORD pointsize; + WORD weight; + BYTE italic; + BYTE charset; + WCHAR typeface[0]; +} DLGTEMPLATEEX_END; + +typedef struct { + DWORD helpID; + DWORD exStyle; + DWORD style; + short x; + short y; + short cx; + short cy; + WORD id; + WCHAR windowClass[0]; + /* variable data after this */ + /* sz_Or_Ord title; */ + /* WORD extraCount; */ +} DLGITEMTEMPLATEEX; + +static wchar_t font_vista[] = L"Segoe UI"; +static wchar_t font_xp[] = L"Tahoma"; +static wchar_t font_old[] = L"MS Sans Serif"; + + +static BYTE *skiptext(BYTE *s) +{ + if (s[0] == 0xff && s[1] == 0xff) { + s += 4; + return s; + } + while (s[0] != 0 || s[1] != 0) + s += 2; + s += 2; + return s; +} + +static BYTE *todword(BYTE *p) +{ + while ((LONG_PTR)p & 3) + p++; + return p; +} + +static void modifytemplate(DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, int id, int mult) +{ + + d->cx = d->cx * mult / 100; + d->cy = d->cy * mult / 100; +} + +static void modifytemplatefont(DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2) +{ + wchar_t *p = NULL; + + if (os_vista) + p = font_vista; + else if (os_winnt) + p = font_xp; + if (p && !wcscmp (d2->typeface, font_old)) + wcscpy (d2->typeface, p); +} + +static void modifyitem(DLGTEMPLATEEX *d, DLGTEMPLATEEX_END *d2, DLGITEMTEMPLATEEX *dt, int id, int mult) +{ + dt->cy = dt->cy * mult / 100; + dt->cx = dt->cx * mult / 100; + dt->y = dt->y * mult / 100; + dt->x = dt->x * mult / 100; +} + +static INT_PTR CALLBACK DummyProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) +{ + switch(msg) + { + case WM_DESTROY: + PostQuitMessage (0); + return TRUE; + case WM_CLOSE: + DestroyWindow(hDlg); + return TRUE; + case WM_INITDIALOG: + return TRUE; + } + return FALSE; +} + +struct newresource *scaleresource(struct newresource *res, HWND parent) +{ + DLGTEMPLATEEX *d; + DLGTEMPLATEEX_END *d2; + DLGITEMTEMPLATEEX *dt; + BYTE *p, *p2; + int i; + struct newresource *ns; + + d = res->resource; + d2 = res->resource; + + if (d->dlgVer != 1 || d->signature != 0xffff) + return 0; + if (!(d->style & (DS_SETFONT | DS_SHELLFONT))) + return 0; + + ns = xcalloc (sizeof (struct newresource), 1); + ns->inst = res->inst; + ns->size = res->size; + ns->tmpl = res->tmpl; + ns->resource = xmalloc (ns->size); + memcpy (ns->resource, res->resource, ns->size); + + d = ns->resource; + d2 = ns->resource; + p = (BYTE*)d + sizeof (DLGTEMPLATEEX); + p = skiptext(p); + p = skiptext(p); + d2 = (DLGTEMPLATEEX_END*)p; + p2 = p; + p2 += sizeof (DLGTEMPLATEEX_END); + p2 = skiptext(p2); + p2 = todword(p2); + + modifytemplatefont(d, d2); + + p += sizeof (DLGTEMPLATEEX_END); + p = skiptext(p); + p = todword(p); + + if (p != p2) + memmove (p, p2, ns->size - (p2 - (BYTE*)ns->resource)); + + modifytemplate(d, d2, ns->tmpl, mult); + + for (i = 0; i < d->cDlgItems; i++) { + dt = (DLGITEMTEMPLATEEX*)p; + modifyitem(d, d2, dt, ns->tmpl, mult); + p += sizeof (DLGITEMTEMPLATEEX); + p = skiptext(p); + p = skiptext(p); + p += ((WORD*)p)[0]; + p += sizeof (WORD); + p = todword(p); + } + + ns->width = d->cx; + ns->height = d->cy; + return ns; +} + +void freescaleresource(struct newresource *ns) +{ + xfree (ns->resource); + xfree (ns); +} + +void scaleresource_setmaxsize(int w, int h) +{ + max_w = w; + max_h = h; + mult = 100; +} diff --git a/od-win32/winuae_msvc/winuae_msvc.vcproj b/od-win32/winuae_msvc/winuae_msvc.vcproj index 2645b1ce..63925ee3 100755 --- a/od-win32/winuae_msvc/winuae_msvc.vcproj +++ b/od-win32/winuae_msvc/winuae_msvc.vcproj @@ -1285,6 +1285,10 @@ RelativePath="..\caps\caps_win32.c" > + + @@ -1377,6 +1381,10 @@ RelativePath="..\win32gui.c" > + + @@ -2377,10 +2385,6 @@ RelativePath="..\resources\resource.h" > - - diff --git a/od-win32/winuaechangelog.txt b/od-win32/winuaechangelog.txt index 3aaa8549..a11697e9 100755 --- a/od-win32/winuaechangelog.txt +++ b/od-win32/winuaechangelog.txt @@ -1,4 +1,45 @@ + +Beta 1: + +- Chip set extra config load/save missed some models (crash when + saving if using missing models) +- GUI font dynamically switches to "Segoe UI" (Vista) or "Tahoma" + (XP or 2000). Old font still in resource file to keep compatibility + with older Windows versions. TODO: new GUI tree icons. +- dynamically modifying resources and resizing dialogs is "fun"... +- finally removed pixel format detection. It has not been needed for + years.. +- merged (and modified) "GUI" debugger by Karsten Bock. WIP. + F1-F6: switch between different pages + F1 and F2: two work areas + F3 and F4: memory viewer + F5 and F6: disassembler + F3-F6: alt+cursor up/down/left/right modifies current address +- x closes debugger, xx switches between console and GUI debuggers +- extended debugger 'm' instruction, 'm r' +- direct harddrive support now works with drives that return empty + vendor and product id (confirmed: SyQuest removable harddrive) +- log window position and size stored in registry. (Log window first + appearing in default position before jumping to stored position + is normal, logging must be initialized before registry handling) + Windows 2000 or newer only. +- GUI/Main window registry entry names changed, positions will reset +- blitter CE-mode ABC channel combination cycle allocation fixed +- rar archives left "temporary" files around (stupid unrar.dll..) +- added combination of fullscreen and windowed mode. If you have two + (or more) monitors, load your favorite WB configuration, select + non-primary monitor and "full-window" mode to both native and RTG, + also make sure "Magic mouse" is enabled, adjust P96 resolution. + D3D/OGL filter may also be good idea. + Result will be near-seamless Windows/Amiga integration :) +- "Magic mouse" didn't work with some system patches, also adjusted + sensitivity +- tweaked vblank interrupt delay by 1 cycle (game Feud) +- refresh rate switching (PAL/NTSC or by poking VPOSW) improved + +1.4.1 + Beta 4: - skip unknown extensions (or files without extension) when scanning diff --git a/od-win32/writelog.c b/od-win32/writelog.c index cce095d7..fd2d3460 100755 --- a/od-win32/writelog.c +++ b/od-win32/writelog.c @@ -7,10 +7,13 @@ #include "custom.h" #include "events.h" +#include "debug.h" +#include "debug_win32.h" +#include "win32.h" #define SHOW_CONSOLE 0 -static int consoleopen = 0; +int consoleopen = 0; static HANDLE stdinput,stdoutput; static int bootlogmode; static CRITICAL_SECTION cs; @@ -18,53 +21,179 @@ static int cs_init; FILE *debugfile = NULL; int console_logging; +static LONG debugger_type = -1; #define WRITE_LOG_BUF_SIZE 4096 /* console functions for debugger */ -static void openconsole(void) +typedef HWND (CALLBACK* GETCONSOLEWINDOW)(void); + +static HWND myGetConsoleWindow(void) +{ + GETCONSOLEWINDOW pGetConsoleWindow; + /* Windows 2000 or newer only */ + pGetConsoleWindow = (GETCONSOLEWINDOW)GetProcAddress( + GetModuleHandle("kernel32.dll"), "GetConsoleWindow"); + if (pGetConsoleWindow) + return pGetConsoleWindow(); + return NULL; +} + +static void open_console_window(void) { - if(consoleopen) - return; AllocConsole(); stdinput = GetStdHandle(STD_INPUT_HANDLE); stdoutput = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleMode(stdinput,ENABLE_PROCESSED_INPUT|ENABLE_LINE_INPUT|ENABLE_ECHO_INPUT|ENABLE_PROCESSED_OUTPUT); - consoleopen = 1; + consoleopen = -1; + reopen_console(); +} + +static void openconsole(void) +{ + if (debugger_active && (debugger_type < 0 || debugger_type == 2)) { + if (consoleopen > 0) + return; + if (debugger_type < 0) { + DWORD regkeytype; + DWORD regkeysize = sizeof(LONG); + if (hWinUAEKey) + RegQueryValueEx (hWinUAEKey, "DebuggerType", 0, ®keytype, (LPBYTE)&debugger_type, ®keysize); + if (debugger_type <= 0) + debugger_type = 2; + openconsole(); + return; + } + close_console(); + if (open_debug_window()) { + consoleopen = 1; + return; + } + open_console_window(); + } else { + if (consoleopen < 0) + return; + close_console(); + open_console_window(); + } +} + +void debugger_change(int mode) +{ + if (mode < 0) + debugger_type = debugger_type == 2 ? 1 : 2; + else + debugger_type = mode; + if (debugger_type != 1 && debugger_type != 2) + debugger_type = 2; + if (hWinUAEKey) + RegSetValueEx (hWinUAEKey, "DebuggerType", 0, REG_DWORD, (LPBYTE)&debugger_type, sizeof(LONG)); + openconsole(); +} + +void reopen_console(void) +{ + HWND hwnd; + + if (consoleopen >= 0) + return; + hwnd = myGetConsoleWindow(); + if (hwnd && hWinUAEKey) { + int newpos = 1; + LONG x, y, w, h; + DWORD regkeytype; + DWORD regkeysize = sizeof(LONG); + if (RegQueryValueEx (hWinUAEKey, "LoggerPosX", 0, ®keytype, (LPBYTE)&x, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "LoggerPosY", 0, ®keytype, (LPBYTE)&y, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "LoggerPosW", 0, ®keytype, (LPBYTE)&w, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (RegQueryValueEx (hWinUAEKey, "LoggerPosH", 0, ®keytype, (LPBYTE)&h, ®keysize) != ERROR_SUCCESS) + newpos = 0; + if (newpos) { + RECT rc; + rc.left = x; + rc.top = y; + rc.right = x + w; + rc.bottom = y + h; + if (MonitorFromRect (&rc, MONITOR_DEFAULTTONULL) != NULL) + SetWindowPos(hwnd, HWND_TOP, x, y, w, h, SWP_NOACTIVATE | SWP_DEFERERASE); + } + } +} + +void close_console(void) +{ + if (consoleopen > 0) { + close_debug_window(); + } else if (consoleopen < 0) { + HWND hwnd = myGetConsoleWindow(); + if (hwnd && hWinUAEKey) { + RECT r; + if (GetWindowRect (hwnd, &r)) { + r.bottom -= r.top; + r.right -= r.left; + RegSetValueEx (hWinUAEKey, "LoggerPosX", 0, REG_DWORD, (LPBYTE)&r.left, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "LoggerPosY", 0, REG_DWORD, (LPBYTE)&r.top, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "LoggerPosW", 0, REG_DWORD, (LPBYTE)&r.right, sizeof(LONG)); + RegSetValueEx (hWinUAEKey, "LoggerPosH", 0, REG_DWORD, (LPBYTE)&r.bottom, sizeof(LONG)); + } + } + FreeConsole(); + } + consoleopen = 0; +} + +static void writeconsole(char *buffer) +{ + DWORD temp; + if (!consoleopen) + openconsole(); + if (consoleopen > 0) + WriteOutput(buffer, strlen(buffer)); + else if (consoleopen < 0) + WriteConsole(stdoutput, buffer, strlen(buffer), &temp,0); } void console_out (const char *format,...) { va_list parms; char buffer[WRITE_LOG_BUF_SIZE]; - DWORD temp, tmp; va_start (parms, format); _vsnprintf (buffer, WRITE_LOG_BUF_SIZE-1, format, parms); va_end (parms); openconsole(); - tmp = WriteConsole(stdoutput, buffer, strlen(buffer), &temp,0); + writeconsole(buffer); } int console_get (char *out, int maxlen) { - DWORD len,totallen; - *out = 0; - totallen = 0; - while(maxlen>0) { - ReadConsole(stdinput, out, 1, &len, 0); - if(*out == 13) - break; - out++; - maxlen--; - totallen++; + if (consoleopen > 0) { + return console_get_gui (out, maxlen); + } else { + DWORD len,totallen; + + *out = 0; + totallen=0; + while(maxlen>0) { + ReadConsole(stdinput,out,1,&len,0); + if(*out == 13) + break; + out++; + maxlen--; + totallen++; + } + *out=0; + return totallen; } - *out=0; - return totallen; + return 0; } + void console_flush (void) { } @@ -106,7 +235,6 @@ static char *writets(void) void write_dlog (const char *format, ...) { int count; - DWORD numwritten; char buffer[WRITE_LOG_BUF_SIZE]; char *ts; va_list parms; @@ -119,10 +247,9 @@ void write_dlog (const char *format, ...) count = _vsnprintf(buffer, WRITE_LOG_BUF_SIZE-1, format, parms); ts = writets(); if (SHOW_CONSOLE || console_logging) { - openconsole(); if (lfdetected && ts) - WriteConsole(stdoutput, ts, strlen(ts), &numwritten,0); - WriteConsole(stdoutput, buffer, strlen(buffer), &numwritten,0); + writeconsole(ts); + writeconsole(buffer); } if (debugfile) { if (lfdetected && ts) @@ -139,25 +266,17 @@ void write_dlog (const char *format, ...) void write_log (const char *format, ...) { - int count, tmp; - DWORD numwritten; + int count; char buffer[WRITE_LOG_BUF_SIZE], *ts; - va_list parms; - - if (!SHOW_CONSOLE && !console_logging && !debugfile) - return; - EnterCriticalSection(&cs); + va_list parms; va_start(parms, format); - count = _vsnprintf(buffer, WRITE_LOG_BUF_SIZE-1, format, parms); + count = _vsnprintf(buffer, WRITE_LOG_BUF_SIZE - 1, format, parms); ts = writets(); if (SHOW_CONSOLE || console_logging) { - openconsole(); if (lfdetected && ts) - WriteConsole(stdoutput, ts, strlen(ts), &numwritten,0); - tmp = WriteConsole(stdoutput, buffer, strlen(buffer), &numwritten, 0); - if (!tmp) - tmp = GetLastError(); + writeconsole(ts); + writeconsole(buffer); } if (debugfile) { if (lfdetected && ts) @@ -169,23 +288,35 @@ void write_log (const char *format, ...) if (strlen(buffer) > 0 && buffer[strlen(buffer) - 1] == '\n') lfdetected = 1; va_end (parms); - LeaveCriticalSection(&cs); } void f_out (void *f, const char *format, ...) { int count; - DWORD numwritten; char buffer[WRITE_LOG_BUF_SIZE]; va_list parms; va_start (parms, format); if (f == NULL) return; - count = _vsnprintf (buffer, WRITE_LOG_BUF_SIZE-1, format, parms); + count = _vsnprintf (buffer, WRITE_LOG_BUF_SIZE - 1, format, parms); openconsole (); - WriteConsole(stdoutput, buffer, strlen(buffer), &numwritten,0); + writeconsole(buffer); + va_end (parms); +} + +char* buf_out (char *buffer, int *bufsize, const char *format, ...) +{ + int count; + va_list parms; + va_start (parms, format); + + if (buffer == NULL) + return 0; + count = _vsnprintf (buffer, (*bufsize)-1, format, parms); va_end (parms); + *bufsize -= strlen(buffer); + return buffer + strlen(buffer); } void *log_open(const char *name, int append, int bootlog) diff --git a/zfile.c b/zfile.c index c8ef31e1..4e58907a 100755 --- a/zfile.c +++ b/zfile.c @@ -833,7 +833,7 @@ static struct zfile *unrar (struct zfile *z) if (select && !we_have_file && HeaderData.UnpSize > 0) { zf = zfile_fopen_empty (name, HeaderData.UnpSize); rarunpackzf = zf; - if (zf && pRARProcessFile(hArcData,RAR_EXTRACT,NULL,NULL) == 0) { + if (zf && pRARProcessFile(hArcData,RAR_TEST,NULL,NULL) == 0) { needskip = 0; if (select < 0 || zfile_gettype(zf)) we_have_file = 1; -- 2.47.3