trunk/src/mame/drivers/neogeo.c
| r21549 | r21550 | |
| 1303 | 1303 | } |
| 1304 | 1304 | |
| 1305 | 1305 | |
| 1306 | /* |
| 1307 | Resetting a sound device causes the core to update() it and generate samples if it's not up to date. |
| 1308 | Thus we preemptively reset it here while the old pointers are still valid so it's up to date and |
| 1309 | doesn't generate samples below when we reset it for the new pointers. |
| 1310 | */ |
| 1311 | ym->reset(); |
| 1306 | 1312 | size = image.get_software_region_length("ymsnd"); |
| 1307 | 1313 | machine().memory().region_free(":ymsnd"); |
| 1308 | 1314 | machine().memory().region_alloc(":ymsnd",size,1, ENDIANNESS_LITTLE); |
| r21549 | r21550 | |
| 1316 | 1322 | } |
| 1317 | 1323 | else |
| 1318 | 1324 | machine().memory().region_free(":ymsnd.deltat"); // removing the region will fix sound glitches in non-Delta-T games |
| 1319 | | ym->reset(); |
| 1325 | ym->reset(); // and this makes the new pointers take effect |
| 1320 | 1326 | size = image.get_software_region_length("sprites"); |
| 1321 | 1327 | machine().memory().region_free(":sprites"); |
| 1322 | 1328 | machine().memory().region_alloc(":sprites",size,1, ENDIANNESS_LITTLE); |