Commit Graph

165 Commits

Author SHA1 Message Date
dimok321
6f63f9cf05 *Prepare source code for devkitPPC r23 - replaced removed directory functions
*Added additional sort mode - "Sort by number of players"
*Added support for multiple game partitions.

Note: You can activate multiple game partitions support in the Loader Settings. When it is active, all games from all partitions will be listed in the game list. Partitions can be mixed up as you wish wbfs/fat/ntfs/ext. When the multiple partitions feature is activated than the partition in "Game/Install Partition" setting is taken for new game installation. Also the free space amount will be shown from that game installation partition. This will be clickable in the future listing all partitions with their sizes.
2011-02-02 18:30:15 +00:00
dimok321
2764ac6b76 *Added support for physical sector sizes other than 512 bytes per sector for wbfs partitions only! Others filesystems are currently still hardcoded in their libs. Tested with a 3TB drive with a sector size 4096 one wbfs partition (thanks dexter).
*Added initial source for support for virtual sector size other than 512 bytes per sector on wbfs partitions. This still doesn't work (not tested) and will still cause many code dumps because of some unfinished things. So don't use it yet.

*New ehcmodule for Hermes IOS versions. This gives a big boost in compatibility to usb drives using Hermes cIOSes. Now many drives should work with it. Hermes cIOSes have now probably the best compatibility to usb devices. (big thanks to rodries here) (more to come ;))
2011-01-28 21:19:43 +00:00
dimok321
0cca811b34 *Added return grid rows after closing a search to the amount of which one has before doing search
*Fixed weird last random character at game info text 
*Reload background/cursor/... on theme apply after download 
*Added connection check function for URLs (like a PING)
*Added timeout on trying to connect to the theme download hoster
*Fixed redundant characters on search bar when both upper and lower case exist in a search
2011-01-25 20:19:15 +00:00
dimok321
661fe9ce6e *Fixed game patches apply on "Default" and "On game launch" alternate dol settings
*Cleaned the GameBootProcess source a bit up and put it together to a class for better overview
2011-01-22 00:06:28 +00:00
dimok321
e5db72b71d *Fixed the parental control settings code dump
*Reworked almost everything about alternate DOL loading (I am wondering how loading from SD/USB even worked)
*Added new Option "Default" for alternate DOL which is now the default settings. This setting will select the alternate DOL automatically for games like Red Steel 1 because this alt. DOL is always needed to play the game. On games where the alt dol option is not needed the option "Default" = "OFF". This is just an attempt to make this option more automatic. Games like Metroid Prime (the only game right now) will have a prompt on game start where you choose between 1, 2 or 3 on this option because this game always requires either of these.
*Small source cleanups/fixes
2011-01-21 19:43:59 +00:00
dimok321
1f0df75ef8 *Added several block options for parental control which decide what should be blocked in the loader
*Changed to update disc drive status only 1 time per second in the main menu (instead of every ~100ns)
*Removed global "locked games" for per game lock option which is not really useful anyway since you have to save in the game the lock status
*Removed a few unused setting variables
*Updated some language files
2011-01-20 15:00:55 +00:00
cyan
0b3ddc6ead *Disable game install in IOS58 mode
*WiiMote desync problem fixed
*Removed "free space warning prompt" on fat32 partitions now
*Changed default free space option to ON
*Remove id button on other layouts than list view
*Moved carousel arrow position to theme file
2011-01-17 22:03:14 +00:00
dimok321
e6a87c05fe *Fixed display of partition size on WBFS partitions with a different wbfs sector size than 512bytes.
*Made the ProgressWindow for game installation more accurate
*Added displaying newly installed games (marked as new) on favorite list, so you don't have to change to full list when installing new games. (Thanks Cyan for the patch)
*Lot's a small fixes
*Added WDM Menu on game start. You can set it in the alternative DOL option (one new option there). The menu lists all DOLs on the disc and if a wdm file is provided in the WDM path (configurable in the settings) than the dol parameter and dol replacement name will be taken from the wdm. The DOLs that are not listed in the WDM but exist on the DISC will be listed at the end of the list.
*Added avoid of multiple app cleanup when game fails to boot

*Changed libfat to use FS info sector on FAT32 partitions. This speeds up the free space information getting to instant. For that the FS info sector has to have correct values. The values of all partitions where homebrews were writing to are currently incorrect because the official libfat does not support FS info sector (i submited a patch) (Windows does write it correct though). That is why there needs to be a synchronization of the FS info sector for partitions used with homebrews. For this purpose a new setting was added in the Loader Settings. You can synchronize all your FAT32 partitions on the USB with it once and you are done (if you don't write to that partition with current homebrews). After that you can enable free space display and it will be instant like on WBFS/NTFS/EXT partitions.
2011-01-16 13:12:07 +00:00
dimok321
6540e252dc *Fixed DVD access in IOS58 mode (needs AHBPROT)
*Cleaned up progress window source
*Fixed compile warning on devkitPPC r22
2011-01-14 15:39:42 +00:00
dimok321
4a3d3fb31b *Fixed DVD support in IOS58 modus. You have to have AHBPROT flag enabled for the DVD access support in IOS58 mode. It might be possible that the forwarder channel does not have it set yet. Start from HBC 1.0.8 with IOS58 and you will have it for sure.
*Fixed several leaks
*Source optimization
*Reworked new titles class (a few leaks  fixed)
2011-01-13 19:05:31 +00:00
dimok321
3503f114ed *Added use of IOS58 for Loader option. It is enabled by default and can be disabled in the Loader Settings. If it is disabled the Boot/Standard cIOS is loaded on startup, after reading the config files.
WARNING: If you select to use IOS58 and you don't have IOS58 installed, the loader will be really really slow.
*Fixed reseting of Theme/Fonts when pressing the SD Card button. It is now reloading it instead.
2011-01-12 19:30:04 +00:00
dimok321
4b3120fccf *A new icon.png (icon2.png) (thanks Black.Pearl for it)
*Changed cover download logic on fail of cover download (that's what lustar wanted :P)
*Added "OTHER" directory search on wiitdb for covers/discarts with custom gameids
*Language files update for v2.0 and current revision
2011-01-11 17:52:30 +00:00
dimok321
1e03f44c06 *Replaced WiiPowers NSMB patch with WIP which is using now the internal wip patch system like PoP (fixes NSMB playing) 2011-01-09 17:51:15 +00:00
dimok321
34692131a2 Alright guys, after 3-4 Month of cleaning up the source, it's finally here:
USB Loader GX v2.0

A few cosmetic changes along on this rev:
*Removed unused resources
*Fix a compile warning
*Fixed crash on formatting drive to WBFS
*A few source/function movement from one file to another 
*Renamed global game settings to "Loader Settings"
2011-01-09 10:45:29 +00:00
dimok321
8943592d0e *Fixed several theme images being not loaded. Made all recourses from SVN now themable (sounds/fonts/images). They only have to be in the same folder as the theme images.
*Ignore sector size of wbfs partitions in MBR (some lazy Partition Manager don't change it). Reading it from the partition header now.
*Several small bug fixes and cleanups
*Fixed "Bannersound + BG Music after it" mode
*Updated language files
2011-01-08 12:35:41 +00:00
dimok321
4f7ccef2ec *Changes running games from WBFS. It is now done through fragment lists like on ntfs/fat/ext. This enables support for multiple wbfs partitions even with waninkokos cios which normally doesn't support that. This is not supported by Waninokos IOS < R18. It continues to only support one partition!
*Added initialized too all the cheat variables (that was bad...i wonder how it didn't go wrong)
*Corrected several theme texts (x, y position mistype)
*Added "Default" button to theme downloader to reset the theme
*Fixed bug in loading language file with fresh configs
*Fixed display of theme path in custom path options
*Fixed rockout reset after leaving the GameWindowPrompt
*Added limit to page indicators to 5 and rotate them
2011-01-07 22:42:03 +00:00
dimok321
2c268af0f9 *fixed possible crash on theme downloader
*changed fat/ntfs/ext installer to use the header title as foldername instead of wiitdb title (this is the way it is in the wbfs managers)
*Fixed language changing for wiitdb titles / coverdownload even without available .lang file which is loaded
*Added reload of game titles on language change
*Added check for valid config files. If config file is not valid it will not be used. Current valid configs are R1031 to all. (You configs will be reseted with this. If you want to save them, move them and merge them afterwards manually.)
*Fixed possible crash on mounting
*Changed default settings for device free space display to off, because fat32 partitions are very slow on that. Added a warning when on FAT partition and trying to enable this option.
*Updated langauge files
2011-01-06 18:59:45 +00:00
dimok321
0942bb22c5 *Fixed a few typos in theme text
*Added ignore of partition type and detect WBFS/FAT/NTFS partitions from their boot record sector (damn lazy partition managers which are not always editing the MBR)
2011-01-01 13:02:26 +00:00
dimok321
6022ad060d *Added ThreadedTask instance class for easy one time run operations on another thread
*Added Free Space show option to the settings (can be enabled even on FAT partitions)
*Moved partition free space determination to a ThreadedTask because it takes up to 10 seconds on FAT. This speeds up the build up of the main game menu (on start and on change from other menu) on all partitions.
*Removed double "waiting for slow HDD" screens
*Fixed scrollbar in settings
2010-12-31 13:13:14 +00:00
dimok321
7bccfd2b17 *added loading screen
*Removed the console loading screen (no more console at all)
*Complete rework of device handle. You need to reset all your custom paths for this rev.
*Support for writing images/settings/... on any writable partition (FAT/NTFS/EXT). (Theoretically you can run the loader from NTFS only without the need of any other partition or SD if run from new forwarder channel, for example)
*Support for Primary/Logical partitions and GUID Partition Table (GPT)

Forwarder Channel in last revision was not using IOS58 (not sure about AHBPROT)
Here a corrected version (thx to Cyan):
http://www.mediafire.com/?a9y3ywqcm4v3lz3
2010-12-30 23:49:22 +00:00
dimok321
01bef0b2c4 *Added back the trNOOP (which excluded a lot of settings languages) which i removed by mistake when adding themes
*Added option for file splitting on install. 2GB, 4GB and on ntfs/ext2/3/4 partitions no splitting at all option.
*Fixed the install dir naming patterns option for fat32/ntfs/ext2/3/4 game installs
*Changed/Fixed Home Menu exit to loader / shutdown
*Added reload of game list on SD button click
*Fixed language file loading on startup
*Changed browse for theme path to file browser instead of OnScreenKeyboard

Several settings were changed in this revision. It is recommended to reset the configs before using this rev.


Forwarder Channel Update:
*Use of IOS58 and AHBPROT
*Complete change of forwarder. Using same as on WiiXplorer now.
*Looking for dol in every primary fat/ntfs partition in the known paths (/apps/usbloader_gx/ and /apps/usbloadergx/). (Booting loader from ntfs will be usefull once images and settings can also be stored on ntfs.)

Here is a download link for the channel:
http://www.mediafire.com/?r11bwt1occlanmk

The channel will be uploaded to the download section later when it is thoroughly tested.
2010-12-29 15:42:26 +00:00
dimok321
0e5bb13173 *fixed settings paths creation bug
*fixed crash when installing on ntfs
*fixed a few bugs with language setting for games
2010-12-29 10:22:11 +00:00
dimok321
f1febd91be *Fixed no cover image loading for themes
*Fixed Font loading. The font.ttf is loaded from the path with .thems if it exists there.
When a Theme is loaded and a font.ttf file exists in the defined "Image-Folder:" than this font.ttf will override all others. This ensures support for themes with special fonts.
*Fixed double count on playcount bug
*Updated libext2fs to git snapshot 2010-12-24
*Added proper close of all file systems where the games are loaded from (FAT32/NTFS/EXT)
*Fixed hang bug when reloading into the IOS set in the individual game settings with that (reload to 223, 224, 245, ...)
2010-12-28 17:02:10 +00:00
dimok321
6850d68074 *Fixed crash on NTFS (wrong memory free functions were used)
*Added proper deinitialize of usb before starting game / exiting app. This is supposed to fix Blackops multiplayer mode (Did not test it. I don't have that game.)
*Added Wii message board update (Playlog) (thanks to dkosmari for a starting point). This feature can be enabled/disabled in the global settings. Default is ON.
*Removed unused sources.
2010-12-27 09:44:27 +00:00
dimok321
d62e41d601 *Removed ntfs/fat source and added them as custom libs (makes them easier to update later)
*Added sources of the custom libs to the branches
*Fixed crash when switching from list layout to grid/carousel layout
*Removed 1:1 copy option because its meaningless and almost the same as installing all partitions
*Fixed install partition selection. This option needs a reset. Go to settings and reselect your option for this.
*Fixed schinese and tchinese language modes (filename bugs. has to be schinese.lang and tchinese.lang like on SVN)
*Fixed bug in sound buffer circle
*Fixed incorrect behaviour of x-flip when selecting system like (thx Cyan for the patch)
*Accept ios revision 65535 for Waninkokos IOSes (thx to PPSainity for pointing it out)
*Merged the new theming style branch into trunk. Just as a reminder: ALL old themes will not work until the themers did port it to the new style!
*Removed old theme style completely

Theme example:
The example file of the theme is the Default.them file. It can be found in the SVN trunk.

Change in loading of themes:
When selecting a theme now a list of all .them files in a folder is displayed. The image folder of that theme has to be in the same folder as the .them file. The image path is defined in the head of the .them file in the line with "Image-Folder: Example\n".
2010-12-26 17:02:14 +00:00
dimok321
2adc6cc995 *Completely rewrote the asynchron GuiImageData class (problems from switch Carousel<->Grid layour should be fixed now)
*Fixed bug mounting a wbfs partition which was formatted from an ext partition
*Rewrote the parental control feature. Removed loading pin or settings from the Wii Settings. Parental control is now completely managed in the loader from the settings selected and the password set.
*Saving password in config file is now encrypted
*Added loop to wait for usb when reloading the cIOS before game start


The parental control feature is filtering games like following when usb loader is locked:
level 0 (everyone 0+)		> shows only games with lvl 0
level 1 (childs 7+)		> shows games with lvl 0, 1
level 2 (teens 12+)		> shows games with lvl 0, 1, 2
level 3 (mature 16+)		> shows games with lvl 0, 1, 2, 3
level 4 (adults only 18+)	> shows all games (lvl 0, 1, 2, 3, 4)

level 4 is default when creating new configs
2010-12-19 18:20:33 +00:00
dimok321
f7c1e9958d *Fixed crash on "pick alternative dol from list"
*added a temporary workaround for selecting favorites when no favorites were setup for grid and carousel layout because of some serious problem in there which i have to look for later.
*Reworked complete cover/discart download function (seems a lot faster to me now)
*Fixed problem with switching games in game prompt and then going to the game settings. Was always the first selected games settings.
*Fixed crash when clicking the DVD icon
*Fixed save of lock/unlock state in parental control
*Fixed install menu messup (not return to right menus)
*Removed unnecessary save of settings on every mode switch
*Several cleanups and fixes
*Removed mountMethod 3
2010-12-17 17:50:44 +00:00
dimok321
18a26d7e1a *Fixed booting games for huge ext2/3/4 drives
*Rewrote complete main menu function
*Moved ext2/3/4 disc cache to mem2 as on FAT/NTFS (added ext2 as custom lib due to that)
*Added missing header files from R1011 for ext support
*Fixed crash on Numpad when pressing a button
*Fixed boot of WiiMC
*Changed SVN line ending to LF (Unix style)
2010-12-12 16:31:13 +00:00
dimok321
2213b45351 For all the Linux lovers:
*Added support for EXT2/EXT3/EXT4 file systems:
   You can boot games from this file systems too now. Works the same way as FAT32/NTFS.
   Just put your games into drive:/wbfs/ with the known supported folder names.
2010-12-09 20:57:35 +00:00
dimok321
71c47c23bb *Fixed support for drives >= 1TB size (and probably some others as well)
*Reworked the USB handle read/write functions
*Fixed crash on deleting games
*Updated NTFS3G of libntfs to Version 2010.10.02
2010-12-05 19:09:32 +00:00
dimok321
777e0394d0 *Fixed crash when trying to set alternate dol from game disc in game settings 2010-12-04 07:36:23 +00:00
dimok321
45e15bdb0b *Corrected game settings ios display
*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
2010-11-07 20:31:45 +00:00
dimok321
64744ce20d *Fixed booting games from FAT/NTFS (thx r-win)
*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.
2010-11-07 12:16:34 +00:00
dimok321
33ce3e48ab *Lot's of cleanup and file/function movement.
*Homebrew boot changed a bit (cleanup)
*A lot more stuff i can't remember anymore
2010-11-06 15:30:14 +00:00
dimok321
bed86339f7 *homebrew xml fix
*replaced all OptionsLists with the one from WiiXplorer
*some other crap i don't remember
2010-10-31 09:30:53 +00:00
dimok321
2570d6dae8 *Fixed crash on start i made in last rev by mistake
*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 ;).
2010-10-28 09:00:52 +00:00
dimok321
6baa46b1e6 *Clean up in partition mount/format process
*Clean up in game boot process
2010-10-27 19:50:48 +00:00
dimok321
78ff6447a4 *Enums cleanup 2010-10-27 14:45:27 +00:00
dimok321
71d537c1a7 *Compile warnings fixed for devkitPPC R22
*Changed usb fat partition mount/unmount a bit
*Added wifi printf for quick debugging purpose only (not used currently).
2010-10-24 19:08:03 +00:00
dimok321
dbe694cedf *Update to new libfat
*Rearranged the libs location a bit
2010-10-01 18:53:38 +00:00
dimok321
a4f3d16a56 *Added support for all the currently new IOS stuff. Stole a few modules/plugins from WiiFlow here :P. (Tested Hermes 222 v5.1 base 38 and Waninkoko 249 base 57)
*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.
2010-10-01 15:01:19 +00:00
giantpune
444d2dbe79 *removed all the switches at the end of menu.cpp
* 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
2010-09-30 05:45:21 +00:00
giantpune
74fa0a40be * turn off some debug output
* 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
2010-09-30 04:24:17 +00:00
dimok321
ac56e5ec10 *Bit code clean up in the fat mounter - no change here
*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.
2010-09-29 17:47:51 +00:00
dimok321
71a95a57d7 *Cleaned up USB storage control
- Using mem2 memory from our mem2 manager now
   - Fixed potential memory overwrite
   - Removed unneeded or unused functions
2010-09-28 20:55:42 +00:00
dimok321
defd5f940b *Addition per Game Lock Feature (Issue 1694) - Patch supplied by pjigar 2010-09-28 18:58:56 +00:00
dimok321
48a40172d0 *Moved GameStatistics (FavoriteRank/PlayCount) out of cfg.c and into an own class. All settings are now separated. Old rankings and playcounts will be reseted due to a new format.
*Fixed loading of game settings
*Moved NTFS cache to mem2 as well
2010-09-25 08:51:44 +00:00
dimok321
e44e3c817c *Seperated game settings from cfg.c into it's own class. Some stuff might be broken and need adjustments. 2010-09-24 21:22:01 +00:00
dimok321
a5a0289f9f *optimization up to -O4
*removed all compile warnings on that level
2010-09-24 15:54:06 +00:00
dimok321
5bf2c813b6 *let's get rid of last compile warning 2010-09-24 15:08:03 +00:00