- --
Viewing Issue Advanced Details
[ Jump to Notes ]
| ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 05473 | Core | Feature | Have not tried | Feb 25, 2014, 13:20 | Mar 6, 2014, 21:30 |
| Tester | Firewave | View Status | Public | Platform | |
| Assigned To | Resolution | Open | OS | ||
| Status [?] | Acknowledged | Driver | |||
| Version | 0.152 | Fixed in Version | Build | ||
| Fixed in Git Commit | Github Pull Request # | ||||
| Summary | 05473: Add "size" validation of "dataarea" for softwarelist entries | ||||
| Description |
The "size" of a "datarea" and the containing "size" of the "rom" entries might differ: http://git.redump.net/mame/commit/?id=9d73762256884b157e9b1669bb4d3826cc4669cb We should add a validation for this. |
||||
| Steps To Reproduce | |||||
| Additional Information | |||||
| Github Commit | |||||
| Flags | |||||
| Regression Version | |||||
| Affected Sets / Systems | |||||
|
Attached Files
|
|||||
Relationships
| There are no relationship linked to this issue. |
Notes
2
|
No.10336
etabeta Developer
Mar 5, 2014, 08:40
|
the fact that they differ is not a bug. the dataarea might well be larger than the rom on purpose (for instance quackshot for megadrive uses this as a form of copy protection, and some other games have part of the dataarea filled with garbage or with 0xff) it would be of use, though, to have a validation assert when the dataarea is smaller than the rom size: currently it triggers an exception at loading time, but I agree it would be easier to spot these if the core would enforce some validation |
|---|---|
|
No.10343
Haze Senior Tester
Mar 6, 2014, 21:30
|
right, there's no situation where the rom load should go past the bounds of the array. Obviously things like odd/even byte loading and rom continue/ignore make it a less simple check than simply comparing sizes, but the fact is it should be part of the validation (I believe it is already for internal rom loads?) The bug I fixed had existed for almost a year due to the lack of any validaiton. Had there been validation it would have been caught instantly. |