Skip to content

Commit 4f79fb8

Browse files
committed
Initial commit
0 parents  commit 4f79fb8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+11794
-0
lines changed

Diff for: .gitattributes

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

Diff for: ChangeLog.txt

+115
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
v0.88
2+
-Add : Support IDPS from latest ps3 models
3+
-Add : Dupport fw to dump the eid_root_key
4+
5+
v0.87
6+
-Added : fw independant
7+
-Added : root key dumper 4.75D (thanks to Joonie who ported it)
8+
-Added : more message in the log to be more aware of what's going on and also to allow me to know precisly what's causing some 'random' freeze (thanks to your feedbacks ofc)
9+
10+
Note :
11+
-The root key dumper and Converter are not fw indepedant
12+
-We can't write PSP IDPS in the EID0 without bricking the system.
13+
14+
v0.86
15+
-fix : no more freeze when you dump your key for firmware under 4.65.
16+
17+
v0.85
18+
-Added: Background image (a PNG is: /USRDIR/BG.PNG)
19+
-Added: Homebrew support fw 4.70 and 4.75
20+
-Added: The root key dumper support fw 4.70C, 4.70D and 4.75
21+
22+
v0.84
23+
-Added : Swap of "software_update_plugin.sprx"
24+
25+
v0.83
26+
Fix : No more freeze when making CEX&DEX dumps with a DEX system
27+
28+
v0.80
29+
-fix : The dumps no longer have the attribute "system"
30+
31+
v0.79
32+
-fix : Les fichiers n'ont plus l'attribut "system"
33+
-fix : bug d'affichage sur la bar de progression
34+
35+
v0.78
36+
-fix : changement de "/dev_hdd0/temp/eid_root_key" � "/dev_hdd0/tmp/eid_root_key"
37+
-fix exit freeze : Ajout du d�chargement des modules � la sortis de l'homebrew
38+
39+
v0.76
40+
_fix : correction d'une coquille sur l'affichage d'un des messages lors du "make dump"
41+
_Add : Ajout de la version dans le TITLE du param.sfo
42+
43+
v0.75
44+
-fix freeze : lors dump root_key
45+
-Add : root key sauvegarder � "/dev_usb000/eid_root_key" sinon "/dev_hdd0/tmp/eid_root_key"
46+
-Add : Ajout d'une barre de progression pour les copies de fichiers
47+
48+
v0.70
49+
-Add : nouveau GUI
50+
-Removed : tout ce qui est en rapport avec le PSID
51+
-Removed : "save/load from/to file
52+
-Add : "dump eid_root_key"
53+
-Add : "Convert to DEX/CEX"
54+
-Add : "Make CEX/DEX dumps" est plus rapide
55+
56+
v0.63
57+
Add : compatible fw 4.65
58+
59+
v0.62
60+
-Fix : ptit bug
61+
62+
v0.61
63+
-Fix : le nom des dumps. Le dump dex s'appelais CEX-FLASH... et le dump cex s'appelais DEX-FLASH... tssss.
64+
65+
v0.6
66+
-Add : changement d'idps dans la section 6 de l'eid0
67+
-Change : nom "IDPS tool" � "IDPSet"
68+
-Change : ICON0
69+
-Add : �criture des dump DEX/CEX dans la cl� USB
70+
71+
v0.5
72+
-Add : "Load IDPS from EID0"
73+
-Add : "Save PSID to EID0"
74+
75+
v0.43
76+
-add : Menu
77+
-Add : changement PSID lv2 via fichier .bin
78+
79+
v0.41
80+
-Fix : petit bug
81+
82+
v0.40
83+
-Removed : offset idps "fixe" donc c'est maintenant compatible avec tout les firmware y compris les futurs fw
84+
-Add : Dump CEX/DEX
85+
-Add : ICON0 anim�s <3
86+
-Removed : "Convert DEX/CEX" pour + de securit� car switch kernel est necessaire
87+
88+
v0.34
89+
-Fix : petit bug
90+
91+
v0.33
92+
-Add : changement d'idps dans l'eid5
93+
94+
v0.32
95+
-Add : "load original idps from EID5"
96+
-Add : "Convert to DEX/CEX"
97+
-fix : petit bug
98+
99+
v0.31
100+
-Add : "Change IDPS in EDI0" compatible avec les NAND et NOR
101+
102+
v0.3
103+
-Add : "Change IDPS in EID0" compatible uniquement pour le NOR
104+
105+
v0.22
106+
-Add : 3eme offset de l'IDPS
107+
108+
v0.21
109+
-Add : "Save et load idps"
110+
111+
v0.2
112+
-Add : Curseur pour modifi� l'IDPS
113+
114+
v0.1
115+
-version initiale

Diff for: Makefile

+194
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,194 @@
1+
#---------------------------------------------------------------------------------
2+
# Clear the implicit built in rules
3+
#---------------------------------------------------------------------------------
4+
.SUFFIXES:
5+
#---------------------------------------------------------------------------------
6+
ifeq ($(strip $(PSL1GHT)),)
7+
$(error "Please set PSL1GHT in your environment. export PSL1GHT=<path>")
8+
endif
9+
10+
include $(PSL1GHT)/ppu_rules
11+
12+
#---------------------------------------------------------------------------------
13+
# TARGET is the name of the output
14+
# BUILD is the directory where object files & intermediate files will be placed
15+
# SOURCES is a list of directories containing source code
16+
# INCLUDES is a list of directories containing extra header files
17+
#---------------------------------------------------------------------------------
18+
VERSION := 0.88
19+
NAME := IDPSet
20+
21+
TARGET := $(NAME)_v$(VERSION)
22+
BUILD := build
23+
SOURCES := source
24+
DATA := data
25+
INCLUDES := include
26+
PKGFILES := $(CURDIR)/pkgfiles
27+
28+
TITLE := IDPSet $(VERSION)
29+
APPID := IDPSET000
30+
CONTENTID := EP0001-$(APPID)_00-0000000000000000
31+
32+
ifeq ($(RPCS3), 1)
33+
MACHDEP = -DRPCS3
34+
endif
35+
36+
SCETOOL_FLAGS += --self-ctrl-flags 4000000000000000000000000000000000000000000000000000000000000002
37+
SCETOOL_FLAGS += --self-cap-flags 00000000000000000000000000000000000000000000007B0000000100000000
38+
39+
#---------------------------------------------------------------------------------
40+
# options for code generation
41+
#---------------------------------------------------------------------------------
42+
43+
CFLAGS = -O2 -Wall -mcpu=cell $(MACHDEP) $(INCLUDE)
44+
CXXFLAGS = $(CFLAGS)
45+
46+
LDFLAGS = $(MACHDEP) -Wl,-Map,$(notdir $@).map
47+
48+
#---------------------------------------------------------------------------------
49+
# any extra libraries we wish to link with the project
50+
#---------------------------------------------------------------------------------
51+
LIBS := -ltiny3d -lsysmodule -lgcm_sys -lrsx -lsysutil -lio -lm -lpngdec -lfreetype -lz
52+
53+
#---------------------------------------------------------------------------------
54+
# list of directories containing libraries, this must be the top level containing
55+
# include and lib
56+
#---------------------------------------------------------------------------------
57+
LIBDIRS := $(PORTLIBS)
58+
59+
#---------------------------------------------------------------------------------
60+
# no real need to edit anything past this point unless you need to add additional
61+
# rules for different file extensions
62+
#---------------------------------------------------------------------------------
63+
ifneq ($(BUILD),$(notdir $(CURDIR)))
64+
#---------------------------------------------------------------------------------
65+
66+
export OUTPUT := $(CURDIR)/$(TARGET)
67+
68+
export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
69+
$(foreach dir,$(DATA),$(CURDIR)/$(dir))
70+
71+
export DEPSDIR := $(CURDIR)/$(BUILD)
72+
73+
export BUILDDIR := $(CURDIR)/$(BUILD)
74+
75+
#---------------------------------------------------------------------------------
76+
# automatically build a list of object files for our project
77+
#---------------------------------------------------------------------------------
78+
CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
79+
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
80+
sFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
81+
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S)))
82+
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.bin)))
83+
PNGFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.png)))
84+
JPGFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.jpg)))
85+
TTFFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.ttf)))
86+
VCGFILES := $(foreach dir,$(SHADERS),$(notdir $(wildcard $(dir)/*.vcg)))
87+
FCGFILES := $(foreach dir,$(SHADERS),$(notdir $(wildcard $(dir)/*.fcg)))
88+
89+
#---------------------------------------------------------------------------------
90+
# use CXX for linking C++ projects, CC for standard C
91+
#---------------------------------------------------------------------------------
92+
ifeq ($(strip $(CPPFILES)),)
93+
export LD := $(CC)
94+
else
95+
export LD := $(CXX)
96+
endif
97+
98+
export OFILES := $(addsuffix .o,$(BINFILES)) \
99+
$(addsuffix .o,$(TTFFILES)) \
100+
$(addsuffix .o,$(VPOFILES)) \
101+
$(addsuffix .o,$(FPOFILES)) \
102+
$(addsuffix .o,$(PNGFILES)) \
103+
$(addsuffix .o,$(JPGFILES)) \
104+
$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \
105+
$(sFILES:.s=.o) $(SFILES:.S=.o)
106+
107+
#---------------------------------------------------------------------------------
108+
# build a list of include paths
109+
#---------------------------------------------------------------------------------
110+
export INCLUDE := -I$(PORTLIBS)/include/freetype2 \
111+
$(foreach dir,$(INCLUDES), -I$(CURDIR)/$(dir)) \
112+
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
113+
$(LIBPSL1GHT_INC) \
114+
-I$(CURDIR)/$(BUILD)
115+
116+
#---------------------------------------------------------------------------------
117+
# build a list of library paths
118+
#---------------------------------------------------------------------------------
119+
export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \
120+
$(LIBPSL1GHT_LIB)
121+
122+
export OUTPUT := $(CURDIR)/$(TARGET)
123+
.PHONY: $(BUILD) clean
124+
125+
#---------------------------------------------------------------------------------
126+
$(BUILD):
127+
@[ -d $@ ] || mkdir -p $@
128+
@$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
129+
130+
#---------------------------------------------------------------------------------
131+
clean:
132+
@echo clean ...
133+
@rm -fr $(BUILD) *.elf *.self *.pkg
134+
135+
#---------------------------------------------------------------------------------
136+
run:
137+
ps3load $(OUTPUT).self
138+
139+
#---------------------------------------------------------------------------------
140+
pkg: $(BUILD) $(OUTPUT).pkg
141+
142+
#---------------------------------------------------------------------------------
143+
else
144+
145+
DEPENDS := $(OFILES:.o=.d)
146+
147+
#---------------------------------------------------------------------------------
148+
# main targets
149+
#---------------------------------------------------------------------------------
150+
$(OUTPUT).self: $(OUTPUT).elf
151+
$(OUTPUT).elf: $(OFILES)
152+
153+
#---------------------------------------------------------------------------------
154+
# This rule links in binary data with the .bin extension
155+
#---------------------------------------------------------------------------------
156+
%.bin.o : %.bin
157+
#---------------------------------------------------------------------------------
158+
@echo $(notdir $<)
159+
@$(bin2o)
160+
161+
#---------------------------------------------------------------------------------
162+
%.ttf.o : %.ttf
163+
#---------------------------------------------------------------------------------
164+
@echo $(notdir $<)
165+
@$(bin2o)
166+
167+
#---------------------------------------------------------------------------------
168+
%.vpo.o : %.vpo
169+
#---------------------------------------------------------------------------------
170+
@echo $(notdir $<)
171+
@$(bin2o)
172+
173+
#---------------------------------------------------------------------------------
174+
%.fpo.o : %.fpo
175+
#---------------------------------------------------------------------------------
176+
@echo $(notdir $<)
177+
@$(bin2o)
178+
179+
#---------------------------------------------------------------------------------
180+
%.jpg.o : %.jpg
181+
#---------------------------------------------------------------------------------
182+
@echo $(notdir $<)
183+
@$(bin2o)
184+
#---------------------------------------------------------------------------------
185+
%.png.o : %.png
186+
#---------------------------------------------------------------------------------
187+
@echo $(notdir $<)
188+
@$(bin2o)
189+
190+
-include $(DEPENDS)
191+
192+
#---------------------------------------------------------------------------------
193+
endif
194+
#---------------------------------------------------------------------------------

Diff for: data/NOT_PNG.bin

2.49 KB
Binary file not shown.

Diff for: data/payload_421C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_421D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_430C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_430D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_431C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_440C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_441C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_441D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_446C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_446D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_450C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_450D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_453C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_453D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_455C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_455D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_460C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_465C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_465D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_470C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_470D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_475C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_475D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_476C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_476D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_478C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_478D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_480C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_480D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_481C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_481D.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_482C.bin

10.7 KB
Binary file not shown.

Diff for: data/payload_482D.bin

10.7 KB
Binary file not shown.

Diff for: payload/source/Makefile

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
CC := ppu-gcc
2+
OBJCOPY := ppu-objcopy
3+
4+
TARGET = payload
5+
6+
CFLAGS = -std=c99 -m64 -fno-builtin -fno-exceptions -fdata-sections -ffunction-sections -Os -Wno-strict-aliasing -Wno-multichar -Wall -I.
7+
ifeq ($(BUILD_TYPE),debug)
8+
CFLAGS += -DDEBUG
9+
endif
10+
CFLAGS += -D__STDC_FORMAT_MACROS
11+
ASFLAGS = -m64 -Os -Wall -I.
12+
ASFLAGS += -D__ASSEMBLY__
13+
ifeq ($(BUILD_TYPE),debug)
14+
ASFLAGS += -DDEBUG
15+
endif
16+
LDFLAGS = -Tldscript.ld -nostartfiles -nostdlib -nodefaultlibs -Wl,--gc-sections -Wl,-Map=$(TARGET)_$@.map
17+
18+
PAYLOADS := 421C 421D 430C 430D 431C 440C 441C 441D 446C 446D 450C 450D 453C 453D 455C 455D 460C \
19+
465C 465D 470C 470D 475C 475D 476C 476D 478C 478D 480C 480D 481C 481D 482C 482D
20+
21+
define do_payload
22+
$(CC) $(ASFLAGS) -DFIRMWARE_$@ -c start.S -o start.S.o
23+
$(CC) $(ASFLAGS) -DFIRMWARE_$@ -c kernel.S -o kernel.S.o
24+
$(CC) $(ASFLAGS) -DFIRMWARE_$@ -c hypervisor.S -o hypervisor.S.o
25+
$(CC) $(ASFLAGS) -DFIRMWARE_$@ -c syscalls.S -o syscalls.S.o
26+
$(CC) $(ASFLAGS) -DFIRMWARE_$@ -c util.S -o util.S.o
27+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c main.c -o main.c.o
28+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c device.c -o device.c.o
29+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c network.c -o network.c.o
30+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c mm.c -o mm.c.o
31+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c kernel.c -o kernel.c.o
32+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c hypervisor.c -o hypervisor.c.o
33+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c spu.c -o spu.c.o
34+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c debug.c -o debug.c.o
35+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c util.c -o util.c.o
36+
$(CC) $(CFLAGS) -DFIRMWARE_$@ -c dumper.c -o dumper.c.o
37+
$(CC) $(LDFLAGS) -L. -o $(TARGET)_$@.elf start.S.o kernel.S.o hypervisor.S.o syscalls.S.o util.S.o main.c.o device.c.o network.c.o mm.c.o kernel.c.o hypervisor.c.o spu.c.o debug.c.o util.c.o dumper.c.o
38+
$(OBJCOPY) -O binary $(TARGET)_$@.elf $(TARGET)_$@.bin
39+
mv -f $(TARGET)_$@.bin ../../data/$(TARGET)_$@.bin
40+
rm -f *.o *.elf *.bin *.map
41+
endef
42+
43+
44+
all: $(PAYLOADS)
45+
46+
$(PAYLOADS):
47+
$(do_payload)
48+
@echo ----------------------------------------------------------------
49+
50+
clean:
51+
rm -f *.o *.elf *.bin *.map

Diff for: payload/source/asm.h

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#ifndef __ASM_H__
2+
#define __ASM_H__
3+
4+
#include "macros.h"
5+
6+
#define GLOBAL(name) \
7+
.section .text, "ax"; \
8+
.align 2; \
9+
.global .name; \
10+
.type .name, @function; \
11+
.name: \
12+
13+
#endif

0 commit comments

Comments
 (0)