summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2016-01-08 12:41:13 +0100
committer Miodrag Milanovic <mmicko@gmail.com>2016-01-08 12:41:13 +0100
commitce75a5d6825066fc67539c4eafed5902a34f9457 (patch)
treeb66bb69abc3da5001a315428670d373240967cd7 /src/emu
parent12995ac3d44ac182efc213c67e0752388f1d7530 (diff)
removed memory tracking (nw)
Diffstat (limited to 'src/emu')
-rw-r--r--src/emu/clifront.cpp10
-rw-r--r--src/emu/clifront.h1
-rw-r--r--src/emu/debug/debugcon.cpp2
-rw-r--r--src/emu/debug/debugcpu.cpp2
-rw-r--r--src/emu/diimage.cpp2
-rw-r--r--src/emu/driver.h2
-rw-r--r--src/emu/emualloc.h29
-rw-r--r--src/emu/hashfile.cpp4
-rw-r--r--src/emu/machine/generic.cpp2
-rw-r--r--src/emu/romload.cpp2
-rw-r--r--src/emu/softlist.cpp4
-rw-r--r--src/emu/ui/filemngr.cpp4
-rw-r--r--src/emu/ui/imgcntrl.cpp14
-rw-r--r--src/emu/ui/inputmap.cpp2
-rw-r--r--src/emu/ui/mainmenu.cpp44
-rw-r--r--src/emu/ui/menu.cpp2
-rw-r--r--src/emu/ui/selgame.cpp8
-rw-r--r--src/emu/ui/sliders.cpp2
-rw-r--r--src/emu/ui/slotopt.cpp2
-rw-r--r--src/emu/ui/swlist.cpp2
-rw-r--r--src/emu/ui/videoopt.cpp2
-rw-r--r--src/emu/uiinput.cpp2
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;