Change combination - pyroesp/PlayStation-1-Reset-Mod GitHub Wiki
This section of the wiki is for people that own a Microchip PIC microcontroller programmer.
For this you'll need the source code to the mod and MPLAB X IDE with the XC8 compiler (free version).
MPLAB X IDE project
When opening the IDE, create a new project selecting the PIC16F18325 and the XC8 compiler.
Add the source code of the mod to the project as the main file.
See the following section on how to change the reset combination.
Once that's done, just compile the source code. This will create a hex file where the project has been saved.
*Note: If the mod is already installed in the PlayStation, I do recommend disconnecting the 3.5V.
This it to prevent the motherboard from being powered by the programmer during flashing of the firmware.
Use that hex file to flash the PIC microcontroller on the mod.
Changing combination
Find these two definitions in the source code:
/* Key Combo */
#define KEY_COMBO_CTRL 0xFCF6 // select-start-L2-R2 1111 1100 1111 0110
#define KEY_COMBO_GUNCON 0x9FF7 // A-trigger-B 1001 1111 1111 0111
If you want to change your combination, you'll have to change those defines.
A pressed button returns 0 and all controllers send a 16 bit value for their switch status.
The switch status bits are defined as follows:
Button | Bit |
---|---|
SELECT | 0 |
L3 | 1 |
R3 | 2 |
START | 3 |
UP | 4 |
RIGHT | 5 |
DOWN | 6 |
LEFT | 7 |
L2 | 8 |
R2 | 9 |
L1 | 10 |
R1 | 11 |
TRIANGLE | 12 |
CIRCLE | 13 |
CROSS | 14 |
SQUARE | 15 |
The GUNCON buttons are:
- A = START
- Trigger = CIRCLE
- B = CROSS
So let's say you want to reset by pressing L1, L2, R1 and R2.
You'll need to change the value of KEY_COMBO_CTRL to 0x0FFF, or in binary 0000 1111 1111 1111.