xemu-project / xemu

Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
https://xemu.app
Other
2.81k stars 279 forks source link

[Feature Request] I/O Throttling #164

Open BiatuAutMiahn opened 3 years ago

BiatuAutMiahn commented 3 years ago

Can we limit the rate or the IOPS for the disc drive and possily the HDD, with a configurable option in the settings?

GXTX commented 3 years ago

What's the use case?

BiatuAutMiahn commented 3 years ago

Faithful to OG xbox experience. IE, when booting Xbox logo shows before xbe is loaded from disc, then microsoft logo appears when title is executed. Halo 2 for example normally has a loading screen before main menu, and before each level.

mborgerson commented 3 years ago

Thanks, you may be the first to have requested that I make xemu slower. :) It is unlikely that xemu will ever match the exact timing characteristics of the mechanical DVD/HDD drives, but I do think this is an interesting idea and we can try. QEMU does support such throttling, so we can experiment with it and consider adding an option.

abembritishav commented 2 years ago

I did a test with PAL version of Halo CE. Since the release already has issue with PAL 60Hz mode even on real console, the game seems to have some timing issue where speeches may advance too quickly with no pauses in-between. This can be noticed right away on the start with Chief in the cryobay. And throttling IO speed fixed the issue, making the dialogue paced normally.

During the test and playthrough, both the ISO and hard drive images are on the very fast M.2 SSD. Nonetheless, I believe the issue can even occur with spinning hard disk drives.