fixed build errors, nw

This commit is contained in:
mooglyguy 2017-12-29 13:43:25 +01:00
parent 304dfd9a35
commit 5d36ef2d30
4 changed files with 63 additions and 1 deletions

View File

@ -13,7 +13,7 @@
-- Dynamic recompiler objects
--------------------------------------------------
if (CPUS["SH"]~=null or CPUS["MIPS"]~=null or CPUS["POWERPC"]~=null or CPUS["RSP"]~=null or CPUS["ARM7"]~=null or CPUS["ADSP21062"]~=null or CPUS["MB86235"]~=null) then
if (CPUS["E1"]~=null or CPUS["SH"]~=null or CPUS["MIPS"]~=null or CPUS["POWERPC"]~=null or CPUS["RSP"]~=null or CPUS["ARM7"]~=null or CPUS["ADSP21062"]~=null or CPUS["MB86235"]~=null) then
files {
MAME_DIR .. "src/devices/cpu/drcbec.cpp",
MAME_DIR .. "src/devices/cpu/drcbec.h",

View File

@ -144,6 +144,7 @@
#include "emu.h"
#include "e132xs.h"
#include "e132xsfe.h"
#include "debugger.h"
@ -152,6 +153,9 @@
//#define VERBOSE 1
#include "logmacro.h"
/* size of the execution code cache */
#define CACHE_SIZE (32 * 1024 * 1024)
//**************************************************************************
// INTERNAL ADDRESS MAP
//**************************************************************************
@ -199,6 +203,27 @@ hyperstone_device::hyperstone_device(const machine_config &mconfig, const char *
, m_program_config("program", ENDIANNESS_BIG, prg_data_width, 32, 0, internal_map)
, m_io_config("io", ENDIANNESS_BIG, io_data_width, 15)
, m_icount(0)
, m_cache(CACHE_SIZE + sizeof(hyperstone_device))
, m_drcuml(nullptr)
, m_drcfe(nullptr)
, m_drcoptions(0)
, m_cache_dirty(0)
, m_entry(nullptr)
, m_nocode(nullptr)
, m_out_of_cycles(nullptr)
, m_drc_arg0(0)
, m_drc_arg1(0)
, m_drc_arg2(0)
, m_drc_arg3(0)
, m_mem_read8(nullptr)
, m_mem_write8(nullptr)
, m_mem_read16(nullptr)
, m_mem_write16(nullptr)
, m_mem_read32(nullptr)
, m_mem_write32(nullptr)
, m_io_read32(nullptr)
, m_io_write32(nullptr)
, m_enable_drc(false)
{
}

View File

@ -6,6 +6,9 @@
#pragma once
#include "32xsdasm.h"
#include "cpu/drcfe.h"
#include "cpu/drcuml.h"
#include "cpu/drcumlsh.h"
/*
A note about clock multipliers and dividers:

View File

@ -0,0 +1,34 @@
// license:BSD-3-Clause
// copyright-holders:Ryan Holtz
#ifndef MAME_CPU_E132XS_E132XSFE_H
#define MAME_CPU_E132XS_E132XSFE_H
#pragma once
#include "e132xs.h"
#include "cpu/drcfe.h"
class e132xs_frontend : public drc_frontend
{
public:
e132xs_frontend(hyperstone_device *e132xs, uint32_t window_start, uint32_t window_end, uint32_t max_sequence);
void flush();
protected:
// required overrides
virtual bool describe(opcode_desc &desc, const opcode_desc *prev) override;
private:
inline uint32_t imm_length(opcode_desc &desc, uint16_t op);
inline uint16_t read_word(opcode_desc &desc);
inline uint16_t read_imm1(opcode_desc &desc);
inline uint16_t read_imm2(opcode_desc &desc);
inline uint32_t read_ldstxx_imm(opcode_desc &desc);
inline uint32_t read_limm(opcode_desc &desc, uint16_t op);
inline int32_t decode_pcrel(opcode_desc &desc, uint16_t op);
inline int32_t decode_call(opcode_desc &desc);
hyperstone_device *m_cpu;
};
#endif /* MAME_CPU_E132XS_E132XSFE_H */