mb86235: disable recompiler for now (nw)

This commit is contained in:
Ville Linde 2016-12-18 21:14:47 +02:00
parent 20da1a5203
commit c7b853d689
2 changed files with 22 additions and 2 deletions

View File

@ -17,6 +17,8 @@
#include "mb86235fe.h" #include "mb86235fe.h"
#define ENABLE_DRC 0
#define CACHE_SIZE (1 * 1024 * 1024) #define CACHE_SIZE (1 * 1024 * 1024)
#define COMPILE_BACKWARDS_BYTES 128 #define COMPILE_BACKWARDS_BYTES 128
@ -42,7 +44,11 @@ ADDRESS_MAP_END
/* Execute cycles */ /* Execute cycles */
void mb86235_device::execute_run() void mb86235_device::execute_run()
{ {
#if ENABLE_DRC
run_drc(); run_drc();
#else
m_core->icount = 0;
#endif
} }
@ -227,6 +233,7 @@ offs_t mb86235_device::disasm_disassemble(std::ostream &stream, offs_t pc, const
void mb86235_device::fifoin_w(uint64_t data) void mb86235_device::fifoin_w(uint64_t data)
{ {
#if ENABLE_DRC
if (m_core->fifoin.num >= FIFOIN_SIZE) if (m_core->fifoin.num >= FIFOIN_SIZE)
{ {
fatalerror("fifoin_w: pushing to full fifo"); fatalerror("fifoin_w: pushing to full fifo");
@ -239,19 +246,32 @@ void mb86235_device::fifoin_w(uint64_t data)
m_core->fifoin.wpos++; m_core->fifoin.wpos++;
m_core->fifoin.wpos &= FIFOIN_SIZE-1; m_core->fifoin.wpos &= FIFOIN_SIZE-1;
m_core->fifoin.num++; m_core->fifoin.num++;
#endif
} }
bool mb86235_device::is_fifoin_full() bool mb86235_device::is_fifoin_full()
{ {
#if ENABLE_DRC
return m_core->fifoin.num >= FIFOIN_SIZE; return m_core->fifoin.num >= FIFOIN_SIZE;
#else
return false;
#endif
} }
uint64_t mb86235_device::fifoout0_r() uint64_t mb86235_device::fifoout0_r()
{ {
#if ENABLE_DRC
fatalerror("fifoout0_r"); fatalerror("fifoout0_r");
#else
return 0;
#endif
} }
bool mb86235_device::is_fifoout0_empty() bool mb86235_device::is_fifoout0_empty()
{ {
#if ENABLE_DRC
return m_core->fifoout0.num == 0; return m_core->fifoout0.num == 0;
#else
return false;
#endif
} }

View File

@ -773,7 +773,7 @@ READ32_MEMBER(model2_state::copro_fifo_r)
else else
{ {
// TODO // TODO
printf("FIFO OUT read\n"); // printf("FIFO OUT read\n");
if (m_tgpx4->is_fifoout0_empty()) if (m_tgpx4->is_fifoout0_empty())
{ {
/* Reading from empty FIFO causes the i960 to enter wait state */ /* Reading from empty FIFO causes the i960 to enter wait state */
@ -833,7 +833,7 @@ WRITE32_MEMBER(model2_state::copro_fifo_w)
if (m_tgpx4->is_fifoin_full()) if (m_tgpx4->is_fifoin_full())
printf("trying to push to full fifo!\n"); printf("trying to push to full fifo!\n");
printf("push %08X at %08X\n", data, space.device().safe_pc()); // printf("push %08X at %08X\n", data, space.device().safe_pc());
m_tgpx4->fifoin_w(data); m_tgpx4->fifoin_w(data);
} }
} }