Editing Lv1.self
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 158: | Line 158: | ||
I did this script quickly to extract the embedded files within lv1. This script doesn't use the file table, is ugly, but works... anyone feel free to improve it --[[User:PsiCoLeO|PsiCoLeO]] 16:11, 22 May 2011 (CDT) | I did this script quickly to extract the embedded files within lv1. This script doesn't use the file table, is ugly, but works... anyone feel free to improve it --[[User:PsiCoLeO|PsiCoLeO]] 16:11, 22 May 2011 (CDT) | ||
How to use it | How to use it | ||
Line 181: | Line 179: | ||
#!/bin/bash | #!/bin/bash | ||
# PsiCoLeO 2011 | # PsiCoLeO 2011 | ||
# | # | ||
# Script to extract the embedded files from lv1.self | # Script to extract the embedded files from lv1.self | ||
# There is no warranty that this script will work for you | # There is no warranty that this script will work for you | ||
# I can not be held | # I can not be held responsable of what you do with this script or any damage you get from using it | ||
# Use it as you please | # Use it as you please | ||
# File names | # File names | ||
files=( "pme_init" "sysmgr_ss.fself" "pme_init.conf" "ss_init.fself" "updater_frontend.fself" "ss_server1.fself" "ss_server2.fself" "ss_server3.fself" ) | files=( "pme_init" "sysmgr_ss.fself" "pme_init.conf" "ss_init.fself" "updater_frontend.fself" "ss_server1.fself" "ss_server2.fself" "ss_server3.fself" ) | ||
#comment and uncomment file sizes and offsets depending on the firmware | #comment and uncomment file sizes and offsets depending on the firmware | ||
# File sizes 3.41 | # File sizes 3.41 | ||
size=( 0x24824 0x5f790 0xAF 0x34eb8 0x239F0 0x811D0 0x4A940 0x38ED0 ) | |||
# File offsets 3.41 | # File offsets 3.41 | ||
offset=( 0x1D00E8 0x1F490C 0x25409C 0x25414C 0x289004 0x2AC9F4 0x32DBC4 0x378504 ) | |||
# File sizes 3.55 | # File sizes 3.55 | ||
#size=( 0x24824 0x5f790 0xAF 0x34EB8 0x239F0 0x813B8 0x4A940 0x38ED0 ) | #size=( 0x24824 0x5f790 0xAF 0x34EB8 0x239F0 0x813B8 0x4A940 0x38ED0 ) | ||
# File offsets 3.55 | # File offsets 3.55 | ||
#offset=( 0x1D00E8 0x1F490C 0x25409C 0x25414C 0x289004 0x2AC9F4 0x32DDAC 0x3786EC ) | #offset=( 0x1D00E8 0x1F490C 0x25409C 0x25414C 0x289004 0x2AC9F4 0x32DDAC 0x3786EC ) | ||
cont=0 | cont=0 | ||
printf "***************************** \n" | printf "***************************** \n" | ||
printf "* Psicoleo's * \n" | printf "* Psicoleo's * \n" | ||
printf "* Dump lv1 Embedded files | printf "* Dump lv1 Embedded files * \n" | ||
printf "***************************** \n\n" | printf "***************************** \n\n" | ||
for file in "${files[@]}" | for file in "${files[@]}" | ||
do | do | ||
Line 241: | Line 214: | ||
printf " %s\n" "${file}" | printf " %s\n" "${file}" | ||
printf "***************************** \n\n" | printf "***************************** \n\n" | ||
printf "%s\n" "${offset[$cont]}" | |||
printf "%s\n" "${size[$cont]}" | |||
printf "%s\n" "${cont}" | |||
dd if=$1 of=$file bs=1 obs=1 skip=$((${offset[$cont]})) count=$((${size[$cont]})) | |||
cont=$(($cont+1)) | |||
done | done | ||
</source> | </source> |