- --
Viewing Issue Advanced Details
[ Jump to Notes ]
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
04368 | Crash/Freeze | Major | Always | Jun 7, 2011, 06:33 | Nov 3, 2011, 03:16 |
Tester | abelenki | View Status | Public | Platform | MAME (Self-compiled) |
Assigned To | Resolution | Fixed | OS | Windows Vista/7 (64-bit) | |
Status [?] | Resolved | Driver | |||
Version | 0.142u5 | Fixed in Version | 0.143 | Build | 64-bit |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 04368: can't redefine controls in input (this game) | ||||
Description |
i have problems with new input system on u5. i defined new default.cfg for my 4 gamepads and 1 keyboard from scratch in u5. but when i use it, i can't redefine controls in input (this game) from gamepad - they all show as n/a, and then mame crash on exit. |
||||
Steps To Reproduce |
Super simple repro: load tempest input (this game) Dial Analog Enter, ESC, Enter, ESC ESC, ESC, ESC to leave MAME == crash |
||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | |||||
Attached Files
|
![]() Please test this.
| ||||
![]() Full backtrace with 0.142u5 build [Show Content] [Hide Content]#0 0x77c478c0 in strlen () from C:\WINDOWS\system32\msvcrt.dll No symbol table info available. #1 0x02a65a17 in astring_cpyc (dst=0x22ebd0, src=0x0) at src/lib/util/astring.c:267 No locals. #2 0x02fa07e0 in astring::cpy (this=0x22ebd0, src=0x0) at src/lib/util/astring.h:361 No locals. #3 0x026ce04b in input_manager::code_to_token (this=0x2ca22c, string=..., code=...) at src/emu/input.c:1614 itemclass = 0x0 devclass = 0x0 devindex = {<_astring_base> = {text = 0x22eb00 "1", alloclen = 56, smallbuf = "1\000?\000\016\000\000\000(�\"\000\060[�\002��\"\000%\000\000\000\004�\017\004\001\000\000\000�\005�|����H�\"\000g\b�\002��\"\000����"}, <No data fields>} item = 0x0 devcode = 0x40fc206 "UNKNOWN" modifier = 0x0 #4 0x026cf9c9 in input_manager::seq_to_tokens (this=0x2ca22c, string=..., seq=...) at src/emu/input.c:2074 code = {m_internal = 0} codenum = 4 codestr = {<_astring_base> = {text = 0x22ebd8 "JOYCODE_1_HATSWITCHU", alloclen = 56, smallbuf = "JOYCODE_1_HATSWITCHU\000�\"\000\000\000?\000��\"\000�� <�\"\000�\000\000\000 �\000\003s�\001\003 �\""}, <No data fields>} #5 0x025f6208 in save_sequence (machine=..., parentnode=0x20b2f230, type=0, porttype=174, seq=...) at src/emu/inptport.c:3393 seqstring = {<_astring_base> = { text = 0x22eca4 "KEYCODE_UP OR JOYCODE_1_HATSWITCHU OR ", alloclen = 56, smallbuf = "KEYCODE_UP OR JOYCODE_1_HATSWITCHU OR \000\000�٧\002\060� �=?\000\016\000\000"}, <No data fields>} seqnode = 0x2ff5160 #6 0x025f647e in save_default_inputs (machine=..., parentnode=0x2050e210) at src/emu/inptport.c:3458 seqtype = 0 portnode = 0x20b2f230 seqtype = 0 portdata = 0x348814 entry = 0x1ecbdd2c #7 0x025f613e in save_config_callback (machine=..., config_type=2, parentnode=0x2050e210) at src/emu/inptport.c:3373 No locals. #8 0x02fcf27d in delegate_base<void, int, xml_data_node*, _noparam, _noparam>::operator() (this=0x1eccd2c4, p1=2, p2=0x2050e210) at src/emu/delegate.h:581 No locals. #9 0x028f3590 in config_save_xml (machine=..., file=..., which_type=2) at src/emu/config.c:311 curnode = 0x2050e210 root = 0x20329a50 confignode = 0x20329a88 systemnode = 0x2050e150 type = 0x1eccd2a4 #10 0x028f3023 in config_save_settings (machine=...) at src/emu/config.c:161 type = 0x0 file = {_vptr.emu_file = 0x4272368, m_filename = {<_astring_base> = { text = 0x22ee2c "default.cfg", alloclen = 56, smallbuf = "default.cfg\000\000\000\000\000\000\000\000\000\200��\035�I?\000|�\"\000_��s\\�\"\000���\200��\035\000\000\000\000\000\000\000"}, <No data fields>}, m_fullpath = {<_astring_base> = { text = 0x22ee6c "cfg\\default.cfg", alloclen = 56, smallbuf = "cfg\\default.cfg\000��\"\000*�\220|�$\200|�\a\000\000\000\000\000\000��\"\000\005\036�s�\a\000\000���s�=?"}, <No data fields>}, m_file = 0x2050de58, m_iterator = {m_base = 0x3f89b8 "cfg", m_current = 0x3f89bb "", m_index = 1}, m_crc = 0, m_openflags = 14, m_hashes = {static HASH_CRC = 82 'R', static HASH_MD5 = 77 'M', static HASH_SHA1 = 83 'S', static HASH_TYPES_CRC = 0x4123401 "R", static HASH_TYPES_CRC_SHA1 = 0x4123403 "RS", static HASH_TYPES_ALL = 0x4123406 "RSM", static FLAG_NO_DUMP = 33 '!', static FLAG_BAD_DUMP = 94 '^', m_flags = {<_astring_base> = {text = 0x22eec4 "", alloclen = 56, smallbuf = "\000g�\005��\"\000�\035h\002��\"\000��\000\000\000\000��\002�jv\033��\000\000\030�\"\000* h\002���\036\000\000\000\000\000\000\000"}, <No data fields>}, m_hashlist = {_vptr.simple_list = 0x421ed48, m_head = 0x0, m_tail = 0x0, m_pool = @0x5ff6940, m_count = 0}}, m_zipfile = 0x0, m_zipdata = 0x0, m_ziplength = 0, m_remove_on_close = false} filerr = FILERR_NONE #11 0x02550a18 in running_machine::run (this=0x22f0b8, firstrun=true) at src/emu/machine.c:434 settingsloaded = true error = 0 #12 0x0260adbc in mame_execute (options=..., osd=...) at src/emu/mame.c:176 system = 0x3c85960 config = {m_minimum_quantum = {seconds = 0, attoseconds = 166666666666666, static never = { seconds = 1000000000, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = {seconds = 0, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = <same as static member of an already seen type>}}, static zero = <same as static member of an already seen type>}, m_perfect_cpu_quantum = 0x0, m_watchdog_vblank_count = 0, m_watchdog_time = {seconds = 0, attoseconds = 0, static never = { seconds = 1000000000, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = {seconds = 0, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = <same as static member of an already seen type>}}, static zero = <same as static member of an already seen type>}, m_nvram_handler = 0, m_memcard_handler = 0, m_video_attributes = 0, m_gfxdecodeinfo = 0x3c85fc0, m_total_colors = 256, m_default_layout = 0x0, m_gamedrv = @0x3c85960, m_options = @0x22fbe0, m_devicelist = {<tagged_list<device_t>> = { m_list = {_vptr.simple_list = 0x421ed28, m_head = 0x2c300c, m_tail = 0x2674b4, m_pool = @0x5ff6940, m_count = 9}, m_map = {<_tagmap> = {table = {0x1dda0710, 0x0, 0x0, 0x0, 0x1dda0650, 0x0 <repeats 22 times>, 0x1dda06e0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda0680, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda05f0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda06b0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda0620, 0x0 <repeats 19 times>, 0x1dda0740, 0x1dda0770, 0x0 <repeats 15 times>}}, <No data fields>}}, m_machine = 0x22f0b8}} machine = {m_respool = {m_hash_size = 193, m_listlock = 0x1dda07a0, m_hash = 0x1df01cfc, m_ordered_head = 0x2bd46c, m_ordered_tail = 0x1fbd781c}, m_portlist = {m_list = { _vptr.simple_list = 0x421ecd8, m_head = 0x1ecc3b2c, m_tail = 0x1ecc941c, m_pool = @0x5ff6940, m_count = 5}, m_map = {<_tagmap> = {table = {0x0 <repeats 76 times>, 0x1dda8e68, 0x1dda8e98, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda8e38, 0x1dda8ec8, 0x1dda8ef8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, <No data fields>}}, firstcpu = 0x2c300c, gfx = {0x1fb500b4, 0x0 <repeats 31 times>}, primary_screen = 0x267944, palette = 0x1dda07d0, pens = 0x1df11bf8, colortable = 0x0, shadow_table = 0x0, priority_bitmap = 0x1fb5040c, debug_flags = 0, generic = {spriteram = {v = 0x0, i8 = 0x0, u8 = 0x0, i16 = 0x0, u16 = 0x0, i32 = 0x0, u32 = 0x0, i64 = 0x0, u64 = 0x0}, spriteram_size = 0, spriteram2 = { v = 0x0, i8 = 0x0, u8 = 0x0, i16 = 0x0, u16 = 0x0, i32 = 0x0, u32 = 0x0, i64 = 0x0, u64 = 0x0}, spriteram2_size = 0, buffered_spriteram = {v = 0x0, i8 = 0x0, u8 = 0x0, i16 = 0x0, u16 = 0x0, i32 = 0x0, u32 = 0x0, i64 = 0x0, u64 = 0x0}, buffered_spriteram2 = {v = 0x0, i8 = 0x0, u8 = 0x0, i16 = 0x0, u16 = 0x0, i32 = 0x0, u32 = 0x0, i64 = 0x0, u64 = 0x0}, paletteram = {v = 0x20162800, i8 = 0x20162800 "", u8 = 0x20162800 "", i16 = 0x20162800, u16 = 0x20162800, i32 = 0x20162800, u32 = 0x20162800, i64 = 0x20162800, u64 = 0x20162800}, paletteram2 = {v = 0x0, i8 = 0x0, u8 = 0x0, i16 = 0x0, u16 = 0x0, i32 = 0x0, u32 = 0x0, i64 = 0x0, u64 = 0x0}, tmpbitmap = 0x0}, memory_data = 0x1f2680f4, palette_data = 0x2bd96c, tilemap_data = 0x0, romload_data = 0x1eccf394, input_data = 0x0, input_port_data = 0x348814, ui_input_data = 0x1eccd344, debugcpu_data = 0x0, generic_machine_data = 0x2b600c, generic_video_data = 0x1fb4fed4, generic_audio_data = 0x2b64bc, m_config = @0x22f758, m_system = @0x3c85960, m_osd = @0x22fea4, m_regionlist = {m_list = {_vptr.simple_list = 0x421ec58, m_head = 0x1eccf4ec, m_tail = 0x1ed767a4, m_pool = @0x22f0b8, m_count = 7}, m_map = {<_tagmap> = {table = {0x0, 0x0, 0x0, 0x0, 0x1de4fdb0, 0x0 <repeats 33 times>, 0x1de4fde0, 0x0 <repeats 11 times>, 0x1de50720, 0x0, 0x0, 0x1de50690, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1dda8f68, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1de506f0, 0x0, 0x0, 0x0, 0x0, 0x1de506c0, 0x0 <repeats 22 times>}}, <No data fields>}}, m_save = {m_machine = @0x22f0b8, m_reg_allowed = false, m_illegal_regs = 0, m_entry_list = { _vptr.simple_list = 0x421edb8, m_head = 0x1fb98064, m_tail = 0x1fb4fabc, m_pool = @0x22f0b8, m_count = 1212}, m_presave_list = {_vptr.simple_list = 0x421edc8, m_head = 0x2bd624, m_tail = 0x1fb56e3c, m_pool = @0x22f0b8, m_count = 3}, m_postload_list = {_vptr.simple_list = 0x421edc8, m_head = 0x2bd6a4, m_tail = 0x1fb96b2c, m_pool = @0x22f0b8, m_count = 11}, static s_magic_num = "MAMESAVE"}, m_scheduler = { m_machine = @0x22f0b8, m_executing_device = 0x0, m_execute_list = 0x2c3174, m_basetime = {seconds = 4, attoseconds = 409856000000000000, static never = { seconds = 1000000000, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = {seconds = 0, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = <same as static member of an already seen type>}}, static zero = <same as static member of an already seen type>}, m_timer_list = 0x1fbd6da4, m_timer_allocator = {m_freelist = { _vptr.simple_list = 0x421ed38, m_head = 0x1fbd7724, m_tail = 0x1fbd6e74, m_pool = @0x22f0b8, m_count = 2}}, m_callback_timer = 0x0, m_callback_timer_modified = false, m_callback_timer_expire_time = {seconds = 4, attoseconds = 409855999982360576, static never = { seconds = 1000000000, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = {seconds = 0, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = <same as static member of an already seen type>}}, static zero = <same as static member of an already seen type>}, m_quantum_list = {_vptr.simple_list = 0x421ee58, m_head = 0x1fb5f454, m_tail = 0x1fb5f454, m_pool = @0x22f0b8, m_count = 1}, m_quantum_allocator = {m_freelist = { _vptr.simple_list = 0x421ee58, m_head = 0x0, m_tail = 0x0, m_pool = @0x22f0b8, m_count = 0}}, m_quantum_minimum = 333333333332}, m_cheat = 0x1fb9828c, m_render = 0x2bdde4, m_input = 0x2ca22c, m_sound = 0x1ecce7dc, m_video = 0x3463dc, m_debug_view = 0x0, m_driver_device = 0x2674b4, m_current_phase = MACHINE_PHASE_EXIT, m_paused = false, m_hard_reset_pending = false, m_exit_pending = true, m_exit_to_game_select = false, m_new_driver_pending = 0x0, m_soft_reset_timer = 0x2b66a4, m_rand_seed = 114974988, m_ui_active = false, m_base_time = 1307460382, m_basename = {<_astring_base> = {text = 0x22f600 "bublbobl", alloclen = 56, smallbuf = "bublbobl", '\000' <repeats 47 times>}, <No data fields>}, m_context = {<_astring_base> = {text = 0x22f640 "'audiocpu' (0ED1)", alloclen = 56, smallbuf = "'audiocpu' (0ED1)", '\000' <repeats 17 times>, "?\000`\000\000@\000\000\000\000.\000\000\000�jv\033��\000"}, <No data fields>}, m_sample_rate = 48000, m_logfile = 0x0, m_saveload_schedule = running_machine::SLS_NONE, m_saveload_schedule_time = {seconds = 0, attoseconds = 0, static never = {seconds = 1000000000, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = {seconds = 0, attoseconds = 0, static never = <same as static member of an already seen type>, static zero = <same as static member of an already seen type>}}, static zero = <same as static member of an already seen type>}, m_saveload_pending_file = {<_astring_base> = {text = 0x22f6a0 "", alloclen = 56, smallbuf = "\000\001\000\000\000\000\000\000`Y�\003�\"\000(�!\004\000\000\000\000\000\000\000\000@i�\005", '\000' <repeats 23 times>}, <No data fields>}, m_saveload_searchpath = 0x0, m_notifier_list = {{ _vptr.simple_list = 0x421ee48, m_head = 0x2bd724, m_tail = 0x1ecce75c, m_pool = @0x5ff6940, m_count = 3}, { _vptr.simple_list = 0x421ee48, m_head = 0x2b62e4, m_tail = 0x1fb56d3c, m_pool = @0x5ff6940, m_count = 4}, { _vptr.simple_list = 0x421ee48, m_head = 0x2bd7ec, m_tail = 0x1eccf05c, m_pool = @0x5ff6940, m_count = 3}, { _vptr.simple_list = 0x421ee48, m_head = 0x2bd86c, m_tail = 0x1eccf0dc, m_pool = @0x5ff6940, m_count = 3}, { _vptr.simple_list = 0x421ee48, m_head = 0x1fb97464, m_tail = 0x2bd8ec, m_pool = @0x5ff6940, m_count = 20}}, m_logerror_list = {_vptr.simple_list = 0x421ee38, m_head = 0x0, m_tail = 0x0, m_pool = @0x22f0b8, m_count = 0}} firstgame = false firstrun = true exit_pending = false error = 0 #13 0x028b82b9 in cli_frontend::execute (this=0x22fe98, argc=4, argv=0x3f4980) at src/emu/clifront.c:184 system = 0x3c85960 option_errors = {<_astring_base> = {text = 0x22faf4 "", alloclen = 56, smallbuf = "\000\036\001\004\000\000\000\000��\"\000\001\000\000\000ln&\000�n&\000��\"\000\001\000\000\000\f\b\002\000�\a\002\000\000\000\000\000\000\000\000\000 �\000\003\037�\n\003"}, <No data fields>} exename = {<_astring_base> = {text = 0x22fab4 "mamed", alloclen = 56, smallbuf = "mamed\000exe\000\"\000�=?\000\016\000\000\000X�\"\000dS�\002\n\000\000\000��\"\000�\"\000�I?\000\016\000\000\000�=?\000�I?"}, <No data fields>} #14 0x01e437f1 in utf8_main (argc=4, argv=0x3f4980) at src/osd/windows/winmain.c:505 options = {<cli_options> = {<emu_options> = {<core_options> = { _vptr.core_options = 0x425e1c8, static MAX_UNADORNED_OPTIONS = 16, m_entrylist = 0x3f62f8, m_entrylist_tailptr = 0x1dda02f0, m_entrymap = {<_tagmap> = { table = {0x1dd8cf58, 0x1dd85d50, 0x1dd921b0, 0x1dda0520, 0x3fbe08, 0x1dd97800, 0x1dd83978, 0x1dd97308, 0x1dd8dba0, 0x1dd9c068, 0x1dd9f0d8, 0x1dd9d678, 0x1dd9e030, 0x1dd9e9e8, 0x1dd8db10, 0x1dd98fd8, 0x1dd99f98, 0x1dd9c308, 0x1dd8e3f8, 0x1dd99238, 0x1dd9f678, 0x1dd94138, 0x1dd8db70, 0x1dd9c7c8, 0x1dd9d180, 0x1dda0088, 0x1dd9e4f0, 0x1dd9f148, 0x1dda05c0, 0x1dd98a98, 0x1dd94b80, 0x1dd9fbb8, 0x1dd9b6a8, 0x1dd8f0c8, 0x1dd98fa0, 0x1dd9b1b8, 0x1dd9f918, 0x1dd9d640, 0x1dd9dff8, 0x1dd9e9b0, 0x1dd9c038, 0x1dd9aa08, 0x1dd9ac98, 0x1dd9b448, 0x1dd94e60, 0x1dd96b08, 0x1dd8fe20, 0x3f7280, 0x1dd9aef8, 0x1dd926f8, 0x1dd96870, 0x1dd9af28, 0x1dd92c30, 0x1dd8f0f8, 0x1dd93920, 0x1dd99cb8, 0x1dd90f30, 0x1dd9a258, 0x1dd9a228, 0x1dd9f110, 0x1dd958c0, 0x1dd99270, 0x1dd89d88, 0x1dd91728, 0x1dd9f178, 0x1dd8f588, 0x1dd91f18, 0x1dda0590, 0x1dd92990, 0x1dd97aa0, 0x1dd96b40, 0x1dd9f6b8, 0x1dd9f958, 0x1dd98280, 0x1dd8de00, 0x1dd968a8, 0x1dd9fbf8, 0x1dd9cf20, 0x1dd9d8d8, 0x1dd9e290, 0x1dd9ec48, 0x1dd98520, 0x1dd94640, 0x1dd960a8, 0x1dd9b6e0, 0x1dd91c38, 0x1dd96610, 0x1dda0558, 0x1dd99a50, 0x1dd95618, 0x1dd9ca28, 0x1dd9d3e0, 0x1dd9dd98, 0x1dd9e750, 0x1dd95e10, 0x1dd9f3d8, 0x1dd88448}}, <No data fields>}, m_command = {<_astring_base> = {text = 0x22fd78 "", alloclen = 56, smallbuf = "\000\000?\000��\"\000��\"\000\000\000\000\000\031m\000\000\020 5\000t�\200|\000\000WideCharToMultiByte\000?\000��\000\003"}, <No data fields>}, static s_option_unadorned = {0x41c8f61 "<UNADORNED0>", 0x41c8f6e "<UNADORNED1>", 0x41c8f7b "<UNADORNED2>", 0x41c8f88 "<UNADORNED3>", 0x41c8f95 "<UNADORNED4>", 0x41c8fa2 "<UNADORNED5>", 0x41c8faf "<UNADORNED6>", 0x41c8fbc "<UNADORNED7>", 0x41c8fc9 "<UNADORNED8>", 0x41c8fd6 "<UNADORNED9>", 0x41c8fe3 "<UNADORNED10>", 0x41c8ff1 "<UNADORNED11>", 0x41c8fff "<UNADORNED12>", 0x41c900d "<UNADORNED13>", 0x41c901b "<UNADORNED14>", 0x41c9029 "<UNADORNED15>"}}, static OPTION_FLAG_DEVICE = 2147483648, static s_option_entries = 0x312d2c0}, static s_option_entries = <same as static member of an already seen type>}, static s_option_entries = {{name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f0eb "WINDOWS DEBUGGING OPTIONS"}, { name = 0x400f0b7 "oslog", defvalue = 0x400f105 "0", flags = 3, description = 0x400f108 "output error.log data to the system debugger"}, {name = 0x400f135 "watchdog;wdog", defvalue = 0x400f105 "0", flags = 4, description = 0x400f144 "force the program to terminate if no updates within specified number of seconds"}, { name = 0x400f194 "debugger_font;dfont", defvalue = 0x400f1a8 "Lucida Console", flags = 6, description = 0x400f1b8 "specifies the font to use for debugging; defaults to Lucida Console"}, { name = 0x400f1fc "debugger_font_size;dfontsize", defvalue = 0x400f219 "9", flags = 5, description = 0x400f21c "specifies the font size to use for debugging; defaults to 9 pt"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f25b "WINDOWS PERFORMANCE OPTIONS"}, { name = 0x400f277 "priority(-15-1)", defvalue = 0x400f105 "0", flags = 4, description = 0x400f288 "thread priority for the main game thread; range from -15 to 1"}, {name = 0x400f2c6 "multithreading;mt", defvalue = 0x400f105 "0", flags = 3, description = 0x400f2d8 "enable multithreading; this enables rendering and blitting on a separate thread"}, { name = 0x400f328 "numprocessors;np", defvalue = 0x400f339 "auto", flags = 6, description = 0x400f340 "number of processors; this overrides the number the system reports"}, {name = 0x400f0dd "profile", defvalue = 0x400f105 "0", flags = 4, description = 0x400f384 "enable profiling, specifying the stack depth to track"}, {name = 0x400f0e5 "bench", defvalue = 0x400f105 "0", flags = 4, description = 0x400f3bc "benchmark for the given number of emulated seconds; implies -video none -nosound -nothrottle"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f419 "WINDOWS VIDEO OPTIONS"}, { name = 0x400f42f "video", defvalue = 0x400f435 "d3d", flags = 6, description = 0x400f43c "video output method: none, gdi, ddraw, or d3d"}, {name = 0x400f46a "numscreens(1-4)", defvalue = 0x400f47a "1", flags = 4, description = 0x400f47c "number of screens to create; usually, you want just one"}, {name = 0x400f4b4 "window;w", defvalue = 0x400f105 "0", flags = 3, description = 0x400f4c0 "enable window mode; otherwise, full screen mode is assumed"}, {name = 0x400f4fb "maximize;max", defvalue = 0x400f47a "1", flags = 3, description = 0x400f508 "default to maximized windows; otherwise, windows will be minimized"}, {name = 0x400f54b "keepaspect;ka", defvalue = 0x400f47a "1", flags = 3, description = 0x400f55c "constrain to the proper aspect ratio"}, {name = 0x400f581 "prescale", defvalue = 0x400f47a "1", flags = 4, description = 0x400f58c "scale screen rendering by this amount in software"}, {name = 0x400f5be "waitvsync", defvalue = 0x400f105 "0", flags = 3, description = 0x400f5c8 "enable waiting for the start of VBLANK before flipping screens; reduces tearing effects"}, { name = 0x400f620 "syncrefresh", defvalue = 0x400f105 "0", flags = 3, description = 0x400f62c "enable using the start of VBLANK for throttling instead of the game time"}, {name = 0x400f675 "menu", defvalue = 0x400f105 "0", flags = 3, description = 0x400f67c "enable menu bar if available by UI implementation"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f6ae "DIRECTDRAW-SPECIFIC OPTIONS"}, { name = 0x400f6ca "hwstretch;hws", defvalue = 0x400f47a "1", flags = 3, description = 0x400f6d8 "enable hardware stretching"}, { name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f6f3 "DIRECT3D-SPECIFIC OPTIONS"}, { name = 0x400f70d "d3dversion(8-9)", defvalue = 0x400f219 "9", flags = 4, description = 0x400f720 "specify the preferred Direct3D version (8 or 9)"}, {name = 0x400f750 "filter;d3dfilter;flt", defvalue = 0x400f47a "1", flags = 3, description = 0x400f768 "enable bilinear filtering on screen output"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x400f794 "DIRECT3D POST-PROCESSING OPTIONS"}, { name = 0x400f7b5 "hlsl_enable;hlsl", defvalue = 0x400f105 "0", flags = 3, description = 0x400f7c8 "enable HLSL post-processing (PS3.0 required)"}, {name = 0x400f7f5 "hlslpath", defvalue = 0x400f7fe "hlsl", flags = 6, description = 0x400f803 "path to hlsl files"}, { name = 0x400f816 "hlsl_prescale_size", defvalue = 0x400f829 "3", flags = 4, description = 0x400f82c "HLSL scaling pre-pass factor (usually 2 or 3)"}, {name = 0x400f85a "hlsl_preset;(-1-5)", defvalue = 0x400f86d "-1", flags = 4, description = 0x400f870 "HLSL preset to use (0-5)"}, {name = 0x400f889 "hlsl_write", defvalue = 0x0, flags = 6, description = 0x400f894 "enable HLSL AVI writing (huge disk bandwidth suggested)"}, {name = 0x400f8cc "hlsl_snap_width", defvalue = 0x400f8dc "2048", flags = 6, description = 0x400f8e1 "HLSL upscaled-snapshot width"}, { name = 0x400f8fe "hlsl_snap_height", defvalue = 0x400f90f "1536", flags = 6, description = 0x400f914 "HLSL upscaled-snapshot height"}, { name = 0x400f934 "shadow_mask_alpha;fs_shadwa(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400f960 "shadow mask alpha-blend value (1.0 is fully blended, 0.0 is no mask)"}, { name = 0x400f9a8 "shadow_mask_texture;fs_shadwt(0.0-1.0)", defvalue = 0x400f9cf "aperture.png", flags = 6, description = 0x400f9dc "shadow mask texture name"}, { name = 0x400f9f5 "shadow_mask_x_count;fs_shadww", defvalue = 0x400fa13 "640", flags = 4, description = 0x400fa18 "shadow mask width, in phosphor dots"}, {name = 0x400fa3c "shadow_mask_y_count;fs_shadwh", defvalue = 0x400fa5a "480", flags = 4, description = 0x400fa60 "shadow mask height, in phosphor dots"}, {name = 0x400fa88 "shadow_mask_usize;fs_shadwu(0.0-1.0)", defvalue = 0x400faad "0.1875", flags = 5, description = 0x400fab4 "shadow mask texture size in U direction"}, {name = 0x400fadc "shadow_mask_vsize;fs_shadwv(0.0-1.0)", defvalue = 0x400faad "0.1875", flags = 5, description = 0x400fb04 "shadow mask texture size in V direction"}, {name = 0x400fb2c "curvature;fs_curv(0.0-4.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fb47 "screen curvature amount"}, { name = 0x400fb60 "screen_scale_top;fs_scalex(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x400fb88 "screen scale, top"}, { name = 0x400fb9c "screen_scale_bottom;fs_scaley(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x400fbc3 "screen scale, bottom"}, { name = 0x400fbd8 "pincushion;fs_pin(0.0-4.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fbf3 "pincushion amount"}, { name = 0x400fc08 "scanline_alpha;fs_scanam(0.0-4.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fc2c "overall alpha scaling value for scanlines"}, {name = 0x400fc58 "scanline_size;fs_scansc(0.0-4.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x400fc7c "overall height scaling value for scanlines"}, {name = 0x400fca8 "scanline_height;fs_scanh(0.0-4.0)", defvalue = 0x400fcca "0.7", flags = 5, description = 0x400fcd0 "individual height scaling value for scanlines"}, {name = 0x400fd00 "scanline_bright_scale;fs_scanbs(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x400fd2c "overall brightness scaling value for scanlines (multiplicative)"}, { name = 0x400fd6c "scanline_bright_offset;fs_scanbo(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fd98 "overall brightness offset value for scanlines (additive)"}, {name = 0x400fdd4 "scanline_jitter;fs_scanjt(0.0-4.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fdf8 "overall interlace jitter scaling value for scanlines"}, {name = 0x400fe2d "defocus_x;fs_focusx(0.0-16.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fe4c "overall defocus scaling value in screen-relative X direction"}, {name = 0x400fe89 "defocus_y;fs_focusy(0.0-16.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400fea8 "overall defocus scaling value in screen-relative Y direction"}, { name = 0x400fee8 "red_converge_x;fs_redcvx(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400ff0c "red convergence in screen-relative X direction"}, {name = 0x400ff3c "red_converge_y;fs_redcvy(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400ff60 "red convergence in screen-relative Y direction"}, {name = 0x400ff90 "green_converge_x;fs_grncvx(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x400ffb8 "green convergence in screen-relative X direction"}, {name = 0x400ffec "green_converge_y;fs_grncvy(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010014 "green convergence in screen-relative Y direction"}, {name = 0x4010048 "blue_converge_x;fs_blucvx(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x401006c "blue convergence in screen-relative X direction"}, {name = 0x401009c "blue_converge_y;fs_blucvy(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40100c0 "blue convergence in screen-relative Y direction"}, {name = 0x40100f0 "red_radial_converge_x;fs_redrcvx(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x401011c "red radial convergence in screen-relative X direction"}, { name = 0x4010154 "red_radial_converge_y;fs_redrcvy(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010180 "red radial convergence in screen-relative Y direction"}, { name = 0x40101b8 "green_radial_converge_x;fs_grnrcvx(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40101e8 "green radial convergence in screen-relative X direction"}, { name = 0x4010220 "green_radial_converge_y;fs_grnrcvy(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010250 "green radial convergence in screen-relative Y direction"}, { name = 0x4010288 "blue_radial_converge_x;fs_blurcvx(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40102b4 "blue radial convergence in screen-relative X direction"}, { name = 0x40102ec "blue_radial_converge_y;fs_blurcvy(-16 - 16)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010318 "blue radial convergence in screen-relative Y direction"}, {name = 0x401034f "red_from_r;fs_matrr(-2.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010370 "red output signal generated by red input signal"}, {name = 0x40103a0 "red_from_g;fs_matrg(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40103c0 "red output signal generated by green input signal"}, {name = 0x40103f2 "red_from_b;fs_matrb(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010410 "red output signal generated by blue input signal"}, {name = 0x4010444 "green_from_r;fs_matgr(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010464 "green output signal generated by red input signal"}, {name = 0x4010498 "green_from_g;fs_matgg(-2.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40104b8 "green output signal generated by green input signal"}, {name = 0x40104ec "green_from_b;fs_matgb(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x401050c "green output signal generated by blue input signal"}, {name = 0x4010540 "blue_from_r;fs_matbr(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010560 "blue output signal generated by red input signal"}, {name = 0x4010594 "blue_from_g;fs_matbg(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40105b4 "blue output signal generated by green input signal"}, {name = 0x40105e8 "blue_from_b;fs_matbb(-2.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010608 "blue output signal generated by blue input signal"}, {name = 0x4010444 "green_from_r;fs_matgr(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010464 "green output signal generated by red input signal"}, {name = 0x4010498 "green_from_g;fs_matgg(-2.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40104b8 "green output signal generated by green input signal"}, {name = 0x40104ec "green_from_b;fs_matgb(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x401050c "green output signal generated by blue input signal"}, {name = 0x4010540 "blue_from_r;fs_matbr(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010560 "blue output signal generated by red input signal"}, {name = 0x4010594 "blue_from_g;fs_matbg(-2.0-2.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40105b4 "blue output signal generated by green input signal"}, {name = 0x40105e8 "blue_from_b;fs_matbb(-2.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010608 "blue output signal generated by blue input signal"}, {name = 0x401063a "saturation;fs_sat(0.0-4.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010655 "saturation scaling value"}, { name = 0x4010670 "red_offset;fs_redoff(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010690 "red signal offset value (additive)"}, { name = 0x40106b4 "green_offset;fs_grnoff(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40106d8 "green signal offset value (additive)"}, {name = 0x4010700 "blue_offset;fs_bluoff(-1.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010720 "blue signal offset value (additive)"}, {name = 0x4010744 "red_scale;fs_redmul(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010764 "red signal scaling value (multiplicative)"}, {name = 0x4010790 "green_scale;fs_grnmul(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40107b0 "green signal scaling value (multiplicative)"}, {name = 0x40107dc "blue_scale;fs_blumul(0.0-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40107fc "blue signal scaling value (multiplicative)"}, {name = 0x4010828 "red_power;fs_redpow(0.01-32.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010848 "red signal power value (exponential)"}, {name = 0x4010870 "green_power;fs_grnpow(0.01-32.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010894 "green signal power value (exponential)"}, {name = 0x40108bc "blue_power;fs_blupow(0.01-32.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40108dc "blue signal power value (exponential)"}, {name = 0x4010902 "red_floor;fs_redfl(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x401091e "red signal floor level"}, { name = 0x4010935 "green_floor;fs_grnfl(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010953 "green signal floor level"}, { name = 0x401096c "blue_floor;fs_blufl(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010989 "blue signal floor level"}, { name = 0x40109a4 "red_phosphor_life;fs_redpho(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x40109cc "red phosphorescence decay rate (0.0 is instant, 1.0 is forever)"}, { name = 0x4010a0c "green_phosphor_life;fs_grnpho(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010a34 "green phosphorescence decay rate (0.0 is instant, 1.0 is forever)"}, { name = 0x4010a78 "blue_phosphor_life;fs_grnpho(0.0-1.0)", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010aa0 "blue phosphorescence decay rate (0.0 is instant, 1.0 is forever)"}, {name = 0x4010ae1 "yiq_enable;yiq", defvalue = 0x400f105 "0", flags = 3, description = 0x4010af0 "enable YIQ-space HLSL post-processing"}, {name = 0x4010b16 "yiq_cc;yiqcc", defvalue = 0x4010b23 "3.59754545", flags = 5, description = 0x4010b30 "Color Carrier frequency for NTSC signal processing"}, {name = 0x4010b63 "yiq_a;yiqa", defvalue = 0x4010b6e "0.5", flags = 5, description = 0x4010b74 "A value for NTSC signal processing"}, { name = 0x4010b97 "yiq_b;yiqb", defvalue = 0x4010b6e "0.5", flags = 5, description = 0x4010ba4 "B value for NTSC signal processing"}, { name = 0x4010bc7 "yiq_o;yiqo", defvalue = 0x400f959 "0.0", flags = 5, description = 0x4010bd4 "Outgoing Color Carrier phase offset for NTSC signal processing"}, {name = 0x4010c13 "yiq_p;yiqp", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4010c20 "Incoming Pixel Clock scaling value for NTSC signal processing"}, {name = 0x4010c5e "yiq_y;yiqy", defvalue = 0x4010c69 "3.0", flags = 5, description = 0x4010c70 "Y filter cutoff frequency for NTSC signal processing"}, {name = 0x4010ca5 "yiq_i;yiqi", defvalue = 0x4010cb0 "1.2", flags = 5, description = 0x4010cb4 "I filter cutoff frequency for NTSC signal processing"}, {name = 0x4010ce9 "yiq_q;yiqq", defvalue = 0x4010cf4 "0.6", flags = 5, description = 0x4010cf8 "Q filter cutoff frequency for NTSC signal processing"}, {name = 0x4010d2d "yiq_scan_time;yiqsc", defvalue = 0x4010d41 "52.6", flags = 5, description = 0x4010d48 "Horizontal scanline duration for NTSC signal processing (in usec)"}, {name = 0x4010d8a "yiq_phase_count;yiqp", defvalue = 0x4010d9f "2", flags = 4, description = 0x4010da4 "Phase Count value for NTSC signal processing"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x4010dd1 "PER-WINDOW VIDEO OPTIONS"}, { name = 0x4010dea "screen", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010df4 "explicit name of all screens; 'auto' here will try to make a best guess"}, {name = 0x4010e3c "aspect;screen_aspect", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010e54 "aspect ratio for all screens; 'auto' here will try to make a best guess"}, {name = 0x4010e9c "resolution;r", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010eac "preferred resolution for all screens; format is <width>x<height>[@<refreshrate>] or 'auto'"}, { name = 0x4010f07 "view", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010f0c "preferred view for all screens"}, { name = 0x4010f2b "screen0", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010f34 "explicit name of the first screen; 'auto' here will try to make a best guess"}, {name = 0x4010f81 "aspect0", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010f8c "aspect ratio of the first screen; 'auto' here will try to make a best guess"}, {name = 0x4010fd8 "resolution0;r0", defvalue = 0x400f339 "auto", flags = 6, description = 0x4010fe8 "preferred resolution of the first screen; format is <width>x<height>[@<refreshrate>] or 'auto'"}, { name = 0x4011047 "view0", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011050 "preferred view for the first screen"}, {name = 0x4011074 "screen1", defvalue = 0x400f339 "auto", flags = 6, description = 0x401107c "explicit name of the second screen; 'auto' here will try to make a best guess"}, {name = 0x40110ca "aspect1", defvalue = 0x400f339 "auto", flags = 6, description = 0x40110d4 "aspect ratio of the second screen; 'auto' here will try to make a best guess"}, {name = 0x4011121 "resolution1;r1", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011130 "preferred resolution of the second screen; format is <width>x<height>[@<refreshrate>] or 'auto'"}, { name = 0x4011190 "view1", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011198 "preferred view for the second screen"}, {name = 0x40111bd "screen2", defvalue = 0x400f339 "auto", flags = 6, description = 0x40111c8 "explicit name of the third screen; 'auto' here will try to make a best guess"}, {name = 0x4011215 "aspect2", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011220 "aspect ratio of the third screen; 'auto' here will try to make a best guess"}, {name = 0x401126c "resolution2;r2", defvalue = 0x400f339 "auto", flags = 6, description = 0x401127c "preferred resolution of the third screen; format is <width>x<height>[@<refreshrate>] or 'auto'"}, { name = 0x40112db "view2", defvalue = 0x400f339 "auto", flags = 6, description = 0x40112e4 "preferred view for the third screen"}, {name = 0x4011308 "screen3", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011310 "explicit name of the fourth screen; 'auto' here will try to make a best guess"}, {name = 0x401135e "aspect3", defvalue = 0x400f339 "auto", flags = 6, description = 0x4011368 "aspect ratio of the fourth screen; 'auto' here will try to make a best guess"}, {name = 0x40113b5 "resolution3;r3", defvalue = 0x400f339 "auto", flags = 6, description = 0x40113c4 "preferred resolution of the fourth screen; format is <width>x<height>[@<refreshrate>] or 'auto'"}, { name = 0x4011424 "view3", defvalue = 0x400f339 "auto", flags = 6, description = 0x401142c "preferred view for the fourth screen"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x4011451 "FULL SCREEN OPTIONS"}, { name = 0x4011465 "triplebuffer;tb", defvalue = 0x400f105 "0", flags = 3, description = 0x4011475 "enable triple buffering"}, { name = 0x401148d "switchres", defvalue = 0x400f105 "0", flags = 3, description = 0x4011497 "enable resolution switching"}, { name = 0x40114b4 "full_screen_brightness;fsb(0.1-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x40114d8 "brightness value in full screen mode"}, {name = 0x4011500 "full_screen_contrast;fsc(0.1-2.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4011524 "contrast value in full screen mode"}, { name = 0x4011548 "full_screen_gamma;fsg(0.1-3.0)", defvalue = 0x400fb84 "1.0", flags = 5, description = 0x4011568 "gamma value in full screen mode"}, { name = 0x0, defvalue = 0x0, flags = 1, description = 0x4011588 "WINDOWS SOUND OPTIONS"}, { name = 0x401159e "audio_latency(1-5)", defvalue = 0x4010d9f "2", flags = 4, description = 0x40115b4 "set audio latency (increase to reduce glitches)"}, {name = 0x0, defvalue = 0x0, flags = 1, description = 0x40115e4 "INPUT DEVICE OPTIONS"}, { name = 0x40115f9 "dual_lightgun;dual", defvalue = 0x400f105 "0", flags = 3, description = 0x401160c "enable dual lightgun input"}, { name = 0x0, defvalue = 0x0, flags = 0, description = 0x0}}} osd = {<osd_interface> = {_vptr.osd_interface = 0x426edc8, m_machine = 0x22f0b8}, static DEFAULT_FONT_HEIGHT = 200} frontend = {m_options = @0x22fbe0, m_osd = @0x22fea4, m_result = 0} local_symbols = {m_cache = {_vptr.simple_list = 0x421ee18, m_head = 0x0, m_tail = 0x0, m_pool = @0x5ff6940, m_count = 0}, m_mapfile = {<_astring_base> = { text = 0x22fdcc "E:\\mamesvn\\trunk/mamed.map", alloclen = 56, smallbuf = "E:\\mamesvn\\trunk/mamed.map\000|X|�|����z�\220|B�\200|����H�\"\000\000\000\000"}, <No data fields>}, m_symfile = {<_astring_base> = { text = 0x22fe0c "E:\\mamesvn\\trunk/mamed.sym", alloclen = 56, smallbuf = "E:\\mamesvn\\trunk/mamed.sym\000\000�(?\000\000\000\000\000�(?\000\\�\"\000�\026�|\n\000\000\000����"}, <No data fields>}, m_buffer = {<_astring_base> = { text = 0x3f5fe8 ' ' <repeats 200 times>..., alloclen = 756, smallbuf = "\000�\000\000\016\000\000\000�I?\000\a\000\000\000\210�\"\000�\025�|�\000\000\000\000\000\000�(?\000�����\037�\035\a\000\000\000\000\000\000\000\000\000\000"}, <No data fields>}, m_process = 0xffffffff, m_last_base = 0, m_text_base = 4198400, m_sym_from_addr = { m_function = 0x59a7d315 <SymFromAddr>}, m_sym_get_line_from_addr_64 = { m_function = 0x59a7c001 <SymGetLineFromAddr>}} result = 0 #15 0x02acb486 in wmain (argc=4, argv=0x3f4428) at src/osd/windows/main.c:82 i = 4 rc = 2293496 utf8_argv = 0x3f4980 #16 0x00401422 in __tmainCRTStartup () at ../mingw-w64-crt/crt/crtexe.c:282 fiberid = <optimized out> nested = <optimized out> lpszCommandLine = <optimized out> StartupInfo = {cb = 0, lpReserved = 0x0, lpDesktop = 0x0, lpTitle = 0x0, dwX = 0, dwY = 0, dwXSize = 0, dwYSize = 0, dwXCountChars = 0, dwYCountChars = 0, dwFillAttribute = 0, dwFlags = 0, wShowWindow = 0, cbReserved2 = 0, lpReserved2 = 0x0, hStdInput = 0x0, hStdOutput = 0x0, hStdError = 0x0} inDoubleQuote = <optimized out> #17 0x7c817077 in RegisterWaitForInputIdle () from C:\WINDOWS\system32\kernel32.dll No symbol table info available. #18 0x00000000 in ?? () No symbol table info available. | |||||
![]() current controller configuration file
| |||||
![]() current MAME configuration file | |||||
Relationships
There are no relationship linked to this issue. |
Notes
24
![]() No.07504
abelenki Tester
Jun 7, 2011, 06:40
|
one more note: i don't have any .cfg files from previous MAME versions. only fresh default.cfg which i created in u5. |
---|---|
![]() No.07505
Fujix Administrator
Jun 7, 2011, 11:42
|
We need your -verbose output to determine your controller set up and seek out the cause. Also, please find out which line causes the problem by editing the default.cfg manually with your current input devices. Thank you. |
![]() No.07506
abelenki Tester
Jun 7, 2011, 13:16
edited on: Jun 7, 2011, 13:18 |
here's my verbose (after crash) with bublbobl: http://pastebin.com/TEwuXK7D > Also, please find out which line causes the problem by editing the default.cfg manually with your current input devices. i don't really understand what you mean. if i knew what causes the problem, i won't submit a bug report. |
![]() No.07507
Fujix Administrator
Jun 7, 2011, 14:29
edited on: Jun 7, 2011, 14:30 |
I think I found the cause of the trouble. It is "JOYCODE_*_HATSWITCH*". If I remove any usages of JOYCODE_[2-4]_HATSWITCH* from your default.cfg, it works without the problem. I don't know why for now. Could you check this? JOYCODE_1_HATSWITCH* is working for me. |
![]() No.07508
abelenki Tester
Jun 7, 2011, 14:42
edited on: Jun 7, 2011, 14:44 |
i just checked: i re-defined all positional controls in Input (General) not to use hat switch (which is d-pad), and used only analog joysticks (e.g. JOYCODE_1_YAXIS_UP_SWITCH). then i tried to re-define the same controls in Input (This game). it became N/A again, and MAME crashed. p.s.: the bottom-line is - everything worked fine for many MAME versions before u5. something went wrong after input system changes in u5. |
![]() No.07509
abelenki Tester
Jun 7, 2011, 14:49
|
to clarify: this happens, if i redefine the same input in Input (This game). e.g.: i have this in Input (General): <port type="P1_JOYSTICK_UP"> <newseq type="standard"> JOYCODE_1_YAXIS_UP_SWITCH then i try to redefine the up controls in Input (This game) with the same controls (JOYCODE_1_YAXIS_UP_SWITCH), it becomes N/A, and MAME crashes on exit. |
![]() No.07510
Tafoid Administrator
Jun 7, 2011, 14:58
|
I'll acknowledge this for now. Since it's unlikely most people do not have the controllers/input coverage that you do to populate your .cfg file, (most have access to 1.. maybe 2 controllers), you'll need to do some experiments to help determine what in your .cfg is causing MAME to be unable to write (and cause the resultant crash). There is only so much we can do in this situation. |
![]() No.07511
abelenki Tester
Jun 7, 2011, 15:07
|
yeah, i'm open to help. just let me know, what i need to test and i will report back. |
![]() No.07512
abelenki Tester
Jun 7, 2011, 15:15
|
also, i reuploaded my default.cfg. it had wrongly assigned controls for player 4. |
![]() No.07513
Tafoid Administrator
Jun 7, 2011, 15:33
|
Added my gdboutput.txt log with a full backtrace of the crash I get on exit. Should help a dev identify the issue. Problem is we don't know for sure if it's mangling it upon loading or while preparing it to save. |
![]() No.07514
Fujix Administrator
Jun 7, 2011, 15:36
edited on: Jun 7, 2011, 15:38 |
Anton, please test my upload. I removed JOYCODE_[2-4]_HATSWITCH* from following definitions, and this file is working for me: <port type="UI_UP"> |
![]() No.07515
B2K24 Senior Tester
Jun 7, 2011, 15:40
|
I can reproduce this issue if I launch mame64 self compiled 0.142u5 with anything in cfg directory. I'm using a n64 joypad with PSX + N64 USB converter. However, if you delete everything in directory cfg before launching mame64 everything works fine until the point of having to re launch mame64 with config files in cfg directory. |
![]() No.07516
abelenki Tester
Jun 7, 2011, 15:51
edited on: Jun 7, 2011, 15:52 |
Fujix, tried your default.cfg and still have the same problem. if i redefine the same controls for my gamepad in Input (this game), it reverts to N/A, then crashes on exit. |
![]() No.07517
abelenki Tester
Jun 7, 2011, 16:05
|
also, i uploaded my mame.ini (if it helps). |
![]() No.07534
dukejp Tester
Jun 13, 2011, 22:52
|
I can confirm this bug. You can customize your "general" joystick config, but mame crashes at exit if you customize "this game" joystick configuration. (in my case, sf2ce.) |
![]() No.07555
abelenki Tester
Jun 20, 2011, 01:33
edited on: Jun 20, 2011, 01:34 |
it isn't mentioned in whatsnew, but the bug is fixed in u6. i can finally remap gamepad controls in Input (This game) without N/A and crash. many thanks to everyone involved!! |
![]() No.07556
Tafoid Administrator
Jun 20, 2011, 01:43
|
I think there are other issues with this which is why it wasn't immediately set as resolved. There was more work to be done but it didn't get done before u6 happened. Once I see it's truly fixed properly, I'll make sure this gets marked as such. |
![]() No.07612
R. Belmont Developer
Jul 1, 2011, 14:28
|
The N/A and crash problems were the "default input" thing that Aaron fixed. Justify leaving this open or delete :) |
![]() No.07614
Tafoid Administrator
Jul 1, 2011, 15:38
|
OG fixed the initial crash problem with what he termed it was a "bandaid" (r12858). I didn't notice Aaron's proper fix which seems to have come after u6 was released (r12940). I'll resolve for 0.143 as a result. |
![]() No.07621
abelenki Tester
Jul 2, 2011, 06:20
edited on: Jul 2, 2011, 06:23 |
actually, the bug is not fixed at all on 0.143. MAME and MESS still crash a lot when trying to define Input (this game) via gamepads. and it's getting real annoying. when i'm trying to define Input (this game) on a800, MESS crashes while i'm moving cursor up and down on UI. when i detached fourth gamepad from my system, and 4th gamepad is still set in default.cfg, MAME crashes on EVERY exit. |
![]() No.07623
Fujix Administrator
Jul 2, 2011, 11:43
|
Reopened the report. |
![]() No.07624
abelenki Tester
Jul 2, 2011, 12:00
edited on: Jul 2, 2011, 12:05 |
thanks, Fujix. can anyone confirm that again? (i re-uploaded default.cfg and mame.ini). p.s..: anyway, that case happens not THAT often as before, but still the bug appears not to be fixed. |
![]() No.07861
Tafoid Administrator
Nov 2, 2011, 21:09
|
abelenki, please see if this is still a problem in 0.143u9 with fresh .cfg files made (not stuff imported from earlier versions). I'd be curious if this is still a recurring issue. |
![]() No.07862
Tafoid Administrator
Nov 3, 2011, 03:16
|
Unsure when it was fixed, but as of 0.143u6, things work as expect for OP. Resolving |