]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
imported winuaesrc1460b3.zip
authorToni Wilen <twilen@winuae.net>
Sun, 30 Dec 2007 12:48:46 +0000 (14:48 +0200)
committerToni Wilen <twilen@winuae.net>
Mon, 22 Feb 2010 19:37:58 +0000 (21:37 +0200)
18 files changed:
cfgfile.c
custom.c
drawing.c
filesys.c
gayle.c
include/filesys.h
include/gayle.h
inputdevice.c
main.c
memory.c
od-win32/keyboard_win32.c
od-win32/mman.c
od-win32/resources/winuae.rc
od-win32/resources/winuae_old.rc [new file with mode: 0644]
od-win32/win32.c
od-win32/win32.h
od-win32/win32gui.c
od-win32/winuaechangelog.txt

index 4e102cff82c71d9830463182fe10324b2ba582cc..4060c138ee897bf13e5a2c263679894b94b69e0d 100644 (file)
--- a/cfgfile.c
+++ b/cfgfile.c
@@ -267,7 +267,8 @@ static void write_filesys_config (struct uae_prefs *p, const char *unexpanded,
     char tmp[MAX_DPATH], tmp2[MAX_DPATH];
     char *hdcontrollers[] = { "uae",
        "ide0", "ide1", "ide2", "ide3",
-       "scsi0", "scsi1", "scsi2", "scsi3", "scsi4", "scsi5", "scsi6" };
+       "scsi0", "scsi1", "scsi2", "scsi3", "scsi4", "scsi5", "scsi6",
+       "scsram", "scside" }; /* scsram = smart card sram = pcmcia sram card */
 
     for (i = 0; i < p->mountitems; i++) {
        struct uaedev_config_info *uci = &p->mountconfig[i];
@@ -596,6 +597,7 @@ void cfgfile_save_options (struct zfile *f, struct uae_prefs *p, int type)
     cfgfile_dwrite (f, "a1000ram=%s\n", p->cs_a1000ram ? "true" : "false");
     cfgfile_dwrite (f, "fatgary=%d\n", p->cs_fatgaryrev);
     cfgfile_dwrite (f, "ramsey=%d\n", p->cs_ramseyrev);
+    cfgfile_dwrite (f, "pcmcia=%s\n", p->cs_pcmcia ? "true" :"false");
     cfgfile_dwrite (f, "scsi_cdtv=%s\n", p->cs_cdtvscsi ? "true" : "false");
     cfgfile_dwrite (f, "scsi_a2091=%s\n", p->cs_a2091 ? "true" : "false");
     cfgfile_dwrite (f, "scsi_a4091=%s\n", p->cs_a4091 ? "true" : "false");
@@ -1281,6 +1283,7 @@ static int cfgfile_parse_hardware (struct uae_prefs *p, char *option, char *valu
        || cfgfile_yesno (option, value, "cdtvcd", &p->cs_cdtvcd)
        || cfgfile_yesno (option, value, "cdtvram", &p->cs_cdtvram)
        || cfgfile_yesno (option, value, "a1000ram", &p->cs_a1000ram)
+       || cfgfile_yesno (option, value, "pcmcia", &p->cs_pcmcia)
        || cfgfile_yesno (option, value, "scsi_cdtv", &p->cs_cdtvscsi)
        || cfgfile_yesno (option, value, "scsi_a4091", &p->cs_a4091)
        || cfgfile_yesno (option, value, "scsi_a2091", &p->cs_a2091)
@@ -1598,16 +1601,18 @@ static int cfgfile_parse_hardware (struct uae_prefs *p, char *option, char *valu
                if (tmpp != 0) {
                    *tmpp++ = 0;
                    hdc = tmpp;
-                   if(strlen(hdc) >= 4 && !memcmp(hdc, "ide", 3)) {
+                   if(strlen (hdc) >= 4 && !memcmp( hdc, "ide", 3)) {
                        hdcv = hdc[3] - '0' + HD_CONTROLLER_IDE0;
                        if (hdcv < HD_CONTROLLER_IDE0 || hdcv > HD_CONTROLLER_IDE3)
                            hdcv = 0;
                    }
-                   if(strlen(hdc) >= 5 && !memcmp(hdc, "scsi", 4)) {
+                   if(strlen (hdc) >= 5 && !memcmp (hdc, "scsi", 4)) {
                        hdcv = hdc[4] - '0' + HD_CONTROLLER_SCSI0;
                        if (hdcv < HD_CONTROLLER_SCSI0 || hdcv > HD_CONTROLLER_SCSI6)
                            hdcv = 0;
                    }
+                   if (strlen (hdc) >= 6 && !memcmp (hdc, "scsram", 6))
+                       hdcv = HD_CONTROLLER_PCMCIA_SRAM;
                }
            }
        }
index a1d7cc5a137f9fafc506e7d3dd089419b6b2e3e7..bc2fba14f14dc1cbb3eb8ac722751d95f77e87b5 100644 (file)
--- a/custom.c
+++ b/custom.c
@@ -2755,6 +2755,7 @@ void INTREQ_f(uae_u32 data)
 #ifdef CD32
     rethink_akiko ();
 #endif
+    rethink_gayle ();
 }
 
 static void INTREQ_d (uae_u16 v, int d)
index 11e8cb587b04d9993e988ae91739c4d1f16068ce..bc9bd116f469e8be6e78240623a706896691a96d 100644 (file)
--- a/drawing.c
+++ b/drawing.c
@@ -1092,7 +1092,7 @@ STATIC_INLINE void draw_sprites_2 (struct sprite_entry *e, int ham, int dualpf,
                } else {
                    col += 16;
                }
-               col += (offs * 2);
+               col += offs * 2;
            }
 
            if (dualpf) {
@@ -1265,7 +1265,7 @@ STATIC_INLINE void draw_sprites_ecs (struct sprite_entry *e)
                    draw_sprites_normal_dp_hi_nat (e);
                else
                    draw_sprites_normal_sp_hi_nat (e);
-       else if (bplres == 0)
+       else if (res == 0)
            if (dp_for_drawing->ham_seen)
                draw_sprites_ham_sp_lo_nat (e);
            else
@@ -1284,8 +1284,9 @@ STATIC_INLINE void draw_sprites_ecs (struct sprite_entry *e)
 /* clear possible bitplane data outside DIW area */
 static void clear_bitplane_border_aga (void)
 {
-    int len, shift = lores_shift - bplres;
+    int len, shift = res_shift;
     uae_u8 v = 0;
+
     if (shift < 0) {
        shift = -shift;
        len = (real_playfield_start - playfield_start) << shift;
@@ -1304,18 +1305,20 @@ static void clear_bitplane_border_aga (void)
 /* emulate OCS/ECS only undocumented "SWIV" hardware feature */
 static void weird_bitplane_fix (void)
 {
-    int i, shift = lores_shift - bplres;
+    int i, shift = res_shift;
+    int sh = lores_shift;
+    uae_u8 *p = pixdata.apixels + pixels_offset;
 
     if (shift < 0) {
        shift = -shift;
-       for (i = xshift (playfield_start, lores_shift); i < xshift (playfield_end, lores_shift); i++) {
-           if (pixdata.apixels[pixels_offset + i] > 16)
-               pixdata.apixels[pixels_offset + i] = 16;
+       for (i = playfield_start << sh; i < playfield_end << sh; i++) {
+           if (p[i] > 16)
+               p[i] = 16;
        }
     } else {
-       for (i = xshift (playfield_start, lores_shift); i < xshift (playfield_end, lores_shift); i++) {
-           if (pixdata.apixels[pixels_offset + i] > 16)
-               pixdata.apixels[pixels_offset + i] = 16;
+       for (i = playfield_start >> sh; i < playfield_end >> sh; i++) {
+           if (p[i] > 16)
+               p[i] = 16;
        }
     }
 }
index 317416c22bbf4492ab4c47dd9c92f83de1abcf71..f82e35398fbce36942134ab0e4229d5b1def6549 100644 (file)
--- a/filesys.c
+++ b/filesys.c
@@ -567,6 +567,8 @@ static void initialize_mountinfo(void)
                    uci->devname, uci->sectors, uci->surfaces, uci->reserved,
                    uci->bootpri, uci->filesys);
            }
+       } else if (uci->controller == HD_CONTROLLER_PCMCIA_SRAM) {
+           gayle_add_pcmcia_sram_unit (uci->rootdir, uci->readonly);
        }
     }
     filesys_addexternals();
@@ -591,7 +593,7 @@ void free_mountinfo (void)
     int i;
     for (i = 0; i < MAX_FILESYSTEM_UNITS; i++)
        close_filesys_unit (mountinfo.ui + i);
-    gayle_free_ide_units();
+    gayle_free_units();
 }
 
 struct hardfiledata *get_hardfile_data (int nr)
diff --git a/gayle.c b/gayle.c
index 42a43cc0df76de44e8e0d06ee9b5fbe4dd0e25d8..4c92d6d8d72f38d0b721220ff8ff217aac6ebd08 100644 (file)
--- a/gayle.c
+++ b/gayle.c
@@ -9,6 +9,7 @@
 #define GAYLE_LOG 0
 #define IDE_LOG 0
 #define MBRES_LOG 0
+#define PCMCIA_LOG 1
 
 #include "sysconfig.h"
 #include "sysdeps.h"
@@ -19,7 +20,6 @@
 #include "custom.h"
 #include "newcpu.h"
 #include "gayle.h"
-#include "zfile.h"
 #include "filesys.h"
 #include "savestate.h"
 #include "gui.h"
@@ -65,16 +65,6 @@ DE0000 to DEFFFF     64 KB Motherboard resources
 #define GAYLE_ADDRESS   (0xda8000)      /* gayle main registers base address */
 #define GAYLE_RESET     (0xa40000)      /* write 0x00 to start reset,
                                           read 1 byte to stop reset */
-/* GAYLE_CARDSTATUS bit def */
-#define GAYLE_CS_CCDET          0x40    /* credit card detect */
-#define GAYLE_CS_BVD1           0x20    /* battery voltage detect 1 */
-#define GAYLE_CS_SC             0x20    /* credit card status change */
-#define GAYLE_CS_BVD2           0x10    /* battery voltage detect 2 */
-#define GAYLE_CS_DA             0x10    /* digital audio */
-#define GAYLE_CS_WR             0x08    /* write enable (1 == enabled) */
-#define GAYLE_CS_BSY            0x04    /* credit card busy */
-#define GAYLE_CS_IRQ            0x04    /* interrupt request */
-
 /* GAYLE_CONFIG bit def
    (bit 0-1 for program voltage, bit 2-3 for access speed */
 #define GAYLE_CFG_0V            0x00
@@ -116,19 +106,31 @@ DE0000 to DEFFFF  64 KB Motherboard resources
  *  These are at different offsets from the base
  */
 #define GAYLE_IRQ_4000  0x3020    /* MSB = 1, Harddisk is source of interrupt */
+#define GAYLE_CS_1200  0x8000
 #define GAYLE_IRQ_1200  0x9000
 #define GAYLE_INT_1200  0xA000
+#define GAYLE_CFG_1200 0xB000
+
+#define GAYLE_CS_CCDET 0x40    /* credit card detect */
+#define GAYLE_CS_BVD1  0x20    /* battery voltage detect 1 */
+#define GAYLE_CS_SC    0x20    /* credit card status change */
+#define GAYLE_CS_BVD2  0x10    /* battery voltage detect 2 */
+#define GAYLE_CS_DA    0x10    /* digital audio */
+#define GAYLE_CS_WR    0x08    /* write enable (1 == enabled) */
+#define GAYLE_CS_BSY   0x04    /* credit card busy */
+#define GAYLE_CS_IRQ   0x04    /* interrupt request */
+
 
 /* GAYLE_IRQ bit def */
 #define GAYLE_IRQ_IDE  0x80
-#define GAYLE_IRQ_CCDET        0x40
-#define GAYLE_IRQ_BVD1 0x20
-#define GAYLE_IRQ_SC   0x20
-#define GAYLE_IRQ_BVD2 0x10
-#define GAYLE_IRQ_DA   0x10
-#define GAYLE_IRQ_WR   0x08
-#define GAYLE_IRQ_BSY  0x04
-#define GAYLE_IRQ_IRQ  0x04
+#define GAYLE_IRQ_CCDET        0x40    /* credit card detect */
+#define GAYLE_IRQ_BVD1 0x20    /* battery voltage detect 1 */
+#define GAYLE_IRQ_SC   0x20    /* credit card status change */
+#define GAYLE_IRQ_BVD2 0x10    /* battery voltage detect 2 */
+#define GAYLE_IRQ_DA   0x10    /* digital audio */
+#define GAYLE_IRQ_WR   0x08    /* write enable (1 == enabled) */
+#define GAYLE_IRQ_BSY  0x04    /* credit card busy */
+#define GAYLE_IRQ_IRQ  0x04    /* interrupt request */
 #define GAYLE_IRQ_IDEACK1 0x02
 #define GAYLE_IRQ_IDEACK0 0x01
 
@@ -146,10 +148,11 @@ struct ide_hdf
     int num;
 };
 
-static struct ide_hdf idedrive[4];
+static struct ide_hdf *idedrive[4];
+static struct hd_hardfiledata *pcmcia_sram;
 
 static int gayle_id_cnt;
-static uae_u8 gayle_irq, gayle_intena;
+static uae_u8 gayle_irq, gayle_intena, gayle_cs, gayle_cfg;
 static uae_u8 ide_select, ide_nsector, ide_sector, ide_lcyl, ide_hcyl, ide_devcon, ide_error, ide_feat;
 static uae_u8 ide_nsector2, ide_sector2, ide_lcyl2, ide_hcyl2, ide_feat2;
 static int ide_drv, ide2, ide_splitter;
@@ -176,6 +179,16 @@ static void ps (int offset, char *s, int max)
     }
 }
 
+void rethink_gayle (void)
+{
+    if (currprefs.cs_ide != 1)
+       return;
+    if (gayle_intena & gayle_irq & (GAYLE_IRQ_IDE | GAYLE_IRQ_IRQ)) {
+       if (!(intreq & 8))
+           INTREQ_0 (0x8000 | 0x0008);
+    }
+}
+
 static void ide_interrupt (void)
 {
     ide->status |= IDE_STATUS_BSY;
@@ -193,8 +206,8 @@ static void ide_interrupt_do (struct ide_hdf *ide)
 static void ide_fail (void)
 {
     ide_error |= IDE_ERR_ABRT;
-    if (ide_drv == 1 && idedrive[ide2 + 1].hdhfd.size == 0)
-       idedrive[ide2].status |= IDE_STATUS_ERR;
+    if (ide_drv == 1 && idedrive[ide2 + 1]->hdhfd.size == 0)
+       idedrive[ide2]->status |= IDE_STATUS_ERR;
     ide->status |= IDE_STATUS_ERR;
     ide_interrupt ();
 }
@@ -252,7 +265,7 @@ static void ide_identify_drive (void)
     totalsecs = ide->hdhfd.cyls * ide->hdhfd.heads * ide->hdhfd.secspertrack;
     pw (57, totalsecs);
     pw (58, totalsecs >> 16);
-    v = idedrive[ide_drv].multiple_mode;
+    v = idedrive[ide_drv]->multiple_mode;
     pw (59, (v > 0 ? 0x100 : 0) | v);
     totalsecs = ide->hdhfd.size / 512;
     pw (60, totalsecs);
@@ -298,7 +311,7 @@ static void ide_set_features (void)
     ide_fail ();
 }
 
-static void get_lbachs (struct ide_hdf *ide, int *lba, int *cyl, int *head, int *sec)
+static void get_lbachs (struct ide_hdf *ide, unsigned int *lba, unsigned int *cyl, unsigned int *head, unsigned int *sec)
 {
     if (ide_select & 0x40) {
        *lba = ((ide_select & 15) << 24) | (ide_hcyl << 16) | (ide_lcyl << 8) | ide_sector;
@@ -309,7 +322,7 @@ static void get_lbachs (struct ide_hdf *ide, int *lba, int *cyl, int *head, int
        *lba = (((*cyl) * ide->hdhfd.heads + (*head)) * ide->hdhfd.secspertrack) + (*sec) - 1;
     }
 }
-static void put_lbachs (struct ide_hdf *ide, int lba, int cyl, int head, int sec, int inc)
+static void put_lbachs (struct ide_hdf *ide, unsigned int lba, unsigned int cyl, unsigned int head, unsigned int sec, unsigned int inc)
 {
     if (ide_select & 0x40) {
        lba += inc;
@@ -339,7 +352,7 @@ static void put_lbachs (struct ide_hdf *ide, int lba, int cyl, int head, int sec
 
 static void ide_read_sectors (int multi)
 {
-    int cyl, head, sec, nsec, lba;
+    unsigned int cyl, head, sec, nsec, lba;
 
     if (multi && ide->multiple_mode == 0) {
        ide_fail ();
@@ -359,21 +372,13 @@ static void ide_read_sectors (int multi)
     if (nsec * 512 > ide->hdhfd.size - lba * 512)
        nsec = (ide->hdhfd.size - lba * 512) / 512;
     ide_data_ready (nsec);
-#if 0
-    {
-       uae_u64 offset = lba * 512;
-       uae_u64 len = nsec * 512;
-       write_log ("cmd_read: %04.4x-%08.8x (%d) %08.8x (%d)\n",
-           (uae_u32) (offset >> 32), (uae_u32)offset, (uae_u32) (offset / 512), (uae_u32)len, (uae_u32)(len / 512));
-    }
-#endif
     hdf_read (&ide->hdhfd.hfd, ide->secbuf, lba * 512, nsec * 512);
     put_lbachs (ide, lba, cyl, head, sec, nsec);
     ide->data_multi = multi ? ide->multiple_mode : 1;
 }
 static void ide_write_sectors (int multi)
 {
-    int cyl, head, sec, nsec, lba;
+    unsigned int cyl, head, sec, nsec, lba;
 
     if (multi && ide->multiple_mode == 0) {
        ide_fail ();
@@ -473,7 +478,7 @@ static void ide_put_data (uae_u16 v)
        irq = 1;
     }
     if (ide->data_size == 0) {
-       int lba, cyl, head, sec, nsec;
+       unsigned int lba, cyl, head, sec, nsec;
        ide->status &= ~IDE_STATUS_DRQ;
        nsec = ide->data_offset / 512;
        get_lbachs (ide, &lba, &cyl, &head, &sec);
@@ -502,7 +507,7 @@ static int get_ide_reg (uaecptr addr)
            addr &= ~0x400;
        }
     }
-    ide = &idedrive[ide_drv + ide2];
+    ide = idedrive[ide_drv + ide2];
     return addr;
 }
 
@@ -538,7 +543,7 @@ static uae_u32 ide_read (uaecptr addr)
     }
     ide_reg = get_ide_reg (addr);
     /* Emulated "ide killer". Prevents long KS boot delay if no drives installed */
-    if (idedrive[0].hdhfd.size == 0 && idedrive[2].hdhfd.size == 0) {
+    if (idedrive[0]->hdhfd.size == 0 && idedrive[2]->hdhfd.size == 0) {
        if (ide_reg == IDE_STATUS)
            return 0x7f;
        return 0xff;
@@ -603,7 +608,6 @@ static void ide_write (uaecptr addr, uae_u32 val)
 {
     int ide_reg;
 
-    addr &= 0xffff;
     ide_devcon &= ~0x80;
     if (IDE_LOG > 1 && addr != 0x2000 && addr != 0x2001 && addr != 0x2020 && addr != 0x2021 && addr != GAYLE_IRQ_1200)
        write_log ("IDE_WRITE %08.8X=%02.2X PC=%X\n", addr, (uae_u32)val & 0xff, M68K_GETPC);
@@ -611,7 +615,7 @@ static void ide_write (uaecptr addr, uae_u32 val)
        return;
     if (currprefs.cs_ide == 1) {
        if (addr == GAYLE_IRQ_1200) {
-           gayle_irq = 0;
+           gayle_irq &= val;
            return;
        }
        if (addr == GAYLE_INT_1200) {
@@ -667,22 +671,64 @@ static int gayle_read (uaecptr addr)
 {
     uaecptr oaddr = addr;
     uae_u32 v = 0;
+    int got = 0;
 #ifdef JIT
     special_mem |= S_READ;
 #endif
-    v = ide_read (addr);
+    addr &= 0xffff;
+    if (currprefs.cs_pcmcia) {
+       if (currprefs.cs_ide != 1) {
+           if (addr == GAYLE_IRQ_1200) {
+               v = gayle_irq;
+               got = 1;
+           } else if (addr == GAYLE_INT_1200) {
+               v = gayle_intena;
+               got = 1;
+           }
+       }
+       if (addr == GAYLE_CS_1200) {
+           v = gayle_cs;
+           got = 1;
+       } else if (addr == GAYLE_CFG_1200) {
+           v = gayle_cfg;
+           got = 1;
+       }
+    }
+    if (!got)
+       v = ide_read (addr);
     if (GAYLE_LOG)
        write_log ("GAYLE_READ %08.8X=%02.2X PC=%08.8X\n", oaddr, (uae_u32)v & 0xff, M68K_GETPC);
     return v;
 }
 static void gayle_write (uaecptr addr, int val)
 {
+    int got = 0;
 #ifdef JIT
     special_mem |= S_WRITE;
 #endif
+    addr &= 0xffff;
+    if (currprefs.cs_pcmcia) {
+       if (currprefs.cs_ide != 1) {
+           if (addr == GAYLE_IRQ_1200) {
+               gayle_irq &= val;
+               got = 1;
+           } else if (addr == GAYLE_INT_1200) {
+               gayle_intena = val;
+               got = 1;
+           }
+       }
+       if (addr == GAYLE_CS_1200) {
+           got = 1;
+       } else if (addr == GAYLE_CFG_1200) {
+           gayle_cfg = val;
+           got = 1;
+       }
+    }
+
     if (GAYLE_LOG)
        write_log ("GAYLE_WRITE %08.8X=%02.2X PC=%08.8X\n", addr, (uae_u32)val & 0xff, M68K_GETPC);
-    ide_write (addr, val);
+    if (!got)
+       ide_write (addr, val);
 }
 
 static uae_u32 REGPARAM3 gayle_lget (uaecptr) REGPARAM;
@@ -1013,7 +1059,7 @@ void gayle_hsync (void)
     int i;
 
     for (i = 0; i < 4; i++) {
-       struct ide_hdf *ide = &idedrive[i];
+       struct ide_hdf *ide = idedrive[i];
        if (ide->irq_delay > 0) {
            ide->irq_delay--;
            if (ide->irq_delay == 0)
@@ -1022,21 +1068,29 @@ void gayle_hsync (void)
     }
 }
 
-#define PCMCIA_COMMON_MAX 0x400000
 static int pcmcia_common_size, pcmcia_attrs_size;
+static int pcmcia_common_mask;
 static uae_u8 *pcmcia_common;
 static uae_u8 *pcmcia_attrs;
+static int pcmcia_card;
+static int pcmcia_write_min, pcmcia_write_max;
+static int pcmcia_readonly;
 
 static uae_u32 gayle_attr_read (uaecptr addr)
 {
     uae_u8 v = 0;
-    write_log ("PCMCIA ATTR R: %x %x\n", addr, M68K_GETPC);
+
+    if (PCMCIA_LOG > 1)
+       write_log ("PCMCIA ATTR R: %x %x\n", addr, M68K_GETPC);
     addr &= 0x80000 - 1;
     if (addr >= 0x40000) {
-        write_log ("GAYLE: Reset disabled\n");
-       gayle_irq |= GAYLE_IRQ_CCDET | GAYLE_IRQ_SC | GAYLE_CS_IRQ;
-       if (gayle_intena & GAYLE_CS_IRQ)
-           INTREQ_f (0x8000 | 0x0008);
+       if (PCMCIA_LOG > 0)
+           write_log ("GAYLE: Reset disabled\n");
+       if (pcmcia_card) {
+           gayle_irq |= GAYLE_IRQ_CCDET | GAYLE_IRQ_IRQ;
+           if (gayle_intena & GAYLE_IRQ_IRQ)
+               INTREQ_f (0x8000 | 0x0008);
+       }
        return v;
     }
     if (addr >= pcmcia_attrs_size)
@@ -1046,55 +1100,178 @@ static uae_u32 gayle_attr_read (uaecptr addr)
 }
 static void gayle_attr_write (uaecptr addr, uae_u32 v)
 {
-    write_log ("PCMCIA ATTR W: %x=%x %x\n", addr, v, M68K_GETPC);
+    if (PCMCIA_LOG > 1)
+       write_log ("PCMCIA ATTR W: %x=%x %x\n", addr, v, M68K_GETPC);
     addr &= 0x80000 - 1;
     if (addr >= 0x40000) {
-        write_log ("GAYLE: Reset active\n");
+       if (PCMCIA_LOG > 0)
+           write_log ("GAYLE: Reset active\n");
     } else if (addr < pcmcia_attrs_size) {
        ;
     }
 }
 
-static void initsramattr (void)
+static void initsramattr (int size, int readonly)
 {
-    int wps = 1;
+    uae_u8 *rp;
     uae_u8 *p = pcmcia_attrs;
+    int sm, su, code, units;
+
+    code = 0;
+    su = 512;
+    sm = 16384;
+    while (size > sm) {
+       sm *= 4;
+       su *= 4;
+       code++;
+    }
+    units = 31 - ((sm - size) / su);
 
-    *p++ = 0x01; /* CISTPL_DEVICE */
+    /* CISTPL_DEVICE */
+    *p++ = 0x01;
     *p++ = 3;
-    *p++ = (6 /* DTYPE_SRAM */ << 4) | (wps ? 8 : 0) | (3 /* DSPEED_150NS */);
-    *p++ = (4 << 3) | 4;
+    *p++ = (6 /* DTYPE_SRAM */ << 4) | (readonly ? 8 : 0) | (4 /* SPEED_100NS */);
+    *p++ = (units << 3) | code; /* memory card size in weird units */
+    *p++ = 0xff;
+
+    /* CISTPL_FUNCID */
+    *p++ = 0x21;
+    *p++ = 2;
+    *p++ = 1; /* Memory Card */
+    *p++ = 0;
+
+    /* CISTPL_VERS_1 */
+    *p++= 0x15;
+    rp = p++;
+    *p++= 4; /* PCMCIA 2.1 */
+    *p++= 1;
+    strcpy (p, "UAE"); /* manafacturer */
+    p += strlen (p) + 1;
+    strcpy (p, "PCMCIA SRAM"); /* product */
+    p += strlen (p) + 1;
+    *p++= 0xff;
+    *rp = p - rp; 
+
+    /* CISTPL_MANFID */
+    *p++ = 0x20;
+    *p++ = 4;
+    *p++ = 0xff;
     *p++ = 0xff;
+    *p++ = 1;
+    *p++ = 1;
+
+    /* CISTPL_NO_LINK */
+    *p++ = 0x14;
+    *p++ = 0;
 
-    *p++ = 0xff; /* CISTPL_END */
+    /* CISTPL_END */
+    *p++ = 0xff;
+}
+
+static void checkflush (int addr)
+{
+    if (pcmcia_card == 0 || pcmcia_sram == 0)
+       return;
+    if (pcmcia_write_min >= 0) {
+       if (addr < 0 || abs (pcmcia_write_min - addr) > 60000 || abs (pcmcia_write_max - addr) > 60000) {
+           int blocksize = pcmcia_sram->hfd.blocksize;
+           int mask = ~(blocksize - 1);
+           int start = pcmcia_write_min & mask;
+           int end = (pcmcia_write_max + blocksize - 1) & mask;
+           int len = end - start;
+           if (len > 0) {
+               hdf_write (&pcmcia_sram->hfd, pcmcia_common + start, start, len);
+               write_log ("write %d %d\n", start, len);
+               pcmcia_write_min = -1;
+           }
+       }
+    }
+    if (pcmcia_write_min < 0 || pcmcia_write_min > addr)
+       pcmcia_write_min = addr;
+    if (pcmcia_write_max < 0 || pcmcia_write_max < addr)
+       pcmcia_write_max = addr;
 }
 
-static void initpcmcia (void)
+static void pcmcia_free (void)
 {
-    pcmcia_common_size = 4 * 1024 * 1024;
+    if (pcmcia_sram) {
+       checkflush (-1);
+        hdf_hd_close (pcmcia_sram);
+    }
+    xfree (pcmcia_sram);
+    pcmcia_sram = NULL;
+
     xfree (pcmcia_common);
-    pcmcia_common = xcalloc (pcmcia_common_size, 1);
-    pcmcia_attrs_size = 256;
     xfree (pcmcia_attrs);
-    pcmcia_attrs = xmalloc (pcmcia_attrs_size);
-    initsramattr();
+    pcmcia_common = NULL;
+    pcmcia_attrs = NULL;
+    pcmcia_common_size = 0;
+    pcmcia_attrs_size = 0;
+    pcmcia_card = 0;
+
+    gayle_cfg = 0;
+    gayle_cs = 0;
+}
+
+static int initpcmcia (char *path, int readonly)
+{
+    if (currprefs.cs_pcmcia == 0)
+       return 0;
+    if (path) {
+       pcmcia_sram = xcalloc (sizeof (struct hd_hardfiledata), 1);
+       if (hdf_hd_open (pcmcia_sram, path, 512, readonly, NULL, 0, 0, 0, 0, NULL)) {
+           pcmcia_common_size = pcmcia_sram->size;
+           if (pcmcia_sram->size > 4 * 1024 * 1024) {
+               write_log ("PCMCIA SRAM: too large device, %d bytes\n", pcmcia_sram->size);
+               pcmcia_common_size = 4 * 1024 * 1024;
+           }
+           pcmcia_common = xcalloc (pcmcia_common_size, 1);
+           write_log ("PCMCIA SRAM: '%s' open, size=%d\n", path, pcmcia_common_size);
+           hdf_read (&pcmcia_sram->hfd, pcmcia_common, 0, pcmcia_common_size);
+           pcmcia_card = 1;
+           gayle_cs = GAYLE_CS_CCDET;
+           if (!readonly)
+               gayle_cs |= GAYLE_CS_WR;
+       }
+    }
+    pcmcia_attrs_size = 256;
+    pcmcia_attrs = xcalloc (pcmcia_attrs_size, 1);
+    initsramattr (pcmcia_common_size, readonly);
+    pcmcia_write_min = -1;
+    pcmcia_write_max = -1;
+    pcmcia_readonly = readonly;
+    return 1;
 }
 
 static uae_u32 gayle_common_read (uaecptr addr)
 {
     uae_u8 v = 0;
-    write_log ("PCMCIA COMMON R: %x %x\n", addr, M68K_GETPC);
-    addr &= PCMCIA_COMMON_MAX - 1;
+    if (PCMCIA_LOG > 2)
+       write_log ("PCMCIA COMMON R: %x %x\n", addr, M68K_GETPC);
+    if (!pcmcia_common_size)
+       return 0;
+    addr -= PCMCIA_COMMON_START & (PCMCIA_COMMON_SIZE - 1);
+    addr &= PCMCIA_COMMON_SIZE - 1;
     if (addr < pcmcia_common_size)
        v = pcmcia_common[addr];
     return v;
 }
 static void gayle_common_write (uaecptr addr, uae_u32 v)
 {
-    write_log ("PCMCIA COMMON W: %x=%x %x\n", addr, v, M68K_GETPC);
-    addr &= PCMCIA_COMMON_MAX - 1;
-    if (addr < pcmcia_common_size)
-       pcmcia_common[addr] = v;
+    if (PCMCIA_LOG > 2)
+       write_log ("PCMCIA COMMON W: %x=%x %x\n", addr, v, M68K_GETPC);
+    if (!pcmcia_common_size)
+       return;
+    if (pcmcia_readonly)
+       return;
+    addr -= PCMCIA_COMMON_START & (PCMCIA_COMMON_SIZE - 1);
+    addr &= PCMCIA_COMMON_SIZE - 1;
+    if (addr < pcmcia_common_size) {
+       if (pcmcia_common[addr] != v) {
+           checkflush (addr);
+           pcmcia_common[addr] = v;
+       }
+    }
 }
 
 static uae_u32 REGPARAM3 gayle_common_lget (uaecptr) REGPARAM;
@@ -1235,14 +1412,27 @@ static int rl (uae_u8 *p)
     return (p[0] << 24) | (p[1] << 16) | (p[2] << 8) | (p[3]);
 }
 
-void gayle_free_ide_units (void)
+void gayle_free_units (void)
+{
+    int i;
+
+    for (i = 0; i < 4; i++) {
+       struct ide_hdf *ide = idedrive[i];
+       if (ide) {
+           hdf_hd_close (&ide->hdhfd);
+           memset (ide, 0, sizeof (struct ide_hdf));
+       }
+    }
+    pcmcia_free ();
+}
+
+static void alloc_ide_mem (void)
 {
     int i;
 
     for (i = 0; i < 4; i++) {
-       struct ide_hdf *ide = &idedrive[i];
-       hdf_hd_close (&ide->hdhfd);
-       memset (ide, 0, sizeof (struct ide_hdf));
+       if (!idedrive[i])
+           idedrive[i] = xcalloc (sizeof (struct ide_hdf), 1);
     }
 }
 
@@ -1254,7 +1444,8 @@ int gayle_add_ide_unit (int ch, char *path, int blocksize, int readonly,
 
     if (ch >= 4)
        return -1;
-    ide = &idedrive[ch];
+    alloc_ide_mem ();
+    ide = idedrive[ch] = xcalloc (sizeof (struct ide_hdf), 1);
     if (!hdf_hd_open (&ide->hdhfd, path, blocksize, readonly, devname, sectors, surfaces, reserved, bootpri, filesys))
        return -1;
     write_log ("IDE%d ('%s'), CHS=%d,%d,%d\n", ch, path, ide->hdhfd.cyls, ide->hdhfd.heads, ide->hdhfd.secspertrack);
@@ -1264,10 +1455,16 @@ int gayle_add_ide_unit (int ch, char *path, int blocksize, int readonly,
     return 1;
 }
 
+int gayle_add_pcmcia_sram_unit (char *path, int readonly)
+{
+    return initpcmcia (path, readonly);
+}
+
 static void initide (void)
 {
     int i;
 
+    alloc_ide_mem ();
     if (savestate_state == STATE_RESTORE)
        return;
     ide_error = 1;
@@ -1276,12 +1473,12 @@ static void initide (void)
     ide_lcyl = ide_hcyl = ide_devcon = ide_feat = 0;
     ide_drv = 0;
     ide_splitter = 0;
-    if (idedrive[2].hdhfd.size) {
+    if (idedrive[2]->hdhfd.size) {
        ide_splitter = 1;
        write_log ("IDE splitter enabled\n");
     }
     for (i = 0; i < 4; i++)
-       idedrive[i].num = i;
+       idedrive[i]->num = i;
     gayle_irq = gayle_intena = 0;
     if (currprefs.cs_ide == 2)
        gayle_intena = 0xff;
@@ -1291,6 +1488,7 @@ static void initide (void)
 void gayle_reset (int hardreset)
 {
     static char bankname[100];
+
     initide ();
     if (hardreset) {
        ramsey_config = 0;
@@ -1306,8 +1504,6 @@ void gayle_reset (int hardreset)
        ncr_reset ();
     }
     gayle_bank.name = bankname;
-
-    initpcmcia();
 }
 
 uae_u8 *restore_gayle (uae_u8 *src)
@@ -1336,10 +1532,13 @@ uae_u8 *save_gayle (int *len)
 uae_u8 *save_ide (int num, int *len)
 {
     uae_u8 *dstbak, *dst;
-    struct ide_hdf *ide = &idedrive[num];
+    struct ide_hdf *ide;
 
+    if (idedrive[num] == NULL)
+       return NULL;
     if (currprefs.cs_ide <= 0)
        return NULL;
+    ide = idedrive[num];
     if (ide->hdhfd.size == 0)
        return NULL;
     dstbak = dst = (uae_u8*)malloc (1000);
@@ -1381,8 +1580,9 @@ uae_u8 *restore_ide (uae_u8 *src)
     char *path;
     struct ide_hdf *ide;
 
+    alloc_ide_mem ();
     num = restore_u32 ();
-    ide = &idedrive[num];
+    ide = idedrive[num];
     size = restore_u64 ();
     path = restore_string ();
     blocksize = restore_u32 ();
index 8a5c67f67b54968c8189b25dd06ae5bf276c64e2..1ed0f596c5e0441ff5a15cdc135aacc6cb6b2919 100644 (file)
@@ -45,12 +45,12 @@ struct hd_hardfiledata {
     struct hardfiledata hfd;
     int bootpri;
     uae_u64 size;
-    int cyls;
-    int heads;
-    int secspertrack;
-    int cyls_def;
-    int secspertrack_def;
-    int heads_def;
+    unsigned int cyls;
+    unsigned int heads;
+    unsigned int secspertrack;
+    unsigned int cyls_def;
+    unsigned int secspertrack_def;
+    unsigned int heads_def;
     char *path;
     int ansi_version;
 };
index a717c5df825683184e8221421a7b69a72df1a694..cc63e575200593dce0e87aaf5f43c72c8ddb2e24 100644 (file)
@@ -4,4 +4,9 @@ extern void gayle_hsync(void);
 extern int gayle_add_ide_unit(int ch, char *path, int blocksize, int readonly,
                       char *devname, int sectors, int surfaces, int reserved,
                       int bootpri, char *filesys);
-extern void gayle_free_ide_units(void);
+extern int gayle_add_pcmcia_sram_unit(char *path, int readonly);
+extern void gayle_free_units(void);
+extern void rethink_gayle (void);
+
+#define PCMCIA_COMMON_START 0x600000
+#define PCMCIA_COMMON_SIZE 0x400000
index a05b2e6bdde21faeb2dc02b65b6574b6f29536d1..aab37ee43356bced8e8789880efa1c71aebc5413 100644 (file)
@@ -1962,6 +1962,7 @@ static int switchdevice (struct uae_input_device *id, int num, int button)
     int i;
     int ismouse = 0;
     int newport = 0;
+    int flags = 0;
     char *name = NULL;
 
     if (num >= 4)
@@ -1972,23 +1973,28 @@ static int switchdevice (struct uae_input_device *id, int num, int button)
        if (id == &joysticks[i]) {
            name = idev[IDTYPE_JOYSTICK].get_uniquename (i);
            newport = num == 0 ? 1 : 0;
-           if (currprefs.input_selected_setting && idev[IDTYPE_JOYSTICK].get_flags (i))
-               return 0;
+           flags = idev[IDTYPE_JOYSTICK].get_flags (i);
        }
        if (id == &mice[i]) {
            ismouse = 1;
            name = idev[IDTYPE_MOUSE].get_uniquename (i);
            newport = num == 0 ? 0 : 1;
-           if (currprefs.input_selected_setting && idev[IDTYPE_MOUSE].get_flags (i))
-               return 0;
+           flags = idev[IDTYPE_MOUSE].get_flags (i);
        }
     }
     if (!name)
        return 0;
-    write_log ("inputdevice change request '%s':%d->%d\n", name, num, newport);
     if (!currprefs.input_selected_setting) {
        if (num == 0 || num == 1) {
+           int om = jsem_ismouse (num, &currprefs);
+           int om1 = jsem_ismouse (0, &currprefs);
+           int om2 = jsem_ismouse (1, &currprefs);
+           if ((om1 >= 0 || om2 >= 0) && ismouse)
+               return 0;
+           if (flags)
+               return 0;
            if (name) {
+               write_log ("inputdevice change '%s':%d->%d\n", name, num, newport);
                inputdevice_joyport_config (&changed_prefs, name, newport, 2);
                inputdevice_copyconfig (&changed_prefs, &currprefs);
                return 1;
@@ -2000,18 +2006,16 @@ static int switchdevice (struct uae_input_device *id, int num, int button)
        int i, j, k, evt;
        struct inputevent *ie, *ie2;
 
+       if (flags)
+           return 0;
        if (oldport <= 0)
            return 0;
        newport++;
-       /* do not switch if "supermouse" mouse is already selected
-        * in same port and new device is also mouse.
-        */
+       /* do not switch if switching mouse and any "supermouse" mouse enabled */
        if (ismouse) {
            for (i = 0; i < MAX_INPUT_SETTINGS + 1; i++) {
-               if (getoldport (&mice[i]) == newport && mice[i].enabled) {
-                   if (idev[IDTYPE_MOUSE].get_flags (i))
-                       return 0;
-               }
+               if (mice[i].enabled && idev[IDTYPE_MOUSE].get_flags (i))
+                   return 0;
            }
        }
        for (i = 0; i < MAX_INPUT_SETTINGS + 1; i++) {
@@ -2050,6 +2054,7 @@ static int switchdevice (struct uae_input_device *id, int num, int button)
                }
            }
        }
+        write_log ("inputdevice change '%s':%d->%d\n", name, num, newport);
        inputdevice_copyconfig (&currprefs, &changed_prefs);
        inputdevice_copyconfig (&changed_prefs, &currprefs);
        return 1;
diff --git a/main.c b/main.c
index bcc4e99807a633a90752ce19a3472f9fb2799f21..412b436cbecede8282e5072c5ba2d485d2125fc1 100644 (file)
--- a/main.c
+++ b/main.c
@@ -704,11 +704,6 @@ static void real_main2 (int argc, char **argv)
        }
     }
 
-#ifdef JIT
-    if (!((currprefs.cpu_model >= 68020) && (currprefs.address_space_24 == 0) && (currprefs.cachesize)))
-       canbang = 0;
-#endif
-
     logging_init (); /* Yes, we call this twice - the first case handles when the user has loaded
                       a config using the cmd-line.  This case handles loads through the GUI. */
 
@@ -716,6 +711,11 @@ static void real_main2 (int argc, char **argv)
     init_shm ();
 #endif
 
+#ifdef JIT
+    if (!((currprefs.cpu_model >= 68020) && (currprefs.address_space_24 == 0) && (currprefs.cachesize)))
+       canbang = 0;
+#endif
+
     fixup_prefs (&currprefs);
     changed_prefs = currprefs;
     /* force sound settings change */
index a8c03071d0f4107a43f48d05b3fa0de9f327f824..49410e3f74ef4c8407d277eb2b50dace6651c8b9 100644 (file)
--- a/memory.c
+++ b/memory.c
@@ -27,6 +27,7 @@
 #include "arcadia.h"
 #include "enforcer.h"
 #include "a2091.h"
+#include "gayle.h"
 
 int canbang;
 int candirect = -1;
@@ -1983,7 +1984,7 @@ addrbank custmem2_bank = {
 };
 
 #define fkickmem_size 524288
-void a3000_fakekick(int map)
+void a3000_fakekick (int map)
 {
     static uae_u8 *blop;
     static int f0;
@@ -1998,11 +1999,11 @@ void a3000_fakekick(int map)
                memcpy (kickmemory, fkickmemory, fkickmem_size / 2);
                memcpy (kickmemory + fkickmem_size / 2, fkickmemory, fkickmem_size / 2);
                if (!extendedkickmemory) {
-                   if (!need_uae_boot_rom()) {
+                   if (need_uae_boot_rom() != 0xf00000) {
                        extendedkickmem_size = 65536;
                        extendedkickmem_mask = extendedkickmem_size - 1;
-                       extendedkickmemory = (uae_u8 *) mapped_malloc (extendedkickmem_size, "rom_f0");
-                       extendedkickmem_bank.baseaddr = (uae_u8 *) extendedkickmemory;
+                       extendedkickmemory = mapped_malloc (extendedkickmem_size, "rom_f0");
+                       extendedkickmem_bank.baseaddr = extendedkickmemory;
                        memcpy(extendedkickmemory, fkickmemory + fkickmem_size / 2, 65536);
                        map_banks(&extendedkickmem_bank, 0xf0, 1, 1);
                        f0 = 1;
@@ -2779,20 +2780,22 @@ void memory_reset (void)
            t = 0x10;
        map_banks (&bogomem_bank, 0xC0, t, 0);
     }
-    if (currprefs.cs_ide) {
-       if (currprefs.cs_ide == 1) {
+    if (currprefs.cs_ide || currprefs.cs_pcmcia) {
+       if (currprefs.cs_ide == 1 || currprefs.cs_pcmcia) {
            map_banks (&gayle_bank, 0xD8, 6, 0);
            map_banks (&gayle2_bank, 0xDD, 2, 0);
-           //map_banks (&gayle_attr_bank, 0xA0, 8, 0); // only if PCMCIA card inserted
-           //map_banks (&gayle_common_bank, 0x60, 64, 0); // only if PCMCIA card inserted
        }
-       if (currprefs.cs_ide == 2 || currprefs.cs_mbdmac == 2) {
-           map_banks (&gayle_bank, 0xDD, 1, 0);
+       if (currprefs.cs_pcmcia) {
+           map_banks (&gayle_attr_bank, 0xA0, 8, 0);
+           if (currprefs.chipmem_size <= 4 * 1024 * 1024 || currprefs.fastmem_size <= 4 * 1024 * 1024)
+               map_banks (&gayle_common_bank, PCMCIA_COMMON_START >> 16, PCMCIA_COMMON_SIZE >> 16, 0);
        }
-       if (currprefs.cs_ide < 0) {
+       if (currprefs.cs_ide == 2 || currprefs.cs_mbdmac == 2)
+           map_banks (&gayle_bank, 0xDD, 1, 0);
+       if (currprefs.cs_ide < 0 && !currprefs.cs_pcmcia)
            map_banks (&gayle_bank, 0xD8, 6, 0);
+       if (currprefs.cs_ide < 0)
            map_banks (&gayle_bank, 0xDD, 1, 0);
-       }
     }
     if (currprefs.cs_rtc || currprefs.cs_cdtvram)
        map_banks (&clock_bank, 0xDC, 1, 0);
index 309ee87d2db427d58fed29b9cf27c16d733f2d9f..d6887eb2444aea05741ae6eebf46f8f5e06cb9b2 100644 (file)
@@ -456,10 +456,14 @@ void my_kbd_handler (int keyboard, int scancode, int newstate)
            screenshot (specialpressed() ? 1 : 0, 1);
            break;
            case DIK_PAUSE:
-           if (specialpressed ())
-               code = AKS_WARP;
-           else
+           if (specialpressed ()) {
+               if (shiftpressed ())
+                   code = AKS_IRQ7;
+               else
+                   code = AKS_WARP;
+           } else {
                code = AKS_PAUSE;
+           }
            break;
            case DIK_SCROLL:
            code = AKS_INHIBITSCREEN;
index e9edde9e83827cd4168452234c805182c7cb2a5e..345435151d12612fe5a46c88d3ba4d19de9d7075 100644 (file)
@@ -122,6 +122,7 @@ void preinit_shm (void)
     max_z3fastmem = (max_allowed_mman - (max_allowed_mman >> 3)) * 1024 * 1024;
 
     write_log ("Max Z3FastRAM %dM. Total physical RAM %uM\n", max_z3fastmem >> 20, totalphys64 >> 20);
+    canbang = 1;
 }
 
 int init_shm (void)
index cd559af7551ce94cbba4a482711f48631af100d5..d49f3aff876f5d36fa5064609317b6a45dc5c13f 100644 (file)
@@ -58,10 +58,10 @@ BEGIN
     GROUPBOX        "System ROM Settings",-1,5,0,290,74\r
     RTEXT           "Main ROM file:",IDC_ROMTEXT,10,15,75,10\r
     COMBOBOX        IDC_ROMFILE,89,12,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "...",IDC_KICKCHOOSER,280,10,10,15\r
+    PUSHBUTTON      "...",IDC_KICKCHOOSER,280,11,10,15\r
     RTEXT           "Extended ROM file:",IDC_ROMFILE2TEXT,10,35,75,10\r
-    COMBOBOX        IDC_ROMFILE2,89,31,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "...",IDC_ROMCHOOSER2,280,30,10,15\r
+    COMBOBOX        IDC_ROMFILE2,89,32,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "...",IDC_ROMCHOOSER2,280,31,10,15\r
     CONTROL         "MapROM emulation [] Creates a BlizKick-compatible memory area.",IDC_MAPROM,\r
                     "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,87,10\r
     CONTROL         "ShapeShifter support [] Patches the system ROM for ShapeShifter compatibility.",IDC_KICKSHIFTER,\r
@@ -69,10 +69,10 @@ BEGIN
     GROUPBOX        "Miscellaneous",-1,5,76,290,57\r
     RTEXT           "Cartridge ROM file:",IDC_FLASHTEXT2,8,93,75,10\r
     COMBOBOX        IDC_CARTFILE,89,90,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "...",IDC_CARTCHOOSER,280,90,10,15\r
+    PUSHBUTTON      "...",IDC_CARTCHOOSER,280,89,10,15\r
     RTEXT           "Flash RAM file:",IDC_FLASHTEXT,8,112,75,10\r
     EDITTEXT        IDC_FLASHFILE,89,110,185,13,ES_AUTOHSCROLL\r
-    PUSHBUTTON      "...",IDC_FLASHCHOOSER,280,110,10,15\r
+    PUSHBUTTON      "...",IDC_FLASHCHOOSER,280,109,10,15\r
 END\r
 \r
 IDD_DISPLAY DIALOGEX 0, 0, 300, 235\r
@@ -90,7 +90,7 @@ BEGIN
     CONTROL         "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,19,126,92,10\r
     LTEXT           "Refresh:",IDC_REFRESHTEXT,18,162,28,8\r
     CONTROL         "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,157,75,20\r
-    EDITTEXT        IDC_RATETEXT,127,161,77,12,ES_CENTER | ES_READONLY\r
+    EDITTEXT        IDC_RATETEXT,124,161,77,12,ES_CENTER | ES_READONLY\r
     GROUPBOX        "Centering",IDC_STATIC,221,73,61,49\r
     CONTROL         "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,87,49,10\r
     CONTROL         "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,103,49,10\r
@@ -102,8 +102,8 @@ BEGIN
     CONTROL         "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,84,207,101,20\r
     LTEXT           "FPS adj.:",IDC_REFRESH2TEXT,16,182,32,8\r
     CONTROL         "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,177,127,20\r
-    EDITTEXT        IDC_RATE2TEXT,178,181,26,12,ES_CENTER | ES_READONLY\r
-    COMBOBOX        IDC_RESOLUTIONDEPTH,135,27,46,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    EDITTEXT        IDC_RATE2TEXT,175,181,26,12,ES_CENTER | ES_READONLY\r
+    COMBOBOX        IDC_RESOLUTIONDEPTH,134,27,46,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
     CONTROL         "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,126,89,10\r
     COMBOBOX        IDC_SCREENMODE_NATIVE,100,85,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
     COMBOBOX        IDC_SCREENMODE_RTG,100,103,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
@@ -121,28 +121,28 @@ EXSTYLE WS_EX_CONTEXTHELP
 FONT 8, "MS Sans Serif", 0, 0, 0x1\r
 BEGIN\r
     GROUPBOX        "Memory Settings",-1,14,7,274,91\r
-    RTEXT           "Chip:",-1,24,31,20,10,SS_CENTERIMAGE\r
+    RTEXT           "Chip:",-1,24,26,20,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_CHIPMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,22,50,20\r
-    EDITTEXT        IDC_CHIPRAM,105,26,30,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "Slow:",-1,149,31,20,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_CHIPRAM,105,25,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Slow:",-1,149,26,20,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_SLOWMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,22,60,20\r
     EDITTEXT        IDC_SLOWRAM,243,25,30,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "Fast:",IDC_FASTTEXT,24,52,20,10,SS_CENTERIMAGE\r
+    RTEXT           "Fast:",IDC_FASTTEXT,24,51,20,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,47,50,20\r
-    EDITTEXT        IDC_FASTRAM,105,53,30,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "Z3 Fast:",IDC_Z3TEXT,139,52,30,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_FASTRAM,105,50,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Z3 Fast:",IDC_Z3TEXT,139,51,30,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_Z3FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,47,60,20\r
-    EDITTEXT        IDC_Z3FASTRAM,243,52,30,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "RTG: [] Graphics card memory. Required for RTG (Picasso96) emulation.",IDC_GFXCARDTEXT,81,77,90,10,SS_NOTIFY | SS_CENTERIMAGE\r
+    EDITTEXT        IDC_Z3FASTRAM,243,50,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "RTG: [] Graphics card memory. Required for RTG (Picasso96) emulation.",IDC_GFXCARDTEXT,79,76,90,10,SS_NOTIFY | SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_P96MEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,72,60,20\r
     EDITTEXT        IDC_P96RAM,243,75,30,12,ES_CENTER | ES_READONLY\r
     GROUPBOX        "Advanced Memory Settings",-1,13,104,275,65\r
-    RTEXT           "Motherboard RAM (Low area):",-1,39,122,129,10,SS_CENTERIMAGE\r
-    CONTROL         "",IDC_MBMEM1,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,117,59,20\r
-    EDITTEXT        IDC_MBRAM1,243,121,30,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "Motherboard RAM (High area):",-1,39,144,127,10,SS_CENTERIMAGE\r
-    CONTROL         "",IDC_MBMEM2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,139,59,20\r
-    EDITTEXT        IDC_MBRAM2,243,142,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Motherboard RAM (Low area):",-1,39,123,129,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_MBMEM1,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,119,59,20\r
+    EDITTEXT        IDC_MBRAM1,243,122,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Motherboard RAM (High area):",-1,39,148,129,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_MBMEM2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,144,59,20\r
+    EDITTEXT        IDC_MBRAM2,243,147,30,12,ES_CENTER | ES_READONLY\r
 END\r
 \r
 IDD_CPU DIALOGEX 0, 0, 300, 226\r
@@ -155,7 +155,7 @@ BEGIN
     CONTROL         "68020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,44,63,10\r
     CONTROL         "68030",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,58,64,10\r
     CONTROL         "68040",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,72,66,10\r
-    CONTROL         "68060",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,85,66,10\r
+    CONTROL         "68060",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,86,66,10\r
     CONTROL         "More compatible [] Emulate 68000's prefetch registers. More compatible but slower.",IDC_COMPATIBLE,\r
                     "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,10,114,73,8\r
     CONTROL         "JIT [] Enable just-in-time CPU emulator. Significantly increases the speed of the CPU emulation. Requires 68020 or higher CPU.",IDC_JITENABLE,\r
@@ -165,7 +165,7 @@ BEGIN
                     "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,95,18,195,10\r
     CONTROL         "Match A500 speed",IDC_CS_68000,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,32,195,10\r
     CONTROL         "Adjustable between CPU and chipset",IDC_CS_ADJUSTABLE,\r
-                    "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,47,195,10\r
+                    "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,46,195,10\r
     RTEXT           "CPU",IDC_CS_CPU_TEXT,96,73,15,10,SS_CENTERIMAGE | WS_TABSTOP\r
     CONTROL         "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,68,67,20\r
     LTEXT           "Chipset",IDC_CS_CHIPSET_TEXT,182,73,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP\r
@@ -177,20 +177,20 @@ BEGIN
     EDITTEXT        IDC_CACHETEXT,255,113,30,12,ES_CENTER | ES_READONLY\r
     CONTROL         "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,141,63,10\r
     CONTROL         "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,63,10\r
-    CONTROL         "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,168,62,10\r
+    CONTROL         "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,169,62,10\r
     CONTROL         "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,168,141,62,10\r
     CONTROL         "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,168,155,62,10\r
     CONTROL         "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,235,141,52,10\r
     CONTROL         "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,235,155,52,10\r
-    CONTROL         "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,235,168,52,10\r
+    CONTROL         "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,235,169,52,10\r
     CONTROL         "More compatible [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU,\r
-                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,206,73,10\r
-    GROUPBOX        "FPU",IDC_STATIC,6,144,81,76,BS_LEFT\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,210,73,10\r
+    GROUPBOX        "FPU",IDC_STATIC,6,146,81,79,BS_LEFT\r
     CONTROL         "24-bit addressing",IDC_COMPATIBLE24,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,10,100,73,8\r
-    CONTROL         "None",IDC_FPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,154,63,10\r
-    CONTROL         "68881",IDC_FPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,166,63,10\r
-    CONTROL         "68882",IDC_FPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,179,63,10\r
-    CONTROL         "CPU internal",IDC_FPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,192,63,10\r
+    CONTROL         "None",IDC_FPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,157,63,10\r
+    CONTROL         "68881",IDC_FPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,171,63,10\r
+    CONTROL         "68882",IDC_FPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,185,63,10\r
+    CONTROL         "CPU internal",IDC_FPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,199,63,10\r
 END\r
 \r
 IDD_FLOPPY DIALOGEX 0, 0, 300, 240\r
@@ -198,42 +198,42 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD
 FONT 8, "MS Sans Serif", 0, 0, 0x0\r
 BEGIN\r
     COMBOBOX        IDC_DF0TEXT,2,22,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
-    COMBOBOX        IDC_DF0TYPE,123,6,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF0TYPE,115,6,57,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     RTEXT           "Write-protected",IDC_STATIC,174,8,59,10,SS_CENTERIMAGE\r
     CONTROL         "",IDC_DF0WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,4,10,15\r
     PUSHBUTTON      "Eject",IDC_EJECT0,253,4,30,15\r
     PUSHBUTTON      "...",IDC_DF0,287,4,10,15\r
     COMBOBOX        IDC_DF1TEXT,2,58,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
-    COMBOBOX        IDC_DF1TYPE,123,42,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF1TYPE,115,42,57,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     RTEXT           "Write-protected",IDC_STATIC,174,43,59,10,SS_CENTERIMAGE\r
     CONTROL         "",IDC_DF1WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,40,10,15\r
     PUSHBUTTON      "Eject",IDC_EJECT1,253,40,30,15\r
     PUSHBUTTON      "...",IDC_DF1,287,40,10,15\r
     COMBOBOX        IDC_DF2TEXT,2,93,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
-    COMBOBOX        IDC_DF2TYPE,123,77,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF2TYPE,115,77,57,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     RTEXT           "Write-protected",IDC_STATIC,174,77,59,10,SS_CENTERIMAGE\r
     CONTROL         "",IDC_DF2WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,75,9,15\r
     PUSHBUTTON      "Eject",IDC_EJECT2,253,75,30,15\r
     PUSHBUTTON      "...",IDC_DF2,287,75,10,15\r
     COMBOBOX        IDC_DF3TEXT,2,128,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
-    COMBOBOX        IDC_DF3TYPE,123,112,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF3TYPE,115,112,57,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     RTEXT           "Write-protected",IDC_STATIC,174,113,59,10,SS_CENTERIMAGE\r
     CONTROL         "",IDC_DF3WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,111,9,15\r
     PUSHBUTTON      "Eject",IDC_EJECT3,253,110,30,15\r
     PUSHBUTTON      "...",IDC_DF3,287,109,10,15\r
     GROUPBOX        "New Floppy Disk Image",IDC_SETTINGSTEXT,5,183,289,49\r
-    COMBOBOX        IDC_FLOPPYTYPE,16,196,51,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "Create Standard Disk [] Creates a standard 880 or 1760 KB ADF disk image.",IDC_CREATE,76,196,97,15\r
+    COMBOBOX        IDC_FLOPPYTYPE,16,197,51,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Create Standard Disk [] Creates a standard 880 or 1760 KB ADF disk image.",IDC_CREATE,77,196,97,15\r
     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\r
     GROUPBOX        "Floppy Drive Emulation Speed",IDC_SETTINGSTEXT2,5,144,289,35\r
-    CONTROL         "",IDC_FLOPPYSPD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,32,152,116,20\r
-    EDITTEXT        IDC_FLOPPYSPDTEXT,169,155,107,12,ES_CENTER | ES_READONLY\r
+    CONTROL         "",IDC_FLOPPYSPD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,32,154,116,20\r
+    EDITTEXT        IDC_FLOPPYSPDTEXT,183,157,101,12,ES_CENTER | ES_READONLY\r
     PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE0,43,5,70,15,NOT WS_VISIBLE\r
     PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE1,43,40,70,15,NOT WS_VISIBLE\r
     PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE2,43,75,70,15,NOT WS_VISIBLE\r
     PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE3,43,110,70,15,NOT WS_VISIBLE\r
-    EDITTEXT        IDC_CREATE_NAME,75,215,98,13,ES_AUTOHSCROLL\r
-    RTEXT           "Disk label:",IDC_STATIC,14,216,52,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_CREATE_NAME,77,215,97,13,ES_AUTOHSCROLL\r
+    RTEXT           "Disk label:",IDC_STATIC,15,216,52,10,SS_CENTERIMAGE\r
     CONTROL         "DF0:",IDC_DF0ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,6,34,15\r
     CONTROL         "DF1:",IDC_DF1ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,41,34,15\r
     CONTROL         "DF2:",IDC_DF2ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,76,34,15\r
@@ -249,8 +249,8 @@ BEGIN
     PUSHBUTTON      "Add &Directory or Archive...",IDC_NEW_FS,10,186,103,15\r
     PUSHBUTTON      "Add &Hardfile...",IDC_NEW_HF,130,186,74,15\r
     PUSHBUTTON      "Add Ha&rd Drive...",IDC_NEW_HD,220,186,75,15\r
-    PUSHBUTTON      "Remove",IDC_REMOVE,232,207,60,15\r
-    PUSHBUTTON      "&Properties",IDC_EDIT,232,230,60,15\r
+    PUSHBUTTON      "Remove",IDC_REMOVE,235,210,60,15\r
+    PUSHBUTTON      "&Properties",IDC_EDIT,235,227,60,15\r
     CONTROL         "Add PC drives at startup",IDC_MAPDRIVES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,209,100,10\r
     CONTROL         "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,209,119,10\r
     CONTROL         "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,220,121,10\r
@@ -270,28 +270,28 @@ BEGIN
     CONTROL         "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,102,10\r
     CONTROL         "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,102,10\r
     CONTROL         "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,101,10\r
-    GROUPBOX        "Volume",IDC_STATIC,131,36,164,31\r
+    GROUPBOX        "Volume",IDC_STATIC,132,36,164,31\r
     CONTROL         "",IDC_SOUNDVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,44,105,20\r
     EDITTEXT        IDC_SOUNDVOLUME2,247,47,40,12,ES_CENTER | ES_READONLY\r
     GROUPBOX        "Sound Buffer Size",IDC_STATIC,132,73,164,31\r
-    CONTROL         "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,138,81,106,19\r
-    EDITTEXT        IDC_SOUNDBUFFERMEM,248,84,40,12,ES_CENTER | ES_READONLY\r
+    CONTROL         "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,81,105,19\r
+    EDITTEXT        IDC_SOUNDBUFFERMEM,247,84,40,12,ES_CENTER | ES_READONLY\r
     GROUPBOX        "Settings",IDC_SOUNDINTERPOLATION2,6,114,290,60\r
-    LTEXT           "Frequency:",IDC_SOUNDFREQTXT,11,147,53,8,SS_CENTERIMAGE\r
-    COMBOBOX        IDC_SOUNDFREQ,13,156,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Frequency:",IDC_SOUNDFREQTXT,11,148,53,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDFREQ,13,157,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
     LTEXT           "Audio filter:",IDC_SOUNDFILTERTXT,209,148,77,8,SS_CENTERIMAGE\r
     COMBOBOX        IDC_SOUNDFILTER,209,157,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     LTEXT           "Channel mode:",IDC_SOUNDSTEREOTXT,11,124,57,8,SS_CENTERIMAGE\r
     COMBOBOX        IDC_SOUNDSTEREO,13,133,122,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     LTEXT           "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,75,8,SS_CENTERIMAGE\r
-    COMBOBOX        IDC_SOUNDINTERPOLATION,209,132,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_SOUNDINTERPOLATION,209,133,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     LTEXT           "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,63,8,SS_CENTERIMAGE\r
     COMBOBOX        IDC_SOUNDSTEREOSEP,142,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     LTEXT           "Stereo delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE\r
     COMBOBOX        IDC_SOUNDSTEREOMIX,142,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     GROUPBOX        "Floppy Drive Sound Emulation",IDC_STATIC,6,177,290,46\r
     CONTROL         "",IDC_SOUNDDRIVEVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,14,185,107,19\r
-    EDITTEXT        IDC_SOUNDDRIVEVOLUME2,124,191,40,12,ES_CENTER | ES_READONLY\r
+    EDITTEXT        IDC_SOUNDDRIVEVOLUME2,124,187,40,12,ES_CENTER | ES_READONLY\r
     COMBOBOX        IDC_SOUNDDRIVE,237,187,46,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     COMBOBOX        IDC_SOUNDDRIVESELECT,18,205,265,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     COMBOBOX        IDC_SOUNDSWAP,73,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
@@ -306,11 +306,11 @@ BEGIN
     CONTROL         "",IDC_CONFIGTREE,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,6,3,289,153,WS_EX_CLIENTEDGE\r
     RTEXT           "Name:",IDC_STATIC,4,161,40,15,SS_CENTERIMAGE\r
     EDITTEXT        IDC_EDITNAME,48,162,146,13,ES_AUTOHSCROLL\r
-    RTEXT           "Description:",IDC_STATIC,4,183,41,15,SS_CENTERIMAGE\r
+    RTEXT           "Description:",IDC_STATIC,2,182,41,15,SS_CENTERIMAGE\r
     EDITTEXT        IDC_EDITDESCRIPTION,48,183,146,13,ES_AUTOHSCROLL\r
     RTEXT           "Link:",IDC_STATIC,4,204,40,15,SS_CENTERIMAGE\r
     COMBOBOX        IDC_CONFIGLINK,48,205,93,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
-    CONTROL         "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,206,48,10\r
+    CONTROL         "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,207,48,10\r
     EDITTEXT        IDC_EDITPATH,199,161,49,15,ES_AUTOHSCROLL | WS_DISABLED\r
     CONTROL         "Autoload",IDC_CONFIGAUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,253,163,42,10\r
     GROUPBOX        "Additional Information",IDC_STATIC,199,179,96,38,BS_LEFT\r
@@ -330,7 +330,7 @@ BEGIN
     GROUPBOX        "Parallel Port",IDC_SERPARFRAME,5,2,291,68\r
     RTEXT           "Printer:",IDC_STATIC,12,15,25,15,SS_CENTERIMAGE\r
     COMBOBOX        IDC_PRINTERLIST,49,15,153,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "Flush print job",IDC_FLUSHPRINTER,220,14,58,12\r
+    PUSHBUTTON      "Flush print job",IDC_FLUSHPRINTER,220,15,58,12\r
     CONTROL         "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,79,12\r
     CONTROL         "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,95,33,110,12\r
     RTEXT           "Autoflush [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE\r
@@ -339,8 +339,8 @@ BEGIN
     EDITTEXT        IDC_PS_PARAMS,124,50,165,12,ES_AUTOHSCROLL\r
     GROUPBOX        "Serial Port",IDC_SERIALFRAME,4,72,292,48\r
     COMBOBOX        IDC_SERIAL,49,84,232,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
-    CONTROL         "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,102,48,13\r
-    CONTROL         "RTS/CTS",IDC_SER_CTSRTS,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,65,102,55,12\r
+    CONTROL         "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,15,103,48,12\r
+    CONTROL         "RTS/CTS",IDC_SER_CTSRTS,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,75,103,55,12\r
     GROUPBOX        "MIDI",IDC_MIDIFRAME,4,123,292,33\r
     RTEXT           "Out:",IDC_MIDI,10,134,34,15,SS_CENTERIMAGE\r
     COMBOBOX        IDC_MIDIOUTLIST,50,134,95,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
@@ -354,8 +354,8 @@ BEGIN
     RTEXT           "Port 1:",IDC_STATIC,11,194,25,15,SS_CENTERIMAGE\r
     LTEXT           "X-Arcade layout information []#1",IDC_STATIC,16,213,106,15,SS_NOTIFY | SS_CENTERIMAGE\r
     CONTROL         "Direct []Use when emulating serial-link games on two PCs running WinUAE",IDC_SER_DIRECT,\r
-                    "Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,132,103,65,12\r
-    CONTROL         "uaeserial.device",IDC_UAESERIAL,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,207,103,78,13\r
+                    "Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,135,103,65,12\r
+    CONTROL         "uaeserial.device",IDC_UAESERIAL,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,200,103,78,12\r
 END\r
 \r
 IDD_CONTRIBUTORS DIALOGEX 0, 0, 411, 242\r
@@ -408,20 +408,20 @@ BEGIN
     GROUPBOX        "Logging",IDC_STATIC,97,140,195,25\r
     CONTROL         "Create log file",IDC_CREATELOGFILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,151,72,10\r
     CONTROL         "Illegal memory accesses",IDC_ILLEGAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,189,151,95,10\r
-    GROUPBOX        "State Files",IDC_STATIC,98,165,195,69\r
-    PUSHBUTTON      "Load state...",IDC_DOLOADSTATE,105,182,49,14\r
+    GROUPBOX        "State Files",IDC_STATIC,98,167,195,68\r
+    PUSHBUTTON      "Load state...",IDC_DOLOADSTATE,105,180,49,14\r
     PUSHBUTTON      "Save state...",IDC_DOSAVESTATE,105,208,49,14\r
-    CONTROL         "Enable state recording",IDC_STATE_CAPTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,188,181,88,10\r
+    CONTROL         "Enable state recording",IDC_STATE_CAPTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,182,88,10\r
     RTEXT           "Recording rate (seconds):",IDC_STATIC,157,199,86,10,SS_CENTERIMAGE | WS_TABSTOP\r
     COMBOBOX        IDC_STATE_RATE,248,197,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
-    RTEXT           "Recording buffer (MB):",IDC_STATIC,157,219,83,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    RTEXT           "Recording buffer (MB):",IDC_STATIC,160,219,83,10,SS_CENTERIMAGE | WS_TABSTOP\r
     COMBOBOX        IDC_STATE_BUFFERSIZE,248,217,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
     CONTROL         "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,79,117,10\r
     CONTROL         "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,66,115,10\r
     CONTROL         "USB mode",IDC_KBLED_USB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,216,64,10\r
     COMBOBOX        IDC_SCSIMODE,92,51,64,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     COMBOBOX        IDC_LANGUAGE,103,121,179,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
-    GROUPBOX        "Language",IDC_STATIC,7,112,285,25\r
+    GROUPBOX        "Language",IDC_STATIC,7,113,285,25\r
     CONTROL         "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,92,120,10\r
     CONTROL         "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,79,119,10\r
     CONTROL         "uaenet.device",IDC_SANA2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,92,94,10\r
@@ -518,30 +518,30 @@ BEGIN
     CONTROL         "AGA [] Advanced Graphics Architecture chipset. A1200, A4000 and CD32.",IDC_AGA,\r
                     "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,26,51,10\r
     CONTROL         "NTSC [] North American and Japanese display standard, 60Hz refresh rate. Other countries use PAL (50Hz. display refresh rate)",IDC_NTSC,\r
-                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,101,58,50,10\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,58,50,10\r
     GROUPBOX        "Options",IDC_STATIC,168,11,114,89\r
     CONTROL         "Immediate Blitter [] Faster but less compatible blitter emulation.",IDC_BLITIMM,\r
-                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,30,96,10\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,179,33,96,10\r
     CONTROL         "Cycle-exact [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT,\r
-                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,43,100,10\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,179,46,100,10\r
     GROUPBOX        "Collision Level",IDC_STATIC,14,105,267,48\r
     CONTROL         "None [] Collision hardware emulation disabled.",IDC_COLLISION0,\r
-                    "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,59,10\r
+                    "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,37,121,59,10\r
     CONTROL         "Sprites only [] Emulate only sprite vs. sprite collisions.",IDC_COLLISION1,\r
-                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,62,10\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,137,62,10\r
     CONTROL         "Sprites and Sprites vs. Playfield [] Recommended collision emulation level.",IDC_COLLISION2,\r
-                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,121,161,10\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,121,161,10\r
     CONTROL         "Full [] 100% collision hardware emulation. Only very few games need this option. Slowest.",IDC_COLLISION3,\r
-                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,137,119,10\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,137,119,10\r
     GROUPBOX        "Sound Emulation",IDC_STATIC,13,159,268,65\r
-    CONTROL         "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,39,175,102,10\r
-    CONTROL         "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,190,91,10\r
-    CONTROL         "Emulated, 100% accurate",IDC_CS_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,205,95,10\r
+    CONTROL         "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,37,175,102,10\r
+    CONTROL         "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,190,91,10\r
+    CONTROL         "Emulated, 100% accurate",IDC_CS_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,205,95,10\r
     CONTROL         "Genlock connected [] Allow boot sequence to detect genlock. Genlock is not emulated.",IDC_GENLOCK,\r
-                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,56,100,10\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,179,59,100,10\r
     CONTROL         "Faster RTG [] Enables less accurate custom chipset emulation mode when Picasso96 is enabled.",IDC_FASTERRTG,\r
-                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,68,100,10\r
-    COMBOBOX        IDC_CS_EXT,101,80,49,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,179,72,100,10\r
+    COMBOBOX        IDC_CS_EXT,100,80,49,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     RTEXT           "Chipset Extra",IDC_STATIC,25,79,52,15,SS_CENTERIMAGE\r
 END\r
 \r
@@ -556,7 +556,7 @@ BEGIN
     EDITTEXT        IDC_CS_RTCADJUST,215,34,64,13,ES_AUTOHSCROLL\r
     GROUPBOX        "CIA-A TOD Clock Source",IDC_STATIC,9,56,275,29\r
     CONTROL         "Vertical Sync",IDC_CS_CIAA_TOD1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,22,68,63,10\r
-    CONTROL         "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,92,68,85,10\r
+    CONTROL         "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,93,68,85,10\r
     CONTROL         "Power Supply 60Hz",IDC_CS_CIAA_TOD3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,189,68,88,10\r
     CONTROL         "Boot ROM Mirror",IDC_CS_KSMIRROR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,95,80,10\r
     CONTROL         "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,95,88,10\r
@@ -577,8 +577,8 @@ BEGIN
     CONTROL         "DF0: ID Hardware",IDC_CS_DF0IDHW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,95,92,10\r
     CONTROL         "Agnus/Alice revision:",IDC_CS_AGNUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,210,81,10\r
     EDITTEXT        IDC_CS_AGNUSREV,232,208,45,13,ES_AUTOHSCROLL\r
-    CONTROL         "Denise/Lisa revision:",IDC_CS_DENISE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,226,81,10\r
-    EDITTEXT        IDC_CS_DENISEREV,232,225,45,13,ES_AUTOHSCROLL\r
+    CONTROL         "Denise/Lisa revision:",IDC_CS_DENISE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,223,81,10\r
+    EDITTEXT        IDC_CS_DENISEREV,232,222,45,13,ES_AUTOHSCROLL\r
     CONTROL         "A590/A2091 SCSI",IDC_CS_A2091,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,174,76,10\r
     CONTROL         "A4000T SCSI",IDC_CS_DMAC2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,174,88,10\r
     LTEXT           "A4091/A4000T SCSI not yet implemented.",IDC_STATIC,22,160,224,8,SS_CENTERIMAGE\r
@@ -593,26 +593,26 @@ IDD_AVIOUTPUT DIALOGEX 0, 0, 288, 203
 STYLE DS_LOCALEDIT | DS_SETFONT | DS_CONTROL | WS_CHILD\r
 FONT 8, "MS Sans Serif", 0, 0, 0x1\r
 BEGIN\r
-    GROUPBOX        "Output Properties",IDC_STATIC,5,8,274,118\r
-    EDITTEXT        IDC_AVIOUTPUT_FILETEXT,15,21,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE\r
-    PUSHBUTTON      "...",IDC_AVIOUTPUT_FILE,249,20,19,12\r
-    CONTROL         "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,39,11\r
-    CONTROL         "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,36,209,11\r
-    CONTROL         "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,39,11\r
-    CONTROL         "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,50,209,11\r
+    GROUPBOX        "Output Properties",IDC_STATIC,5,0,274,126\r
+    EDITTEXT        IDC_AVIOUTPUT_FILETEXT,15,15,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE\r
+    PUSHBUTTON      "...",IDC_AVIOUTPUT_FILE,249,15,19,12\r
+    CONTROL         "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,33,39,14\r
+    CONTROL         "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,34,209,13\r
+    CONTROL         "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,39,14\r
+    CONTROL         "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,51,209,13\r
     CONTROL         "Disable frame rate limit while recording",IDC_AVIOUTPUT_FRAMELIMITER,\r
                     "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,158,10\r
     CONTROL         "AVI output enabled",IDC_AVIOUTPUT_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,15,103,108,14\r
-    CONTROL         "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,133,103,66,14\r
+    CONTROL         "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,131,103,66,14\r
     CONTROL         "NTSC",IDC_AVIOUTPUT_NTSC,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,204,103,66,14\r
     CONTROL         "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,166,84,87,11\r
     LTEXT           "fps",IDC_AVIOUTPUT_FPS_STATIC,255,84,19,8\r
-    PUSHBUTTON      "Save screenshot",IDC_SCREENSHOT,16,141,76,14\r
+    PUSHBUTTON      "Save screenshot",IDC_SCREENSHOT,16,141,77,14\r
     GROUPBOX        "Ripper",IDC_STATIC,5,127,274,38\r
-    PUSHBUTTON      "Pro Wizard 1.62",IDC_PROWIZARD,100,141,76,14,WS_DISABLED\r
+    PUSHBUTTON      "Pro Wizard 1.62",IDC_PROWIZARD,104,141,77,14,WS_DISABLED\r
     CONTROL         "Sample ripper",IDC_SAMPLERIPPER_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,192,141,77,14\r
     GROUPBOX        "Input Recorder",IDC_STATIC,5,166,274,33\r
-    CONTROL         "Record",IDC_INPREC_RECORD,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,191,177,77,14\r
+    CONTROL         "Record",IDC_INPREC_RECORD,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,192,178,77,14\r
     CONTROL         "Playback",IDC_INPREC_PLAY,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,16,178,77,14\r
     CONTROL         "Alt. playback mode",IDC_INPREC_PLAYMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,103,180,78,10\r
     CONTROL         "Disable sound output while recording",IDC_AVIOUTPUT_NOSOUNDOUTPUT,\r
@@ -653,18 +653,18 @@ BEGIN
     COMBOBOX        IDC_FILTERMODE,62,15,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
     COMBOBOX        IDC_FILTERFILTER,128,15,81,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
     PUSHBUTTON      "Reset to defaults",IDC_FILTERDEFAULT,213,15,73,14\r
-    RTEXT           "Horiz. size:",-1,4,44,54,10,SS_CENTERIMAGE\r
+    RTEXT           "Horiz. size:",-1,7,44,54,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,37,152,19\r
-    EDITTEXT        IDC_FILTERHZV,253,40,34,12,ES_CENTER | ES_READONLY\r
-    RTEXT           "Vert. size:",-1,5,64,54,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_FILTERHZV,253,39,34,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Vert. size:",-1,7,64,54,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,57,152,19\r
     EDITTEXT        IDC_FILTERVZV,253,59,34,12,ES_CENTER | ES_READONLY\r
     RTEXT           "Horiz. position:",-1,5,84,55,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,77,151,19\r
     EDITTEXT        IDC_FILTERHOV,253,79,34,12,ES_CENTER | ES_READONLY\r
     RTEXT           "Vert. position:",-1,5,103,55,10,SS_CENTERIMAGE\r
-    CONTROL         "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,99,151,19\r
-    EDITTEXT        IDC_FILTERVOV,253,101,34,12,ES_CENTER | ES_READONLY\r
+    CONTROL         "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,97,151,19\r
+    EDITTEXT        IDC_FILTERVOV,253,99,34,12,ES_CENTER | ES_READONLY\r
     RTEXT           "Extra settings:",-1,27,133,57,10,SS_CENTERIMAGE\r
     CONTROL         "Slider1",IDC_FILTERXL,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,157,151,19\r
     EDITTEXT        IDC_FILTERXLV,253,159,34,12,ES_CENTER | ES_READONLY\r
@@ -710,7 +710,7 @@ BEGIN
     CONTROL         "Disable sound",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10\r
     GROUPBOX        "When Minimized",IDC_STATIC,199,7,92,73\r
     RTEXT           "Run at priority:",IDC_MINIMIZED_PRI,207,18,51,10,SS_CENTERIMAGE | WS_TABSTOP\r
-    COMBOBOX        IDC_MINIMIZED_PRIORITY,207,30,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_MINIMIZED_PRIORITY,207,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     CONTROL         "Pause emulation",IDC_MINIMIZED_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,50,69,10\r
     CONTROL         "Disable sound",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10\r
 END\r
@@ -720,9 +720,9 @@ STYLE DS_LOCALEDIT | DS_SETFONT | DS_SETFOREGROUND | DS_3DLOOK | DS_CONTROL | DS
 FONT 8, "MS Sans Serif", 0, 0, 0x0\r
 BEGIN\r
     CONTROL         "",IDC_DISKLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,4,6,292,196\r
-    PUSHBUTTON      "Remove floppy disk image",IDC_DISKLISTREMOVE,149,223,101,15\r
+    PUSHBUTTON      "Remove floppy disk image",IDC_DISKLISTREMOVE,156,223,101,15\r
     COMBOBOX        IDC_DISKTEXT,3,205,293,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
-    PUSHBUTTON      "Insert floppy disk image",IDC_DISKLISTINSERT,34,223,101,15\r
+    PUSHBUTTON      "Insert floppy disk image",IDC_DISKLISTINSERT,41,223,101,15\r
 END\r
 \r
 IDD_PANEL DIALOGEX 0, 0, 420, 278\r
@@ -760,7 +760,7 @@ BEGIN
     PUSHBUTTON      "...",IDC_PATHS_SAVESTATES,281,114,11,15\r
     LTEXT           "Videos:",IDC_PATHS_AVIOUTPUTL,14,132,260,8,SS_CENTERIMAGE\r
     EDITTEXT        IDC_PATHS_AVIOUTPUT,14,144,261,15,ES_AUTOHSCROLL\r
-    PUSHBUTTON      "...",IDC_PATHS_AVIOUTPUTS,282,144,11,15\r
+    PUSHBUTTON      "...",IDC_PATHS_AVIOUTPUTS,281,144,11,15\r
     LTEXT           "Saveimages:",IDC_PATHS_SAVEIMAGEL,14,163,260,8,SS_CENTERIMAGE\r
     EDITTEXT        IDC_PATHS_SAVEIMAGE,14,175,261,15,ES_AUTOHSCROLL\r
     PUSHBUTTON      "...",IDC_PATHS_SAVEIMAGES,281,175,11,15\r
@@ -782,7 +782,7 @@ BEGIN
     COMBOBOX        IDC_QUICKSTART_CONFIGURATION,59,31,233,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
     GROUPBOX        "Compatibility vs Required CPU Power ",IDC_QUICKSTART_COMPA,3,56,294,33\r
     RTEXT           "Best compatibility",IDC_STATIC,13,70,67,10,SS_CENTERIMAGE\r
-    CONTROL         "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,88,65,115,21\r
+    CONTROL         "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,95,65,115,21\r
     RTEXT           "Low compatibility",IDC_STATIC,215,70,63,10,SS_CENTERIMAGE\r
     GROUPBOX        "Host Configuration",IDC_QUICKSTART_HOST,3,91,294,33\r
     RTEXT           "Configuration:",IDC_STATIC,5,105,55,10,SS_CENTERIMAGE\r
@@ -903,8 +903,8 @@ IDI_PATHS               ICON                    "paths.ico"
 //\r
 \r
 VS_VERSION_INFO VERSIONINFO\r
- FILEVERSION 1,5,0,0\r
- PRODUCTVERSION 1,5,0,0\r
+ FILEVERSION 1,4,6,0\r
+ PRODUCTVERSION 1,4,6,0\r
  FILEFLAGSMASK 0x3fL\r
 #ifdef _DEBUG\r
  FILEFLAGS 0x1L\r
@@ -920,12 +920,12 @@ BEGIN
         BLOCK "040904b0"\r
         BEGIN\r
             VALUE "FileDescription", "WinUAE"\r
-            VALUE "FileVersion", "1.5.0"\r
+            VALUE "FileVersion", "1.4.6"\r
             VALUE "InternalName", "WinUAE"\r
-            VALUE "LegalCopyright", "© 1996-2007 under the GNU Public License (GPL)"\r
+            VALUE "LegalCopyright", "© 1996-2008 under the GNU Public License (GPL)"\r
             VALUE "OriginalFilename", "WinUAE.exe"\r
             VALUE "ProductName", "WinUAE"\r
-            VALUE "ProductVersion", "1.5.0"\r
+            VALUE "ProductVersion", "1.4.6"\r
         END\r
     END\r
     BLOCK "VarFileInfo"\r
diff --git a/od-win32/resources/winuae_old.rc b/od-win32/resources/winuae_old.rc
new file mode 100644 (file)
index 0000000..cd559af
--- /dev/null
@@ -0,0 +1,1353 @@
+// Microsoft Visual C++ generated resource script.\r
+//\r
+#include "resource."\r
+\r
+#define APSTUDIO_READONLY_SYMBOLS\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Generated from the TEXTINCLUDE 2 resource.\r
+//\r
+#include "afxres.h"\r\r
+/////////////////////////////////////////////////////////////////////////////\r
+#undef APSTUDIO_READONLY_SYMBOLS\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+// English (U.S.) resources\r
+\r
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r
+#ifdef _WIN32\r
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US\r
+#pragma code_page(1252)\r
+#endif //_WIN32\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Accelerator\r
+//\r
+\r
+IDR_DBGACCEL ACCELERATORS \r
+BEGIN\r
+    VK_F1,          ID_DBG_PAGE1,           VIRTKEY, NOINVERT\r
+    VK_F2,          ID_DBG_PAGE2,           VIRTKEY, NOINVERT\r
+    VK_F3,          ID_DBG_PAGE3,           VIRTKEY, NOINVERT\r
+    VK_F4,          ID_DBG_PAGE4,           VIRTKEY, NOINVERT\r
+    VK_F5,          ID_DBG_PAGE5,           VIRTKEY, NOINVERT\r
+    VK_F6,          ID_DBG_PAGE6,           VIRTKEY, NOINVERT\r
+    VK_F7,          ID_DBG_PAGE7,           VIRTKEY, NOINVERT\r
+    VK_F8,          ID_DBG_PAGE8,           VIRTKEY, NOINVERT\r
+    VK_F9,          ID_DBG_PAGE9,           VIRTKEY, NOINVERT\r
+    VK_DOWN,        IDC_DBG_MEMDOWN,        VIRTKEY, ALT, NOINVERT\r
+    VK_RIGHT,       IDC_DBG_MEMDOWNFAST,    VIRTKEY, ALT, NOINVERT\r
+    VK_UP,          IDC_DBG_MEMUP,          VIRTKEY, ALT, NOINVERT\r
+    VK_LEFT,        IDC_DBG_MEMUPFAST,      VIRTKEY, ALT, NOINVERT\r
+    "H",            IDC_DBG_HELP,           VIRTKEY, ALT, NOINVERT\r
+    "P",            IDC_DBG_MEMTOPC,        VIRTKEY, ALT, NOINVERT\r
+END\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Dialog\r
+//\r
+\r
+IDD_KICKSTART DIALOGEX 0, 0, 300, 176\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+EXSTYLE WS_EX_CONTEXTHELP\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "System ROM Settings",-1,5,0,290,74\r
+    RTEXT           "Main ROM file:",IDC_ROMTEXT,10,15,75,10\r
+    COMBOBOX        IDC_ROMFILE,89,12,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "...",IDC_KICKCHOOSER,280,10,10,15\r
+    RTEXT           "Extended ROM file:",IDC_ROMFILE2TEXT,10,35,75,10\r
+    COMBOBOX        IDC_ROMFILE2,89,31,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "...",IDC_ROMCHOOSER2,280,30,10,15\r
+    CONTROL         "MapROM emulation [] Creates a BlizKick-compatible memory area.",IDC_MAPROM,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,95,54,87,10\r
+    CONTROL         "ShapeShifter support [] Patches the system ROM for ShapeShifter compatibility.",IDC_KICKSHIFTER,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,54,87,10\r
+    GROUPBOX        "Miscellaneous",-1,5,76,290,57\r
+    RTEXT           "Cartridge ROM file:",IDC_FLASHTEXT2,8,93,75,10\r
+    COMBOBOX        IDC_CARTFILE,89,90,186,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "...",IDC_CARTCHOOSER,280,90,10,15\r
+    RTEXT           "Flash RAM file:",IDC_FLASHTEXT,8,112,75,10\r
+    EDITTEXT        IDC_FLASHFILE,89,110,185,13,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_FLASHCHOOSER,280,110,10,15\r
+END\r
+\r
+IDD_DISPLAY DIALOGEX 0, 0, 300, 235\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Screen",IDC_SCREENRESTEXT,12,0,270,67,BS_LEFT\r
+    RTEXT           "Full screen:",IDC_SELECTRESTEXT,15,17,40,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_DISPLAYSELECT,59,10,215,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_RESOLUTION,59,27,68,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_REFRESHRATE,187,27,87,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    EDITTEXT        IDC_XSIZE,59,48,48,12,ES_NUMBER\r
+    EDITTEXT        IDC_YSIZE,114,48,47,12,ES_NUMBER\r
+    GROUPBOX        "Settings",IDC_SETTINGSTEXT,12,73,199,125\r
+    CONTROL         "Correct aspect ratio",IDC_ASPECT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,19,126,92,10\r
+    LTEXT           "Refresh:",IDC_REFRESHTEXT,18,162,28,8\r
+    CONTROL         "Slider1",IDC_FRAMERATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,157,75,20\r
+    EDITTEXT        IDC_RATETEXT,127,161,77,12,ES_CENTER | ES_READONLY\r
+    GROUPBOX        "Centering",IDC_STATIC,221,73,61,49\r
+    CONTROL         "Horizontal",IDC_XCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,87,49,10\r
+    CONTROL         "Vertical",IDC_YCENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,103,49,10\r
+    GROUPBOX        "Line Mode",IDC_LINEMODE,222,126,61,73\r
+    CONTROL         "Normal",IDC_LM_NORMAL,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,231,142,44,10\r
+    CONTROL         "Double",IDC_LM_DOUBLED,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,158,45,10\r
+    CONTROL         "Scanlines",IDC_LM_SCANLINES,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,231,174,46,10\r
+    COMBOBOX        IDC_DA_MODE,20,211,58,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "",IDC_DA_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,84,207,101,20\r
+    LTEXT           "FPS adj.:",IDC_REFRESH2TEXT,16,182,32,8\r
+    CONTROL         "",IDC_FRAMERATE2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,47,177,127,20\r
+    EDITTEXT        IDC_RATE2TEXT,178,181,26,12,ES_CENTER | ES_READONLY\r
+    COMBOBOX        IDC_RESOLUTIONDEPTH,135,27,46,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Filtered low resolution",IDC_LORES_SMOOTHED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,126,89,10\r
+    COMBOBOX        IDC_SCREENMODE_NATIVE,100,85,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_SCREENMODE_RTG,100,103,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Native mode:",IDC_STATIC,19,85,59,15,SS_CENTERIMAGE\r
+    RTEXT           "Windowed:",IDC_WINDOWEDTEXT,15,51,40,8\r
+    RTEXT           "RTG mode:",IDC_STATIC,19,101,59,15,SS_CENTERIMAGE\r
+    PUSHBUTTON      "Reset to defaults",IDC_DA_RESET,212,211,73,14\r
+    RTEXT           "Resolution:",IDC_STATIC,27,140,59,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_LORES,100,140,102,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+END\r
+\r
+IDD_MEMORY DIALOGEX 0, 0, 300, 175\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+EXSTYLE WS_EX_CONTEXTHELP\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Memory Settings",-1,14,7,274,91\r
+    RTEXT           "Chip:",-1,24,31,20,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_CHIPMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,22,50,20\r
+    EDITTEXT        IDC_CHIPRAM,105,26,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Slow:",-1,149,31,20,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_SLOWMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,22,60,20\r
+    EDITTEXT        IDC_SLOWRAM,243,25,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Fast:",IDC_FASTTEXT,24,52,20,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,54,47,50,20\r
+    EDITTEXT        IDC_FASTRAM,105,53,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Z3 Fast:",IDC_Z3TEXT,139,52,30,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_Z3FASTMEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,47,60,20\r
+    EDITTEXT        IDC_Z3FASTRAM,243,52,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "RTG: [] Graphics card memory. Required for RTG (Picasso96) emulation.",IDC_GFXCARDTEXT,81,77,90,10,SS_NOTIFY | SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_P96MEM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,179,72,60,20\r
+    EDITTEXT        IDC_P96RAM,243,75,30,12,ES_CENTER | ES_READONLY\r
+    GROUPBOX        "Advanced Memory Settings",-1,13,104,275,65\r
+    RTEXT           "Motherboard RAM (Low area):",-1,39,122,129,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_MBMEM1,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,117,59,20\r
+    EDITTEXT        IDC_MBRAM1,243,121,30,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Motherboard RAM (High area):",-1,39,144,127,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_MBMEM2,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,180,139,59,20\r
+    EDITTEXT        IDC_MBRAM2,243,142,30,12,ES_CENTER | ES_READONLY\r
+END\r
+\r
+IDD_CPU DIALOGEX 0, 0, 300, 226\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    GROUPBOX        "CPU",IDC_STATIC,5,3,81,139,BS_LEFT\r
+    CONTROL         "68000",IDC_CPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,16,63,10\r
+    CONTROL         "68010",IDC_CPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,30,65,10\r
+    CONTROL         "68020",IDC_CPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,44,63,10\r
+    CONTROL         "68030",IDC_CPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,58,64,10\r
+    CONTROL         "68040",IDC_CPU4,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,72,66,10\r
+    CONTROL         "68060",IDC_CPU5,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,85,66,10\r
+    CONTROL         "More compatible [] Emulate 68000's prefetch registers. More compatible but slower.",IDC_COMPATIBLE,\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,10,114,73,8\r
+    CONTROL         "JIT [] Enable just-in-time CPU emulator. Significantly increases the speed of the CPU emulation. Requires 68020 or higher CPU.",IDC_JITENABLE,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,127,73,10\r
+    GROUPBOX        "CPU Emulation Speed",IDC_STATIC,90,3,205,90\r
+    CONTROL         "Fastest possible, but maintain chipset timing",IDC_CS_HOST,\r
+                    "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_GROUP | WS_TABSTOP,95,18,195,10\r
+    CONTROL         "Match A500 speed",IDC_CS_68000,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,32,195,10\r
+    CONTROL         "Adjustable between CPU and chipset",IDC_CS_ADJUSTABLE,\r
+                    "Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,95,47,195,10\r
+    RTEXT           "CPU",IDC_CS_CPU_TEXT,96,73,15,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    CONTROL         "Slider1",IDC_SPEED,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,114,68,67,20\r
+    LTEXT           "Chipset",IDC_CS_CHIPSET_TEXT,182,73,25,10,SS_CENTERIMAGE | NOT WS_GROUP | WS_TABSTOP\r
+    RTEXT           "CPU idle",IDC_CS_CPU_TEXT2,236,56,32,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    CONTROL         "",IDC_CPUIDLE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,219,68,69,20\r
+    GROUPBOX        "Advanced JIT Settings",IDC_STATIC,90,94,205,93\r
+    RTEXT           "Cache size:",IDC_CS_CACHE_TEXT,95,113,45,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    CONTROL         "Slider1",IDC_CACHE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,140,108,115,20\r
+    EDITTEXT        IDC_CACHETEXT,255,113,30,12,ES_CENTER | ES_READONLY\r
+    CONTROL         "Hard flush",IDC_HARDFLUSH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,141,63,10\r
+    CONTROL         "Constant jump",IDC_CONSTJUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,155,63,10\r
+    CONTROL         "FPU support",IDC_JITFPU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,168,62,10\r
+    CONTROL         "Force settings",IDC_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,168,141,62,10\r
+    CONTROL         "No flags",IDC_NOFLAGS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,168,155,62,10\r
+    CONTROL         "Direct",IDC_TRUST0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,235,141,52,10\r
+    CONTROL         "Indirect",IDC_TRUST1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,235,155,52,10\r
+    CONTROL         "After RTG",IDC_TRUST2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,235,168,52,10\r
+    CONTROL         "More compatible [] More compatible but slower FPU emulation.",IDC_COMPATIBLE_FPU,\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,9,206,73,10\r
+    GROUPBOX        "FPU",IDC_STATIC,6,144,81,76,BS_LEFT\r
+    CONTROL         "24-bit addressing",IDC_COMPATIBLE24,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,10,100,73,8\r
+    CONTROL         "None",IDC_FPU0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,154,63,10\r
+    CONTROL         "68881",IDC_FPU1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,166,63,10\r
+    CONTROL         "68882",IDC_FPU2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,179,63,10\r
+    CONTROL         "CPU internal",IDC_FPU3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,192,63,10\r
+END\r
+\r
+IDD_FLOPPY DIALOGEX 0, 0, 300, 240\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    COMBOBOX        IDC_DF0TEXT,2,22,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF0TYPE,123,6,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Write-protected",IDC_STATIC,174,8,59,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF0WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,4,10,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT0,253,4,30,15\r
+    PUSHBUTTON      "...",IDC_DF0,287,4,10,15\r
+    COMBOBOX        IDC_DF1TEXT,2,58,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF1TYPE,123,42,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Write-protected",IDC_STATIC,174,43,59,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF1WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,40,10,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT1,253,40,30,15\r
+    PUSHBUTTON      "...",IDC_DF1,287,40,10,15\r
+    COMBOBOX        IDC_DF2TEXT,2,93,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF2TYPE,123,77,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Write-protected",IDC_STATIC,174,77,59,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF2WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,75,9,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT2,253,75,30,15\r
+    PUSHBUTTON      "...",IDC_DF2,287,75,10,15\r
+    COMBOBOX        IDC_DF3TEXT,2,128,296,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_DF3TYPE,123,112,49,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Write-protected",IDC_STATIC,174,113,59,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF3WP,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,238,111,9,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT3,253,110,30,15\r
+    PUSHBUTTON      "...",IDC_DF3,287,109,10,15\r
+    GROUPBOX        "New Floppy Disk Image",IDC_SETTINGSTEXT,5,183,289,49\r
+    COMBOBOX        IDC_FLOPPYTYPE,16,196,51,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Create Standard Disk [] Creates a standard 880 or 1760 KB ADF disk image.",IDC_CREATE,76,196,97,15\r
+    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\r
+    GROUPBOX        "Floppy Drive Emulation Speed",IDC_SETTINGSTEXT2,5,144,289,35\r
+    CONTROL         "",IDC_FLOPPYSPD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,32,152,116,20\r
+    EDITTEXT        IDC_FLOPPYSPDTEXT,169,155,107,12,ES_CENTER | ES_READONLY\r
+    PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE0,43,5,70,15,NOT WS_VISIBLE\r
+    PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE1,43,40,70,15,NOT WS_VISIBLE\r
+    PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE2,43,75,70,15,NOT WS_VISIBLE\r
+    PUSHBUTTON      "Delete save image",IDC_SAVEIMAGE3,43,110,70,15,NOT WS_VISIBLE\r
+    EDITTEXT        IDC_CREATE_NAME,75,215,98,13,ES_AUTOHSCROLL\r
+    RTEXT           "Disk label:",IDC_STATIC,14,216,52,10,SS_CENTERIMAGE\r
+    CONTROL         "DF0:",IDC_DF0ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,6,34,15\r
+    CONTROL         "DF1:",IDC_DF1ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,41,34,15\r
+    CONTROL         "DF2:",IDC_DF2ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,76,34,15\r
+    CONTROL         "DF3:",IDC_DF3ENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,3,111,34,15\r
+END\r
+\r
+IDD_HARDDISK DIALOGEX 0, 0, 300, 245\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+EXSTYLE WS_EX_CONTEXTHELP\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    CONTROL         "List1",IDC_VOLUMELIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,0,290,182\r
+    PUSHBUTTON      "Add &Directory or Archive...",IDC_NEW_FS,10,186,103,15\r
+    PUSHBUTTON      "Add &Hardfile...",IDC_NEW_HF,130,186,74,15\r
+    PUSHBUTTON      "Add Ha&rd Drive...",IDC_NEW_HD,220,186,75,15\r
+    PUSHBUTTON      "Remove",IDC_REMOVE,232,207,60,15\r
+    PUSHBUTTON      "&Properties",IDC_EDIT,232,230,60,15\r
+    CONTROL         "Add PC drives at startup",IDC_MAPDRIVES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,209,100,10\r
+    CONTROL         "Disable UAEFSDB-support",IDC_NOUAEFSDB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,209,119,10\r
+    CONTROL         "Don't use Windows Recycle Bin",IDC_NORECYCLEBIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,220,121,10\r
+    CONTROL         "Include network drives..",IDC_MAPDRIVES_NET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,232,101,10\r
+    CONTROL         "Include CD/DVD drives..",IDC_MAPDRIVES_CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,5,220,100,10\r
+    CONTROL         "Automount removable drives",IDC_MAPDRIVES_AUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,232,115,10\r
+END\r
+\r
+IDD_SOUND DIALOGEX 0, 0, 300, 231\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    RTEXT           "Sound device:",IDC_SOUNDCARD,8,9,51,13,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDCARDLIST,64,9,229,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Sound Emulation",IDC_SOUNDSETTINGS,5,30,120,81\r
+    CONTROL         "Disabled",IDC_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,13,45,101,10\r
+    CONTROL         "Disabled, but emulated",IDC_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,57,102,10\r
+    CONTROL         "Enabled",IDC_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,69,102,10\r
+    CONTROL         "Enabled, 100% accurate",IDC_SOUND3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,13,81,101,10\r
+    GROUPBOX        "Volume",IDC_STATIC,131,36,164,31\r
+    CONTROL         "",IDC_SOUNDVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,137,44,105,20\r
+    EDITTEXT        IDC_SOUNDVOLUME2,247,47,40,12,ES_CENTER | ES_READONLY\r
+    GROUPBOX        "Sound Buffer Size",IDC_STATIC,132,73,164,31\r
+    CONTROL         "Slider1",IDC_SOUNDBUFFERRAM,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,138,81,106,19\r
+    EDITTEXT        IDC_SOUNDBUFFERMEM,248,84,40,12,ES_CENTER | ES_READONLY\r
+    GROUPBOX        "Settings",IDC_SOUNDINTERPOLATION2,6,114,290,60\r
+    LTEXT           "Frequency:",IDC_SOUNDFREQTXT,11,147,53,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDFREQ,13,156,51,75,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Audio filter:",IDC_SOUNDFILTERTXT,209,148,77,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDFILTER,209,157,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Channel mode:",IDC_SOUNDSTEREOTXT,11,124,57,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDSTEREO,13,133,122,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Interpolation:",IDC_SOUNDINTERPOLATIONTXT,209,124,75,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDINTERPOLATION,209,132,80,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Stereo separation:",IDC_SOUNDSTEREOSEPTXT,141,124,63,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDSTEREOSEP,142,133,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Stereo delay:",IDC_SOUNDSTEREOMIXTXT,141,148,63,8,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_SOUNDSTEREOMIX,142,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Floppy Drive Sound Emulation",IDC_STATIC,6,177,290,46\r
+    CONTROL         "",IDC_SOUNDDRIVEVOLUME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,14,185,107,19\r
+    EDITTEXT        IDC_SOUNDDRIVEVOLUME2,124,191,40,12,ES_CENTER | ES_READONLY\r
+    COMBOBOX        IDC_SOUNDDRIVE,237,187,46,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_SOUNDDRIVESELECT,18,205,265,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_SOUNDSWAP,73,157,62,75,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    LTEXT           "Swap channels:",IDC_SOUNDSWAPTXT,74,148,61,8,SS_CENTERIMAGE\r
+    CONTROL         "Automatic switching",IDC_SOUND_AUTO,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,14,95,103,10\r
+END\r
+\r
+IDD_LOADSAVE DIALOGEX 0, 0, 302, 241\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    CONTROL         "",IDC_CONFIGTREE,"SysTreeView32",TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,6,3,289,153,WS_EX_CLIENTEDGE\r
+    RTEXT           "Name:",IDC_STATIC,4,161,40,15,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_EDITNAME,48,162,146,13,ES_AUTOHSCROLL\r
+    RTEXT           "Description:",IDC_STATIC,4,183,41,15,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_EDITDESCRIPTION,48,183,146,13,ES_AUTOHSCROLL\r
+    RTEXT           "Link:",IDC_STATIC,4,204,40,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_CONFIGLINK,48,205,93,150,CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Ignore link",IDC_CONFIGNOLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,146,206,48,10\r
+    EDITTEXT        IDC_EDITPATH,199,161,49,15,ES_AUTOHSCROLL | WS_DISABLED\r
+    CONTROL         "Autoload",IDC_CONFIGAUTO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,253,163,42,10\r
+    GROUPBOX        "Additional Information",IDC_STATIC,199,179,96,38,BS_LEFT\r
+    PUSHBUTTON      "View",IDC_VIEWINFO,208,195,37,15\r
+    PUSHBUTTON      "Set",IDC_SETINFO,250,195,37,15\r
+    PUSHBUTTON      "Load",IDC_QUICKLOAD,5,225,44,15\r
+    PUSHBUTTON      "Save",IDC_QUICKSAVE,54,225,44,15\r
+    PUSHBUTTON      "Load From...",IDC_LOAD,121,225,49,15\r
+    PUSHBUTTON      "Delete",IDC_DELETE,251,225,44,15\r
+    PUSHBUTTON      "Save As...",IDC_SAVE,175,225,44,15\r
+END\r
+\r
+IDD_PORTS DIALOGEX 0, 0, 300, 238\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Parallel Port",IDC_SERPARFRAME,5,2,291,68\r
+    RTEXT           "Printer:",IDC_STATIC,12,15,25,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_PRINTERLIST,49,15,153,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Flush print job",IDC_FLUSHPRINTER,220,14,58,12\r
+    CONTROL         "PostScript detection",IDC_PSPRINTERDETECT,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,33,79,12\r
+    CONTROL         "PostScript printer emulation",IDC_PSPRINTER,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,95,33,110,12\r
+    RTEXT           "Autoflush [] Time in seconds after a pending print job is automatically flushed.",IDC_PRINTERAUTOFLUSHTXT,202,32,57,15,SS_NOTIFY | SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PRINTERAUTOFLUSH,263,33,25,12,ES_NUMBER\r
+    RTEXT           "Ghostscript extra parameters:",IDC_STATIC,12,49,102,15,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PS_PARAMS,124,50,165,12,ES_AUTOHSCROLL\r
+    GROUPBOX        "Serial Port",IDC_SERIALFRAME,4,72,292,48\r
+    COMBOBOX        IDC_SERIAL,49,84,232,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Shared",IDC_SER_SHARED,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,11,102,48,13\r
+    CONTROL         "RTS/CTS",IDC_SER_CTSRTS,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,65,102,55,12\r
+    GROUPBOX        "MIDI",IDC_MIDIFRAME,4,123,292,33\r
+    RTEXT           "Out:",IDC_MIDI,10,134,34,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_MIDIOUTLIST,50,134,95,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "In:",IDC_MIDI2,150,134,29,15,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_MIDIINLIST,185,134,95,134,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Mouse/Joystick Ports",IDC_PORT0,4,158,292,75\r
+    COMBOBOX        IDC_PORT0_JOYS,45,174,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_PORT1_JOYS,45,195,241,130,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Swap ports",IDC_SWAP,211,214,75,14\r
+    RTEXT           "Port 0:",IDC_STATIC,11,173,25,15,SS_CENTERIMAGE\r
+    RTEXT           "Port 1:",IDC_STATIC,11,194,25,15,SS_CENTERIMAGE\r
+    LTEXT           "X-Arcade layout information []#1",IDC_STATIC,16,213,106,15,SS_NOTIFY | SS_CENTERIMAGE\r
+    CONTROL         "Direct []Use when emulating serial-link games on two PCs running WinUAE",IDC_SER_DIRECT,\r
+                    "Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,132,103,65,12\r
+    CONTROL         "uaeserial.device",IDC_UAESERIAL,"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,207,103,78,13\r
+END\r
+\r
+IDD_CONTRIBUTORS DIALOGEX 0, 0, 411, 242\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION\r
+CAPTION "UAE Authors and Contributors..."\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    DEFPUSHBUTTON   "Ok",ID_OK,177,219,53,14\r
+    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\r
+END\r
+\r
+IDD_ABOUT DIALOGEX 0, 0, 300, 191\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    CONTROL         "",IDC_RICHEDIT1,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,45,10,210,15\r
+    CONTROL         "",IDC_RICHEDIT2,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,30,260,13\r
+    PUSHBUTTON      "Contributors",IDC_CONTRIBUTORS,110,55,80,15\r
+    CONTROL         "",IDC_UAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,120,80,15\r
+    CONTROL         "",IDC_PICASSOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,90,80,20\r
+    CONTROL         "",IDC_AMIGAHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,109,90,80,20\r
+    CONTROL         "",IDC_WINUAEHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,120,80,15\r
+    CONTROL         "",IDC_AIABHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,120,80,15\r
+    CONTROL         "",IDC_THEROOTS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,145,80,15\r
+    CONTROL         "",IDC_CAPS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,200,145,80,15\r
+    CONTROL         "",IDC_ABIME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,110,145,80,15\r
+    CONTROL         "",IDC_CLOANTOHOME,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,20,90,80,20\r
+    CONTROL         "",IDC_AMIGASYS,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,63,169,80,15\r
+    CONTROL         "",IDC_AMIKIT,"RICHEDIT",TCS_SCROLLOPPOSITE | TCS_RAGGEDRIGHT | TCS_MULTISELECT | WS_DISABLED,157,169,80,15\r
+END\r
+\r
+IDD_MISC1 DIALOGEX 0, 0, 300, 237\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Advanced",IDC_STATIC,8,2,285,110\r
+    CONTROL         "Untrap mouse with middle button",IDC_JULIAN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,15,129,10\r
+    CONTROL         "Show GUI on startup",IDC_SHOWGUI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,27,120,10\r
+    CONTROL         "On-screen LEDs",IDC_SHOWLEDS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,40,115,10\r
+    CONTROL         "uaescsi.device",IDC_SCSIDEVICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,53,63,10\r
+    CONTROL         "Don't show taskbar button",IDC_NOTASKBARBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,66,117,10\r
+    CONTROL         "bsdsocket.library emulation",IDC_SOCKETS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,15,120,10\r
+    CONTROL         "Use CTRL-F11 to quit",IDC_CTRLF11,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,27,120,10\r
+    CONTROL         "Don't use RGB overlays",IDC_NOOVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,40,120,10\r
+    CONTROL         "Synchronize clock",IDC_CLOCKSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,53,115,10\r
+    GROUPBOX        "Keyboard LEDs",IDC_STATIC,7,140,85,94\r
+    COMBOBOX        IDC_KBLED1,22,154,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_KBLED2,22,173,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_KBLED3,22,193,56,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Logging",IDC_STATIC,97,140,195,25\r
+    CONTROL         "Create log file",IDC_CREATELOGFILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,151,72,10\r
+    CONTROL         "Illegal memory accesses",IDC_ILLEGAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,189,151,95,10\r
+    GROUPBOX        "State Files",IDC_STATIC,98,165,195,69\r
+    PUSHBUTTON      "Load state...",IDC_DOLOADSTATE,105,182,49,14\r
+    PUSHBUTTON      "Save state...",IDC_DOSAVESTATE,105,208,49,14\r
+    CONTROL         "Enable state recording",IDC_STATE_CAPTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,188,181,88,10\r
+    RTEXT           "Recording rate (seconds):",IDC_STATIC,157,199,86,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    COMBOBOX        IDC_STATE_RATE,248,197,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Recording buffer (MB):",IDC_STATIC,157,219,83,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    COMBOBOX        IDC_STATE_BUFFERSIZE,248,217,38,65,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Always on top",IDC_ALWAYSONTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,79,117,10\r
+    CONTROL         "Catweasel",IDC_CATWEASEL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,66,115,10\r
+    CONTROL         "USB mode",IDC_KBLED_USB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,216,64,10\r
+    COMBOBOX        IDC_SCSIMODE,92,51,64,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_LANGUAGE,103,121,179,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Language",IDC_STATIC,7,112,285,25\r
+    CONTROL         "Disable powersaving features",IDC_POWERSAVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,23,92,120,10\r
+    CONTROL         "Magic Mouse",IDC_MOUSETRICK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,79,119,10\r
+    CONTROL         "uaenet.device",IDC_SANA2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,92,94,10\r
+END\r
+\r
+IDD_HARDFILE DIALOGEX 0, 0, 299, 249\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Hardfile Settings"\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    GROUPBOX        "Settings",IDC_STATIC,10,5,280,146\r
+    RTEXT           "Path:",IDC_HARDFILE_DIR_TEXT,26,18,22,10\r
+    EDITTEXT        IDC_PATH_NAME,52,15,213,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_SELECTOR,271,15,11,15\r
+    RTEXT           "FileSys:",IDC_HARDFILE_FILESYS_TEXT,14,37,34,10\r
+    EDITTEXT        IDC_PATH_FILESYS,52,34,213,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_FILESYS_SELECTOR,271,34,11,15\r
+    RTEXT           "Device:",IDC_HARDFILE_DEVICE_TEXT,17,58,31,10\r
+    EDITTEXT        IDC_HARDFILE_DEVICE,52,54,66,15,ES_AUTOHSCROLL\r
+    RTEXT           "Boot priority:",IDC_HARDFILE_BOOTPRI_TEXT,24,94,44,8\r
+    EDITTEXT        IDC_HARDFILE_BOOTPRI,74,90,40,15\r
+    CONTROL         "Read/write",IDC_HDF_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,53,74,64,10\r
+    PUSHBUTTON      "Enable RDB mode",IDC_HDF_RDB,174,55,92,14\r
+    RTEXT           "Surfaces:",IDC_SURFACES_TEXT,120,94,30,10\r
+    EDITTEXT        IDC_HEADS,155,90,35,15,ES_NUMBER\r
+    RTEXT           "Reserved:",IDC_RESERVED_TEXT,197,94,35,10\r
+    EDITTEXT        IDC_RESERVED,237,90,35,15,ES_NUMBER\r
+    RTEXT           "Sectors:",IDC_SECTORS_TEXT,120,116,30,10\r
+    EDITTEXT        IDC_SECTORS,155,111,35,15,ES_NUMBER\r
+    RTEXT           "Block size:",IDC_BLOCKSIZE_TEXT,197,116,35,10\r
+    EDITTEXT        IDC_BLOCKSIZE,237,111,35,15,ES_NUMBER\r
+    GROUPBOX        "New hard disk image file",IDC_STATIC,10,156,280,62\r
+    PUSHBUTTON      "Create",IDC_HF_CREATE,50,171,80,14\r
+    EDITTEXT        IDC_HF_SIZE,146,171,61,15,ES_NUMBER\r
+    PUSHBUTTON      "OK",IDOK,102,226,50,14\r
+    PUSHBUTTON      "Cancel",IDCANCEL,158,226,50,14\r
+    EDITTEXT        IDC_HF_DOSTYPE,146,194,61,15\r
+    COMBOBOX        IDC_HF_TYPE,50,194,80,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_HDF_CONTROLLER,73,112,41,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "DOS type",IDC_STATIC,214,196,32,10,SS_CENTERIMAGE\r
+    RTEXT           "MB",IDC_STATIC,214,174,13,10,SS_CENTERIMAGE\r
+    RTEXT           "Type:",IDC_STATIC,18,182,25,10,SS_CENTERIMAGE\r
+    RTEXT           "HD Controller:",IDC_STATIC,13,113,52,10,SS_CENTERIMAGE\r
+    CONTROL         "Autoboot",IDC_HDF_AUTOBOOT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,136,73,53,10\r
+    CONTROL         "Do not mount",IDC_HDF_DONOTMOUNT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,217,74,67,10\r
+    EDITTEXT        IDC_HDFINFO,16,131,268,12,ES_CENTER | ES_READONLY\r
+END\r
+\r
+IDD_FILESYS DIALOGEX 15, 25, 299, 111\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Volume Settings"\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    LTEXT           "Device name:",-1,5,9,54,10\r
+    EDITTEXT        IDC_VOLUME_DEVICE,65,5,104,15,ES_AUTOHSCROLL\r
+    LTEXT           "Volume label:",-1,5,31,54,10\r
+    EDITTEXT        IDC_VOLUME_NAME,65,25,103,15,ES_AUTOHSCROLL\r
+    LTEXT           "Path:",-1,5,51,44,10\r
+    EDITTEXT        IDC_PATH_NAME,65,46,227,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "Select Directory",IDC_FS_SELECT_DIR,64,66,103,15\r
+    CONTROL         "Read/write",IDC_FS_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,7,55,10\r
+    RTEXT           "Boot priority:",IDC_VOLUME_BOOTPRI_TEXT,178,28,49,8\r
+    EDITTEXT        IDC_VOLUME_BOOTPRI,237,24,30,15\r
+    PUSHBUTTON      "OK",IDOK,65,91,48,15\r
+    PUSHBUTTON      "Cancel",IDCANCEL,120,91,48,15\r
+    PUSHBUTTON      "Select Archive or Plain File",IDC_FS_SELECT_FILE,189,66,103,15\r
+    PUSHBUTTON      "Eject",IDC_FS_SELECT_EJECT,230,91,62,15\r
+    CONTROL         "Autoboot",IDC_FS_AUTOBOOT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,236,7,53,10\r
+END\r
+\r
+IDD_SETINFO DIALOGEX 0, 0, 229, 85\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Additional Information Settings"\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    RTEXT           "Path:",-1,5,20,24,15,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATH_NAME,35,20,169,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_SELECTOR,210,20,10,15\r
+    PUSHBUTTON      "OK",IDOK,120,65,48,15\r
+    PUSHBUTTON      "Cancel",IDCANCEL,175,65,48,15\r
+END\r
+\r
+IDD_CHIPSET DIALOGEX 0, 65490, 300, 229\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    GROUPBOX        "Chipset",IDC_STATIC,14,11,145,90\r
+    CONTROL         "OCS [] Original chipset. A1000 and most A500s.",IDC_OCS,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,37,26,51,10\r
+    CONTROL         "ECS Agnus [] Enhanced chipset (ECS Agnus chip only). Later A500 and A2000 hardware revisions.",IDC_ECS_AGNUS,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,42,55,10\r
+    CONTROL         "Full ECS [] Full ECS chipset (ECS Agnus and ECS Denise chips). A500+, A600 and A3000.",IDC_ECS,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,37,58,52,10\r
+    CONTROL         "AGA [] Advanced Graphics Architecture chipset. A1200, A4000 and CD32.",IDC_AGA,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,100,26,51,10\r
+    CONTROL         "NTSC [] North American and Japanese display standard, 60Hz refresh rate. Other countries use PAL (50Hz. display refresh rate)",IDC_NTSC,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,101,58,50,10\r
+    GROUPBOX        "Options",IDC_STATIC,168,11,114,89\r
+    CONTROL         "Immediate Blitter [] Faster but less compatible blitter emulation.",IDC_BLITIMM,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,174,30,96,10\r
+    CONTROL         "Cycle-exact [] The most compatible A500 emulation mode. Very fast PC recommended.",IDC_CYCLEEXACT,\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,43,100,10\r
+    GROUPBOX        "Collision Level",IDC_STATIC,14,105,267,48\r
+    CONTROL         "None [] Collision hardware emulation disabled.",IDC_COLLISION0,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,40,121,59,10\r
+    CONTROL         "Sprites only [] Emulate only sprite vs. sprite collisions.",IDC_COLLISION1,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,137,62,10\r
+    CONTROL         "Sprites and Sprites vs. Playfield [] Recommended collision emulation level.",IDC_COLLISION2,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,121,161,10\r
+    CONTROL         "Full [] 100% collision hardware emulation. Only very few games need this option. Slowest.",IDC_COLLISION3,\r
+                    "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,109,137,119,10\r
+    GROUPBOX        "Sound Emulation",IDC_STATIC,13,159,268,65\r
+    CONTROL         "Disabled",IDC_CS_SOUND0,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,39,175,102,10\r
+    CONTROL         "Emulated",IDC_CS_SOUND1,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,190,91,10\r
+    CONTROL         "Emulated, 100% accurate",IDC_CS_SOUND2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,39,205,95,10\r
+    CONTROL         "Genlock connected [] Allow boot sequence to detect genlock. Genlock is not emulated.",IDC_GENLOCK,\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,56,100,10\r
+    CONTROL         "Faster RTG [] Enables less accurate custom chipset emulation mode when Picasso96 is enabled.",IDC_FASTERRTG,\r
+                    "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,174,68,100,10\r
+    COMBOBOX        IDC_CS_EXT,101,80,49,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Chipset Extra",IDC_STATIC,25,79,52,15,SS_CENTERIMAGE\r
+END\r
+\r
+IDD_CHIPSET2 DIALOGEX 0, 65490, 300, 247\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    GROUPBOX        "Battery Backed Up Real Time Clock",IDC_STATIC,11,24,275,29\r
+    CONTROL         "None",IDC_CS_RTC1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,19,36,55,10\r
+    CONTROL         "MSM6242B",IDC_CS_RTC2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,88,36,52,10\r
+    CONTROL         "RF5C01A",IDC_CS_RTC3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,157,36,46,10\r
+    EDITTEXT        IDC_CS_RTCADJUST,215,34,64,13,ES_AUTOHSCROLL\r
+    GROUPBOX        "CIA-A TOD Clock Source",IDC_STATIC,9,56,275,29\r
+    CONTROL         "Vertical Sync",IDC_CS_CIAA_TOD1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,22,68,63,10\r
+    CONTROL         "Power Supply 50Hz",IDC_CS_CIAA_TOD2,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,92,68,85,10\r
+    CONTROL         "Power Supply 60Hz",IDC_CS_CIAA_TOD3,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,189,68,88,10\r
+    CONTROL         "Boot ROM Mirror",IDC_CS_KSMIRROR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,95,80,10\r
+    CONTROL         "A1000 Boot RAM/ROM",IDC_CS_A1000RAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,95,88,10\r
+    CONTROL         "CD32 CD",IDC_CS_CD32CD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,108,76,10\r
+    CONTROL         "CD32 C2P",IDC_CS_CD32C2P,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,108,87,10\r
+    CONTROL         "CD32 NVRAM",IDC_CS_CD32NVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,108,84,10\r
+    CONTROL         "CDTV CD",IDC_CS_CDTVCD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,121,47,10\r
+    CONTROL         "CDTV SRAM",IDC_CS_CDTVRAM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,120,87,10\r
+    CONTROL         "CDTV SRAM Expansion",IDC_CS_CDTVRAMEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,120,90,10\r
+    CONTROL         "A600/A1200 IDE",IDC_CS_IDE1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,133,79,10\r
+    CONTROL         "A4000/A4000T IDE",IDC_CS_IDE2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,133,88,10\r
+    CONTROL         "Ramsey revision:",IDC_CS_RAMSEY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,210,71,10\r
+    EDITTEXT        IDC_CS_RAMSEYREV,91,208,45,13,ES_AUTOHSCROLL\r
+    CONTROL         "Fat Gary revision:",IDC_CS_FATGARY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,223,71,10\r
+    EDITTEXT        IDC_CS_FATGARYREV,91,222,45,13,ES_AUTOHSCROLL\r
+    CONTROL         "A3000 SCSI",IDC_CS_DMAC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,174,76,10\r
+    CONTROL         "Compatible Settings",IDC_CS_COMPATIBLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,8,234,10\r
+    CONTROL         "DF0: ID Hardware",IDC_CS_DF0IDHW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,95,92,10\r
+    CONTROL         "Agnus/Alice revision:",IDC_CS_AGNUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,210,81,10\r
+    EDITTEXT        IDC_CS_AGNUSREV,232,208,45,13,ES_AUTOHSCROLL\r
+    CONTROL         "Denise/Lisa revision:",IDC_CS_DENISE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,147,226,81,10\r
+    EDITTEXT        IDC_CS_DENISEREV,232,225,45,13,ES_AUTOHSCROLL\r
+    CONTROL         "A590/A2091 SCSI",IDC_CS_A2091,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,174,76,10\r
+    CONTROL         "A4000T SCSI",IDC_CS_DMAC2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,174,88,10\r
+    LTEXT           "A4091/A4000T SCSI not yet implemented.",IDC_STATIC,22,160,224,8,SS_CENTERIMAGE\r
+    CONTROL         "PCMCIA",IDC_CS_PCMCIA,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,133,92,10\r
+    CONTROL         "A4091 SCSI",IDC_CS_A4091,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,186,76,10\r
+    CONTROL         "CDTV SCSI",IDC_CS_CDTVSCSI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,94,186,76,10\r
+    CONTROL         "Include host SCSI devices",IDC_CS_SCSIMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,186,101,10\r
+    CONTROL         "C00000 is Fast RAM",IDC_CS_SLOWISFAST,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,146,92,10\r
+END\r
+\r
+IDD_AVIOUTPUT DIALOGEX 0, 0, 288, 203\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Output Properties",IDC_STATIC,5,8,274,118\r
+    EDITTEXT        IDC_AVIOUTPUT_FILETEXT,15,21,226,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE\r
+    PUSHBUTTON      "...",IDC_AVIOUTPUT_FILE,249,20,19,12\r
+    CONTROL         "Audio",IDC_AVIOUTPUT_AUDIO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,36,39,11\r
+    CONTROL         "",IDC_AVIOUTPUT_AUDIO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,36,209,11\r
+    CONTROL         "Video",IDC_AVIOUTPUT_VIDEO,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE | BS_FLAT | WS_TABSTOP,15,50,39,11\r
+    CONTROL         "",IDC_AVIOUTPUT_VIDEO_STATIC,"Static",SS_LEFTNOWORDWRAP | SS_CENTERIMAGE | SS_SUNKEN | WS_GROUP,59,50,209,11\r
+    CONTROL         "Disable frame rate limit while recording",IDC_AVIOUTPUT_FRAMELIMITER,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,68,158,10\r
+    CONTROL         "AVI output enabled",IDC_AVIOUTPUT_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,15,103,108,14\r
+    CONTROL         "PAL",IDC_AVIOUTPUT_PAL,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,133,103,66,14\r
+    CONTROL         "NTSC",IDC_AVIOUTPUT_NTSC,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,204,103,66,14\r
+    CONTROL         "Slider1",IDC_AVIOUTPUT_FPS,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | TBS_ENABLESELRANGE | WS_TABSTOP,166,84,87,11\r
+    LTEXT           "fps",IDC_AVIOUTPUT_FPS_STATIC,255,84,19,8\r
+    PUSHBUTTON      "Save screenshot",IDC_SCREENSHOT,16,141,76,14\r
+    GROUPBOX        "Ripper",IDC_STATIC,5,127,274,38\r
+    PUSHBUTTON      "Pro Wizard 1.62",IDC_PROWIZARD,100,141,76,14,WS_DISABLED\r
+    CONTROL         "Sample ripper",IDC_SAMPLERIPPER_ACTIVATED,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,192,141,77,14\r
+    GROUPBOX        "Input Recorder",IDC_STATIC,5,166,274,33\r
+    CONTROL         "Record",IDC_INPREC_RECORD,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,191,177,77,14\r
+    CONTROL         "Playback",IDC_INPREC_PLAY,"Button",BS_AUTORADIOBUTTON | BS_PUSHLIKE | BS_FLAT,16,178,77,14\r
+    CONTROL         "Alt. playback mode",IDC_INPREC_PLAYMODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,103,180,78,10\r
+    CONTROL         "Disable sound output while recording",IDC_AVIOUTPUT_NOSOUNDOUTPUT,\r
+                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,85,148,10\r
+END\r
+\r
+IDD_INPUT DIALOGEX 0, 0, 300, 242\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    COMBOBOX        IDC_INPUTTYPE,5,5,98,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_INPUTDEVICE,109,5,167,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "",IDC_INPUTDEVICEDISABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,282,8,9,8\r
+    CONTROL         "List1",IDC_INPUTLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,5,22,290,146\r
+    COMBOBOX        IDC_INPUTAMIGACNT,5,174,24,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_INPUTAMIGA,33,174,262,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Joystick dead zone (%):",-1,7,196,79,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_INPUTDEADZONE,92,195,25,12,ES_NUMBER\r
+    RTEXT           "Autofire rate (frames):",-1,10,212,76,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_INPUTAUTOFIRERATE,92,210,25,12,ES_NUMBER\r
+    RTEXT           "Digital joy-mouse speed:",-1,124,196,84,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_INPUTSPEEDD,215,195,25,12,ES_NUMBER\r
+    RTEXT           "Analog joy-mouse speed:",-1,120,212,88,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_INPUTSPEEDA,215,211,25,12,ES_NUMBER\r
+    RTEXT           "Mouse speed:",-1,132,228,76,10,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_INPUTSPEEDM,215,227,25,12,ES_NUMBER\r
+    PUSHBUTTON      "Copy from:",IDC_INPUTCOPY,249,195,45,14\r
+    COMBOBOX        IDC_INPUTCOPYFROM,249,211,45,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Swap 1<>2",IDC_INPUTSWAP,249,226,45,14\r
+END\r
+\r
+IDD_FILTER DIALOGEX 0, 0, 296, 224\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Filter Settings",-1,0,0,294,186\r
+    CONTROL         "Enable",IDC_FILTERENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,17,46,10\r
+    COMBOBOX        IDC_FILTERMODE,62,15,61,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_FILTERFILTER,128,15,81,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Reset to defaults",IDC_FILTERDEFAULT,213,15,73,14\r
+    RTEXT           "Horiz. size:",-1,4,44,54,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FILTERHZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,37,152,19\r
+    EDITTEXT        IDC_FILTERHZV,253,40,34,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Vert. size:",-1,5,64,54,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FILTERVZ,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,57,152,19\r
+    EDITTEXT        IDC_FILTERVZV,253,59,34,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Horiz. position:",-1,5,84,55,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FILTERHO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,77,151,19\r
+    EDITTEXT        IDC_FILTERHOV,253,79,34,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Vert. position:",-1,5,103,55,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FILTERVO,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,99,151,19\r
+    EDITTEXT        IDC_FILTERVOV,253,101,34,12,ES_CENTER | ES_READONLY\r
+    RTEXT           "Extra settings:",-1,27,133,57,10,SS_CENTERIMAGE\r
+    CONTROL         "Slider1",IDC_FILTERXL,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,99,157,151,19\r
+    EDITTEXT        IDC_FILTERXLV,253,159,34,12,ES_CENTER | ES_READONLY\r
+    COMBOBOX        IDC_FILTERSLR,253,130,33,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Presets",-1,0,187,296,36\r
+    COMBOBOX        IDC_FILTERPRESETS,8,201,119,150,CBS_DROPDOWN | CBS_SORT | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Load",IDC_FILTERPRESETLOAD,132,200,47,14\r
+    PUSHBUTTON      "Save",IDC_FILTERPRESETSAVE,184,200,47,14\r
+    PUSHBUTTON      "Delete",IDC_FILTERPRESETDELETE,236,200,47,14\r
+    COMBOBOX        IDC_FILTERHZMULT,67,43,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    COMBOBOX        IDC_FILTERVZMULT,67,63,27,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Autoscale",IDC_FILTERAUTORES,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_GROUP | WS_TABSTOP,26,168,63,10\r
+    COMBOBOX        IDC_FILTERXTRA,105,130,138,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+END\r
+\r
+IDD_HARDDRIVE DIALOGEX 0, 0, 380, 66\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_CENTER | DS_CENTERMOUSE | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Harddrive Settings"\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    LTEXT           "Hard drive:",IDC_STATIC,7,11,35,10\r
+    COMBOBOX        IDC_HARDDRIVE,49,9,325,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Read/write",IDC_HDF_RW,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,51,55,10\r
+    DEFPUSHBUTTON   "Add hard drive",IDOK,231,48,65,14\r
+    PUSHBUTTON      "Cancel",IDCANCEL,319,48,54,14\r
+    DEFPUSHBUTTON   "Create hard disk image file",IDC_HARDDRIVE_IMAGE,49,30,115,14\r
+    EDITTEXT        IDC_PATH_NAME,183,27,97,15,ES_AUTOHSCROLL | NOT WS_VISIBLE\r
+    COMBOBOX        IDC_HDF_CONTROLLER,102,50,41,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "HD Controller:",IDC_STATIC,42,52,52,10,SS_CENTERIMAGE\r
+END\r
+\r
+IDD_MISC2 DIALOGEX 0, 0, 300, 92\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "When Active",IDC_STATIC,8,7,88,73\r
+    RTEXT           "Run at priority:",IDC_ACTIVE_PRI,14,17,52,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    COMBOBOX        IDC_ACTIVE_PRIORITY,14,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "When Inactive",IDC_STATIC,102,7,92,73\r
+    RTEXT           "Run at priority:",IDC_INACTIVE_PRI,109,17,51,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    COMBOBOX        IDC_INACTIVE_PRIORITY,109,29,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Pause emulation",IDC_INACTIVE_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,50,69,10\r
+    CONTROL         "Disable sound",IDC_INACTIVE_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,109,63,79,10\r
+    GROUPBOX        "When Minimized",IDC_STATIC,199,7,92,73\r
+    RTEXT           "Run at priority:",IDC_MINIMIZED_PRI,207,18,51,10,SS_CENTERIMAGE | WS_TABSTOP\r
+    COMBOBOX        IDC_MINIMIZED_PRIORITY,207,30,76,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Pause emulation",IDC_MINIMIZED_PAUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,50,69,10\r
+    CONTROL         "Disable sound",IDC_MINIMIZED_NOSOUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,207,63,79,10\r
+END\r
+\r
+IDD_DISK DIALOGEX 0, 0, 300, 242\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_SETFOREGROUND | DS_3DLOOK | DS_CONTROL | DS_CENTER | DS_CENTERMOUSE | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    CONTROL         "",IDC_DISKLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,4,6,292,196\r
+    PUSHBUTTON      "Remove floppy disk image",IDC_DISKLISTREMOVE,149,223,101,15\r
+    COMBOBOX        IDC_DISKTEXT,3,205,293,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Insert floppy disk image",IDC_DISKLISTINSERT,34,223,101,15\r
+END\r
+\r
+IDD_PANEL DIALOGEX 0, 0, 420, 278\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_SYSMENU\r
+EXSTYLE WS_EX_ACCEPTFILES | WS_EX_CONTROLPARENT\r
+CAPTION "WinUAE Properties"\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    GROUPBOX        "",IDC_PANEL_FRAME,112,4,303,247,NOT WS_VISIBLE\r
+    CONTROL         "",IDC_PANELTREE,"SysTreeView32",TVS_HASLINES | TVS_SHOWSELALWAYS | TVS_NOSCROLL | WS_BORDER | WS_HSCROLL | WS_TABSTOP,5,5,101,248,WS_EX_CLIENTEDGE\r
+    GROUPBOX        "",IDC_PANEL_FRAME_OUTER,110,2,307,251\r
+    PUSHBUTTON      "Reset",IDC_RESETAMIGA,6,259,47,14\r
+    PUSHBUTTON      "Quit",IDC_QUITEMU,57,259,47,14\r
+    DEFPUSHBUTTON   "OK",IDOK,260,259,50,14\r
+    PUSHBUTTON      "Cancel",IDCANCEL,313,259,50,14\r
+    PUSHBUTTON      "Help",IDHELP,366,259,50,14,WS_DISABLED\r
+    PUSHBUTTON      "Restart",IDC_RESTARTEMU,109,259,47,14,NOT WS_VISIBLE\r
+END\r
+\r
+IDD_PATHS DIALOGEX 0, 0, 300, 237\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    LTEXT           "System ROMs:",IDC_PATHS_ROML,14,9,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_ROM,14,22,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_ROMS,281,22,11,15\r
+    LTEXT           "Configuration files:",IDC_PATHS_CONFIGL,14,40,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_CONFIG,14,52,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_CONFIGS,281,52,11,15\r
+    LTEXT           "Screenshots:",IDC_PATHS_SCREENSHOTL,14,71,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_SCREENSHOT,14,83,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_SCREENSHOTS,281,83,11,15\r
+    LTEXT           "State files:",IDC_PATHS_STATEFILEL,14,102,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_SAVESTATE,14,114,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_SAVESTATES,281,114,11,15\r
+    LTEXT           "Videos:",IDC_PATHS_AVIOUTPUTL,14,132,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_AVIOUTPUT,14,144,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_AVIOUTPUTS,282,144,11,15\r
+    LTEXT           "Saveimages:",IDC_PATHS_SAVEIMAGEL,14,163,260,8,SS_CENTERIMAGE\r
+    EDITTEXT        IDC_PATHS_SAVEIMAGE,14,175,261,15,ES_AUTOHSCROLL\r
+    PUSHBUTTON      "...",IDC_PATHS_SAVEIMAGES,281,175,11,15\r
+    PUSHBUTTON      "Reset to defaults",IDC_PATHS_DEFAULT,14,199,92,14\r
+    PUSHBUTTON      "Rescan ROMs",IDC_ROM_RESCAN,14,218,92,14\r
+    PUSHBUTTON      "Clear registry",IDC_RESETREGISTRY,112,218,77,14\r
+    COMBOBOX        IDC_PATHS_DEFAULTTYPE,112,199,163,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Clear disk history",IDC_RESETDISKHISTORY,198,218,77,14\r
+END\r
+\r
+IDD_QUICKSTART DIALOGEX 0, 0, 300, 242\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    GROUPBOX        "Emulated Hardware",IDC_QUICKSTART_CONFIG,3,0,294,54\r
+    RTEXT           "Model:",IDC_STATIC,5,14,50,10,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_QUICKSTART_MODEL,59,12,233,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    RTEXT           "Configuration:",IDC_STATIC,5,33,50,10,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_QUICKSTART_CONFIGURATION,59,31,233,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Compatibility vs Required CPU Power ",IDC_QUICKSTART_COMPA,3,56,294,33\r
+    RTEXT           "Best compatibility",IDC_STATIC,13,70,67,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_QUICKSTART_COMPATIBILITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_TOP | WS_TABSTOP,88,65,115,21\r
+    RTEXT           "Low compatibility",IDC_STATIC,215,70,63,10,SS_CENTERIMAGE\r
+    GROUPBOX        "Host Configuration",IDC_QUICKSTART_HOST,3,91,294,33\r
+    RTEXT           "Configuration:",IDC_STATIC,5,105,55,10,SS_CENTERIMAGE\r
+    COMBOBOX        IDC_QUICKSTART_HOSTCONFIG,65,103,225,50,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP\r
+    GROUPBOX        "Emulated Floppy Drives",IDC_QUICKSTART_DF,3,126,294,84\r
+    CONTROL         "Floppy drive DF0:",IDC_DF0QENABLE,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,10,136,72,15\r
+    PUSHBUTTON      "Select disk image",IDC_DF0QQ,85,136,98,15\r
+    RTEXT           "Write-protected",IDC_STATIC,185,139,56,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF0WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,246,137,10,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT0Q,261,136,30,15\r
+    COMBOBOX        IDC_DF0TEXTQ,9,154,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    CONTROL         "Floppy drive DF1:",IDC_DF1QENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,172,71,15\r
+    PUSHBUTTON      "Select disk image",IDC_DF1QQ,85,172,98,15\r
+    RTEXT           "Write-protected",IDC_STATIC,185,175,55,10,SS_CENTERIMAGE\r
+    CONTROL         "",IDC_DF1WPQ,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,246,173,10,15\r
+    PUSHBUTTON      "Eject",IDC_EJECT1Q,261,172,30,15\r
+    COMBOBOX        IDC_DF1TEXTQ,9,190,282,75,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP\r
+    PUSHBUTTON      "Set configuration",IDC_QUICKSTART_SETCONFIG,9,219,72,15,NOT WS_VISIBLE\r
+    GROUPBOX        "Mode",IDC_STATIC,190,211,107,27,BS_LEFT\r
+    CONTROL         "Start in Quickstart mode",IDC_QUICKSTARTMODE,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,197,222,94,10\r
+END\r
+\r
+IDD_FRONTEND DIALOGEX 0, 0, 420, 242\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_3DLOOK | DS_CONTROL | WS_CHILD\r
+FONT 8, "MS Sans Serif", 0, 0, 0x1\r
+BEGIN\r
+    CONTROL         "",IDC_FE_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,6,9,235,124\r
+    GROUPBOX        "",IDC_FE_INFO,249,140,160,95\r
+    GROUPBOX        "",IDC_FE_SCREENSHOT,249,7,160,128\r
+END\r
+\r
+IDD_PROGRESSBAR DIALOGEX 0, 0, 229, 58\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Processing..."\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    PUSHBUTTON      "Cancel",IDCANCEL,88,40,50,14\r
+    CONTROL         "",IDC_PROGRESSBAR,"msctls_progress32",PBS_SMOOTH | WS_BORDER,7,19,215,14\r
+    CTEXT           "x",IDC_PROGRESSBAR_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP\r
+END\r
+\r
+IDD_STRINGBOX DIALOGEX 0, 0, 229, 58\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU\r
+CAPTION "Enter text..."\r
+FONT 8, "MS Sans Serif", 0, 0, 0x0\r
+BEGIN\r
+    DEFPUSHBUTTON   "OK",IDOK,48,39,50,14\r
+    PUSHBUTTON      "Cancel",IDCANCEL,151,39,50,14\r
+    EDITTEXT        IDC_STRINGBOXEDIT,7,17,214,14,ES_AUTOHSCROLL | ES_WANTRETURN\r
+    CTEXT           "Custom input event",IDC_STRINGBOX_TEXT,23,5,187,10,SS_CENTERIMAGE | WS_TABSTOP\r
+END\r
+\r
+IDD_DEBUGGER DIALOGEX 0, 0, 454, 368\r
+STYLE DS_LOCALEDIT | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_THICKFRAME\r
+EXSTYLE WS_EX_CONTROLPARENT\r
+CAPTION "WinUAE Debugger"\r
+FONT 8, "Courier New", 0, 0, 0x0\r
+BEGIN\r
+    EDITTEXT        IDC_DBG_OUTPUT1,1,79,370,262,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_VSCROLL | NOT WS_TABSTOP\r
+    EDITTEXT        IDC_DBG_OUTPUT2,1,79,370,262,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_VSCROLL | NOT WS_TABSTOP\r
+    LISTBOX         IDC_DBG_MEM,1,92,370,249,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_DASM,1,92,370,249,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    EDITTEXT        IDC_DBG_MEMINPUT,1,79,36,12,ES_AUTOHSCROLL | ES_WANTRETURN\r
+    EDITTEXT        IDC_DBG_INPUT,1,342,354,12,ES_AUTOHSCROLL | ES_WANTRETURN\r
+    PUSHBUTTON      "?",IDC_DBG_HELP,356,342,15,12,NOT WS_TABSTOP\r
+    PUSHBUTTON      "Set to PC",IDC_DBG_MEMTOPC,38,79,45,12,NOT WS_TABSTOP\r
+    LISTBOX         IDC_DBG_DREG,1,1,52,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_AREG,54,1,52,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_AMEM,106,1,231,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_CCR,338,1,57,42,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_SP_VBR,338,44,115,34,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_MMISC,396,1,57,42,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_PC,1,68,52,10,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_PREFETCH,54,68,283,10,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_FPREG,372,218,81,66,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_FPSR,372,285,81,34,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_MISCCPU,372,320,81,34,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    CONTROL         "",IDC_DBG_STATUS,"msctls_statusbar32",0x103,0,355,453,12\r
+    LISTBOX         IDC_DBG_BRKPTS,1,79,370,262,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_VSCROLL\r
+    LISTBOX         IDC_DBG_MCUSTOM,372,79,81,138,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT\r
+    LISTBOX         IDC_DBG_MISC,1,79,370,262,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_VSCROLL\r
+    LISTBOX         IDC_DBG_CUSTOM,1,79,370,262,LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_VSCROLL\r
+END\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Icon\r
+//\r
+\r
+// Icon with lowest ID value placed first to ensure application icon\r
+// remains consistent on all systems.\r
+IDI_APPICON             ICON                    "winuae.ico"\r
+IDI_FLOPPY              ICON                    "35floppy.ico"\r
+IDI_ABOUT               ICON                    "amigainfo.ico"\r
+IDI_HARDDISK            ICON                    "Drive.ico"\r
+IDI_CPU                 ICON                    "cpu.ico"\r
+IDI_PORTS               ICON                    "joystick.ico"\r
+IDI_INPUT               ICON                    "joystick.ico"\r
+IDI_MISC1               ICON                    "misc.ico"\r
+IDI_MISC2               ICON                    "misc.ico"\r
+IDI_MOVE_UP             ICON                    "move_up.ico"\r
+IDI_MOVE_DOWN           ICON                    "move_dow.ico"\r
+IDI_AVIOUTPUT           ICON                    "avioutput.ico"\r
+IDI_DISK                ICON                    "Drive.ico"\r
+IDI_CONFIGFILE          ICON                    "file.ico"\r
+IDI_FOLDER              ICON                    "folder.ico"\r
+IDI_SOUND               ICON                    "sound.ico"\r
+IDI_DISPLAY             ICON                    "screen.ico"\r
+IDI_ROOT                ICON                    "root.ico"\r
+IDI_MEMORY              ICON                    "chip.ico"\r
+IDI_QUICKSTART          ICON                    "quickstart.ico"\r
+IDI_PATHS               ICON                    "paths.ico"\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Version\r
+//\r
+\r
+VS_VERSION_INFO VERSIONINFO\r
+ FILEVERSION 1,5,0,0\r
+ PRODUCTVERSION 1,5,0,0\r
+ FILEFLAGSMASK 0x3fL\r
+#ifdef _DEBUG\r
+ FILEFLAGS 0x1L\r
+#else\r
+ FILEFLAGS 0x0L\r
+#endif\r
+ FILEOS 0x40004L\r
+ FILETYPE 0x1L\r
+ FILESUBTYPE 0x0L\r
+BEGIN\r
+    BLOCK "StringFileInfo"\r
+    BEGIN\r
+        BLOCK "040904b0"\r
+        BEGIN\r
+            VALUE "FileDescription", "WinUAE"\r
+            VALUE "FileVersion", "1.5.0"\r
+            VALUE "InternalName", "WinUAE"\r
+            VALUE "LegalCopyright", "© 1996-2007 under the GNU Public License (GPL)"\r
+            VALUE "OriginalFilename", "WinUAE.exe"\r
+            VALUE "ProductName", "WinUAE"\r
+            VALUE "ProductVersion", "1.5.0"\r
+        END\r
+    END\r
+    BLOCK "VarFileInfo"\r
+    BEGIN\r
+        VALUE "Translation", 0x409, 1200\r
+    END\r
+END\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Cursor\r
+//\r
+\r
+IDC_MYHAND              CURSOR                  "H_arrow.cur"\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Menu\r
+//\r
+\r
+IDM_SYSTRAY MENU \r
+BEGIN\r
+    POPUP "Menu"\r
+    BEGIN\r
+        MENUITEM "Configuration",               ID_ST_CONFIGURATION\r
+        POPUP "Floppy drives"\r
+        BEGIN\r
+            MENUITEM "Eject all drives",            ID_ST_EJECTALL\r
+            MENUITEM "DF0:",                        ID_ST_DF0\r
+            MENUITEM "DF1:",                        ID_ST_DF1\r
+            MENUITEM "DF2:",                        ID_ST_DF2\r
+            MENUITEM "DF3:",                        ID_ST_DF3\r
+        END\r
+        MENUITEM "Reset",                       ID_ST_RESET\r
+        MENUITEM "Help",                        ID_ST_HELP\r
+        MENUITEM "Quit WinUAE",                 ID_ST_QUIT\r
+    END\r
+END\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// WAVE\r
+//\r
+\r
+IDR_DRIVE_STARTUP_A500_1 WAVE                    "drive_startup.wav"\r
+IDR_DRIVE_CLICK_A500_1  WAVE                    "drive_click.wav"\r
+IDR_DRIVE_SPIN_A500_1   WAVE                    "drive_spin.wav"\r
+IDR_DRIVE_SNATCH_A500_1 WAVE                    "drive_snatch.wav"\r
+IDR_DRIVE_SPINND_A500_1 WAVE                    "drive_spinnd.wav"\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Bitmap\r
+//\r
+\r
+IDB_XARCADE             BITMAP                  "xarcade-winuae.bmp"\r
+IDB_LCD160X43           BITMAP                  "lcd.bmp"\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// DESIGNINFO\r
+//\r
+\r
+#ifdef APSTUDIO_INVOKED\r
+GUIDELINES DESIGNINFO \r
+BEGIN\r
+    IDD_HARDFILE, DIALOG\r
+    BEGIN\r
+        BOTTOMMARGIN, 224\r
+    END\r
+END\r
+#endif    // APSTUDIO_INVOKED\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// String Table\r
+//\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_KICKSTART           "ROM"\r
+    IDS_DISK                "Disk swapper"\r
+    IDS_DISPLAY             "Display"\r
+    IDS_HARDDISK            "Hard drives"\r
+    IDS_FLOPPY              "Floppy drives"\r
+    IDS_ABOUT               "About"\r
+    IDS_LOADSAVE            "Configurations"\r
+    IDS_AVIOUTPUT           "Output"\r
+    IDS_PORTS               "Game & I/O ports"\r
+    IDS_MISC1               "Misc"\r
+    IDS_MEMORY              "RAM"\r
+    IDS_CPU                 "CPU and FPU"\r
+    IDS_CHIPSET             "Chipset"\r
+    IDS_INPUT               "Input"\r
+    IDS_FILTER              "Filter"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_MISC2               "Priority"\r
+    IDS_PATHS               "Paths"\r
+    IDS_QUICKSTART          "Quickstart"\r
+    IDS_FRONTEND            "Frontend"\r
+    IDS_CHIPSET2            "Adv. Chipset"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_EXTTEXT             "Floppy disk image files"\r
+    IDS_EXTACTUAL           "ADF"\r
+    IDS_SOUND               "Sound"\r
+    IDS_CDROM               "CD-ROM"\r
+    IDS_FRAMERATE           "Every %1Frame"\r
+    IDS_SECOND              "second "\r
+    IDS_THIRD               "third "\r
+    IDS_FOURTH              "fourth "\r
+    IDS_FIFTH               "fifth "\r
+    IDS_SIXTH               "sixth "\r
+    IDS_SEVENTH             "seventh "\r
+    IDS_EIGHTH              "eighth "\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_NINTH               "ninth "\r
+    IDS_TENTH               "tenth "\r
+    IDS_SELECTADF           "Select a floppy disk image file..."\r
+    IDS_ADF                 "Floppy disk image files"\r
+    IDS_CHOOSEBLANK         "Choose a blank floppy disk image file..."\r
+    IDS_SELECTHDF           "Select a hard disk image file..."\r
+    IDS_HDF                 "Hard disk image files"\r
+    IDS_SELECTUAE           "Select a WinUAE configuration file..."\r
+    IDS_UAE                 "WinUAE configuration files"\r
+    IDS_SELECTROM           "Select a system ROM file..."\r
+    IDS_ROM                 "System ROM files"\r
+    IDS_SELECTKEY           "Select a system ROM key file..."\r
+    IDS_KEY                 "System ROM key files"\r
+    IDS_SELECTINFO          "Select information for your configuration..."\r
+    IDS_NONE                "none"\r
+    IDS_VOLUME              "Volume"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_SELECTFILESYSROOT   "Please select the root directory of the file system..."\r
+    IDS_DEFAULTMIDIOUT      "Default MIDI-Out Device"\r
+    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"\r
+    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.\nKarsten Bock, Gavin Fance, Dirk Trowe, Christoph Meier and Christian Schindler - Freezer cartridge hardware support."\r
+    IDS_INVALIDPRTPORT      "The printer you have in this configuration is not valid on this machine.\n"\r
+    IDS_RESTOREUSS          "Restore a WinUAE snapshot file"\r
+    IDS_USS                 "WinUAE snapshot files"\r
+    IDS_WRONGOSVERSION      "WinUAE is no longer supported on Windows NT.  Please upgrade to either Windows 2000 or Windows XP or a later version."\r
+    IDS_SELECTFLASH         "Select a flash or battery-backed RAM file..."\r
+    IDS_FLASH               "WinUAE flash or battery-backed RAM file"\r
+    IDS_INPUTHOSTWIDGET     "Input source"\r
+    IDS_INPUTAMIGAEVENT     "Input target"\r
+    IDS_INPUTAUTOFIRE       "Autofire"\r
+    IDS_SAVEUSS             "Save a WinUAE snapshot file"\r
+    IDS_MIDIOVERFLOW        "Sysexbuffer overflow. Should not happen. Please report this to\nberndroesch1@compuserve.de"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_PATH                "Path"\r
+    IDS_RW                  "R/W"\r
+    IDS_SECTORS             "Sectors"\r
+    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ó"\r
+    IDS_RESERVED            "Reserved"\r
+    IDS_BLOCKSIZE           "Block size"\r
+    IDS_NAME                "Name"\r
+    IDS_DESCRIPTION         "Description"\r
+    IDS_COULDNOTLOADCONFIG  "Could not load the selected configuration!\n"\r
+    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"\r
+    IDS_MUSTSELECTCONFIG    "You must select a configuration or enter a name before selecting Load...\n"\r
+    IDS_INVALIDCOMPORT      "The serial port you have in this configuration is not valid on this machine.\n"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_HFDSIZE             "Size"\r
+    IDS_DEVICE              "Device"\r
+    IDS_BOOTPRI             "BootPri"\r
+    IDS_FLOPPY_COMPATIBLE   " (compatible)"\r
+    IDS_FLOPPY_TURBO        "Turbo"\r
+    IDS_YES                 "yes"\r
+    IDS_NO                  "no"\r
+    IDS_PRI_ABOVENORMAL     "Above Normal"\r
+    IDS_PRI_NORMAL          "Normal"\r
+    IDS_PRI_BELOWNORMAL     "Below Normal"\r
+    IDS_PRI_LOW             "Low"\r
+    IDS_OLDRTGLIBRARY       "The installed LIBS:Picasso96/rtg.library (%d.%d) should be updated.\nA newer version is included in the ""Amiga Programs"" directory\n of the WinUAE distribution archive.\n\nNewer library version fixes graphics problems and increases performance."\r
+    IDS_DEFAULT_AF2005      "Amiga Forever 2005+"\r
+    IDS_DEFAULT_AF          "Amiga Forever"\r
+    IDS_DEFAULT_WINUAE      "WinUAE default (old)"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_SOUND_STEREO2       "Cloned Stereo (4 Channels)"\r
+    IDS_INPUT_CUSTOMEVENT   "<Custom event>"\r
+    IDS_DEFAULT_NEWWINUAE   "WinUAE default (new)"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_UNSUPPORTEDPIXELFORMAT \r
+                            "Error: unsupported pixel format. Please use a different screen mode.\n"\r
+    IDS_MUSTENTERNAME       "You must select a configuration or enter a name before selecting Save...\n"\r
+    IDS_MUSTSELECTCONFIGFORDELETE \r
+                            "You must select a configuration or enter a name before selecting Delete...\n"\r
+    IDS_DELETECONFIGCONFIRMATION \r
+                            "Are you sure you want to Delete this configuration?\n"\r
+    IDS_DELETECONFIGTITLE   "Confirm Delete"\r
+    IDS_MUSTSELECTPATH      "You must select a path!"\r
+    IDS_SETTINGSERROR       "Settings error"\r
+    IDS_MUSTSELECTNAME      "You must select a name for the volume!"\r
+    IDS_MUSTSELECTFILE      "You must select a file!"\r
+    IDS_FAILEDHARDFILECREATION "Failed to create hard disk image file..."\r
+    IDS_CREATIONERROR       "Creation error"\r
+    IDS_ERRORTITLE          "WinUAE message"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_INP                 "WinUAE Input Recording"\r
+    IDS_RESTOREINP          "Playback a WinUAE input recording"\r
+    IDS_SAVEINP             "Record a WinUAE input recording"\r
+    IDS_SCREEN_WINDOWED     "Windowed"\r
+    IDS_SCREEN_FULLSCREEN   "Fullscreen"\r
+    IDS_SCREEN_FULLWINDOW   "Full-window"\r
+    IDS_SCREEN_VSYNC        "VSync"\r
+    IDS_SOUND_MONO          "Mono"\r
+    IDS_SOUND_MIXED         "Mixed"\r
+    IDS_SOUND_STEREO        "Stereo"\r
+    IDS_SOUND_INTERPOL_DISABLED "Disabled"\r
+    IDS_SOUND_FILTER_OFF    "Always off"\r
+    IDS_SOUND_FILTER_EMULATED "Emulated (A500)"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_SOUND_FILTER_EMULATED_E "Emulated (A1200)"\r
+    IDS_INPUT_COMPATIBILITY "Compatibility mode"\r
+    IDS_INPUT_CUSTOM        "Configuration #%d"\r
+    IDS_INPUT_COPY_DEFAULT  "Default"\r
+    IDS_INPUT_COPY_CUSTOM   "Config #%d"\r
+    IDS_3D_NO_FILTER        "Point (%d-bit)"\r
+    IDS_3D_BILINEAR         "Bilinear (%d-bit)"\r
+    IDS_VSYNC_DEFAULT       "Default"\r
+    IDS_DRIVESOUND_NONE     "No sound"\r
+    IDS_DRIVESOUND_DEFAULT_A500 "A500 (WinUAE built-in)"\r
+    IDS_AVIOUTPUT_NOCODEC   "no codec selected"\r
+    IDS_DISK_IMAGENAME      "Disk image"\r
+    IDS_DISK_DRIVENAME      "Drive"\r
+    IDS_AGA8BIT             "AGA emulation requires a 16-bit or higher display depth.\nSwitching from 8-bit to 16-bit."\r
+    IDS_UNSUPPORTEDSCREENMODE \r
+                            "The selected screen mode can't be displayed in a window, because %s\nSwitching to full-screen display."\r
+    IDS_UNSUPPORTEDSCREENMODE_1 \r
+                            "the desktop is running in an unknown color mode."\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_UNSUPPORTEDSCREENMODE_2 \r
+                            "the desktop is running in 8-bit color depth, which WinUAE can't use in windowed mode."\r
+    IDS_UNSUPPORTEDSCREENMODE_3 \r
+                            "the desktop is too small for the specified window size."\r
+    IDS_UNSUPPORTEDSCREENMODE_4 \r
+                            "you selected an RTG (Picasso96) display with a color depth different from that of the desktop and an overlay was unavailable."\r
+    IDS_FLOPPYTYPE35DD      "3.5"" DD"\r
+    IDS_FLOPPYTYPE35HD      "3.5"" HD"\r
+    IDS_FLOPPYTYPE525SD     "5.25"" SD"\r
+    IDS_FLOPPYTYPEDISABLED  "Disabled"\r
+    IDS_STMENUNOFLOPPY      "No floppy disk inserted"\r
+    IDS_TREEVIEW_HARDWARE   "Hardware"\r
+    IDS_TREEVIEW_HOST       "Host"\r
+    IDS_TREEVIEW_MISC       "Miscellaneous"\r
+    IDS_TREEVIEW_SETTINGS   "Settings"\r
+    IDS_WINUAETITLE_MMB     "[Mouse active - press ALT+TAB or middle mouse button to cancel]"\r
+    IDS_WINUAETITLE_NORMAL  "[Mouse active - press ALT+TAB to cancel]"\r
+    IDS_STARTEMULATION      "Start"\r
+    IDS_TREEVIEW_ABOUT      "About"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_NOHARDDRIVES        "No hard disks detected that were either empty or RDB-partitioned."\r
+    IDS_DEFAULT_HOST        "Default Configuration"\r
+    IDS_SOUND_4CHANNEL      "4 Channels"\r
+    IDS_HF_FS_CUSTOM        "Custom"\r
+    IDS_SELECTFS            "Select file system handler (FastFileSystem, SmartFilesystem, etc.)"\r
+    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)"\r
+    IDS_STATEFILE_UNCOMPRESSED "Uncompressed"\r
+    IDS_STATEFILE_RAMDUMP   "RAM dump"\r
+    IDS_STATEFILE_WAVE      "Wave audio dump"\r
+    IDS_SOUND_SWAP_PAULA    "Paula only"\r
+    IDS_SOUND_SWAP_AHI      "AHI only"\r
+    IDS_SOUND_SWAP_BOTH     "Both"\r
+    IDS_SOUND_FILTER_ON_AGA "Always on (A500)"\r
+    IDS_SOUND_FILTER_ON_A500 "Always on (A1200)"\r
+    IDS_DRIVESOUND_PC_FLOPPY "PC floppy drive %c"\r
+    IDS_FLOPPYTYPE35DDESCOM "3.5"" ESCOM"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    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."\r
+    IDS_NUMSG_NOROMKEY      "Could not find system ROM key file."\r
+    IDS_NUMSG_KSROMCRCERROR "System ROM checksum incorrect. The system ROM image file may be corrupt."\r
+    IDS_NUMSG_KSROMREADERROR "Error while reading system ROM."\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_NUMSG_NOEXTROM      "No extended ROM found."\r
+    IDS_NUMSG_MODRIP_NOTFOUND "No music modules or packed data found."\r
+    IDS_NUMSG_MODRIP_FINISHED "Scan finished."\r
+    IDS_NUMSG_MODRIP_SAVE   "Module/packed data found\n%s\nStart address %08.8X, Size %d bytes\nWould you like to save it?"\r
+    IDS_NUMSG_KS68020       "The selected system ROM requires a 68020 with 32-bit addressing or 68030 or higher CPU."\r
+    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."\r
+    IDS_NUMSG_STATEHD       "WARNING: Current configuration is not fully compatible with state saves.\nThis message will not appear again."\r
+    IDS_NUMSG_NOCAPS        "Selected disk image needs the SPS plugin\nwhich is available from\nhttp//www.softpres.org/"\r
+    IDS_NUMSG_OLDCAPS       "You need an updated SPS plugin\nwhich is available from\nhttp//www.softpres.org/"\r
+    IDS_IMGCHK_BOOTBLOCKCRCERROR \r
+                            "The selected floppy disk image is not bootable (boot block checksum error)"\r
+    IDS_IMGCHK_BOOTBLOCKNO  "The selected floppy disk image is not bootable (no boot block)"\r
+    IDS_IMGCHK_DAMAGED      "The selected floppy disk image is damaged or unformatted"\r
+    IDS_IMGCHK_KS2          "The selected floppy disk image requires a 2.04 or later system ROM.\nThe configuration has been updated."\r
+    IDS_IMGCHK_KS3          "The selected floppy disk image requires a 3.0 or later system ROM.\nThe configuration has been updated."\r
+    IDS_ROMSCANEND          "Scan of ROMs finished"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_ROM_AVAILABLE       "available"\r
+    IDS_ROM_UNAVAILABLE     "unavailable"\r
+    IDS_HARDDRIVESAFETYWARNING1 \r
+                            "Warning: The drive safety check is active. Selected drive is not empty and non-RDB partitioned."\r
+    IDS_NUMSG_KS68EC020     "The selected system ROM requires a 68020 with 24-bit addressing or higher CPU."\r
+    IDS_ROMSCANNOROMS       "No supported system ROMs detected."\r
+    IDS_NUMSG_KICKREP       "You need to have a floppy disk (image file) in DF0: to use the system ROM replacement."\r
+    IDS_NUMSG_KICKREPNO     "The floppy disk (image file) in DF0: is not compatible with the system ROM replacement functionality."\r
+    IDS_NUMSG_NOROM         "Could not load system ROM, trying system ROM replacement."\r
+    IDS_HDCLONE_OK          "Hard drive image file created succesfully."\r
+    IDS_HDCLONE_FAIL        "Hard drive image file creation failed.\nError code %d:%d."\r
+    IDS_NUMSG_KS68030       "The selected system ROM requires a 68030 CPU."\r
+    IDS_NUMSG_EXPROMNEED    "One of the following expansion boot ROMs is required:\n\n%s\n\nCheck the System ROM path in the Paths panel and click Rescan ROMs."\r
+    IDS_HARDDRIVESAFETYWARNING2 \r
+                            "Warning: The drive safety check has been disabled, and non-empty and non-RDB partitioned hard disk(s) were detected."\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_QS_MODELS           "A500\nA500+\nA600\nA1000\nA1200\nA3000\nA4000\nCD32\nCDTV\nArcadia Multi Select system\nExpanded WinUAE example configuration"\r
+    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)."\r
+    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"\r
+    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"\r
+    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\n""ICS"" Denise without EHB support\nVery first A1000 models had Denise without EHB capability.\n256 KB Chip RAM\n Unexpanded A1000. All later A1000 models were sold with a 256 KB RAM expansion built-in."\r
+    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."\r
+    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."\r
+    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"\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+    IDS_QS_MODEL_UAE        "High-end expanded configuration"\r
+    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."\r
+    IDS_QS_MODEL_A3000      "1.4 ROM, 2MB Chip + 8MB Fast\n\n3.1 ROM, 2MB Chip + 8MB Fast\n"\r
+    IDS_QS_MODEL_A4000      "68030, 3.1 ROM, 2MB Chip + 8MB Fast\n\n68040, 3.1 ROM, 2MB Chip + 8MB Fast\n"\r
+    IDS_QS_MODEL_A4000T     "A4000T (test)\nA4000T"\r
+END\r
+\r
+#endif    // English (U.S.) resources\r
+/////////////////////////////////////////////////////////////////////////////\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+// Finnish resources\r
+\r
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FIN)\r
+#ifdef _WIN32\r
+LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT\r
+#pragma code_page(1252)\r
+#endif //_WIN32\r
+\r
+#ifdef APSTUDIO_INVOKED\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// TEXTINCLUDE\r
+//\r
+\r
+1 TEXTINCLUDE \r
+BEGIN\r
+    "resource.\0"\r
+END\r
+\r
+3 TEXTINCLUDE \r
+BEGIN\r
+    "\r\0"\r
+END\r
+\r
+2 TEXTINCLUDE \r
+BEGIN\r
+    "#include ""afxres.h""\r\0"\r
+END\r
+\r
+#endif    // APSTUDIO_INVOKED\r
+\r
+#endif    // Finnish resources\r
+/////////////////////////////////////////////////////////////////////////////\r
+\r
+\r
+\r
+#ifndef APSTUDIO_INVOKED\r
+/////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Generated from the TEXTINCLUDE 3 resource.\r
+//\r
+\r\r
+/////////////////////////////////////////////////////////////////////////////\r
+#endif    // not APSTUDIO_INVOKED\r
+\r
index 4a219d1b80190633f457827dcf556aaedf056aab..59b594b7fa4d0f06a57a3517e0b7a61d743fb362 100644 (file)
@@ -1636,7 +1636,7 @@ HMODULE language_load(WORD language)
                            if (vsFileInfo &&
                                HIWORD(vsFileInfo->dwProductVersionMS) == UAEMAJOR
                                && LOWORD(vsFileInfo->dwProductVersionMS) == UAEMINOR
-                               && HIWORD(vsFileInfo->dwProductVersionLS) == UAESUBREV) {
+                               && (HIWORD(vsFileInfo->dwProductVersionLS) == UAESUBREV || HIWORD(vsFileInfo->dwProductVersionLS) == UAESUBREV - 1)) {
                                success = TRUE;
                                write_log ("Translation DLL '%s' loaded and enabled\n", dllbuf);
                            } else {
@@ -1775,7 +1775,7 @@ void logging_init(void)
        SystemInfo.wProcessorLevel, SystemInfo.wProcessorRevision,
        SystemInfo.dwNumberOfProcessors);
     write_log ("\n(c) 1995-2001 Bernd Schmidt   - Core UAE concept and implementation."
-              "\n(c) 1998-2007 Toni Wilen      - Win32 port, core code updates."
+              "\n(c) 1998-2008 Toni Wilen      - Win32 port, core code updates."
               "\n(c) 1996-2001 Brian King      - Win32 port, Picasso96 RTG, and GUI."
               "\n(c) 1996-1999 Mathias Ortmann - Win32 port and bsdsocket support."
               "\n(c) 2000-2001 Bernd Meyer     - JIT engine."
index e5f3f3b742c9f05fbe21698330668208ca462e14..262e3d47bbf9338a3125f24ed5288e6896082f21 100644 (file)
@@ -15,9 +15,9 @@
 #define GETBDM(x) (((x) - ((x / 10000) * 10000)) / 100)
 #define GETBDD(x) ((x) % 100)
 
-#define WINUAEBETA 2
+#define WINUAEBETA 3
 #define WINUAEPUBLICBETA 1
-#define WINUAEDATE MAKEBD(2007, 12, 25)
+#define WINUAEDATE MAKEBD(2007, 12, 30)
 #define WINUAEEXTRA ""
 #define WINUAEREV ""
 
index c2fe2e9ed0771da77a5a0fd22b8479b6aedd5118..09d78bb26db380a4c29b250a3caae9a5ec35de87 100644 (file)
@@ -2048,6 +2048,11 @@ void InitializeListView (HWND hDlg)
                sprintf (devname_str, "*SCSI%d*", uci->controller - HD_CONTROLLER_SCSI0);
                strcpy (volname_str, "n/a");
                strcpy (bootpri_str, "n/a");
+           } else if (uci->controller == HD_CONTROLLER_PCMCIA_SRAM) {
+               strcpy (blocksize_str, "n/a");
+               strcpy(devname_str, "*SCSRAM*");
+               strcpy (volname_str, "n/a");
+               strcpy (bootpri_str, "n/a");
            } else if (type == FILESYS_HARDFILE) {
                sprintf (blocksize_str, "%d", uci->blocksize);
                strcpy (devname_str, uci->devname);
@@ -6133,6 +6138,7 @@ static void inithdcontroller (HWND hDlg)
     SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_ADDSTRING, 0, (LPARAM)"SCSI4");
     SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_ADDSTRING, 0, (LPARAM)"SCSI5");
     SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_ADDSTRING, 0, (LPARAM)"SCSI6");
+    //SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_ADDSTRING, 0, (LPARAM)"SCSRAM");
     SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_SETCURSEL, 0, 0);
 }
 
@@ -6195,6 +6201,14 @@ static void updatehdfinfo (HWND hDlg, int force)
            zfile_fseek (zf, 0, SEEK_END);
            bsize = zfile_ftell (zf);
            zfile_fclose (zf);
+           if (bsize == -1) { /* perhaps file is >=2G? */
+               FILE *fp = fopen (current_hfdlg.filename, "rb");
+               if (fp) {
+                   _fseeki64 (fp, 0, SEEK_END);
+                   bsize = _ftelli64 (fp);
+                   fclose (fp);
+               }
+           }
        }
     }
     cyls = 0;
@@ -6352,19 +6366,20 @@ extern int harddrive_to_hdf(HWND, struct uae_prefs*, int);
 static INT_PTR CALLBACK HarddriveSettingsProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
 {
     static int recursive = 0;
-    int i, index;
+    int i;
     LRESULT posn;
     static int oposn;
 
     switch (msg) {
     case WM_INITDIALOG:
+    {
+       int index;
        oposn = -1;
        hdf_init ();
        recursive++;
        inithdcontroller (hDlg);
        CheckDlgButton (hDlg, IDC_HDF_RW, current_hfdlg.rw);
        SendDlgItemMessage(hDlg, IDC_HARDDRIVE, CB_RESETCONTENT, 0, 0);
-       SendDlgItemMessage (hDlg, IDC_HDF_CONTROLLER, CB_SETCURSEL, current_hfdlg.controller, 0);
        ew (hDlg, IDC_HARDDRIVE_IMAGE, FALSE);
        ew (hDlg, IDOK, FALSE);
        ew (hDlg, IDC_HDF_RW, FALSE);
@@ -6381,7 +6396,7 @@ static INT_PTR CALLBACK HarddriveSettingsProc (HWND hDlg, UINT msg, WPARAM wPara
        }
        recursive--;
        return TRUE;
-
+    }
     case WM_COMMAND:
        if (recursive)
            break;
@@ -6406,7 +6421,7 @@ static INT_PTR CALLBACK HarddriveSettingsProc (HWND hDlg, UINT msg, WPARAM wPara
                break;
            case IDC_HARDDRIVE_IMAGE:
                if (posn != CB_ERR)
-                   harddrive_to_hdf(hDlg, &workprefs, posn);
+                   harddrive_to_hdf (hDlg, &workprefs, posn);
                break;
            }
        }
@@ -6537,6 +6552,7 @@ static void harddisk_edit (HWND hDlg)
     }
     else if (type == FILESYS_HARDDRIVE) /* harddisk */
     {
+       current_hfdlg.controller = uci->controller;
        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';
index e8dd804ce8820b3227399d65e181988d3c525a31..7c6740031c924bdbc99423d1d04b2d9b1b54b17e 100644 (file)
@@ -3,6 +3,31 @@
 1.4.6 will be the last Windows 98/ME compatible version. 1.5.0
 will require Windows 2000 or newer.
 
+Beta 3:
+
+- input compatibility mouse switching restrictions added due to
+  stupid Windows "supermouse" features. (Problem happens when you get
+  two or more mouse button clicks from two or more virtual mice when
+  in reality there is only one physical mouse..) Also you can't just
+  select "raw mouse" because it can have different speed/acceleration
+  than Windows "supermouse" mouse cursor..
+- unusable pcmcia sram card emulation. No on the fly card insert/eject
+  support yet. (insert empty sram card before starting emulation =
+  card becomes system ram expansion automatically)
+  This will be fully implemented after 1.4.6
+- new default mapping end+shift+pause/break = IRQ7/NMI
+- hardfile info panel didn't use 2G+ compatible size check
+- IDE emulation end of drive check fixed (most block addresses after
+  2G were detected as past end of disk)
+- JIT-mode memory allocation was not disabled in non-JIT modes
+  (68000/68010 and 68020 without 32-bit address space)
+  Caused problems with cartridge emulation and more. (b2)
+- GUI aligment/spacing errors fixed (David Walker)
+- "Add Harddrive" HD controller select box updates correctly
+- "SWIV" undocumented bitplane feature broke in 145b4 (not related to
+  shres changes, just standard code cleanup copy/paste error..)
+
+
 Beta 2:
 
 - sprites outside bitplane area (AGA feature) was not working in all