Merge branch 'release0196'

Conflicts:
	src/devices/cpu/jaguar/jaguar.cpp
This commit is contained in:
Vas Crabb 2018-03-25 14:45:59 +11:00
commit 5d534adc2f
6 changed files with 24 additions and 27 deletions

View File

@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: MAME\n" "Project-Id-Version: MAME\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-25 02:01+1100\n" "POT-Creation-Date: 2018-03-25 02:01+1100\n"
"PO-Revision-Date: 2018-01-28 17:35+0800\n" "PO-Revision-Date: 2018-03-25 00:47+0800\n"
"Last-Translator: YuiFAN\n" "Last-Translator: YuiFAN\n"
"Language-Team: MAME Language Team\n" "Language-Team: MAME Language Team\n"
"Language: zh_CN\n" "Language: zh_CN\n"
@ -2658,7 +2658,7 @@ msgstr "储存当前 -- #"
#: plugins/cheatfind/init.lua:536 #: plugins/cheatfind/init.lua:536
#, lua-format #, lua-format
msgid "%d total matches found" msgid "%d total matches found"
msgstr "" msgstr "总计发现 %d 符合"
#: plugins/cheatfind/init.lua:543 #: plugins/cheatfind/init.lua:543
msgid "Compare" msgid "Compare"
@ -2795,9 +2795,6 @@ msgstr "输入埠名称档案保存至 %s"
msgid "Input ports" msgid "Input ports"
msgstr "输入埠" msgstr "输入埠"
#~ msgid " total matches found"
#~ msgstr " 总计发现符合"
#~ msgid "" #~ msgid ""
#~ "ROM Audit Disabled\t\n" #~ "ROM Audit Disabled\t\n"
#~ "Samples Audit Disabled\t\n" #~ "Samples Audit Disabled\t\n"
@ -2809,4 +2806,4 @@ msgstr "输入埠"
#~ msgstr "已激活" #~ msgstr "已激活"
#~ msgid " added" #~ msgid " added"
#~ msgstr "已加入" #~ msgstr " 已加入"

View File

@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: MAME\n" "Project-Id-Version: MAME\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-03-25 02:01+1100\n" "POT-Creation-Date: 2018-03-25 02:01+1100\n"
"PO-Revision-Date: 2018-01-28 17:35+0800\n" "PO-Revision-Date: 2018-03-25 00:48+0800\n"
"Last-Translator: YuiFAN\n" "Last-Translator: YuiFAN\n"
"Language-Team: MAME Language Team\n" "Language-Team: MAME Language Team\n"
"Language: zh_TW\n" "Language: zh_TW\n"
@ -2658,7 +2658,7 @@ msgstr "儲存目前 -- #"
#: plugins/cheatfind/init.lua:536 #: plugins/cheatfind/init.lua:536
#, lua-format #, lua-format
msgid "%d total matches found" msgid "%d total matches found"
msgstr "" msgstr "總計發現 %d 符合"
#: plugins/cheatfind/init.lua:543 #: plugins/cheatfind/init.lua:543
msgid "Compare" msgid "Compare"
@ -2795,9 +2795,6 @@ msgstr "輸入埠名稱檔案儲存至 %s"
msgid "Input ports" msgid "Input ports"
msgstr "輸入埠" msgstr "輸入埠"
#~ msgid " total matches found"
#~ msgstr " 總計發現符合"
#~ msgid "" #~ msgid ""
#~ "ROM Audit Disabled\t\n" #~ "ROM Audit Disabled\t\n"
#~ "Samples Audit Disabled\t\n" #~ "Samples Audit Disabled\t\n"

View File

@ -113,12 +113,12 @@ offs_t jaguar_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
case 30: util::stream_format(stream, "cmp r%d,r%d", reg1, reg2); break; case 30: util::stream_format(stream, "cmp r%d,r%d", reg1, reg2); break;
case 31: util::stream_format(stream, "cmpq %s,r%d", signed_16bit((int16_t)(reg1 << 11) >> 11), reg2);break; case 31: util::stream_format(stream, "cmpq %s,r%d", signed_16bit((int16_t)(reg1 << 11) >> 11), reg2);break;
case 32: if (m_variant == JAGUAR_VARIANT_GPU) case 32: if (m_variant == variant::GPU)
util::stream_format(stream, "sat8 r%d", reg2); util::stream_format(stream, "sat8 r%d", reg2);
else else
util::stream_format(stream, "subqmod $%x,r%d", convert_zero[reg1], reg2); util::stream_format(stream, "subqmod $%x,r%d", convert_zero[reg1], reg2);
break; break;
case 33: if (m_variant == JAGUAR_VARIANT_GPU) case 33: if (m_variant == variant::GPU)
util::stream_format(stream, "sat16 r%d", reg2); util::stream_format(stream, "sat16 r%d", reg2);
else else
util::stream_format(stream, "sat16s r%d", reg2); util::stream_format(stream, "sat16s r%d", reg2);
@ -131,7 +131,7 @@ offs_t jaguar_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
case 39: util::stream_format(stream, "loadb (r%d),r%d", reg1, reg2); break; case 39: util::stream_format(stream, "loadb (r%d),r%d", reg1, reg2); break;
case 40: util::stream_format(stream, "loadw (r%d),r%d", reg1, reg2); break; case 40: util::stream_format(stream, "loadw (r%d),r%d", reg1, reg2); break;
case 41: util::stream_format(stream, "load (r%d),r%d", reg1, reg2); break; case 41: util::stream_format(stream, "load (r%d),r%d", reg1, reg2); break;
case 42: if (m_variant == JAGUAR_VARIANT_GPU) case 42: if (m_variant == variant::GPU)
util::stream_format(stream, "loadp (r%d),r%d", reg1, reg2); util::stream_format(stream, "loadp (r%d),r%d", reg1, reg2);
else else
util::stream_format(stream, "sat32s r%d", reg2); util::stream_format(stream, "sat32s r%d", reg2);
@ -141,7 +141,7 @@ offs_t jaguar_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
case 45: util::stream_format(stream, "storeb r%d,(r%d)", reg2, reg1); break; case 45: util::stream_format(stream, "storeb r%d,(r%d)", reg2, reg1); break;
case 46: util::stream_format(stream, "storew r%d,(r%d)", reg2, reg1); break; case 46: util::stream_format(stream, "storew r%d,(r%d)", reg2, reg1); break;
case 47: util::stream_format(stream, "store r%d,(r%d)", reg2, reg1); break; case 47: util::stream_format(stream, "store r%d,(r%d)", reg2, reg1); break;
case 48: if (m_variant == JAGUAR_VARIANT_GPU) case 48: if (m_variant == variant::GPU)
util::stream_format(stream, "storep r%d,(r%d)", reg2, reg1); util::stream_format(stream, "storep r%d,(r%d)", reg2, reg1);
else else
util::stream_format(stream, "mirror r%d", reg2); util::stream_format(stream, "mirror r%d", reg2);
@ -159,12 +159,12 @@ offs_t jaguar_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
case 59: util::stream_format(stream, "load (r15+r%d),r%d", reg1, reg2); break; case 59: util::stream_format(stream, "load (r15+r%d),r%d", reg1, reg2); break;
case 60: util::stream_format(stream, "store r%d,(r14+r%d)", reg2, reg1); break; case 60: util::stream_format(stream, "store r%d,(r14+r%d)", reg2, reg1); break;
case 61: util::stream_format(stream, "store r%d,(r15+r%d)", reg2, reg1); break; case 61: util::stream_format(stream, "store r%d,(r15+r%d)", reg2, reg1); break;
case 62: if (m_variant == JAGUAR_VARIANT_GPU) case 62: if (m_variant == variant::GPU)
util::stream_format(stream, "sat24 r%d", reg2); util::stream_format(stream, "sat24 r%d", reg2);
else else
util::stream_format(stream, "illegal"); util::stream_format(stream, "illegal");
break; break;
case 63: if (m_variant == JAGUAR_VARIANT_GPU) case 63: if (m_variant == variant::GPU)
util::stream_format(stream, reg1 ? util::stream_format(stream, reg1 ?
"unpack r%d" : "unpack r%d" :
"pack r%d", reg2); "pack r%d", reg2);
@ -176,7 +176,7 @@ offs_t jaguar_disassembler::disassemble(std::ostream &stream, offs_t pc, const d
return size | flags | SUPPORTED; return size | flags | SUPPORTED;
} }
jaguar_disassembler::jaguar_disassembler(u32 variant) : m_variant(variant) jaguar_disassembler::jaguar_disassembler(variant vari) : m_variant(var)
{ {
} }

View File

@ -16,10 +16,13 @@
class jaguar_disassembler : public util::disasm_interface class jaguar_disassembler : public util::disasm_interface
{ {
public: public:
static constexpr unsigned JAGUAR_VARIANT_GPU = 0; enum class variant
static constexpr unsigned JAGUAR_VARIANT_DSP = 1; {
GPU = 0,
DSP = 1
};
jaguar_disassembler(u32 variant); jaguar_disassembler(variant var);
virtual ~jaguar_disassembler() = default; virtual ~jaguar_disassembler() = default;
virtual u32 opcode_alignment() const override; virtual u32 opcode_alignment() const override;
@ -29,9 +32,9 @@ private:
static const uint8_t convert_zero[32]; static const uint8_t convert_zero[32];
static const char *const condition[32]; static const char *const condition[32];
u32 m_variant; const variant m_variant;
static std::string signed_16bit(int16_t val); static std::string signed_16bit(int16_t val);
}; };
#endif #endif // MAME_CPU_JAGUAR_JAGDASM_H

View File

@ -1440,10 +1440,10 @@ WRITE32_MEMBER( jaguardsp_cpu_device::ctrl_w )
std::unique_ptr<util::disasm_interface> jaguargpu_cpu_device::create_disassembler() std::unique_ptr<util::disasm_interface> jaguargpu_cpu_device::create_disassembler()
{ {
return std::make_unique<jaguar_disassembler>(+jaguar_disassembler::JAGUAR_VARIANT_GPU); return std::make_unique<jaguar_disassembler>(jaguar_disassembler::variant::GPU);
} }
std::unique_ptr<util::disasm_interface> jaguardsp_cpu_device::create_disassembler() std::unique_ptr<util::disasm_interface> jaguardsp_cpu_device::create_disassembler()
{ {
return std::make_unique<jaguar_disassembler>(+jaguar_disassembler::JAGUAR_VARIANT_DSP); return std::make_unique<jaguar_disassembler>(jaguar_disassembler::variant::DSP);
} }

View File

@ -351,8 +351,8 @@ static const dasm_table_entry dasm_table[] =
{ "i8xc196", le, 0, []() -> util::disasm_interface * { return new i8xc196_disassembler; } }, { "i8xc196", le, 0, []() -> util::disasm_interface * { return new i8xc196_disassembler; } },
{ "i960", le, 0, []() -> util::disasm_interface * { return new i960_disassembler; } }, { "i960", le, 0, []() -> util::disasm_interface * { return new i960_disassembler; } },
{ "ie15", le, 0, []() -> util::disasm_interface * { return new ie15_disassembler; } }, { "ie15", le, 0, []() -> util::disasm_interface * { return new ie15_disassembler; } },
{ "jaguardsp", be, 0, []() -> util::disasm_interface * { return new jaguar_disassembler(jaguar_disassembler::JAGUAR_VARIANT_DSP); } }, { "jaguardsp", be, 0, []() -> util::disasm_interface * { return new jaguar_disassembler(jaguar_disassembler::variant::DSP); } },
{ "jaguargpu", be, 0, []() -> util::disasm_interface * { return new jaguar_disassembler(jaguar_disassembler::JAGUAR_VARIANT_GPU); } }, { "jaguargpu", be, 0, []() -> util::disasm_interface * { return new jaguar_disassembler(jaguar_disassembler::variant::GPU); } },
{ "konami", le, 0, []() -> util::disasm_interface * { return new konami_disassembler; } }, { "konami", le, 0, []() -> util::disasm_interface * { return new konami_disassembler; } },
{ "lc8670", be, 0, []() -> util::disasm_interface * { return new lc8670_disassembler; } }, { "lc8670", be, 0, []() -> util::disasm_interface * { return new lc8670_disassembler; } },
{ "lh5801", le, 0, []() -> util::disasm_interface * { return new lh5801_disassembler; } }, { "lh5801", le, 0, []() -> util::disasm_interface * { return new lh5801_disassembler; } },