Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
09152 Crash/Freeze Critical (emulator) Always 14 days ago 9 days ago
Tester Hirudov View Status Public Platform MAME (Official Binary)
Assigned To cuavas Resolution Fixed OS Windows 10/11 (64-bit)
Status [?] Resolved Driver
Version 0.276 Fixed in Version 0.277GIT Build 64-bit
Fixed in Git Commit 9d22332 Github Pull Request #
Summary 09152: Selecting the Connected monitor to 15" Portrait Display (640x870) crashed MAME with exception
Description Selecting the Connected monitor to 15" Portrait Display (640x870) crashed MAME with exception. Can start MacOS with Portrait Display.
Steps To Reproduce Start MAME

>mame64 maciici

Then go to Machine Configuration and select Connected monitor to 15" Portrait Display (640x870)
Additional Information Crash log:
-----------------------------------------------------
Exception at EIP=00007ff71c6cae0e (i80c52_device::~i80c52_device()+0x005e): ACCESS VIOLATION
While attempting to write memory at 000002ddd92bd040
-----------------------------------------------------
RAX=000002ddd3434060 RBX=000002ddd3440050 RCX=000002ddd92bd060 RDX=00000000000000db
RSI=000002ddd8a9e040 RDI=0000000000000301 RBP=0000000000000050 RSP=000000e17faf97b0
 R8=0000000000000008 R9=000000000000f050 R10=0000000000000280 R11=0000000000000366
R12=00000000ff000000 R13=000002ddd343f470 R14=000000e17faf9840 R15=000000e17faf9d70
-----------------------------------------------------
Stack crawl:
  000000e17faf9800: 00007ff71c6cae0e (i80c52_device::~i80c52_device()+0x005e)
  000000e17faf98a0: 00007ff71bd07750 (devcb_base& devcb_write<int, 1u>::set_callback<msx_cart_msx_audio_nms1205_device&, void (msx_cart_msx_audio_nms1205_device::*&&)(int), char const (&) [43]>(std::tuple<msx_cart_msx_audio_nms1205_device&, void (msx_cart_msx_audio_nms1205_device::*&&)(int), char const (&) [43]> const&)+0x0030)
  000000e17faf9920: 00007ff71f1589ba (construct_ioport_hangonjr(device_t&, ioport_list&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)+0x033a)
  000000e17faf99b0: 00007ff71f15a878 (construct_ioport_ridleofp(device_t&, ioport_list&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)+0x010d)
  000000e17faf9a20: 00007ff71bd04723 (devcb_base& devcb_write<int, 1u>::set_callback<isa8_fdc_superio_device&, void (isa8_fdc_device::*&&)(int), char const (&) [23]>(std::tuple<isa8_fdc_superio_device&, void (isa8_fdc_device::*&&)(int), char const (&) [23]> const&)+0x00e3)
  000000e17faf9a90: 00007ff71bd2b8ab (devcb_base& devcb_write<int, 1u>::set_callback<char const (&) [4], void (psxirq_device::*&&)(int), char const (&) [22]>(std::tuple<char const (&) [4], void (psxirq_device::*&&)(int), char const (&) [22]> const&)+0x015b)
  000000e17faf9be0: 00007ff71bd28a6f (devcb_base& devcb_write<int, 1u>::set_callback<char const (&) [3], void (z80pio_device::*&&)(int), char const (&) [21]>(std::tuple<char const (&) [3], void (z80pio_device::*&&)(int), char const (&) [21]> const&)+0x01ef)
  000000e17faff1f0: 00007ff71f06f68b (construct_ioport_tomagic(device_t&, ioport_list&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)+0x019a)
  000000e17faff5d0: 00007ff722f5bc09 (register_frame_ctor+0x2ada589)
  000000e17faff880: 00007ff722f5c1bd (register_frame_ctor+0x2adab3d)
  000000e17faff8e0: 00007ff71f069d39 (ddealer_state::ddealer(machine_config&)+0x0593)
  000000e17faffcb0: 00007ff724c3efcc (luaopen_lfs+0xf816cc)
  000000e17faffd80: 00007ff717ac13b1 (__tmainCRTStartup+0x0231)
  000000e17faffdb0: 00007ff717ac14e6 (mainCRTStartup+0x0006)
  000000e17faffde0: 00007ff801797374 (BaseThreadInitThunk+0x0014)
  000000e17faffe60: 00007ff802f7cc91 (RtlUserThreadStart+0x0021)
Github Commit
Flags
Regression Version
Affected Sets / Systems
Attached Files
png file icon Crashed MAME.png (830,034 bytes) 14 days ago Uploaded by Hirudov
Relationships
There are no relationship linked to this issue.
Notes
4
User avatar
No.23180
hap
Developer
13 days ago
I can confirm your crash, but not your crashlog. Strange that it has stuff like hangonjr and MSX in it, maybe your symbols file is not the one that came with the MAME version you installed?

Here's mine from 0.276:

-----------------------------------------------------
Exception at EIP=00007ff6d5506abe (rbv_device::screen_update(screen_device&, bitmap_rgb32&, rectangle const&)+0x02ce): ACCESS VIOLATION
While attempting to write memory at 0000020af869f040
-----------------------------------------------------
RAX=0000020af7ae5580 RBX=0000020af2752760 RCX=0000020af869f060 RDX=00000000000000db
RSI=0000020af818e040 RDI=0000000000000301 RBP=0000000000000050 RSP=0000004b936f9160
 R8=0000000000000008 R9=000000000000f050 R10=0000000000000280 R11=0000000000000366
R12=00000000ff000000 R13=0000020af2751c30 R14=0000004b936f91f0 R15=0000004b936f9720
-----------------------------------------------------
Stack crawl:
  0000004b936f91b0: 00007ff6d5506abe (rbv_device::screen_update(screen_device&, bitmap_rgb32&, rectangle const&)+0x02ce)
  0000004b936f9250: 00007ff6d4b39088 (screen_device::update_partial(int)+0x02f8)
  0000004b936f92d0: 00007ff6d7f9287a (video_manager::finish_screen_updates()+0x00ca)
  0000004b936f9360: 00007ff6d7f94738 (video_manager::frame_update(bool)+0x01f8)
  0000004b936f93d0: 00007ff6d4b35ff3 (screen_device::vblank_begin(int)+0x0233)
  0000004b936f9440: 00007ff6d4b5d29b (device_scheduler::timeslice()+0x014b)
  0000004b936f9590: 00007ff6d4b5a45f (running_machine::run(bool)+0x01bf)
  0000004b936feba0: 00007ff6d7ea88cb (mame_machine_manager::execute()+0x020b)
  0000004b936fef80: 00007ff6dbd99b39 (cli_frontend::start_execution(mame_machine_manager*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)+0x03c9)
  0000004b936ff230: 00007ff6dbd9a0ed (cli_frontend::execute(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)+0x004d)
  0000004b936ff290: 00007ff6d7ea2f79 (emulator_info::start_frontend(emu_options&, osd_interface&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)+0x0029)
  0000004b936ff660: 00007ff6dda945bc (luaopen_lfs+0xf85edc)
  0000004b936ff730: 00007ff6d09013b1 (__tmainCRTStartup+0x0231)
  0000004b936ff760: 00007ff6d09014e6 (mainCRTStartup+0x0016)
  0000004b936ff790: 00007ffa22907374 (BaseThreadInitThunk+0x0014)
  0000004b936ff810: 00007ffa2303cc91 (RtlUserThreadStart+0x0021)
User avatar
No.23181
Hirudov
Tester
13 days ago
Yes, my mistake. To have all settings and my environment, I keep the installation directory, and change only the main executables. It also happened in the past with crash logs from me here. - see https://mametesters.org/view.php?id=8580 Sorry. I will use MAME from separate directory for crash reports in the future.
User avatar
No.23182
cuavas
Administrator
13 days ago
I made it configure the screen with hard-coded parameters for the selected monitor. It fixes the crash and gives screen timings that would work with the selected display, but I have no idea how the CRTC configuration is supposed to work. Also, if you select the monochrome portrait display, the video will be blue because the monochrome displays use the blue channel output. Fixing that requires the screen update function to be aware of whether the connected display is monochrome like the MDC4•8 card is.
User avatar
No.23185
cuavas
Administrator
9 days ago
> To have all settings and my environment, I keep the installation directory, and change only the main executables.

You’ll get numerous other issues if you do that. Support files need to be updated. You shouldn’t be reporting issues if you aren’t keeping support files in sync with MAME.