PSPSOne or PSPcsx?

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

ector
Posts: 195
Joined: Thu May 12, 2005 10:22 pm

Post by ector »

Yes sorry you are right, it is executed (jump destination computed) first, but the jump is not actually taken until after another instruction is executed. Just making sure to point this out because it's a pretty alien concept for x86 people :)
zabbyh
Posts: 13
Joined: Fri Jul 15, 2005 3:40 am

Post by zabbyh »

mirrorsawlljk wrote:How do you plan on dealing with controls? The PSX had an extra analog stick and two more shoulder buttons.
The normal PSX pad didn't have analog sticks. Therefore only a limited amount of games required them e.g. Ape escape is one that i can remember.

The shoulder button thing could be dealt with by like using the analog stick on the PSP and clicking it to the right to change the functionality of the shoulder buttons so they are recognised as R2 and L2 instead of R and L. OR click right on analog stick for R2 and Left for L2

Just a suggestion
zacay
Posts: 10
Joined: Sun Jul 17, 2005 11:16 pm

Post by zacay »

SELECT + L1 = L2
SELECT + R1 = R2
Would be nice

AND
SELECT + ANALOG STICK = Second analog stick..

and pushing select button for 1 second without pushing something else then it would be a just SELECT
thehalo2renegade
Posts: 11
Joined: Sun Jun 26, 2005 7:07 am

Post by thehalo2renegade »

if you didn't get my PM then I think we can work together and get this working fast. I have some ideas so AIM me at thehalo2renegade
PacManFan
Posts: 66
Joined: Sat Jun 25, 2005 6:01 am

1st demo test release

Post by PacManFan »

For all the people who have been asking, here's the first demo test release of PSPSOne. This one is hard-coded to run the pdx-dlcm.psx demo, but I've included a few other psx files as well. It runs at about .5 fps @ 222mhz, The emulation is really slow at this point, I'm still working on getting my recompiler to function properly (or at all). Once the recompiler is working, I expect to see a huge jump in performance. After that, I'll replace the GPU software rendering with the GE calls to hardware blit 2d triangles.

You'll need to run the KXploit tool on this. The directory must be PSPSONE, Also, you'll need to put in the scph1001.bin playstion bios into the /bios subdirectory for this to work.

http://home.comcast.net/~shernandez1337/PSPSOne.zip

I know it's really slow, but it's a start.

-PMF out
"I'm a little source code, short and stout
Here is my input, here is my out."

Author of PSPQuake and PSPSOne.
thehalo2renegade
Posts: 11
Joined: Sun Jun 26, 2005 7:07 am

Post by thehalo2renegade »

good work PacManFan hopefully after some polishing this will be able to run really fast and have a good library of games that work.
emumaniac
Posts: 79
Joined: Sun May 08, 2005 12:22 am

Post by emumaniac »

awesome work just tried it and works good

posted some screens here -> http://psp-news.dcemu.co.uk/pspsone.shtml
Krevnik
Posts: 71
Joined: Wed Mar 09, 2005 12:07 pm

Post by Krevnik »

ector wrote:Krevnik, it's not that simple. Problem is that PSX has a lot of memory mapped I/O, so yes, every single read/write will have to be checked if it is to one of these regions.
I just didn't mention MMIO being an issue directly, although I probably should have, to stop this comment in particular. What I was aiming more for was what crazyc suggested, where we could effectively reduce the level of complexity in the memory re-map.

The idea is that since we are on a single arch, we should be mucking with the code as little as possible. IMO, the tricker part of the JIT design would be context switch vs partial context, not memory re-maps. ;)

Context switches would allow for the JIT to not have to touch quite a few instructions, and completely remove register swapping overhead during a block of code. It seems this was the route Sony took with the PS2, IIRC, and should be the route taken with the PSP for similar reasons... act as a memory resident binary translator and OS-ish thing, not as an emulator.
PSX had 2MB of RAM (and a similar amount of VRAM) so that is not much of a problem but the different memory map is.
I must have been thinking of RAM requirements to emulate (such as with VGS)
thehalo2renegade
Posts: 11
Joined: Sun Jun 26, 2005 7:07 am

Post by thehalo2renegade »

PacManFan check your PM box. Also I think a playable version might not be as far off as we think.
chronomaster5042
Posts: 4
Joined: Tue Jul 19, 2005 1:03 pm

control

Post by chronomaster5042 »

I have a suggestion for controls have the analog stick be the l2 and r2 buttons:
ei moving the analog stick left would be L2 right would be R2 up could be L2&R2 (if you have to press both) and down could be the menu.
Mike/Pippin
Posts: 40
Joined: Sun Jun 05, 2005 4:23 am

Post by Mike/Pippin »

easyer would be

R2=R1+/\
L2=L1+Up

Theyre close and easy to do.
chronomaster5042
Posts: 4
Joined: Tue Jul 19, 2005 1:03 pm

Post by chronomaster5042 »

Mike/Pippin wrote:easyer would be

R2=R1+/\
L2=L1+Up

Theyre close and easy to do.
what if you need to use a button combo that is L1+L2+Up??????????? (dont even know if one exisits)

but a feature conld be added that would allow you to chose your own buttons configs :) but probably in a later version
Mike/Pippin
Posts: 40
Joined: Sun Jun 05, 2005 4:23 am

Post by Mike/Pippin »

YoU hit L1 then L1 and up then up

wouldnt be hard
Lithnor
Posts: 2
Joined: Tue Jul 19, 2005 8:52 pm

problem

Post by Lithnor »

im **attempting** to run it on a 1.5 version firmware(using kxploit as well as the seipsptool(same thing only it lets you hide the "corrupted file") anyway, Very new to the scene, trying to learn as much as possible..... well... i got the .bin file i needed, put it in the /Bios directory, go to start the game, and i get the old "The game could not be started. (80020001)" error.... possibly having a file in the wrong directory, so just to narrow that off totally, i took every file and copy every file to ever single directory...... find out that that apparently isint what i am doing wrong, because it still gives me the same error.... possibly something i am missing? My current set up gives all the files you included in basicly every folder (because thats where i left off) as well as the .bin in the BIOS folder. at this point i am stumped because as i said... new to the scene, hopefing alot of this clears up, as im taking programming classes starting next semester.
thunder.child
Posts: 7
Joined: Fri Jun 24, 2005 6:08 pm

Post by thunder.child »

Don't try to hide the corrupted icon if you are. The folders HAVE to be named PSPSONE right now, so adding spaces or underscores ( _ ) to try and hide it will give you that error.
mrbrown
Site Admin
Posts: 1537
Joined: Sat Jan 17, 2004 11:24 am

Post by mrbrown »

I think it's about time to move this into Software.
thehalo2renegade
Posts: 11
Joined: Sun Jun 26, 2005 7:07 am

Post by thehalo2renegade »

If anyone is having this run with KXPloit just head over to my thread has a tutorial
http://www.pspupdates.com/forum/showthr ... ge=1&pp=10

And here is the file PacMan
http://uploadhut.com/view.php/217720.zip

http://www.uploadtemple.com/view.php/1121794220.zip
User avatar
Jim
Posts: 476
Joined: Sat Jul 02, 2005 10:06 pm
Location: Sydney
Contact:

Post by Jim »

wrt to PS1 games running in 640x480 and demos running in 320x240. I think you'll find that many games boot into the hi-res mode to show logos and things, then drop back to low-res for the 3d. The PS1 really couldn't manage a high-res textured output. Also, 640x480 is often, if not always, interlaced.

Jim
PacManFan
Posts: 66
Joined: Sat Jun 25, 2005 6:01 am

Whoops

Post by PacManFan »

I meant to post that "Progress" message to this thread last night, looks like I missed. Well, anyways, for those who missed it, I managed to get some games (Driver, Dragon Ball Z Final Bout) to work with my emulator. I've got .BIN/CUE support working now. The Driver.Bin file was about 650MB, and the DBZ bin was about 150. My mem stick is only a 256 MB, so I had to test on my psp with DBZ.

Now that I've got .BIN support working nicely, I'm going to add compression through zlib so that the .bin files will be compressed to .gz files. After a few tests, It looks like most Bin's can be compressed by 50-65%. I'm going to work on a resource tool to remove/stub psx movies to help shrink things a bit. But for right now, I'm still working on my recompiler.

-PMF out
"I'm a little source code, short and stout
Here is my input, here is my out."

Author of PSPQuake and PSPSOne.
rest05
Posts: 12
Joined: Sat Jul 09, 2005 12:09 pm

nice

Post by rest05 »

its always nice to hear good news!!! :}
shadow_91
Posts: 4
Joined: Fri Jul 15, 2005 10:13 am

Post by shadow_91 »

so is it safe to assume that this emulator will not be *.iso compliant? whatever's fine for me, i can rip into any extension. and how exactly do you compress into the *.gz extension?
PacManFan
Posts: 66
Joined: Sat Jun 25, 2005 6:01 am

Success!

Post by PacManFan »

Well,

After replacing just a few file i/o routines with thier zlib equivalant, I now have .bin g'zipped files working. I compressed DBZ Final Bout from 158 MB bin file to a 70MB .gz file, and it actually loads faster! I think this is beacuse the i/o is so slow on the PSP mem stick.

If you want to know more about GZip , Google for it and find youself a nice windows frontend for it. GZip is basically a program like zip based on the ZLib source.

-PMF
"I'm a little source code, short and stout
Here is my input, here is my out."

Author of PSPQuake and PSPSOne.
PacManFan
Posts: 66
Joined: Sat Jun 25, 2005 6:01 am

Another screen shot

Post by PacManFan »

Spider man running from a compressed spiderman.bin.gz file.

Image

-PMF
"I'm a little source code, short and stout
Here is my input, here is my out."

Author of PSPQuake and PSPSOne.
Cpasjuste
Posts: 214
Joined: Sun May 29, 2005 8:28 am

Post by Cpasjuste »

Its impressive :)
good work.
NBC
Posts: 5
Joined: Sun Jul 17, 2005 7:33 pm

Post by NBC »

do you have some links that talks about recompiller ?
i'd like to understand how it works ^^
dont know if it writes code to a file then loads it like a elf or what,
PacManFan
Posts: 66
Joined: Sat Jun 25, 2005 6:01 am

recompiler

Post by PacManFan »

Google for "dynamic recompiler" or "Binary address translator" or "dynamic recompilation"

It writes it's code to a block of memory, then it calls that block of memory as though it were a function.

It's a type of self-modifying code.

Take a look at the source for pcsx or ultrahle, they've both got dynamic recompilers and interpreters.


-PMF
"I'm a little source code, short and stout
Here is my input, here is my out."

Author of PSPQuake and PSPSOne.
Fluff
Posts: 35
Joined: Fri Apr 22, 2005 10:05 am

Post by Fluff »

i would suggest the following for controler input.

L1 = L1
R = R1
analog up+L1 = L2 / R1 = R2
analog down+L1 = L1+L2 / R1+R2
analog left/right + select = Menu

saves complicated button combo's for trivial tasks, and besides that people suggesting "select+<key>", doesnt work on a psx emulator because most psx games use the select button
morbidconfessions
Posts: 1
Joined: Fri Jul 22, 2005 11:14 am

help me

Post by morbidconfessions »

scph1001.bin where do u gt this file from
thehalo2renegade
Posts: 11
Joined: Sun Jun 26, 2005 7:07 am

Post by thehalo2renegade »

Google. It is an illegal file so I am not going to give you a link.
NBC
Posts: 5
Joined: Sun Jul 17, 2005 7:33 pm

Re: recompiler

Post by NBC »

PacManFan wrote:Google for "dynamic recompiler" or "Binary address translator" or "dynamic recompilation"

It writes it's code to a block of memory, then it calls that block of memory as though it were a function.

It's a type of self-modifying code.

Take a look at the source for pcsx or ultrahle, they've both got dynamic recompilers and interpreters.


-PMF
ok this has just enligted me,
It writes it's code to a block of memory, then it calls that block of memory as though it were a function.
so you just copy the translated bytes in ram then call a pointer to it :)
Locked