diff options
author | 2016-01-08 12:41:13 +0100 | |
---|---|---|
committer | 2016-01-08 12:41:13 +0100 | |
commit | ce75a5d6825066fc67539c4eafed5902a34f9457 (patch) | |
tree | b66bb69abc3da5001a315428670d373240967cd7 /src/emu | |
parent | 12995ac3d44ac182efc213c67e0752388f1d7530 (diff) |
removed memory tracking (nw)
Diffstat (limited to 'src/emu')
-rw-r--r-- | src/emu/clifront.cpp | 10 | ||||
-rw-r--r-- | src/emu/clifront.h | 1 | ||||
-rw-r--r-- | src/emu/debug/debugcon.cpp | 2 | ||||
-rw-r--r-- | src/emu/debug/debugcpu.cpp | 2 | ||||
-rw-r--r-- | src/emu/diimage.cpp | 2 | ||||
-rw-r--r-- | src/emu/driver.h | 2 | ||||
-rw-r--r-- | src/emu/emualloc.h | 29 | ||||
-rw-r--r-- | src/emu/hashfile.cpp | 4 | ||||
-rw-r--r-- | src/emu/machine/generic.cpp | 2 | ||||
-rw-r--r-- | src/emu/romload.cpp | 2 | ||||
-rw-r--r-- | src/emu/softlist.cpp | 4 | ||||
-rw-r--r-- | src/emu/ui/filemngr.cpp | 4 | ||||
-rw-r--r-- | src/emu/ui/imgcntrl.cpp | 14 | ||||
-rw-r--r-- | src/emu/ui/inputmap.cpp | 2 | ||||
-rw-r--r-- | src/emu/ui/mainmenu.cpp | 44 | ||||
-rw-r--r-- | src/emu/ui/menu.cpp | 2 | ||||
-rw-r--r-- | src/emu/ui/selgame.cpp | 8 | ||||
-rw-r--r-- | src/emu/ui/sliders.cpp | 2 | ||||
-rw-r--r-- | src/emu/ui/slotopt.cpp | 2 | ||||
-rw-r--r-- | src/emu/ui/swlist.cpp | 2 | ||||
-rw-r--r-- | src/emu/ui/videoopt.cpp | 2 | ||||
-rw-r--r-- | src/emu/uiinput.cpp | 2 |
22 files changed, 59 insertions, 85 deletions
diff --git a/src/emu/clifront.cpp b/src/emu/clifront.cpp index 465ad6f0981..6ca7cd1e738 100644 --- a/src/emu/clifront.cpp +++ b/src/emu/clifront.cpp @@ -72,11 +72,8 @@ private: cli_frontend::cli_frontend(cli_options &options, osd_interface &osd) : m_options(options), m_osd(osd), - m_result(MAMERR_NONE), - m_start_memory(next_memory_id()) + m_result(MAMERR_NONE) { - // begin tracking memory - track_memory(true); } @@ -88,11 +85,6 @@ cli_frontend::~cli_frontend() { // nuke any device options since they will leak memory m_options.remove_device_options(); - - // report any unfreed memory on clean exits - track_memory(false); - if (m_result == MAMERR_NONE) - dump_unfreed_mem(m_start_memory); } diff --git a/src/emu/clifront.h b/src/emu/clifront.h index b5613f94b76..584261660db 100644 --- a/src/emu/clifront.h +++ b/src/emu/clifront.h @@ -67,7 +67,6 @@ private: cli_options & m_options; osd_interface & m_osd; int m_result; - UINT64 m_start_memory; }; diff --git a/src/emu/debug/debugcon.cpp b/src/emu/debug/debugcon.cpp index b35d4afc690..9b5bd969c83 100644 --- a/src/emu/debug/debugcon.cpp +++ b/src/emu/debug/debugcon.cpp @@ -414,7 +414,7 @@ void debug_console_register_command(running_machine &machine, const char *comman assert_always(machine.phase() == MACHINE_PHASE_INIT, "Can only call debug_console_register_command() at init time!"); assert_always((machine.debug_flags & DEBUG_FLAG_ENABLED) != 0, "Cannot call debug_console_register_command() when debugger is not running"); - cmd = auto_alloc_clear(machine, debug_command); + cmd = auto_alloc_clear(machine, <debug_command>()); /* fill in the command */ strcpy(cmd->command, command); diff --git a/src/emu/debug/debugcpu.cpp b/src/emu/debug/debugcpu.cpp index a075696b348..702d7a84802 100644 --- a/src/emu/debug/debugcpu.cpp +++ b/src/emu/debug/debugcpu.cpp @@ -116,7 +116,7 @@ void debug_cpu_init(running_machine &machine) int regnum; /* allocate and reset globals */ - machine.debugcpu_data = global = auto_alloc_clear(machine, debugcpu_private); + machine.debugcpu_data = global = auto_alloc_clear(machine, <debugcpu_private>()); global->execution_state = EXECUTION_STATE_STOPPED; global->bpindex = 1; global->wpindex = 1; diff --git a/src/emu/diimage.cpp b/src/emu/diimage.cpp index c0104da34e2..99fe4c7be3b 100644 --- a/src/emu/diimage.cpp +++ b/src/emu/diimage.cpp @@ -1349,5 +1349,5 @@ void device_image_interface::software_get_default_slot(std::string &result, cons ui_menu *device_image_interface::get_selection_menu(running_machine &machine, render_container *container) { - return auto_alloc_clear(machine, ui_menu_control_device_image(machine, container, this)); + return auto_alloc_clear(machine, <ui_menu_control_device_image>(machine, container, this)); } diff --git a/src/emu/driver.h b/src/emu/driver.h index 9a122bbdf42..819316f6200 100644 --- a/src/emu/driver.h +++ b/src/emu/driver.h @@ -284,7 +284,7 @@ device_t *driver_device_creator(const machine_config &mconfig, const char *tag, { assert(owner == nullptr); assert(clock == 0); - return global_alloc_clear(_DriverClass(mconfig, &driver_device_creator<_DriverClass>, tag)); + return global_alloc_clear<_DriverClass>(mconfig, &driver_device_creator<_DriverClass>, tag); } diff --git a/src/emu/emualloc.h b/src/emu/emualloc.h index 192f1fca85e..4571762054f 100644 --- a/src/emu/emualloc.h +++ b/src/emu/emualloc.h @@ -17,32 +17,15 @@ #include "osdcore.h" #include "coretmpl.h" - -//************************************************************************** -// DEBUGGING -//************************************************************************** - -// set to 1 to track memory allocated by emualloc.h itself as well -#define TRACK_SELF_MEMORY (0) - - - //************************************************************************** // MACROS //************************************************************************** -// self-allocation helpers -#if TRACK_SELF_MEMORY -#define EMUALLOC_SELF_NEW new(__FILE__, __LINE__) -#else -#define EMUALLOC_SELF_NEW new -#endif - // pool allocation helpers -#define pool_alloc(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__) _type) -#define pool_alloc_clear(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__, zeromem) _type) -#define pool_alloc_array(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__) _type[_num], (_num)) -#define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__, zeromem) _type[_num], (_num)) +#define pool_alloc(_pool, _type) (_pool).add_object(global_alloc(_type)) +#define pool_alloc_clear(_pool, _type) (_pool).add_object(global_alloc_clear _type) +#define pool_alloc_array(_pool, _type, _num) (_pool).add_array(global_alloc_array(_type,_num), (_num)) +#define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(global_alloc_array_clear<_type>(_num), (_num)) #define pool_free(_pool, v) (_pool).remove(v) @@ -136,8 +119,8 @@ public: bool contains(void *ptrstart, void *ptrend); void clear(); - template<class _ObjectClass> _ObjectClass *add_object(_ObjectClass* object) { add(*EMUALLOC_SELF_NEW resource_pool_object<_ObjectClass>(object), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return object; } - template<class _ObjectClass> _ObjectClass *add_array(_ObjectClass* array, int count) { add(*EMUALLOC_SELF_NEW resource_pool_array<_ObjectClass>(array, count), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return array; } + template<class _ObjectClass> _ObjectClass *add_object(_ObjectClass* object) { add(*new resource_pool_object<_ObjectClass>(object), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return object; } + template<class _ObjectClass> _ObjectClass *add_array(_ObjectClass* array, int count) { add(*new resource_pool_array<_ObjectClass>(array, count), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return array; } private: int m_hash_size; diff --git a/src/emu/hashfile.cpp b/src/emu/hashfile.cpp index 374a09f5176..557d9c28d5f 100644 --- a/src/emu/hashfile.cpp +++ b/src/emu/hashfile.cpp @@ -604,13 +604,13 @@ bool hashfile_extrainfo(device_image_interface &image, std::string &result) static void *expat_malloc(size_t size) { - return global_alloc_array_clear(UINT8,size); + return global_alloc_array_clear<UINT8>(size); } static void *expat_realloc(void *ptr, size_t size) { if (ptr) global_free_array((UINT8 *)ptr); - return global_alloc_array_clear(UINT8,size); + return global_alloc_array_clear<UINT8>(size); } static void expat_free(void *ptr) diff --git a/src/emu/machine/generic.cpp b/src/emu/machine/generic.cpp index 2f4b94fb718..910ffda4b77 100644 --- a/src/emu/machine/generic.cpp +++ b/src/emu/machine/generic.cpp @@ -52,7 +52,7 @@ void generic_machine_init(running_machine &machine) int counternum; /* allocate our state */ - machine.generic_machine_data = auto_alloc_clear(machine, generic_machine_private); + machine.generic_machine_data = auto_alloc_clear(machine, <generic_machine_private>()); state = machine.generic_machine_data; /* reset coin counters */ diff --git a/src/emu/romload.cpp b/src/emu/romload.cpp index c5de902a482..065a29ecf42 100644 --- a/src/emu/romload.cpp +++ b/src/emu/romload.cpp @@ -1526,7 +1526,7 @@ void rom_init(running_machine &machine) romload_private *romdata; /* allocate private data */ - machine.romload_data = romdata = auto_alloc_clear(machine, romload_private); + machine.romload_data = romdata = auto_alloc_clear(machine, <romload_private>()); /* make sure we get called back on the way out */ machine.add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(FUNC(rom_exit), &machine)); diff --git a/src/emu/softlist.cpp b/src/emu/softlist.cpp index 2a5ceaccdcc..6631fa82124 100644 --- a/src/emu/softlist.cpp +++ b/src/emu/softlist.cpp @@ -703,13 +703,13 @@ softlist_parser::softlist_parser(software_list_device &list, std::string &errors void *softlist_parser::expat_malloc(size_t size) { - return global_alloc_array_clear(UINT8, size); + return global_alloc_array_clear<UINT8>(size); } void *softlist_parser::expat_realloc(void *ptr, size_t size) { if (ptr != nullptr) global_free_array((UINT8 *)ptr); - return global_alloc_array_clear(UINT8, size); + return global_alloc_array_clear<UINT8>(size); } void softlist_parser::expat_free(void *ptr) diff --git a/src/emu/ui/filemngr.cpp b/src/emu/ui/filemngr.cpp index ce94f437120..d277d0bd847 100644 --- a/src/emu/ui/filemngr.cpp +++ b/src/emu/ui/filemngr.cpp @@ -195,10 +195,10 @@ void ui_menu_file_manager::force_file_manager(running_machine &machine, render_c ui_menu::stack_reset(machine); // add the quit entry followed by the game select entry - ui_menu *quit = auto_alloc_clear(machine, ui_menu_quit_game(machine, container)); + ui_menu *quit = auto_alloc_clear(machine, <ui_menu_quit_game>(machine, container)); quit->set_special_main_menu(true); ui_menu::stack_push(quit); - ui_menu::stack_push(auto_alloc_clear(machine, ui_menu_file_manager(machine, container, warnings))); + ui_menu::stack_push(auto_alloc_clear(machine, <ui_menu_file_manager>(machine, container, warnings))); // force the menus on machine.ui().show_menu(); diff --git a/src/emu/ui/imgcntrl.cpp b/src/emu/ui/imgcntrl.cpp index 298a0e25d9c..3bb77723726 100644 --- a/src/emu/ui/imgcntrl.cpp +++ b/src/emu/ui/imgcntrl.cpp @@ -190,20 +190,20 @@ void ui_menu_control_device_image::handle() zippath_closedir(directory); } submenu_result = -1; - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_file_selector(machine(), container, image, current_directory, current_file, true, image->image_interface()!=nullptr, can_create, &submenu_result))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_file_selector>(machine(), container, image, current_directory, current_file, true, image->image_interface()!=nullptr, can_create, &submenu_result))); state = SELECT_FILE; break; } case START_SOFTLIST: sld = nullptr; - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software(machine(), container, image->image_interface(), &sld))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_software>(machine(), container, image->image_interface(), &sld))); state = SELECT_SOFTLIST; break; case START_OTHER_PART: { submenu_result = -1; - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software_parts(machine(), container, swi, swp->interface(), &swp, true, &submenu_result))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_software_parts>(machine(), container, swi, swp->interface(), &swp, true, &submenu_result))); state = SELECT_OTHER_PART; break; } @@ -214,7 +214,7 @@ void ui_menu_control_device_image::handle() break; } software_info_name = ""; - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software_list(machine(), container, sld, image->image_interface(), software_info_name))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_software_list>(machine(), container, sld, image->image_interface(), software_info_name))); state = SELECT_PARTLIST; break; @@ -226,7 +226,7 @@ void ui_menu_control_device_image::handle() { submenu_result = -1; swp = nullptr; - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software_parts(machine(), container, swi, image->image_interface(), &swp, false, &submenu_result))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_software_parts>(machine(), container, swi, image->image_interface(), &swp, false, &submenu_result))); state = SELECT_ONE_PART; } else @@ -290,7 +290,7 @@ void ui_menu_control_device_image::handle() break; case ui_menu_file_selector::R_CREATE: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_file_create(machine(), container, image, current_directory, current_file, &create_ok))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_file_create>(machine(), container, image, current_directory, current_file, &create_ok))); state = CHECK_CREATE; break; @@ -310,7 +310,7 @@ void ui_menu_control_device_image::handle() test_create(can_create, need_confirm); if(can_create) { if(need_confirm) { - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_confirm_save_as(machine(), container, &create_confirmed))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_confirm_save_as>(machine(), container, &create_confirmed))); state = CREATE_CONFIRM; } else { state = DO_CREATE; diff --git a/src/emu/ui/inputmap.cpp b/src/emu/ui/inputmap.cpp index 3474cacee75..d72f3df1dc6 100644 --- a/src/emu/ui/inputmap.cpp +++ b/src/emu/ui/inputmap.cpp @@ -73,7 +73,7 @@ void ui_menu_input_groups::handle() /* process the menu */ const ui_menu_event *menu_event = process(0); if (menu_event != nullptr && menu_event->iptkey == IPT_UI_SELECT) - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_input_general(machine(), container, int((long long)(menu_event->itemref)-1)))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_input_general>(machine(), container, int((long long)(menu_event->itemref)-1)))); } diff --git a/src/emu/ui/mainmenu.cpp b/src/emu/ui/mainmenu.cpp index 9b0e72aacad..fd2a72c016b 100644 --- a/src/emu/ui/mainmenu.cpp +++ b/src/emu/ui/mainmenu.cpp @@ -152,91 +152,91 @@ void ui_menu_main::handle() if (menu_event != nullptr && menu_event->iptkey == IPT_UI_SELECT) { switch((long long)(menu_event->itemref)) { case INPUT_GROUPS: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_input_groups(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_input_groups>(machine(), container))); break; case INPUT_SPECIFIC: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_input_specific(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_input_specific>(machine(), container))); break; case SETTINGS_DIP_SWITCHES: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_settings_dip_switches(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_settings_dip_switches>(machine(), container))); break; case SETTINGS_DRIVER_CONFIG: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_settings_driver_config(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_settings_driver_config>(machine(), container))); break; case ANALOG: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_analog(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_analog>(machine(), container))); break; case BOOKKEEPING: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_bookkeeping(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_bookkeeping>(machine(), container))); break; case GAME_INFO: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_game_info(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_game_info>(machine(), container))); break; case IMAGE_MENU_IMAGE_INFO: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_image_info(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_image_info>(machine(), container))); break; case IMAGE_MENU_FILE_MANAGER: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_file_manager(machine(), container, nullptr))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_file_manager>(machine(), container, nullptr))); break; case TAPE_CONTROL: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_tape_control(machine(), container, nullptr))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_tape_control>(machine(), container, nullptr))); break; case PTY_INFO: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_pty_info(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_pty_info>(machine(), container))); break; case SLOT_DEVICES: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_slot_devices(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_slot_devices>(machine(), container))); break; case NETWORK_DEVICES: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_network_devices(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_network_devices>(machine(), container))); break; case KEYBOARD_MODE: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_keyboard_mode(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_keyboard_mode>(machine(), container))); break; case SLIDERS: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_sliders(machine(), container, false))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_sliders>(machine(), container, false))); break; case VIDEO_TARGETS: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_video_targets(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_video_targets>(machine(), container))); break; case VIDEO_OPTIONS: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_video_options(machine(), container, machine().render().first_target()))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_video_options>(machine(), container, machine().render().first_target()))); break; case CROSSHAIR: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_crosshair(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_crosshair>(machine(), container))); break; case CHEAT: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_cheat(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_cheat>(machine(), container))); break; case SELECT_GAME: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_select_game(machine(), container, nullptr))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_select_game>(machine(), container, nullptr))); break; case BIOS_SELECTION: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_bios_selection(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_bios_selection>(machine(), container))); break; case BARCODE_READ: - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_barcode_reader(machine(), container, nullptr))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_barcode_reader>(machine(), container, nullptr))); break; default: diff --git a/src/emu/ui/menu.cpp b/src/emu/ui/menu.cpp index cf3da0d8b90..e32e77ab930 100644 --- a/src/emu/ui/menu.cpp +++ b/src/emu/ui/menu.cpp @@ -1037,7 +1037,7 @@ UINT32 ui_menu::ui_handler(running_machine &machine, render_container *container { // if we have no menus stacked up, start with the main menu if (menu_stack == nullptr) - stack_push(auto_alloc_clear(machine, ui_menu_main(machine, container))); + stack_push(auto_alloc_clear(machine, <ui_menu_main>(machine, container))); // update the menu state if (menu_stack != nullptr) diff --git a/src/emu/ui/selgame.cpp b/src/emu/ui/selgame.cpp index 10c39e86cc8..2bad0004f85 100644 --- a/src/emu/ui/selgame.cpp +++ b/src/emu/ui/selgame.cpp @@ -141,7 +141,7 @@ void ui_menu_select_game::inkey_select(const ui_menu_event *menu_event) // special case for configure inputs if ((FPTR)driver == 1) - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_input_groups(machine(), container))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_input_groups>(machine(), container))); // anything else is a driver else @@ -180,7 +180,7 @@ void ui_menu_select_game::inkey_cancel(const ui_menu_event *menu_event) if (m_search[0] != 0) { // since we have already been popped, we must recreate ourself from scratch - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_select_game(machine(), container, nullptr))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_select_game>(machine(), container, nullptr))); } } @@ -429,10 +429,10 @@ void ui_menu_select_game::force_game_select(running_machine &machine, render_con ui_menu::stack_reset(machine); // add the quit entry followed by the game select entry - ui_menu *quit = auto_alloc_clear(machine, ui_menu_quit_game(machine, container)); + ui_menu *quit = auto_alloc_clear(machine, <ui_menu_quit_game>(machine, container)); quit->set_special_main_menu(true); ui_menu::stack_push(quit); - ui_menu::stack_push(auto_alloc_clear(machine, ui_menu_select_game(machine, container, gamename))); + ui_menu::stack_push(auto_alloc_clear(machine, <ui_menu_select_game>(machine, container, gamename))); // force the menus on machine.ui().show_menu(); diff --git a/src/emu/ui/sliders.cpp b/src/emu/ui/sliders.cpp index a7b58aeb275..26da6327202 100644 --- a/src/emu/ui/sliders.cpp +++ b/src/emu/ui/sliders.cpp @@ -242,7 +242,7 @@ UINT32 ui_menu_sliders::ui_handler(running_machine &machine, render_container *c /* if this is the first call, push the sliders menu */ if (state) - ui_menu::stack_push(auto_alloc_clear(machine, ui_menu_sliders(machine, container, true))); + ui_menu::stack_push(auto_alloc_clear(machine, <ui_menu_sliders>(machine, container, true))); /* handle standard menus */ result = ui_menu::ui_handler(machine, container, state); diff --git a/src/emu/ui/slotopt.cpp b/src/emu/ui/slotopt.cpp index 370fe8388a7..df4d0fec6b2 100644 --- a/src/emu/ui/slotopt.cpp +++ b/src/emu/ui/slotopt.cpp @@ -204,7 +204,7 @@ void ui_menu_slot_devices::handle() device_slot_interface *slot = (device_slot_interface *)menu_event->itemref; device_slot_option *option = slot_get_current_option(slot); if (option) - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_device_config(machine(), container, slot, option))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_device_config>(machine(), container, slot, option))); } } } diff --git a/src/emu/ui/swlist.cpp b/src/emu/ui/swlist.cpp index 6155a4c5883..64eb5109fae 100644 --- a/src/emu/ui/swlist.cpp +++ b/src/emu/ui/swlist.cpp @@ -448,7 +448,7 @@ void ui_menu_software::handle() const ui_menu_event *event = process(0); if (event != nullptr && event->iptkey == IPT_UI_SELECT) { - // ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software_list(machine(), container, (software_list_config *)event->itemref, image))); + // ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_software_list>(machine(), container, (software_list_config *)event->itemref, image))); *m_result = (software_list_device *)event->itemref; ui_menu::stack_pop(machine()); } diff --git a/src/emu/ui/videoopt.cpp b/src/emu/ui/videoopt.cpp index c3427004008..e76c27305c8 100644 --- a/src/emu/ui/videoopt.cpp +++ b/src/emu/ui/videoopt.cpp @@ -24,7 +24,7 @@ void ui_menu_video_targets::handle() /* process the menu */ const ui_menu_event *menu_event = process(0); if (menu_event != nullptr && menu_event->iptkey == IPT_UI_SELECT) - ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_video_options(machine(), container, static_cast<render_target *>(menu_event->itemref)))); + ui_menu::stack_push(auto_alloc_clear(machine(), <ui_menu_video_options>(machine(), container, static_cast<render_target *>(menu_event->itemref)))); } diff --git a/src/emu/uiinput.cpp b/src/emu/uiinput.cpp index 8ec5c8b91cc..c84ceae865a 100644 --- a/src/emu/uiinput.cpp +++ b/src/emu/uiinput.cpp @@ -72,7 +72,7 @@ struct ui_input_private void ui_input_init(running_machine &machine) { /* create the private data */ - machine.ui_input_data = auto_alloc_clear(machine, ui_input_private); + machine.ui_input_data = auto_alloc_clear(machine, <ui_input_private>()); machine.ui_input_data->current_mouse_x = -1; machine.ui_input_data->current_mouse_y = -1; |