Exposed various methods/properties on device_image_interface to LUA (#5368)

* Exposing must_be_loaded and display() on device_image_interface's LUA
implementation

* Exposing device_image_interface::create() to LUA
This commit is contained in:
npwoods 2019-07-21 08:08:34 -04:00 committed by R. Belmont
parent 00191724e8
commit cd6cd78dbe

View File

@ -2398,7 +2398,9 @@ void lua_engine::initialize()
* image:image_type_name() - floppy/cart/cdrom/tape/hdd etc * image:image_type_name() - floppy/cart/cdrom/tape/hdd etc
* image:load() * image:load()
* image:unload() * image:unload()
* image:create()
* image:crc() * image:crc()
* image:display()
* *
* image.device - get associated device_t * image.device - get associated device_t
* image.software_parent * image.software_parent
@ -2406,6 +2408,7 @@ void lua_engine::initialize()
* image.is_writeable * image.is_writeable
* image.is_creatable * image.is_creatable
* image.is_reset_on_load * image.is_reset_on_load
* image.must_be_loaded
*/ */
sol().registry().new_usertype<device_image_interface>("image", "new", sol::no_constructor, sol().registry().new_usertype<device_image_interface>("image", "new", sol::no_constructor,
@ -2419,12 +2422,16 @@ void lua_engine::initialize()
"image_type_name", &device_image_interface::image_type_name, "image_type_name", &device_image_interface::image_type_name,
"load", &device_image_interface::load, "load", &device_image_interface::load,
"unload", &device_image_interface::unload, "unload", &device_image_interface::unload,
"create", [](device_image_interface &di, const std::string &filename) { return di.create(filename); },
"crc", &device_image_interface::crc, "crc", &device_image_interface::crc,
"display", [](device_image_interface &di) { return di.call_display(); },
"device", sol::property(static_cast<const device_t &(device_image_interface::*)() const>(&device_image_interface::device)), "device", sol::property(static_cast<const device_t &(device_image_interface::*)() const>(&device_image_interface::device)),
"is_readable", sol::property(&device_image_interface::is_readable), "is_readable", sol::property(&device_image_interface::is_readable),
"is_writeable", sol::property(&device_image_interface::is_writeable), "is_writeable", sol::property(&device_image_interface::is_writeable),
"is_creatable", sol::property(&device_image_interface::is_creatable), "is_creatable", sol::property(&device_image_interface::is_creatable),
"is_reset_on_load", sol::property(&device_image_interface::is_reset_on_load)); "is_reset_on_load", sol::property(&device_image_interface::is_reset_on_load),
"must_be_loaded", sol::property(&device_image_interface::must_be_loaded)
);
/* mame_machine_manager library /* mame_machine_manager library