Alright, I committed the libraries to the repository. They are under the libpspvram directory in the trunk. I added a makefile that will make both the libpspvram.a and the libpspvalloc.a libraries. Make install will install to the pspsdk folders on your system. For the vram code, I used the latest f...
Raphael has a newer version of this here: http://www.psp-programming.com/forums/index.php/topic,1840.0.html I also use this code from Raphael. It is very useful, and vote for it to be included in the sdk. If nothing else, it should be added to the subversion repository as a library. What do you guy...
I just committed to subversion a very simple (incomplete also) pthread library. Hi Raf, i am working on a port of mono (http://www.mono-project.org) for PSP. Currently i need a more complete pthread library. My idea is to port the old libc5 linuxthreads library (http://pauillac.inria.fr/~xleroy/lin...
I don't know who is responsible for the /newlib dir. But adding a simple .patch file won't hurt anybody. One way of telling would be to do something like this "svn log newlib-psp | less" In this case, I guess that would be either mrbrown or jim... I think jim's suggestion is the best appr...
Ok this is patched in the newlib.1.15.0.patch in the toolchainn SVN. I see in the patch file that gethostbyaddr is now calling sceNetResolverStop(). But gethostbyname is still not doing it.. Was that on purpose? Also, I believe you should commit the changes to the newlib-psp directory, not only to ...
Anissan, When I read this: (...) For the time being, I want to export only either global functions or static member functions, so I need to solve name mangling issues only. I thought that what I did could be sufficient to solve that problem. From your discussion with TyRaNiD, solving the problem of ...
Excuse me if I'm confusing your problem; but on PSPRadio (which is C++ and has C++ prx plugins), all I do is: psp-build-exports -s UI_Exports.exp (which has: PSP_EXPORT_START(PSPRadio_UI, 0, 0x0001) PSP_EXPORT_FUNC_HASH(getModuleInfo) PSP_EXPORT_FUNC_HASH(Modu...
It appears PSPRadio works fine with a connecction that uses DHCP. Has anyone else observed this with other network apps? I'm assuming most people use DHCP, so I wouldn't be surprised if this hasn't come up before, but just in case... is this a known limitation? Note that my manual connection works ...
I just committed to subversion a very simple (incomplete also) pthread library. It may prove useful to people working on ports, if nothing else. I originally wrote it while porting links2, and so I only implemented what I needed.. so there's lots of functionality missing; but it is a start. Please f...
-fcntl support: the function is now implemented, and allows to set and get file descriptor flags. Implementation is not 100% complete. But socket's can be set to non-blocking mode via a fcntl call now. Also, file descriptors can be duplicated (with ref-counting so the real close is only called on t...
I've added in some printfs to find out when the File::Open command is used, and what it is opening, and there seems to be a problem coming from here. I'm using the version that I've converted all the IO functions to sceIo. First it attempts to open a file that appears as lots of \n and then a few r...
Doesn't the psptoolchain script grab the newest stuff from the SVN and install it all? Edit: Else, how do i go about getting and installing the latest newlib? (Running a native linux envoirment, also got svn) Maybe it does, I'm not sure.. I use svn exclusively.. If it does, then you still would nee...
Thanks for the quick response, i'm really eager to get this thing working. Well, i pass a zeroed timer just because i don't want wait-time at all, i just want to poll the socket. All my connections are of class CSocket, and on each main loop i call update() on them causing the socket to read in all...
Now why is this code not working as it is supposed to? itsSocketID is a listening socket. And when i run this, the socket is set all the time, even when there's not an incoming connection available. And then my programs just gets stuck on the accept() call. By the way, i figured it isn't a good thi...
So. mySocket = create_socket() //just pseudo function giving me a socket fd_set mySet; FD_SET( mySocket, &mySet ); FD_ISSET( mySocket, &mySet ); //This would return false You need to call FD_ZERO(&mySet); before you can call FD_SET, as you...
Raf, if you get a chance, can you check that this fix is right: http://svn.pspdev.org/listing.php?repname=psp&path=%2F&rev=1887&sc=1 (without that patch, they don't build) Thanks, Jim.. I knew I had to do that, just haven't had time :) Your changes look good. Will try them later today, ...
hi, raf, this is really great job. this pipe() support for newlib is very important for me (guess for other developers, too). i was using this (http://svn.sourceforge.net/viewcvs.cgi/*checkout*/xynth/trunk/src/lib/pipe_mem.c) ugly && bugy pipe emulation over memory, and i was tired of worki...
Hmm well you need to link it with libpspsdk.a to get those functions, it _might_ be best to actually implement them in newlib directly so that you are not dependant on the sdk library in order to build normal apps. You should just be able to grab the ones in the sdk source. I'll try that; but it's ...
int inten; inten = pspSdkDisableInterrupts(); /* Do something or other */ pspSdkEnableInterrupts(inten); James, I tried adding these calls to fdman.c. But then when I try to compile an application, I get linker errors: /usr/local/pspdev/lib/gcc/psp/4.0.2/../../../../...
if(__psp_descriptormap[s] == NULL || __psp_descriptormap[s]->type != __PSP_DESCRIPTOR_TYPE_SOCKET) This is done many times, I think it should get its own define, something like VALID_FD(index, type); so it would be if (!VALID_FD(s, __PSP_DESCRIPTOR_TYPE_SOCKET)) or something? I'll just do something...
Just applied this by hand :) Few small things: - if(!(SOCKET_IS_VALID(s))) + if(__psp_descriptormap[s] == NULL || __psp_descriptormap[s]->type != __PSP_DESCRIPTOR_TYPE_SOCKET) This is done many times, I think it should get its own define, something like VALID_FD(index, type); so it would be if (!VA...
How do we go about making the newlib patch for the toolchain? Make your changes in newlib-psp/, have the original newlib tar extracted as newlib-1.13.0/, and run psptoolchain/devel/scripts/difftree.sh newlib-psp newlib-1.13.0 then copy the generated patch-newlib* file to psptoolchain/newlib-1.13.0....
<warning, sort of off topic> You aren't the only one who's been porting links2 :) lol. http://localhost.geek.nz/plinks3.jpg As you can see I wasn't as far as yourself. How up to date is the version in pspradio svn? Any chance of getting added as a developer to pspradio so I can lend a hand? Perhaps...
Btw regarding thread safety, really the simplest way would be to disable then enable interrupts over the bit you need to be thread safe, as long as you dont take too long doing it and are not calling any kernel functions then it is low cost and little effort ;) The reason that this wasn't implement...
Thanks, Jim and James! It's very reassuring to hear you say that it looks good.. :)
Yes, the -mno-explicit-relocs takes care of the gp issue we found earlier.
As I worked on porting both retawq (web browser) and now links2, I made some changes to newlib (mainly to the libc/sys/psp directory). Changes include: -File descriptor management: all file descriptors now come from a common pool. Things like the internal sce descriptor, reference count, filename, f...
Seems to me this thread has gone long enough on the wrong direction. Time for a cleanup or lock down, is my suggestion. Either way, my take on the whole Fluff deal is that she's not doing anything illegal. She's buit something closed-sourced using tools under the BSD license. This is just a sad fact...