*Added better wait loop for HDD spin up
*Changed almost all default config paths which are set when no config exists to be set to where the actual config file is saved (either /apps/usbloader_gx/ or /config/)
*Changed to startup and load a cios right away before loading settings. You need to have at least one non stub cios 249, 222 or 250 to start the loader now
*Fixed 30 secs timer on HDD spin wait
*Updated libfat to new libogc version
Time for some real update. Whole lot of new features added including:
* GC GAMES BOOTING FROM USB
* BANNER ANIMATION LIKE ON DISC CHANNEL
* BURNING WII GAMES FROM WBFS TO DVD-R
* SUPPORT FOR ALL USB2.0 HDDS
* NO GAME SIZE LIMITS
* EXT2 AND EXT3 FILESYSTEM SUPPORT
AND A LOT MORE.
Only missing features now: The Wii making you coffee and toasting your bread in the disc slot.
*Rewrote the whole Settings.cpp into 11 classes. Each settings menu has it's own class now
*Reworked the whole sound system. Supported formats AIF/MP3/OGG/BNS/WAV now with no file size limit (streaming).
*Changed button click/over sounds to wav from raw pcm
*Lot's of bug fixes
*Fixed loading languages
*Fixed wiitdb download
*Changed sorting/favorite stuff. You can now have favorite mode and abc/playcount/ranking sorts as well
*Change to not allow FAT32/NTFS partitions with Waninkokos cIOS Rev < 18
*Fixed settings path to default to the boot device
*Set default cIOS to 222 now if no config exists.
*Removed support for Hermes v2 and v3 (only v4+ is supported now)
*Fixed game settings saving
*Maybe more i don't remember
*Fixed Toy Story 3 boot bug
*Changed IOS limits. Now allowing all IOSs from 200-255 to support more Waninkoko cIOS slots. You will get a warning if you don't have an IOS installed and try to choose it.
*Changed boot process to wait for USB in GUI mode.
*Changed headless ID stuff (actually was in last rev)
*Added a GameTitles class for WiiTDB titles and fixed parental control (probably crashed before)
*Removed cfg.c completely now. Nothing left in it.
*Moved per game lock feature from game statistics to the individual game settings. It is not a game statistic ;).
*Added support for older Hermes IOS too (rev 2 and rev 3)
*Changed Alternative Dol Browser to get the filelist (fst) with functions from libwbfs (like banner sounds) instead of from an emulated disk. This should fix all the weird crashes with it.
* removed duplicate 002 parameter in constructors
* pass setting parameter directly to the patching functions instead of making another variable just for this
* probably broke something
* change returnTo patch a bit. now it can be run on dol sections instead of the whole thing at once.
* apply the patch for alt dols
* only apply patches to main.dol if we aren't booting an alt dol
*Changed the image resource manager to only be used for images from memory (embedded images) and not those from a device. It used the same cover/disc image for multiple game.
*Lot's of changes in image processing
*Added use of libgd and ImageData class from WiiXplorer. No more crashes with corrupted images and no more restriction to images sizes that are devidable by 4 :).
*Added a recource file manager for better access of all files/images for internal files and theme files. Some themes will have to adjust some filenames because we want to use the same filenames for themes and internal source files.
*Moved all related global settings to a settings class. one for themes and individual games will follow. Probably broke some settings or theme loading, we can deal with that later and fix when someone discovers bugs.
* in the global settings you can select any 0x10001 title that is actually installed in the nand. in the game settings, you can decide whether or not to use the global setting for that 1 game.
* only get the list of shit installed on the wii 1 time and use that list globally for stuff like checking if something is installed, getting channel names, getting title versions
* remove unused files
* probably fuckup svn merge
*Replaced all text related stuff with the ones from WiiXplorer (FreeTypeGX/GuiText/...). Some alignments might need be adjusted or maxWidth in pixel of some text parts. Also the text scrolling needs to be adjusted.
*updated libntfs (write fix)
*updated libfat
*lots of changes in the startup code, removed almost everything. This might cause problems for some drives at loading the gamelist and needs to be adjusted later but better this time. more cleanup is needed in main.cpp and will come.
*using libogc sd/usb for config loading and reload to cIOS afterwards
*added missing boothomebrew stuff pune forgot
NOTE: From now on we will be doing a lot of revs which we won't be compiling and releasing. This revs are officially not available for public so don't making issues regarding those revs. Those will be closed right away. We need first to cleanup a lot of crap and update loader to new standards before releasing stuff again.
*Changed cache size for mounts higher again which speeds up everything especially from SD
*Fixed bug when loading OCARINA+Alternative DOL. (Wasn't booting at all)
WIP Patches will be only accepted in the following format (let's not invent thousands of different formats):
In 3x 4 bytes columns separated by a space (no ":" allowed)
offset | original address | overwrite address
Example for PoP:
007AAC6A 7A6B6F6A 6F6A7A6B
007AAC75 7C7A6939 69397C7A
...
The original address is compared before patching and is not patched if it doesn't match. You can see the confirmation or fail of a patch on the Gecko Output.
*A few fix ups in different places
look for the first of ULNR or UNEO
if neither are found, look for the first of JODI or HAXX
if none of the 4 are found, return without patching anything
- Added support for ciosx (yes, including FAT/NTFS) (As always, say thanks to oggzee for this)
- Fixed bug with game specific settings (which *could* end up using other settings than you expected)
- Removed fat_ffs for now (save game emulation might conflict with FAT/NTFS support, we have to test this)
- Maybe more, but I forgot them, I think
*Cache size reduced which results in a bit slower writing but is more stable
*Fix for the gameinstaller ProgressWindow
*Added NTFS unmount on exit
WARNING:
The USBLoaderGX installer seems to be broken in some places. There are sometimes random freezes or crashes even on fat32. Those arent bad on a fat32 filesystem but can damage the whole partition on ntfs. Using the installer on ntfs is still very risky. You have been warned!
* Updated to Hermes usb storage code
* Fixed some bugs in ntfs while writing timestamps, resulting in different hashes (dimok)
* Fixed codedump when switching partitions (issue 1454)
* Fixed graphical glitch on 4:3 screens, where the prefetch cover was visible in the coverwall
* Fixed a bug with installing games, due to the switch to C++ (dimok)
* Fixed bug in http.c (where realloc *might* choose another address, thanks Dr. Clipper)
* Added support to /wbfs/Game Title [GAMEID].wbfs files (thanks oggzee)
* Fixed bug in cfg_cleanup when switching partitions
* Added BGM class again (for playing background music, requested by dimok)
* Added settings for background music again
* Fixed bug in MEM2 class (returning an invalid handle when no memory could be allocated, thanks to dimok)
* Updated DIP module to OpenDIP (report bugs with this one if you've found them, but report them here: http://github.com/spacemanspiff/odip-plugin)
* Added initial code for cios 222 rev5 (THIS DOES NOT WORK YET! DON'T FILE BUGS ON THIS ONE!)
* Added fatffs module by Hermes and Waninkoko (THIS DOES NOT WORK YET! DON'T FILE BUGS ON THIS ONE!)
* Fixed bug in Settings, which resulted in a crash when the partition was changed.
* Added caching for gamelist entries, so switching between different screens/sort options/display modes should be faster
* Changed defines in ehc_module, in order to prevent clashes with new defines in rev5
*Startup is now using libogc usbstorage for loading configs
*Improved storing gametitles from wiitdb with less memory usage
*Added freeing of the memory allocated for wiitdb titles (oh boy)
*Changed wiitdb.zip search
*Fixed filebrowser to cancel without applying the path
*Added A BGM Class
*Removed the BGM menu now.
You can now choose a file with the filebrowser which you want to play. This file will be played and all .mp3 .ogg and .wav in the same directory enlisted as a Playlist.
If you choose Loop Directory mode than the files are played one after another. You can also choose a play random music from directory mode.
You will see the list of available channels on your system if you start without a HDD or if your HDD is slow and is being recognized late. The list of games is than reloading as soon as it is recognized.
*Hot swapping of the SD card was implemented into background thread (by giantpune)
*Made lots of cleanups and some fixes
*Format menu was moved to settings page 3 (only on godmode accessable)
*Added ScreenShot and Reset/Shutdown call to background thread. Removed the not needed ones. Now you can call for Screenshot/Reset/Shutdown anywhere in the loader (after gui is started).
USB must deinit the device before re initting it or else it returns 0
games and what not.
*add filter to skip __CFG_ in teh gamelist (i was told this is the ID6
for hermes' settings)
*Changed GuiDrawThread priority to maximum. This seems to take care of the vanishing WiiMotePointer problem (let's see if it works. If anyone notices a slowdown of any process caused by this revision, please report.)
down the ocarina issues
*take the IOS reload out of the slow usb loop
*use patchhook.S from new geckoOS. this doesnt mean all the new geckoOS
stuff will work, its just the S file
*fix the gamelist from starting with 1 game on the list
*added fucntion for making screenshots and put it in a few loops.
triggers are GC(Z), CC(left-Z), nunchuk(Z). no comfirmation is given
except over usb gecko. but files are saved in <boot device>/config/
USBLoader_GX_screenshot<date><time>.png
*took out some annoying prompts from the bannersound functions because
they were really annoying
* Implemented WIP patches
* Updated language files
* Possible fix for Peppa Pig (untested, issue 1212)
* Updated Wii parental controls to work nicelly with USB GX Parental Controls
gamelist.
*rearrange the Gui_Numpad so it doesnt look like a 4yr old made it :)
*remove redundant setPostion and setAlignment in Gui_Numpad
*remove old comments
*rearrange some sd and usb init to keep from re-init the thing 20 times
*execute some of the main dol patches that are the same size in the same
loop so we dont keep looping the same data a bunch if we dont need to
(hopefully this doesnt break anything)
*sprinkle some more gpringf() around
* Added Wii Parental Control support
* Added gui numpad
* Changed GuiText to support password character
* Added lock/unlock icon in the titlebar (to unlock Parental Control)
* Added new wbfs_fat from Oggzee (further speed improvement)
* Added MEM2 support by Hibern
* Better partition support (by oggzee)
* Support for subdirectories in FAT32 (by oggzee)
* Added support for cios 223 and 250
* Added BCA support (go to Settings->Custom Paths) to change the path of the BCA files (by Hermes)
* Fixed issue with hairless mode
* Fixed issue with IOS_ReloadIOSsafe (by giantpune)
* Added setting to save games in a subdirectory
* Fixed slow startup when loading from FAT (WiiTDB required!)
* Changed handling of new titles a bit (speed improvement)
Known issue:
* FAT rename and re-id broken again due to subdirectory support (yes, I'm lazy)
changed gprintf() to use crediar's method because it is smaller and works just the same.
allow r-win's debug printf() stuff to be sent to the gecko to reduce redundant stuff there
issue 1073. headless mode - allow game to be booted via argv[1].
took out all the params from the exitprompt since they aren't used.
took out all the #ifdef stuff for building for a wii. obviously this wont run on a gamecube so it isn't needed.
added a way to check what version of a IOS is installed before trying to boot into it. added IOS_ReloadIOSsafe(). this should stop idiots with the 4.2 stubs from bitching about why stuff doesn't work.
use that check so you only see the "222v4 is needed" prompt in the settings if you don't already have that installed.
fix issue 1039. (must still be compiled without NO_DEBUG defined because technically WiiRD is a debugger)
* Added a configuration setting to turn this feature off (there you go, pune)
* Changed svnrev.sh, to also update the release date of the meta.xml file, and to set the revision to current + 1
- Type "make" to make the normal dol
- Type "make channel" to make the channel dol
This will only force networkops.cpp and PromptWindows.cpp to recompile, instead of changing the PromptWindows.h file and force a recompile on almost everything.
* Fixed issue 1058
* Menus splitted to several smaller files, to reduce compile time
This version has FAT support. You can change the used partition in the game load options. Default WBFS will be used, if found. Otherwise the first FAT partition with games will be used. FAT will only work when using Hermes cios (222/223)!!!
The libogc limits the MUTEX up to a count of 64.
Therefore we use "only one" global Mutex for all Elements.
This has to follow tath a lock hinder each thread
tath which tries access to any other element
Also the new Lock-Stuff uses one global mutex.
But this mutex is locked for the smallest time as
possible (Only in the lock- and unlock-process).
The threads are no longer hindered unnecessarily each other.
This speeds up the gui
*Added new options for BannerSounds (You can loop them, make it be quite after once played or play the BGM again)
NOTE: Changed the way how to disable BannerSounds. If you make Volume to 0 than the loading of the BannerSounds is disabled now.
* ogg decoder added (old oggplayer removed)
* mp3 decoder added (mp3's cane use as backgroundsounds)
* WAVE decoder added (but only uncompressed WAVE's)
* AIFF decoder added (only uncrompressed)
* BNS decoder added
all soundformats can use as backgroundsounds
dimoks GameSound class removed it is replaced with the new GuiSound stuff
* Many small fixes and other changes
NOTE: Added option to enable/disable the BannerSounds and a volume option for it. Note that volume 0 is not the same as disabled. On volume 0 the sounds are still loaded. More options probably going to come.
* changes is setting-dialogs
- Update the Gui-Texts only if is needed
- alls stuff for an option in one code-block
this makes it easier to add, move or remove an option
* customoptionbrowser-stuff
* Add one translation wich was forgotten in source
* Themable screensaver activated, image size as gxlogo.png, but named "screensaver.png" in the theme folder.
* Others little fixs
NOTE: The images used right now for the theme loader are made out of our old images and if someone can make some new ones go ahead. The themes are downloaded to the path you can set up. The downloaded preview images are cached at "<set up theme downloadpath>/tmp/". The widescreenfix isn't implemented there yet because images will probably be changed.
*Started 3rd SettingsPage
*Added JPEG Loading GuiImageData function and 4x4RGBA converter by r-win from WiiXplorer
*Added ZipFile Class from WiiXplorer
*Added StringToMD5 and MD5ToString to MD5 functions and made it undependable of platform
added functions to mess with the "return to" stub. everything should be working right, but if i messed up, it may cause you not to be able to exit the program (it could just keep restarting itself). now when booting homebrew, they should exit back to this program if you have a channel installed as UNEO or ULNR. priority is given to UNEO if both are present.
*Lots of changes in the TextDrawing stuff and FreeTypeGX to speed up the drawing
*Mostly optimization work which is not completely done yet, but mainly it is.
*You might not want to update to this revision right away there still might be bugs which are needed to be fixed. This is a version for everyone to test and report bugs caused by the changes.
*Vanishing WiiMotePointer should be fixed for the Settings/GameSettings probably (though it might still occur i am not sure if i didn't forget anything, there is just too much to change :P.
- Differ the coordinates between 16:9 and 4:3,
can add a setting with a "w" as prefix
(e.g. sdcard_coord = 163,395 for 4:3
and wsdcard_coord = 170,395 for 16:9).
Isn't setted "w???._coord", the "normal"-coordinate
is used for both modes.
* added a new constructor for GuiImageData
currebtly the constructor is unused, i will use later