Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08415 Misc. Minor Always Sep 13, 2022, 17:30 Sep 18, 2022, 00:24
Tester star2root View Status Public Platform
Assigned To Resolution Invalid report OS
Status [?] Closed Driver
Version 0.247 Fixed in Version Build
Fixed in Git Commit Github Pull Request #
Summary 08415: apple3: The Rob Justice SOSHDBOOT ROM should be marked as optional, not required
Description This is an optional bios that replaces the standard ROM, it should not be marked as required.
Steps To Reproduce Run the Apple III emulation using a ROM set that does not included the SOSHDBOOT file.
Additional Information I recommend applying this patch...

--- src/mame/apple/apple3.cpp 2022-09-13 12:44:42.000000000 -0400
+++ src/mame/apple/apple3.cpp 2022-09-13 13:06:40.000000000 -0400
@@ -348,5 +348,5 @@
  ROM_SYSTEM_BIOS(1, "soshd", "Rob Justice SOSHDBOOT")
- ROMX_LOAD( "soshdboot.bin", 0x000000, 0x001000, CRC(fd5ac9e2) SHA1(ba466a54ddb7f618c4f18f344754343c5945b417), ROM_BIOS(1))
+ ROMX_LOAD( "soshdboot.bin", 0x000000, 0x001000, CRC(fd5ac9e2) SHA1(ba466a54ddb7f618c4f18f344754343c5945b417), ROM_BIOS(1) | ROM_OPTIONAL)
Github Commit
Flags Verified with Original, Verified with Code
Regression Version
Affected Sets / Systems apple3
Attached Files
has duplicate 08419Closed All with a secondary optional BIOS: MAME should not prevent running a system if a BIOS that is not selected is not present. 
User avatar
Senior Tester
Sep 13, 2022, 20:06
I was told years ago that 'ROM_OPTIONAL' is deprecated and will go away, so I doubt it will get set here.
User avatar
Sep 16, 2022, 22:07
edited on: Sep 16, 2022, 22:08
Stands to reason this should be a option to use to replace the original apple3 BIOS, rather than a requirement of "apple3" master romset.
I'll confirm, but unsure if anything will be done about it until it is device-ified.
User avatar
Sep 18, 2022, 00:24
Optional ROMs are problematic because they cause usability issues. MAME simply doesn't load them if they aren't found, and you don't get an error message if you try to do something that requires an optional ROM. Add such, no optional ROMs are to be added, and no existing ROMs are to be made optional. The issue as reported is invalid.

You can start a system from the command line (or an external front-end) if you only have ROMs for the selected BIOS present. When starting a system, MAME doesn't look for ROMs that belong to a BIOS setting that isn't selected.

The internal UI always checks for ROMs associated with all BIOS options because it would be problematic not to. Working out which BIOS will actually be selected is complicated due to the flexibility in how INI files can be loaded. Trying to get clever and only check for the selected BIOS would just lead to more unexpected errors when the UI doesn't correctly determine what all the BIOS settings will be when the machine actually starts.

This is just another case of "I need to find a new every time a new UniBIOS surfaces" complaints.