mirror of
https://github.com/RaySollium99/picodrive.git
synced 2025-09-05 07:17:45 -04:00
68k, some fixes for musashi
This commit is contained in:
parent
eac7a97e4f
commit
5adcc16534
5 changed files with 15 additions and 7 deletions
|
@ -1 +1 @@
|
||||||
Subproject commit ee45bb2b10b3abf10a4335ea24fc029e3f61c10a
|
Subproject commit 3ac7cf1bdeecb60e2414980e8dc72ff092f69769
|
|
@ -786,13 +786,13 @@ void m68k_set_cpu_type(unsigned int cpu_type)
|
||||||
/* Execute some instructions until we use up num_cycles clock cycles */
|
/* Execute some instructions until we use up num_cycles clock cycles */
|
||||||
/* ASG: removed per-instruction interrupt checks */
|
/* ASG: removed per-instruction interrupt checks */
|
||||||
int m68k_execute(int num_cycles)
|
int m68k_execute(int num_cycles)
|
||||||
{
|
|
||||||
/* Make sure we're not stopped */
|
|
||||||
if(!CPU_STOPPED)
|
|
||||||
{
|
{
|
||||||
// notaz
|
// notaz
|
||||||
m68ki_check_interrupts();
|
m68ki_check_interrupts();
|
||||||
|
|
||||||
|
/* Make sure we're not stopped */
|
||||||
|
if(!CPU_STOPPED)
|
||||||
|
{
|
||||||
/* Set our pool of clock cycles available */
|
/* Set our pool of clock cycles available */
|
||||||
SET_CYCLES(num_cycles);
|
SET_CYCLES(num_cycles);
|
||||||
m68ki_initial_cycles = num_cycles;
|
m68ki_initial_cycles = num_cycles;
|
||||||
|
|
|
@ -71,8 +71,12 @@ typedef uint8_t UINT8;
|
||||||
#define uint32 unsigned int /* AWJ: changed from long to int */
|
#define uint32 unsigned int /* AWJ: changed from long to int */
|
||||||
|
|
||||||
/* signed and unsigned int must be at least 32 bits wide */
|
/* signed and unsigned int must be at least 32 bits wide */
|
||||||
#define sint signed int
|
//#define sint signed int
|
||||||
#define uint unsigned int
|
//#define uint unsigned int
|
||||||
|
#define sint _sint
|
||||||
|
#define uint _uint
|
||||||
|
typedef signed int sint;
|
||||||
|
typedef unsigned int uint;
|
||||||
|
|
||||||
|
|
||||||
#if M68K_USE_64_BIT
|
#if M68K_USE_64_BIT
|
||||||
|
@ -1537,7 +1541,7 @@ INLINE void m68ki_set_sr_noint_nosp(uint value)
|
||||||
INLINE void m68ki_set_sr(uint value)
|
INLINE void m68ki_set_sr(uint value)
|
||||||
{
|
{
|
||||||
m68ki_set_sr_noint(value);
|
m68ki_set_sr_noint(value);
|
||||||
if (GET_CYCLES() >= 0) // notaz
|
if (GET_CYCLES() > 0) // notaz
|
||||||
m68ki_check_interrupts();
|
m68ki_check_interrupts();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -91,6 +91,9 @@ extern M68K_CONTEXT PicoCpuFM68k, PicoCpuFS68k;
|
||||||
|
|
||||||
#ifdef EMU_M68K
|
#ifdef EMU_M68K
|
||||||
#include <cpu/musashi/m68kcpu.h>
|
#include <cpu/musashi/m68kcpu.h>
|
||||||
|
#undef INLINE
|
||||||
|
#undef USE_CYCLES
|
||||||
|
#undef ADD_CYCLES
|
||||||
extern m68ki_cpu_core PicoCpuMM68k, PicoCpuMS68k;
|
extern m68ki_cpu_core PicoCpuMM68k, PicoCpuMS68k;
|
||||||
#ifndef SekCyclesLeft
|
#ifndef SekCyclesLeft
|
||||||
#define SekCyclesLeft PicoCpuMM68k.cyc_remaining_cycles
|
#define SekCyclesLeft PicoCpuMM68k.cyc_remaining_cycles
|
||||||
|
|
|
@ -207,6 +207,7 @@ $(FR)cpu/cyclone/Cyclone.s: $(FR)cpu/cyclone/*.cpp $(FR)cpu/cyclone/*.h
|
||||||
|
|
||||||
$(FR)cpu/musashi/m68kops.c:
|
$(FR)cpu/musashi/m68kops.c:
|
||||||
@make -C $(R)cpu/musashi
|
@make -C $(R)cpu/musashi
|
||||||
|
$(FR)cpu/musashi/m68kcpu.c: $(FR)cpu/musashi/m68kops.c
|
||||||
|
|
||||||
deps_set = yes
|
deps_set = yes
|
||||||
endif # deps_set
|
endif # deps_set
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue