4.93 EVILNAT (Cobra 8.5)

PS3 4.93 Evilnat w/ Cobra v8.5 - (CEX/PEX/D-PEX) 4.93

It should work for either afaik. I never really tried Dex except for when we had to convert to play newer games back on 3.55 iirc, definitely a scary ordeal back then. It's not part of the advanced debug menu probably, since it's part of qa flagging. Enable the option, create a folder named updater on internal HDD root, create a 01 folder in updater, drop up to 20 updates in there. You can rename the pup files, even remove the pup extension. Then, update via system storage iirc through system update. It will have a star next to the option signifying a debug option.

@Kevstah2004 , above post. Sorry for double post. I didn't realize I wasn't replying.
 
Last edited by a moderator:
Now the xai plugin can be updated from internet with the update option, it exist a notification can be appear in the xmb to inform the user that an update can be installed ? Or with a automatic completely process without the intervention of the user ?
 
First of all - thanks for all the work!

Did I understand this correctly, that I can simply install the "PEX" version onto my CEX console so that I can switch CEX/DEX kernels - like it was possible back in the days using Rebug REX firmwares?
 
I've installed this version on a 2501B and it will not read any blue-ray disc but on OFW if has no issue I do not know how to troubleshoot this problem I have replaced the laser assumably not the problem it's the CFW
 
@Evilnat, all, good day, I don't know if I should write comments on xai_plugin here, so moderators, please move it to the right topic.
I would like to make a couple of comments on the code.
Why do you take the full file name with extension to find the iso decoding key? In your description you have an example of terraria.key,
but according to the code it reads terraria.iso.key
And why not add *.dkey support?
Something like this:
Code:
static unsigned char unhex(char h)
{
    return ((h & 0x0f) + (h >> 6) * 9);
}

static unsigned hex2bin(const char* hex, unsigned hlen, void* bin, unsigned blen)
{
    unsigned i, j;
    for (i = 0, j = 0; (i < blen) && (j + 1 < hlen); ++i, j += 2){
        unsigned char hi = unhex(hex[j + 0]);
        unsigned char lo = unhex(hex[j + 1]);
        ((unsigned char*)bin)[i] = (hi << 4) | lo;
    }
    return i;
}

int decryptEncryptedISO(const char *isoFile)
...

sprintf_(key_path, "%s.dkey", (int)isoFile_without_ext, NULL);
if (!cellFsOpen(key_path, CELL_FS_O_RDONLY, &keyfd, NULL, 0))
{
  cellFsRead(keyfd, hex, 32, &keynread);
  log("Found DiscKey %s\n", key_path);
  cellFsClose(keyfd);
  unsigned char bin[16];
  unsigned n = hex2bin(hex, sizeof(hex), bin, sizeof(bin));
}
...
 
Last edited:
I've installed this version on a 2501B and it will not read any blue-ray disc but on OFW if has no issue I do not know how to troubleshoot this problem I have replaced the laser assumably not the problem it's the CFW
Can you try the PUP I posted below to see if it works for you?

@Evilnat, all, good day, I don't know if I should write comments on xai_plugin here, so moderators, please move it to the right topic.
I would like to make a couple of comments on the code.
Why do you take the full file name with extension to find the iso decoding key? In your description you have an example of terraria.key,
but according to the code it reads terraria.iso.key
And why not add *.dkey support?
Something like this:
Code:
static unsigned char unhex(char h)
{
    return ((h & 0x0f) + (h >> 6) * 9);
}
static unsigned hex2bin(const char* hex, unsigned hlen, void* bin, unsigned blen)
{
    unsigned i, j;
    for (i = 0, j = 0; (i < blen) && (j + 1 < hlen); ++i, j += 2){
        unsigned char hi = unhex(hex[j + 0]);
        unsigned char lo = unhex(hex[j + 1]);
        ((unsigned char*)bin)[i] = (hi << 4) | lo;
    }
    return i;
}
int decryptEncryptedISO(const char *isoFile)
...
sprintf_(key_path, "%s.dkey", (int)isoFile_without_ext, NULL);
if (!cellFsOpen(key_path, CELL_FS_O_RDONLY, &keyfd, NULL, 0))
{
  cellFsRead(keyfd, hex, 32, &keynread);
  log("Found DiscKey %s\n", key_path);
  cellFsClose(keyfd);
  unsigned char bin[16];
  unsigned n = hex2bin(hex, sizeof(hex), bin, sizeof(bin));
}
...
For xai_plugin, that was the initial code for that function decryptEncryptedISO(), Cobra has support for ".key" and ".dkey", I will add support for ".dkey" in xai_plugin

About taking the full name with the extension, it is necessary to add the "key" extension and check if it can be opened, basically the key name is the full ISO name + key extension

@Evilnat i think i found a bug here. when console is improper shutdown the x o buttons when you enter checking storage are reversed. my ps3 is cecha. can someone try reproduce this issue
Thanks mate, I will take a look

I have created a new PUP called [stage0_2] with the following changes:
  • Reverted offset for stage0 in kernel
  • Added support for PS2CLASSICs on DEX
  • Recompiled Cobra files

I have tested it myself on my both PS3 FAT (NOR and NAND BC) and all worked as expected

If anyone who has issues with the final version tries this PUP and tells me if it works I will be very grateful

https://mega.nz/file/QclxlKbb#K7fhI3NusQqeqiYuQtFJv2gfRxQNzR8QmLFslMl1C6Y
 
Hi I have a SuperSlim, CECH - 4201B (noBT) I have tried to install all versions with that say (noBT). I got the error 8002F225 every time. Any tip? what should I do?
 
I have created a new PUP called [stage0_2] with the following changes:
  • Reverted offset for stage0 in kernel
  • Added support for PS2CLASSICs on DEX
  • Recompiled Cobra files

I have tested it myself on my both PS3 FAT (NOR and NAND BC) and all worked as expected

If anyone who has issues with the final version tries this PUP and tells me if it works I will be very grateful

https://mega.nz/file/QclxlKbb#K7fhI3NusQqeqiYuQtFJv2gfRxQNzR8QmLFslMl1C6Y
Is there anyone who has tested the PUP and fixed the bugs it had with the final version?
 
I had no problems with either one, i know me checking it dont really help as i was having no issues but i thought I'd check and it works same as final version for me mate
 
Back
Top