This commit is contained in:
RobertoFresca 2016-08-12 10:10:23 -03:00
commit 8493461666
12 changed files with 523 additions and 338 deletions

View File

@ -431,6 +431,7 @@ end
--------------------------------------------------
-- LUA library objects
--------------------------------------------------
if (STANDALONE~=true) then
if not _OPTIONS["with-system-lua"] then
project "lua"
@ -565,6 +566,7 @@ project "lualibs"
MAME_DIR .. "3rdparty/luafilesystem/src/lfs.c",
}
end
--------------------------------------------------
-- portmidi library objects
--------------------------------------------------

View File

@ -41,7 +41,6 @@ function devicesProject(_target, _subtarget)
GEN_DIR .. "emu",
GEN_DIR .. "emu/layout",
ext_includedir("expat"),
ext_includedir("lua"),
ext_includedir("flac"),
}
@ -72,7 +71,6 @@ if #disasm_files > 0 then
MAME_DIR .. "3rdparty",
GEN_DIR .. "emu",
ext_includedir("expat"),
ext_includedir("lua"),
}
files {

View File

@ -30,7 +30,6 @@ includedirs {
includedirs {
ext_includedir("expat"),
ext_includedir("lua"),
ext_includedir("zlib"),
ext_includedir("flac"),
ext_includedir("jpeg"),
@ -150,6 +149,7 @@ files {
MAME_DIR .. "src/emu/romload.cpp",
MAME_DIR .. "src/emu/romload.h",
MAME_DIR .. "src/emu/romentry.h",
MAME_DIR .. "src/emu/romentry.cpp",
MAME_DIR .. "src/emu/save.cpp",
MAME_DIR .. "src/emu/save.h",
MAME_DIR .. "src/emu/schedule.cpp",

View File

@ -427,6 +427,7 @@ project "formats"
MAME_DIR .. "src/lib/formats/itt3030_dsk.h",
}
if (MACHINES["NETLIST"]~=null or _OPTIONS["with-tools"]) then
-- netlist now defines a project
dofile("netlist.lua")
end

View File

@ -197,8 +197,12 @@ if (STANDALONE~=true) then
"frontend",
}
end
if (MACHINES["NETLIST"]~=null) then
links {
"netlist",
}
end
links {
"optional",
"emu",
"formats",
@ -214,10 +218,13 @@ end
"softfloat",
ext_lib("jpeg"),
"7z",
}
if (STANDALONE~=true) then
links {
ext_lib("lua"),
"lualibs",
}
end
if _OPTIONS["USE_LIBUV"]=="1" then
links {
ext_lib("uv"),

74
src/emu/romentry.cpp Normal file
View File

@ -0,0 +1,74 @@
// license:BSD-3-Clause
// copyright-holders:Nicola Salmoria,Aaron Giles
/*********************************************************************
romentry.cpp
ROM loading functions.
*********************************************************************/
#include "romentry.h"
#include "strformat.h"
/***************************************************************************
HELPERS
***************************************************************************/
//-------------------------------------------------
// hashdata_from_tiny_rom_entry - calculates the
// proper hashdata string from the value in the
// tiny_rom_entry
//-------------------------------------------------
static std::string hashdata_from_tiny_rom_entry(const tiny_rom_entry &ent)
{
std::string result;
switch (ent.flags & ROMENTRY_TYPEMASK)
{
case ROMENTRYTYPE_FILL:
case ROMENTRYTYPE_COPY:
// for these types, tiny_rom_entry::hashdata is an integer typecasted to a pointer
result = string_format("0x%x", (unsigned)(FPTR)ent.hashdata);
break;
default:
if (ent.hashdata != nullptr)
result.assign(ent.hashdata);
break;
}
return result;
}
/***************************************************************************
ROM ENTRY
***************************************************************************/
//-------------------------------------------------
// ctor (with move constructors)
//-------------------------------------------------
rom_entry::rom_entry(std::string &&name, std::string &&hashdata, UINT32 offset, UINT32 length, UINT32 flags)
: m_name(std::move(name))
, m_hashdata(std::move(hashdata))
, m_offset(offset)
, m_length(length)
, m_flags(flags)
{
}
//-------------------------------------------------
// ctor (with tiny_rom_entry)
//-------------------------------------------------
rom_entry::rom_entry(const tiny_rom_entry &ent)
: m_name(ent.name != nullptr ? ent.name : "")
, m_hashdata(hashdata_from_tiny_rom_entry(ent))
, m_offset(ent.offset)
, m_length(ent.length)
, m_flags(ent.flags)
{
}

View File

@ -132,18 +132,8 @@ struct tiny_rom_entry
class rom_entry
{
public:
rom_entry(const tiny_rom_entry &ent)
: m_name(ent.name != nullptr ? ent.name : "")
, m_hashdata(ent.hashdata != nullptr ? ent.hashdata : "")
, m_offset(ent.offset)
, m_length(ent.length)
, m_flags(ent.flags) {}
rom_entry(std::string &&name, std::string &&hashdata, UINT32 offset, UINT32 length, UINT32 flags)
: m_name(std::move(name))
, m_hashdata(std::move(hashdata))
, m_offset(offset)
, m_length(length)
, m_flags(flags) {}
rom_entry(const tiny_rom_entry &ent);
rom_entry(std::string &&name, std::string &&hashdata, UINT32 offset, UINT32 length, UINT32 flags);
rom_entry(rom_entry const &) = default;
rom_entry(rom_entry &&) = default;
rom_entry &operator=(rom_entry const &) = default;

View File

@ -130,11 +130,11 @@ class software_list_device;
#define ROM_RELOAD_PLAIN(offset,length) { nullptr, nullptr, offset, length, ROMENTRYTYPE_RELOAD },
/* ----- additional ROM-related macros ----- */
#define ROM_CONTINUE(offset,length) { nullptr, nullptr, offset, length, ROMENTRYTYPE_CONTINUE | ROM_INHERITFLAGS },
#define ROM_IGNORE(length) { nullptr, nullptr, 0, length, ROMENTRYTYPE_IGNORE | ROM_INHERITFLAGS },
#define ROM_FILL(offset,length,value) { nullptr, #value, offset, length, ROMENTRYTYPE_FILL },
#define ROMX_FILL(offset,length,value,flags) { nullptr, #value, offset, length, ROMENTRYTYPE_FILL | flags },
#define ROM_COPY(srctag,srcoffs,offset,length) { srctag, #srcoffs, offset, length, ROMENTRYTYPE_COPY },
#define ROM_CONTINUE(offset,length) { nullptr, nullptr, (offset), (length), ROMENTRYTYPE_CONTINUE | ROM_INHERITFLAGS },
#define ROM_IGNORE(length) { nullptr, nullptr, 0, (length), ROMENTRYTYPE_IGNORE | ROM_INHERITFLAGS },
#define ROM_FILL(offset,length,value) { nullptr, (const char *)(value), (offset), (length), ROMENTRYTYPE_FILL },
#define ROMX_FILL(offset,length,value,flags) { nullptr, (const char *)(value), (offset), (length), ROMENTRYTYPE_FILL | flags },
#define ROM_COPY(srctag,srcoffs,offset,length) { (srctag), (const char *)(srcoffs), (offset), (length), ROMENTRYTYPE_COPY },
/* ----- system BIOS macros ----- */

View File

@ -387,7 +387,7 @@ const int victor9k_format::speed_zone[2][80] =
const int victor9k_format::rpm[9] =
{
252, 267, 283, 300, 320, 342, 368, 401, 417
252, 267, 283, 300, 321, 342, 368, 401, 417
};
bool victor9k_format::save(io_generic *io, floppy_image *image)

View File

@ -734,7 +734,7 @@ ROM_START( pinkswts )
ROM_RELOAD(0x200000,0x200000)
ROM_REGION( 0x8400000, "game", ROMREGION_ERASEFF)
ROM_LOAD( "pinkswts_u2", 0x000000, 0x8400000, CRC(92d3243a) SHA1(e9d20c62f642fb2f62ef83ed5caeee6b3f67fef9) ) /* (2006/04/06 MASTER VER....) */
ROM_LOAD( "pinkswts_u2", 0x000000, 0x8400000, CRC(a2fa5363) SHA1(5be327534840871592df523ac82ee1927bd79d67) ) /* (2006/04/06 MASTER VER....) */
ROM_REGION( 0x800000, "ymz770", ROMREGION_ERASEFF)
ROM_LOAD16_WORD_SWAP( "u23", 0x000000, 0x400000, CRC(4b82d250) SHA1(ee98dbc3f791efb6d58f3945bcb2044667ae7978) )
@ -760,7 +760,8 @@ ROM_START( pinkswtsb )
ROM_RELOAD(0x200000,0x200000)
ROM_REGION( 0x8400000, "game", ROMREGION_ERASEFF)
ROM_LOAD( "pnkswtsb_u2", 0x000000, 0x8400000, CRC(a5666ed9) SHA1(682e06c84990225bc6bb0c9f38b5f46c4e36b430) ) /* (2006/04/06 MASTER VER.) */
// ROM_LOAD( "pnkswtsb_u2", 0x000000, 0x8400000, BAD_DUMP CRC(a5666ed9) SHA1(682e06c84990225bc6bb0c9f38b5f46c4e36b430) ) /* (2006/04/06 MASTER VER.) */
ROM_LOAD( "pnkswtsx_u2", 0x000000, 0x8400000, CRC(91e4deb2) SHA1(893cb10d6f805df7cb4a1bb709a3ea6de147b7e9) ) // (2006/xx/xx MASTER VER.) and (2006/04/06 MASTER VER.)
ROM_REGION( 0x800000, "ymz770", ROMREGION_ERASEFF)
ROM_LOAD16_WORD_SWAP( "u23", 0x000000, 0x400000, CRC(4b82d250) SHA1(ee98dbc3f791efb6d58f3945bcb2044667ae7978) )
@ -773,7 +774,7 @@ ROM_START( pinkswtsx )
ROM_RELOAD(0x200000,0x200000)
ROM_REGION( 0x8400000, "game", ROMREGION_ERASEFF)
ROM_LOAD( "pnkswtsx_u2", 0x000000, 0x8400000, CRC(91e4deb2) SHA1(893cb10d6f805df7cb4a1bb709a3ea6de147b7e9) ) // (2006/xx/xx MASTER VER.)
ROM_LOAD( "pnkswtsx_u2", 0x000000, 0x8400000, CRC(91e4deb2) SHA1(893cb10d6f805df7cb4a1bb709a3ea6de147b7e9) ) // (2006/xx/xx MASTER VER.) and (2006/04/06 MASTER VER.)
ROM_REGION( 0x800000, "ymz770", ROMREGION_ERASEFF)
ROM_LOAD16_WORD_SWAP( "u23", 0x000000, 0x400000, CRC(4b82d250) SHA1(ee98dbc3f791efb6d58f3945bcb2044667ae7978) )

File diff suppressed because it is too large Load Diff

View File

@ -565,6 +565,8 @@ void victor_9000_fdc_t::update_stepper_motor(floppy_image_device *floppy, int st
floppy->stp_w(1);
floppy->stp_w(0);
}
floppy->set_rpm(victor9k_format::get_rpm(m_side, floppy->get_cyl()));
}
void victor_9000_fdc_t::update_spindle_motor(floppy_image_device *floppy, emu_timer *t_tach, bool start, bool stop, bool sel, UINT8 &da)