More actions
(Created page with "{{Infobox homebrew | title = PAlib | image = 300px | type = PC Utilities | version = 100707 | licence = Mixed | author = Moll...") |
No edit summary |
||
(31 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Infobox | {{Infobox DS Homebrews | ||
| title | |title=PAlib | ||
| image | |image=palib4.png | ||
| type | |description=A Nintendo DS library used to create homebrew games/apps. | ||
| version | |author=Mollusk | ||
| | |lastupdated=2025/01/14 | ||
| | |contributor=AntonioND | ||
| | |type=Development | ||
| | |version=250114 | ||
| source | |license=Mixed | ||
|download=https://github.com/AntonioND/palib | |||
|downloadraw=https://dlhb.gamebrew.org/dshomebrew2/pallib_100707.rar | |||
|website=https://github.com/AntonioND/palib | |||
|source=https://github.com/AntonioND/palib | |||
}} | }} | ||
PAlib is a DS library that works on top of libnds. It is aimed towards simple DS development to make DS games and programs in c and C++. It used to work with devkitARM, but now it is only compatible with BlocksDS. | |||
It was presented in the NEO Coding Compo 2005 (App, 1st place). | |||
While this library isn't recommended for new projects due to its design flaws, it is still useful to build old projects that were built using it. | |||
==Features== | ==Features== | ||
*Sprites functions | * Sprites functions. | ||
*Background function | * Background function. | ||
*Text functions | * Text functions. | ||
*An API for buttons | * An API for buttons. | ||
*Sliders | * Sliders. | ||
*Checks | * Checks. | ||
*Sound | * Sound effects support. | ||
*Stylus and Pad | * MOD/XM/S3M/IT support thanks to Maxmod. | ||
*Draw function | * MP3 support thanks to ASlib | ||
*Variable case text | * Stylus and Pad. | ||
*Retrieve info on DS (user name, birthday, language, time/date. | * Draw function. | ||
* Variable case text. | |||
* Retrieve info on DS (user name, birthday, language, time/date, etc). | |||
==Installation== | ==Installation== | ||
To install PAlib | To install PAlib follow the instructions [https://github.com/AntonioND/palib here]. | ||
==User guide== | ==User guide== | ||
Tutorials can be found [http://code.google.com/p/palib-tutorial-pdf | Tutorials can be found [http://code.google.com/p/palib-tutorial-pdf here]. | ||
==Screenshots== | |||
https://dlhb.gamebrew.org/dshomebrew/palib2.png | |||
==Media== | ==Media== | ||
'''C/PALib Simple Nintendo DS Platformer''' ([https://www.youtube.com/watch?v=HzqdLHI0SG8 bl0ckeduser]) <br> | |||
<youtube>HzqdLHI0SG8</youtube> | <youtube>HzqdLHI0SG8</youtube> | ||
==Changelog== | ==Changelog== | ||
'''PAlib 250114 beta | AntonioND''' | |||
* [Fix] Flush cache whenever a DMA copy is made so that users of PAlib don't need to worry about it. | |||
* [ASlib] Flush data cache when a MP3 file is played from RAM so that the developer doesn't need to do it. | |||
* [DMA_Copy] Use safe BlocksDS libnds DMA functions instead of the old PAlib macros. | |||
* [Fix] Actually send temperature and battery level to the ARM9 from the ARM7. | |||
'''PAlib 250107 beta: PAlib lives on | AntonioND''' | |||
* [General] PAlib builds and works again, even on DSi consoles. | |||
* [General] devkitARM build system has been removed in favour of BlocksDS. | |||
* [General] Repository structure has been refactored so that it's clearer. | |||
* [ARM7] The ARM7 cores have been slightly refactored for modern libnds and to support DSi. Also, the libnds exception handler for the ARM7 is now enabled by default. | |||
* [ASlib] Interrupts are now enabled in the VBL handler of ASlib so that it doesn't block multithreading. | |||
* [Fix] The IPC structure is now allocated at runtime instead of using a hardcoded address, which doesn't work on DSi. | |||
* [Fix] Several bugs in ASlib have been fixed. | |||
'''PAlib 100707 QuickFix: The last PAlib release | fincs''' | '''PAlib 100707 QuickFix: The last PAlib release | fincs''' | ||
*[General] Removed the ASlib IPC clear code, it was doing more harm than good. | * [General] Removed the ASlib IPC clear code, it was doing more harm than good. | ||
*[3DSprites] PA_3DCreateSprite now returns the GFX number. | * [3DSprites] PA_3DCreateSprite now returns the GFX number. | ||
*[Linux] Fixed a backslash (\) path to use forward slash (/). | * [Linux] Fixed a backslash (\) path to use forward slash (/). | ||
*[Examples] The updating script screwed up some sound examples, it's now fixed. | * [Examples] The updating script screwed up some sound examples, it's now fixed. | ||
*[EFS] EFS support was dropped in favor of libfilesystem. | * [EFS] EFS support was dropped in favor of libfilesystem. | ||
*[Editors] PN support is now dropped. | * [Editors] PN support is now dropped. | ||
*[Fix] PAlib now works with devkitARM r31. | * [Fix] PAlib now works with devkitARM r31. | ||
*[Sprite] Fixed PA_DeleteSprite bug (thanks BassAceGold). | * [Sprite] Fixed PA_DeleteSprite bug (thanks BassAceGold). | ||
==External links== | |||
* devkitPro wiki - http://devkitpro.org/wiki/PAlib | |||
* Google Code - http://code.google.com/p/palib-tutorial-pdf | |||
* NeoFlash - https://www.neoflash.com/forum/index.php?topic=563.0 | |||
[[Category: | [[Category:PC utilities for DS]] | ||
[[Category:NEO Coding Compo 2005]] |
Latest revision as of 14:26, 14 January 2025
PAlib | |
---|---|
![]() | |
General | |
Author | Mollusk |
Contributor | AntonioND |
Type | Development |
Version | 250114 |
License | Mixed |
Last Updated | 2025/01/14 |
Links | |
Download | |
Website | |
Source | |
PAlib is a DS library that works on top of libnds. It is aimed towards simple DS development to make DS games and programs in c and C++. It used to work with devkitARM, but now it is only compatible with BlocksDS.
It was presented in the NEO Coding Compo 2005 (App, 1st place).
While this library isn't recommended for new projects due to its design flaws, it is still useful to build old projects that were built using it.
Features
- Sprites functions.
- Background function.
- Text functions.
- An API for buttons.
- Sliders.
- Checks.
- Sound effects support.
- MOD/XM/S3M/IT support thanks to Maxmod.
- MP3 support thanks to ASlib
- Stylus and Pad.
- Draw function.
- Variable case text.
- Retrieve info on DS (user name, birthday, language, time/date, etc).
Installation
To install PAlib follow the instructions here.
User guide
Tutorials can be found here.
Screenshots
Media
C/PALib Simple Nintendo DS Platformer (bl0ckeduser)
Changelog
PAlib 250114 beta | AntonioND
- [Fix] Flush cache whenever a DMA copy is made so that users of PAlib don't need to worry about it.
- [ASlib] Flush data cache when a MP3 file is played from RAM so that the developer doesn't need to do it.
- [DMA_Copy] Use safe BlocksDS libnds DMA functions instead of the old PAlib macros.
- [Fix] Actually send temperature and battery level to the ARM9 from the ARM7.
PAlib 250107 beta: PAlib lives on | AntonioND
- [General] PAlib builds and works again, even on DSi consoles.
- [General] devkitARM build system has been removed in favour of BlocksDS.
- [General] Repository structure has been refactored so that it's clearer.
- [ARM7] The ARM7 cores have been slightly refactored for modern libnds and to support DSi. Also, the libnds exception handler for the ARM7 is now enabled by default.
- [ASlib] Interrupts are now enabled in the VBL handler of ASlib so that it doesn't block multithreading.
- [Fix] The IPC structure is now allocated at runtime instead of using a hardcoded address, which doesn't work on DSi.
- [Fix] Several bugs in ASlib have been fixed.
PAlib 100707 QuickFix: The last PAlib release | fincs
- [General] Removed the ASlib IPC clear code, it was doing more harm than good.
- [3DSprites] PA_3DCreateSprite now returns the GFX number.
- [Linux] Fixed a backslash (\) path to use forward slash (/).
- [Examples] The updating script screwed up some sound examples, it's now fixed.
- [EFS] EFS support was dropped in favor of libfilesystem.
- [Editors] PN support is now dropped.
- [Fix] PAlib now works with devkitARM r31.
- [Sprite] Fixed PA_DeleteSprite bug (thanks BassAceGold).
External links
- devkitPro wiki - http://devkitpro.org/wiki/PAlib
- Google Code - http://code.google.com/p/palib-tutorial-pdf
- NeoFlash - https://www.neoflash.com/forum/index.php?topic=563.0