In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "MLlib"

From WiiBrew
Jump to navigation Jump to search
m
(←Replaced content with 'Due to multiple GPL violations MLlib has been removed from WiiBrew. Until such a time as it complies with the GPL it will not be allowed on WiiBrew. See the [[Talk:MLlib|d...')
Line 1: Line 1:
{{Infobox development tools
+
Due to multiple GPL violations MLlib has been removed from WiiBrew. Until such a time as it complies with the GPL it will not be allowed on WiiBrew. See the [[Talk:MLlib|discussion page]] for more information. --[[User:Tantric|Tantric]] 19:37, 31 July 2009 (UTC)
| image = [[Image:MLlib 2 175x175.png|120px]]
 
| title = MLlib
 
| type = framework library
 
| author = [[User:Minishlink|Minishlink]]
 
| version = 1.1
 
| website = http://louislagrange.free.fr/MLlib/
 
| download = http://code.google.com/p/mllib/downloads/
 
| source = http://code.google.com/p/mllib/source/checkout
 
| discussion = http://www.dev-fr.org
 
}}
 
 
 
The '''MLlib''' (or Minishlink's Library) is a simple library to develop on Nintendo Wii. Technically, it's a wrapper of libogc and others librairies. Coding with this lib on Wii is way easier and faster now ! :-) I created this because I needed a library with I could code with easy functions. It uses [[GX]] for drawing, [[libpng]] for handling PNG, and libs of [[libogc]]...
 
 
 
==Features==
 
* Proper code so that it's nice to see;
 
* Easy for all;
 
* Friendly functions;
 
* Handles drawing (lol);
 
* Sprite system;
 
* Handles PNG images;
 
* Special effects;
 
* Write graphically text;
 
* MP3 system;
 
* MOD system;
 
* Input (Wiimote, Nunchuk, and extensions...) system;
 
* And much more...
 
 
 
==How to install ?==
 
===On Windows===
 
First you need to have '''devKitPro''' installed. Go [[Devkitppc setup (Windows)|install]] it ! ;)
 
 
 
Then, '''libpng''' for Wii must be installed.
 
# Download it at [http://louislagrange.free.fr/MLlib/downloads/libpng_wii.zip my FTP].
 
# Extract it and place the .a in "devkitpro\libogc\lib\wii" and the folder "png" in "devkitpro\libogc\include".
 
# It's done !
 
 
 
Now the '''MLlib'''.
 
# Download the MLlib on the [http://code.google.com/p/mllib/downloads/list Google Code MLlib page]
 
# Extract the archive and place the folder (recommended in C:\devkitPro)
 
# Examples, documentation and more are in the "MLlib_Others_XXXXXX.zip" package.
 
# Set the environment variable "MLPATH" to your path to the MLlib. (eg. "/c/devkitPro/MLlib" because it must be linux-style) To do that, open the Start menu, right-click on Computer -> Properties, then go to the advanced settings -> environments variables. Set it there. It's recommended to restart the computer.
 
# It should be done ! Go explore examples ! :D (test if it works via an example)
 
 
 
===On Linux===
 
 
 
First you need to have '''devKitPro''' installed. Go [[Devkitppc setup (Linux)|install]] it ! ;)
 
 
 
Then, '''libpng''' for Wii must be installed.
 
# Download it at [http://louislagrange.free.fr/MLlib/downloads/libpng_wii.zip my FTP].
 
# Extract it and place the .a in "devkitpro/libogc/lib/wii" and the folder "png" in "devkitpro/libogc/include".
 
# It's done !
 
 
 
Now the '''MLlib'''.
 
# Download the MLlib on the [http://code.google.com/p/mllib/downloads/list Google Code MLlib page]
 
# Extract the archive and place the folder where you want (recommended in /home/user/devkitpro)
 
# Examples, documentation and more are in the "MLlib_Others_XXXXXX.zip" package.
 
# Set the environment variable "MLPATH" to your path to the MLlib. (eg. "/home/username/devkitpro/MLlib") To do that, open and type in a new console:
 
export MLPATH=/path/to/MLlib
 
 
 
 
 
It should be done ! Go explore examples ! :D
 
(test if it works via an example)
 
 
 
===On Mac OS X===
 
 
 
You should be able to do it if you read Windows/Linux instructions.
 
Updated tutorial will coming soon though, with Mac OS X ;)
 
 
 
==Notes==
 
===Quickstart===
 
For a quickstart, see the section [[#How_to_install_.3F|How to install ?]] and go see the examples in the "MLlib_Others_XXXXXX.zip" package ! ;)
 
 
 
===Tutorials and Wiki===
 
Some tutorials and more info are available at the [http://louislagrange.free.fr/MLlib/wiki MLlib Wiki].
 
 
 
===Documentation===
 
Online documentation is available [http://louislagrange.free.fr/MLlib/documentation here]. Or in the "MLlib_Others_XXXXXX.zip" package.
 
 
 
==="MLlib_Others_XXXXXX.zip" package===
 
It can be downloaded on [http://code.google.com/p/mllib/downloads/list Google Code] !
 
 
 
===Error when compiling the template/examples ?===
 
To test correctly the examples and the template, make sure you have done a "make clean" before, because it will give you the error
 
make[1]: *** No rule to make target `/home/minishlink/devkitpro/MLlib_Others/template/source/main.c', needed by `main.o'. Stop.
 
if you don't do this ! :p
 
 
 
===Makefile & Commands===
 
====Editing Makefile====
 
In order to use the MOD part of the MLlib, you need to uncomment the line "USE_MOD" at the top of the Makefile. It's the same thing when you need to compile code that uses MP3 or FAT.
 
 
 
====Make====
 
Compiles the project.
 
 
 
====Make clean====
 
Cleans the project, it destroys dependancies too.
 
 
 
====Make run====
 
It sends the app/game previously compiled to the Wii via the wiiload program. It's quiet useful because you don't need to type "wiiload projectXYZ.dol", "make run" is faster !
 
You have to put the original [[Wiiload]] program (eg. the command-line program, which is provided with Twilight Hack or HBC) in the system folder of your OS. Example : "C:\Windows\System32" for Windows ; "/usr/bin" for Linux ; "??? #FixIt" for MaxOSX.
 
 
 
Wiiload program can be downloaded [http://louislagrange.free.fr/downloads/wiiload.tar.gz here] or in the [[Hackmii Installer]] (beta 3 or newer).
 
 
 
====Make all====
 
It cleans the project, then compiles and then sends to the Wii.
 
 
 
==Bugs & Suggestions==
 
If you have any bugs or suggestions, feel free to report them on [http://code.google.com/p/mllib/issues/list Google Code].
 
 
 
==See also==
 
* [[:Category:Homebrew using MLlib|Homebrew using MLlib]]
 
 
 
==Special Thanks==
 
* Chaosteil
 
* Cid2Mizard
 
* Crayon
 
* Dhewg
 
* Dykam
 
* EvilSpoon
 
* Feesh
 
* Mollusk
 
* Morukutsu
 
* NoNameNo
 
* Svpe
 
* T4ils
 
* WntrMute
 
* Zeblackos
 
and these communities :
 
* www.dev-fr.org + IRC Channel #dev-fr
 
* www.nintendomax.com
 
* www.wiibrew.org + IRC Channel #wiidev
 
* www.wiigen.fr
 
 
 
==Update History==
 
===1.1 - June 20, 2009===
 
* New method of programming. It uses seriously very less memory now. ML_Image, ML_Sprite, ML_Background.
 
* added : ML_Screenshot(filename)
 
* added : ML_IsSpriteVisible(sprite)
 
* added : ML_AnimateSpriteEx(sprite, enabled, waitForXRefreshBetweenFrames, from, to)
 
* added : ML_TextBox(ML_Sprite *sprite, x, y, x2, y2, const char *text, ...)
 
* added : ML_DrawRect(int x, int y, u16 width, u16 height, u32 rgba)
 
* added : ML_Debug(text)
 
* added : ML_CloneImage(image1, image2)
 
* added : ML_DrawSpriteTextLimit(sprite, x, y, text, limit)
 
* added : ML_FlipImageX(image)
 
* added : ML_FlipImageY(image)
 
* added : ML_InvertImageColors(image)
 
* added : ML_ApplyGrayscaleToImage(image)
 
* added : ML_FlushImage(image)
 
* modified : Input is now finished
 
* modified : ML_GetPixelColor
 
* modified : ML_SetPixelColor
 
* modified : ML_SplashScreen
 
* modified : ML_Cursor, so that it draws your cursor/sprite with the center of the image, and then modifies the sprite.x and sprite.y so that if you point to the left-up edge of the screen it gives you 0, 0.
 
* fixes and optimizations
 
 
 
===1.0 - May 31, 2009===
 
* First public release
 
[[Category:Homebrew using GRRLib]]
 

Revision as of 21:37, 31 July 2009

Due to multiple GPL violations MLlib has been removed from WiiBrew. Until such a time as it complies with the GPL it will not be allowed on WiiBrew. See the discussion page for more information. --Tantric 19:37, 31 July 2009 (UTC)