Basilisk II PSP Port (Mac Emulator)
Yeah, about the only reference I could find to raw sockets on the PSP was a thread where someone WANTED to write a packet sniffer and needed raw sockets, but he didn't get an answer on his question about raw sockets on the PSP, so the thread just quit without a resolution.
My own more recent thread about raw sockets on the PSP went unanswered as well, so I don't think anyone knows anything. It's not an area anyone has really looked into yet. Probably the only folks to look into it did some simple tests like mine, and when they turned out negative, assumed Sony doesn't support raw sockets.
My own more recent thread about raw sockets on the PSP went unanswered as well, so I don't think anyone knows anything. It's not an area anyone has really looked into yet. Probably the only folks to look into it did some simple tests like mine, and when they turned out negative, assumed Sony doesn't support raw sockets.
-
- Posts: 14
- Joined: Sun May 11, 2008 11:06 pm
Yes, TV out works fine. Sounds like you deleted the dvemgr.prx or something.ViTi95 wrote:a little question. does tv output work for the latest test version of basiliskII?? mine doesn't :S and on earlier versions it worked :S
p.d.: nice job J.F.!
Also, if you use FUSA on your PSP, turn it off when trying to use programs that make use of the TV directly.
-
- Posts: 2
- Joined: Mon Nov 10, 2008 7:06 am
jigsaw
hi i wanted to know where i can download or obtain the files for the programs like jigsaw puzzle and what file type and where i would install it
hihi
- dennis96411
- Posts: 70
- Joined: Sun Jul 06, 2008 4:59 am
Read the guide for B2: http://groups.google.com/group/chilly-w ... -psp?hl=en
Finding Mac software is not something that would be discussed here. You'd be better off asking at a Mac emulation site, especially one that focused on Basilisk, like this one: http://www.emaculation.com/forum/viewforum.php?f=6
Finding Mac software is not something that would be discussed here. You'd be better off asking at a Mac emulation site, especially one that focused on Basilisk, like this one: http://www.emaculation.com/forum/viewforum.php?f=6
-
- Posts: 2
- Joined: Mon Nov 10, 2008 7:06 am
Go to your local hobby shop - they should have all kinds of paint available. :Djnj2828 wrote:HELP!!!!! ........i no this is old...but how do i change the color of my psp key board....(cfw 5.00m33-4)!!!!...................
If you mean the Danzef OSK, change the color in the pngs using a paint program like GIMP or Photoshop.
If you mean the Sony OSK, you can't.
-
- Posts: 388
- Joined: Tue Aug 12, 2008 12:46 am
-
- Posts: 388
- Joined: Tue Aug 12, 2008 12:46 am
No. Raw sockets have to be implemented in the IP stack within the PSP kernel. Either support is there and we don't know how to use it or it's not and a kernel patch or hook will be required. A java or C library will not help.Dariusc123456 wrote:Well thats true. Ill do a search. Maybe ill find one written in C.
What crazyc said. :)
The only suggestion I've heard that's worth trying is to make a kernel mode prx and try calling the socket code from kernel mode. While Sony probably wouldn't allow raw sockets from user mode, it's possible it's there but reserved to kernel mode. Just haven't had the gumption to try that yet.
The only suggestion I've heard that's worth trying is to make a kernel mode prx and try calling the socket code from kernel mode. While Sony probably wouldn't allow raw sockets from user mode, it's possible it's there but reserved to kernel mode. Just haven't had the gumption to try that yet.
gethostbyname crash
Have you had that problem too when trying to get raw socket on psp?
gethostname works but when gethostbyname attempts to resolve it it crashes
Has anyone found a fix to this?
gethostname works but when gethostbyname attempts to resolve it it crashes
Code: Select all
printf("\nFetching host name...");
if(sceUtilityGetSystemParamString(PSP_SYSTEMPARAM_ID_STRING_NICKNAME, host, sizeof(host)) == PSP_SYSTEMPARAM_RETVAL_FAIL)
{
strcpy(host, "UNNAMED");
}
printf("%s\nResolving...", host);
if((server=gethostbyname(host))!=0)
{
if (server < 0) {
errno = sceNetInetGetErrno();
printf("Error, %x, %d, %s\n", errno, HexToDec(errno), errd[HexToDec(errno)]);
sceKernelDelayThread(1000000);
do { sceCtrlReadBufferPositive(&pad, 1);
} while (pad.Buttons == 0);
sceKernelExitGame();
}
else {
printf("Unable to resolve, %s\n", hosterr[(int)server]);
sceKernelDelayThread(1000000);
do { sceCtrlReadBufferPositive(&pad, 1);
} while (pad.Buttons == 0);
sceKernelExitGame();
}
}
dest.sin_family = AF_INET;
dest.sin_port = htons(50000); //your destination port
memcpy(&dest.sin_addr.s_addr,server->h_addr,server->h_length);
printf("Resolved.");
In PSP Doom, there's this:
I don't remember hearing any complaints about it crashing, but I'm not sure if people ever used that path in the code. I certainly never did.
Code: Select all
while (++i < myargc && myargv[i][0] != '-') {
memset((void *)&IP_sendaddress[doomcom->numnodes], 0, sizeof(IP_sendaddress[doomcom->numnodes]));
IP_sendaddress[doomcom->numnodes].sin_family = AF_INET;
IP_sendaddress[doomcom->numnodes].sin_port = htons(IP_DOOMPORT);
if (myargv[i][0] == '.') {
IP_sendaddress[doomcom->numnodes].sin_addr.s_addr = inet_addr (myargv[i]+1);
printf(" %s", myargv[i]+1);
} else {
hostentry = gethostbyname (myargv[i]);
printf(" %s", myargv[i]);
if (!hostentry)
I_Error ("gethostbyname: couldn't find %s", myargv[i]);
IP_sendaddress[doomcom->numnodes].sin_addr.s_addr = *(int *)hostentry->h_addr_list[0];
}
doomcom->numnodes++;
}
If fixed the problem but it cant resolve the psp host name P150 but when I put www.luaplayer.org or some otgher site it works
But it only works if I connect the psp to a AP
But it only works if I connect the psp to a AP
Err... if you're not connected to an AP, you aren't connected to the net. If you aren't connected to the net, how do you expect to resolve names?? The DNS servers are on the net (well, the ones I use certainly are).Gaby_64 wrote:If fixed the problem but it cant resolve the psp host name P150 but when I put www.luaplayer.org or some otgher site it works
But it only works if I connect the psp to a AP
Getting your own IP address isn't done through the resolver, just someone else's IP address. To get your own IP addy, do:
Code: Select all
if (sceNetApctlGetInfo(8, szMyIPAddr) != 0)
strcpy(szMyIPAddr, "unknown IP address");
printf("IP: %s\n", szMyIPAddr);
You HAVE to connect to an access point FIRST, then you create your sockets. With the PSP, you do the "standard" PSP network initialization, at which point THEN you can pretend you're working with normal sockets. Look at the net init code in B2 or Doom for an example of initializing the PSP network.Gaby_64 wrote:Then how would I make a socket without having to connect to an AP
DO I have to make a server socket
My objective with the socket is to be able to sniff incoming packets
But wouldn't this work? (It freezes when trying to recv)
Code: Select all
sock = sceNetInetSocket(AF_INET, SOCK_RAW, IPPROTO_RAW);
if(sock < 0) {
errno = sceNetInetGetErrno();
printf("Socket error %x, %d, %s\n", errno, HexToDec(errno), errd[HexToDec(errno)]);
sceKernelDelayThread(1000000);
do { sceCtrlReadBufferPositive(&pad, 1);
} while (pad.Buttons == 0);
sceKernelExitGame();
}
int val = 1;
if(sceNetInetSetsockopt(sock, IPPROTO_IP, IP_HDRINCL, &val, sizeof(val)) < 0) {
errno = sceNetInetGetErrno();
printf("Set IP_HDRINCL failed\n");
printf("Errno = %x, %d, %s\n", errno, HexToDec(errno), errd[HexToDec(errno)]);
sceKernelDelayThread(1000000);
do { sceCtrlReadBufferPositive(&pad, 1);
} while (pad.Buttons == 0);
sceKernelExitGame();
}
get_socket_addr(sock, &addr);
address.sin_family = AF_INET;
address.sin_port = htons(23); //your destination port
address.sin_addr.s_addr = INADDR_ANY;
printf("Binding\n");
if(sceNetInetBind(sock, (struct sockaddr *)&address, sizeof(address)) < 0) {
errno = sceNetInetGetErrno();
printf("Bind returned %x\n", err);
printf("Errno = %x, %d, %s\n", errno, HexToDec(errno), errd[HexToDec(errno)]);
sceKernelDelayThread(1000000);
do { sceCtrlReadBufferPositive(&pad, 1);
} while (pad.Buttons == 0);
sceKernelExitGame();
}
printf("Binding successfull\n");
<a><img></a>