KLICENSE="e4e54fd67c16c316f47829a30484d843"
PS2CLASSIC=$PWD/ps2classic/ps2classic
PSNPACKAGE=$PWD/psn_package_npdrm/psn_package_npdrm
-# FAT SLIM SUPER ULTRA
-MODEL="ULTRA"
+# HAN HEN
+MODEL="HEN"
# formating functions
-function title () { echo -e "\033[0;1m$*\033[0;0m"; }
+function title () { echo -e "\033[0;1m=== $* ===\033[0;0m"; }
function pass () { echo -e "\033[1;32m$*\033[0;0m"; }
function warn () { echo -e "\033[1;33m$*\033[0;0m"; }
function fail () { echo -e "\033[1;31m$*\033[0;0m"; exit 1; }
# init
file="$1"
+[ -f "$file" ] || fail "can't find file"
+file "$file" | grep -q UDF || fail "file is not an UDF iso"
# get serial
serial=$(isoinfo -f -i "$file" | \
}
# get game title
-[ -f PS2-GAMEID-TITLE-MASTER.csv ] || wget https://raw.githubusercontent.com/VTSTech/PS2-OPL-CFG/master/test/PS2-GAMEID-TITLE-MASTER.csv
-title=$(awk -F\; '"'$serial'" == $1 {print $2}' PS2-GAMEID-TITLE-MASTER.csv)
+[ -f "$CACHE/PS2-GAMEID-TITLE-MASTER.csv" ] || ( cd "$CACHE"; wget https://raw.githubusercontent.com/VTSTech/PS2-OPL-CFG/master/test/PS2-GAMEID-TITLE-MASTER.csv )
+title=$(awk -F\; '"'$serial'" == $1 {print $2}' "$CACHE/PS2-GAMEID-TITLE-MASTER.csv")
[ "$title" ] || title=$(basename "$file" | sed 's/ *(.*//')
# create CID
# install skeleton
title "install skeleton"
mkdir $serial
-tar -C $serial -xzf skeleton.tgz
-[ -d $CACHE ] || mkdir $CACHE
+tar -C $serial -xzf $PWD/skeleton.tgz
+[ -d "$CACHE" ] || mkdir "$CACHE"
# images:
# - ICON0.PNG 320x176
# get cover image
title "get cover image"
-if [ -f $CACHE/$serial-ICON0.PNG ]; then
- cp $CACHE/$serial-ICON0.PNG $serial/ICON0.PNG
+if [ -f "$CACHE/$serial-ICON0.PNG" ]; then
+ cp "$CACHE/$serial-ICON0.PNG" $serial/ICON0.PNG
else
wget https://psxdatacenter.com/psx2/images2/covers/$serial.jpg
if [ -f $serial.jpg ]; then
mogrify -background transparent -gravity center -extent 320x176 tmp.png
mv tmp.png $serial/ICON0.PNG
rm $serial.jpg
- cp $serial/ICON0.PNG $CACHE/$serial-ICON0.PNG
+ cp $serial/ICON0.PNG "$CACHE/$serial-ICON0.PNG"
else
warn "can't find cover"
fi
# get screenshot
title "get screenshot"
-if [ $CACHE/$serial-PIC0.PNG ]; then
- cp $CACHE/$serial-PIC0.PNG $serial/PIC0.PNG
+if [ -f "$CACHE/$serial-PIC0.PNG" ]; then
+ cp "$CACHE/$serial-PIC0.PNG" $serial/PIC0.PNG
else
touch .touch
find $HOME/.config/PCSX2/snaps/ -type f | xargs rm .touch
mogrify -scale 1000x560 tmp.png
mogrify -background transparent -gravity center -extent 1000x560 tmp.png
mv tmp.png $serial/PIC0.PNG
- cp $serial/PIC0.PNG $CACHE/$serial-PIC0.PNG
+ cp $serial/PIC0.PNG "$CACHE/$serial-PIC0.PNG"
else
warn "can't find screenshot"
fi
# find config file
title "find config file"
-confname=$(echo $serial.CONFIG | sed 's/-/_/;s/_\(...\)/_\1./')
-case "$MODEL" in
- FAT)
- config=$(cd $CONFIGS; find GX -name $confname | head -1)
- ;;
- SLIM|SUPER|ULTRA)
- config=$(cd $CONFIGS; find CUSTOM SOFT NET -name $confname | head -1)
- ;;
-esac
-[ -f "CONFIGS/$config" ] || fail "can't find config"
-cp $CONFIGS/$config $serial/$confname
+if [ ! -f "$CACHE/$serial.CONFIG" ]; then
+ confname=$(echo $serial | sed 's/-/_/;s/_\(...\)/_\1./')
+ case "$MODEL" in
+ HAN)
+ confname=$confname.CONFIG
+ config=$(cd $CONFIGS; find NET GX SOFTCUSTOM -name $confname | head -1)
+ ;;
+ HEN)
+ confname=$confname.ENC
+ config=$(cd $CONFIGS; find ENC -name $confname | head -1)
+ ;;
+ esac
+ if [ "$config" ]; then
+ cp $CONFIGS/$config "$CACHE/$serial.CONFIG"
+ fi
+fi
+[ -f "$CACHE/$serial.CONFIG" ] && cp "$CACHE/$serial.CONFIG" $serial/USRDIR/CONFIG || warn "can't find config"
# create package config
title "create package config"
# prepare iso
title "prepare iso"
-$PS2CLASSIC prepare "$file"
+$PS2CLASSIC prepare "$file" || fail "can't prepare iso"
# convert iso
title "convert iso"
-$PS2CLASSIC e cex $serial/ps2.key "$file" $serial/USRDIR/ISO.BIN.ENC ISO.BIN.ENC $cid
+$PS2CLASSIC e cex $serial/ps2.key "$file" $serial/USRDIR/ISO.BIN.ENC ISO.BIN.ENC $cid || fail "can't convert iso"
# create package
title "create package"
-( cd $serial; $PSNPACKAGE $confname package.conf . )
+$PSNPACKAGE $serial || fail "can't create package"
mv $serial/$cid.pkg .
+# create rap file
+title "create rap file"
+cp $PWD/iso2ps2.rap $cid.rap
+
# cleaning
title "cleaning"
rm -rf $serial