Commit 850759c4 authored by mtufan's avatar mtufan

puae 2.3.2

parent 45efada1
This diff is collapsed.
......@@ -3616,7 +3616,7 @@ static void BPLCON0 (int hpos, uae_u16 v)
if (! (currprefs.chipset_mask & CSMASK_ECS_DENISE))
v &= ~0x00F1;
else if (! (currprefs.chipset_mask & CSMASK_AGA))
v &= ~0x00B1;
v &= ~0x00B0;
v &= ~(0x0200 | 0x0100 | 0x0080 | 0x0020);
#if SPRBORDER
......
......@@ -1197,7 +1197,8 @@ static uae_u32 gayle2_read (uaecptr addr)
addr &= 0xffff;
if (addr == 0x1000) {
/* Gayle ID */
if (gayle_id_cnt == 0 || gayle_id_cnt == 1 || gayle_id_cnt == 3 || ((currprefs.chipset_mask & CSMASK_AGA) && gayle_id_cnt == 7))
if (gayle_id_cnt == 0 || gayle_id_cnt == 1 || gayle_id_cnt == 3 || ((currprefs.chipset_mask & CSMASK_AGA) && gayle_id_cnt == 7) ||
(currprefs.cs_cd32cd && !currprefs.cs_ide && !currprefs.cs_pcmcia && gayle_id_cnt == 2))
v = 0x80;
else
v = 0x00;
......
This diff is collapsed.
......@@ -37,6 +37,7 @@ struct strlist {
#define MAX_INPUT_SETTINGS 4
#define GAMEPORT_INPUT_SETTINGS 3 // last slot is for gameport panel mappings
#define MAX_INPUT_SUB_EVENT 4
#define MAX_INPUT_SUB_EVENT_ALL 5
#define SPARE_SUB_EVENT 4
// this better be here than in sound.h -mustafa.
......@@ -50,10 +51,10 @@ struct strlist {
struct uae_input_device {
TCHAR *name;
TCHAR *configname;
uae_s16 eventid[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT + 1];
TCHAR *custom[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT + 1];
uae_u16 flags[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT + 1];
uae_s8 port[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT + 1];
uae_s16 eventid[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT_ALL];
TCHAR *custom[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT_ALL];
uae_u16 flags[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT_ALL];
uae_s8 port[MAX_INPUT_DEVICE_EVENTS][MAX_INPUT_SUB_EVENT_ALL];
uae_s16 extra[MAX_INPUT_DEVICE_EVENTS];
uae_s8 enabled;
};
......@@ -152,6 +153,7 @@ struct uae_prefs {
int config_version;
TCHAR config_hardware_path[MAX_DPATH];
TCHAR config_host_path[MAX_DPATH];
TCHAR config_window_title[256];
bool illegal_mem;
bool use_serial;
......
......@@ -350,7 +350,7 @@ static void kbrlabel (TCHAR *s)
}
}
static void write_config2 (struct zfile *f, int idnum, int i, int offset, TCHAR *tmp1, struct uae_input_device *id)
static void write_config2 (struct zfile *f, int idnum, int i, int offset, const TCHAR *extra, struct uae_input_device *id)
{
TCHAR tmp2[200], tmp3[200], *p;
int evt, got, j, k;
......@@ -360,6 +360,7 @@ static void write_config2 (struct zfile *f, int idnum, int i, int offset, TCHAR
int *slotorder;
int io = i + offset;
tmp2[0] = 0;
p = tmp2;
got = 0;
......@@ -404,7 +405,7 @@ static void write_config2 (struct zfile *f, int idnum, int i, int offset, TCHAR
}
}
if (p > tmp2) {
_stprintf (tmp3, "input.%d.%s%d", idnum + 1, tmp1, i);
_stprintf (tmp3, "input.%d.%s%d", idnum + 1, extra, i);
cfgfile_write_str (f, tmp3, tmp2);
}
}
......@@ -460,8 +461,8 @@ static void write_kbr_config (struct zfile *f, int idnum, int devnum, struct uae
i++;
continue;
}
tmp2[0] = 0;
p = tmp2;
p[0] = 0;
for (j = 0; j < MAX_INPUT_SUB_EVENT; j++) {
TCHAR *custom = kbr->custom[i][slotorder[j]];
evt = kbr->eventid[i][slotorder[j]];
......@@ -583,7 +584,7 @@ static void reset_inputdevice_settings (struct uae_input_device *uid)
{
unsigned int l,i;
for (l = 0; l < MAX_INPUT_DEVICE_EVENTS; l++) {
for (i = 0; i < MAX_INPUT_SUB_EVENT; i++) {
for (i = 0; i < MAX_INPUT_SUB_EVENT_ALL; i++) {
uid->eventid[l][i] = 0;
uid->flags[l][i] = 0;
xfree (uid->custom[l][i]);
......@@ -665,7 +666,7 @@ static void clear_id (struct uae_input_device *id)
#ifndef _DEBUG
int i, j;
for (i = 0; i < MAX_INPUT_DEVICE_EVENTS; i++) {
for (j = 0; j < MAX_INPUT_SUB_EVENT; j++)
for (j = 0; j < MAX_INPUT_SUB_EVENT_ALL; j++)
xfree (id->custom[i][j]);
}
#endif
......@@ -5856,7 +5857,6 @@ uae_u8 *save_inputstate (int *len, uae_u8 *dstptr)
uae_u8 *restore_inputstate (uae_u8 *src)
{
unsigned int i, j;
for (i = 0; i < MAX_JPORTS; i++) {
joydir[i] = restore_u16 ();
joybutton[i] = restore_u16 ();
......
......@@ -404,6 +404,13 @@ void fixup_prefs (struct uae_prefs *p)
p->cs_ramseyrev = 0x0f;
p->cs_mbdmac = 0;
}
} else if (p->cs_compatible == 0) {
if (p->cs_ide == IDE_A4000) {
if (p->cs_fatgaryrev < 0)
p->cs_fatgaryrev = 0;
if (p->cs_ramseyrev < 0)
p->cs_ramseyrev = 0x0f;
}
}
fixup_prefs_dimensions (p);
......
......@@ -265,7 +265,6 @@ static bool check_trace (void)
static bool get_trace (uaecptr addr, int accessmode, int size, uae_u32 *data)
{
unsigned int i;
int mode = accessmode | (size << 4);
for (i = 0; i < cputrace.memoryoffset; i++) {
struct cputracememory *ctm = &cputrace.ctm[i];
......
......@@ -30,7 +30,7 @@ int nr_cpuop_funcs;
struct mnemolookup lookuptab[] = {
{ i_ILLG, "ILLEGAL", "ILLEGAL" },
{ i_OR, "OR", "OR" },
{ i_OR, "OR", "OR" },
{ i_CHK, "CHK", "CHK" },
{ i_CHK2, "CHK2", "CHK2" },
{ i_AND, "AND", "AND" },
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment