Hello all!
A million years ago I read about someone improving emulated games by adding a rumble function to games that didn’t support rumble. (Unfortunately, I didn’t find the original article.) It worked by monitoring when data at a specific address was decreased corresponding to when a character in the game took damage. I’m writing to you guys to hear if you think this is a good idea to add support for in some libretro cores. If you guys like the idea, I might start working on it.
Anyway, the way I imagined it working is that I modify some of the existing cheat file formats to include a feature to activate rumble. I don’t know if this is a very good idea, though, since the cheat formats vary between systems so it seems very hackish. On the other hand, the alternative would be to create a completely new format that is the same between systems, but that also creates additional bloat. A third alternative would be to extend the libretro API to include a simulated rumble feature. I haven’t investigated the feasibility of this, but I saw some functionality for describing the memory maps in libretro.h with the purpose of creating core-agnostic cheats. Maybe this is the way to go? Maybe there is even no need for API changes? If there is, I am more hesitant about this latter approach due because of the bloat it creates.
So, what do you guys think? Is this a good idea at all? And if it is, what is the best way to implement it?