- --
Viewing Issue Advanced Details
[ Jump to Notes ]
ID | Category [?] | Severity [?] | Reproducibility | Date Submitted | Last Update |
---|---|---|---|---|---|
08860 | Timing | Major | Always | May 3, 2024, 00:01 | May 28, 2024, 23:50 |
Tester | danylopez123 | View Status | Public | Platform | MAME (Official Binary) |
Assigned To | windyfairy | Resolution | Fixed | OS | Windows 10/11 (64-bit) |
Status [?] | Resolved | Driver | |||
Version | 0.265 | Fixed in Version | 0.266 | Build | 64-bit |
Fixed in Git Commit | 698b634 | Github Pull Request # | #12375 | ||
Summary | 08860: All games in konamigq.c and (probably some in) konamigv.c: The loading parts are VERY slow | ||||
Description |
[I was planning on making a report of nagano98 but then after compiling mame with only the konamigq.cpp hardware to see Crypt Killer, i had to include both] Due to the new change for the 2 konami hardwares with the "new SCSI" 53CF96 and drives, the games seems to load very slow, especially with Crypt Killer because it haves to load more, for konamigv.cpp probably there are games that loads somewhat fine but *maybe* with a slightly reduce loading speed, like The Simpsons Bowling where it took a bit longer to load the first sample (and yet it continues to fail to load any other like in a report i've posted before) Also, for Nagano Winter Olympics '98/Hyper Olympic in Nagano, because it loads slower, when you pick an event and then wait for the instructions screen to load, it first shows missing/garbled sprites and then loads them properly. I only tested this with Crypt Killer, Dead Eye, Hyper Athlete, Nagano Winter Olympics '98 and The Simpsons Bowling, i haven't tested this with the rest of the konamigv games but im pretty sure they should have the same longer loading problem. EDIT: So after windyfairy's comment about editing scsi_dma_transfer, putting the value to 2 still feels somewhat slower compared to actual hardware from the video that windyfairy provided with, the closest i can get from that is by either putting the value to 0 Also, as for that comment about Crypt Killer having wrong balance with the sounds, that is already reported: https://mametesters.org/view.php?id=6064 |
||||
Steps To Reproduce | |||||
Additional Information | |||||
Github Commit | |||||
Flags | |||||
Regression Version | 0.265 | ||||
Affected Sets / Systems | All games in konamigq.c and (probably some in) konamigv.c | ||||
Attached Files
|
|||||
Relationships
There are no relationship linked to this issue. |
Notes
6
No.22089
windyfairy Tester
May 4, 2024, 15:55
edited on: May 4, 2024, 15:56 |
For reference, here's a video of a Crypt Killer PCB to show how long it should actually take to load. The current code is doing 10 nsec per timer adjust in scsi_dma_transfer but about 2 nsec looks closer to real hardware. I think a quick fix would be to just lower the adjust time in scsi_dma_transfer but I don't know how long the transfers should take for the hardware so I can't suggest a more accurate value. @danylopez123 Since you're capable of compiling MAME from source and testing things out, would you mind changing the "from_nsec(10)" in scsi_dma_transfer to a lower value and see how that looks? It's the same for konamigv and konamigq. |
---|---|
No.22090
danylopez123 Tester
May 4, 2024, 21:15
edited on: May 4, 2024, 21:45 |
@windyfairy Sorry, I honestly didin't bother checking the files to see the codes so i can also edit them, where can i find that line in what files? Also thanks for putting a video for reference. Also, not in the report but after seeing that video, seems that theres a problem with the balance with the volumes because i can barely hear some voices unless i increase the volume of a certain part of the sound chip. |
No.22091
windyfairy Tester
May 5, 2024, 01:36
|
These lines specifically: src/mame/konami/konamigv.cpp line 484: https://github.com/mamedev/mame/blob/master/src/mame/konami/konamigv.cpp#L484 src/mame/konami/konamigq.cpp line 316: https://github.com/mamedev/mame/blob/master/src/mame/konami/konamigq.cpp#L316 Audio balance issues are completely unrelated to the speed issues and would be another bug report. |
No.22092
cuavas Administrator
May 5, 2024, 16:20
|
It’s currently 10µs per byte (microseconds, not nanoseconds), giving 100kT/s, which is probably a bit slow. 10ns would be 100MT/s, which is definitely too fast for the PlayStation platform, and 2ns would be 500MT/s, which is off the scale. Is there any documentation for how DMA timings are actually generated? The “nocash” documentation for the PlayStation DMA controller has proliferated pretty widely, but it isn’t very good. It only gives a basic functional overview. It doesn’t give any detail about timings at all. |
No.22093
danylopez123 Tester
May 5, 2024, 22:29
edited on: May 9, 2024, 13:38 |
@windyfairy So i did compiled mame with the lines you pointed with the value you told me ( 2 ), it does makes the loadings faster, but unfortunately, Crypt Killer still loads somewhat slower compared to that reference video, the woman at the beginning took a while to load and then when the timer hit 0, she changed to her last animation frame. EDIT: Instead of 2 i put the number to 0 and now is "Barely" close to actual hardware, i also tried with 0 but seems like it was the same as 1 so that's the closest i could get. @cuavas I dont know, i cant tell if theres a documentation for that, sorry. |
No.22109
danylopez123 Tester
May 20, 2024, 19:35
edited on: May 21, 2024, 20:36 |
So i've re-compiled MAME again after seeing: - konamigq.cpp, konamigv.cpp and twinkle.cpp . Process SCSI DMA transfers instantaneously. Avoids issues described in MT08860 (Loading parts are VERY slow). Added TODO notes about implementing correct DMA timings. Seems that the slow loadings are gone now, it also seems that Crypt Killer loads a bit faster compared to lukemorse1's PCB recording. Not sure if this can be classified as fixed but it's your choice if you want to mark this as "Resolved". |