- --
Viewing Issue Advanced Details
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
09017 | Crash/Freeze | Minor | Always | 7 days ago | 3 days ago |
Tester | Robbbert | View Status | Public | Platform | MAME (Self-compiled) |
Assigned To | Resolution | Invalid report | OS | Windows 10/11 (64-bit) | |
Status [?] | Closed | Driver | |||
Version | 0.272 | Fixed in Version | Build | 64-bit | |
Fixed in Git Commit | Github Pull Request # | ||||
Summary | 09017: svision and clones: Crash at start if no cart | ||||
Description | If svision (or any of its clones) is started without a cart, for example for a bench run or in the debugger, it crashes at start. | ||||
Steps To Reproduce |
>mame svsion -bench 9 it crashes straight away. |
||||
Additional Information |
C:\MAME>mame svision -d Warning: layout view 'Bezel Artwork' contains deprecated bezel element Warning: layout view 'Bezel Artwork' contains deprecated bezel element ----------------------------------------------------- Exception at EIP=00007ff6df6f7090 (handler_entry_read_memory_bank<0, 0>::read(unsigned int, unsigned char) const+0x0030): ACCESS VIOLATION While attempting to read memory at 0000000000003fff ----------------------------------------------------- RAX=0000000000000000 RBX=0000023b86fc82c0 RCX=0000023b883fdf90 RDX=0000000000003fff RSI=00007ff6db5da710 RDI=0000000000000001 RBP=00007ff6e95ba120 RSP=0000007db1b29878 R8=0000000000000000 R9=0000023b86ff37f8 R10=0000023b883fdf90 R11=0000023b86ff3808 R12=0de0b6b3a7640000 R13=00007ff6e95ba120 R14=0000007db1b29c80 R15=0000007db1b29ca0 ----------------------------------------------------- Stack crawl: 0000007db1b29870: 00007ff6df6f7090 (handler_entry_read_memory_bank<0, 0>::read(unsigned int, unsigned char) const+0x0030) 0000007db1b298a0: 00007ff6dbd7ac0a (m65c02_device::reset_c_full()+0x001a) 0000007db1b298e0: 00007ff6db5daaea (m6502_device::execute_run()+0x009a) 0000007db1b29960: 00007ff6db525533 (device_scheduler::timeslice()+0x0323) 0000007db1b29ae0: 00007ff6db5225a5 (running_machine::run(bool)+0x01c5) 0000007db1b2f100: 00007ff6de67344c (mame_machine_manager::execute()+0x024c) 0000007db1b2f4f0: 00007ff6e2396a9a (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&)+0x03ea) 0000007db1b2f800: 00007ff6e23970ca (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> > > >&)+0x007a) 0000007db1b2f860: 00007ff6de66e1f7 (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> > > >&)+0x0027) 0000007db1b2fc30: 00007ff6e402d261 (luaopen_lfs+0xc5f6c1) 0000007db1b2fc80: 00007ff6d77812ee (__tmainCRTStartup+0x016e) 0000007db1b2fcb0: 00007ff6d7781406 (mainCRTStartup+0x0016) 0000007db1b2fce0: 00007ffd5ef17374 (BaseThreadInitThunk+0x0014) 0000007db1b2fd60: 00007ffd6055cc91 (RtlUserThreadStart+0x0021) |
||||
Github Commit | |||||
Flags | |||||
Regression Version | |||||
Affected Sets / Systems | svision and clones | ||||
Attached Files
|
|||||
Relationships
There are no relationship linked to this issue. |
Notes
6
No.22600
cuavas Administrator
3 days ago
|
These systems require a cartridge to be loaded: GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "svision_cart", "bin,ws,sv"); m_cart->set_must_be_loaded(true); m_cart->set_device_load(FUNC(svision_state::cart_load)); You must be running a hacked build. |
---|---|
No.22603
Robbbert Moderator
3 days ago
edited on: 3 days ago |
Did you try it for yourself in standard MAME? Either a bench run or via the debugger. If you don't support the debugger or bench runs then say so. |
No.22605
cuavas Administrator
3 days ago
|
If a media device is marked as requiring media to be loaded, finding a way to bypass that is not supported. If -bench bypasses that test, then that’s an issue with -bench and warrants one report at most. It’s completely unhelpful to spam MAME Testers with reports saying that going out of your way to bypass required mounted media causes bad behaviour. |
No.22606
Robbbert Moderator
3 days ago
|
IMO required media is just papering over bad programming practices, but it's your project with your rules. I won't log any more cases where required media is involved. |
No.22609
hap Developer
3 days ago
|
No matter what convoluted method you use, MAME crashing is a bug. |
No.22612
cuavas Administrator
3 days ago
|
There’s plenty of bad code in MAME, but that’s neither here nor there when it comes to whether these kinds of reports are useful. Media image devices have the “must be loaded” flag. Developers can assume that if they set this flag, they can assume media will be mounted. The fact that there’s are ways to bypass this with certain combinations of options is a bug in MAME’s UI code. This doesn’t mean that there’s a bug with every system that assumes that media will be mounted if the “must be loaded” flag is set. It’s reasonable to set the “must be loaded” flag in cases where the system boots directly from media, or where it won’t do anything useful without media mounted and mounting media requires a hard reset (e.g. because it requires loading a slot device). |