Commit Graph

230 Commits

Author SHA1 Message Date
dimok321
052c6d4591 RC1 upload:
*update of ehcmodules for Hermes IOS supporting now more drives (thanks rodries again)
*added ignore case sensitivity on NTFS (hopefully it works as good as it sounds)
*fixed homebrew receiving in homebrew launcher via network
*changed video switching code to the one from Wiiflow
*allow ',' as floating point '.'
*Fix of reloading titles after wiitdb update
*reset all other button clicks on carousel when two or more buttons are clicked at once
*a few code optimizations
*fixed compile bug on OSX (Issue 1844 and Issue 1132)
*language files updated
2011-03-14 21:19:21 +00:00
dimok321
6d6f0f2243 *Added a widescreen factor to the settings which defines how much the images should be scaled down in X-Axis to look like widescreen. This value is usually 640/854=0.75 but might be not "looking good" for some people, so it is a setting now. It is applied to covers/buttons/windows (on set widescreen prompts)/several images
*Added a font scale factor to the settings. This font scale resizes the overall font sizes. Only full integer font sizes are supported. The font scale factor is multiplied to the font size of a text and the result is rounded and used as the font size. It's a good quick fix for too big fonts.
*Fixed GAMEID_GAMETITLE folder game layout
2011-02-25 18:18:57 +00:00
dimok321
e11901bc09 *Changed FreeTypeGX to use IA4 textures for font glyphs (saves a bit memory)
*Fixed cutoff of box cover when it is too near and increased zoom range of the box cover. Reworked the move/zoom of the cover.
*Change wiimote icon when grabbing and dragging the box cover to grab icon
*Fixed bug in homebrew browser (crash)
*Changed a few default GX view configurations
*Use proper size of wiimote pointer image instead of hard coded values
*Reworked scroll/B hold movement stuff from the game list layout
*Removed buildtype.sh and added the define directly in makefile. No need to make an extra header for that.
*Changed makefile a to allow different IOS build modes. The build IOS is used at the start of the loader to load the settings under. If the build IOS is the same as the settings boot IOS the startup is a lot faster since no IOS reload is required. 
To build yourself a special IOS build version type:"make IOS=XXX" where XXX is the number of the IOS (CSettings.cp has to be recompiled for that at least). If nothing is defined IOS222 is taken. There will now be always two versions supplied (IOS222 and IOS249 version). If another build is required build it yourself. You can see the revisions until now as the "IOS249 build version" since they behaved like that.
2011-02-21 19:41:48 +00:00
dimok321
7f2778e17f *Set settings partition to 0 if usb port is changed and settings partition is greater than the total partition count on that usb port.
*Some source optimizations
*Increased warning output with -Wextra and fixed the compile warnings
2011-02-06 18:36:32 +00:00
dimok321
d625c5adfc *Added support for using USB port 1 (ONLY ON HERMES CIOS)
*Added support for using both USB ports at once (ONLY ON HERMES CIOS)

Big thanks to rodries for writing the necessary ehcmodules!

NOTE: You can change port of USB device in the Loader Settings. The loader currently does not support loading configs off port 1 (only from port 0)

If you select to use both usb ports the loader will switch between ports automatically, on demand. It is not possible to use both ports at once currently. Right now the wiilight blinks each time it switches the port. I will talk to rodries and see if we can disable it. Using the "both ports" option only makes sense in combination with "Multiple Partitions" option. In that case all games on all partitions from BOTH HDDs will be loaded. I think I don't have to say that switching between ports and loading all games is slower than normal mode with one port only in use. You might wanna just set one port and switch yourself when you need to. Well the option for both ports (automatic switching) is there for the lazy ones who don't like to hit the settings button ;).
2011-02-05 21:06:52 +00:00
dimok321
25946236ab *Added a "Theme Menu" to the global settings
*Fixed apply on theme downloader after redownloading a theme
*Removed old theme changing menu (no one ever found it anyway)

NOTE: If a theme now includes a "theme_preview.png" in the image folder, it will be shown in the Theme Menu. If it does not have one than when downloading a theme, the loader will copy the preview from the theme downloader to the theme image folder.

NOTE to Themers: Just fyi, if you badly need to use another format than png for the images whyever, than just do so. Just rename the file from the actual format extension to .png extension. The loader will detect that it is not really a png and use the correct format. Supported image formats by USB Loader GX are png/gif/bmp/jpg/tpl.
2011-02-05 14:46:06 +00:00
dimok321
6243627dc9 *Fixed bug I introduced with R1062 where games do not start from NTFS/FAT/EXT
*Removed option "IOS58 mode" for internal loader use
*Updated language files
2011-02-05 10:36:55 +00:00
dimok321
ca55f426c0 *Fixed a few bugs in the multiple partition mount (causing crashes at some certain situations)
*Reworked the cover downloader completely. Now has an overall missing files count and progress. Also missing files not found on the server can be dumped to a csv file
*Added possibility to grad 3D Boxes and move them around in the zoomable mode
*Changed default setting for video mode back to disc default
2011-02-03 21:46:54 +00:00
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
1d2854c777 *Fixed issue 1808
*Fixed issue with crashing carousel when switching from empty game list to none empty list.
*Added download for Full HQ & LQ Covers. When both are checked HQ Covers are prioritized.
*Added support for Full HQ & LQ Covers:
Full covers are currently used only in the GameInfo Screen (Press 2). The Box can be rotated in there with the Nunchuck. When the box is clicked it will jump to the midlle of the screen. Here it can be rotated with Nunchuck & Wiimote D-Pad. Also it can be zoomed in/out with the PLUS or MINUS buttons. Zoomed in covers are currently cut off when going too far into the screen because the axis had to be layed to the middle to keep the symmetry. Don't report issues about that. It's known. Another use of full covers might follow with a new layout if we think of something nice ;).
*Added support for different box colors. Box colors are taken from WiiTDB so if you get a wrong color complain at WiiTDB :P.
2011-01-30 16:22:16 +00:00
dimok321
7db67e75af *Added several basic gui classes like drawing box/circle only with the GX engine without the need of a resource
*Created a checkbox class with them
*Changed the prompt window to a class
*Changed cover download to a checkbox selection of what you want to download. Changed discart download option to only switch between what is prioritized (original/customs)
*Fixed a little alignment issue of the progressbar
*Reverted the change for check disc in drive. Some drives couldn't handle it in IOS58 mode :\.
*Changed playcount from an 8 bit to a 32 bit counter (got 8bit by mistake) which limited it to 255
*a few little optimisations
2011-01-23 20:13:41 +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
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
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
798ebc188d *Corrected clock position (copy/paste mistake)
*Corrected Screensaver appearance on startup after 30sec of unconnected WiiMote
*Complete rewrite of theme downloader. (Downloading themes is not working currently because Deak Phreak changed something on wii.spiffy360.com. He said it's going to be changed back soon)
*Added possibility to load theme images from a folder with the same name as the .them file. The "Image-Folder: Example\n" from the .them file is prioritized.
*Updated some language files. (Translators please redownload the files from SVN. Many files had a lot of errors in them)
2011-01-02 09:23:44 +00:00
dimok321
aa7df2788d *Fixed show free space option (wasn't able to deactivate before)
*Fixed cheat menu to not go over the board of cheat amount.
*Added possibility to make screenshots everywhere in running gui mode (hold Nunchuck Z and press C)
*Fixed bug with nunchuck Z button moving one option up in gamelist/options
*Added Cyan to the credits
2010-12-31 16:18:48 +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
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
2212f8ded7 *Stupid merging did not remove everything like supposed 2010-12-27 10:08:24 +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
c032697c5a *Completely rewrote the GameWindowPrompt into a class 2010-12-20 19:37:38 +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
449eae85bf *Added network shutdown before launching games.
*Fixed playing games online (WC24) with that
2010-12-05 19:24:32 +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
500dc4020f *Reworked the whole WiiTDB.xml parsing. This is now done with mxml due to a lack of memory the file is now streamed. Now the full wiitdb.xml file with all languages is always used. The update of WiiTDB is also changed. It is now only updated if the version of the wiitdb.xml file does not match the version of the online file.
*WiiTDB now falls back to english if the locale language is not found for Titles/Synopsis
*Some clean up and memory leak fixes in game info prompt and adjusted the info get to the new WiiTDB reading method.
*Added a few new useful functions from WiiXplorer (DownloadToFileWithProgress, ShowError,...)
*Disabled the console output after the GUI is started up. The info is only output to gecko in GUI mode now.
2010-12-03 18:38:57 +00:00
dimok321
1ee6897ef5 *Rewritten the whole Homebrew Launcher (HBC menu) to a class. Using now the new settings standard too. Only Titles browser left.
*Fixed several gui_customoptionbrowser issues
*Fixed missing background on title browser
2010-11-14 15:19:42 +00:00
dimok321
fa11a745d6 A lot of changes with this rev
*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
2010-11-13 22:34:53 +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
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
297eb8cd55 *Forgot to remove the files that are not used anymore 2010-10-01 15:05:50 +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
dimok321
c5c5708e12 *Fix for image resource manager 2010-09-26 18:19:45 +00:00
dimok321
8bec876889 *Removed ramdisk
*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.
2010-09-26 08:33:43 +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
73ade7d0b4 *Removed easter egg (no one ever found it anyway)
*Added some useful file/directory operations from WiiXplorer and removed the old ones
*Fixed crash with playcount on game start
2010-09-25 06:54:27 +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
88969ffb9f *Theme Class made and removed all the crap from cfg.c
*Lots of changes due to that regarding themes (The very old theme format was completely dropped)
2010-09-24 17:58:56 +00:00
dimok321
f8c1692809 little optimization 2010-09-24 13:46:32 +00:00
dimok321
f3ef9104b1 *Whole lot of cleanup in the cfg.c
*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.
2010-09-19 20:25:12 +00:00