puae 2.3.0

parent 6e7ec78f
...@@ -706,6 +706,7 @@ static void sys_cddev_close (void) ...@@ -706,6 +706,7 @@ static void sys_cddev_close (void)
sys_command_close (unitnum); sys_command_close (unitnum);
} }
unitnum = -1; unitnum = -1;
} }
static int command_lengths[] = { 1,2,1,1,12,2,1,1,4,1,-1,-1,-1,-1,-1,-1 }; static int command_lengths[] = { 1,2,1,1,12,2,1,1,4,1,-1,-1,-1,-1,-1,-1 };
...@@ -1450,7 +1451,7 @@ static uae_u32 REGPARAM2 akiko_wget (uaecptr addr) ...@@ -1450,7 +1451,7 @@ static uae_u32 REGPARAM2 akiko_wget (uaecptr addr)
return v; return v;
} }
uae_u32 REGPARAM2 akiko_lget (uaecptr addr) static uae_u32 REGPARAM2 akiko_lget (uaecptr addr)
{ {
uae_u32 v; uae_u32 v;
...@@ -1467,7 +1468,7 @@ uae_u32 REGPARAM2 akiko_lget (uaecptr addr) ...@@ -1467,7 +1468,7 @@ uae_u32 REGPARAM2 akiko_lget (uaecptr addr)
return v; return v;
} }
STATIC_INLINE void REGPARAM2 akiko_bput2 (uaecptr addr, uae_u32 v, int msg) static void akiko_bput2 (uaecptr addr, uae_u32 v, int msg)
{ {
uae_u32 tmp; uae_u32 tmp;
...@@ -1586,7 +1587,7 @@ static void REGPARAM2 akiko_bput (uaecptr addr, uae_u32 v) ...@@ -1586,7 +1587,7 @@ static void REGPARAM2 akiko_bput (uaecptr addr, uae_u32 v)
akiko_bput2 (addr, v, 1); akiko_bput2 (addr, v, 1);
} }
void REGPARAM2 akiko_wput (uaecptr addr, uae_u32 v) static void REGPARAM2 akiko_wput (uaecptr addr, uae_u32 v)
{ {
#ifdef JIT #ifdef JIT
special_mem |= S_WRITE; special_mem |= S_WRITE;
...@@ -1598,7 +1599,7 @@ void REGPARAM2 akiko_wput (uaecptr addr, uae_u32 v) ...@@ -1598,7 +1599,7 @@ void REGPARAM2 akiko_wput (uaecptr addr, uae_u32 v)
akiko_bput2 (addr + 0, v >> 8, 0); akiko_bput2 (addr + 0, v >> 8, 0);
} }
void REGPARAM2 akiko_lput (uaecptr addr, uae_u32 v) static void REGPARAM2 akiko_lput (uaecptr addr, uae_u32 v)
{ {
#ifdef JIT #ifdef JIT
special_mem |= S_WRITE; special_mem |= S_WRITE;
......
...@@ -58,7 +58,7 @@ static struct arcadiarom roms[] = { ...@@ -58,7 +58,7 @@ static struct arcadiarom roms[] = {
{ 35, "ar_dart.zip", "dart_", ARCADIA_GAME, 1, 4, 0, 7, 6, 3, 1, 2, 5 }, { 35, "ar_dart.zip", "dart_", ARCADIA_GAME, 1, 4, 0, 7, 6, 3, 1, 2, 5 },
{ 36, "ar_fast.zip", "fastv28.", ARCADIA_GAME, 0, 7, 6, 5, 4, 3, 2, 1, 0 }, { 36, "ar_fast.zip", "fastv28.", ARCADIA_GAME, 0, 7, 6, 5, 4, 3, 2, 1, 0 },
{ 37, "ar_ldrb.zip", "lbg240", ARCADIA_GAME, 0, 7, 6, 5, 4, 3, 2, 1, 0 }, { 37, "ar_ldrb.zip", "lbg240", ARCADIA_GAME, 0, 7, 6, 5, 4, 3, 2, 1, 0 },
{ 38, "ar_ldrba.zip",L"ldrb_", ARCADIA_GAME, 1, 2, 3, 4, 1, 0, 7, 5, 6 }, { 38, "ar_ldrba.zip","ldrb_", ARCADIA_GAME, 1, 2, 3, 4, 1, 0, 7, 5, 6 },
{ 39, "ar_ninj.zip", "ninj_", ARCADIA_GAME, 1, 1, 6, 5, 7, 4, 2, 0, 3 }, { 39, "ar_ninj.zip", "ninj_", ARCADIA_GAME, 1, 1, 6, 5, 7, 4, 2, 0, 3 },
{ 40, "ar_rdwr.zip", "rdwr_", ARCADIA_GAME, 1, 3, 1, 6, 4, 0, 5, 2, 7 }, { 40, "ar_rdwr.zip", "rdwr_", ARCADIA_GAME, 1, 3, 1, 6, 4, 0, 5, 2, 7 },
{ 41, "ar_sdwr.zip", "sdwr_", ARCADIA_GAME, 1, 6, 3, 4, 5, 2, 1, 0, 7 }, { 41, "ar_sdwr.zip", "sdwr_", ARCADIA_GAME, 1, 6, 3, 4, 5, 2, 1, 0, 7 },
......
...@@ -312,7 +312,7 @@ static void mmu_bus_error(uaecptr addr, int fc, bool write, int size) ...@@ -312,7 +312,7 @@ static void mmu_bus_error(uaecptr addr, int fc, bool write, int size)
D(bug("BUS ERROR: fc=%d w=%d log=%08x ssw=%04x PC=%08x\n", fc, write, addr, ssw, m68k_getpc())); D(bug("BUS ERROR: fc=%d w=%d log=%08x ssw=%04x PC=%08x\n", fc, write, addr, ssw, m68k_getpc()));
//write_log(L"BUS ERROR: fc=%d w=%d log=%08x ssw=%04x PC=%08x\n", fc, write, addr, ssw, m68k_getpc()); //write_log("BUS ERROR: fc=%d w=%d log=%08x ssw=%04x PC=%08x\n", fc, write, addr, ssw, m68k_getpc());
THROW(2); THROW(2);
} }
......
...@@ -96,7 +96,7 @@ int firsthist = 0; ...@@ -96,7 +96,7 @@ int firsthist = 0;
int lasthist = 0; int lasthist = 0;
static struct regstruct history[MAX_HIST]; static struct regstruct history[MAX_HIST];
static const char help[] = { static const TCHAR help[] = {
" HELP for UAE Debugger\n" " HELP for UAE Debugger\n"
" -----------------------\n\n" " -----------------------\n\n"
" g [<address>] Start execution at the current address or <address>\n" " g [<address>] Start execution at the current address or <address>\n"
...@@ -558,14 +558,7 @@ static uaecptr nextaddr (uaecptr addr, uaecptr last, uaecptr *end) ...@@ -558,14 +558,7 @@ static uaecptr nextaddr (uaecptr addr, uaecptr last, uaecptr *end)
addr = nextaddr2 (addr + 1, &next); addr = nextaddr2 (addr + 1, &next);
if (end) if (end)
*end = next; *end = next;
#if 0
if (next && addr != 0xffffffff) {
uaecptr xa = addr;
if (xa == 1)
xa = 0;
console_out_f ("%08X -> %08X (%08X)...\n", xa, xa + next - 1, next);
}
#endif
return addr; return addr;
} }
...@@ -1560,7 +1553,7 @@ static void illg_debug_do (uaecptr addr, int rwi, int size, uae_u32 val) ...@@ -1560,7 +1553,7 @@ static void illg_debug_do (uaecptr addr, int rwi, int size, uae_u32 val)
} }
} }
STATIC_INLINE int debug_mem_off (uaecptr addr) static int debug_mem_off (uaecptr addr)
{ {
return munge24 (addr) >> 16; return munge24 (addr) >> 16;
} }
...@@ -2065,7 +2058,7 @@ void memwatch_dump2 (TCHAR *buf, int bufsize, int num) ...@@ -2065,7 +2058,7 @@ void memwatch_dump2 (TCHAR *buf, int bufsize, int num)
struct memwatch_node *mwn; struct memwatch_node *mwn;
if (buf) if (buf)
memset (buf, 0, bufsize); memset (buf, 0, bufsize * sizeof (TCHAR));
for (i = 0; i < MEMWATCH_TOTAL; i++) { for (i = 0; i < MEMWATCH_TOTAL; i++) {
if ((num >= 0 && num == i) || (num < 0)) { if ((num >= 0 && num == i) || (num < 0)) {
mwn = &mwnodes[i]; mwn = &mwnodes[i];
...@@ -2495,14 +2488,7 @@ int instruction_breakpoint (TCHAR **c) ...@@ -2495,14 +2488,7 @@ int instruction_breakpoint (TCHAR **c)
return 0; return 0;
} }
} }
#if 0
if (skipaddr_start == 0xC0DEDBAD) {
trace_same_insn_count = 0;
logfile = fopen ("uae.trace", "w");
memcpy (trace_insn_copy, regs.pc_p, 10);
memcpy (&trace_prev_regs, &regs, sizeof regs);
}
#endif
do_skip = 1; do_skip = 1;
skipaddr_doskip = -1; skipaddr_doskip = -1;
return 1; return 1;
...@@ -3143,11 +3129,11 @@ static void debug_1 (void) ...@@ -3143,11 +3129,11 @@ static void debug_1 (void)
case 'f': case 'f':
if (inptr[0] == 'a') { if (inptr[0] == 'a') {
next_char(&inptr); next_char (&inptr);
find_ea (&inptr); find_ea (&inptr);
} else if (inptr[0] == 'p') { } else if (inptr[0] == 'p') {
inptr++; inptr++;
if (process_breakpoint(&inptr)) if (process_breakpoint (&inptr))
return; return;
} else { } else {
if (instruction_breakpoint (&inptr)) if (instruction_breakpoint (&inptr))
......
...@@ -1416,7 +1416,7 @@ static void make_cpu_widgets2 (GtkWidget *vbox) ...@@ -1416,7 +1416,7 @@ static void make_cpu_widgets2 (GtkWidget *vbox)
}; };
GtkWidget *hbox = gtk_hbox_new (FALSE, 10); GtkWidget *hbox = gtk_hbox_new (FALSE, 10);
GtkWidget *frame, *newbox; GtkWidget *frame, *newbox, *newbox2;
add_empty_vbox (vbox); add_empty_vbox (vbox);
gtk_widget_show (hbox); gtk_widget_show (hbox);
...@@ -1425,21 +1425,32 @@ static void make_cpu_widgets2 (GtkWidget *vbox) ...@@ -1425,21 +1425,32 @@ static void make_cpu_widgets2 (GtkWidget *vbox)
//cpu emulation //cpu emulation
newbox = make_radio_group_box ("CPU", cpu_labels, cpu_widget, 0, cpu_changed); newbox = make_radio_group_box ("CPU", cpu_labels, cpu_widget, 0, cpu_changed);
// gtk_widget_set_sensitive (newbox, sound_available);
gtk_widget_show (newbox); gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("CE"); newbox2 = gtk_check_button_new_with_label ("24-bit addressing");
gtk_widget_show (newbox); gtk_widget_show (newbox2);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
newbox2 = gtk_check_button_new_with_label ("More compatible");
gtk_widget_show (newbox2);
gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("JIT");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("68040 MMU");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
//fpu mode //fpu mode
newbox = make_radio_group_box ("FPU", fpu_labels, fpu_widget, 0, fpu_changed); newbox = make_radio_group_box ("FPU", fpu_labels, fpu_widget, 0, fpu_changed);
// gtk_widget_set_sensitive (newbox, sound_available);
gtk_widget_show (newbox); gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("More compatible");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
} }
...@@ -1665,18 +1676,18 @@ static void make_joy_widgets (GtkWidget *dvbox) ...@@ -1665,18 +1676,18 @@ static void make_joy_widgets (GtkWidget *dvbox)
GtkWidget *hbox = gtk_hbox_new (FALSE, 12); GtkWidget *hbox = gtk_hbox_new (FALSE, 12);
static const char *joylabels[] = { static const char *joylabels[] = {
"None", "None",
"Joystick 0", "Joystick 0",
"Joystick 1", "Joystick 1",
"Mouse", "Mouse",
"Keyboard Layout A (NumPad, 0 & 5 = Fire)", "Keyboard Layout A (NumPad, 0 & 5 = Fire)",
"Keyboard Layout B (Cursor, RCtrl & Alt = Fire)", "Keyboard Layout B (Cursor, RCtrl & Alt = Fire)",
"Keyboard Layout C (WASD, LAlt = Fire)", "Keyboard Layout C (WASD, LAlt = Fire)",
#ifdef XARCADE #ifdef XARCADE
"X-Arcade (Left)", "X-Arcade (Left)",
"X-Arcade (Right)", "X-Arcade (Right)",
#endif #endif
NULL NULL
}; };
add_empty_vbox (dvbox); add_empty_vbox (dvbox);
...@@ -1684,18 +1695,18 @@ static void make_joy_widgets (GtkWidget *dvbox) ...@@ -1684,18 +1695,18 @@ static void make_joy_widgets (GtkWidget *dvbox)
add_centered_to_vbox (dvbox, hbox); add_centered_to_vbox (dvbox, hbox);
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
GtkWidget *frame; GtkWidget *frame;
char buffer[20]; char buffer[20];
sprintf (buffer, "Port %d", i); sprintf (buffer, "Port %d", i);
frame = make_radio_group_box (buffer, joylabels, joy_widget[i], 0, joy_changed); frame = make_radio_group_box (buffer, joylabels, joy_widget[i], 0, joy_changed);
gtk_widget_show (frame); gtk_widget_show (frame);
gtk_box_pack_start (GTK_BOX (hbox), frame, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), frame, FALSE, TRUE, 0);
if (joy_count < 2) if (joy_count < 2)
gtk_widget_set_sensitive (joy_widget[i][2], 0); gtk_widget_set_sensitive (joy_widget[i][2], 0);
if (joy_count == 0) if (joy_count == 0)
gtk_widget_set_sensitive (joy_widget[i][1], 0); gtk_widget_set_sensitive (joy_widget[i][1], 0);
} }
add_empty_vbox (dvbox); add_empty_vbox (dvbox);
...@@ -2099,7 +2110,7 @@ static void create_guidlg (void) ...@@ -2099,7 +2110,7 @@ static void create_guidlg (void)
} pages[] = { } pages[] = {
{ "Floppy disks", make_floppy_disks }, { "Floppy disks", make_floppy_disks },
{ "Memory", make_mem_widgets }, { "Memory", make_mem_widgets },
{ "CPU", make_cpu_widgets }, { "CPU", make_cpu_widgets2 },
{ "Chipset", make_chipset_widgets }, { "Chipset", make_chipset_widgets },
{ "Sound", make_sound_widgets }, { "Sound", make_sound_widgets },
#ifdef JIT #ifdef JIT
......
...@@ -370,10 +370,10 @@ DEFEVENT(SPC_ARCADIA_PLAYER2,"Arcadia player 2",AM_K,0,0,AKS_ARCADIAPLY2) ...@@ -370,10 +370,10 @@ DEFEVENT(SPC_ARCADIA_PLAYER2,"Arcadia player 2",AM_K,0,0,AKS_ARCADIAPLY2)
DEFEVENT(SPC_ARCADIA_COIN1,"Arcadia coin player 1",AM_K,0,0,AKS_ARCADIACOIN1) DEFEVENT(SPC_ARCADIA_COIN1,"Arcadia coin player 1",AM_K,0,0,AKS_ARCADIACOIN1)
DEFEVENT(SPC_ARCADIA_COIN2,"Arcadia coin player 2",AM_K,0,0,AKS_ARCADIACOIN2) DEFEVENT(SPC_ARCADIA_COIN2,"Arcadia coin player 2",AM_K,0,0,AKS_ARCADIACOIN2)
DEFEVENT(SPC_CDTV_FRONT_PANEL_STOP,L"CDTV Front Panel Stop",AM_K,0,0,AKS_CDTV_FRONT_PANEL_STOP) DEFEVENT(SPC_CDTV_FRONT_PANEL_STOP,"CDTV Front Panel Stop",AM_K,0,0,AKS_CDTV_FRONT_PANEL_STOP)
DEFEVENT(SPC_CDTV_FRONT_PANEL_PLAYPAUSE,L"CDTV Front Panel Play/Pause",AM_K,0,0,AKS_CDTV_FRONT_PANEL_PLAYPAUSE) DEFEVENT(SPC_CDTV_FRONT_PANEL_PLAYPAUSE,"CDTV Front Panel Play/Pause",AM_K,0,0,AKS_CDTV_FRONT_PANEL_PLAYPAUSE)
DEFEVENT(SPC_CDTV_FRONT_PANEL_PREV,L"CDTV Front Panel Previous",AM_K,0,0,AKS_CDTV_FRONT_PANEL_PREV) DEFEVENT(SPC_CDTV_FRONT_PANEL_PREV,"CDTV Front Panel Previous",AM_K,0,0,AKS_CDTV_FRONT_PANEL_PREV)
DEFEVENT(SPC_CDTV_FRONT_PANEL_NEXT,L"CDTV Front Panel Next",AM_K,0,0,AKS_CDTV_FRONT_PANEL_NEXT) DEFEVENT(SPC_CDTV_FRONT_PANEL_NEXT,"CDTV Front Panel Next",AM_K,0,0,AKS_CDTV_FRONT_PANEL_NEXT)
DEFEVENT(SPC_CDTV_FRONT_PANEL_REW,L"CDTV Front Panel Rewind",AM_K,0,0,AKS_CDTV_FRONT_PANEL_REW) DEFEVENT(SPC_CDTV_FRONT_PANEL_REW,"CDTV Front Panel Rewind",AM_K,0,0,AKS_CDTV_FRONT_PANEL_REW)
DEFEVENT(SPC_CDTV_FRONT_PANEL_FF,L"CDTV Front Panel Fast Forward",AM_K,0,0,AKS_CDTV_FRONT_PANEL_FF) DEFEVENT(SPC_CDTV_FRONT_PANEL_FF,"CDTV Front Panel Fast Forward",AM_K,0,0,AKS_CDTV_FRONT_PANEL_FF)
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