Hacking Can Adrenaline games (PSP/PSX) be boosted to run smoother?

MetoMeto

Well-Known Member
OP
Member
Joined
Dec 28, 2018
Messages
1,486
Trophies
0
Location
SR-388
XP
2,264
Country
Zimbabwe
I know i have VSH menu in adrenaline, but that does nothing for me. For example i regularry play and love to play
Tomb Raider Anniversary on adrenaline, and i noticed the game runs perfectly smooth in some sections with less things on screen
i can feel its almost 60fps, and sometimes when there is a lot going on it drops to 30 or less. So i guess CPU/GPU speed plays the big role there.
I know games where fps is not capped to say 30fps can run smoother depending how much of cpu/gpu power you allow it to use.
Vita games using VSH menu, gain from this, they go really smooth if uncapped, and stable if capped when i give them more GPU (usually) power
using VSH menu.

Anyway, my question is simple...how can i give adrenaline more cpu/gpu pover that vita has than default 333mhz. I know vita has more than that... I know they are separate hardware kinda
but is there any way to run psp/psx games smoother with more cpu/gpu pover to adrenaline?
 

eighthdayregret

fnerrrrrrrrrr!
Member
Joined
Sep 27, 2017
Messages
493
Trophies
0
Age
43
Website
eighthsregrets.blogspot.com
XP
837
Country
United States
Nope.
But here's the thing: it's not completely an Adrenaline thing. Some games have the FPS in the code of the game itself, and that's what you'd want to mess with.
Have you tried playing the game just using the Vita's normal functionality to do so? Because that might make a difference.
Also, do you remember if the slowdown was present when played on the PSP?
 

dragonz

Well-Known Member
Member
Joined
Jan 14, 2015
Messages
275
Trophies
0
XP
661
Country
United States
Nope.
But here's the thing: it's not completely an Adrenaline thing. Some games have the FPS in the code of the game itself, and that's what you'd want to mess with.
Have you tried playing the game just using the Vita's normal functionality to do so? Because that might make a difference.
Also, do you remember if the slowdown was present when played on the PSP?

I agree with you - but do you know if you sets all clocks to max (including 500mhz for CPU) if that would make a difference?
I've always been able to run all my adrenaline games at their actual speed ( meaning what the devs programmed them) but I've yet to play a game with uncapped frame rates so I would not know if that would make difference.

Anyhow how OP - here's the app that I'm referring to.

https://forum.devchroma.nl/index.php/topic,41.0.html

Edit and here's something else worth looking into - although it's kinda for advanced users I suppose.
https://forum.devchroma.nl/index.php/topic,210.0.html
 
Last edited by dragonz,

yeshuachrist

Well-Known Member
Member
Joined
Sep 1, 2010
Messages
600
Trophies
0
XP
1,482
Country
United States
(the custom bubbles for adrenaline, proved, that all of the modules and assets are not required to be in memory to load a game..............it may be possible to simply remove some of the modules in adrenaline, without a stability problem)

(it may also be possible to swap some of those modules/assets out.................recall@drenaline is hacked, we don't know how much checks are in place actively for those files)

(with the bubble manager, we can have a "lite" version of adrenaline, we never need to actually load) (don't believe the.adrenaline, reserves ram for assets/modules it doesn't load, that is a major source of improvement)
 
Last edited by yeshuachrist,

Acid_Snake

Developer
Developer
Joined
Aug 20, 2019
Messages
693
Trophies
0
Age
30
XP
1,970
Country
Spain
There's a few things to take into consideration here:

1. PSP/PS1 games on Adrenaline run on original PSP hardware. Overclocking the Vita's CPU and GPU make no difference. It's not emulated, it literally has a PSP CPU and GPU builtin. This also means you can't truly upscale these games or add any processing power. PS1 games are emulated using the PSP's PS1 emulator (NOT a Vita native emulator), the Vita only handles sound for PS1 games, everything else is the same exact POPS emulator we had on PSP.

2. The PSP's CPU on the Vita doesn't actually support multiple clock speeds like the original PSP did. It doesn't matter much if you change the PSP clock speed in Adrenaline.

3. There was a project about emulating the PSP's GPU using the Vita's GPU for better performance and graphics. But this could be very difficult to get working correctly. Most games will most likely fail to even boot up, and the Vita's GPU itself isn't that much more powerful so the difference could potentially be minimal, or even worse.

4. The only thing you can actually improve in the Vita's PSP "emulator" is to add extra RAM, which Adrenaline allows you to. But then again, most commercial games aren't programmed to work with this extra RAM so there will be no difference.

All in all, overclocking the Vita's CPU/GPU to play PSP games will only make a difference in battery consumption (it'll drain faster!!!).
 

MetoMeto

Well-Known Member
OP
Member
Joined
Dec 28, 2018
Messages
1,486
Trophies
0
Location
SR-388
XP
2,264
Country
Zimbabwe
There's a few things to take into consideration here:

1. PSP/PS1 games on Adrenaline run on original PSP hardware. Overclocking the Vita's CPU and GPU make no difference. It's not emulated, it literally has a PSP CPU and GPU builtin. This also means you can't truly upscale these games or add any processing power. PS1 games are emulated using the PSP's PS1 emulator (NOT a Vita native emulator), the Vita only handles sound for PS1 games, everything else is the same exact POPS emulator we had on PSP.

2. The PSP's CPU on the Vita doesn't actually support multiple clock speeds like the original PSP did. It doesn't matter much if you change the PSP clock speed in Adrenaline.

3. There was a project about emulating the PSP's GPU using the Vita's GPU for better performance and graphics. But this could be very difficult to get working correctly. Most games will most likely fail to even boot up, and the Vita's GPU itself isn't that much more powerful so the difference could potentially be minimal, or even worse.

4. The only thing you can actually improve in the Vita's PSP "emulator" is to add extra RAM, which Adrenaline allows you to. But then again, most commercial games aren't programmed to work with this extra RAM so there will be no difference.

All in all, overclocking the Vita's CPU/GPU to play PSP games will only make a difference in battery consumption (it'll drain faster!!!).
well not that faster. I always use maxed out clocks for vita ames and psp/psx games and the vita lasts for a long time.

Anyway you meantioned extra RAM. How do you do that?
 

Acid_Snake

Developer
Developer
Joined
Aug 20, 2019
Messages
693
Trophies
0
Age
30
XP
1,970
Country
Spain
well not that faster. I always use maxed out clocks for vita ames and psp/psx games and the vita lasts for a long time.

Anyway you meantioned extra RAM. How do you do that?
Go to the Adrenaline recovery menu (you can go there from VSH menu) then in configuration (or maybe advance configuration?) there is an option to unlock extra RAM, which basically gives you a total of 64MB like PSP 2K+ models (as opposed to 32MB from 1K models, which the Vita tries to simulate).
Please note that:

1. This doesn't improve commercial games at all, it may improve loading times (MAYBE), but not actual gameplay.

2. This might actually break certain homebrews and (specially) plugins. One example are the lcs/vcs cheat devices from edisoncarter. They will fail or work incorrectly if using extra RAM.

3. There's only a very limited amount of homebrews and apps that will benefit from this, DaedalusX64 and the built-in PSP web browser are the only ones that come to mind (maybe some other emulators).

Which begs the question: is it really worth it given that the Vita has replacements for these homebrews/app that will work better?
 

MetoMeto

Well-Known Member
OP
Member
Joined
Dec 28, 2018
Messages
1,486
Trophies
0
Location
SR-388
XP
2,264
Country
Zimbabwe
Go to the Adrenaline recovery menu (you can go there from VSH menu) then in configuration (or maybe advance configuration?) there is an option to unlock extra RAM, which basically gives you a total of 64MB like PSP 2K+ models (as opposed to 32MB from 1K models, which the Vita tries to simulate).
Please note that:

1. This doesn't improve commercial games at all, it may improve loading times (MAYBE), but not actual gameplay.

2. This might actually break certain homebrews and (specially) plugins. One example are the lcs/vcs cheat devices from edisoncarter. They will fail or work incorrectly if using extra RAM.

3. There's only a very limited amount of homebrews and apps that will benefit from this, DaedalusX64 and the built-in PSP web browser are the only ones that come to mind (maybe some other emulators).

Which begs the question: is it really worth it given that the Vita has replacements for these homebrews/app that will work better?
wel lif its better loading times than why not.
Also i cant find "unlock extra RAM"...do you mean "enable high memory layout"? is that the option?
 

yeshuachrist

Well-Known Member
Member
Joined
Sep 1, 2010
Messages
600
Trophies
0
XP
1,482
Country
United States
(original question is about "running smoother", not faster)

(There is a comparative answer)

***Raspberry Pi 4, "lr-pcsx" Playstation Emulator .......... with "Clock Speed", option, (added in 2018/2019) set to 77. Chrono Cross on PS1 will studded a lot on battle splash sequences, just start a game get into a battle and see for yourself.

"Clock Speed set to 72", battle splash sequences "run smoother"

(on a real ps3, it runs prefectly find, but diff. terms, its now very close to that on the Raspberry pi 4, almost the same, also with "shader, ntsc-stock.glsl" enabled only for lr-pcsx, its visually almost the same as the ps3's renderer) (han/hen hack on 4.82 OFW super slim ps3, launching the game from a .pkg file, not from a "iso + loader")

..........................
..........................
..........................

"Adrenaline"

Chrono Cross ps1, either official eboot. Should theoretically have the same result we've said, if you use the bubble manager to launch "Chrono Cross" for the "Adrenaline Emulator" ............... it doesn't pool as many resources because you are not launching the full "Adrenaline Emulator

"The Question is about, Smoother Gameplay, not faster, and not necessarily overclocking the game"

.................
.................
.................

Adrenaline does run smoother with..................https://github.com/AuroraWright/yamt-vita-lite............this "sd card plugin", but also can't need to launch adrenaline twice, the fix by adding a line in the config.txt file doesn't seem to work with it....................

.................
.................
.................

Like the other user stated there is an option to try for running adrenaline smoother*


https://forum.devchroma.nl/index.php/topic,41.0.html

with sdcard plugin "yamt lite"
overclocking plugin to 500mhz
or try
overclocking plugin to 444mhz

one or the other will or should product smoother results for adrenaline, with or without the bubble manager for adrenaline, launching the game for adrenaline, without loading adrenaline completely

(easiest thing to do is test CHRONO CROSS, since this same result is noticable on different language terms in the raspberry pi, should be observable for the vita..................and this impacts other games, "smoother")
 
Last edited by yeshuachrist,

Acid_Snake

Developer
Developer
Joined
Aug 20, 2019
Messages
693
Trophies
0
Age
30
XP
1,970
Country
Spain
"Adrenaline"

Chrono Cross ps1, either official eboot. Should theoretically have the same result we've said, if you use the bubble manager to launch "Chrono Cross" for the "Adrenaline Emulator" ............... it doesn't pool as many resources because you are not launching the full "Adrenaline Emulator
This is not necessarily true. Adrenaline (nor any CFW) pull any more resources from the game (all CFW resources are free when the game is launched). It will only affect loading times (from launching full adrenaline to just launching the game), but once the game is loaded there is no difference in resource usage.

As for making the game run smoother, there are several options to improve the visuals.
 
Last edited by Acid_Snake,

alucardx2

Active Member
Newcomer
Joined
Oct 27, 2020
Messages
34
Trophies
0
Age
36
XP
180
Country
Chile
There's a few things to take into consideration here:

1. PSP/PS1 games on Adrenaline run on original PSP hardware. Overclocking the Vita's CPU and GPU make no difference. It's not emulated, it literally has a PSP CPU and GPU builtin. This also means you can't truly upscale these games or add any processing power. PS1 games are emulated using the PSP's PS1 emulator (NOT a Vita native emulator), the Vita only handles sound for PS1 games, everything else is the same exact POPS emulator we had on PSP.

2. The PSP's CPU on the Vita doesn't actually support multiple clock speeds like the original PSP did. It doesn't matter much if you change the PSP clock speed in Adrenaline.

3. There was a project about emulating the PSP's GPU using the Vita's GPU for better performance and graphics. But this could be very difficult to get working correctly. Most games will most likely fail to even boot up, and the Vita's GPU itself isn't that much more powerful so the difference could potentially be minimal, or even worse.

4. The only thing you can actually improve in the Vita's PSP "emulator" is to add extra RAM, which Adrenaline allows you to. But then again, most commercial games aren't programmed to work with this extra RAM so there will be no difference.

All in all, overclocking the Vita's CPU/GPU to play PSP games will only make a difference in battery consumption (it'll drain faster!!!).

What about GePatch? It's a plugin for Adrenaline and it does truly upscale many PSP games to the vita's native resolution...
 

Acid_Snake

Developer
Developer
Joined
Aug 20, 2019
Messages
693
Trophies
0
Age
30
XP
1,970
Country
Spain
What about GePatch? It's a plugin for Adrenaline and it does truly upscale many PSP games to the vita's native resolution...
Yes and no. It hacks into the Ge functions to draw at native Vita resolution and it does look great, but it comes at a price that I don't think the PSP hardware can handle in more demanding games. It is a great patch and will work with most games, but it's not the most compatible thing.
 

Deleted member 42501

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,724
Trophies
2
XP
4,259
PSP games on the Vita don't play as well/smoothly as they do on original hardware. Its very noticeable on racers where the FPS was constant and now dips when there is a lot going on on screen. As mentioned this is due to the Vita emulating the PSP and then you've got extra overhead taken by Adrenaline to account for as well.

What would be interesting is a port of PPSSPP so we could run the older games using the newer hardware. TheFlow is working on it:

ppsspp-png.233631


And it'll be the ultimate solution if he decides to let the PSP hardware handled one aspect whilst the Vita handles the graphical side as that will allow the PSP games to run at double the internal resolution which is, whadda ya know, exactly the resolution of the Vita.

I always wondered why Sony didn't do that themselves in terms of an interpretation layer/wrapper but they probably sandboxed the PSP side to keeps its leaky security away from the Vita haxxors and make life a bit tougher when it came to cracking the system.

He hasn't mentioned anything about it for a while, anyone feel like @ him to get a status update as he spoke about it for a bit then started working on other projects...
 

Deleted member 42501

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,724
Trophies
2
XP
4,259
Just found this:

Check the bounty:

https://www.bountysource.com/issues/78071014-native-resolution-for-psp-games-on-psvita

Great minds:


"Technically a GE chain hook and a vita-sided port of the PPSSPP renderer would already be enough to get "perfect" PSP emulation with upgraded visuals."

"Let the MIPS processor do the whole PSP work... And tunnel out the GE render chain into VitaOS via kermit, then render it there."

"The GE chain and all registers for buffer transfer are well documented in several PSP developer wikis as well as the PPSSPP sourcecode."

Same goes for kermit on Vita and it's message structures. All it takes is someone that can be assed to put the pieces together."


https://www.reddit.com/r/vitahacks/comments/fi5fyc/psp_on_vita_native_res_full_color_and_high/

Thats exactly how I conceptualized it and it seems to be the most viable method to use the combined hardware in the best possible way because I don't think the Vita alone can run PPSSPP (even at standard resolution) on the more demanding games and frankly it doesn't need to when the hardware is sitting there anyway. All it'll take it a dev to connect the dots and you'll have PSP games looking awesome, controlling even better and playing like they never have before.

Wonder why anyone hasn't looked into this, especially with that bounty. If you know devs @ em and bring this thread to their attention because even if they don't attempt it I'm interested to hear why not because it seems like all the pieces are there.

Also: I'm pretty certain that if every single person that actually wanted this dropped $10 on the pile instead of being a freeloading leech that bounty could double or triple overnight and that would get some attention with a quickness as the dev gets rewarded, the Vita gets a new life and we all win.
 

evertonstz

Well-Known Member
Member
Joined
Jan 5, 2019
Messages
209
Trophies
0
Age
29
XP
557
Country
Brazil
Also: I'm pretty certain that if every single person that actually wanted this dropped $10 on the pile instead of being a freeloading leech that bounty could double or triple overnight and that would get some attention with a quickness as the dev gets rewarded, the Vita gets a new life and we all win.

A couple thousands dollars more in this bounty wont speed things up. This job will require months of attention, if not a full year of high skilled research and coding. It's a 50-80k job easy. Any dev that decides to tackle this will probably do it out of love for the console, the money even if multiplied by 10 would be a symbolic sum.

That being said, I totally agree with you: people interested in the project should definitely put cash into it.
 

Deleted member 42501

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,724
Trophies
2
XP
4,259
robots commented Aug 12, 2019
I have started working on this. But do not expect very fast development. This issue is very complicated one in terms of "time". As said in the description everything is documented - but its not only about documentation, its also about understanding and putting pieces together.

So the roadmap is something like this:

  1. patch PSP's sceGe module to redirect Texture memory/DrawList memory to shared Vita memory instead of GE's private memory
  2. port PPSSPP's GE implementation to Vita - this step will not include scaling for sake of simplicity
  3. add scaling to GE implementation once 2. works correctly.
Point 2. is the hardest one here, as some games are timing dependant and it will be tricky to get it right. PPSSPP contains lot of fixes for this, but Vita+ePSP is a bit different in this matter - 2 separate CPUs.

IridescentRose commented Apr 7, 2020
I'd be interested, but I don't have a Vita, nor the time with multiple projects. However, I am a PSP developer and kinda interested. Based on the data we have, couldn't we just stream GPU opcodes directly to a buffer in Vita memory and then implement an API based on that? That way you basically intercept the output to the GPU and just implement that (which you could do in PPSSPP or just roll-your-own) since the GPU opcodes are better documented: http://hitmen.c02.at/files/yapspd/psp_doc/chap11.html#sec11. If one did just write an interpreter on the Vita, then you wouldn't need the step 3 of scaling, since you'll use GXM anyways and draw and scale things similarly.

Tl;Dr:

1.) Divert GPU opcodes to vita memory (take the outgoing bus and push it to adrenaline) instead of dumping GE RAM
2.) Interpret GPU opcodes to GXM commands

robots commented Apr 7, 2020

So, since this corona stuff, work is being relaxed. I think i will have time to work on this.

I have created repository, and pushed all my stuff into that. I cannot push my notes there as they are in my head :-)

robots/Adrenaline@a0b1b68

Description:
psp part: this is copied and reworked uofw ge driver. All writes and reads from registers have been replaced by requests to vita.

https://github.com/robots/Adrenaline/blob/master/cef/systemctrl/ge-vita.c#L78

PSP ge driver is source:
https://github.com/uofw/uofw/tree/master/src/ge
with my additions (hopefully fixes):
https://github.com/uofw/uofw/pull/58/files

Since there is limited number of shared resources between vita and psp, we have to share. There is at least one messagebox free (KERMIT_MODE_EXTRA_1, adrenaline uses KERMIT_MODE_EXTRA_2). But these are no interrupts free. We will share the interrupt adrenaline uses. Adrenaline uses this only to signal save/load of state and memory card reinsert - these are very rare interrupts, thus Adrenaline will not mind sharing.

@NT-Bourgeois-Iridescence-Technologies it is not possible just to stream gpu data from psp. Gpu data is in ram that is not accessible from vita.

I patch the sceGeEdramGetAddr function to return address in vita's CDRAM (mapped into PSP's memory space) This way PSP game will write directly to shared memory. This makes it harder to have both gpu on vita, and ge on psp work at the same time (i would like to have switch, for games that are not yet compatible, but i am sure we can unpatch the ge driver or add some flag to select code.)
In psp code i think it misses just the hooking stuff (and the flag)

For the vita part, i have started to write the GE state machine in C. I use PPSSPP's gpu framework as source of ideas. But its like 2percent of work done.

The roadmap should be something like:

So what is needed is one PSP developer who knows psp hooking stuff to finish the ge driver.

https://github.com/vita-nuova/bounties/issues/5

More discussion:

https://old.reddit.com/r/vitahacks/comments/cjqdt3/vita_nuova_a_community_where_users_and_devs_can/
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    NinStar @ NinStar: It will actually make it worse