Release PA2lib (a nintendo ds programming library made to be similar to PAlib)

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
Introducing a modern library for a decade (maybe more) old console that nobody asked for. :D

UPDATE: THIS LIBRARY IS NOT LONGER MAINTAINED AND SHOULDN'T BE USED.
Since PAlib now works on modern devkitARM, Use https://github.com/aerglass/palib instead because of it being 100% compatible with all PAlib proyects on modern devkitARM and libnds without any issues.




a nintendo ds library designed to be easy to use.
the library is based arround nightfox's lib, adapted to be similar to PAlib

PAlib was a library, designed for easy of use (published as a Player Advanced proyect) It was really REALLY easy to use. Unfortunately, PAlib was badly designed, it breaks compatibility with other libraries (even libnds lol). The devs say that the lib shouldn't exist lol. Even though the devs said that PAlib was useless trash, Tons of great homebrew were created using this lib, Unfortunately PAlib not longer works on the latest devkitARM/libnds. If you ask to the devkitPro devs then they will answer with: "I don't care, learn libnds and adapt your code", if only it was that simple, That is why i created PA2lib and the PA compatibility layer. You can call me the new PAlib maintainer lol.

While PA2lib is work in progress, this library has some feel of PAlib, with the PA compatitibility layer you can even compile extremelly simple PAlib proyects (I am trying to get PAGfx working, and graphics in general working, problably will rewrite the entire lib because everything is a mess lol :D)

Here is the github if you are interested. https://github.com/AerGlass/PA2lib

Enjoy making your games, I will make several stuff in the future (mainly trash because this is the only serious proyect i have ever made lol) cya.
 
Last edited by Deleted member 591971,

lifehackerhansol

i write working(?) code
Member
Joined
Oct 2, 2021
Messages
468
Trophies
0
XP
1,440
Country
Canada
This is an interesting development. I haven't really messed with it yet, but maybe.

Has anyone tried to compile whatever older homebrew that used PAlib against this?
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
This is an interesting development. I haven't really messed with it yet, but maybe.

Has anyone tried to compile whatever older homebrew that used PAlib against this?
i tried and it on a prerelease version didn't work, But after some image convertion and small changes to the source code it worked. (The game was simple.) Next version will be more backwards compatible with PAlib proyects. I do still think there is some improvements to some stuff (PA_CreateSprite or PA_LoadSpritePal do not longer need (void*) and generally more easy to use, at least in my opinion)
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
You might want to lay some background out for this one -- we are getting a few people start on DS homebrew as some kind of retro kick (wow I am old).

PAlib started off as a project on player-advance (a then very popular French language emulation/flash cart/homebrew forum. http://www.playeradvance.org/forum/pap.php appears to still be up/once more be up, http://www.palib.info/forum/ for those wanting something to try on archive sites) to have an easier to use library for common tasks in DS homebrew, one easier to use than devkitpro's libnds. They largely could be said to have succeeded, though like most simplifications it could limit you in some scenarios and was another library to pare back or suffer speed and memory penalties for so its use was somewhat limited.

I don't know what happened to player-advance as it and most other French flash cart/emulation/homebrew sites seem to have vanished (are any other that logic sunrise and gueux-forum still around? dev-fr and nintendomax seem long gone) or died off despite weathering the storm for a long time.
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
You might want to lay some background out for this one -- we are getting a few people start on DS homebrew as some kind of retro kick (wow I am old).

PAlib started off as a project on player-advance (a then very popular French language emulation/flash cart/homebrew forum. http://www.playeradvance.org/forum/pap.php appears to still be up/once more be up, http://www.palib.info/forum/ for those wanting something to try on archive sites) to have an easier to use library for common tasks in DS homebrew, one easier to use than devkitpro's libnds. They largely could be said to have succeeded, though like most simplifications it could limit you in some scenarios and was another library to pare back or suffer speed and memory penalties for so its use was somewhat limited.

I don't know what happened to player-advance as it and most other French flash cart/emulation/homebrew sites seem to have vanished (are any other that logic sunrise and gueux-forum still around? dev-fr and nintendomax seem long gone) or died off despite weathering the storm for a long time.
great idea but i don't want to fill my post with unnecessary info lol
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
i tried and it on a prerelease version didn't work, But after some image convertion and small changes to the source code it worked. (The game was simple.) Next version will be more backwards compatible with PAlib proyects. I do still think there is some improvements to some stuff (PA_CreateSprite or PA_LoadSpritePal do not longer need (void*) and generally more easy to use, at least in my opinion)
after updating the library quite a lot, I got some fancy results of simple PAlib text homebrew, Surely graphics and other stuff will work in the future! although i have absolutely no idea on how to display PAGfx stuff lol.

Still I have absolutely no idea how to integrate a default font so i just modified the lib to load one
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
just passing by to say, if devkitPro devs ever rant about supporting PALib, and discouraging its use, you can move your NDS/TWL homebrew stuff to ToolchainGenericDS and have proper GPLv2/GPLv2+ license
thanks i guess. I do not think the devkitPro devs will rant about me "supporting" a obsolete library from 2007 (well, i am, but i am not saying that you should use it). Getting older PAlib proyects to work is already difficult but that is just making it worse.

Current PAlib backwards compatibility is very early and experimental (it does not work under a TON of stuff)

I could make my library into GPL (i would like to) but since it is extremely based arround nightfox's lib i need to put it under a creative commons license or else i will get sued. That is why i was working on a rewrite, which i gave up because it isn't worth it.
 

Coto

-
Member
Joined
Jun 4, 2010
Messages
2,979
Trophies
2
XP
2,565
Country
Chile
I could make my library into GPL (i would like to) but since it is extremely based arround nightfox's lib i need to put it under a creative commons license or else i will get sued. That is why i was working on a rewrite, which i gave up because it isn't worth it.
You could relicense your work to be GPLv2 and keep a copy of the nightfox stuff around that other license. Also TGDS guarantees your work (source, payloads) will be protected through a proper license. (a.k.a no one else will claim you've broken whatever license you've based your work on)

so yeah,
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
You could relicense your work to be GPLv2 and keep a copy of the nightfox stuff around that other license. Also TGDS guarantees your work (source, payloads) will be protected through a proper license. (a.k.a no one else will claim you've broken whatever license you've based your work on)

so yeah,
thanks i guess. If the devkitpro devs rant about this then i will move my proyect to toolchaingenericds :) i still am not too sure if it will mess things up with knightfox but yeah, thanks
 

Deleted member 591971

Well-Known Member
OP
Member
Joined
Apr 10, 2022
Messages
216
Trophies
0
XP
922
Will PA2LIB have new feature compared to PALIB ?
1. it is really not maintained anymore (PA2lib was given to Cubed Tree which i mean i know nothing.)
2. PA2lib is really meant for PAlib backwards compatibility (early versions didn't have this), but since it is based around nflib it does support fat loading (which was added to palib but removed later on because of instability).

PAlib backwards compatibility is not really that great, it is buggy, causes issues and it is really unstable, that is why i really do not recommend this lib to everybody.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    ButterScott101 @ ButterScott101: