-
Notifications
You must be signed in to change notification settings - Fork 326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Basic implementation of cache for the list of games to improve loading times for large directories. #1000
base: master
Are you sure you want to change the base?
Conversation
…cache for the gameinfo array. The first time the gameinfo array is loaded it is stored in a cache file in the root directory of the rootdevice. This cache can be cleared up by pressing X/1 in the device selection menu. IF a cache file is present it will be used to display the list of games, instead of scanning the directory manually.
Sorry but can you provide a compiled .dol link for that version if thats not too much trouble? so i can use this feature while we wait them to decide if they accept or not your PR? Thank you. EDIT.: Nvm, just fount your fork and release file (https://github.com/jberron/ndont/releases/tag/v1). Thanks for doing this, my sd card has a many games, so it takes more than 120 seconds to load the list each time! EDIT 2: Just tried your v1 release and I cant seem to get the cache feature to work. I load the game list and back out, then load it again and the load time didn't improve. I also checked the sd card and no gamecache.bin were created. I wonder if im doing something wrong? |
Hey @marceloMedeiros . Yes, I did this a couple months ago, but the .dol file should be https://github.com/jberron/ndont/releases/download/v1/loader.dol remember you need to rename it to boot.dol I am using an original Wii and it works fine. You should see the compilation date as May 3rd, 2022. I will upload the .dol file with the xml here: ndont.zip you can extract this into your apps folder in your sd card. This is a screenshot of how it should look like when it runs Please let me know if you can get it to work. |
Thank you for the response and for sharing the file. I tested with the version you attached and the cache is working now. The first time i opened the sd and usb devices it took a long time but on subsequent accesses its loading almost instantly. And i also tested launching some games and all is working as expected. Im not sure why I wasn't able to get it to work with your release version but its working great now. Hopefully they accept your PR cause it greatly improves the user experience when your storage device has many files. Thank you!
|
Awesome! Glad to know it worked. Don´t forget to clean the cache if you make any changes to your library by pressing X/1 in the initial screen. |
the reason this will never be added is people are not smart, i can already see countless reports of people saying they added games and they dont show up in the game list, they already fail to add the games correctly many times, even tough is described in countless tutorials, but this would just make everything even more chaotic for the well common folk. |
Hi @carnage702 , sorry to write in a closed theme. I don't understand very well why is better to have a slow boot just because some people, I think this implementation is needed for a lot of people. If you are worried about people who can have more problems then there is an easy solution. Add a new option in the options menu called "Use cache file for games" or something like that, and make that option off by default, so that way if anyone wants to use the cache enhancement can do it. I hope you can take this into consideration. |
Fix for issue 701 and 500
This is a basic implementation of a cache for the gameinfo array. The first time the list of games is loaded into the gameinfo array, the array will be stored in a cache file in the root directory of the rootdevice "/gamecache.bin". This cache can be cleared up by pressing X/1 in the device selection menu. If a cache file is present it will be used to display the list of games in the selected device, instead of scanning the directory.