Advertising (This ad goes away for registered users. You can Login or Register)

Finally... some Christmas cheer!

Open discussions on programming specifically for the PS Vita.
Forum rules
Forum rule Nº 15 is strictly enforced in this subforum.
spewfr
Posts: 48
Joined: Thu Feb 23, 2012 8:33 pm

Re: Finally... some Christmas cheer!

Post by spewfr » Mon Jan 26, 2015 5:03 pm

That is... wonderful. You guys really have outdone yourselves. Congratulations to all you've done for this scene :)
Edit: I got TDU and Worms to work. Dunno about other games. Pilot Academy and other games did not work.
Advertising

Hykem
Guru
Posts: 75
Joined: Sat Jan 15, 2011 8:11 pm

Re: Finally... some Christmas cheer!

Post by Hykem » Mon Jan 26, 2015 6:10 pm

Had to push v1.0.4 since I missed a very important change in the last commit. The new EBOOT.BIN tags couldn't be selected since sign_np was still restricting them to only 11 tags.
Belmondo wrote: Cool thanks Hykem :).. I got lost replacing the kirk engine from fake_np with your libkirk.. it did something weird with sceDrmBBC and started failing on the NP Header MAC when running fake_np.

I meant use the full base like fake_np.. not just modifying/ecdsa NPUMDIMG header :)

I also noticed some games have different flags.. Gungnir and Space Invaders Extreme have NPUMDIMG flag 03 instead of 02 resigning these with version key just returns error when launching under TNV.
Ah yes, those games are for PSP right? PSP games normally use the 03 flag instead of the 02.

On a side note, if you have a blacklisted game installed, that won't work as base. The Vita will refuse to load anything that has it's content ID or version key.
Also, it's quite possible that some games can't be used properly as "base" due to the OPNSSMP module.
To test this, grab the base game's EBOOT.PBP and open it up in an hex editor. Search for a "PGD" string which will be the encrypted OPNSSMP module.
You can now copy the full PGD image (starts with the PGD magic and finishes right before some NULL padding) to a new binary file and decrypt it with pgdecrypt by tpunix.
It should give you a "~PSP" module that you can now include in your new image.
To do this just call sign_np as:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN
The module will be re-encrypted with the new version key and will be loaded by the pspemu.

Also, you can include your own custom boot screen by doing something similar:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] STARTDAT.PNG
Or even include both OPNSSMP and boot screen files at once:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN  STARTDAT.PNG
Advertising

User avatar
The Z
VIP
Posts: 5505
Joined: Thu Jan 27, 2011 4:26 pm
Location: Deutschland
Contact:

Re: Finally... some Christmas cheer!

Post by The Z » Mon Jan 26, 2015 6:14 pm

Hykem wrote:[spoiler]Had to push v1.0.4 since I missed a very important change in the last commit. The new EBOOT.BIN tags couldn't be selected since sign_np was still restricting them to only 11 tags.
Belmondo wrote: Cool thanks Hykem :).. I got lost replacing the kirk engine from fake_np with your libkirk.. it did something weird with sceDrmBBC and started failing on the NP Header MAC when running fake_np.

I meant use the full base like fake_np.. not just modifying/ecdsa NPUMDIMG header :)

I also noticed some games have different flags.. Gungnir and Space Invaders Extreme have NPUMDIMG flag 03 instead of 02 resigning these with version key just returns error when launching under TNV.
Ah yes, those games are for PSP right? PSP games normally use the 03 flag instead of the 02.

On a side note, if you have a blacklisted game installed, that won't work as base. The Vita will refuse to load anything that has it's content ID or version key.
Also, it's quite possible that some games can't be used properly as "base" due to the OPNSSMP module.
To test this, grab the base game's EBOOT.PBP and open it up in an hex editor. Search for a "PGD" string which will be the encrypted OPNSSMP module.
You can now copy the full PGD image (starts with the PGD magic and finishes right before some NULL padding) to a new binary file and decrypt it with pgdecrypt by tpunix.
It should give you a "~PSP" module that you can now include in your new image.
To do this just call sign_np as:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN
The module will be re-encrypted with the new version key and will be loaded by the pspemu.

Also, you can include your own custom boot screen by doing something similar:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] STARTDAT.PNG
Or even include both OPNSSMP and boot screen files at once:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN  STARTDAT.PNG
[/spoiler]
I have a question Hykem. Would it be possible to include the version key as "version_key.bin" instead of its HEX value, like it is possible with the OPNSSMP.BIN (I assume)?

That would make things a lot easier.

Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
White PSV TV - 32GB - 3.65 CFW
White PSV 1000 - 32GB - 3.65 CFW
2x PSV 2000 - 32/64GB - 3.65 CFW
PSP Fat 1000 - TA-081 - 6.61 ME-2.3
PSP Slim 2000 - TA-085¹ - 6.61 ME-2.3
4x PSPgo & 1x PSP 3kº⁴ᶢ - 6.61 LME-2.3∞

Belmondo
Posts: 102
Joined: Sat Jan 01, 2011 6:32 pm

Re: Finally... some Christmas cheer!

Post by Belmondo » Mon Jan 26, 2015 6:24 pm

Hykem wrote: Ah yes, those games are for PSP right? PSP games normally use the 03 flag instead of the 02.
they are psp games but run on the vita.

spewfr
Posts: 48
Joined: Thu Feb 23, 2012 8:33 pm

Re: Finally... some Christmas cheer!

Post by spewfr » Mon Jan 26, 2015 6:27 pm

The Z wrote:
Hykem wrote:[spoiler]Had to push v1.0.4 since I missed a very important change in the last commit. The new EBOOT.BIN tags couldn't be selected since sign_np was still restricting them to only 11 tags.
Belmondo wrote: Cool thanks Hykem :).. I got lost replacing the kirk engine from fake_np with your libkirk.. it did something weird with sceDrmBBC and started failing on the NP Header MAC when running fake_np.

I meant use the full base like fake_np.. not just modifying/ecdsa NPUMDIMG header :)

I also noticed some games have different flags.. Gungnir and Space Invaders Extreme have NPUMDIMG flag 03 instead of 02 resigning these with version key just returns error when launching under TNV.
Ah yes, those games are for PSP right? PSP games normally use the 03 flag instead of the 02.

On a side note, if you have a blacklisted game installed, that won't work as base. The Vita will refuse to load anything that has it's content ID or version key.
Also, it's quite possible that some games can't be used properly as "base" due to the OPNSSMP module.
To test this, grab the base game's EBOOT.PBP and open it up in an hex editor. Search for a "PGD" string which will be the encrypted OPNSSMP module.
You can now copy the full PGD image (starts with the PGD magic and finishes right before some NULL padding) to a new binary file and decrypt it with pgdecrypt by tpunix.
It should give you a "~PSP" module that you can now include in your new image.
To do this just call sign_np as:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN
The module will be re-encrypted with the new version key and will be loaded by the pspemu.

Also, you can include your own custom boot screen by doing something similar:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] STARTDAT.PNG
Or even include both OPNSSMP and boot screen files at once:

Code: Select all

sign_np -pbp NP.ISO EBOOT.PBP [CONTENT ID] [VERSION KEY] OPNSSMP.BIN  STARTDAT.PNG
[/spoiler]
Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
Yes, sorta like the PS1 boot screen for every PS1 game, or the PS3's Motion Warnings screen for games involving the move handset :) 480x272
is correct

Belmondo
Posts: 102
Joined: Sat Jan 01, 2011 6:32 pm

Re: Finally... some Christmas cheer!

Post by Belmondo » Tue Jan 27, 2015 7:00 am

The Z wrote: Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
Yea 480x272. here's one I pulled from Gungnir.
Attachments
STARTDAT.PNG
STARTDAT.PNG (6.02 KiB) Viewed 3409 times

Belmondo
Posts: 102
Joined: Sat Jan 01, 2011 6:32 pm

Re: Finally... some Christmas cheer!

Post by Belmondo » Tue Jan 27, 2015 7:10 am

Hykem wrote: Ah yes, those games are for PSP right? PSP games normally use the 03 flag instead of the 02.
With Gungnir I pulled out the OPNSSMP.BIN and STARTDAT.PNG

sign_np.exe -pbp ACID.iso EBOOT2.PBP EP0005-NPEH00135_00-DPTHEAVENGUNGNIR 75F587CAA5DF75A75F07ED3B8E7F5C05 OPNSSMP.BIN STARTDAT.PNG

When running the game the STARTDAT appears and then 80010087 error when running under TNV..

The only thing i can think of that it could be is with the 03 from the original game.

Code: Select all

4E50554D44494D470300000010000000 NPUMDIMG
4550303030352D4E5045483030313335 EP0005-NPEH00135
5F30302D44505448454156454E47554E _00-DPTHEAVENGUN
474E4952000000000000000000000000 GNIR

instead of the 02 which sign_np creates.
4E50554D44494D470200000010000000

Hykem
Guru
Posts: 75
Joined: Sat Jan 15, 2011 8:11 pm

Re: Finally... some Christmas cheer!

Post by Hykem » Tue Jan 27, 2015 10:14 am

The Z wrote:I have a question Hykem. Would it be possible to include the version key as "version_key.bin" instead of its HEX value, like it is possible with the OPNSSMP.BIN (I assume)?

That would make things a lot easier.

Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
Sure, I'll add that on the next commit. :)
Yes, the custom boot screen is the warning screen (480x272), just like Belmondo posted.
Belmondo wrote: With Gungnir I pulled out the OPNSSMP.BIN and STARTDAT.PNG

sign_np.exe -pbp ACID.iso EBOOT2.PBP EP0005-NPEH00135_00-DPTHEAVENGUNGNIR 75F587CAA5DF75A75F07ED3B8E7F5C05 OPNSSMP.BIN STARTDAT.PNG

When running the game the STARTDAT appears and then 80010087 error when running under TNV..

The only thing i can think of that it could be is with the 03 from the original game.

Code: Select all

4E50554D44494D470300000010000000 NPUMDIMG
4550303030352D4E5045483030313335 EP0005-NPEH00135
5F30302D44505448454156454E47554E _00-DPTHEAVENGUN
474E4952000000000000000000000000 GNIR

instead of the 02 which sign_np creates.
4E50554D44494D470200000010000000
Hmm, this is one of those special cases I've seen before.
The np_flags can be described as:

Code: Select all

01 00 00 00 -> License is bound to Memory Stick and uses Version Key
01 00 00 01 -> License is bound to Memory Stick and uses Fixed Key
02 00 00 00 -> License is bound to Network and uses Version Key
02 00 00 01 -> License is bound to Network and uses Fixed Key
03 00 00 00 -> License is bound to the file itself and uses Version Key
03 00 00 01 -> License is bound to the file itself and uses Fixed Key
The Memory Stick ones are never used (only present in the PSP's kernel code).
Normally the 03 flag, which binds the license to the file itself, uses the Fixed Key in the PSP, but I've seen a few games that use the Version Key instead.
I still need to figure out what is the meaning of this in the Vita itself, but it's very likely that those games don't work due to the flags indeed.

User avatar
The Z
VIP
Posts: 5505
Joined: Thu Jan 27, 2011 4:26 pm
Location: Deutschland
Contact:

Re: Finally... some Christmas cheer!

Post by The Z » Tue Jan 27, 2015 11:20 am

Belmondo wrote:
The Z wrote: Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
Yea 480x272. here's one I pulled from Gungnir.
Yea, I got it. I found the douchiest picture I had from 5 years ago and used it. It worked :P
White PSV TV - 32GB - 3.65 CFW
White PSV 1000 - 32GB - 3.65 CFW
2x PSV 2000 - 32/64GB - 3.65 CFW
PSP Fat 1000 - TA-081 - 6.61 ME-2.3
PSP Slim 2000 - TA-085¹ - 6.61 ME-2.3
4x PSPgo & 1x PSP 3kº⁴ᶢ - 6.61 LME-2.3∞

Mrgreezy3
Posts: 176
Joined: Sat Apr 21, 2012 1:01 pm

Re: Finally... some Christmas cheer!

Post by Mrgreezy3 » Tue Jan 27, 2015 2:39 pm

Belmondo wrote:
The Z wrote: Custom boot screen = Health warning screen / minis screen / et cetera? What size would that PNG be? 480x272?
Yea 480x272. here's one I pulled from Gungnir.
So when will the Z be releasing the tutorial on how to do this ..... ?
and where did you get the startdat.png i dont see it anywhere in any eboots i have of my psn games

Post Reply

Return to “Programming and Security”