From f820e92f5fc662542bfca6b23608c5c5affa227b Mon Sep 17 00:00:00 2001 From: Zarh Date: Fri, 23 Aug 2019 01:22:24 +0200 Subject: [PATCH] 1.36 --- .gitignore | 1 + Changelog.txt | 102 +- MGZ/data/mamba_484D.lz.bin | Bin 30876 -> 30877 bytes ...tage1_421.bin => ps2gxemu_stage1_421C.bin} | Bin MGZ/data/ps2gxemu_stage1_421D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_425C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_425D.bin | Bin 0 -> 192 bytes ...tage1_430.bin => ps2gxemu_stage1_430C.bin} | Bin MGZ/data/ps2gxemu_stage1_430D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_431C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_431D.bin | Bin 0 -> 192 bytes ...tage1_440.bin => ps2gxemu_stage1_440C.bin} | Bin MGZ/data/ps2gxemu_stage1_440D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_441C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_441D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_446C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_446D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_450C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_450D.bin | Bin 0 -> 192 bytes ...tage1_453.bin => ps2gxemu_stage1_453C.bin} | Bin MGZ/data/ps2gxemu_stage1_453D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_455C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_455D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_460C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_460D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_465C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_465D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_466C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_470C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_470D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_475C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_475D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_476C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_476D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_478C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_478D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_480C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_480D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_481C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_481D.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_482C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_483C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_484C.bin | Bin 0 -> 192 bytes MGZ/data/ps2gxemu_stage1_484D.bin | Bin 0 -> 192 bytes ...tage2_421.bin => ps2gxemu_stage2_421C.bin} | Bin 10912 -> 10840 bytes MGZ/data/ps2gxemu_stage2_421D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_425C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_425D.bin | Bin 0 -> 10840 bytes ...tage2_430.bin => ps2gxemu_stage2_430C.bin} | Bin 10912 -> 10840 bytes MGZ/data/ps2gxemu_stage2_430D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_431C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_431D.bin | Bin 0 -> 10840 bytes ...tage2_440.bin => ps2gxemu_stage2_440C.bin} | Bin 10912 -> 10840 bytes MGZ/data/ps2gxemu_stage2_440D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_441C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_441D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_446C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_446D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_450C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_450D.bin | Bin 0 -> 10840 bytes ...tage2_453.bin => ps2gxemu_stage2_453C.bin} | Bin 10912 -> 10840 bytes MGZ/data/ps2gxemu_stage2_453D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_455C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_455D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_460C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_460D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_465C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_465D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_466C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_470C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_470D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_475C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_475D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_476C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_476D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_478C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_478D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_480C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_480D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_481C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_481D.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_482C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_483C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_484C.bin | Bin 0 -> 10840 bytes MGZ/data/ps2gxemu_stage2_484D.bin | Bin 0 -> 10840 bytes ...tage1_421.bin => ps2hwemu_stage1_421C.bin} | Bin MGZ/data/ps2hwemu_stage1_421D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_425C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_425D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_430C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_430D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_431C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_431D.bin | Bin 0 -> 192 bytes ...tage1_440.bin => ps2hwemu_stage1_440C.bin} | Bin MGZ/data/ps2hwemu_stage1_440D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_441C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_441D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_446C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_446D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_450C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_450D.bin | Bin 0 -> 192 bytes ...tage1_453.bin => ps2hwemu_stage1_453C.bin} | Bin MGZ/data/ps2hwemu_stage1_453D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_455C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_455D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_460C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_460D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_465C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_465D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_466C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_470C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_470D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_475C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_475D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_476C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_476D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_478C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_478D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_480C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_480D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_481C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_481D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_482C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_483C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_484C.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage1_484D.bin | Bin 0 -> 192 bytes MGZ/data/ps2hwemu_stage2_421.bin | Bin 11088 -> 0 bytes MGZ/data/ps2hwemu_stage2_421C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_421D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_425C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_425D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_430.bin | Bin 11088 -> 0 bytes MGZ/data/ps2hwemu_stage2_430C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_430D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_431C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_431D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_440.bin | Bin 11088 -> 0 bytes MGZ/data/ps2hwemu_stage2_440C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_440D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_441C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_441D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_446C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_446D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_450C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_450D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_453.bin | Bin 11088 -> 0 bytes MGZ/data/ps2hwemu_stage2_453C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_453D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_455C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_455D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_460C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_460D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_465C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_465D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_466C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_470C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_470D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_475C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_475D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_476C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_476D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_478C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_478D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_480C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_480D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_481C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_481D.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_482C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_483C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_484C.bin | Bin 0 -> 11016 bytes MGZ/data/ps2hwemu_stage2_484D.bin | Bin 0 -> 11016 bytes ...age2_421.bin => ps2netemu_stage2_421C.bin} | Bin MGZ/data/ps2netemu_stage2_421D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_425C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_425D.bin | Bin 0 -> 3792 bytes ...age2_430.bin => ps2netemu_stage2_430C.bin} | Bin MGZ/data/ps2netemu_stage2_430D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_431C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_431D.bin | Bin 0 -> 3792 bytes ...age2_440.bin => ps2netemu_stage2_440C.bin} | Bin MGZ/data/ps2netemu_stage2_440D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_441C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_441D.bin | Bin 0 -> 3792 bytes ...age2_446.bin => ps2netemu_stage2_446C.bin} | Bin MGZ/data/ps2netemu_stage2_446D.bin | Bin 0 -> 3792 bytes ...age2_450.bin => ps2netemu_stage2_450C.bin} | Bin MGZ/data/ps2netemu_stage2_450D.bin | Bin 0 -> 3792 bytes ...age2_453.bin => ps2netemu_stage2_453C.bin} | Bin MGZ/data/ps2netemu_stage2_453D.bin | Bin 0 -> 3792 bytes ...age2_455.bin => ps2netemu_stage2_455C.bin} | Bin MGZ/data/ps2netemu_stage2_455D.bin | Bin 0 -> 3792 bytes ...age2_460.bin => ps2netemu_stage2_460C.bin} | Bin MGZ/data/ps2netemu_stage2_460D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_465C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_465D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_466C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_470C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_470D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_475C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_475D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_476C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_476D.bin | Bin 0 -> 3792 bytes ...age2_478.bin => ps2netemu_stage2_478C.bin} | Bin MGZ/data/ps2netemu_stage2_478D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_480C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_480D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_481C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_481D.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_482C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_483C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_484C.bin | Bin 0 -> 3792 bytes MGZ/data/ps2netemu_stage2_484D.bin | Bin 0 -> 3792 bytes MGZ/source/common.h | 2 +- MGZ/source/data.h | 187 + MGZ/source/fw.c | 1159 ++ MGZ/source/fw.h | 10 + MGZ/source/libfont.c | 28 +- MGZ/source/libfont2.h | 4 + MGZ/source/main.c | 16187 ++++++++++------ MGZ/source/pad.c | 37 +- MGZ/source/ps2crc.h | 132 + MGZ/source/ps2data.h | 253 + MGZ/source/ps2gen.c | 4 +- MGZ/source/ps2vers.c | 683 + MGZ/source/ps2vers.h | 11 + MGZ/source/syscall8.h | 102 +- MGZ/source/ttf_render.c | 106 +- MGZ/source/ttf_render.h | 4 + Makefile | 52 +- OffsetFinder/GetFlash.exe | Bin 0 -> 191488 bytes OffsetFinder/Makefile | 2 +- OffsetFinder/main.c | 1656 +- payloads/FIRMWARES | 3 + payloads/MAMBA/Makefile | 4 +- payloads/MAMBA/Makefile_loader | 4 +- payloads/MAMBA/lv2/include/lv2/symbols.h | 32 +- payloads/PS2_EMU/{SRC => }/Clean.bat | 0 .../PS2_EMU/{SRC => GEN}/ps2emu_gen/Makefile | 0 .../PS2_EMU/{SRC => GEN}/ps2emu_gen/Patch.bat | 0 .../PS2_EMU/{SRC => GEN}/ps2emu_gen/main.c | 25 +- .../{SRC => GEN}/ps2emu_gen/ps2emu_gen.bat | 0 .../ps2netemu_gen/Makefile | 0 .../ps2netemu_gen/Patch.bat | 0 .../ps2netemu_gen/main.c | 23 +- .../ps2netemu_gen/ps2netemu_gen.bat | 0 payloads/PS2_EMU/Makefile | 17 + .../SRC/ps2emu/include/ps2emu/.directory | 2 - .../SRC/ps2emu/include/ps2emu/symbols.h | 1428 -- payloads/PS2_EMU/SRC/ps2emu_gen/data/curves | Bin 7744 -> 0 bytes payloads/PS2_EMU/SRC/ps2emu_gen/data/keys | 4499 ----- .../PS2_EMU/SRC/ps2emu_gen/data/ldr_curves | Bin 7744 -> 0 bytes .../PS2_EMU/SRC/ps2emu_gen/data/npdrm-const | Bin 16 -> 0 bytes payloads/PS2_EMU/SRC/ps2emu_gen/data/rif-key | 1 - .../PS2_EMU/SRC/ps2emu_gen/data/vsh_curves | Bin 360 -> 0 bytes .../PS2_EMU/SRC/ps2emu_gen/ps2emu_gen.exe | Bin 144403 -> 0 bytes payloads/PS2_EMU/SRC/ps2emu_gen/scetool.exe | Bin 124416 -> 0 bytes .../SRC/ps2emu_stage2/gxemu/ldscript_430.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_431.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_440.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_441.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_446.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_450.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_453.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_455.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_460.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_465.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_466.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_470.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_475.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_476.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_478.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_480.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_481.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_482.ld | 64 - .../SRC/ps2emu_stage2/gxemu/ldscript_483.ld | 64 - .../ps2netemu_gen/data/Backup/keys | 3007 --- .../ps2emu_stage2/ps2netemu_gen/data/curves | Bin 7744 -> 0 bytes .../SRC/ps2emu_stage2/ps2netemu_gen/data/idps | 1 - .../SRC/ps2emu_stage2/ps2netemu_gen/data/keys | 4499 ----- .../ps2netemu_gen/data/ldr_curves | Bin 7744 -> 0 bytes .../ps2netemu_gen/data/npdrm-const | Bin 16 -> 0 bytes .../ps2emu_stage2/ps2netemu_gen/data/rif-key | 1 - .../ps2netemu_gen/data/vsh_curves | Bin 360 -> 0 bytes .../data/you_know_where_to_get_keys!!.txt | 0 .../ps2netemu_gen/ps2netemu_gen.exe | Bin 150964 -> 0 bytes .../ps2emu_stage2/ps2netemu_gen/scetool.exe | Bin 124416 -> 0 bytes payloads/PS2_EMU/SearchOffset/Makefile | 9 - .../PS2_EMU/SearchOffset/SearchOffset.exe | Bin 170515 -> 0 bytes payloads/PS2_EMU/SearchOffset/main.c | 711 - .../{SRC => }/lv1/include/lv1/device.h | 0 .../{SRC => }/lv1/include/lv1/dispmgr.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/gelic.h | 0 .../lv1/include/lv1/gelic_wireless.h | 0 .../{SRC => }/lv1/include/lv1/inttypes.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/lv1.h | 0 .../{SRC => }/lv1/include/lv1/lv1call.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/mm.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/patch.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/ss.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/stor.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/vas.h | 0 .../PS2_EMU/{SRC => }/lv1/include/lv1/vuart.h | 0 payloads/PS2_EMU/{SRC => }/lv1/src/assembly.h | 0 payloads/PS2_EMU/{SRC => }/lv1/src/device.c | 0 payloads/PS2_EMU/{SRC => }/lv1/src/hvcall.S | 0 payloads/PS2_EMU/{SRC => }/lv1/src/mm.c | 0 payloads/PS2_EMU/{SRC => }/lv1/src/stor.c | 0 payloads/PS2_EMU/{SRC => }/lv1/src/vas.c | 0 payloads/PS2_EMU/{SRC => }/make_all.bat | 10 +- .../{SRC => }/ps2emu/include/ps2emu/cdvd.h | 0 .../{SRC => }/ps2emu/include/ps2emu/io.h | 0 .../{SRC => }/ps2emu/include/ps2emu/libc.h | 0 .../ps2emu/include/ps2emu/macros.h.S | 0 .../{SRC => }/ps2emu/include/ps2emu/memory.h | 0 .../{SRC => }/ps2emu/include/ps2emu/patch.h | 0 .../{SRC => }/ps2emu/include/ps2emu/ps2emu.h | 0 .../PS2_EMU/ps2emu/include/ps2emu/symbols.h | 2898 +++ .../{SRC => }/ps2emu/include/ps2emu/vuart.h | 0 payloads/PS2_EMU/{SRC => }/ps2emu/src/io.S | 0 payloads/PS2_EMU/{SRC => }/ps2emu/src/libc.S | 0 .../PS2_EMU/{SRC => }/ps2emu/src/libc_c.c | 0 .../PS2_EMU/{SRC => }/ps2emu/src/memory.S | 0 payloads/PS2_EMU/{SRC => }/ps2emu/src/patch.S | 0 payloads/PS2_EMU/{SRC => }/ps2emu/src/vuart.S | 0 .../{SRC => }/ps2emu_stage1_file/Makefile | 6 +- .../{SRC => }/ps2emu_stage1_file/icache.S | 0 .../{SRC => }/ps2emu_stage1_file/ldscript.ld | 0 .../{SRC => }/ps2emu_stage1_file/make_bin.bat | 0 .../{SRC => }/ps2emu_stage1_file/start.S | 0 .../PS2_EMU/ps2emu_stage2/Makefile.common | 17 + .../{SRC => }/ps2emu_stage2/common/common.c | 0 .../{SRC => }/ps2emu_stage2/common/common.h | 0 .../{SRC => }/ps2emu_stage2/common/scsi.h | 0 .../{SRC => }/ps2emu_stage2/gxemu/Clean.bat | 0 .../{SRC => }/ps2emu_stage2/gxemu/Makefile | 22 +- .../{SRC => }/ps2emu_stage2/gxemu/crt0.c | 0 .../gxemu/ldscript.ld} | 0 .../{SRC => }/ps2emu_stage2/gxemu/main.c | 0 .../gxemu/make_bin.bat} | 2 +- .../{SRC => }/ps2emu_stage2/gxemu/read!!.txt | 5 + .../{SRC => }/ps2emu_stage2/gxemu/restore.h | 0 .../{SRC => }/ps2emu_stage2/gxemu/start.S | 0 .../{SRC => }/ps2emu_stage2/hwemu/Clean.bat | 0 .../{SRC => }/ps2emu_stage2/hwemu/Makefile | 19 +- .../{SRC => }/ps2emu_stage2/hwemu/crt0.c | 0 .../{SRC => }/ps2emu_stage2/hwemu/ldscript.ld | 0 .../{SRC => }/ps2emu_stage2/hwemu/main.c | 0 .../hwemu}/make_bin.bat | 4 +- .../{SRC => }/ps2emu_stage2/hwemu/read!!.txt | 5 + .../{SRC => }/ps2emu_stage2/hwemu/restore.h | 0 .../{SRC => }/ps2emu_stage2/hwemu/start.S | 0 .../{SRC => }/ps2emu_stage2/netemu/Clean.bat | 0 .../{SRC => }/ps2emu_stage2/netemu/Makefile | 18 +- .../ps2emu_stage2/netemu/ldscript.ld | 0 .../{SRC => }/ps2emu_stage2/netemu/main.c | 0 .../netemu}/make_bin.bat | 4 +- .../{SRC => }/ps2emu_stage2/netemu/printf.c | 0 .../{SRC => }/ps2emu_stage2/netemu/start.S | 0 payloads/SKY/Makefile | 4 +- payloads/rawseciso/Makefile | 12 +- .../USRDIR/GUI/List/PlayStation/colorset.ini | 6 + .../USRDIR/GUI/XMB/Replica Zero/colorset.ini | 70 +- pkgfiles/USRDIR/GUI/colorset.ini | 6 + pkgfiles/USRDIR/GUI/common/ALL.PNG | Bin 2056 -> 1888 bytes pkgfiles/USRDIR/GUI/common/APP_HOME.PNG | Bin 0 -> 4094 bytes pkgfiles/USRDIR/GUI/common/CF.PNG | Bin 0 -> 3259 bytes pkgfiles/USRDIR/GUI/common/CHECKBOX_FALSE.PNG | Bin 0 -> 254 bytes pkgfiles/USRDIR/GUI/common/CHECKBOX_TRUE.PNG | Bin 0 -> 566 bytes pkgfiles/USRDIR/GUI/common/CIRCLE.PNG | Bin 3110 -> 2146 bytes pkgfiles/USRDIR/GUI/common/CLOSE.PNG | Bin 0 -> 322 bytes pkgfiles/USRDIR/GUI/common/CROSS.PNG | Bin 3395 -> 2085 bytes pkgfiles/USRDIR/GUI/common/CURSOR.PNG | Bin 0 -> 382 bytes pkgfiles/USRDIR/GUI/common/CURSOR_D1.PNG | Bin 0 -> 393 bytes pkgfiles/USRDIR/GUI/common/CURSOR_D2.PNG | Bin 0 -> 413 bytes pkgfiles/USRDIR/GUI/common/CURSOR_H.PNG | Bin 0 -> 251 bytes pkgfiles/USRDIR/GUI/common/CURSOR_V.PNG | Bin 0 -> 259 bytes pkgfiles/USRDIR/GUI/common/DISC.PNG | Bin 0 -> 3657 bytes pkgfiles/USRDIR/GUI/common/DISC_DATA.PNG | Bin 0 -> 3743 bytes pkgfiles/USRDIR/GUI/common/DISC_PS1.PNG | Bin 0 -> 3852 bytes pkgfiles/USRDIR/GUI/common/DISC_PS2.PNG | Bin 0 -> 4929 bytes pkgfiles/USRDIR/GUI/common/DISC_PS3.PNG | Bin 0 -> 4989 bytes pkgfiles/USRDIR/GUI/common/DISC_PSP.PNG | Bin 0 -> 4111 bytes pkgfiles/USRDIR/GUI/common/DISC_VIDEO.PNG | Bin 0 -> 5359 bytes pkgfiles/USRDIR/GUI/common/DOCK_LEFT.PNG | Bin 0 -> 251 bytes pkgfiles/USRDIR/GUI/common/DOCK_RIGHT.PNG | Bin 0 -> 251 bytes pkgfiles/USRDIR/GUI/common/DOWN.PNG | Bin 678 -> 358 bytes pkgfiles/USRDIR/GUI/common/FAV.PNG | Bin 0 -> 672 bytes pkgfiles/USRDIR/GUI/common/FILES.PNG | Bin 149 -> 647 bytes pkgfiles/USRDIR/GUI/common/FLASH.PNG | Bin 0 -> 860 bytes pkgfiles/USRDIR/GUI/common/FOLDER.PNG | Bin 513 -> 1609 bytes pkgfiles/USRDIR/GUI/common/GAME.PNG | Bin 0 -> 813 bytes pkgfiles/USRDIR/GUI/common/HDD.PNG | Bin 0 -> 4076 bytes pkgfiles/USRDIR/GUI/common/HOST_ROOT.PNG | Bin 0 -> 2117 bytes pkgfiles/USRDIR/GUI/common/L.PNG | Bin 2477 -> 1593 bytes pkgfiles/USRDIR/GUI/common/L1.PNG | Bin 1769 -> 1452 bytes pkgfiles/USRDIR/GUI/common/L2.PNG | Bin 2063 -> 2049 bytes pkgfiles/USRDIR/GUI/common/L3.PNG | Bin 2808 -> 1725 bytes pkgfiles/USRDIR/GUI/common/LEFT.PNG | Bin 587 -> 365 bytes pkgfiles/USRDIR/GUI/common/LOCK.PNG | Bin 0 -> 341 bytes pkgfiles/USRDIR/GUI/common/MAXIMIZE.PNG | Bin 0 -> 247 bytes pkgfiles/USRDIR/GUI/common/MINIMIZE.PNG | Bin 0 -> 262 bytes pkgfiles/USRDIR/GUI/common/MS.PNG | Bin 0 -> 2798 bytes pkgfiles/USRDIR/GUI/common/NET.PNG | Bin 0 -> 6428 bytes pkgfiles/USRDIR/GUI/common/PS1_DISC.PNG | Bin 17818 -> 0 bytes pkgfiles/USRDIR/GUI/common/PS2_DISC.PNG | Bin 12099 -> 0 bytes pkgfiles/USRDIR/GUI/common/PS3_DISC.PNG | Bin 13653 -> 0 bytes pkgfiles/USRDIR/GUI/common/PSP_DISC.PNG | Bin 19313 -> 0 bytes pkgfiles/USRDIR/GUI/common/PS_LOGO.PNG | Bin 4951 -> 1580 bytes pkgfiles/USRDIR/GUI/common/R.PNG | Bin 2661 -> 1688 bytes pkgfiles/USRDIR/GUI/common/R1.PNG | Bin 1952 -> 1539 bytes pkgfiles/USRDIR/GUI/common/R2.PNG | Bin 2260 -> 2138 bytes pkgfiles/USRDIR/GUI/common/R3.PNG | Bin 2897 -> 1824 bytes pkgfiles/USRDIR/GUI/common/RIGHT.PNG | Bin 566 -> 361 bytes pkgfiles/USRDIR/GUI/common/SD.PNG | Bin 0 -> 2996 bytes pkgfiles/USRDIR/GUI/common/SELECT.PNG | Bin 1028 -> 745 bytes pkgfiles/USRDIR/GUI/common/SQUARE.PNG | Bin 2287 -> 1804 bytes pkgfiles/USRDIR/GUI/common/START.PNG | Bin 2160 -> 1215 bytes pkgfiles/USRDIR/GUI/common/TOGGLE_OFF.PNG | Bin 0 -> 915 bytes pkgfiles/USRDIR/GUI/common/TOGGLE_ON.PNG | Bin 0 -> 972 bytes pkgfiles/USRDIR/GUI/common/TRIANGLE.PNG | Bin 2894 -> 2120 bytes pkgfiles/USRDIR/GUI/common/UP.PNG | Bin 507 -> 352 bytes pkgfiles/USRDIR/GUI/common/USB.PNG | Bin 0 -> 2962 bytes pkgfiles/USRDIR/setting/scan_dir.txt | 4 +- .../sys/CONFIG/CUSTOM/SCCS_400.01.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_508.85.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_511.02.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_511.03.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_511.04.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_511.05.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCES_517.19.CONFIG | Bin 0 -> 36 bytes .../sys/CONFIG/CUSTOM/SCES_532.86.CONFIG | Bin 0 -> 46 bytes .../sys/CONFIG/CUSTOM/SCPS_170.01.CONFIG | Bin 0 -> 36 bytes .../sys/CONFIG/CUSTOM/SCPS_192.06.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SCPS_550.35.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SLES_501.96.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SLES_503.71.CONFIG | Bin 0 -> 36 bytes .../sys/CONFIG/CUSTOM/SLES_510.44.CONFIG | Bin 0 -> 80 bytes .../sys/CONFIG/CUSTOM/SLES_514.45.CONFIG | Bin 0 -> 24 bytes .../sys/CONFIG/CUSTOM/SLES_519.58.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SLES_522.37.CONFIG | Bin 0 -> 84 bytes .../sys/CONFIG/CUSTOM/SLES_523.84.CONFIG | Bin 0 -> 94 bytes .../sys/CONFIG/CUSTOM/SLES_525.68.CONFIG | Bin 0 -> 52 bytes .../sys/CONFIG/CUSTOM/SLES_529.06.CONFIG | Bin 0 -> 49152 bytes .../sys/CONFIG/CUSTOM/SLES_529.68.CONFIG | Bin 0 -> 80 bytes .../sys/CONFIG/CUSTOM/SLES_537.46.CONFIG | Bin 0 -> 48 bytes .../sys/CONFIG/CUSTOM/SLES_543.48.CONFIG | Bin 0 -> 48 bytes .../sys/CONFIG/CUSTOM/SLES_543.49.CONFIG | Bin 0 -> 48 bytes .../sys/CONFIG/CUSTOM/SLES_543.50.CONFIG | Bin 0 -> 48 bytes .../sys/CONFIG/CUSTOM/SLES_543.51.CONFIG | Bin 0 -> 48 bytes .../sys/CONFIG/CUSTOM/SLES_546.44.CONFIG | Bin 0 -> 516 bytes .../sys/CONFIG/CUSTOM/SLES_546.58.CONFIG | Bin 0 -> 44 bytes .../sys/CONFIG/CUSTOM/SLPM_666.75.CONFIG | Bin 0 -> 24 bytes .../sys/CONFIG/CUSTOM/SLPS_258.42.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SLUS_201.67.CONFIG | Bin 0 -> 44 bytes .../sys/CONFIG/CUSTOM/SLUS_203.43.CONFIG | Bin 0 -> 24 bytes .../sys/CONFIG/CUSTOM/SLUS_204.69.CONFIG | Bin 0 -> 28 bytes .../sys/CONFIG/CUSTOM/SLUS_204.97.CONFIG | Bin 0 -> 80 bytes .../sys/CONFIG/CUSTOM/SLUS_206.80.CONFIG | Bin 0 -> 49152 bytes .../sys/CONFIG/CUSTOM/SLUS_206.85.CONFIG | Bin 0 -> 32 bytes .../sys/CONFIG/CUSTOM/SLUS_208.31.CONFIG | Bin 0 -> 24 bytes .../sys/CONFIG/CUSTOM/SLUS_209.65.CONFIG | Bin 0 -> 52 bytes .../sys/CONFIG/CUSTOM/SLUS_209.93.CONFIG | Bin 0 -> 80 bytes .../sys/CONFIG/CUSTOM/SLUS_210.37.CONFIG | Bin 0 -> 80 bytes .../sys/CONFIG/CUSTOM/SLUS_211.96.CONFIG | Bin 0 -> 20 bytes .../sys/CONFIG/CUSTOM/SLUS_212.08.CONFIG | Bin 0 -> 52 bytes .../sys/CONFIG/CUSTOM/SLUS_212.40.CONFIG | Bin 0 -> 34 bytes .../sys/CONFIG/CUSTOM/SLUS_214.52.CONFIG | Bin 0 -> 58 bytes pkgfiles/USRDIR/sys/loc/CN.txt | 68 +- pkgfiles/USRDIR/sys/loc/EN.txt | 45 +- pkgfiles/USRDIR/sys/loc/ES.txt | 175 +- pkgfiles/USRDIR/sys/loc/FR.txt | 49 +- pkgfiles/USRDIR/sys/loc/HU.txt | 47 +- pkgfiles/USRDIR/sys/loc/IT.txt | 45 +- pkgfiles/USRDIR/sys/loc/NL.txt | 47 +- pkgfiles/USRDIR/sys/loc/PL.txt | 45 +- pkgfiles/USRDIR/sys/loc/RU.txt | 673 +- pkgfiles/USRDIR/sys/loc/SE.txt | 47 +- pkgfiles/USRDIR/sys/sprx_iso | Bin 13688 -> 7310 bytes pkgfiles/USRDIR/sys/ws.zip | Bin 898378 -> 1359556 bytes pkgfiles2/USRDIR/GUI/common | Bin 507 -> 0 bytes 480 files changed, 18283 insertions(+), 22274 deletions(-) rename MGZ/data/{ps2gxemu_stage1_421.bin => ps2gxemu_stage1_421C.bin} (100%) create mode 100644 MGZ/data/ps2gxemu_stage1_421D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_425C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_425D.bin rename MGZ/data/{ps2gxemu_stage1_430.bin => ps2gxemu_stage1_430C.bin} (100%) create mode 100644 MGZ/data/ps2gxemu_stage1_430D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_431C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_431D.bin rename MGZ/data/{ps2gxemu_stage1_440.bin => ps2gxemu_stage1_440C.bin} (100%) create mode 100644 MGZ/data/ps2gxemu_stage1_440D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_441C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_441D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_446C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_446D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_450C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_450D.bin rename MGZ/data/{ps2gxemu_stage1_453.bin => ps2gxemu_stage1_453C.bin} (100%) create mode 100644 MGZ/data/ps2gxemu_stage1_453D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_455C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_455D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_460C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_460D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_465C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_465D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_466C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_470C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_470D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_475C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_475D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_476C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_476D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_478C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_478D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_480C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_480D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_481C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_481D.bin create mode 100644 MGZ/data/ps2gxemu_stage1_482C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_483C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_484C.bin create mode 100644 MGZ/data/ps2gxemu_stage1_484D.bin rename MGZ/data/{ps2gxemu_stage2_421.bin => ps2gxemu_stage2_421C.bin} (55%) create mode 100644 MGZ/data/ps2gxemu_stage2_421D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_425C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_425D.bin rename MGZ/data/{ps2gxemu_stage2_430.bin => ps2gxemu_stage2_430C.bin} (55%) create mode 100644 MGZ/data/ps2gxemu_stage2_430D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_431C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_431D.bin rename MGZ/data/{ps2gxemu_stage2_440.bin => ps2gxemu_stage2_440C.bin} (55%) create mode 100644 MGZ/data/ps2gxemu_stage2_440D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_441C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_441D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_446C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_446D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_450C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_450D.bin rename MGZ/data/{ps2gxemu_stage2_453.bin => ps2gxemu_stage2_453C.bin} (55%) create mode 100644 MGZ/data/ps2gxemu_stage2_453D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_455C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_455D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_460C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_460D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_465C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_465D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_466C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_470C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_470D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_475C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_475D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_476C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_476D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_478C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_478D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_480C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_480D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_481C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_481D.bin create mode 100644 MGZ/data/ps2gxemu_stage2_482C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_483C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_484C.bin create mode 100644 MGZ/data/ps2gxemu_stage2_484D.bin rename MGZ/data/{ps2hwemu_stage1_421.bin => ps2hwemu_stage1_421C.bin} (100%) create mode 100644 MGZ/data/ps2hwemu_stage1_421D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_425C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_425D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_430C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_430D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_431C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_431D.bin rename MGZ/data/{ps2hwemu_stage1_440.bin => ps2hwemu_stage1_440C.bin} (100%) create mode 100644 MGZ/data/ps2hwemu_stage1_440D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_441C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_441D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_446C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_446D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_450C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_450D.bin rename MGZ/data/{ps2hwemu_stage1_453.bin => ps2hwemu_stage1_453C.bin} (100%) create mode 100644 MGZ/data/ps2hwemu_stage1_453D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_455C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_455D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_460C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_460D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_465C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_465D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_466C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_470C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_470D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_475C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_475D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_476C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_476D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_478C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_478D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_480C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_480D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_481C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_481D.bin create mode 100644 MGZ/data/ps2hwemu_stage1_482C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_483C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_484C.bin create mode 100644 MGZ/data/ps2hwemu_stage1_484D.bin delete mode 100644 MGZ/data/ps2hwemu_stage2_421.bin create mode 100644 MGZ/data/ps2hwemu_stage2_421C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_421D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_425C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_425D.bin delete mode 100644 MGZ/data/ps2hwemu_stage2_430.bin create mode 100644 MGZ/data/ps2hwemu_stage2_430C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_430D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_431C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_431D.bin delete mode 100644 MGZ/data/ps2hwemu_stage2_440.bin create mode 100644 MGZ/data/ps2hwemu_stage2_440C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_440D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_441C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_441D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_446C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_446D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_450C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_450D.bin delete mode 100644 MGZ/data/ps2hwemu_stage2_453.bin create mode 100644 MGZ/data/ps2hwemu_stage2_453C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_453D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_455C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_455D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_460C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_460D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_465C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_465D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_466C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_470C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_470D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_475C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_475D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_476C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_476D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_478C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_478D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_480C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_480D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_481C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_481D.bin create mode 100644 MGZ/data/ps2hwemu_stage2_482C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_483C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_484C.bin create mode 100644 MGZ/data/ps2hwemu_stage2_484D.bin rename MGZ/data/{ps2netemu_stage2_421.bin => ps2netemu_stage2_421C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_421D.bin create mode 100644 MGZ/data/ps2netemu_stage2_425C.bin create mode 100644 MGZ/data/ps2netemu_stage2_425D.bin rename MGZ/data/{ps2netemu_stage2_430.bin => ps2netemu_stage2_430C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_430D.bin create mode 100644 MGZ/data/ps2netemu_stage2_431C.bin create mode 100644 MGZ/data/ps2netemu_stage2_431D.bin rename MGZ/data/{ps2netemu_stage2_440.bin => ps2netemu_stage2_440C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_440D.bin create mode 100644 MGZ/data/ps2netemu_stage2_441C.bin create mode 100644 MGZ/data/ps2netemu_stage2_441D.bin rename MGZ/data/{ps2netemu_stage2_446.bin => ps2netemu_stage2_446C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_446D.bin rename MGZ/data/{ps2netemu_stage2_450.bin => ps2netemu_stage2_450C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_450D.bin rename MGZ/data/{ps2netemu_stage2_453.bin => ps2netemu_stage2_453C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_453D.bin rename MGZ/data/{ps2netemu_stage2_455.bin => ps2netemu_stage2_455C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_455D.bin rename MGZ/data/{ps2netemu_stage2_460.bin => ps2netemu_stage2_460C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_460D.bin create mode 100644 MGZ/data/ps2netemu_stage2_465C.bin create mode 100644 MGZ/data/ps2netemu_stage2_465D.bin create mode 100644 MGZ/data/ps2netemu_stage2_466C.bin create mode 100644 MGZ/data/ps2netemu_stage2_470C.bin create mode 100644 MGZ/data/ps2netemu_stage2_470D.bin create mode 100644 MGZ/data/ps2netemu_stage2_475C.bin create mode 100644 MGZ/data/ps2netemu_stage2_475D.bin create mode 100644 MGZ/data/ps2netemu_stage2_476C.bin create mode 100644 MGZ/data/ps2netemu_stage2_476D.bin rename MGZ/data/{ps2netemu_stage2_478.bin => ps2netemu_stage2_478C.bin} (100%) create mode 100644 MGZ/data/ps2netemu_stage2_478D.bin create mode 100644 MGZ/data/ps2netemu_stage2_480C.bin create mode 100644 MGZ/data/ps2netemu_stage2_480D.bin create mode 100644 MGZ/data/ps2netemu_stage2_481C.bin create mode 100644 MGZ/data/ps2netemu_stage2_481D.bin create mode 100644 MGZ/data/ps2netemu_stage2_482C.bin create mode 100644 MGZ/data/ps2netemu_stage2_483C.bin create mode 100644 MGZ/data/ps2netemu_stage2_484C.bin create mode 100644 MGZ/data/ps2netemu_stage2_484D.bin create mode 100644 MGZ/source/data.h create mode 100644 MGZ/source/fw.c create mode 100644 MGZ/source/fw.h create mode 100644 MGZ/source/ps2crc.h create mode 100644 MGZ/source/ps2data.h create mode 100644 MGZ/source/ps2vers.c create mode 100644 MGZ/source/ps2vers.h create mode 100644 OffsetFinder/GetFlash.exe create mode 100644 payloads/FIRMWARES rename payloads/PS2_EMU/{SRC => }/Clean.bat (100%) rename payloads/PS2_EMU/{SRC => GEN}/ps2emu_gen/Makefile (100%) rename payloads/PS2_EMU/{SRC => GEN}/ps2emu_gen/Patch.bat (100%) rename payloads/PS2_EMU/{SRC => GEN}/ps2emu_gen/main.c (90%) rename payloads/PS2_EMU/{SRC => GEN}/ps2emu_gen/ps2emu_gen.bat (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2 => GEN}/ps2netemu_gen/Makefile (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2 => GEN}/ps2netemu_gen/Patch.bat (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2 => GEN}/ps2netemu_gen/main.c (96%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2 => GEN}/ps2netemu_gen/ps2netemu_gen.bat (100%) create mode 100644 payloads/PS2_EMU/Makefile delete mode 100644 payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/.directory delete mode 100644 payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/symbols.h delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/keys delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/ldr_curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/npdrm-const delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/rif-key delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/data/vsh_curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/ps2emu_gen.exe delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_gen/scetool.exe delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_430.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_431.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_440.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_441.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_446.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_450.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_453.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_455.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_460.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_465.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_466.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_470.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_475.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_476.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_478.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_480.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_481.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_482.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_483.ld delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/Backup/keys delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/idps delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/keys delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/ldr_curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/npdrm-const delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/rif-key delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/vsh_curves delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/you_know_where_to_get_keys!!.txt delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/ps2netemu_gen.exe delete mode 100644 payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/scetool.exe delete mode 100644 payloads/PS2_EMU/SearchOffset/Makefile delete mode 100644 payloads/PS2_EMU/SearchOffset/SearchOffset.exe delete mode 100644 payloads/PS2_EMU/SearchOffset/main.c rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/device.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/dispmgr.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/gelic.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/gelic_wireless.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/inttypes.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/lv1.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/lv1call.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/mm.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/patch.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/ss.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/stor.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/vas.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/include/lv1/vuart.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/assembly.h (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/device.c (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/hvcall.S (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/mm.c (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/stor.c (100%) rename payloads/PS2_EMU/{SRC => }/lv1/src/vas.c (100%) rename payloads/PS2_EMU/{SRC => }/make_all.bat (74%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/cdvd.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/io.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/libc.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/macros.h.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/memory.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/patch.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/ps2emu.h (100%) create mode 100644 payloads/PS2_EMU/ps2emu/include/ps2emu/symbols.h rename payloads/PS2_EMU/{SRC => }/ps2emu/include/ps2emu/vuart.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/io.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/libc.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/libc_c.c (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/memory.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/patch.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu/src/vuart.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage1_file/Makefile (89%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage1_file/icache.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage1_file/ldscript.ld (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage1_file/make_bin.bat (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage1_file/start.S (100%) create mode 100644 payloads/PS2_EMU/ps2emu_stage2/Makefile.common rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/common/common.c (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/common/common.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/common/scsi.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/Clean.bat (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/Makefile (58%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/crt0.c (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2/gxemu/ldscript_421.ld => ps2emu_stage2/gxemu/ldscript.ld} (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/main.c (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2/netemu/make_netemu.bat => ps2emu_stage2/gxemu/make_bin.bat} (86%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/read!!.txt (57%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/restore.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/gxemu/start.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/Clean.bat (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/Makefile (62%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/crt0.c (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/ldscript.ld (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/main.c (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2/gxemu => ps2emu_stage2/hwemu}/make_bin.bat (74%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/read!!.txt (57%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/restore.h (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/hwemu/start.S (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/Clean.bat (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/Makefile (64%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/ldscript.ld (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/main.c (100%) rename payloads/PS2_EMU/{SRC/ps2emu_stage2/hwemu => ps2emu_stage2/netemu}/make_bin.bat (74%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/printf.c (100%) rename payloads/PS2_EMU/{SRC => }/ps2emu_stage2/netemu/start.S (100%) create mode 100644 pkgfiles/USRDIR/GUI/List/PlayStation/colorset.ini create mode 100644 pkgfiles/USRDIR/GUI/common/APP_HOME.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CF.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CHECKBOX_FALSE.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CHECKBOX_TRUE.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CLOSE.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CURSOR.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CURSOR_D1.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CURSOR_D2.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CURSOR_H.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/CURSOR_V.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_DATA.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_PS1.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_PS2.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_PS3.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_PSP.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DISC_VIDEO.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DOCK_LEFT.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/DOCK_RIGHT.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/FAV.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/FLASH.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/GAME.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/HDD.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/HOST_ROOT.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/LOCK.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/MAXIMIZE.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/MINIMIZE.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/MS.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/NET.PNG delete mode 100644 pkgfiles/USRDIR/GUI/common/PS1_DISC.PNG delete mode 100644 pkgfiles/USRDIR/GUI/common/PS2_DISC.PNG delete mode 100644 pkgfiles/USRDIR/GUI/common/PS3_DISC.PNG delete mode 100644 pkgfiles/USRDIR/GUI/common/PSP_DISC.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/SD.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/TOGGLE_OFF.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/TOGGLE_ON.PNG create mode 100644 pkgfiles/USRDIR/GUI/common/USB.PNG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCCS_400.01.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_508.85.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.02.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.03.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.04.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.05.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_517.19.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_532.86.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCPS_170.01.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCPS_192.06.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCPS_550.35.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_501.96.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_503.71.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_510.44.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_514.45.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_519.58.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_522.37.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_523.84.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_525.68.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_529.06.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_529.68.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_537.46.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.48.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.49.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.50.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.51.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.44.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.58.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPM_666.75.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPS_258.42.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_201.67.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_203.43.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.69.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.97.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.80.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.85.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_208.31.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.65.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.93.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_210.37.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_211.96.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.08.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.40.CONFIG create mode 100644 pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_214.52.CONFIG delete mode 100644 pkgfiles2/USRDIR/GUI/common diff --git a/.gitignore b/.gitignore index 6e12a95b..c7123fa1 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ OffsetFinder/* !OffsetFinder/main.c !OffsetFinder/makefile +!OffsetFinder/GetFlash.exe !/MGZ/data/*.bin diff --git a/Changelog.txt b/Changelog.txt index a01d732c..837f7bad 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,48 +1,70 @@ -TODO -_ NETISO -_ group PKG -_ Add : PFD extractor -_ Add : Speed Start / Speed Scan -_ UI XMB : Use setting column -_ debug EBOOT -_ shortcut pkg : keep only usefull files in pkg. -_ TXT edit -_ Hexa edit -_ Audio -_ system info -_ create backup from disk -_ Fan control plugin standalone? -_ game list supports / shows installed PKG games (PS3, PS2, PS1, PSP) -_ PS2 guitar hero EUR not in real xmb : e51e79bf3ca4b49be51656e0fdc912e1 -_ setting : install mamba autoloader -_ toggle -_ timestamps and permissions : Inside the window, at right of the "size" can be added a new column for timestamps and another for permissions -_ Controller setting -_ global setting tabs -_ copy/convert/extract : ETA/timer -_ verifier si il y a de la place avant de faire un copie de fichier -_ update_mgz -_ double click -_ load only displayed pic ... -_ rebuild DB -_ goto recovery -_ MAX_GAME = infinite -_ whitelist.cfg & blacklist.cfg files in /dev_hdd0/tmp -_ font sizes / Y / shadow ? -_ text viewer = fix scroll -_ GameList SCAN in Background thread -_ New Filemanager Root interface -_ real BDVD dump : lv1 ? read_storage ? - +v1.36 +Add : Support PS3HEN. I removed every feature unsupported by the HEN (tested on HEN 2.3.1). +Add : Updated widescreen db from pcsx2 github. +Add : If you don't use R2 to manage speed, the speed is increased when you hold a button. +Add : For UI FLOW, a scroll bar appears when you browse quickly your backups list. +Add : Changed VRAM mapping to manage more backups. See notes(1). +Add : Show RGBA values when you edit a color. +Change : When you hold circle to quit, there is only one loading ring instead of 3. +Add : You can add a color filter on some pictures. See notes (2). +Add : Settings menu is splitted in 3 level instead of 2. +Add : Platform filter for UI XMB. +Fix : It scan dev_cf (compact flash) instead of dev_cd. +Add : 'Yes/No' settings are remplaced by a toggle. +Add : New theme icons for the toggle. +Fix : Rawseciso isn't a fself anymore. It fix issue with iso from ntfs with a PS3HEN. +Fix : Issue with ps2 elf crc. It fix several issues with iso patching options like when 'disable widescreen' was unavailble. +Fix : Pnach wasn't properly translated to .CONFIG, wrong endianness in replacement opcode. +Fix : To avoid issues with some characters, the name of game settings files use title_id instead of title. +Remove : I removed "Shortcut pkg" option because it's broken. I'll fix it later. +Add FileManager : More informations of devices : capacity, file system, name, label, writable. +ADd FileManager : Several predefined root display is available. Also, you can custumize your own display in settings. +Add FileManager : Specifics options are available if you select several files with the same extention. For example, you can extract 3 pkg in a row. +Add FileManager : Make shortcut PKG. +Add FileManager : New theme icons used for the closebox, the dockbox and the cursor. +Add FileManager : Support UTF8 filename and also their content with the TXTviewer. +Add offsetfinder : It generate every files to update managunz to a new firmware. Type 'make update'. + +Notes : +(1) Every game pictures are stored in a 512KB slot memory in bitmap format. +For Flow3D, it's stored in 2MB slots, there is less slots. +The dimention of the game pictures is limited. +We can calculate its size = Width * Height * Pitch +I use ARGB texture -> the pitch is 4. +The picture size must repect : +- Width*Height < 0x20000 = (512*1024) /4 +- Flow3D Width*Height < 0x80000 = (2*1024*1024) /4 +To not have any memory issue, I suggest you to use the following dimensions: +ICON0 320*176 = 0x0DC00 +COVER PS1 250*250 = 0x0F424 +COVER PS2 250*350 = 0x155CC +COVER PS3 260*300 = 0x130B0 +COVER PSP 200*340 = 0x109A0 +COVER3D PS1 450*450 + 450*600 = 0x735B4 +COVER3D PS2 850*570 = 0x76494 +COVER3D PS3 950*525 = 0x79C3E +COVER3D PSP 800*640 = 0x7D000 + +(2) You can choose the color filter with (R1) in settings. +It's available for BG, BGS, SIDEBAR, BOXBODY, BOXHEAD and NOTIF pictures. +You can add these colors in colorset.ini file too. +They are named COLOR_BG, COLOR_BGS, COLOR_SIDEBAR, COLOR_BOXBODY, COLOR_BOXHEAD and COLOR_NOTIF. +If you don't write a colors in colorset.ini it will be disabled. + +v1.35 +Add : Support 4.84C & 4.84D +Fix : fixed Mamba payloads for D-REX not properly loading modules hashes + +Note : update by littlebalup, thank you. v1.34 +Add : 4.83C support. Add : New loading icon. Add : Scan to /dev_sd, /dev_ms/ and /dev_cd. -Fix : Apply pnatch (bug introduced in previous update) +Fix : Apply pnatch (bug introduced in previous update). Add offsetfinder : IDPSet & ERK_dumper offsets. -Add : Definitions files from RCOmageMOD -Add : Game TAGS - +Add : Definitions files from RCOmageMOD. +Add : Game TAGS. v1.33 Fix : reading issue with splitted iso. diff --git a/MGZ/data/mamba_484D.lz.bin b/MGZ/data/mamba_484D.lz.bin index c2276e7f4cf6fa4b33af7df7b21744f60b72e00c..ee11d188bcd245b73f293c7d58b6f06401a9d93b 100644 GIT binary patch delta 6577 zcmV;i8BXS$@d2Ij0kD1t0v@cBfCo+iL9@>XPgen1lOJCme{_-ct29}|)Uq_g>-X1{ z(#&p}bT!2^v$CX{7MbZ1mXvr!Mfc7;&lz~;aR+(!3Y#hUIea@LB@+bPK#th4X%?~xYMkvB<8DqC8^6V5qf-)SsD1vLX)8uxsc z8q;rs$M1qZpYO5#pXA+z<$aM&sMox6Vc9ONyKPe$g<*bml5_t4w@)Cn;y6OHkCS5A^%$4T~p&Ix}eTv*3ZsgYw1g1rwe;hjJ-F0IWjsUyCz ziOw7^_qpS-0+ur!xB0?d$RsaseSNyu0Mj>>Gr;cB%egAC!x`FBaMh z+=p@H;ksEM?CTxivXeTvrWT>q#HPBtoMe4#%{Fn4j;t^K(SBj`n|Q*UqRx?njE;rK znBnpNnD$ZV+$Fcqi}RpwX3_Vu$U9ktf41;u)*pQ@OYFn^hUHo8_%K@1e`&Ly+!<+_ zugJpV<1+W$ruK`@cMu;R)snrFwO&kD+x(6dS+`+*+lm^YPQm!!)igK3--qVX!dp3n zw)9Pmg+)mjcCr_koHru-JINevhUfZma(@_U)8-uXJ4)th$=uoP_2mAr>p#@Yf5B}B z>GLmbh%Jh~6`bTj8sfu9dOVh_pt6$kHMa0}?CmuIKe(UgDkJ5YRFzN(q>?Ppl*4;2<#i}?kZp1<=#7VCAQnfv`*cK)9uIokFplu ze4j$vM|BnEu>z+r6YMp@uzDqxGIwo3SVAH%IHfi zIX6f4Q^qYpr^s8GI89Yw6AJH((*8P1V=Q!NV<9Lvd>sT!m!J&p{e+mNYr2{K!9qJwh|e;SVDtTj|x zP~uAKb5GTkPDGX!+fc!ZCCG`#5T!S9--_H>(68EP=~v;%>5qzXauUAVReb%nefAB% zquF2k?VXdb;9`!}Z!dX=h}cR_!mU#^GsrudmBfw;NL>)#k0<*?+A4#KonHh)Kd#8= z!2S%!)e81=E#IwlRSWmle;pL>t;4Vz?y%Dfb|ro{klLUFeIU8N?wS?rw2J0O))vV7 zU}Qfj$rI;=?e|)19Qrrs`TI?rN1Y_k7z{T+p1Kupk@1zQ=?>s|(PRx?INO3qUbXWf zuVf)FjgVIv&a24NfN8&3(|s8d?&=fo=+mt@gfu*QKto69Q99yzf6d>=I0+4Bxp=>& zvx3snwa8mG@RlUdHOOcxFmGxZZw4-JA`R2My#4k*rlXP3G2Mrb*$bV&VmewG9rJzY zSfq5Y&KohE9+-|!M#pj=It4O1xa{iiICPm_MyKFDbevx3ypHJ@WOSVOp;OvKN3dH@ zJ*G1PhmFm4TbJTie=akE%@R8;<ID?CQkB_X1}}OV)5B)_UC)!b~eOsul1_NnEi;~ z-fRv2d-v9<*(3dq&RvatLO-ON`|1XJB4&n+OUYd$8J?@Ie_C>$2G{Z81LE7hxUNI}Q=N~~W5baXgf1x{Z@_NcEoLDnIKwMUY!45u?ex|PlO z{kk6G(M8qI^PNw#uW zZUl*o>+d;T>~!ACQ-=878}PI+?6$BKC6f=JG%PV$@vDFzGyHr zt{6-De`)0H5J#~)w)oJ`!5N+_j|sBARTo>-|My@rKSlaoc-*WaZ6xsrV&CmbJAU8o zN`#|ZT`c)l+z04cOUA@~@tD|pN;tcvDLOn|=#%r_Ln3b>32!2`a9>4>cU6$LffjTR zw&%18cRZvsnVcxhfwYrxv%S-Sy6wzFiWp;#e_+=a$#?GcxTA~50H%3J>zL@XIVOU< zhlKH)5F-2V0M@v3$zDNEBl(8Tg<|-wJ*Qi^uzru}I2MKUBzWPi96XkQafQ?E183T1tjL@m)`hT6foW1X zf5~_QMLkg%;^dszO^9S2LVuZ@NKRI+e?)=pZ*A7Eg= zJS)E< z$smJS`%xsGk$unFlOo}?43_cRht;3Y{89#1f63}gedvrVekThbl%;O)`2($^nj%SZn@3oByMS-7W6UY(tRyI*4KvtLq^z0-M^n+i|E%?CZdC0NkY zY4{7WHiUhJrpD@NXjqEdG^?ksVFx=GBl-3w{_gLR@6_}=Z|QN`-83yHzWhG%Z?_bW zu-mVoPR;et~)IRRCe7@!Z=&*%yHu< zTc_v6&BTBCQ*ARQ=aPS8r{_){ADfeFpI(6OpUy_pr47u|4NVz3AO&)bm@bCG_u00Y zHvGTlLEQjDj%lHJljUf^<$3DmJ=PC-`?-%wKHv4jso$;!J)+d~n%;fnf5>+Stekcu z`|A}63$%OYY)U`_G=+88gG1m`R>^_j~z%qlJ!&G3-&E)lh&$N z8Xr1-@|$03mfhUFB>nY?f7{x;AN|zzA!la4H|f>TzqT;JL3&+4t;M!|MBW zi0##NMEe5ITUS5){`_Z+hdS?0eCx@V?aLR>+xGS+>uW#v|LEc0e}?@qRpUhK4gb{r zXjYjb3Iv#>J7K|{OfSvFT;K;zV@v0?V!@`*Lr<1;IWax*|VlS@$S!?PORFx zXvy^{KMnsX=Hqs~FN7ZsE>q1b9B+Gkba`jqo!DOj&QJby=)vu~mcHqB9d|@d z_8V)<9GLvKm<3_g{vTcK=IQs@Gv7OQuQ~LOm%n+dVM?dDfAPb{JX;vMqTf61Kkr&6 z+JiYW<;hW_Q$`OSK1{IJ)HH+P5!TKMruWLtpAjcokbuv#*$iFilJc zVd@xw#n7B$f6fxZ0T8B&;jpRG3iEU+`MJ|3=2$U2#9CmTg2RC`rcEu##r@Oa!$6o2 zaO&^@BU2uJ7$Gm|CRp=xiN3R^PAx33PP696+N^~_e>#lJn}v&E-1I{0gxp?0O~6mE zd%=&(w@#cgj`{^zx#e5)v#sNrnQBU(Z7UczAnl1X_(+By`hHC{ejo%M^l~n8(T1!l~27Sqmn{PA`~d2l>qd z^Jk<^f1Q?_IWb#;=Kcg?sMUB6{*nIz{V#SrpD?qebf4+^iARs_L#VY-B>&j;$z7xf z(L!jz$?uYHzP|It`!Od~=Vv85UTyu%?4*B0hQIU9_Co9IbpehaZ~M0%S~IEkZwGJ8 zdHLnqZIA4p6!Pupv^__o=I^t`_w!`wzFF`?f4_DeuZ}tFhZNK5NS|D!AEm#S)338g z{~h8JFg%vD7ZTV)`t=gnM($pdzOG9}E=XF2-wvH{~GzcH>33+t$B)aCkpLy@EtIENf@|?r7Bhoy2~&{o z? zPcMOc%j7f4tm=l3B>M23b&=7Z z?<_Z?f8SYG82$Ussxw-2nG(33(YNoc21eh$vla zFBcPsb?j*^z-}=<9{had2r+y}C&VKItWQLo7T##Z?T`4~hvo)yS0w7T6TZs=Iwsr) zQt2aTzVT+^uFR%(O9Smkf236mgB!%KJ@644E`}W;U4&D*#*&VFg!kvtk;)h7n1D_- z9oOJCz+|_Py-cb)F+?W9vL$D}aQ`Rq>G*%8D4$AP=P+)Deq$s%4{qE9_;>@rFkX$f z01SM_YXFA+U%U=rBftn?;I{*Wkq{qB^^ymn8A2O`=@3G`n}ObDe>H@_mqsk-_zOB( zzCvhv!vLYUZZ!CldI-gJjKL@TAq=K;#4rf@2OS~*fN}^=10KpfpcKBNA@Hv$gU|x> zC=7ZEg7iT&J!vs6EO9;;hc75hwKsSM%ugCfV{Y?b>hIASvldBHo z0)C?sSa|~~Sb3*QqZvEwAx4@E$HXck*9A`0PqD4$STKcHMYQGLKVn}gOTkT23Mt1r~vshz|3LBMYi z#3zDYgCJcH=&uu$ODC|mPLRG6lv@C#??gk;TPNVB6WE^?^rr@S9(+6!qHUxklhuCE(9OyA`_qv;hA!rZ@22 zD8dP9;CrtCUz}hD{#T0Mk1YVc#rU&U&~svg0DDG@>*i=jCg`nD^y3$xUL>hS_$%=9 zJ;C0Rf3$#i0v^gSNe_4v;GuqW5aB+HA)OZLNqcJdP%pG~zM0BA6KO(`>M@nNdj!}4 z^;1yJQFNXM?A#>o3-Q&1d?wKje2;(~rHK74zdho*F>aqldpG5JHUl1;u4dLg8 zG|eLbe-RA`%{W~80-b+|1pgFK&HD4sP(Q+`eo7#JDktryfc@RmzoGsg!Vrk3?Onu1 zf9m%k1V0fW>;FdVfp9OR+fVf%*5?Y4FICN^3$e5I5(4>!l(KX~4gg)SzxMPyT7E!Z z1NsgGc>+P-fuR3D&_^Kc7tr<;{9;o-gq9EW?>bxVOu-_uCqFlC`o!6}P+s7Nqkyj{ z+RvhNX+E5OVhEI9NF7^V4{6wPp#7C7e=0ZB-zX@rD4^E?^g#P%v|XV6DB3Tg zwi``$M*DBTe-yNbbbJy>%Ln+5f^k+<54K!r`x6QE;vqF_zumKnfArg1J5NzvyIvvO zjU(LI|6FG~+27vR;#9($xvMQ`RR?kp5DtUMT{JnKRlyk^PmJ)^P);j_c(=={e-7l2 z>@}tD+&4UU>m%{(v8wLY52^-Qo(O&dj1cH^i>N20(8*w@46bHjrAY>_mcex_>|vbGFM_zrEcYKdv z4nCcOpUlBu^p5Yj&^tc5w|9KZe_HSOhc|l1$C^3#YVY_s8wcOu9sdZ2{-YdwdyGTB zPlo36FK=Oamq8Pz&k$qq<4JEPVe|sjyXXVYldqD6 zee-0nn}u6hWU%aeKUutA0}HE5S-7=c2Fv_X8-om9EQ709xUG!d<9hFUe|UT>2Vd$P zKX|csd+>s+;W zd@)CFPELEih*R#1^StAie}#F+zs%8FDM#K{IPJ_zPJ6qGQ(s=?^b20)*ykpPcl>4! z|64frwvCg1JIAheaO5iIl-D~P{9cQ9{60?l182PB4{_-HlVc~JaP{JDR+43@PI?PTr4XB_|WnVo}Q=^cNXqrcBN?Z%e}yyMU8f9K#ie&Q^LP8Fx! zIKP^M=hWkBj=Vo|{LLjT2hVALE^*5LGN=BzIqk#Goc>O`ru2}G)6Uj%{LC*LJO7pA z$A0D5?XMhpu5#?Jj-%h-IrZzB!8^X5V^7yP?fZ2Opa16A#|=(--{7=&4IDdY;Iwx) j5eLullQ%i-&Ry^26RS{or>{_WuWt&aza0M`4bpqk_cxWC delta 6576 zcmV;h8BgY&@d2Fi0kD1t0&cF8fCo+iX0y)+Pgen5lOJCme{hlYt29}|)Uq_g>-X1{ z(#&p}l%|+wmX=gnWTs14QtA~I-8=I%bLN~gXU=@j zG{2`wX_V$CtOw%!$X?Mz1#>9;hu&WQU1ymdx~4ml6o939-p=B`%?fBU=?#9r!gzo?AP7vg$TchA|! ziEyv4S35=*YPz||St~kkrzCH%7T)3CBQ2&QZ<3Z&Hn)Z+oO8y$(^!P^Yx=u1?zt{C zrr!#W-vxa>-+k-HQYVt#d!bN>Ffk0G?|C_;rt$-KKl z*wZ4pe=pA8_@F}9cwgNAU@yb{?m2Gqd7k9jf4H=bcV?1)^Q}aCEgq|iclax`>7I7t zzTWdC<)ptx^iS`m6z-+;QMO)`!a3ibEji!rBc5-siA0FlJ}&zO!WnlTWjkX3eY)d% zf$M;CQJSE0QV(!h=*gW7Lcf)xb8+3pMef(^e}(mJfO!~l$0OG+maP%@4$(0I{>}(@ z64*<-+<#03-w0=piT)bX72Ug!lk5SV74}S+u#TfrBgZNPdmmiFJAq_eTANi;M|@)= zompP)bH`%^EN2>S^M$*RNnYOi`gE@Wrf()|!-CJn?FF;v3e)#?K26wz^6b5PI^kVN ze|7O#zunB;$p77O1Uud>>(ey<{rATH-4Bo2tM8MEVLK6 z597+kbu(Ys*W2G^Cv|XDEkY}aO?7iQ$@*bg7Lqrac+XY56z{8w{i$= z>6;kyixSiAWG^r|Z$$QYk~!LR&-J6^{xH&}&D!sGn9S3XxwG4A$^Bv1f2^5>f7=ey z=U-eOQxtV8DA9v7#D|gecq~~#WhLcnZ07CQ+p7eAa6ivgM)-@bAam+2XN}TjCu`GW z9gWz{N;Q$Ur48iOkiB4}&A|RZ-TZzL*f-kERlc(Gy?5wJY`2wZjk*D++l%`jWzD|% zKAE(S>MG1*1x{Zk*m;&~^Bk-^f5P)B-0sA_gjyx9@jH&=Pu8AyRVE=6wzQIz(J3uC zH%InU#x6o9$Xl5>O;sNg3hRT@Bvs?T3j9}w|D5>Gg2MXY|ND{uaXcQphgk>5R#?>u z7R#l$)t1A3H(NFs&XRjmE%W0YOUaq38l)>diVUS&kg0SLGF!5vg0lA;e-34@HdIgQVn_L;E(q_(lYJtsl|jYMFN2^TS7dZx ze}>~~1^c<0=T^F^g?sDve~b6lVb~3K*y#nk62BWjZP0-}klbH))rxgmMe`$T3*>z; zvY(XXiSxqtd$lDF{hRXq<0j6dPLgLdhU+0u-LkjH_{!CI2k@LIvIZ}lZ9ycj+PRQd zl8~21$g2$JRphD1wBM}hwgd@x^@(@%>6RTp8Xi5Mp(FGt9r3*8e;=crgod+Ryx-DU zL22olI{Fc6E3hxdZ0V%N^Sy988|=5+dPQT*dc<#c zmInX5d+S8u2*1O#S7M*g7wKldy3U?}nIYp+a@R<@=ZdSAf1Ibmb-Z|=__i;utChkY z{<6(v-PJ+HqL9`~>VDH5mI@2O6IwV`P=)R!G2>yX0QBS}|=)0rUM@}~TL zTZ{2&lKkq5e>)!(+SB5KH-a3UZUqVQkUb?HPXl>34S$p8gnKxl9~4 zoW#ZU^PDVpI`8EvU3~8ic$%O526Co*JgYGeYHu>Uats+H>Fqe3hLg@DNr%gBiI$Vj zEK8?@bfFSGH-MhWd%g2<8a<@Z%JfV68#)|s;OO5ef5|IVs0U&?W0U@WeNgn7cJcd0 z9*_!nC~d4C-EjSAN$UqPkh+mD4XNV$B2}Umsfu^u`tbn%KOU)`$98RhfV>ff-07Y> zdOQ|bDLH3&7Wy~j?!rji=PVccPu6Dcuqs34WRDv55oT92j zj3NCrfAV&Squ3o&eBhU$bkF6-1XtlK2C$?{>KjzwdTA z+|jizhI}jT1N5vWW8yw|Ol&DzsGbO3xazPyzo{I9!tQu!s+&bv-I=u zSZF;Sn}34G<`)y~MSdyvB7M5OXwXP9XQ8m8`W7}N>TT)&WQ9;xWKIw3LRhE3G^w0q zf4qSrpU4-&-cMEloXWsa`jspkiDdCfviQv`+_iy)b-Nijq2oiL&(XobSN4 z_owBG>MWCE)))p3_GkIhHW(S$H;k3b_aRm;-+&4h4qPaUceAjjP8L5&_I;2nUeCbl z9%>mqS$dx^25vFu8VkQ*U|@8YEe8cUf62ysSpLu*2TQMyjfHzxvT#4vPFlq6V_?6e z)olI)*z!;el=1gCE59<2l}DMG%fjYp297w-+Ihq;nJoRJ5*ZvOgF|I7tA9ltE59Pq zAcI-^Q6!v}eb3sHBL1Wdmhs!0)t}GYQU+F^V)dmya9S3>orU+y(!Ymfu#yNPIqko-+713!d+(Ra>&d$KyF0%F6FR{_y={(F$g{S`JgPz~xE$Hb~ z`~_JX!oEUNWA)V6FUD<})l*l$jh%~;e0vjr_fN@pYWkhG^f>KKnwAq^exLZan~TSC z5Pq)zS$^u*3hD3u>GX4i^n3mbfAYTPjbG&Tx6Me-zaV9o?G^$myX+-ltSx88*m0Ar z({f{H;J>^nw&{~{$iFeuawd(7$DMG~c|zayb9e9QD%fYX`sm+(#u}?D+A-?^gmJQEGZl>o#Jv>LPj4!GE%-&_jUO)EJ@e*~eQAd>f6jfuzDaG;TJ=if zLr0H)^J~qLn>!b!y*^<}f2;SSp1MBxbm4mwUk&+tD|5o5Jp#YGbL{Nx1GQ^bJ-;~f zgT!qilQueD%(yV-ljv?qKK_=_mr=1CJJ^8YI>B2c%-u`rL?HB$ZJ^cI7e;=o4oM^4#W8F_? zl_@-bpk@5L_m{0)cYD{j2m71~{i*osv&y#vOS@g|`DOpdMg(QeochGOzic?RV)KGU z*C+ox?5pTc+Vnafb}*<+HK$;l?eS4zslJ=Od+*kZufMkU(%2ibk90nh6mcry{O|7e`6Uw5qNyD_!> zZg*LHb5+&04?cKf@bsrfP3&FxK&#(FPWIT9@XDQ-U)!CV^x2U8TX!se)9pIyh?wLz z#+ET4=^xSaLaY5hy3*Ct_w#3daO_-l;9oC)^H%-jjOEV6Q2u2E!w)o#jvKnUgm?RWw!^hOLDfGT=>XP$vrcTJVVtBAM-#QtG1Ex=%lAnY7r^AMg>Ph$> zkdZNV;K;EV!-km?u;_x^)2C$_42Gt9MDzgi)AXYUj%4Fw3-a<~v&W5($(lg&dHCU! zVf{xWKm0I4Ueb-X=H(E5XHA(>kZ+x8&5N;F3xsqSf0;WI7sJ?T1=jI7J%O5lA8+@9 zADd^LFnKKX3$k*{v*u-4$2Kw5m_EyvKem7B6RGf#3_s)v5kF5kU$H>>g6c)(LiHl` zORB}H5{*l@L^V$#;1w9JSfqSOu~<=}a;cUm1UWH}ldJ_(rjE7dPl%b8Kh+NMn+N1g zPnj|`e0ivBmZEWa_?|_ha8Se;uxjKIn%OQ|m~dT%;eVzn9amGfDp) z;^Q$qhO`$F*h2dC64*xWUX#GNj?oe~_PaoOmM#wf(j1Q@tbusxmQubah!rhEpuJ0;D ze~J$Vh;V1))j=Dwk$;&x6|I$yW%G!-$^w9 zuRLF{a~4wkdv6a`t~|DeTVwy>>c@D+-Iy%XdvE*d}p%u=R5PPqf$~HzB8-qKa%Lfcjg5~f4(!_ zjQ)LRUS{;~JG0Jc(Pc>BYmB~qXVx?N_MO?l=-bzh7=8QNRgAv<*6*90v#KdSzYRg@ zcfPzPNv|ezX%g6&41fW=OwNC8cka@t-8)-z4KdRmOiB=C`E;&XDnImhn4E#&4#K-!TlofxqZuhGnDz z+#RW>n-Z%V+n0Oo5rvX7(0qFh+vFy5j7{)63t9M|hgf(IxffmnZ&9)Ef7|QH9C8!9 zE{Xkq^JNQ@esi5H|9uSX<@f!LTPJ8g=da&izrTKe{r<0ibX+O;Sw#Kq0C7Iqxc*Wx zaac#5)&lGnNs(05$@Q00w^BLl^<^AyhB95Sk&hL6`<1Na-O3Ot=6H`VEJEYXtO%BWONQt|8R^K(2stR-QoMKM?fP7RKdm_rmvMAcXh` z$hYlg2x-36tX@O(GW}7$AU=SGz*hw5E0ER?H(MUmZ_x6Ke+0h69iS(WS7Vad7trhI zWbLuTMAi?5LwrakTQ9;3;Cm>a5L!Q=Tsu;Iz&e|Q)+dlJ!Y->X)ZVF`!}o!}Zy>}c zfL;S3T_EVMBa}-=u(ytoz9W=dJ4oM=hM>2Oz)wf8KP~7_3wEdlJJf=I(SqKzP>x#A zn-=_-7WAwIe|>1dp0uDpEiHGN59mcp^#S~7X+077N3S$M`Km;H7K{9%*P#6g(6IHk z9nftDbP~X?wuf}>sb7KkcCvb`g>r2N<)EeZ4EC+1A?Q7UhN8cX>J0fOi0kb7PeI-U zah)(^>v1tW40=xx{aL4#BH%` zO;7G2kNprSaJ$!CNJ`#MUX8%dC!`5}^XuiJUb{cn0Q{;1{26GsLbje1;GakL0=^qW zI9?5W?-t+-&hvnso5Xz~zIu?)B-(-RA+V!lvA^ZFOI$a`?X!pvrhWtLK71k2870VZ>kQO? zlc=v-dQo2AGY}ps5%Gz3pr0YY^%;9v|CKD3e-kpRAQbiL*$MTEw)51VMvemfpKg~$ zxAXrb>whEZd=>2{Q9R@qh>K=j*xA92 z^9aCScs)YX50<__=N}@#KZRGb{=5^^k5H=fEZyLJKo{(0MK^;=sy7T5kUI|v^@pC*w_!D zS(Gl#htp3ChVl!pW6SFy4OTs6Ekk zqtVW2{|)$$g!Yh*PXcK90N;@?&Wh~LmJ4lvBA{M8q-O26TW0Z3e!FYuD5`7MDulan zggg76>trYU+xu9YN_aDOr3I~MPwoN2VGy~CCfl5bTxQ>N=%q&dX z`%PsmUja!Rywf{AsGNhZ^N#Nj#=&QD@F%_FJ5_M-*SzCHRo?M>9S6^mS6}5F-#v(f zPvhVxaqt(s<9p2aj*sf)9Ur~ge>?u+_1^I@W)8mEJ3iLN!Pk4oKfoamwLw! zTIe00&au;Uj$IGo__HCGz2k>+{MoS0-tlIR9~#b)YeX~$&+#jxId(hxtap4S$L~JL zvGb=gyyKrXa_}7gI)+ofpW*n4Y>r>d;qW<*(~jj|AAaHVciJ?jhjg5FwwB{(e&yKtZyZ1N z8^>;c&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zwgG;FZ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_425C.bin b/MGZ/data/ps2gxemu_stage1_425C.bin new file mode 100644 index 0000000000000000000000000000000000000000..2e260d62e9c162b75a60611ccbf06203bb4dd5fd GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zwgG;FZ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_425D.bin b/MGZ/data/ps2gxemu_stage1_425D.bin new file mode 100644 index 0000000000000000000000000000000000000000..2e260d62e9c162b75a60611ccbf06203bb4dd5fd GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zwgG;FZ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_430.bin b/MGZ/data/ps2gxemu_stage1_430C.bin similarity index 100% rename from MGZ/data/ps2gxemu_stage1_430.bin rename to MGZ/data/ps2gxemu_stage1_430C.bin diff --git a/MGZ/data/ps2gxemu_stage1_430D.bin b/MGZ/data/ps2gxemu_stage1_430D.bin new file mode 100644 index 0000000000000000000000000000000000000000..54475afd7c3a5f5499b0e57d9ada60fd8307c916 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z#ze}?K literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_431C.bin b/MGZ/data/ps2gxemu_stage1_431C.bin new file mode 100644 index 0000000000000000000000000000000000000000..54475afd7c3a5f5499b0e57d9ada60fd8307c916 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z#ze}?K literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_431D.bin b/MGZ/data/ps2gxemu_stage1_431D.bin new file mode 100644 index 0000000000000000000000000000000000000000..54475afd7c3a5f5499b0e57d9ada60fd8307c916 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z#ze}?K literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_440.bin b/MGZ/data/ps2gxemu_stage1_440C.bin similarity index 100% rename from MGZ/data/ps2gxemu_stage1_440.bin rename to MGZ/data/ps2gxemu_stage1_440C.bin diff --git a/MGZ/data/ps2gxemu_stage1_440D.bin b/MGZ/data/ps2gxemu_stage1_440D.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_441C.bin b/MGZ/data/ps2gxemu_stage1_441C.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_441D.bin b/MGZ/data/ps2gxemu_stage1_441D.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_446C.bin b/MGZ/data/ps2gxemu_stage1_446C.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_446D.bin b/MGZ/data/ps2gxemu_stage1_446D.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_450C.bin b/MGZ/data/ps2gxemu_stage1_450C.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_450D.bin b/MGZ/data/ps2gxemu_stage1_450D.bin new file mode 100644 index 0000000000000000000000000000000000000000..bc2f566a981a52b3116f2b392cf6be50a82356a1 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pG z!}EAZB=Z}8qI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+z+KTE*? literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_453.bin b/MGZ/data/ps2gxemu_stage1_453C.bin similarity index 100% rename from MGZ/data/ps2gxemu_stage1_453.bin rename to MGZ/data/ps2gxemu_stage1_453C.bin diff --git a/MGZ/data/ps2gxemu_stage1_453D.bin b/MGZ/data/ps2gxemu_stage1_453D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_455C.bin b/MGZ/data/ps2gxemu_stage1_455C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_455D.bin b/MGZ/data/ps2gxemu_stage1_455D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_460C.bin b/MGZ/data/ps2gxemu_stage1_460C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_460D.bin b/MGZ/data/ps2gxemu_stage1_460D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_465C.bin b/MGZ/data/ps2gxemu_stage1_465C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_465D.bin b/MGZ/data/ps2gxemu_stage1_465D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_466C.bin b/MGZ/data/ps2gxemu_stage1_466C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_470C.bin b/MGZ/data/ps2gxemu_stage1_470C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_470D.bin b/MGZ/data/ps2gxemu_stage1_470D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_475C.bin b/MGZ/data/ps2gxemu_stage1_475C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_475D.bin b/MGZ/data/ps2gxemu_stage1_475D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_476C.bin b/MGZ/data/ps2gxemu_stage1_476C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_476D.bin b/MGZ/data/ps2gxemu_stage1_476D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_478C.bin b/MGZ/data/ps2gxemu_stage1_478C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_478D.bin b/MGZ/data/ps2gxemu_stage1_478D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_480C.bin b/MGZ/data/ps2gxemu_stage1_480C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_480D.bin b/MGZ/data/ps2gxemu_stage1_480D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_481C.bin b/MGZ/data/ps2gxemu_stage1_481C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_481D.bin b/MGZ/data/ps2gxemu_stage1_481D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_482C.bin b/MGZ/data/ps2gxemu_stage1_482C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_483C.bin b/MGZ/data/ps2gxemu_stage1_483C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_484C.bin b/MGZ/data/ps2gxemu_stage1_484C.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage1_484D.bin b/MGZ/data/ps2gxemu_stage1_484D.bin new file mode 100644 index 0000000000000000000000000000000000000000..a758dde4898cb48ae29f6b8d9eed5f31eb8e21d8 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+yLh)m!B literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_421.bin b/MGZ/data/ps2gxemu_stage2_421C.bin similarity index 55% rename from MGZ/data/ps2gxemu_stage2_421.bin rename to MGZ/data/ps2gxemu_stage2_421C.bin index fdd4694429a748dc007ec4e945371f91f8e53819..0302133ea2b1bc2c256973314e9d72357bfac495 100644 GIT binary patch delta 1362 zcmZuvUuauZ82`>)lIBm_B_(N7n>2SxhUuInx{0?YYSy9+dngxLSrnnyt zgE@3%oP9zVD>+R%3eggcIaf(*UDqLB4YOO^M4_3hx--#9#WV^l@QK@@Bw!vF4SE5_n)m9RJwWvku zQFEE6l_g+G1)LcO-q$EKeiI_w3uFoRQn9XlrO<)XvW(N z0kn$XZq9(c;5c%7l3R{7sV062VCODZS3joA>yR+kwZc46y!4x{;m_6+!R)TY-J_Jz ze8{zy#B=YBETngC@chn0uA^*wp1p*Vwg^k&hqgBu#|_&xRzkJwW$UVbAr!?#c+mBL zI^%Xm!DU?U8fO*!t7{@yRRCDoK?e)-YKbt;0nV&RjooFwUd!5@O!~)%vyO9)O``=; zH}E^h6ZS3EoiprhlwCutjw#nXyN^}Zx!|HvMOj-ZfH@78s!v(~Z3oy%yN7}97yJJn zF-nq~;4W^qX@*aKRF1(tobCS8r&Y`YxM{Mwm_h>=dg650>pkOa3%7gXp8ZuPDYk)f z?*!8@*E?m+({OaG_dZAb_uhF=p8wwxc&S#$+|eYf)NUQU$&T*@tq+4O10J2s{l!Wt z2)5RFTCm`mpzZH?;w+DkJoCm}`y!-#)Hh=-HSh9rttGMDzl3(|Ia>xlY{d7WH=|@WQ4~*|iJBzRRJ;YW20C_pT z;eF*dcX|as8$7<3c^VsoQ`FXxnBe*;Aq#_o#7?W7J(j{)G+ZlG_0LX4(0VRxlbq#d4SphbTi2Uu2B8v?5)#x4uqHZf`!dM9U9@D+h2 zfq8-4#P_3aA*`Di=@jaM3yhUbKC&TjOJKvqSjEJM&^rwsNtk-Ij*mzBi`BYGS+*k! kzI~8e#2BXou_FpC7Kfy$AFmiZX@BL4)-F0JlcRrT_o{ delta 1400 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 KyM6s9+W!}wLl4ye literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_425C.bin b/MGZ/data/ps2gxemu_stage2_425C.bin new file mode 100644 index 0000000000000000000000000000000000000000..0302133ea2b1bc2c256973314e9d72357bfac495 GIT binary patch literal 10840 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 KyM6s9+W!}wLl4ye literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_425D.bin b/MGZ/data/ps2gxemu_stage2_425D.bin new file mode 100644 index 0000000000000000000000000000000000000000..0302133ea2b1bc2c256973314e9d72357bfac495 GIT binary patch literal 10840 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 KyM6s9+W!}wLl4ye literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_430.bin b/MGZ/data/ps2gxemu_stage2_430C.bin similarity index 55% rename from MGZ/data/ps2gxemu_stage2_430.bin rename to MGZ/data/ps2gxemu_stage2_430C.bin index 7396b671bcafd83eeff63889b9cbe8b286ce39ef..9c6cf4c74e754c5ceb04396901223f7542de7bd9 100644 GIT binary patch delta 1362 zcmZuvUuauZ82`>)lIBm_B_(N7n>2SxhRK{Hx{0?YYSy9+dnkcc7DecFD>T?5L9E`+ zU=CdwdGMk08!X5uVH+b43WZFl4}~y9iukZS84+BVdq`Trfg+KC^Siw#(n2rX`^)e5 z`_Av2?>niy)tFg3VF&ru6u{V7kguG6Q{wWK!aMr6@ho$F!9Jj$m}i$qxjY8|DzIh& zoS8yex~+^qeOwrq+-a~c)!b51VlUuT)2X4E*HxI`y}=_22T@Irc6&? z0JMwXY|VnTU^{YqikptLs3vv^VCOE+tbI(G*CDR2YX^C}cDlr%jPxhLLiLs;IQKX zb;hlXg3GwkGr=nOSI?xsssOOEjSd#%)e>Qh1Dsix8oMieqn5SWne>kb=WOR}TY3wm zZsK>gC+u6S+h^I^C_6@29g~g)b|0&bbN*$$in6wo0P`xWrk}I{IySJ9b`O2MFAn}4 z)k_jv;4E%+XogRJRF1(toa_D5qgIRqIBBw)m_h>=`(kw1>wOb!8=HMG*Z!)L6x%?# zf0C(~>z_8~X*e3z`=2BJd;fwf&;M@;+*GS!?r4HlYPXKwWXJb{Hb%jc2A4+W{$i!% z2TS`rEm(9-()M>;F_yD1K$rjg|J~@s9UHBE-+Fycyv?Xw!nsgk&1yKp?4cP5;yc}9Un&ri`BY8S+*++ j-aN=na+lNe_a1|r)Wh}O&kxs~?gRP=MHxcqph5b7tdhs0 delta 1400 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 JzWx*K{|oEx3v>Vg literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_431C.bin b/MGZ/data/ps2gxemu_stage2_431C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c6cf4c74e754c5ceb04396901223f7542de7bd9 GIT binary patch literal 10840 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 JzWx*K{|oEx3v>Vg literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_431D.bin b/MGZ/data/ps2gxemu_stage2_431D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c6cf4c74e754c5ceb04396901223f7542de7bd9 GIT binary patch literal 10840 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 JzWx*K{|oEx3v>Vg literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_440.bin b/MGZ/data/ps2gxemu_stage2_440C.bin similarity index 55% rename from MGZ/data/ps2gxemu_stage2_440.bin rename to MGZ/data/ps2gxemu_stage2_440C.bin index f537411ad011aa9b81dafc469398a7492ddd84e8..2348ab5c481b2b873d28c1d1421fe621f7972fa6 100644 GIT binary patch delta 1362 zcmZuvUuauZ82`>)lIBm_B_(N7n>2SxhH0H7x{0?YYSy9+dnkcc7DecFD>T?5LEOBZ z!5q3e^58?~H&~ES!Zt=8CKNKEJ`}=`QHBrOlM%s%xrd|`94OK^L;1f_v%y2!*-D0OahFY0{QZZcO@=g&VQhP>n}3bH|!Joi8*#@kjpawpaN^; z!I{pdq+819^QZYy$(;iGxvE<#NbD87VmjV8^|lJLTi1C+;Q&g_3TM9(3DT6%){)Z~1MsENlS0F=PO1aP>k!L3Fd)><~3@juUA+dcDBFeX5*ERiZ z1^`+Ga5ksGnztRgHNj0snp6|L2(WpVrsmn`D_s0tQ}Gw`us^dUapwqS zG#_)dCGqS>L+2Zt*LiO9G1pMGyv$z12}_8@@l(q?jN_W+Dl1~T<8|}0b~X^kSg_ym zh&tm|M!_Xq?HFTa{JUe^Ur_*9$wmhY@=B2~$^lNUNcF8nzFN&#?M&M7;Ee6GZC!7H z)HVFk_Kf|2HTyJsA7#e?t6{=1#~xzEaoWG2S5ekR0$^5!uTsxi0NXaOlJ)?7ov-%( zGo+Wq*TGp>-=-Np|4BIl4{)aQFOOO_4&bE8YGMj?obQU#VXt+Ku?=i=MO}NVj!|qK ze>8X1xtM`%uslMCO8J@-^Pn`Uk=ko(jnChhy;!-bCnzwIkPueMb%j+VZ_V$sN z_3GYjud&k`_+|gm-OLkM@1LX|kG&9Lo}zxA$rUM~->p^vnR-g&%)rl7knqhiT5;3= zCy^_IlZ>`)2I5^ss&S6!_c%)3#pGXEe>UC#*fY!af3%F@;Bl74OfWzhTJRhTgm-+3 z3gGze{=Wc`c?j>w6CC6=ugc*^rh?a?p{$Va2;LM}61XO?VqoNw;M)dlvclEH`81a1hd8yG1Y7!rEBp+hl4uhj7AP;a49Gbqcn lWx*T!xk+wwn*Q!%aFcql-ud;xy3@T+AD}2h2<jAjk4hoMroZVMu;n?eHx$<5@r z1@cihEixhXEvzV%>_D=e9!m1 z&-;HqQkg28%!lp4)Zqj`^jNsKaOkMC0t?yK^s};`9sY>DMOVzQ_XbwrO#qk%R?UJu znN_9Fl<_Bx?6~Ao!G5jel5!Fo!bQ_)FCX*4%+_@tQaFH8?u0j@VYME`A54>{I^^0M zPbe3FDFv{r;QeEovPNzIB$nY4X{vI;Dv@R;?Y^#MFYbLOF$d{S&O)Yn1Sl!#*C12( z^GT%)EcfnD8fH5BQA!n>*fuq7MS z^7GYs!UzXAvMg1$=J;A^xYN$0W*rsVY1;x71hSTK$@Z9ih>P|!-h;YL1=yx&<)3JH zxOJCrpxiafKE-U;Y40n#ANg#?0cNJ*vii6V(6m7(*(%uRdfxL}Yjd$XAm{EhX?st; zQHG$3%C2AC>4MRgOgq)|ol#H~6OIUtkZ~m0Cf;^LoIAaSTOQkv36{oq_X)E`OX9fL z{T%Uf_pDRne-8>S^5q!c9b?6kw)+O#*GjZH02URT8i_ldm3c2%>gOmR;hdoI^Ues< zaLqZZ@3$vF7PaS$IbXZW3#D5juqe#i1_ndI{*}Oo z0>3pdv~FNf5vU4X#D|K)Z&RSi6WS1b)xcb+Y+QnqLTDHmxGnga;5P-Y7#J3Fg=N9p zb5#u<>@=`FSjULLS6Zvlj~0&sl-q)VOl)MuaG-y*f9ob+n`7gE=lE0kV3+9kX}g?g NhqW6pc;G+wzX0+E)ms1n diff --git a/MGZ/data/ps2gxemu_stage2_440D.bin b/MGZ/data/ps2gxemu_stage2_440D.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_441C.bin b/MGZ/data/ps2gxemu_stage2_441C.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_441D.bin b/MGZ/data/ps2gxemu_stage2_441D.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_446C.bin b/MGZ/data/ps2gxemu_stage2_446C.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_446D.bin b/MGZ/data/ps2gxemu_stage2_446D.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_450C.bin b/MGZ/data/ps2gxemu_stage2_450C.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_450D.bin b/MGZ/data/ps2gxemu_stage2_450D.bin new file mode 100644 index 0000000000000000000000000000000000000000..2348ab5c481b2b873d28c1d1421fe621f7972fa6 GIT binary patch literal 10840 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 M-fOq7`BeM=0?n}uJ^%m! literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_453.bin b/MGZ/data/ps2gxemu_stage2_453C.bin similarity index 55% rename from MGZ/data/ps2gxemu_stage2_453.bin rename to MGZ/data/ps2gxemu_stage2_453C.bin index 2ed38b53f5ccb88293e22afa273e9ce602054c54..9c846d9de7fee448bbfef240e2c1e6101b814cb5 100644 GIT binary patch delta 1362 zcmZuvUuauZ82`>)lIBm_B_(N7+cbAc#?m@TbQ5n))T~7t_D}+?EE|Jfw?cz062#5h z8O))pBM&}weuD)WC2V8lL7|Wd^`Q{P7)5;8o{R`C%snLSz=0wy1Lt>pPo#xjxc8Ue z@AsYGIp23u`mi>+G-L<)odm$}NszA||3KpM)!Z5VTRXyB->^^UCuZ4|0WMDifC{Xh z17|9il@)~;+$1On?!%r>mGmfj4>#TsOwzten+IfEnqk&$> zW9p1s83h+{rEQdz@b9)UUs(ZQMH?L~z{>@~2nRT^EY&s__(~;hwKHkkgVVNCwl%#4 zQdjZ5?FIW0tM(~&8f8Zxt76pj~zsC{kE-L@VdNZ*)z^+-g{-Y%f1&*-{rUQP;&;l2jKeT;T zQ2`v^|MV|Fcn(6_>Np3v#Vc~?u_^C0XfPw>yMi|a76q;fEE^cUBKVepA*;|^IZJ{s z3M>fB3giZU9C8X_#lT>zP!n8WxM=XfRe|dQYX*i(1_p)RYUn`J(92bPKG>ZvR}IS2 mEm`pTUT%_GoTk6?7~G`pueX1_zwUJJ(fcUM5Q2LR(*FaGKgcKm delta 1400 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_455C.bin b/MGZ/data/ps2gxemu_stage2_455C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_455D.bin b/MGZ/data/ps2gxemu_stage2_455D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_460C.bin b/MGZ/data/ps2gxemu_stage2_460C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_460D.bin b/MGZ/data/ps2gxemu_stage2_460D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_465C.bin b/MGZ/data/ps2gxemu_stage2_465C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_465D.bin b/MGZ/data/ps2gxemu_stage2_465D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_466C.bin b/MGZ/data/ps2gxemu_stage2_466C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 zcmd^Fe^49Oo&T;R&@PZzNtK4i!mMqYO2K1D^b1yxN zjlP!oyrtvvlN6GX#>QBE( zgDHUyYoc=$?~L4MkPOjCgS?ni=J{BD1#JrCYpW-UVeU56V?^T`d7@f_V^pa(FKG1+ z?`)hZXM0GQ-A|DQT6PPst+lz2tZ}^^hwST8=ue?Pg?^0ZIeza0*<_aO50gu1xt?6W z;_ny9vxepQG#R-6kCbC_u^bIl@C3`Sc)m}QLEE{?tG4EsX{+T(#2}wW#oyG(^&^c+ zf3%T=HA*WPO{Vz);{)TuZbdhf4Ped~Xy z`e<6sT?6)W7<==iv5z$Nk;XpK*hiMXSd#w)BcG_^WndqBJHBz428PAF9`7$z3fvwhaY`po?tUtELbuv-wQjGoxi&_RrC&1qiUB_` zE>deZyq`$!_-@TMd|RSOQSn)MRxZpp~lS4H&fS5SWd{#|xYZVI@MYSa?l z?FWV1?1QQ{q0z&za(^1VUQ3R7Q*ROh7n3w zxaR4t;BMK!gXg}#;qe)Kg<_+aXy?b&tQ)hD$UZ@|xQ{iuKiFKxI#2OBPm+Vz;q`KH z{r(u{*~e?qM0Wm+o_sf5TZ4`~dl7s72@!1U5YL}JZzP!)iXnnmB_ zHIjNp*1BQ(CUn-Xww9JH#i!)^jF~9ly+Lj3a#cNES~j~4xMD2}Gpv!z+bmyG&`(g7 zDm7{v=m#D)KSnJ4M?_*@u+*A7H*;yJe)JuJFBAruWB8mz3H?yru;XOTWi9WuLf_OTUS@di~{g(+wE<-;U}Fc*~WZIA$0Jw zy0u!N`$$&|eJNorbX694KGUadyVj>Atv>LeZf(VP$*H(W2$th%B$wuPAHjUyitkfC z%Azo=vR@=$qTGE1F(?^Ev`IMEL+?~pJEBQ3a;uDn{p6-o(csi*Tx@47lS7Cp<;sF=(k}&eB7<5mbekW|J9en#Il<=ob z=Ij{H3#?zWum;Z7+*zzUP90#Je?TJRZDIX5xfst}tQlv< zm$?gCFM;v>*D#)5jPbQT?R!~_?_Y?qxCF)pi!fe~_zR2~-~Ix|_TsQ43qJGTwM_|YID{oF|PnG7q~=;)lDkq3-ElQG4kkRv#>$)=g1=_6f|-!F^$+hjo3bo z*glQeoBervn!Ffe)o{>h3Pa_|=5BU_PEDkrbvT)@f=@NPE0szz)B zE{}136%PaqZO3xNvAY^L&*JmPR5_kT*v>2Pp$DSyS+q_m@Zhr*ql!Xf9@e?66u5HQ zT-;Wq706M2%;BvV10K)^{M~qaDZQ(kw7uJWcPDbwB(RH(0Fw%E3I4*$=g@XiKlTyw zJStS;)VY*j)&C9e7?w^(@NU6U?->I9ZC{+8+K(Kse+45xOkx}Kyp_H$$FyEtAG3;&Y$#ig+vNs4BK=f^mT7S|GJmQ zB_+2xSSS{<4P&iNBcp%D)r&e~@6cbT2=X*fcm+9C@C);K6Y_;m$RS6!Qn4U#}a^ zdkrP{?P^E)D*ArTI?QtG@CxSeEu1&y>R-Vc`BRS=D#lp+?Ed*nhAL)Exy0_+m)LS+13of)fP~r|m zbUIluDgOZMYUNN3@71#l zdvjo44q(CiPKM^m6*5RjO2Bo*@++d|gKZuqXJ~{thaIuw8~F}W;R~;m1CLY5BTF9M zC&XUz>>)Lg&B`a#tVfiC9Y%>qxvGev-&9DrD^KIC$_n^<#{{wh4Xr z4z-$Q-SZR!ZmhQ^OJ*m=z;6sX$-(3KfefzSE5mA%EE(35`>G7BRtzs@?1oyc`B?8f zuc#cv(@KSjJMZ#hT><_}ZJ?Wv0D~Cbq5Yf5Z6tVoGqxZ5*ZY{mLIdl%s|mSAg5*t) zw)ic58?0{u>)_0h?|e=zC7EN3R@xF(eI#>Su;Y^7w@<3n-~LF2T||BFOO?&NbZ_%< zx;F*hq&mpKcOHEAk?Xtk6CbJiJBW{y%v<>3nC*xC4|=hFu~vBhkC9LD9xhniM^$+IM&{>gv?BNEwsm+=bdu={0v@-@cgP*jpK%3gO zxxvB$>vnzZ8|}RR2Fm;0%Lx*3hILf@lySXD&SKY{*j&cvSeB8;@!d@b`Bq3K>K=m( zTc&YFhwa;UM~mey35g!1)HHSDv^N;Y#5sMw@sshb>JN->NA39L%Z+c7Hx}O>g#3Fy zgZTCZ*whyg--b>y_Ujsuwy^*0t0s5fW|ELQh|OfI*c6DYt@s}JMNO(k52@NRoDr{B zdB#TO_RcYKJn)@Qt|bL?sgw&0l%Gd zCrWeu#C7m|;ZOAwQrRLuQFMJjA(iF&iIQ5WOe;O@RhQd-B6QVH6n%DnLMqGn38^gO zC#0+Xr+Z(Ezq_r)@nIGpJZFVT<5LVIV<@L3~47>`)HNtEwJP7=lUQC^N` z$XN*UI74S=&M+@6|Bd|a#`0yMIFm2WoLS)G;ZK4g(`28*_~}C`{L1`^26Fd<-?Ncn zcM|@kfMX={9Jvts9bx9Vsv}>6O_XX{OP|OayBe@u3QQ(5VQVxCxxN8JtiTa3c5#|9?B5 zZ#XZo&LuiXWRM9C6tMpA6o!Jc*4Z94Y=S8c9l~T zx%yO!!Ko^6su-Mt4)j5bQ%S^pi#NOu=T)p{@Ft2l?+=b+kGO|vrc*mqS5_CRl4+NRWC|P)f*DF1Rq%{-5sh0ryd5Ubmo+EZ)8AdS-`7%|8QP0CO6EZnngU? zk>$~a43D~UcvJ-*J!JbHIJfKirZ3q2c=x*fcVzmL;MB?1+L`ehPiV_28jJ=-Qexk zxlq6wd)TMJhj{=Efro>A0m2vV_}qwh_^g66E6;&<*Jz^qNDuCiwaJhQKPTc&zDVEO z648AWsoP6p-5?d?K3&xNBBY2`o<4y*xS`?)>=zx8WC01y(zzOr3!Im+9E?-;LB9iX zGz}JG?VGW-Okr(!{eX6}`v~L~lyUY$(wCJH_>(QB89Iu`oH_ZIH3_04| zi?+gho@;K+ufcc110@kVjy>LjIQF1-@HV2VpUfQ7j+PIwEtLdt4#aOHHi`T`#vR1? zynCK2*@pNPK>RC=MEQ3SLw94`-807$UqYW98?_($G3Q<0K@a*onA3S}oR(HFuF5;~ zW%PX=eaFxzXJpZ~6=U2T-oekI@9$=g`SQ_z9GF6W?f5G1;4jg>XXcpx5A1iYv_W^r zpy&3`By zQwMbH%G_7rZlZ=9xZmWv3MZc{t-D0r<3N5<0ZEjVf`{*!dvK35h5M)}+(%90K582G zQPa4Kn#Nre-(_X*p%X@re7(EqPq~M78nk+`_%F|U)M|R{8EgxGdAIo&)K@g@T2L=b zA6{7hsAXY2HGZ{TcImHp-NIMjnTPxMCY4=^u?*RI#rAJ?R@iey=uz^E*DHa@-p?6Q(iCv4i{2EJV23TAr)>4< zc>V;+?OIX&uUX!@VRIJtAk3~HWjE~LM)ti>CdZy!{D4Is^6^5f9f2&sC4a{d>R5yG zxjcL>=&Paa6@8XYJlF%l2A_ajEZYsqh2QbCFOtEND+AWLm2qJlu>S(yALO}}ap1MI zUD$hXX7AzN+fSrkdU;&wts4iA^OSJ}gE{4Y@%{oVn#_-{Wb}RI8w>SK%0gL$-bJzy z%ffQxV!KcV*ISkhyngTKxGjUl@1?kR;~b+i*EmM)pX3-dFO;8-<#LQ=2Y&fkEP+ct z<9J>9Av=CMbTot0+}%^FpaUt_Hm)SI<6tL6+0WqMZ!qo(IEs4{nrNnF^P1#70>5`F zaG&IM=Bn1|f!{Od^%K;z1J?2cG+o{My4$D*!9Dia&`7S)vnv6e=t)I zyk?gt?DAx$^p9l9)pmP!KhDZb`=RkHewjLrXWKKS(6XpLxv=h%v-O4ZxMJ6DFWPne Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_470C.bin b/MGZ/data/ps2gxemu_stage2_470C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_470D.bin b/MGZ/data/ps2gxemu_stage2_470D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_475C.bin b/MGZ/data/ps2gxemu_stage2_475C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_475D.bin b/MGZ/data/ps2gxemu_stage2_475D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_476C.bin b/MGZ/data/ps2gxemu_stage2_476C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_476D.bin b/MGZ/data/ps2gxemu_stage2_476D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_478C.bin b/MGZ/data/ps2gxemu_stage2_478C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_478D.bin b/MGZ/data/ps2gxemu_stage2_478D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_480C.bin b/MGZ/data/ps2gxemu_stage2_480C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_480D.bin b/MGZ/data/ps2gxemu_stage2_480D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_481C.bin b/MGZ/data/ps2gxemu_stage2_481C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_481D.bin b/MGZ/data/ps2gxemu_stage2_481D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_482C.bin b/MGZ/data/ps2gxemu_stage2_482C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 zcmd^Fe^49Oo&T;R&@PZzNtK4i!mMqYO2K1D^b1yxN zjlP!oyrtvvlN6GX#>QBE( zgDHUyYoc=$?~L4MkPOjCgS?ni=J{BD1#JrCYpW-UVeU56V?^T`d7@f_V^pa(FKG1+ z?`)hZXM0GQ-A|DQT6PPst+lz2tZ}^^hwST8=ue?Pg?^0ZIeza0*<_aO50gu1xt?6W z;_ny9vxepQG#R-6kCbC_u^bIl@C3`Sc)m}QLEE{?tG4EsX{+T(#2}wW#oyG(^&^c+ zf3%T=HA*WPO{Vz);{)TuZbdhf4Ped~Xy z`e<6sT?6)W7<==iv5z$Nk;XpK*hiMXSd#w)BcG_^WndqBJHBz428PAF9`7$z3fvwhaY`po?tUtELbuv-wQjGoxi&_RrC&1qiUB_` zE>deZyq`$!_-@TMd|RSOQSn)MRxZpp~lS4H&fS5SWd{#|xYZVI@MYSa?l z?FWV1?1QQ{q0z&za(^1VUQ3R7Q*ROh7n3w zxaR4t;BMK!gXg}#;qe)Kg<_+aXy?b&tQ)hD$UZ@|xQ{iuKiFKxI#2OBPm+Vz;q`KH z{r(u{*~e?qM0Wm+o_sf5TZ4`~dl7s72@!1U5YL}JZzP!)iXnnmB_ zHIjNp*1BQ(CUn-Xww9JH#i!)^jF~9ly+Lj3a#cNES~j~4xMD2}Gpv!z+bmyG&`(g7 zDm7{v=m#D)KSnJ4M?_*@u+*A7H*;yJe)JuJFBAruWB8mz3H?yru;XOTWi9WuLf_OTUS@di~{g(+wE<-;U}Fc*~WZIA$0Jw zy0u!N`$$&|eJNorbX694KGUadyVj>Atv>LeZf(VP$*H(W2$th%B$wuPAHjUyitkfC z%Azo=vR@=$qTGE1F(?^Ev`IMEL+?~pJEBQ3a;uDn{p6-o(csi*Tx@47lS7Cp<;sF=(k}&eB7<5mbekW|J9en#Il<=ob z=Ij{H3#?zWum;Z7+*zzUP90#Je?TJRZDIX5xfst}tQlv< zm$?gCFM;v>*D#)5jPbQT?R!~_?_Y?qxCF)pi!fe~_zR2~-~Ix|_TsQ43qJGTwM_|YID{oF|PnG7q~=;)lDkq3-ElQG4kkRv#>$)=g1=_6f|-!F^$+hjo3bo z*glQeoBervn!Ffe)o{>h3Pa_|=5BU_PEDkrbvT)@f=@NPE0szz)B zE{}136%PaqZO3xNvAY^L&*JmPR5_kT*v>2Pp$DSyS+q_m@Zhr*ql!Xf9@e?66u5HQ zT-;Wq706M2%;BvV10K)^{M~qaDZQ(kw7uJWcPDbwB(RH(0Fw%E3I4*$=g@XiKlTyw zJStS;)VY*j)&C9e7?w^(@NU6U?->I9ZC{+8+K(Kse+45xOkx}Kyp_H$$FyEtAG3;&Y$#ig+vNs4BK=f^mT7S|GJmQ zB_+2xSSS{<4P&iNBcp%D)r&e~@6cbT2=X*fcm+9C@C);K6Y_;m$RS6!Qn4U#}a^ zdkrP{?P^E)D*ArTI?QtG@CxSeEu1&y>R-Vc`BRS=D#lp+?Ed*nhAL)Exy0_+m)LS+13of)fP~r|m zbUIluDgOZMYUNN3@71#l zdvjo44q(CiPKM^m6*5RjO2Bo*@++d|gKZuqXJ~{thaIuw8~F}W;R~;m1CLY5BTF9M zC&XUz>>)Lg&B`a#tVfiC9Y%>qxvGev-&9DrD^KIC$_n^<#{{wh4Xr z4z-$Q-SZR!ZmhQ^OJ*m=z;6sX$-(3KfefzSE5mA%EE(35`>G7BRtzs@?1oyc`B?8f zuc#cv(@KSjJMZ#hT><_}ZJ?Wv0D~Cbq5Yf5Z6tVoGqxZ5*ZY{mLIdl%s|mSAg5*t) zw)ic58?0{u>)_0h?|e=zC7EN3R@xF(eI#>Su;Y^7w@<3n-~LF2T||BFOO?&NbZ_%< zx;F*hq&mpKcOHEAk?Xtk6CbJiJBW{y%v<>3nC*xC4|=hFu~vBhkC9LD9xhniM^$+IM&{>gv?BNEwsm+=bdu={0v@-@cgP*jpK%3gO zxxvB$>vnzZ8|}RR2Fm;0%Lx*3hILf@lySXD&SKY{*j&cvSeB8;@!d@b`Bq3K>K=m( zTc&YFhwa;UM~mey35g!1)HHSDv^N;Y#5sMw@sshb>JN->NA39L%Z+c7Hx}O>g#3Fy zgZTCZ*whyg--b>y_Ujsuwy^*0t0s5fW|ELQh|OfI*c6DYt@s}JMNO(k52@NRoDr{B zdB#TO_RcYKJn)@Qt|bL?sgw&0l%Gd zCrWeu#C7m|;ZOAwQrRLuQFMJjA(iF&iIQ5WOe;O@RhQd-B6QVH6n%DnLMqGn38^gO zC#0+Xr+Z(Ezq_r)@nIGpJZFVT<5LVIV<@L3~47>`)HNtEwJP7=lUQC^N` z$XN*UI74S=&M+@6|Bd|a#`0yMIFm2WoLS)G;ZK4g(`28*_~}C`{L1`^26Fd<-?Ncn zcM|@kfMX={9Jvts9bx9Vsv}>6O_XX{OP|OayBe@u3QQ(5VQVxCxxN8JtiTa3c5#|9?B5 zZ#XZo&LuiXWRM9C6tMpA6o!Jc*4Z94Y=S8c9l~T zx%yO!!Ko^6su-Mt4)j5bQ%S^pi#NOu=T)p{@Ft2l?+=b+kGO|vrc*mqS5_CRl4+NRWC|P)f*DF1Rq%{-5sh0ryd5Ubmo+EZ)8AdS-`7%|8QP0CO6EZnngU? zk>$~a43D~UcvJ-*J!JbHIJfKirZ3q2c=x*fcVzmL;MB?1+L`ehPiV_28jJ=-Qexk zxlq6wd)TMJhj{=Efro>A0m2vV_}qwh_^g66E6;&<*Jz^qNDuCiwaJhQKPTc&zDVEO z648AWsoP6p-5?d?K3&xNBBY2`o<4y*xS`?)>=zx8WC01y(zzOr3!Im+9E?-;LB9iX zGz}JG?VGW-Okr(!{eX6}`v~L~lyUY$(wCJH_>(QB89Iu`oH_ZIH3_04| zi?+gho@;K+ufcc110@kVjy>LjIQF1-@HV2VpUfQ7j+PIwEtLdt4#aOHHi`T`#vR1? zynCK2*@pNPK>RC=MEQ3SLw94`-807$UqYW98?_($G3Q<0K@a*onA3S}oR(HFuF5;~ zW%PX=eaFxzXJpZ~6=U2T-oekI@9$=g`SQ_z9GF6W?f5G1;4jg>XXcpx5A1iYv_W^r zpy&3`By zQwMbH%G_7rZlZ=9xZmWv3MZc{t-D0r<3N5<0ZEjVf`{*!dvK35h5M)}+(%90K582G zQPa4Kn#Nre-(_X*p%X@re7(EqPq~M78nk+`_%F|U)M|R{8EgxGdAIo&)K@g@T2L=b zA6{7hsAXY2HGZ{TcImHp-NIMjnTPxMCY4=^u?*RI#rAJ?R@iey=uz^E*DHa@-p?6Q(iCv4i{2EJV23TAr)>4< zc>V;+?OIX&uUX!@VRIJtAk3~HWjE~LM)ti>CdZy!{D4Is^6^5f9f2&sC4a{d>R5yG zxjcL>=&Paa6@8XYJlF%l2A_ajEZYsqh2QbCFOtEND+AWLm2qJlu>S(yALO}}ap1MI zUD$hXX7AzN+fSrkdU;&wts4iA^OSJ}gE{4Y@%{oVn#_-{Wb}RI8w>SK%0gL$-bJzy z%ffQxV!KcV*ISkhyngTKxGjUl@1?kR;~b+i*EmM)pX3-dFO;8-<#LQ=2Y&fkEP+ct z<9J>9Av=CMbTot0+}%^FpaUt_Hm)SI<6tL6+0WqMZ!qo(IEs4{nrNnF^P1#70>5`F zaG&IM=Bn1|f!{Od^%K;z1J?2cG+o{My4$D*!9Dia&`7S)vnv6e=t)I zyk?gt?DAx$^p9l9)pmP!KhDZb`=RkHewjLrXWKKS(6XpLxv=h%v-O4ZxMJ6DFWPne Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_483C.bin b/MGZ/data/ps2gxemu_stage2_483C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_484C.bin b/MGZ/data/ps2gxemu_stage2_484C.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2gxemu_stage2_484D.bin b/MGZ/data/ps2gxemu_stage2_484D.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c846d9de7fee448bbfef240e2c1e6101b814cb5 GIT binary patch literal 10840 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 Nc8~Y^?W;f0{(mM|6TJWc literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_421.bin b/MGZ/data/ps2hwemu_stage1_421C.bin similarity index 100% rename from MGZ/data/ps2hwemu_stage1_421.bin rename to MGZ/data/ps2hwemu_stage1_421C.bin diff --git a/MGZ/data/ps2hwemu_stage1_421D.bin b/MGZ/data/ps2hwemu_stage1_421D.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_425C.bin b/MGZ/data/ps2hwemu_stage1_425C.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_425D.bin b/MGZ/data/ps2hwemu_stage1_425D.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_430C.bin b/MGZ/data/ps2hwemu_stage1_430C.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_430D.bin b/MGZ/data/ps2hwemu_stage1_430D.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_431C.bin b/MGZ/data/ps2hwemu_stage1_431C.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_431D.bin b/MGZ/data/ps2hwemu_stage1_431D.bin new file mode 100644 index 0000000000000000000000000000000000000000..5c3760816da2d3d26ba3f128df6e45d8f3cffb2d GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+zp)JdZN literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_440.bin b/MGZ/data/ps2hwemu_stage1_440C.bin similarity index 100% rename from MGZ/data/ps2hwemu_stage1_440.bin rename to MGZ/data/ps2hwemu_stage1_440C.bin diff --git a/MGZ/data/ps2hwemu_stage1_440D.bin b/MGZ/data/ps2hwemu_stage1_440D.bin new file mode 100644 index 0000000000000000000000000000000000000000..30c09aacd4eab0e410d11179095862745c191f0e GIT binary patch literal 192 zcmWN`KMO%o7zg0ry-xB042t6VGf|Y~7Q!M$J_FsAGVu;?&M5|?(I+q&Y?6hHM%$eT z$!w7`Tz7q*ujTbPWUjsjHoqH&+5l+_O4l*hH!SoKOCCpwmnq_1me?&)^=igT9$jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9jci)t6KxT5^lN2YCnKQ}8h2%T1>L_95 pM}z!uPykPpVRC|LP9&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_455C.bin b/MGZ/data/ps2hwemu_stage1_455C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_455D.bin b/MGZ/data/ps2hwemu_stage1_455D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_460C.bin b/MGZ/data/ps2hwemu_stage1_460C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_460D.bin b/MGZ/data/ps2hwemu_stage1_460D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_465C.bin b/MGZ/data/ps2hwemu_stage1_465C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_465D.bin b/MGZ/data/ps2hwemu_stage1_465D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_466C.bin b/MGZ/data/ps2hwemu_stage1_466C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_470C.bin b/MGZ/data/ps2hwemu_stage1_470C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_470D.bin b/MGZ/data/ps2hwemu_stage1_470D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_475C.bin b/MGZ/data/ps2hwemu_stage1_475C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_475D.bin b/MGZ/data/ps2hwemu_stage1_475D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_476C.bin b/MGZ/data/ps2hwemu_stage1_476C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_476D.bin b/MGZ/data/ps2hwemu_stage1_476D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_478C.bin b/MGZ/data/ps2hwemu_stage1_478C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_478D.bin b/MGZ/data/ps2hwemu_stage1_478D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_480C.bin b/MGZ/data/ps2hwemu_stage1_480C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_480D.bin b/MGZ/data/ps2hwemu_stage1_480D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_481C.bin b/MGZ/data/ps2hwemu_stage1_481C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_481D.bin b/MGZ/data/ps2hwemu_stage1_481D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_482C.bin b/MGZ/data/ps2hwemu_stage1_482C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_483C.bin b/MGZ/data/ps2hwemu_stage1_483C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_484C.bin b/MGZ/data/ps2hwemu_stage1_484C.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage1_484D.bin b/MGZ/data/ps2hwemu_stage1_484D.bin new file mode 100644 index 0000000000000000000000000000000000000000..c41e21098dacf11c6d4ccd2fb2887819b2d73079 GIT binary patch literal 192 zcmV;x06+iuA^%}~2m+?~0RXW2;Q(;^0RVXWApn5;K>&#R;Q)~P!2pqI=>w)tfCM2gc5N?kZ7=|Q ugCZ1oV+JIABOpLPfB+nP02pk100gXj03WPO00AsGV*r3l|NrDpfB+!-`bu~J literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_421.bin b/MGZ/data/ps2hwemu_stage2_421.bin deleted file mode 100644 index dd83aac59386c98967eebd1f9d5cda0d25d2f467..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11088 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 literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_430D.bin b/MGZ/data/ps2hwemu_stage2_430D.bin new file mode 100644 index 0000000000000000000000000000000000000000..6e9801cf287e51f5882f11a024b4803202a15f68 GIT binary patch literal 11016 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 literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_431C.bin b/MGZ/data/ps2hwemu_stage2_431C.bin new file mode 100644 index 0000000000000000000000000000000000000000..6e9801cf287e51f5882f11a024b4803202a15f68 GIT binary patch literal 11016 zcmd^Fe^8X?o&UbO3%d&#NxN-H1ou@jWrYZ7(%if30tps)v`RLlV+B6HPEBo=tNzbn0YmVhx&Hvdea+-n1pFB)s?e zzPpQHB(c5D{d3H`^YA`DzR&l^=lkP%-c@X-qt!%dA+%*8k=sSKklp8Z2Z*+`WIhvY zd3`F;zqFvthw++1TWFQv-&PZOHMGinG~}vsL{|~D{S7Tvto7vEM%isOB!+6L99PiK z^r}c7iwl$;U!-@$E2+TiBSESkAh_vyG)EW~=j^Y1UC52-bsVjDh zdLjZ1DmL>`%;{gFkqFkN{}k{I+9K0sIV6loKBC4dq5$@2#Cw2fSfOmcQf)daRq2^|CN%2GEi=U$E_(k$x5vcykA_`ooq^4?`|8wR`X|xU%SzZf5uIdQZM6f1; zH4&_dU`-TjqF58f8tlV+ed+^QM3yBb$IbCCXxH;!O_^V1{;sF@S^F#77dzyJ^n7KB z=<{imt5D826|($TA?J@*lTaizkXEbf?=gRnlZwnlz7EP!n$1UxmJ(HNL;n#X*z^y{ z_w2|P%9a}Rk9ds)28^{qtX*QvcSIUUO#W|6&0~8354)4{YZ2_D*v&_k?Mr0kaG|Wc zcDJm&?~y~+6>_McRt~NDy3Dq1G|`$s)r>);hpKKD}E&#@0BD+ zgQTfD-j&rYZ_Db@m^^b2;Cv9WWyc^#406OEM+|bLaDy%RPtek#GnSWS#rV}j`oPsw z`ry@z`teCYAD&#KpD}d7dN`$Dp1i2XlX|!-_LPjh{`q#gb zBMY(TChWQOlY3U~r^X1@7yk%2O6(=gWf#Uq9DK1X;K|2(L9{vf!kp@AvgAVte(4d! zqkhV$riFjxHHxyJ4LDzUZEqnrNte|{{CpN4uzduy>!nAmCeTg;?OtA|v>CMj;b!@~ z#)DY{&vVK@d61}@%m!U)FJtdkWt zuW!WpVfK++^XFQDy{7R?S}W(6$R$mVnlvrw`g-g5Q(AcZRjn)7q6ecc=!&dEA(zP! zu?w=CF|areS$40x7GFC{iJtf>`u-02N3@Quby-g+RPWziK&1B9)1Z|xDrC>VYf3f) zvxa`=@N)yVuO#GS%ragBJ2X;{#1fd5$#f&!hQVX8MgsQr#ujTmp8W>4($wwn_55ET zCgkqseHqi3lcRl!X#2-hr)qJZZ@*w;-SZyp?`_QIJq`cBUhE&d-%K0sJPA6W4?i4D z(U%OY<=%O14;p%60(yFZ@j(MjA3ofl@I@QsB0>GH$vOQntWNviH`&+a250_U*bl!0 zJ!v)p^9GbH3uO7UGe6!8TcmsuzJ4P)7^7~{UZPNKcNg@L#NQytOGEelbH^9RBF?}r z`~I9h@@K?|<5(l~Fh&+@$HQo0Tf`!h4;UWyl9$SSioGllAaB27gU(IC8uQU$i}S2^ zIMfs^16Gfq<`_eJ+H|zbPLI3!anayf(NeyrbcIg8ZE&V>}d(s zI7haWdySk3KQV7vQWnrMfb-@rHL6+xsZ_%8H&@Dp{eE7#T*_t`& znOCqq@&ja9gfX#J|Io;PY(FpZqIV3>Fmho4I)OZ8;uIU00X#4a=Z82$?S*}EUa|I3I#e=XzKpiOQcY|vVUeVBHjVQoL= zW(8Z;9uC&59pLpmmmdvwlI_NRrY){uO(Sio>B^j@DexT7GU|x{>48HoV6@Z7XMXhe zcQz9h?j*stpLov!cZ;sKwUEd$$=yOi2(=JwXosFl7!zFM0vFlPn~3>mW?*L26D7%W zjBM2;lt7PXQCs~MbE>alNk5N#c+S8Q>rD)>3?|l5(B(WE-9+RWr`250j{=Zu# z8|z_r1#r^h90@I3@6aG0c(atb^rbsMM%^FTx#3x>%+**CYke}lU z>lF|+>{cc+j#;nHk)R8E+hDVdq|H8Hn>j}fo7Dsi8yWV30(O5HvE^yD)gO-~^*ZK7 z2^gRk{gYAnvYl+Glj7_P*JLKKqfC!$dHP4Np#^?Hp(V94Xc+a9=OksTC*#1k{swBH zQBFi$4~?U~8Ap9Hj`}8s`X+|@CRHPGZIr5$VyJausCCw$9;C#d!201@X|5WH>ms9G zOx8)MnhG`QBIsp}@<)#xY*`UkPM|j3xQf2z>AJ7W(H8I-qnucb zMD>WoHA_IUW+P`9*vj(g*&KscOIFK_J`49rUie~aUWHBq`tp@yQ{N4V%TODVKlJ4S zze0%fdW}P&sqd;fNnzNqiRhQ;zo(9Vy;WX7i%_?OfiJlqIxS9M(x_?C7g0xkk6M>9 zr69FNFn*)@R{a^~Xoi0bVs6G<^E83J(;1{k4x!HNT8NsMsGxT%*`F;ZYY+G`^2}4( zn7Z;;vij(|^48PO%Ul2LX<04!g{<0tCT|^oN#?yccHFQ&dC92xyw}N6WXQohc2FzJ zG8ccW8_53*Y_JmTFVXHndmnP{;eIEjGhMvf2B8OzcM{?Nbe@eq__3hjJvfMY@Y{z$ z%Zh%^*G*yc)lvFS@h;-MzO#bnq3@PXmF7pQv@mL!t~&B9U+dBqhFoTjF+#|-L5BYl zeDh<(3W4hr(9NAKn~?RR17z#iL?(}qC{M9vuj{NYaM$R%+Z8AE^-B(S%ZHcSTqJTV zQq>xVs;|fSnck4dhUf@Kp{ zm&u3vFWbA2%rcP(dXA8I*D&T$E-t4Qo}ChH)TEQ}50KE{U4(;g?!1zl&~PT3GL zPoI_8wvuYg;xS%_H5RTzJ^F{2nb*{rO1hl{<#y|kx_69y{vP=J*k8)$LmJ&-oRM%o z;xo{dQ+n%_i@JPO(6y_J^f3GV)k?kVYEbXF+M)N)6(6S0lZY$3JIEGaH1*$QsArX@ z3+12-aUrxoj=JFg$Kd}zhkc$dNcevm{Qv2s|6fS@e;WLMx-aSfY4HDKU&V!l|A(5{ z|JNt{e`$Tf|1Tu{{{s9U`h`93gFU^4-0r6wycbj+FmwM3-+}B1;|%}5TzMevI9m9D zr3vjb7<+?lox7JFdeC?~xvTK-jSPNRPO$xHXG4d( z0_$EO8=f!XAv~EqP7?NYk_~5}{>ZD^0Af$S+eu%94zk_8TlZkx3|U2KE8WrCOhRvy zp`Tjx+cEbLbV)sSo})j-cImN^*-JR9^r3d>1FkyFM_Esh{YlnEsCh#-?o+yRGpUws z2HM`<0?JS_&E37INptZY3e@|tkDcY=Cyd&xScGh+frFQ+3u^@SVc2^|Z-cH^?xg_q z#&)YUcs64V;!BU2OuU{S@L>5=9+r^Z;9&(>r+H}L+KFD^sfnjfr?JZy*oI}#h zPs&abi(wzdS?`x~N#y*IJeQQ@?zfkyul-(zUj%aBv6s~CpnL01)4dVkCeng);VRr` z;O=N*>l0hv3RhW=Cwj!B`j;*X`zYtz*+vBu^0N}#*Nj6E--g@=gIdoc61ATM51Ynu-iPle@7}KG zJI`awmYlk-YHvB*u0%dmr)oZ#2TT9NJa{6R2XklU!LggmgX_V6-(MgP-Ugq#4SBHl zoRJ4{$NLA4znx`d?c7NAPUy6bw1sP3zU9S_0bf)rE3`pY=Hu-5kx`GVW^8XiNv3t* z`z&0K{XfTbMo$Wp@ZAE&H)FT`a6RyCE`fe!-vQHkL!XEt&X4T*pNJFAnQ`I<`rP-w zjT83#>*7S#jpKwpe`cJ>tFY%Q&bJ&m4JwFjA?D>f}VXscT*Jr^d< zvmQBqN6T)ut`>394Ikwxd-hf>mEeTL*8Sb;W$1sX3yjSdl`4G1}5IC zFPIhcA)^uV%M&qwuG}dtm>6|eT!)8J;6bG zMFog7(t&{twjZ8Mk2`LhTLYMrdgii$TTEcf9Z2G;w3cy|I_KCzk8J49Tg8|f^+O-s zz3oX%q2B5RPNp&CnFBKmfSLA*(aulD)aXrMYCbSEn!;2h?;56N+KKydR?E3|R-4Au z=*)Ri4lq>;OyvMmuz}iRU@DB9Z`^6|K3rENYk~k`K#6-8GN$e*P*+JbH5zFqQ>cPQ zqYvR;y9VE!D@cmqjO@`-f1xf?4o2Tp-nsZD&+(kpb$JJg@@W$BU9D9;dC9TdX~T^q zz5!ytJg?m=1O*^ zOI7<{l^(Q9rLWi_5@Mv&ewU{LnA!|Xsf;OepRZe}pM|S?|8!ijPHq}U<=5e8YYIn~ z6F6#{fumC3XhSmgAh_KyHrhw|6!F9#|&T-MSI-Eg5o&91t=LN3In2!MVO+6Sl zfsfjr9PE7y_7=&j99Yq<++rPKex+fKL-wyo{fH-^P|-wx z-466+-u+}OycUEkHVJ@{7U7#E?xi|# z&lJUdRTTGCf}?yAOdSH<_;>xh9xQjQsZ zP!ej+`H5l|e}XfmpzbtselA*{5}-Tk8h$sWm}xX%CSi?6B7F2L^UMF!C;r~~vC*~W zMSo)GY*YvyT z{yvXLpHIHKiy!`0YjMMa-&p=Y^S7B!apRWnZfFw(Z#!3wPx_L-O&5W$Wyz- zGG8l|1w?{u+aix5UUvE=#Z}M0!^u^S)%z+RwVb^ZagAlKe9XX4N3H(cQl^JKA+l|k zyb|~;3*g%^f469=mx>B7cbkb~mmVLk@X>rVGATE#ukt;n+kRd2LyUdTQor*R+qr1f zF0Jz*J-hQU$e%UF^hMOb&q5F3-euq=tLlA_qRLnCyAm_*dz|#F3*U1pcL@RT-XmMT zFrfTL!E$8;-|<&2bMWuQkh4XiwBtk;JmkPrO_biZybN@@DQ9PxhG3`kh96S;z5;rF zZ-j>6J7!5kj0_;(VgH_k^wS=dp2PR%=cJ?fKKlwi*SVRVD?|+T^@2td4M}655u)^- z2tB`VfQDk*9v=V=zJtz^@Y|c(sUQ3;$dQ|LJ#qrEUBfrNbc^T?(0#of6qYcC_WL}y z7Z28E^$64fx&q=j$8W*yBXg~O@rA^l3l-C**UNOPTcwV9-lX~95JS{+wn&1fyal-$8gqfhs;n4c(4S& zN$I@{==le(9ukp*pY7d8L(vNAFM`c|+bsUtssBu4IhHSB8m1v&NQ_0P{u|(vzrDZ? z{m@%_+)nkN6aZ5i$Ha64_@ z>7l{mUL#I<@&2!o1ypjU8F$C~@Ez%Gk|QsX7GFRGSN7qzbZ_IgbT5(r$^zV(J!U$N zHjGDdZKwH|*Av}9U8Ud+bDET+h4S7>8oaWB0=`{zkG6mYI``4@vfX;Pt=BrX+d~7} zH_$*47;D%}+7pvB0Nm!_^;YJw7~n&Ur^!jG_w5y=!tM0M%Kg^WvBkTN%lJ+n>O8YN zv=`XB{dGqOc|L(XYYve$4E3HTvIBqCqM475KLL99zxqqWqooCjHoq>}#*^)yMC&R^ zzCWC7hm!4%WP3Q#x}-$A)Rt^>lKt7q)|YG>lWldf^(NcY{3Jh1Q}Hv998bRIr`Fdb z`j>^1`FAG( literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_431D.bin b/MGZ/data/ps2hwemu_stage2_431D.bin new file mode 100644 index 0000000000000000000000000000000000000000..6e9801cf287e51f5882f11a024b4803202a15f68 GIT binary patch literal 11016 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 literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_440.bin b/MGZ/data/ps2hwemu_stage2_440.bin deleted file mode 100644 index cdfdaa5a956234910232e7c971877c270728fadb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11088 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 JLGjh?{|yROmFxfj diff --git a/MGZ/data/ps2hwemu_stage2_440C.bin b/MGZ/data/ps2hwemu_stage2_440C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 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

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_440D.bin b/MGZ/data/ps2hwemu_stage2_440D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 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

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_441C.bin b/MGZ/data/ps2hwemu_stage2_441C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 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

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_441D.bin b/MGZ/data/ps2hwemu_stage2_441D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 zcmd^Fe^8X?o&UbO3;Ql$B=iz;Re4p=+&-cgkysL_qqt!$yL9}HOk=sRL(BZ3d`-!%;rau#C zeQi44zpS9lhw++1F}S*}uDvGmN^rIHXwX&VjIJhX{~KDO+8fBXoif{NND9_eIWME1 z=~a<2HYrf%epekCAVov{Bog}a}^QVGu(3Y4k%OPV#_7OEz5&5x46W;wqBPwOqsnwRFa+PsO zt+F^L15`5EN%G`j@=czk>dA{#cUho@%Ztf>xssZzY2h!KFSW@&RAhTK0J*9oSQEjT z2-ZZfCW19ltchYx6l<^#@AatJ6ljrqHl-e>Kv?pWef8dLMt zrIOF5Q;tem-%`o;Q-d6XkV!W3u=|%>Tf7)+a?RG^;Zr1*6Oy!kX=vUqK$RI`!c<$N@H{?V4R)m zG{&Y58*^!fiq}sTwQs2s*{+lNVxc1UTO)oWCzrb_7L>BnST0eO|2)KrQ*sBdVQh>*;CM~=(U2WxW6!X23 zlxTo-ZRfj+w)JgAI~r4F?*W_-Lbl8p(q9W_TS$q zpI3RX>fm`^`KJyMRg=}EEAOK;-ix0IY|8dzyIyP4m__$@E3ji9HDBEaaWSsL&y;nl z;>PujI6uNZl4HH44cKcQe@AcQ920p*SE3eO54h_6<4@|L@mKWjK&ugmx}Ynv4+UKo zXT%{WO4`7ZNyxHi{nhx|RZ8^u*U)!A@{eR6Tj#PLSE-?HPXUqE-#~+Q#;A}v3$IDp zOw5}4na9sf+`b%_k1@-5_3zY4I}(dyRw2vva2o=T#X1St*Be`+hdl>OY^7*B;OqIn zLQKfn!}~I(F(*s^GSQBYsb143eZB*N$hzk}I^Nrq&wHBwfxXy2c)!^;+;swUKp%cM znxrqASj)NN>K-)o_yqLy0^@@Qm_B^CKkkbn+cFr>}+-?!M;mBzgM`LG|l z06poVfO!Mz)@(&NotHn^0$U_~5x#ysIT)jE$x)(GZBIA!k-*;|$4gW9{qx5c$Rf?c zF8ltxKJpjDh+(V|!iY>QZA@d3jlUh-0zPj!^}5&8R75jwX7YOF^CtM$2fT7A2#XlsgY$w58h^K~Zs@*;Wdd}iql!`XPi|ElUQckeYK7?E!@*=AT ztt;6c`F^r3#+X!Vd}!uBwx1Vy(L07`1i8=;oj{&4X|3*Wl!pE9OUD(_CMmRYiT|`T z5@@v^ZG!H$LSvBgRKR7Ex~=eI_$%mV?s*XZFDC;1b&O+^Ho1MUL0cL2VcP!2`}bmQ zMxgcnaG>V?K3>mr`O#q~#bNGe+3E_^G||?Y?(`X&0?z?0v!3vi;XmvGM!U>>R)_xn zt`?%gT_pGp5brtQZZ(YdR+2a-xm!sHq85S;9nfSW-D_U)7_2>{n+b+ivG2__U@Evv&IuP>G78-r`DJ-<>$D< zdIdyHyOl|dW7exQ9B^T85jIOp*zA3_nRLpuS&iSck!dd|V9!?&Tb^cH{pnajuVY@6 zfPNbGO-13$4iZr(O|masm6@c@GGkKDH9mq3ZSV^UF0EBS!>pG)Cn!@pF$sJducHRSpIBL^v*^0Ukb?TdUDZyJ&pUS9D*MCEawt~+XWyNA7 zX-8zPS^Tm+6FI}gR))vOR4}&i=&pfG* zX{&ytXy1QV*>?JQW!t|#t!M?mQZ&aelx^cLD!doRj_cMZFPb%<_ZnG>OgWgxPHJOW z=Hrib1NonU4OXH3HQK#s??ujisy~lXnJ(VNLFj?wos2jDooAvCek|yC4-8@+{Ptnc zvZJ5#b#n-P^_2Q^yi0g*=&GOv=)0*)qlM8bJ%n1OyPkY2*17aWL6?uu$>Q-5<*H)l`mTloca34VU6Z7}_Kwrt`r)N^7fBq8 zG_A&|85?kZrq^W>5gmbV#D<{fK4(z7&&lgT4!aRf7t=WwV6PCzMV14)aN@liy0d66 zkq`A>rgsrp6(R}roI&YQU6~6x$0eYyBB?tsQ3q*cV{9PzF*Za`$0T{q8wUG!(uRN+w4QyzA^UsyW#U=pO?=Eb-LX=BjJ3+ zXQ0a`jke1d4dsep=vNjSA@=(#l}7iKfDyjZY4pz*A7;*zh%0+KNt|3f{oiG%XVs?* zm4FLzA(*X1UGV>7@c&=JK2I0K{XYf%|8&Ct&nNsp1^z$Nm+=1-_i3j^sM4jbmyjWM-_mU4{{qs_POo z+h+H3ENHJVbK_t#z5okfoX>aJXZUQuysRJJS-w8{S*sZYWG7WbC3teIiRW`SH5=z`_$ z_e_(`qmvL~Kj}C9L{xL&!^g?$=_jsh2NU^}a*j~?{+Gyt$110g$q&m3wmV_NhE9C5OqwO0v)J(8#qDWnn*OZ=*?%?ap*X`3RmyN)O(? z+=+b!#5tU=ZW@6O%-ZhoCbH{6-hXzDCsebo+iOwV1W8)=U_*gvZ=LNeU>}@AQms!Y zc_bCXK5AY=osvTm=a0m>q$KBnqeOf44+{LkpL4-cQoob#sXtBkM1Y$}E6#}AhsZLUA2}Dcs&JH;v<{5< z+Toup6Q4P?_ofujd68rBU^OjhgT6{w*80;zGw*@3{8@7^^eIi7s!d&BPW!!o*Ua)) zQ_3HI5+o7lT1&B+#}^bOdFu#n%IC8!^T_M??#qK(&m$3aoB$7-$8p|=?Q zQ1O1#xBiOf}j2fbU7)LHl0Bmo(0ijC0gN z7`J#C=Zc1U4L*^lI!Z8B!ehvRGV_*m$WgNXLF7E-J@y%nf(b*44Ax45mhB z&y%x&sZwAn3z&ipw6KY(5OThGr^WklU6rT_{D=W1?h(kCyrV!}CDZh1q=hWO3L1?* zgnR88d~>cKIf65?$3Xpsx=1|~eN(+~@lBrNIbj&ePLh<5;s@6TZZAEt?YzZVn&-Hyy_}@d3dh~0TO402)f|6S zddMM{zU+WVh>>}YJ3SS^)D~b$V@z55d_6+L99-S==i`cXa>F<(zXnI!k~q2)$5Hz% z9F+n`8xyey!R@-S>DI(J=3aOFw)l7mc$+siVGRDUFo_}djZedoi6LMK{)IDt97nS; zgd9}Bb++5bJfQ}jqfL+fksX*uMp z>?5%a9zfH__1&D!MFu{)P}RL z_f6PaBCmRIWsiE3eTey$M>q~SzAE=4o@_P@&v87)#HrE`Cr){?@VN18z|%2t3U{Gx z+upP|gE=dEa+?riS})bDYfUXzZM8i)5vo<+AFHc>AMe`=d)haXl!F|o>QY_(PV}YU z^+bJRYB|2C_vHE#dF&y+TiDZcVgY06Q_b-!B`?Us!#KM<#J~@6Jwd6X}!8mjmcP7>g@e0#_q$| zDU3;RUeuN>th>z_{sPASapF`?D*8`Dr{G^by~G)Q1O0m^PHF$lap$8Z*lrYd);(kK zd;dh9@)o~@STaTeY?=J#H^{#!NZvophocbUAZXO!POzEj>cCrqW&_4-_@D3j*Cer- zq=!5r&PNmWwZPuC_}vBWDay%$ds4o)u<{wxynpn+8h|XK48X{X@y!zVQk}SGisHU1 ziu&ehcGt}@-%qPn8ueRASgVr+AAN)Q<^Smue;0mgcC8)u#fRPq z&3RvVUYYxTVR+8FZLDDK`};$4-`|>?^PX~x!n~wE^V&3#%SkD>sLa>QyXC%ak3?Tc zyt|7Z{&rh&~r%>PH1>~7Orz{?I(@2etD?v~1YZB*u$ z2(oRDd>`?$t4>y34g5Qt9Q9a(uk!o0H|{`OW7#VoHSyC~Ydp7%>7h@EY~QV{0{+VU z_;$?SEt(tTB51a9yMzN@?6s<$Kf+e_QlpjQzmYuh_GNmmYYRPBh#2ha1&wAJlE*+JNU7lnJ->f| zhGN?v8vqTygU*og+nd_yAN?)Jk(&%7avZT;$2Y!Io8

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_446C.bin b/MGZ/data/ps2hwemu_stage2_446C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 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

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_446D.bin b/MGZ/data/ps2hwemu_stage2_446D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8cb96e60e3d5de3d15df3bf767c21e635513acba GIT binary patch literal 11016 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

y}g|jk}-z%hdj3z57uUc z1?mJ{0dbt;x8U}Xwbr=!Li}4kelMbuv}*^YKKd@%*Z2BXXs#EPA_qAuI~Vj7bkP4LOzUSNlQ=q+{9 zK@IW<@b>X#^S1$R3HLm2Rm;VtSho+~v#~e!B#$n9_cDHOr+xEn1?_OCgSPDQ&|q<| z8K=B>|CdNMmE2*)-SK{WM|zu-$cv;;W>dlC{rD~2+xRWri&S?x8+T@pT87bv@W`$m zv=H;c(T&ty3f?fMSv^{)?3<#&%Nxn>+f8@t*)-6#pPpA7_NUr=?PGg9G_YeM4HSW~ z#x0~jK1Bn-Z5Cc{W*&N);SBgy`Fi_f-ZJU^Cbtuy0u*JXT=oHw^WbL{&4 J`E+gn{{SX7c1QpK literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_450C.bin b/MGZ/data/ps2hwemu_stage2_450C.bin new file mode 100644 index 0000000000000000000000000000000000000000..2f8d159bad2f995d966c5b527e191e348db7172d GIT binary patch literal 11016 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

`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_453D.bin b/MGZ/data/ps2hwemu_stage2_453D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_455C.bin b/MGZ/data/ps2hwemu_stage2_455C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_455D.bin b/MGZ/data/ps2hwemu_stage2_455D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 zcmd^FeNY?cnSWLiNCF%ysoIhNX0dUK3^Alhb1Ni3U^j=s=b_Tfv@AqnYtCU$~T$LFTG89L2m+{S0)B-co&Gxbedf=$BS z?^&%dI3{s>o%`pQ*?HOb<9VNt-}CXlE5%_sT1%7`Mq42gc|GI^I|B{gAkmig%x6RG zuTLlYmljn7FkV;e2(M~r=&Xyq8eU~R8urw<PQGAC-8rwnj(oy)SEa( z(U?F(io<#oa|YIEB!ab>KLvb)w#al@4hbVtfT*R0D2P2;@E#-@QOMPx)LM>8HTq?x z#^Rm~QQ2fSNt1^uFnNkk}WyBC;$gIc|=BLA##+TFU$q^LIVHPupMFzSu1{rxz+q z#6Uo!T!pe9R><}vh4O#2nuHRmnY4Oce~#0T zyGK@j_+!UJkGNn#{IsvCx`e&GC^nnymn`YbGu_SQor6)0?W+N2fyixv6e_ zZ0fKci!at3CjP#nJeni>gJeWW{=#(Oo% z@epb1j(25s%iFSgG$GI412`XoY_0_4NI;GRR z@o0cDYH86Qd5xmvbOPrquk9`5nsixR#LuVk0o%twyGeS~ZUOBy(C+7TN~b~l?{AjR zYdlyr@I0^lQ-_FZ$!gG*_EHA##ZL@2WqYz+ueWK!q6K?p*l|C#UfTz8F{#5(m36A> z=Jky@Kf*qeYrU-l*lQhsN9*7m6MILK;}%T|c^b#YpVA`ZuWG%ac0CmLKv!fR4tp%_ zm{XADjKRf|kY)F}Yw@+Goal)!q3>^ze?LCK|FcMg`X_yryI` zFl*>%9zQp5`$|$i#w_DCxI-iLNFs?@nJhQLZ3H})Y9wG^e`2u~^&K#CZMMm86Pyr^x?w;Nndn8E)vxLnwr-SBkGL*Ja0gY?FF^| zk#K9g0$4qQnqv&@8OzaLCq3@v$3sJFMO)?WT5@!Hb}ZiAO16psSz7Xg)M5*@V^3SC zu0YyS={IsB{KUFtNkvf00M6S!-=bg_F?4uh#y%! zY+b?jC=8OV0Apgk{(+JI*nWQGMgJI{5#+)kbOL!Q#5G#5xj+iOU*MM=Hc_S>i-Tth z0-<*6(H7`#3p55fSB5+`vDXSehQEToYxjfre;E@@bXZ1IHZT4+mMZ{`e5f#-mhQBMR(4<7aaqdi7GYe4@% zPa9G3P7(qKi1!@yw(ELlJBb{VyzL}}Q47I_PUyLeF~K!1aN&a9M9e=s3p1m>I7z-^ zzNTHTvLs~H#U|GQOk zupV|-0VnMRQh3>Vw+8vZo2|m5Pxm@6irDM7RRe1@_1!7MX3ZyU;uEh>ZoNKX$j@E>$E?=^DdfT44%jTiwAuS?vx1d|&FX@NjSPE10lU9|*zye9>W{}vy^i@& z0tV^$$W$D@>?8;3q)GOLYciAAU7=5EdHRR2p$&dP;U)DlXc+a9?ms9G zH0z{PO@$h@0D4)Y{Lv?e+P~bYoIq{5HAhzVqE3D59yxqF>Qf2z>AJ7U@pkZ;pzK6~ zMD>WoHA_&kyO1*sY-Ra$7sue$lHE3|&&GX{AHJBHSEZAHzCz{L^tZ#}GSr6D5dK0@ zgF=Y&dYxOL>2Iq#NfFqvmFO4fzqgTowN=ic0@N)L;7cBWPD_)RG-_J(#njWkN3Bbl zQiwWY7{5_{tNs*oG{ZlJFgIhqd741q>Iu=Khf(MDE<#OARMfwfoX=H~Jqo^zJoA(` zrmp;@tbXTRdFz=M4AJoXS#TI3_%YZ?6CwC{J;?*7YzO3=^>^If_75(1dPwA0 zq^fmpRbP+uGrb{^1JM!qMr;WCzUmIEUv=}kh|{h|GaZ>63$Ry&<08ueUAXby3*A}N zmnney&*fi4R+&fyJ$G2V+)&{`&hZGSt4Qq4H|rpkY>W-$KE{T_*ELDL3%bs}ow6Zh zo;fSAZ6(!_#bdkkhhc&v>I3wYF z#Al!@r}U01mvs56pleqP^a%U?)oQ)>YDkY>?bZk8iw`sBNyL@i-Q<`onEvky)U(Pn z#d64lxDd{f;~x0`G5G(_V4r7-lK!6t|9{5x{|l!7r@{Yc`b_^%ga4a-RTq-}A8up+ zU!U~*0uEPoMksg0Q>%|(wPr8eZI+E+G4vwkakeRXK_2_z7tZgu9 zcFgYQSkPHz?d;u0dJD=~e&+yrRd098UqjFvB)k?$^8~QD1amVAZfM3G9mG?oP zbKf*AMEuF@-$V=g7tt;FKO^j+d)In?wUvDaF?3XRrauk;E9kFeSzS@cW`SH5=z`@Q z@J*A=r;!k0KN&Fm#G&NEhfk2zH$Yt14w?Csa*t5vzL&{@$10_f!4Jy`wm<1?==N4& z-7Dn4^Eo_(Co`H)!oD7I;4Cx{dsQ1m>>2Rp)90WAmp5?h9*kQdt0--yJNw&6=x;Uj zQ;&Wp<{pMFDeB}o`crI|sDrG2!dYcMYKQ&6Rgd*3>j|&N?&d!)w9h& z+uvVA8A_(LuOBsOF5bhzrUvZeWO?|Bpf)QNA=???;AQH?8i9Qn_TJIotn1Z#DG0r> z-RcdVtyqKj619?r*Yg7&Y@f)(5^@?mtRVXg56xUVQ8xB-_ct5#*zQc%AsxZfOqt<3 zm$|X8fH;Tq)h#2?fl=EX-bi*W%=^!-@q}8ob!Rg1Hx+WsN)NzQ!|jUktd3wc}j43ilbf zJDMHi)U&^r)z^`?#u&GV*H8$Lhl|#`v46Ib`IR4gQCmWW%SK)9aF%)N93>;wu=10ndt*V@52CV~Q zfll}*%fx3+^}Q+CcfrB2c&L^ZbUpq?b%m2hYc*4wsxwG@&*v;j^_27U1Umy?O4xhRmd9eSS zkq2?d`v;D{Jr!i{*+|YF=(LfvMQc5Q<)x1SUsNwEv_V!D;_UaKQID)NJT%2}x7|Jsf7Kr&AFX5vKFUoK8K3zKoeS(uCy&f1hdyACuJ zb+t4V{kc9a)*oE-PhGY(?D{S)W;OcExnN3LD#5br}x(tz)7Zq8?@SqOBjz6%rQ zS&tmQ;}thsR}0z6x_aXLoEVRI;`Qk|#}w9|+AkxnOrNbK`+neiGH}qo2k|9?b0p&& zwGhTFe#W`1qF#ef}A}!8kl&m zsc25jhm1zduS~}L`EsX}GcoF|x(*NJz=KLzz{CPz;uc^6Ie*qU$osMQ|9L(KLD$Li ziwY2FqyqyPY(G4iKJTP)ZVh5i>Y2|5UNMO+Z_vb5c|GGQb>+=LcP@woXlX#HxFiVfSIm|(VkDn)aXrMY9TN+n!;2p?;56N+ll*eR?EJ2R-3`p z=c)KwBqkH*@_60V}r z_(QnYuERIyDw1M2Bl~pJU#N?eL-Dtii#ahmH~8S#T_1FxT++fAFi)s~=jhZ~8qIW;vacF?!X=VPoO9r=Jxkr+ z6i{<1P`#fV)ltgEJ-I{e36SJ4>hw|6!HuQ=#&OZII+8&`qw`WF=LN3In2#X#O+6U5 zfRFlUHuk;+dyC{(4zB1^Zm|zDztRZDA?FvR0mPF{y6!uHN1r%d{=vj)Up5{up7nUT zCQjonv}5aA7I!#zMPFVEVodwxhPCbKm5QytFE>W@%KKvtjql@qYjI!aCK7Xz0~Jkd zXxxFm%zK_}Y)-GlH}$@}fSJc0;=6_Q?&xQU%3qu~jXTah_N6=z&Vl$X$XW-_$GRg} zpLWlad2PsF9^}8wKm-5&qyKKKyL;kv_zM^_bEEPM-&ZbkM_m|mfu{A^Iwc`tUAepe zix~SV#!h2QO!A_%Wn%bJNj(208`*%9+LP=$q)@GjUq|XO24`w!n6y zu(ReHOWymNdCFh{+3-K# z^RG@}Ger-1#4#UD*w+Gk+md$|xTmNj3+_qz-onafOymAB_*w|EI3xf@D!?~O+)H)i zo+*y|syObe#&KUYj{B-{+*OU^u8Qxw$8lf9cj95KTb%D+{1fiPt=eta>xh9xQjQsZ zP!?{>{;}c|e~dGwpzbtselFU85~MpDn}0X0SZOq9C1H(5{EgvF=9mAckNsWzk8s;0|RA)1`(7HI0Q z;FvlkxTY=%*}J=iBEE~96oj(+kEWeL(5=^hbD;jC-(BJVwSyP@}$v8Q&4 z6@d<_2#N&Rw#B}Kc-hk+DV`?&9Zs%ttSM0a9ow6CA+E9P)sGqY>8{tGU&{2*C&aex zlA&09lf$=T{%+CQB$X6l?luc0-g$haDnJX>*p%G7z9#UP?)X*74>0y!Thq>09OvRS zyR@D|^xV$JAb-{v(-%<#KL&1teW3|6ji^9-<4Q#-;+=@g0BVGB^KT3^`jQN;^(u!$WR7wM6OrmsfyJA7$^1&@k+j-uwef-&aI0 z?2XZ|SH#_xh8P({zQg{}L-doVO3&ka^YhYCe4l-Vp6}UA&le*G2l_#ym4>A;&HdHw#NrSgYTfTB>eWKe){`=19IdgU5}kWY}fFOFWn}3gLHp?H$^0jq5U4u z?Z<<)Sy6$yL03Q==lCsn17xk&FTI%jmXF_yC?xLOPU(-mOZIjBf#s^_CAq{&?&|IZ z`%8N0Gl3lohVODxhUC;QSNAL!xC?iFfyWmNFGq~2?sLD9c;NAo$}ybvyC5@^0v>Fk zhbg^3hhBK#>R}N%___XlG#sy@ffCp}u+7#`Km8wREXVRCOv5q^42g+2HGLg?^0yb* zVE}qdpL9}_Gy=SRbjA2>fLFvl&#!Bx(sHcZi|^Uk8+(#Z6TWo?zqeDr{FdMMGCMP%yBI?$vT=uxB5=AUo|(clO)IcKc{> z`vw{;0b|XZNqb_727%jbyxz(@mI8c;@ia9>O@Y0FRJ@%&SAD>~Ic(k-A*%mgM?WEc6Nw%Ic z^ZgOC9X8t?X8Uxq^+?Hfsl#lu&3>2J2F$j_Y-`QdZ?>uVCO=C>vp;CI=6hjkeO
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_460C.bin b/MGZ/data/ps2hwemu_stage2_460C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_460D.bin b/MGZ/data/ps2hwemu_stage2_460D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_465C.bin b/MGZ/data/ps2hwemu_stage2_465C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_465D.bin b/MGZ/data/ps2hwemu_stage2_465D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_466C.bin b/MGZ/data/ps2hwemu_stage2_466C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_470C.bin b/MGZ/data/ps2hwemu_stage2_470C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_470D.bin b/MGZ/data/ps2hwemu_stage2_470D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_475C.bin b/MGZ/data/ps2hwemu_stage2_475C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_475D.bin b/MGZ/data/ps2hwemu_stage2_475D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_476C.bin b/MGZ/data/ps2hwemu_stage2_476C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_476D.bin b/MGZ/data/ps2hwemu_stage2_476D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_478C.bin b/MGZ/data/ps2hwemu_stage2_478C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_478D.bin b/MGZ/data/ps2hwemu_stage2_478D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_480C.bin b/MGZ/data/ps2hwemu_stage2_480C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_480D.bin b/MGZ/data/ps2hwemu_stage2_480D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_481C.bin b/MGZ/data/ps2hwemu_stage2_481C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_481D.bin b/MGZ/data/ps2hwemu_stage2_481D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_482C.bin b/MGZ/data/ps2hwemu_stage2_482C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_483C.bin b/MGZ/data/ps2hwemu_stage2_483C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_484C.bin b/MGZ/data/ps2hwemu_stage2_484C.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 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
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2hwemu_stage2_484D.bin b/MGZ/data/ps2hwemu_stage2_484D.bin new file mode 100644 index 0000000000000000000000000000000000000000..8d1255448ab85d5655ffeaadbd5dbdbab4a2b739 GIT binary patch literal 11016 zcmd^FeNY?cnSWLiNCF%ysoIhNX0dUK3^Alhb1Ni3U^j=s=b_Tfv@AqnYtCU$~T$LFTG89L2m+{S0)B-co&Gxbedf=$BS z?^&%dI3{s>o%`pQ*?HOb<9VNt-}CXlE5%_sT1%7`Mq42gc|GI^I|B{gAkmig%x6RG zuTLlYmljn7FkV;e2(M~r=&Xyq8eU~R8urw<PQGAC-8rwnj(oy)SEa( z(U?F(io<#oa|YIEB!ab>KLvb)w#al@4hbVtfT*R0D2P2;@E#-@QOMPx)LM>8HTq?x z#^Rm~QQ2fSNt1^uFnNkk}WyBC;$gIc|=BLA##+TFU$q^LIVHPupMFzSu1{rxz+q z#6Uo!T!pe9R><}vh4O#2nuHRmnY4Oce~#0T zyGK@j_+!UJkGNn#{IsvCx`e&GC^nnymn`YbGu_SQor6)0?W+N2fyixv6e_ zZ0fKci!at3CjP#nJeni>gJeWW{=#(Oo% z@epb1j(25s%iFSgG$GI412`XoY_0_4NI;GRR z@o0cDYH86Qd5xmvbOPrquk9`5nsixR#LuVk0o%twyGeS~ZUOBy(C+7TN~b~l?{AjR zYdlyr@I0^lQ-_FZ$!gG*_EHA##ZL@2WqYz+ueWK!q6K?p*l|C#UfTz8F{#5(m36A> z=Jky@Kf*qeYrU-l*lQhsN9*7m6MILK;}%T|c^b#YpVA`ZuWG%ac0CmLKv!fR4tp%_ zm{XADjKRf|kY)F}Yw@+Goal)!q3>^ze?LCK|FcMg`X_yryI` zFl*>%9zQp5`$|$i#w_DCxI-iLNFs?@nJhQLZ3H})Y9wG^e`2u~^&K#CZMMm86Pyr^x?w;Nndn8E)vxLnwr-SBkGL*Ja0gY?FF^| zk#K9g0$4qQnqv&@8OzaLCq3@v$3sJFMO)?WT5@!Hb}ZiAO16psSz7Xg)M5*@V^3SC zu0YyS={IsB{KUFtNkvf00M6S!-=bg_F?4uh#y%! zY+b?jC=8OV0Apgk{(+JI*nWQGMgJI{5#+)kbOL!Q#5G#5xj+iOU*MM=Hc_S>i-Tth z0-<*6(H7`#3p55fSB5+`vDXSehQEToYxjfre;E@@bXZ1IHZT4+mMZ{`e5f#-mhQBMR(4<7aaqdi7GYe4@% zPa9G3P7(qKi1!@yw(ELlJBb{VyzL}}Q47I_PUyLeF~K!1aN&a9M9e=s3p1m>I7z-^ zzNTHTvLs~H#U|GQOk zupV|-0VnMRQh3>Vw+8vZo2|m5Pxm@6irDM7RRe1@_1!7MX3ZyU;uEh>ZoNKX$j@E>$E?=^DdfT44%jTiwAuS?vx1d|&FX@NjSPE10lU9|*zye9>W{}vy^i@& z0tV^$$W$D@>?8;3q)GOLYciAAU7=5EdHRR2p$&dP;U)DlXc+a9?ms9G zH0z{PO@$h@0D4)Y{Lv?e+P~bYoIq{5HAhzVqE3D59yxqF>Qf2z>AJ7U@pkZ;pzK6~ zMD>WoHA_&kyO1*sY-Ra$7sue$lHE3|&&GX{AHJBHSEZAHzCz{L^tZ#}GSr6D5dK0@ zgF=Y&dYxOL>2Iq#NfFqvmFO4fzqgTowN=ic0@N)L;7cBWPD_)RG-_J(#njWkN3Bbl zQiwWY7{5_{tNs*oG{ZlJFgIhqd741q>Iu=Khf(MDE<#OARMfwfoX=H~Jqo^zJoA(` zrmp;@tbXTRdFz=M4AJoXS#TI3_%YZ?6CwC{J;?*7YzO3=^>^If_75(1dPwA0 zq^fmpRbP+uGrb{^1JM!qMr;WCzUmIEUv=}kh|{h|GaZ>63$Ry&<08ueUAXby3*A}N zmnney&*fi4R+&fyJ$G2V+)&{`&hZGSt4Qq4H|rpkY>W-$KE{T_*ELDL3%bs}ow6Zh zo;fSAZ6(!_#bdkkhhc&v>I3wYF z#Al!@r}U01mvs56pleqP^a%U?)oQ)>YDkY>?bZk8iw`sBNyL@i-Q<`onEvky)U(Pn z#d64lxDd{f;~x0`G5G(_V4r7-lK!6t|9{5x{|l!7r@{Yc`b_^%ga4a-RTq-}A8up+ zU!U~*0uEPoMksg0Q>%|(wPr8eZI+E+G4vwkakeRXK_2_z7tZgu9 zcFgYQSkPHz?d;u0dJD=~e&+yrRd098UqjFvB)k?$^8~QD1amVAZfM3G9mG?oP zbKf*AMEuF@-$V=g7tt;FKO^j+d)In?wUvDaF?3XRrauk;E9kFeSzS@cW`SH5=z`@Q z@J*A=r;!k0KN&Fm#G&NEhfk2zH$Yt14w?Csa*t5vzL&{@$10_f!4Jy`wm<1?==N4& z-7Dn4^Eo_(Co`H)!oD7I;4Cx{dsQ1m>>2Rp)90WAmp5?h9*kQdt0--yJNw&6=x;Uj zQ;&Wp<{pMFDeB}o`crI|sDrG2!dYcMYKQ&6Rgd*3>j|&N?&d!)w9h& z+uvVA8A_(LuOBsOF5bhzrUvZeWO?|Bpf)QNA=???;AQH?8i9Qn_TJIotn1Z#DG0r> z-RcdVtyqKj619?r*Yg7&Y@f)(5^@?mtRVXg56xUVQ8xB-_ct5#*zQc%AsxZfOqt<3 zm$|X8fH;Tq)h#2?fl=EX-bi*W%=^!-@q}8ob!Rg1Hx+WsN)NzQ!|jUktd3wc}j43ilbf zJDMHi)U&^r)z^`?#u&GV*H8$Lhl|#`v46Ib`IR4gQCmWW%SK)9aF%)N93>;wu=10ndt*V@52CV~Q zfll}*%fx3+^}Q+CcfrB2c&L^ZbUpq?b%m2hYc*4wsxwG@&*v;j^_27U1Umy?O4xhRmd9eSS zkq2?d`v;D{Jr!i{*+|YF=(LfvMQc5Q<)x1SUsNwEv_V!D;_UaKQID)NJT%2}x7|Jsf7Kr&AFX5vKFUoK8K3zKoeS(uCy&f1hdyACuJ zb+t4V{kc9a)*oE-PhGY(?D{S)W;OcExnN3LD#5br}x(tz)7Zq8?@SqOBjz6%rQ zS&tmQ;}thsR}0z6x_aXLoEVRI;`Qk|#}w9|+AkxnOrNbK`+neiGH}qo2k|9?b0p&& zwGhTFe#W`1qF#ef}A}!8kl&m zsc25jhm1zduS~}L`EsX}GcoF|x(*NJz=KLzz{CPz;uc^6Ie*qU$osMQ|9L(KLD$Li ziwY2FqyqyPY(G4iKJTP)ZVh5i>Y2|5UNMO+Z_vb5c|GGQb>+=LcP@woXlX#HxFiVfSIm|(VkDn)aXrMY9TN+n!;2p?;56N+ll*eR?EJ2R-3`p z=c)KwBqkH*@_60V}r z_(QnYuERIyDw1M2Bl~pJU#N?eL-Dtii#ahmH~8S#T_1FxT++fAFi)s~=jhZ~8qIW;vacF?!X=VPoO9r=Jxkr+ z6i{<1P`#fV)ltgEJ-I{e36SJ4>hw|6!HuQ=#&OZII+8&`qw`WF=LN3In2#X#O+6U5 zfRFlUHuk;+dyC{(4zB1^Zm|zDztRZDA?FvR0mPF{y6!uHN1r%d{=vj)Up5{up7nUT zCQjonv}5aA7I!#zMPFVEVodwxhPCbKm5QytFE>W@%KKvtjql@qYjI!aCK7Xz0~Jkd zXxxFm%zK_}Y)-GlH}$@}fSJc0;=6_Q?&xQU%3qu~jXTah_N6=z&Vl$X$XW-_$GRg} zpLWlad2PsF9^}8wKm-5&qyKKKyL;kv_zM^_bEEPM-&ZbkM_m|mfu{A^Iwc`tUAepe zix~SV#!h2QO!A_%Wn%bJNj(208`*%9+LP=$q)@GjUq|XO24`w!n6y zu(ReHOWymNdCFh{+3-K# z^RG@}Ger-1#4#UD*w+Gk+md$|xTmNj3+_qz-onafOymAB_*w|EI3xf@D!?~O+)H)i zo+*y|syObe#&KUYj{B-{+*OU^u8Qxw$8lf9cj95KTb%D+{1fiPt=eta>xh9xQjQsZ zP!?{>{;}c|e~dGwpzbtselFU85~MpDn}0X0SZOq9C1H(5{EgvF=9mAckNsWzk8s;0|RA)1`(7HI0Q z;FvlkxTY=%*}J=iBEE~96oj(+kEWeL(5=^hbD;jC-(BJVwSyP@}$v8Q&4 z6@d<_2#N&Rw#B}Kc-hk+DV`?&9Zs%ttSM0a9ow6CA+E9P)sGqY>8{tGU&{2*C&aex zlA&09lf$=T{%+CQB$X6l?luc0-g$haDnJX>*p%G7z9#UP?)X*74>0y!Thq>09OvRS zyR@D|^xV$JAb-{v(-%<#KL&1teW3|6ji^9-<4Q#-;+=@g0BVGB^KT3^`jQN;^(u!$WR7wM6OrmsfyJA7$^1&@k+j-uwef-&aI0 z?2XZ|SH#_xh8P({zQg{}L-doVO3&ka^YhYCe4l-Vp6}UA&le*G2l_#ym4>A;&HdHw#NrSgYTfTB>eWKe){`=19IdgU5}kWY}fFOFWn}3gLHp?H$^0jq5U4u z?Z<<)Sy6$yL03Q==lCsn17xk&FTI%jmXF_yC?xLOPU(-mOZIjBf#s^_CAq{&?&|IZ z`%8N0Gl3lohVODxhUC;QSNAL!xC?iFfyWmNFGq~2?sLD9c;NAo$}ybvyC5@^0v>Fk zhbg^3hhBK#>R}N%___XlG#sy@ffCp}u+7#`Km8wREXVRCOv5q^42g+2HGLg?^0yb* zVE}qdpL9}_Gy=SRbjA2>fLFvl&#!Bx(sHcZi|^Uk8+(#Z6TWo?zqeDr{FdMMGCMP%yBI?$vT=uxB5=AUo|(clO)IcKc{> z`vw{;0b|XZNqb_727%jbyxz(@mI8c;@ia9>O@Y0FRJ@%&SAD>~Ic(k-A*%mgM?WEc6Nw%Ic z^ZgOC9X8t?X8Uxq^+?Hfsl#lu&3>2J2F$j_Y-`QdZ?>uVCO=C>vp;CI=6hjkeO
`7yJ#&Wz7pm-XA!yt)0Z Mu^aan()IoS1EHUAc>n+a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_421.bin b/MGZ/data/ps2netemu_stage2_421C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_421.bin rename to MGZ/data/ps2netemu_stage2_421C.bin diff --git a/MGZ/data/ps2netemu_stage2_421D.bin b/MGZ/data/ps2netemu_stage2_421D.bin new file mode 100644 index 0000000000000000000000000000000000000000..ca16bd8c3cd5b7021edf0e5425fdad7c86d5bde4 GIT binary patch literal 3792 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 O`JiPeSAS5-mH!v+bm~L^ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_441C.bin b/MGZ/data/ps2netemu_stage2_441C.bin new file mode 100644 index 0000000000000000000000000000000000000000..681d9916ce99039f310b111047658c2d0773a23d GIT binary patch literal 3792 zcmc&$O>7fK6n^VC@w!CFsF6w)8UjgM(j+*D%aTB_9Rmpja3P0QZN;XETEbrg3evh- zlYv@w_d!$_sa4Lv!a5isdVtul_P2g()o zTCJk~zFv{!o1F=jD7J*0UX92{!uE!*p!7nQ5rII_7`z@ zA}xEB=$~mNI`dE|x#6BhLKlK5_wE={*cQga%rDSxXwR8b7sybbldqoEn|Vd zL=E!lw)0A5x?5bWLU*c|2>#aDKH2hx{DCjM>`R_)*x=sqjJ7@hlWh;@-Rgy<7%%7X zi^jTuX~s9#<+?`6`#MZ}NhN2YI7~f|Q@ie$*><3#k=yZsYT&r-oG@iuPuj8lVEw?^RPtom2L1n4U&xZ4Ky6$L=R%H0X-#Y;)xP#+Vh)yTA>ppQC4beWuXO<6CmOPb38J9Auj)}h-NyX<-_8!`P4NnI}VUdQW<74Jp!4p@P>-ivnK zRWL8u^XReK`F=Xeey~oqfjr2F>8Ke~A$%g982q>Tc+ieLqeJAJ95eS@KH9Nx9*~b? zh`kuNE@l3FoXkAH?tb3Sz7@(p;|}+Ukf!Fnh&i!wC3jMXZP@UX7YyUlcyqjqzP=+=^G3{-b{w2IhS`NAPx(>8*~g zzaR1Yk#WhCp7?bPl{CXfneQCzSnKQq+lXqFX{66zt3{ynQLcf``Z(cL$ve2b$e$Pgm$9t&XdS4H7&H1g~?Vx3HAaqG> zE1JN#PY%p$HV#qeVeTnecX7q3Zd;#8D^4!Y=D+$ii+^=pwtp30%313b{rj_clX?8N zwq^IOt!>-L+jqFv+x5w(Yd`Ke!mEcrJAR}Ow7$M&cVLgdzW(u+yiw6>K_zeUxhA$+ z(!u%6V9OzksurEf&|oH33jSryw_9|?qPHx1$D;Qv`h`V5%+L*ThR*mbelnYH%&=sy zH->W7$8z|&Y`)2t!{5v1GaS*T9K8$kKQAuNM~#2BUm1?5`D$jAJMSwX?=M|kzGZ0f O`JiPeSAS5-mH!v+bm~L^ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_441D.bin b/MGZ/data/ps2netemu_stage2_441D.bin new file mode 100644 index 0000000000000000000000000000000000000000..681d9916ce99039f310b111047658c2d0773a23d GIT binary patch literal 3792 zcmc&$O>7fK6n^VC@w!CFsF6w)8UjgM(j+*D%aTB_9Rmpja3P0QZN;XETEbrg3evh- zlYv@w_d!$_sa4Lv!a5isdVtul_P2g()o zTCJk~zFv{!o1F=jD7J*0UX92{!uE!*p!7nQ5rII_7`z@ zA}xEB=$~mNI`dE|x#6BhLKlK5_wE={*cQga%rDSxXwR8b7sybbldqoEn|Vd zL=E!lw)0A5x?5bWLU*c|2>#aDKH2hx{DCjM>`R_)*x=sqjJ7@hlWh;@-Rgy<7%%7X zi^jTuX~s9#<+?`6`#MZ}NhN2YI7~f|Q@ie$*><3#k=yZsYT&r-oG@iuPuj8lVEw?^RPtom2L1n4U&xZ4Ky6$L=R%H0X-#Y;)xP#+Vh)yTA>ppQC4beWuXO<6CmOPb38J9Auj)}h-NyX<-_8!`P4NnI}VUdQW<74Jp!4p@P>-ivnK zRWL8u^XReK`F=Xeey~oqfjr2F>8Ke~A$%g982q>Tc+ieLqeJAJ95eS@KH9Nx9*~b? zh`kuNE@l3FoXkAH?tb3Sz7@(p;|}+Ukf!Fnh&i!wC3jMXZP@UX7YyUlcyqjqzP=+=^G3{-b{w2IhS`NAPx(>8*~g zzaR1Yk#WhCp7?bPl{CXfneQCzSnKQq+lXqFX{66zt3{ynQLcf``Z(cL$ve2b$e$Pgm$9t&XdS4H7&H1g~?Vx3HAaqG> zE1JN#PY%p$HV#qeVeTnecX7q3Zd;#8D^4!Y=D+$ii+^=pwtp30%313b{rj_clX?8N zwq^IOt!>-L+jqFv+x5w(Yd`Ke!mEcrJAR}Ow7$M&cVLgdzW(u+yiw6>K_zeUxhA$+ z(!u%6V9OzksurEf&|oH33jSryw_9|?qPHx1$D;Qv`h`V5%+L*ThR*mbelnYH%&=sy zH->W7$8z|&Y`)2t!{5v1GaS*T9K8$kKQAuNM~#2BUm1?5`D$jAJMSwX?=M|kzGZ0f O`JiPeSAS5-mH!v+bm~L^ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_446.bin b/MGZ/data/ps2netemu_stage2_446C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_446.bin rename to MGZ/data/ps2netemu_stage2_446C.bin diff --git a/MGZ/data/ps2netemu_stage2_446D.bin b/MGZ/data/ps2netemu_stage2_446D.bin new file mode 100644 index 0000000000000000000000000000000000000000..ae96d3a185e8611769aa165243fc713144bc31a5 GIT binary patch literal 3792 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 literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_453.bin b/MGZ/data/ps2netemu_stage2_453C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_453.bin rename to MGZ/data/ps2netemu_stage2_453C.bin diff --git a/MGZ/data/ps2netemu_stage2_453D.bin b/MGZ/data/ps2netemu_stage2_453D.bin new file mode 100644 index 0000000000000000000000000000000000000000..54aa6aa166f6e268ec7ca26523506897f81b9ce8 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?Yxl*8L)|%Rw%S8wJlS_=F&=eGi{-T0#&-usNvN%YWcGen%psO zc&|U=OyZ(QObC?PigclyE?BV8(1J`bae-k&f-wj+d6RL`goR^<@I2@Jw7i*){4Jd1 z&AI2^bIR_q@VnRsf)~F|{KoLpWdKk_&s0W$icA>Rqf9ZwIVJ)0MgZhU zQtCxshE1{p!A_;kGsPmtyb|%0wt;Uz$2~gkRm7sHT^dx#DEpZDrt|fcbU(em2FTY} z^wl%y>&(~Zef=5qP2}tIM4v(5e7?S-wNJ0FQOebq>4y5uAh66NNSRq^Lu|Z5`juYa zg<9{`ZfOXZjxsvR=qRJ34AuWp-%@zV4jQ+!v&MY(4ijI@)E}xh+*A21nQ682}NG2BH<;T}CR>e&>rX6HWVQ zGjQ?};F$si&y5G=ybs9~TRwu!z+WG$F8Y%6o!9~*%6B+A!sAeiV^bFOiEPBs$zO~k z7;E0c)jzXbP2S^$d{?jdF0i#Qig^vDF^_4=ALcTRxpdAYx=ueq^IGQ#sl zscOut-^nYK>V9#Zg1R%s0O)V6QXWi|Vr?57@g>xY%R9GKh1J#Kw@LFOG)Fk#oZFK)^lEZK^ zTHTtAioT=*?{bu@i*BEt!*kD3enU*$!K3?!=Wt&rw!N8iXq}7g-@{3kWd3T;x$OUlubfEo54pzftthx=qGz9E3laoL%nj3cY*K0DZl77bBz1+ zAKmq2=fUgLl=RX%(|jJZGf#CV9lC?D^S(vdnCX8f>+xal^}I+}37s?VfO3rMZMEkX z$9ch-#~!Pl8HB^+2k9gmm5;3e+^3??wG(t#8`lz*rvKPK3A}CO}cjXuN8NVfbxa1*m2?R~0{tcJF36uJx(krn&mrU9KD} zi#9$0K^iiyV}2j|E=E%TD?Tqb>A*_Oq$`fkx%s%_@c14YwBOgGRC9W(_j+K3963Ix zv=>d`ctDP<)EpdQokyvsxbEWBKaV;3OuG77r<=bKaPiL{z3<{z|9Z;J|1{y^O=j_L zL-X!kTidrm=;*=zP|t@SZTO(?5Un2kWZ=+Iq;+-8yCZLf>*^M_dY z&U%AYgGGKKM}FSTH%dADZ8vXm0Go64F3kV3v^*U(`Z<1C96-}WYm_@L6_5`HmX>cG QS$e+3Hk7Nsh2_fs3kdb&&Hw-a literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_455.bin b/MGZ/data/ps2netemu_stage2_455C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_455.bin rename to MGZ/data/ps2netemu_stage2_455C.bin diff --git a/MGZ/data/ps2netemu_stage2_455D.bin b/MGZ/data/ps2netemu_stage2_455D.bin new file mode 100644 index 0000000000000000000000000000000000000000..598f027f79064a5c45bdf9eda0dc08cc4a4793ed GIT binary patch literal 3792 zcmc&$O>7ip7=CBF?aoR=7HlG>6$-6NZOhhh8Cog3+ZI|VP^AZr8m6{U%b$hNWY)~G z(;sCw@lYftL`rQ%deBP`95`rbA#I59K;%M#F$gu8&3b6U!8J=5pLc#rceg8l2RE7h z=Ka3+d)~k2d*^Ev}5Yf=gs3u?$!(n_9w9eZ@_RmFnIJsOqE(0xq2sa(9GuBXSVr(C>( zubu&~BNxy8`ZM5-=i<4-&w#g(i&wDz>G2u@*?6fgs!I)!l$xMGYKB_DjdvJd?eSc! zanE)I21(MPqeDlBjt(8J|D&Ge_>vwlZl`CAh4ddrDm`K7$w7_4NndKcaa27}s;HN% z74`SciX_i=B~+r=3Ud23qTrYyYAZyM-veVb)i6#%VuL2C=c^S7bL#A7<@67t$lPYX zbT3h&mwb8~iK>@5>o#-7m~T*fn@qcRB&tQ<$U2+>5(#5*xcvJo7)9RiJh2s`X&*L= zPhTdSDN=E6T+nkb(J8ciBv~SFU8JhuOU663jYR0TI~c(+D#5#{3p`O8HgxtEarh!l z`;_RPX(c*$Ps!(d^s48gw4O$gS6>o&OmhB^%OrB?oJ+XQKS6U_=M&gYeox6*;3rXq zyn3CyQi<*rH>ki)6%xVU8pkI`Kc7GFrH_5du?-vC8y?fP?|-uG>zl8ckz}xpTdCT+qiOe-= zh*nD7Vza~Td+=9V{I>I-d5o{+sO%!Y-_0<#}CE_&!(g2lgg9u zp8E^?q<&MO*fkjVulhol^aN_-Sv(hVJW3m5>!>Qejb4kdqw4s6stF&QnNw(JE?m_z z7ZyEpD!r>fuQt4MW*+BWf&Qk5xJwBi9Gb^Ie`IHqqEO3x-6!6u@y;Pc@K4}`4hCDTi3Dn2-pesnzMMm`MJ*AU856*Z+x0z$?(|^jW zr*whbPE8q?*Coy4f}I7fJ7ee$$1Zpt>PAfeJEU$8davt6=8FHk`3)#TTyICaZz-4; zoO$$E?d$*@Wj`2`Z6FUaVmfNZl#ic?CkFrRKHluaZefU=lVj$7+earB&I9ss46zr2 z*TpQKjgy%N*!`IIvv2wG&%DF;L`YN-jj(T!6Cq8~QOlTnk&7kKrW=YhOe;Aq*fIMS z&qaG~Df)BRcK~N}XJ*d;$EHk^Xx<@Yta48v>ls+enrxysl%*u9%pu+|&>E~!L6yQ`=tO2Z8g zNC*rX*OA}H{uaX&(W;X;o%r>y*35C$NxpI~kz@BA8TX+9`+hybHRro}kBe5xp_4so zTfrpW`{mGT&EX;HJiB13+@U(Jx${<^TmN6a2;$TL literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_460.bin b/MGZ/data/ps2netemu_stage2_460C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_460.bin rename to MGZ/data/ps2netemu_stage2_460C.bin diff --git a/MGZ/data/ps2netemu_stage2_460D.bin b/MGZ/data/ps2netemu_stage2_460D.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_465C.bin b/MGZ/data/ps2netemu_stage2_465C.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_465D.bin b/MGZ/data/ps2netemu_stage2_465D.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_466C.bin b/MGZ/data/ps2netemu_stage2_466C.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_470C.bin b/MGZ/data/ps2netemu_stage2_470C.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_470D.bin b/MGZ/data/ps2netemu_stage2_470D.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_475C.bin b/MGZ/data/ps2netemu_stage2_475C.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_475D.bin b/MGZ/data/ps2netemu_stage2_475D.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_476C.bin b/MGZ/data/ps2netemu_stage2_476C.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_476D.bin b/MGZ/data/ps2netemu_stage2_476D.bin new file mode 100644 index 0000000000000000000000000000000000000000..7f611a2427ca20a1035e906084f0e005b2e70f68 GIT binary patch literal 3792 zcmc&$O>9(E6h3b{?YxnO4A?|W5eltJZOhcKc~B`c(4f&~ic*RHm>CZv!tr-oc*E#&Fbu}8;VRV+5+(LatYo1IUWH52DD} zX1{bVQL2Z0dMk;lmoe)$bH+N~pte?-c5X}6h`!;~I0GaSXlbP4`^%sr?{~iV64A5| zo24f&5zZ8;I5#fHxgU}#wtOU6B5!@Py68*RcVY{PkZ*Hz1V^b1V^bFTL}|#-*sDQLU*Q^2>#YOJ~{G*{DCjM?8^e%u))3IF>U+)C)+;GyWI;*F8PecF@UXsxc?`_t<9oTWy`xBUb4HT7~`+>JtTS-^;}<&+Er? z*Q7yODs_or2ixgUtgqGTC6(NT;xP3A5tJ#5GEgY^SvQ?avY zhhrXx?W_g_|KYmz)HmRcC71` zf_cH2M~~G`_tO#fgLSeE~Wlm?C-d1sWM`M-?Z4$w;2kfkovcZh`G*VGaG zobZ;UQmL2(vsaumj8K49#*2s&Rj3K}#o%-87~j>#wM3=qKl+DZU_P*O1aC)~Ug_xi z`#!%P8JA4ypy4slI+^Hse_fk42{DCscJcoSL`qhuZ^oxt{LX4;%8v@PFBHMPwcz268r3qq8=}g zG~6d4FkoCqejocThAEfJ6{CWqox zYHQI1#(i>Vx#r*ybspxPl5-cY`uR6UpGjB!G@Q%-+LpsV|4BH9Uv=YVE}xvq;Z5ej z-}p)^%i{8U)cEK4WpPA}7pzhKe4v1Quyk?x RrlG~>!?vM({b4Cz{$H)3<7of@ literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_478.bin b/MGZ/data/ps2netemu_stage2_478C.bin similarity index 100% rename from MGZ/data/ps2netemu_stage2_478.bin rename to MGZ/data/ps2netemu_stage2_478C.bin diff --git a/MGZ/data/ps2netemu_stage2_478D.bin b/MGZ/data/ps2netemu_stage2_478D.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_480C.bin b/MGZ/data/ps2netemu_stage2_480C.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_480D.bin b/MGZ/data/ps2netemu_stage2_480D.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_481C.bin b/MGZ/data/ps2netemu_stage2_481C.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_481D.bin b/MGZ/data/ps2netemu_stage2_481D.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_482C.bin b/MGZ/data/ps2netemu_stage2_482C.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_483C.bin b/MGZ/data/ps2netemu_stage2_483C.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_484C.bin b/MGZ/data/ps2netemu_stage2_484C.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/data/ps2netemu_stage2_484D.bin b/MGZ/data/ps2netemu_stage2_484D.bin new file mode 100644 index 0000000000000000000000000000000000000000..839c078f8b85a3207cbbe09934957fcb6ca0bd80 GIT binary patch literal 3792 zcmc&$U2GIp6h5=vc4ws_3pNo`ghH!Q+p;yh3@w!1ZGjdFROtgo3{%^v<vO9p8bWC|tBNdcm+5Rn|3 z4s?N+X|1f1uT5=sjY}bORt>pIn#t2^V2^>ls#q|-U8gb`vX7~6B3EBg$J6Vpqg;Ij zUp|Arwp@Mg*PlV(Xs$k2_!;!g=ISe0@$~xY1KIkL9aNj_BPlsXf#ei50~>F#eznVU zuG)RMBhXKh0T}}_24oD#aQz?k&4-s%pLr`aWzMGlFq5e<(@6B|1WfvpE6hXc-cm)q zP^GB9uTdoVaz|VxiY_3xUndHV2%^3~6nPvNp^5rY65=a$Q9WIyNSISEuThSFCyI=1 z_RH`R#kGh?afW zEIxjLaHdGbxp6_x{g6yy+DDQl^43Nw3%+1|$2O1%`Bq0qaD+-Qwq&7Clm<F*OXpm|b^ZyuJAFQ(+sW@S84LWy zE0I^PlUFJ+yy8j~x|4-O@VDCW$&t_J4}9riUvg~22KR=?wC($!Z2LIxb}uZ(cnOc6 zHr6>zGrqYl7j;V9)+HO;K_{2-hK$_bW1ER@^i@)~SYh<*WyVXWPXxGqClj|kZye2B zlLly^)G0PO*iMXKeWhM2spQTVhouK{YUk||#}0JV@fnc@#R^B40U3kO1{{xT@Mllj zAIQwv^AA8zq*MtGlMK57sSkL_ckUXXPoNV+UXkypT8`Vv2~)Q9upP$_)(@ObYNr#* zli;5F3;U#gU9Q+Q==-nwLY9m;YU7zZ7jjIaRng^C8QVaw#gWH{i3GW-2!9IUvOQWLD#+k^zoeImc%s;P+KE$M3 z@yvI2h4lGJ1pN#gne zSIznAV%6{{*HBP^S0DFMX^eWLNjw_z)FdiU58H#RAWasT+NHZnJ9+M(@QQ9L$Jl55 zkXcXZEV-SUvR+=7bdL*mX1VUH!*DQm*7HC%V)@@Db$ZZyT`w|L{HLuuU@79-rFGs= zFfTas=&}0AK03sHuuistJjjUYkQGxtd?KDG{I~mflM{PdhsZfOZ0)ywbYkH=ARmVj zdm(UL%>2n1S$Tln4|qTOmM{N|JKQHiypm{$eFGm4>5_q3M%{B*EYTW&QKUgy$Z^4r z)wg&~>$;&B&tczQoY5_rJp&kJ?{AGZdhu(E_4a1!{tQ8hoxE<-6Lv5-Yd-NB=NQ%m=m&&Ig`DQ?;7s8)|HNJNhiT>}Ovl|J&6J{`rr7%;1;(x+|0aNzULc=E2|U z#vR)?wQMH;kpn&c&iCG5{ciU`UOn((@4+LWH8qVpLT?6ZY94IK85O+Hq~uIK(ZnWO zy6IkeuyMalRhv$xY12)c{$s(d=a=WB#y`ieG)L5MK0V5w59E;#7SAu=I5_`& NlWizlf0L9g|1UWf<8A-| literal 0 HcmV?d00001 diff --git a/MGZ/source/common.h b/MGZ/source/common.h index 7fc97d91..f9d73d9c 100644 --- a/MGZ/source/common.h +++ b/MGZ/source/common.h @@ -655,4 +655,4 @@ #define OFFSET_1_IDPS_484D 0x8000000000409A30ULL #define OFFSET_2_IDPS_484D 0x800000000049CAF4ULL -#endif /* __COMMON_H__ */ \ No newline at end of file +#endif /* __COMMON_H__ */ diff --git a/MGZ/source/data.h b/MGZ/source/data.h new file mode 100644 index 00000000..5fbfc2d4 --- /dev/null +++ b/MGZ/source/data.h @@ -0,0 +1,187 @@ +#ifndef __DATA_H__ +#define __DATA_H__ + +#include + +#include "payload_sky_421C_bin.h" +#include "umount_421C_bin.h" +#include "mamba_421C_lz_bin.h" +#include "mamba_loader_421C_bin.h" + +#include "payload_sky_421D_bin.h" +#include "umount_421D_bin.h" +#include "mamba_421D_lz_bin.h" +#include "mamba_loader_421D_bin.h" + +#include "payload_sky_430C_bin.h" +#include "umount_430C_bin.h" +#include "mamba_430C_lz_bin.h" +#include "mamba_loader_430C_bin.h" + +#include "payload_sky_430D_bin.h" +#include "umount_430D_bin.h" +#include "mamba_430D_lz_bin.h" +#include "mamba_loader_430D_bin.h" + +#include "payload_sky_431C_bin.h" +#include "umount_431C_bin.h" +#include "mamba_431C_lz_bin.h" +#include "mamba_loader_431C_bin.h" + +#include "payload_sky_440C_bin.h" +#include "umount_440C_bin.h" +#include "mamba_440C_lz_bin.h" +#include "mamba_loader_440C_bin.h" + +#include "payload_sky_441C_bin.h" +#include "umount_441C_bin.h" +#include "mamba_441C_lz_bin.h" +#include "mamba_loader_441C_bin.h" + +#include "payload_sky_441D_bin.h" +#include "umount_441D_bin.h" +#include "mamba_441D_lz_bin.h" +#include "mamba_loader_441D_bin.h" + +#include "payload_sky_446C_bin.h" +#include "umount_446C_bin.h" +#include "mamba_446C_lz_bin.h" +#include "mamba_loader_446C_bin.h" + +#include "payload_sky_446D_bin.h" +#include "umount_446D_bin.h" +#include "mamba_446D_lz_bin.h" +#include "mamba_loader_446D_bin.h" + +#include "payload_sky_450C_bin.h" +#include "umount_450C_bin.h" +#include "mamba_450C_lz_bin.h" +#include "mamba_loader_450C_bin.h" + +#include "payload_sky_450D_bin.h" +#include "umount_450D_bin.h" +#include "mamba_450D_lz_bin.h" +#include "mamba_loader_450D_bin.h" + +#include "payload_sky_453C_bin.h" +#include "umount_453C_bin.h" +#include "mamba_453C_lz_bin.h" +#include "mamba_loader_453C_bin.h" + +#include "payload_sky_453D_bin.h" +#include "umount_453D_bin.h" +#include "mamba_453D_lz_bin.h" +#include "mamba_loader_453D_bin.h" + +#include "payload_sky_455C_bin.h" +#include "umount_455C_bin.h" +#include "mamba_455C_lz_bin.h" +#include "mamba_loader_455C_bin.h" + +#include "payload_sky_455D_bin.h" +#include "umount_455D_bin.h" +#include "mamba_455D_lz_bin.h" +#include "mamba_loader_455D_bin.h" + +#include "payload_sky_460C_bin.h" +#include "umount_460C_bin.h" +#include "mamba_460C_lz_bin.h" +#include "mamba_loader_460C_bin.h" + +#include "payload_sky_465C_bin.h" +#include "umount_465C_bin.h" +#include "mamba_465C_lz_bin.h" +#include "mamba_loader_465C_bin.h" + +#include "payload_sky_465D_bin.h" +#include "umount_465D_bin.h" +#include "mamba_465D_lz_bin.h" +#include "mamba_loader_465D_bin.h" + +#include "payload_sky_470C_bin.h" +#include "umount_470C_bin.h" +#include "mamba_470C_lz_bin.h" +#include "mamba_loader_470C_bin.h" + +#include "payload_sky_470D_bin.h" +#include "umount_470D_bin.h" +#include "mamba_470D_lz_bin.h" +#include "mamba_loader_470D_bin.h" + +#include "payload_sky_475C_bin.h" +#include "umount_475C_bin.h" +#include "mamba_475C_lz_bin.h" +#include "mamba_loader_475C_bin.h" + +#include "payload_sky_475D_bin.h" +#include "umount_475D_bin.h" +#include "mamba_475D_lz_bin.h" +#include "mamba_loader_475D_bin.h" + +#include "payload_sky_476C_bin.h" +#include "umount_476C_bin.h" +#include "mamba_476C_lz_bin.h" +#include "mamba_loader_476C_bin.h" + +#include "payload_sky_476D_bin.h" +#include "umount_476D_bin.h" +#include "mamba_476D_lz_bin.h" +#include "mamba_loader_476D_bin.h" + +#include "payload_sky_478C_bin.h" +#include "umount_478C_bin.h" +#include "mamba_478C_lz_bin.h" +#include "mamba_loader_478C_bin.h" + +#include "payload_sky_478D_bin.h" +#include "umount_478D_bin.h" +#include "mamba_478D_lz_bin.h" +#include "mamba_loader_478D_bin.h" + +#include "payload_sky_480C_bin.h" +#include "umount_480C_bin.h" +#include "mamba_480C_lz_bin.h" +#include "mamba_loader_480C_bin.h" + +#include "payload_sky_480D_bin.h" +#include "umount_480D_bin.h" +#include "mamba_480D_lz_bin.h" +#include "mamba_loader_480D_bin.h" + +#include "payload_sky_481C_bin.h" +#include "umount_481C_bin.h" +#include "mamba_481C_lz_bin.h" +#include "mamba_loader_481C_bin.h" + +#include "payload_sky_481D_bin.h" +#include "umount_481D_bin.h" +#include "mamba_481D_lz_bin.h" +#include "mamba_loader_481D_bin.h" + +#include "payload_sky_482C_bin.h" +#include "umount_482C_bin.h" +#include "mamba_482C_lz_bin.h" +#include "mamba_loader_482C_bin.h" + +#include "payload_sky_482D_bin.h" +#include "umount_482D_bin.h" +#include "mamba_482D_lz_bin.h" +#include "mamba_loader_482D_bin.h" + +#include "payload_sky_483C_bin.h" +#include "umount_483C_bin.h" +#include "mamba_483C_lz_bin.h" +#include "mamba_loader_483C_bin.h" + +#include "payload_sky_484C_bin.h" +#include "umount_484C_bin.h" +#include "mamba_484C_lz_bin.h" +#include "mamba_loader_484C_bin.h" + +#include "payload_sky_484D_bin.h" +#include "umount_484D_bin.h" +#include "mamba_484D_lz_bin.h" +#include "mamba_loader_484D_bin.h" + + +#endif /* __DATA_H__ */ diff --git a/MGZ/source/fw.c b/MGZ/source/fw.c new file mode 100644 index 00000000..30d6aaa9 --- /dev/null +++ b/MGZ/source/fw.c @@ -0,0 +1,1159 @@ + +#include "fw.h" + +#define SUCCESS 1 +#define FAILED 0 + +extern int firmware; +extern u64 SYSCALL_TABLE; +extern u64 HV_START_OFFSET; +extern u64 OFFSET_FIX; +extern u64 OFFSET_2_FIX; +extern u64 OFFSET_FIX_3C; +extern u64 OFFSET_FIX_2B17; +extern u64 OFFSET_FIX_LIC; +extern u64 OPEN_HOOK; +extern u64 BASE_ADDR; +extern u64 UMOUNT_SYSCALL_OFFSET; +extern u64 LV2MOUNTADDR; +extern u64 LV2MOUNTADDR_ESIZE; +extern u64 LV2MOUNTADDR_CSIZE; +extern u64 NEW_POKE_SYSCALL_ADDR; +extern u64 PAYLOAD_SKY; +extern size_t PAYLOAD_SKY_SIZE; +extern u64 UMOUNT; +extern size_t UMOUNT_SIZE; +extern u64 MAMBA; +extern size_t MAMBA_SIZE; +extern u64 *MAMBA_LOADER; +extern size_t MAMBA_LOADER_SIZE; +extern u64 OFFSET_1_IDPS; +extern u64 OFFSET_2_IDPS; + +extern void print_load(char *format, ...); +extern u64 lv2peek(u64 addr); + +u8 init_fw() +{ + if(( lv2peek(FW_DATE_OFFSET_421C )==FW_DATE_1_421C) && + ( lv2peek(FW_DATE_OFFSET_421C + 8)==FW_DATE_2_421C) ) + { + + firmware = 0x421C; + + OFFSET_2_FIX = OFFSET_2_FIX_421C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_421C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_421C; + OFFSET_FIX = OFFSET_FIX_421C; + HV_START_OFFSET = HV_START_OFFSET_421C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_421C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_421C; + OFFSET_FIX_3C = OFFSET_FIX_3C_421C; + SYSCALL_TABLE = SYSCALL_TABLE_421C; + LV2MOUNTADDR = LV2MOUNTADDR_421C; + OPEN_HOOK = OPEN_HOOK_421C; + BASE_ADDR = BASE_ADDR_421C; + OFFSET_1_IDPS = OFFSET_1_IDPS_421C; + OFFSET_2_IDPS = OFFSET_2_IDPS_421C; + + PAYLOAD_SKY_SIZE = payload_sky_421C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_421C_bin; + UMOUNT_SIZE = umount_421C_bin_size; + UMOUNT = (u64) umount_421C_bin; + MAMBA_SIZE = mamba_421C_lz_bin_size; + MAMBA = (u64) mamba_421C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_421C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_421C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_421D )==FW_DATE_1_421D) && + ( lv2peek(FW_DATE_OFFSET_421D + 8)==FW_DATE_2_421D) ) + { + + firmware = 0x421D; + + OFFSET_2_FIX = OFFSET_2_FIX_421D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_421D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_421D; + OFFSET_FIX = OFFSET_FIX_421D; + HV_START_OFFSET = HV_START_OFFSET_421D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_421D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_421D; + OFFSET_FIX_3C = OFFSET_FIX_3C_421D; + SYSCALL_TABLE = SYSCALL_TABLE_421D; + LV2MOUNTADDR = LV2MOUNTADDR_421D; + OPEN_HOOK = OPEN_HOOK_421D; + BASE_ADDR = BASE_ADDR_421D; + OFFSET_1_IDPS = OFFSET_1_IDPS_421D; + OFFSET_2_IDPS = OFFSET_2_IDPS_421D; + + PAYLOAD_SKY_SIZE = payload_sky_421D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_421D_bin; + UMOUNT_SIZE = umount_421D_bin_size; + UMOUNT = (u64) umount_421D_bin; + MAMBA_SIZE = mamba_421D_lz_bin_size; + MAMBA = (u64) mamba_421D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_421D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_421D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_430C )==FW_DATE_1_430C) && + ( lv2peek(FW_DATE_OFFSET_430C + 8)==FW_DATE_2_430C) ) + { + + firmware = 0x430C; + + OFFSET_2_FIX = OFFSET_2_FIX_430C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_430C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_430C; + OFFSET_FIX = OFFSET_FIX_430C; + HV_START_OFFSET = HV_START_OFFSET_430C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_430C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_430C; + OFFSET_FIX_3C = OFFSET_FIX_3C_430C; + SYSCALL_TABLE = SYSCALL_TABLE_430C; + LV2MOUNTADDR = LV2MOUNTADDR_430C; + OPEN_HOOK = OPEN_HOOK_430C; + BASE_ADDR = BASE_ADDR_430C; + OFFSET_1_IDPS = OFFSET_1_IDPS_430C; + OFFSET_2_IDPS = OFFSET_2_IDPS_430C; + + PAYLOAD_SKY_SIZE = payload_sky_430C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_430C_bin; + UMOUNT_SIZE = umount_430C_bin_size; + UMOUNT = (u64) umount_430C_bin; + MAMBA_SIZE = mamba_430C_lz_bin_size; + MAMBA = (u64) mamba_430C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_430C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_430C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_430D )==FW_DATE_1_430D) && + ( lv2peek(FW_DATE_OFFSET_430D + 8)==FW_DATE_2_430D) ) + { + + firmware = 0x430D; + + OFFSET_2_FIX = OFFSET_2_FIX_430D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_430D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_430D; + OFFSET_FIX = OFFSET_FIX_430D; + HV_START_OFFSET = HV_START_OFFSET_430D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_430D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_430D; + OFFSET_FIX_3C = OFFSET_FIX_3C_430D; + SYSCALL_TABLE = SYSCALL_TABLE_430D; + LV2MOUNTADDR = LV2MOUNTADDR_430D; + OPEN_HOOK = OPEN_HOOK_430D; + BASE_ADDR = BASE_ADDR_430D; + OFFSET_1_IDPS = OFFSET_1_IDPS_430D; + OFFSET_2_IDPS = OFFSET_2_IDPS_430D; + + PAYLOAD_SKY_SIZE = payload_sky_430D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_430D_bin; + UMOUNT_SIZE = umount_430D_bin_size; + UMOUNT = (u64) umount_430D_bin; + MAMBA_SIZE = mamba_430D_lz_bin_size; + MAMBA = (u64) mamba_430D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_430D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_430D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_431C )==FW_DATE_1_431C) && + ( lv2peek(FW_DATE_OFFSET_431C + 8)==FW_DATE_2_431C) ) + { + + firmware = 0x431C; + + OFFSET_2_FIX = OFFSET_2_FIX_431C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_431C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_431C; + OFFSET_FIX = OFFSET_FIX_431C; + HV_START_OFFSET = HV_START_OFFSET_431C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_431C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_431C; + OFFSET_FIX_3C = OFFSET_FIX_3C_431C; + SYSCALL_TABLE = SYSCALL_TABLE_431C; + LV2MOUNTADDR = LV2MOUNTADDR_431C; + OPEN_HOOK = OPEN_HOOK_431C; + BASE_ADDR = BASE_ADDR_431C; + OFFSET_1_IDPS = OFFSET_1_IDPS_431C; + OFFSET_2_IDPS = OFFSET_2_IDPS_431C; + + PAYLOAD_SKY_SIZE = payload_sky_431C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_431C_bin; + UMOUNT_SIZE = umount_431C_bin_size; + UMOUNT = (u64) umount_431C_bin; + MAMBA_SIZE = mamba_431C_lz_bin_size; + MAMBA = (u64) mamba_431C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_431C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_431C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_440C )==FW_DATE_1_440C) && + ( lv2peek(FW_DATE_OFFSET_440C + 8)==FW_DATE_2_440C) ) + { + + firmware = 0x440C; + + OFFSET_2_FIX = OFFSET_2_FIX_440C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_440C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_440C; + OFFSET_FIX = OFFSET_FIX_440C; + HV_START_OFFSET = HV_START_OFFSET_440C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_440C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_440C; + OFFSET_FIX_3C = OFFSET_FIX_3C_440C; + SYSCALL_TABLE = SYSCALL_TABLE_440C; + LV2MOUNTADDR = LV2MOUNTADDR_440C; + OPEN_HOOK = OPEN_HOOK_440C; + BASE_ADDR = BASE_ADDR_440C; + OFFSET_1_IDPS = OFFSET_1_IDPS_440C; + OFFSET_2_IDPS = OFFSET_2_IDPS_440C; + + PAYLOAD_SKY_SIZE = payload_sky_440C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_440C_bin; + UMOUNT_SIZE = umount_440C_bin_size; + UMOUNT = (u64) umount_440C_bin; + MAMBA_SIZE = mamba_440C_lz_bin_size; + MAMBA = (u64) mamba_440C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_440C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_440C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_441C )==FW_DATE_1_441C) && + ( lv2peek(FW_DATE_OFFSET_441C + 8)==FW_DATE_2_441C) ) + { + + firmware = 0x441C; + + OFFSET_2_FIX = OFFSET_2_FIX_441C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_441C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_441C; + OFFSET_FIX = OFFSET_FIX_441C; + HV_START_OFFSET = HV_START_OFFSET_441C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_441C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_441C; + OFFSET_FIX_3C = OFFSET_FIX_3C_441C; + SYSCALL_TABLE = SYSCALL_TABLE_441C; + LV2MOUNTADDR = LV2MOUNTADDR_441C; + OPEN_HOOK = OPEN_HOOK_441C; + BASE_ADDR = BASE_ADDR_441C; + OFFSET_1_IDPS = OFFSET_1_IDPS_441C; + OFFSET_2_IDPS = OFFSET_2_IDPS_441C; + + PAYLOAD_SKY_SIZE = payload_sky_441C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_441C_bin; + UMOUNT_SIZE = umount_441C_bin_size; + UMOUNT = (u64) umount_441C_bin; + MAMBA_SIZE = mamba_441C_lz_bin_size; + MAMBA = (u64) mamba_441C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_441C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_441C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_441D )==FW_DATE_1_441D) && + ( lv2peek(FW_DATE_OFFSET_441D + 8)==FW_DATE_2_441D) ) + { + + firmware = 0x441D; + + OFFSET_2_FIX = OFFSET_2_FIX_441D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_441D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_441D; + OFFSET_FIX = OFFSET_FIX_441D; + HV_START_OFFSET = HV_START_OFFSET_441D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_441D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_441D; + OFFSET_FIX_3C = OFFSET_FIX_3C_441D; + SYSCALL_TABLE = SYSCALL_TABLE_441D; + LV2MOUNTADDR = LV2MOUNTADDR_441D; + OPEN_HOOK = OPEN_HOOK_441D; + BASE_ADDR = BASE_ADDR_441D; + OFFSET_1_IDPS = OFFSET_1_IDPS_441D; + OFFSET_2_IDPS = OFFSET_2_IDPS_441D; + + PAYLOAD_SKY_SIZE = payload_sky_441D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_441D_bin; + UMOUNT_SIZE = umount_441D_bin_size; + UMOUNT = (u64) umount_441D_bin; + MAMBA_SIZE = mamba_441D_lz_bin_size; + MAMBA = (u64) mamba_441D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_441D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_441D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_446C )==FW_DATE_1_446C) && + ( lv2peek(FW_DATE_OFFSET_446C + 8)==FW_DATE_2_446C) ) + { + + firmware = 0x446C; + + OFFSET_2_FIX = OFFSET_2_FIX_446C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_446C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_446C; + OFFSET_FIX = OFFSET_FIX_446C; + HV_START_OFFSET = HV_START_OFFSET_446C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_446C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_446C; + OFFSET_FIX_3C = OFFSET_FIX_3C_446C; + SYSCALL_TABLE = SYSCALL_TABLE_446C; + LV2MOUNTADDR = LV2MOUNTADDR_446C; + OPEN_HOOK = OPEN_HOOK_446C; + BASE_ADDR = BASE_ADDR_446C; + OFFSET_1_IDPS = OFFSET_1_IDPS_446C; + OFFSET_2_IDPS = OFFSET_2_IDPS_446C; + + PAYLOAD_SKY_SIZE = payload_sky_446C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_446C_bin; + UMOUNT_SIZE = umount_446C_bin_size; + UMOUNT = (u64) umount_446C_bin; + MAMBA_SIZE = mamba_446C_lz_bin_size; + MAMBA = (u64) mamba_446C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_446C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_446C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_446D )==FW_DATE_1_446D) && + ( lv2peek(FW_DATE_OFFSET_446D + 8)==FW_DATE_2_446D) ) + { + + firmware = 0x446D; + + OFFSET_2_FIX = OFFSET_2_FIX_446D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_446D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_446D; + OFFSET_FIX = OFFSET_FIX_446D; + HV_START_OFFSET = HV_START_OFFSET_446D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_446D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_446D; + OFFSET_FIX_3C = OFFSET_FIX_3C_446D; + SYSCALL_TABLE = SYSCALL_TABLE_446D; + LV2MOUNTADDR = LV2MOUNTADDR_446D; + OPEN_HOOK = OPEN_HOOK_446D; + BASE_ADDR = BASE_ADDR_446D; + OFFSET_1_IDPS = OFFSET_1_IDPS_446D; + OFFSET_2_IDPS = OFFSET_2_IDPS_446D; + + PAYLOAD_SKY_SIZE = payload_sky_446D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_446D_bin; + UMOUNT_SIZE = umount_446D_bin_size; + UMOUNT = (u64) umount_446D_bin; + MAMBA_SIZE = mamba_446D_lz_bin_size; + MAMBA = (u64) mamba_446D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_446D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_446D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_450C )==FW_DATE_1_450C) && + ( lv2peek(FW_DATE_OFFSET_450C + 8)==FW_DATE_2_450C) ) + { + + firmware = 0x450C; + + OFFSET_2_FIX = OFFSET_2_FIX_450C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_450C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_450C; + OFFSET_FIX = OFFSET_FIX_450C; + HV_START_OFFSET = HV_START_OFFSET_450C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_450C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_450C; + OFFSET_FIX_3C = OFFSET_FIX_3C_450C; + SYSCALL_TABLE = SYSCALL_TABLE_450C; + LV2MOUNTADDR = LV2MOUNTADDR_450C; + OPEN_HOOK = OPEN_HOOK_450C; + BASE_ADDR = BASE_ADDR_450C; + OFFSET_1_IDPS = OFFSET_1_IDPS_450C; + OFFSET_2_IDPS = OFFSET_2_IDPS_450C; + + PAYLOAD_SKY_SIZE = payload_sky_450C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_450C_bin; + UMOUNT_SIZE = umount_450C_bin_size; + UMOUNT = (u64) umount_450C_bin; + MAMBA_SIZE = mamba_450C_lz_bin_size; + MAMBA = (u64) mamba_450C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_450C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_450C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_450D )==FW_DATE_1_450D) && + ( lv2peek(FW_DATE_OFFSET_450D + 8)==FW_DATE_2_450D) ) + { + + firmware = 0x450D; + + OFFSET_2_FIX = OFFSET_2_FIX_450D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_450D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_450D; + OFFSET_FIX = OFFSET_FIX_450D; + HV_START_OFFSET = HV_START_OFFSET_450D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_450D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_450D; + OFFSET_FIX_3C = OFFSET_FIX_3C_450D; + SYSCALL_TABLE = SYSCALL_TABLE_450D; + LV2MOUNTADDR = LV2MOUNTADDR_450D; + OPEN_HOOK = OPEN_HOOK_450D; + BASE_ADDR = BASE_ADDR_450D; + OFFSET_1_IDPS = OFFSET_1_IDPS_450D; + OFFSET_2_IDPS = OFFSET_2_IDPS_450D; + + PAYLOAD_SKY_SIZE = payload_sky_450D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_450D_bin; + UMOUNT_SIZE = umount_450D_bin_size; + UMOUNT = (u64) umount_450D_bin; + MAMBA_SIZE = mamba_450D_lz_bin_size; + MAMBA = (u64) mamba_450D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_450D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_450D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_453C )==FW_DATE_1_453C) && + ( lv2peek(FW_DATE_OFFSET_453C + 8)==FW_DATE_2_453C) ) + { + + firmware = 0x453C; + + OFFSET_2_FIX = OFFSET_2_FIX_453C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_453C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_453C; + OFFSET_FIX = OFFSET_FIX_453C; + HV_START_OFFSET = HV_START_OFFSET_453C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_453C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_453C; + OFFSET_FIX_3C = OFFSET_FIX_3C_453C; + SYSCALL_TABLE = SYSCALL_TABLE_453C; + LV2MOUNTADDR = LV2MOUNTADDR_453C; + OPEN_HOOK = OPEN_HOOK_453C; + BASE_ADDR = BASE_ADDR_453C; + OFFSET_1_IDPS = OFFSET_1_IDPS_453C; + OFFSET_2_IDPS = OFFSET_2_IDPS_453C; + + PAYLOAD_SKY_SIZE = payload_sky_453C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_453C_bin; + UMOUNT_SIZE = umount_453C_bin_size; + UMOUNT = (u64) umount_453C_bin; + MAMBA_SIZE = mamba_453C_lz_bin_size; + MAMBA = (u64) mamba_453C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_453C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_453C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_453D )==FW_DATE_1_453D) && + ( lv2peek(FW_DATE_OFFSET_453D + 8)==FW_DATE_2_453D) ) + { + + firmware = 0x453D; + + OFFSET_2_FIX = OFFSET_2_FIX_453D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_453D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_453D; + OFFSET_FIX = OFFSET_FIX_453D; + HV_START_OFFSET = HV_START_OFFSET_453D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_453D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_453D; + OFFSET_FIX_3C = OFFSET_FIX_3C_453D; + SYSCALL_TABLE = SYSCALL_TABLE_453D; + LV2MOUNTADDR = LV2MOUNTADDR_453D; + OPEN_HOOK = OPEN_HOOK_453D; + BASE_ADDR = BASE_ADDR_453D; + OFFSET_1_IDPS = OFFSET_1_IDPS_453D; + OFFSET_2_IDPS = OFFSET_2_IDPS_453D; + + PAYLOAD_SKY_SIZE = payload_sky_453D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_453D_bin; + UMOUNT_SIZE = umount_453D_bin_size; + UMOUNT = (u64) umount_453D_bin; + MAMBA_SIZE = mamba_453D_lz_bin_size; + MAMBA = (u64) mamba_453D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_453D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_453D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_455C )==FW_DATE_1_455C) && + ( lv2peek(FW_DATE_OFFSET_455C + 8)==FW_DATE_2_455C) ) + { + + firmware = 0x455C; + + OFFSET_2_FIX = OFFSET_2_FIX_455C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_455C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_455C; + OFFSET_FIX = OFFSET_FIX_455C; + HV_START_OFFSET = HV_START_OFFSET_455C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_455C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_455C; + OFFSET_FIX_3C = OFFSET_FIX_3C_455C; + SYSCALL_TABLE = SYSCALL_TABLE_455C; + LV2MOUNTADDR = LV2MOUNTADDR_455C; + OPEN_HOOK = OPEN_HOOK_455C; + BASE_ADDR = BASE_ADDR_455C; + OFFSET_1_IDPS = OFFSET_1_IDPS_455C; + OFFSET_2_IDPS = OFFSET_2_IDPS_455C; + + PAYLOAD_SKY_SIZE = payload_sky_455C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_455C_bin; + UMOUNT_SIZE = umount_455C_bin_size; + UMOUNT = (u64) umount_455C_bin; + MAMBA_SIZE = mamba_455C_lz_bin_size; + MAMBA = (u64) mamba_455C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_455C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_455C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_455D )==FW_DATE_1_455D) && + ( lv2peek(FW_DATE_OFFSET_455D + 8)==FW_DATE_2_455D) ) + { + + firmware = 0x455D; + + OFFSET_2_FIX = OFFSET_2_FIX_455D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_455D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_455D; + OFFSET_FIX = OFFSET_FIX_455D; + HV_START_OFFSET = HV_START_OFFSET_455D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_455D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_455D; + OFFSET_FIX_3C = OFFSET_FIX_3C_455D; + SYSCALL_TABLE = SYSCALL_TABLE_455D; + LV2MOUNTADDR = LV2MOUNTADDR_455D; + OPEN_HOOK = OPEN_HOOK_455D; + BASE_ADDR = BASE_ADDR_455D; + OFFSET_1_IDPS = OFFSET_1_IDPS_455D; + OFFSET_2_IDPS = OFFSET_2_IDPS_455D; + + PAYLOAD_SKY_SIZE = payload_sky_455D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_455D_bin; + UMOUNT_SIZE = umount_455D_bin_size; + UMOUNT = (u64) umount_455D_bin; + MAMBA_SIZE = mamba_455D_lz_bin_size; + MAMBA = (u64) mamba_455D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_455D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_455D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_460C )==FW_DATE_1_460C) && + ( lv2peek(FW_DATE_OFFSET_460C + 8)==FW_DATE_2_460C) ) + { + + firmware = 0x460C; + + OFFSET_2_FIX = OFFSET_2_FIX_460C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_460C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_460C; + OFFSET_FIX = OFFSET_FIX_460C; + HV_START_OFFSET = HV_START_OFFSET_460C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_460C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_460C; + OFFSET_FIX_3C = OFFSET_FIX_3C_460C; + SYSCALL_TABLE = SYSCALL_TABLE_460C; + LV2MOUNTADDR = LV2MOUNTADDR_460C; + OPEN_HOOK = OPEN_HOOK_460C; + BASE_ADDR = BASE_ADDR_460C; + OFFSET_1_IDPS = OFFSET_1_IDPS_460C; + OFFSET_2_IDPS = OFFSET_2_IDPS_460C; + + PAYLOAD_SKY_SIZE = payload_sky_460C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_460C_bin; + UMOUNT_SIZE = umount_460C_bin_size; + UMOUNT = (u64) umount_460C_bin; + MAMBA_SIZE = mamba_460C_lz_bin_size; + MAMBA = (u64) mamba_460C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_460C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_460C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_465C )==FW_DATE_1_465C) && + ( lv2peek(FW_DATE_OFFSET_465C + 8)==FW_DATE_2_465C) ) + { + + firmware = 0x465C; + + OFFSET_2_FIX = OFFSET_2_FIX_465C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_465C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_465C; + OFFSET_FIX = OFFSET_FIX_465C; + HV_START_OFFSET = HV_START_OFFSET_465C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_465C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_465C; + OFFSET_FIX_3C = OFFSET_FIX_3C_465C; + SYSCALL_TABLE = SYSCALL_TABLE_465C; + LV2MOUNTADDR = LV2MOUNTADDR_465C; + OPEN_HOOK = OPEN_HOOK_465C; + BASE_ADDR = BASE_ADDR_465C; + OFFSET_1_IDPS = OFFSET_1_IDPS_465C; + OFFSET_2_IDPS = OFFSET_2_IDPS_465C; + + PAYLOAD_SKY_SIZE = payload_sky_465C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_465C_bin; + UMOUNT_SIZE = umount_465C_bin_size; + UMOUNT = (u64) umount_465C_bin; + MAMBA_SIZE = mamba_465C_lz_bin_size; + MAMBA = (u64) mamba_465C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_465C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_465C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_465D )==FW_DATE_1_465D) && + ( lv2peek(FW_DATE_OFFSET_465D + 8)==FW_DATE_2_465D) ) + { + + firmware = 0x465D; + + OFFSET_2_FIX = OFFSET_2_FIX_465D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_465D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_465D; + OFFSET_FIX = OFFSET_FIX_465D; + HV_START_OFFSET = HV_START_OFFSET_465D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_465D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_465D; + OFFSET_FIX_3C = OFFSET_FIX_3C_465D; + SYSCALL_TABLE = SYSCALL_TABLE_465D; + LV2MOUNTADDR = LV2MOUNTADDR_465D; + OPEN_HOOK = OPEN_HOOK_465D; + BASE_ADDR = BASE_ADDR_465D; + OFFSET_1_IDPS = OFFSET_1_IDPS_465D; + OFFSET_2_IDPS = OFFSET_2_IDPS_465D; + + PAYLOAD_SKY_SIZE = payload_sky_465D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_465D_bin; + UMOUNT_SIZE = umount_465D_bin_size; + UMOUNT = (u64) umount_465D_bin; + MAMBA_SIZE = mamba_465D_lz_bin_size; + MAMBA = (u64) mamba_465D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_465D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_465D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_470C )==FW_DATE_1_470C) && + ( lv2peek(FW_DATE_OFFSET_470C + 8)==FW_DATE_2_470C) ) + { + + firmware = 0x470C; + + OFFSET_2_FIX = OFFSET_2_FIX_470C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_470C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_470C; + OFFSET_FIX = OFFSET_FIX_470C; + HV_START_OFFSET = HV_START_OFFSET_470C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_470C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_470C; + OFFSET_FIX_3C = OFFSET_FIX_3C_470C; + SYSCALL_TABLE = SYSCALL_TABLE_470C; + LV2MOUNTADDR = LV2MOUNTADDR_470C; + OPEN_HOOK = OPEN_HOOK_470C; + BASE_ADDR = BASE_ADDR_470C; + OFFSET_1_IDPS = OFFSET_1_IDPS_470C; + OFFSET_2_IDPS = OFFSET_2_IDPS_470C; + + PAYLOAD_SKY_SIZE = payload_sky_470C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_470C_bin; + UMOUNT_SIZE = umount_470C_bin_size; + UMOUNT = (u64) umount_470C_bin; + MAMBA_SIZE = mamba_470C_lz_bin_size; + MAMBA = (u64) mamba_470C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_470C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_470C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_470D )==FW_DATE_1_470D) && + ( lv2peek(FW_DATE_OFFSET_470D + 8)==FW_DATE_2_470D) ) + { + + firmware = 0x470D; + + OFFSET_2_FIX = OFFSET_2_FIX_470D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_470D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_470D; + OFFSET_FIX = OFFSET_FIX_470D; + HV_START_OFFSET = HV_START_OFFSET_470D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_470D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_470D; + OFFSET_FIX_3C = OFFSET_FIX_3C_470D; + SYSCALL_TABLE = SYSCALL_TABLE_470D; + LV2MOUNTADDR = LV2MOUNTADDR_470D; + OPEN_HOOK = OPEN_HOOK_470D; + BASE_ADDR = BASE_ADDR_470D; + OFFSET_1_IDPS = OFFSET_1_IDPS_470D; + OFFSET_2_IDPS = OFFSET_2_IDPS_470D; + + PAYLOAD_SKY_SIZE = payload_sky_470D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_470D_bin; + UMOUNT_SIZE = umount_470D_bin_size; + UMOUNT = (u64) umount_470D_bin; + MAMBA_SIZE = mamba_470D_lz_bin_size; + MAMBA = (u64) mamba_470D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_470D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_470D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_475C )==FW_DATE_1_475C) && + ( lv2peek(FW_DATE_OFFSET_475C + 8)==FW_DATE_2_475C) ) + { + + firmware = 0x475C; + + OFFSET_2_FIX = OFFSET_2_FIX_475C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_475C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_475C; + OFFSET_FIX = OFFSET_FIX_475C; + HV_START_OFFSET = HV_START_OFFSET_475C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_475C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_475C; + OFFSET_FIX_3C = OFFSET_FIX_3C_475C; + SYSCALL_TABLE = SYSCALL_TABLE_475C; + LV2MOUNTADDR = LV2MOUNTADDR_475C; + OPEN_HOOK = OPEN_HOOK_475C; + BASE_ADDR = BASE_ADDR_475C; + OFFSET_1_IDPS = OFFSET_1_IDPS_475C; + OFFSET_2_IDPS = OFFSET_2_IDPS_475C; + + PAYLOAD_SKY_SIZE = payload_sky_475C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_475C_bin; + UMOUNT_SIZE = umount_475C_bin_size; + UMOUNT = (u64) umount_475C_bin; + MAMBA_SIZE = mamba_475C_lz_bin_size; + MAMBA = (u64) mamba_475C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_475C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_475C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_475D )==FW_DATE_1_475D) && + ( lv2peek(FW_DATE_OFFSET_475D + 8)==FW_DATE_2_475D) ) + { + + firmware = 0x475D; + + OFFSET_2_FIX = OFFSET_2_FIX_475D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_475D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_475D; + OFFSET_FIX = OFFSET_FIX_475D; + HV_START_OFFSET = HV_START_OFFSET_475D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_475D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_475D; + OFFSET_FIX_3C = OFFSET_FIX_3C_475D; + SYSCALL_TABLE = SYSCALL_TABLE_475D; + LV2MOUNTADDR = LV2MOUNTADDR_475D; + OPEN_HOOK = OPEN_HOOK_475D; + BASE_ADDR = BASE_ADDR_475D; + OFFSET_1_IDPS = OFFSET_1_IDPS_475D; + OFFSET_2_IDPS = OFFSET_2_IDPS_475D; + + PAYLOAD_SKY_SIZE = payload_sky_475D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_475D_bin; + UMOUNT_SIZE = umount_475D_bin_size; + UMOUNT = (u64) umount_475D_bin; + MAMBA_SIZE = mamba_475D_lz_bin_size; + MAMBA = (u64) mamba_475D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_475D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_475D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_476C )==FW_DATE_1_476C) && + ( lv2peek(FW_DATE_OFFSET_476C + 8)==FW_DATE_2_476C) ) + { + + firmware = 0x476C; + + OFFSET_2_FIX = OFFSET_2_FIX_476C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_476C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_476C; + OFFSET_FIX = OFFSET_FIX_476C; + HV_START_OFFSET = HV_START_OFFSET_476C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_476C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_476C; + OFFSET_FIX_3C = OFFSET_FIX_3C_476C; + SYSCALL_TABLE = SYSCALL_TABLE_476C; + LV2MOUNTADDR = LV2MOUNTADDR_476C; + OPEN_HOOK = OPEN_HOOK_476C; + BASE_ADDR = BASE_ADDR_476C; + OFFSET_1_IDPS = OFFSET_1_IDPS_476C; + OFFSET_2_IDPS = OFFSET_2_IDPS_476C; + + PAYLOAD_SKY_SIZE = payload_sky_476C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_476C_bin; + UMOUNT_SIZE = umount_476C_bin_size; + UMOUNT = (u64) umount_476C_bin; + MAMBA_SIZE = mamba_476C_lz_bin_size; + MAMBA = (u64) mamba_476C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_476C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_476C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_476D )==FW_DATE_1_476D) && + ( lv2peek(FW_DATE_OFFSET_476D + 8)==FW_DATE_2_476D) ) + { + + firmware = 0x476D; + + OFFSET_2_FIX = OFFSET_2_FIX_476D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_476D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_476D; + OFFSET_FIX = OFFSET_FIX_476D; + HV_START_OFFSET = HV_START_OFFSET_476D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_476D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_476D; + OFFSET_FIX_3C = OFFSET_FIX_3C_476D; + SYSCALL_TABLE = SYSCALL_TABLE_476D; + LV2MOUNTADDR = LV2MOUNTADDR_476D; + OPEN_HOOK = OPEN_HOOK_476D; + BASE_ADDR = BASE_ADDR_476D; + OFFSET_1_IDPS = OFFSET_1_IDPS_476D; + OFFSET_2_IDPS = OFFSET_2_IDPS_476D; + + PAYLOAD_SKY_SIZE = payload_sky_476D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_476D_bin; + UMOUNT_SIZE = umount_476D_bin_size; + UMOUNT = (u64) umount_476D_bin; + MAMBA_SIZE = mamba_476D_lz_bin_size; + MAMBA = (u64) mamba_476D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_476D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_476D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_478C )==FW_DATE_1_478C) && + ( lv2peek(FW_DATE_OFFSET_478C + 8)==FW_DATE_2_478C) ) + { + + firmware = 0x478C; + + OFFSET_2_FIX = OFFSET_2_FIX_478C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_478C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_478C; + OFFSET_FIX = OFFSET_FIX_478C; + HV_START_OFFSET = HV_START_OFFSET_478C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_478C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_478C; + OFFSET_FIX_3C = OFFSET_FIX_3C_478C; + SYSCALL_TABLE = SYSCALL_TABLE_478C; + LV2MOUNTADDR = LV2MOUNTADDR_478C; + OPEN_HOOK = OPEN_HOOK_478C; + BASE_ADDR = BASE_ADDR_478C; + OFFSET_1_IDPS = OFFSET_1_IDPS_478C; + OFFSET_2_IDPS = OFFSET_2_IDPS_478C; + + PAYLOAD_SKY_SIZE = payload_sky_478C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_478C_bin; + UMOUNT_SIZE = umount_478C_bin_size; + UMOUNT = (u64) umount_478C_bin; + MAMBA_SIZE = mamba_478C_lz_bin_size; + MAMBA = (u64) mamba_478C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_478C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_478C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_478D )==FW_DATE_1_478D) && + ( lv2peek(FW_DATE_OFFSET_478D + 8)==FW_DATE_2_478D) ) + { + + firmware = 0x478D; + + OFFSET_2_FIX = OFFSET_2_FIX_478D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_478D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_478D; + OFFSET_FIX = OFFSET_FIX_478D; + HV_START_OFFSET = HV_START_OFFSET_478D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_478D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_478D; + OFFSET_FIX_3C = OFFSET_FIX_3C_478D; + SYSCALL_TABLE = SYSCALL_TABLE_478D; + LV2MOUNTADDR = LV2MOUNTADDR_478D; + OPEN_HOOK = OPEN_HOOK_478D; + BASE_ADDR = BASE_ADDR_478D; + OFFSET_1_IDPS = OFFSET_1_IDPS_478D; + OFFSET_2_IDPS = OFFSET_2_IDPS_478D; + + PAYLOAD_SKY_SIZE = payload_sky_478D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_478D_bin; + UMOUNT_SIZE = umount_478D_bin_size; + UMOUNT = (u64) umount_478D_bin; + MAMBA_SIZE = mamba_478D_lz_bin_size; + MAMBA = (u64) mamba_478D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_478D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_478D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_480C )==FW_DATE_1_480C) && + ( lv2peek(FW_DATE_OFFSET_480C + 8)==FW_DATE_2_480C) ) + { + + firmware = 0x480C; + + OFFSET_2_FIX = OFFSET_2_FIX_480C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_480C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_480C; + OFFSET_FIX = OFFSET_FIX_480C; + HV_START_OFFSET = HV_START_OFFSET_480C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_480C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_480C; + OFFSET_FIX_3C = OFFSET_FIX_3C_480C; + SYSCALL_TABLE = SYSCALL_TABLE_480C; + LV2MOUNTADDR = LV2MOUNTADDR_480C; + OPEN_HOOK = OPEN_HOOK_480C; + BASE_ADDR = BASE_ADDR_480C; + OFFSET_1_IDPS = OFFSET_1_IDPS_480C; + OFFSET_2_IDPS = OFFSET_2_IDPS_480C; + + PAYLOAD_SKY_SIZE = payload_sky_480C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_480C_bin; + UMOUNT_SIZE = umount_480C_bin_size; + UMOUNT = (u64) umount_480C_bin; + MAMBA_SIZE = mamba_480C_lz_bin_size; + MAMBA = (u64) mamba_480C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_480C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_480C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_480D )==FW_DATE_1_480D) && + ( lv2peek(FW_DATE_OFFSET_480D + 8)==FW_DATE_2_480D) ) + { + + firmware = 0x480D; + + OFFSET_2_FIX = OFFSET_2_FIX_480D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_480D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_480D; + OFFSET_FIX = OFFSET_FIX_480D; + HV_START_OFFSET = HV_START_OFFSET_480D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_480D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_480D; + OFFSET_FIX_3C = OFFSET_FIX_3C_480D; + SYSCALL_TABLE = SYSCALL_TABLE_480D; + LV2MOUNTADDR = LV2MOUNTADDR_480D; + OPEN_HOOK = OPEN_HOOK_480D; + BASE_ADDR = BASE_ADDR_480D; + OFFSET_1_IDPS = OFFSET_1_IDPS_480D; + OFFSET_2_IDPS = OFFSET_2_IDPS_480D; + + PAYLOAD_SKY_SIZE = payload_sky_480D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_480D_bin; + UMOUNT_SIZE = umount_480D_bin_size; + UMOUNT = (u64) umount_480D_bin; + MAMBA_SIZE = mamba_480D_lz_bin_size; + MAMBA = (u64) mamba_480D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_480D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_480D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_481C )==FW_DATE_1_481C) && + ( lv2peek(FW_DATE_OFFSET_481C + 8)==FW_DATE_2_481C) ) + { + + firmware = 0x481C; + + OFFSET_2_FIX = OFFSET_2_FIX_481C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_481C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_481C; + OFFSET_FIX = OFFSET_FIX_481C; + HV_START_OFFSET = HV_START_OFFSET_481C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_481C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_481C; + OFFSET_FIX_3C = OFFSET_FIX_3C_481C; + SYSCALL_TABLE = SYSCALL_TABLE_481C; + LV2MOUNTADDR = LV2MOUNTADDR_481C; + OPEN_HOOK = OPEN_HOOK_481C; + BASE_ADDR = BASE_ADDR_481C; + OFFSET_1_IDPS = OFFSET_1_IDPS_481C; + OFFSET_2_IDPS = OFFSET_2_IDPS_481C; + + PAYLOAD_SKY_SIZE = payload_sky_481C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_481C_bin; + UMOUNT_SIZE = umount_481C_bin_size; + UMOUNT = (u64) umount_481C_bin; + MAMBA_SIZE = mamba_481C_lz_bin_size; + MAMBA = (u64) mamba_481C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_481C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_481C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_481D )==FW_DATE_1_481D) && + ( lv2peek(FW_DATE_OFFSET_481D + 8)==FW_DATE_2_481D) ) + { + + firmware = 0x481D; + + OFFSET_2_FIX = OFFSET_2_FIX_481D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_481D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_481D; + OFFSET_FIX = OFFSET_FIX_481D; + HV_START_OFFSET = HV_START_OFFSET_481D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_481D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_481D; + OFFSET_FIX_3C = OFFSET_FIX_3C_481D; + SYSCALL_TABLE = SYSCALL_TABLE_481D; + LV2MOUNTADDR = LV2MOUNTADDR_481D; + OPEN_HOOK = OPEN_HOOK_481D; + BASE_ADDR = BASE_ADDR_481D; + OFFSET_1_IDPS = OFFSET_1_IDPS_481D; + OFFSET_2_IDPS = OFFSET_2_IDPS_481D; + + PAYLOAD_SKY_SIZE = payload_sky_481D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_481D_bin; + UMOUNT_SIZE = umount_481D_bin_size; + UMOUNT = (u64) umount_481D_bin; + MAMBA_SIZE = mamba_481D_lz_bin_size; + MAMBA = (u64) mamba_481D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_481D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_481D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_482C )==FW_DATE_1_482C) && + ( lv2peek(FW_DATE_OFFSET_482C + 8)==FW_DATE_2_482C) ) + { + + firmware = 0x482C; + + OFFSET_2_FIX = OFFSET_2_FIX_482C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_482C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_482C; + OFFSET_FIX = OFFSET_FIX_482C; + HV_START_OFFSET = HV_START_OFFSET_482C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_482C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_482C; + OFFSET_FIX_3C = OFFSET_FIX_3C_482C; + SYSCALL_TABLE = SYSCALL_TABLE_482C; + LV2MOUNTADDR = LV2MOUNTADDR_482C; + OPEN_HOOK = OPEN_HOOK_482C; + BASE_ADDR = BASE_ADDR_482C; + OFFSET_1_IDPS = OFFSET_1_IDPS_482C; + OFFSET_2_IDPS = OFFSET_2_IDPS_482C; + + PAYLOAD_SKY_SIZE = payload_sky_482C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_482C_bin; + UMOUNT_SIZE = umount_482C_bin_size; + UMOUNT = (u64) umount_482C_bin; + MAMBA_SIZE = mamba_482C_lz_bin_size; + MAMBA = (u64) mamba_482C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_482C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_482C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_482D )==FW_DATE_1_482D) && + ( lv2peek(FW_DATE_OFFSET_482D + 8)==FW_DATE_2_482D) ) + { + + firmware = 0x482D; + + OFFSET_2_FIX = OFFSET_2_FIX_482D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_482D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_482D; + OFFSET_FIX = OFFSET_FIX_482D; + HV_START_OFFSET = HV_START_OFFSET_482D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_482D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_482D; + OFFSET_FIX_3C = OFFSET_FIX_3C_482D; + SYSCALL_TABLE = SYSCALL_TABLE_482D; + LV2MOUNTADDR = LV2MOUNTADDR_482D; + OPEN_HOOK = OPEN_HOOK_482D; + BASE_ADDR = BASE_ADDR_482D; + OFFSET_1_IDPS = OFFSET_1_IDPS_482D; + OFFSET_2_IDPS = OFFSET_2_IDPS_482D; + + PAYLOAD_SKY_SIZE = payload_sky_482D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_482D_bin; + UMOUNT_SIZE = umount_482D_bin_size; + UMOUNT = (u64) umount_482D_bin; + MAMBA_SIZE = mamba_482D_lz_bin_size; + MAMBA = (u64) mamba_482D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_482D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_482D_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_483C )==FW_DATE_1_483C) && + ( lv2peek(FW_DATE_OFFSET_483C + 8)==FW_DATE_2_483C) ) + { + + firmware = 0x483C; + + OFFSET_2_FIX = OFFSET_2_FIX_483C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_483C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_483C; + OFFSET_FIX = OFFSET_FIX_483C; + HV_START_OFFSET = HV_START_OFFSET_483C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_483C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_483C; + OFFSET_FIX_3C = OFFSET_FIX_3C_483C; + SYSCALL_TABLE = SYSCALL_TABLE_483C; + LV2MOUNTADDR = LV2MOUNTADDR_483C; + OPEN_HOOK = OPEN_HOOK_483C; + BASE_ADDR = BASE_ADDR_483C; + OFFSET_1_IDPS = OFFSET_1_IDPS_483C; + OFFSET_2_IDPS = OFFSET_2_IDPS_483C; + + PAYLOAD_SKY_SIZE = payload_sky_483C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_483C_bin; + UMOUNT_SIZE = umount_483C_bin_size; + UMOUNT = (u64) umount_483C_bin; + MAMBA_SIZE = mamba_483C_lz_bin_size; + MAMBA = (u64) mamba_483C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_483C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_483C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_484C )==FW_DATE_1_484C) && + ( lv2peek(FW_DATE_OFFSET_484C + 8)==FW_DATE_2_484C) ) + { + + firmware = 0x484C; + + OFFSET_2_FIX = OFFSET_2_FIX_484C; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_484C; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_484C; + OFFSET_FIX = OFFSET_FIX_484C; + HV_START_OFFSET = HV_START_OFFSET_484C; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_484C; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_484C; + OFFSET_FIX_3C = OFFSET_FIX_3C_484C; + SYSCALL_TABLE = SYSCALL_TABLE_484C; + LV2MOUNTADDR = LV2MOUNTADDR_484C; + OPEN_HOOK = OPEN_HOOK_484C; + BASE_ADDR = BASE_ADDR_484C; + OFFSET_1_IDPS = OFFSET_1_IDPS_484C; + OFFSET_2_IDPS = OFFSET_2_IDPS_484C; + + PAYLOAD_SKY_SIZE = payload_sky_484C_bin_size; + PAYLOAD_SKY = (u64) payload_sky_484C_bin; + UMOUNT_SIZE = umount_484C_bin_size; + UMOUNT = (u64) umount_484C_bin; + MAMBA_SIZE = mamba_484C_lz_bin_size; + MAMBA = (u64) mamba_484C_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_484C_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_484C_bin; + + } else + if(( lv2peek(FW_DATE_OFFSET_484D )==FW_DATE_1_484D) && + ( lv2peek(FW_DATE_OFFSET_484D + 8)==FW_DATE_2_484D) ) + { + + firmware = 0x484D; + + OFFSET_2_FIX = OFFSET_2_FIX_484D; + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_484D; + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_484D; + OFFSET_FIX = OFFSET_FIX_484D; + HV_START_OFFSET = HV_START_OFFSET_484D; + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_484D; + OFFSET_FIX_LIC = OFFSET_FIX_LIC_484D; + OFFSET_FIX_3C = OFFSET_FIX_3C_484D; + SYSCALL_TABLE = SYSCALL_TABLE_484D; + LV2MOUNTADDR = LV2MOUNTADDR_484D; + OPEN_HOOK = OPEN_HOOK_484D; + BASE_ADDR = BASE_ADDR_484D; + OFFSET_1_IDPS = OFFSET_1_IDPS_484D; + OFFSET_2_IDPS = OFFSET_2_IDPS_484D; + + PAYLOAD_SKY_SIZE = payload_sky_484D_bin_size; + PAYLOAD_SKY = (u64) payload_sky_484D_bin; + UMOUNT_SIZE = umount_484D_bin_size; + UMOUNT = (u64) umount_484D_bin; + MAMBA_SIZE = mamba_484D_lz_bin_size; + MAMBA = (u64) mamba_484D_lz_bin; + MAMBA_LOADER_SIZE = mamba_loader_484D_bin_size; + MAMBA_LOADER = (u64 *) mamba_loader_484D_bin; + + } else {return FAILED;} + + NEW_POKE_SYSCALL_ADDR = lv2peek( lv2peek(SYSCALL_TABLE + NEW_POKE_SYSCALL*8) ) + 0ULL; + UMOUNT_SYSCALL_OFFSET = lv2peek( lv2peek(SYSCALL_TABLE + 838*8) ) + 8ULL; + + return SUCCESS; +} diff --git a/MGZ/source/fw.h b/MGZ/source/fw.h new file mode 100644 index 00000000..6be409ea --- /dev/null +++ b/MGZ/source/fw.h @@ -0,0 +1,10 @@ +#ifndef _FW_H +#define _FW_H + +#include "common.h" +#include "data.h" + +u8 init_fw(); + +#endif + diff --git a/MGZ/source/libfont.c b/MGZ/source/libfont.c index e9a642d8..b3613e65 100644 --- a/MGZ/source/libfont.c +++ b/MGZ/source/libfont.c @@ -333,14 +333,19 @@ void SetFontScreenLimits(float width, float height) font_datas.screen_h = height; } -static int WidthFromStr(u8 * str) +float WidthFromStr(char *str) { - int w = 0; - - while(*str) { - w += font_datas.sx * font_datas.fonts[font_datas.current_font].fw[*str++] / font_datas.fonts[font_datas.current_font].w; - } - + if( str ==NULL) return 0; + + float w = 0; + + u8 *ustr = (u8 *) str; + + while(*ustr) + w += font_datas.sx * font_datas.fonts[font_datas.current_font].fw[*(ustr++)] / font_datas.fonts[font_datas.current_font].w; + + if(w==0) return (float) display_ttf_string(0, 0, str, 0, 0, font_datas.sx, font_datas.sy); + return w; } @@ -492,7 +497,8 @@ static int i_must_break_line(char *str, float x) float DrawString(float x, float y, char *str) { - + if(y<0) return x; + if(font_datas.current_font == 8) { int len; @@ -538,7 +544,7 @@ float DrawString(float x, float y, char *str) if(font_datas.autocenter) { - x= (font_datas.screen_w - WidthFromStr((u8 *) str)) / 2; + x= (font_datas.screen_w - WidthFromStr(str)) / 2; } @@ -570,6 +576,8 @@ static char buff[4096]; float DrawFormatString(float x, float y, char *format, ...) { + if(y<0) return x; + char *str = (char *) buff; va_list opt; @@ -622,7 +630,7 @@ float DrawFormatString(float x, float y, char *format, ...) if(font_datas.autocenter) { - x = (font_datas.screen_w - WidthFromStr((u8 *) str)) / 2; + x = (font_datas.screen_w - WidthFromStr(str)) / 2; } diff --git a/MGZ/source/libfont2.h b/MGZ/source/libfont2.h index c18ae2cf..32a4342a 100644 --- a/MGZ/source/libfont2.h +++ b/MGZ/source/libfont2.h @@ -114,6 +114,10 @@ float GetFontHeight(); float GetFontWidth(); +// Get Width of a string + +float WidthFromStr(char* str); + // function to draw one character void DrawChar(float x, float y, float z, u8 chr); diff --git a/MGZ/source/main.c b/MGZ/source/main.c index 3d8e2767..4e1975fe 100644 --- a/MGZ/source/main.c +++ b/MGZ/source/main.c @@ -49,7 +49,8 @@ #include "ps3mapi.h" #include "syscall8.h" -#include "common.h" +#include "fw.h" +#include "ps2vers.h" #include "pad.h" #include "zlib.h" #include "ttf_render.h" @@ -76,215 +77,6 @@ #include "xreg.h" -#include "payload_sky_421C_bin.h" -#include "umount_421C_bin.h" -#include "mamba_421C_lz_bin.h" -#include "mamba_loader_421C_bin.h" - -#include "payload_sky_421D_bin.h" -#include "umount_421D_bin.h" -#include "mamba_421D_lz_bin.h" -#include "mamba_loader_421D_bin.h" - -#include "payload_sky_430C_bin.h" -#include "umount_430C_bin.h" -#include "mamba_430C_lz_bin.h" -#include "mamba_loader_430C_bin.h" - -#include "payload_sky_430D_bin.h" -#include "umount_430D_bin.h" -#include "mamba_430D_lz_bin.h" -#include "mamba_loader_430D_bin.h" - -#include "payload_sky_431C_bin.h" -#include "umount_431C_bin.h" -#include "mamba_431C_lz_bin.h" -#include "mamba_loader_431C_bin.h" - -#include "payload_sky_440C_bin.h" -#include "umount_440C_bin.h" -#include "mamba_440C_lz_bin.h" -#include "mamba_loader_440C_bin.h" - -#include "payload_sky_441C_bin.h" -#include "umount_441C_bin.h" -#include "mamba_441C_lz_bin.h" -#include "mamba_loader_441C_bin.h" - -#include "payload_sky_441D_bin.h" -#include "umount_441D_bin.h" -#include "mamba_441D_lz_bin.h" -#include "mamba_loader_441D_bin.h" - -#include "payload_sky_446C_bin.h" -#include "umount_446C_bin.h" -#include "mamba_446C_lz_bin.h" -#include "mamba_loader_446C_bin.h" - -#include "payload_sky_446D_bin.h" -#include "umount_446D_bin.h" -#include "mamba_446D_lz_bin.h" -#include "mamba_loader_446D_bin.h" - -#include "payload_sky_450C_bin.h" -#include "umount_450C_bin.h" -#include "mamba_450C_lz_bin.h" -#include "mamba_loader_450C_bin.h" - -#include "payload_sky_450D_bin.h" -#include "umount_450D_bin.h" -#include "mamba_450D_lz_bin.h" -#include "mamba_loader_450D_bin.h" - -#include "payload_sky_453C_bin.h" -#include "umount_453C_bin.h" -#include "mamba_453C_lz_bin.h" -#include "mamba_loader_453C_bin.h" - -#include "payload_sky_453D_bin.h" -#include "umount_453D_bin.h" -#include "mamba_453D_lz_bin.h" -#include "mamba_loader_453D_bin.h" - -#include "payload_sky_455C_bin.h" -#include "umount_455C_bin.h" -#include "mamba_455C_lz_bin.h" -#include "mamba_loader_455C_bin.h" - -#include "payload_sky_455D_bin.h" -#include "umount_455D_bin.h" -#include "mamba_455D_lz_bin.h" -#include "mamba_loader_455D_bin.h" - -#include "payload_sky_460C_bin.h" -#include "umount_460C_bin.h" -#include "mamba_460C_lz_bin.h" -#include "mamba_loader_460C_bin.h" - -#include "payload_sky_465C_bin.h" -#include "umount_465C_bin.h" -#include "mamba_465C_lz_bin.h" -#include "mamba_loader_465C_bin.h" - -#include "payload_sky_465D_bin.h" -#include "umount_465D_bin.h" -#include "mamba_465D_lz_bin.h" -#include "mamba_loader_465D_bin.h" - -#include "payload_sky_470C_bin.h" -#include "umount_470C_bin.h" -#include "mamba_470C_lz_bin.h" -#include "mamba_loader_470C_bin.h" - -#include "payload_sky_470D_bin.h" -#include "umount_470D_bin.h" -#include "mamba_470D_lz_bin.h" -#include "mamba_loader_470D_bin.h" - -#include "payload_sky_475C_bin.h" -#include "umount_475C_bin.h" -#include "mamba_475C_lz_bin.h" -#include "mamba_loader_475C_bin.h" - -#include "payload_sky_475D_bin.h" -#include "umount_475D_bin.h" -#include "mamba_475D_lz_bin.h" -#include "mamba_loader_475D_bin.h" - -#include "payload_sky_476C_bin.h" -#include "umount_476C_bin.h" -#include "mamba_476C_lz_bin.h" -#include "mamba_loader_476C_bin.h" - -#include "payload_sky_476D_bin.h" -#include "umount_476D_bin.h" -#include "mamba_476D_lz_bin.h" -#include "mamba_loader_476D_bin.h" - -#include "payload_sky_478C_bin.h" -#include "umount_478C_bin.h" -#include "mamba_478C_lz_bin.h" -#include "mamba_loader_478C_bin.h" - -#include "payload_sky_478D_bin.h" -#include "umount_478D_bin.h" -#include "mamba_478D_lz_bin.h" -#include "mamba_loader_478D_bin.h" - -#include "payload_sky_480C_bin.h" -#include "umount_480C_bin.h" -#include "mamba_480C_lz_bin.h" -#include "mamba_loader_480C_bin.h" - -#include "payload_sky_480D_bin.h" -#include "umount_480D_bin.h" -#include "mamba_480D_lz_bin.h" -#include "mamba_loader_480D_bin.h" - -#include "payload_sky_481C_bin.h" -#include "umount_481C_bin.h" -#include "mamba_481C_lz_bin.h" -#include "mamba_loader_481C_bin.h" - -#include "payload_sky_481D_bin.h" -#include "umount_481D_bin.h" -#include "mamba_481D_lz_bin.h" -#include "mamba_loader_481D_bin.h" - -#include "payload_sky_482C_bin.h" -#include "umount_482C_bin.h" -#include "mamba_482C_lz_bin.h" -#include "mamba_loader_482C_bin.h" - -#include "payload_sky_482D_bin.h" -#include "umount_482D_bin.h" -#include "mamba_482D_lz_bin.h" -#include "mamba_loader_482D_bin.h" - -#include "payload_sky_483C_bin.h" -#include "umount_483C_bin.h" -#include "mamba_483C_lz_bin.h" -#include "mamba_loader_483C_bin.h" - -#include "payload_sky_484C_bin.h" -#include "umount_484C_bin.h" -#include "mamba_484C_lz_bin.h" -#include "mamba_loader_484C_bin.h" - -#include "payload_sky_484D_bin.h" -#include "umount_484D_bin.h" -#include "mamba_484D_lz_bin.h" -#include "mamba_loader_484D_bin.h" - -#include "ps2gxemu_stage1_421_bin.h" -#include "ps2gxemu_stage1_430_bin.h" -#include "ps2gxemu_stage1_440_bin.h" -#include "ps2gxemu_stage1_453_bin.h" - -#include "ps2gxemu_stage2_421_bin.h" -#include "ps2gxemu_stage2_430_bin.h" -#include "ps2gxemu_stage2_440_bin.h" -#include "ps2gxemu_stage2_453_bin.h" - -#include "ps2hwemu_stage1_421_bin.h" -#include "ps2hwemu_stage1_440_bin.h" -#include "ps2hwemu_stage1_453_bin.h" - -#include "ps2hwemu_stage2_421_bin.h" -#include "ps2hwemu_stage2_430_bin.h" -#include "ps2hwemu_stage2_440_bin.h" -#include "ps2hwemu_stage2_453_bin.h" - -#include "ps2netemu_stage2_421_bin.h" -#include "ps2netemu_stage2_430_bin.h" -#include "ps2netemu_stage2_440_bin.h" -#include "ps2netemu_stage2_446_bin.h" -#include "ps2netemu_stage2_450_bin.h" -#include "ps2netemu_stage2_453_bin.h" -#include "ps2netemu_stage2_455_bin.h" -#include "ps2netemu_stage2_460_bin.h" -#include "ps2netemu_stage2_478_bin.h" - #define NO_UID -1 #define SYSTEM_UID 0 #define NO_GID -1 @@ -318,7 +110,7 @@ #define REACTPSN 0 #define SNAKE 0 // cobra else mamba #define IRIS 1 -#define MM 2 +#define MM 2 #define _EXIST 1 #define _NOT_EXIST 0 @@ -381,6 +173,7 @@ #define WHITE 0xFFFFFFFF #define ORANGE 0xFFA000FF #define BLUE 0x0070FFFF +#define DARKBLUE 0x0040A0FF #define GREEN 0x00A000FF #define RED 0xFF0000FF #define PURPLE 0x7D00FFFF @@ -416,10 +209,6 @@ #define FS_S_IFMT 0170000 #define FS_S_IFDIR 0040000 -#define USB_MASS_STORAGE_1(n) (0x10300000000000AULL+(n)) // For 0-5 -#define USB_MASS_STORAGE_2(n) (0x10300000000001FULL+((n)-6)) // For 6-127 -#define USB_MASS_STORAGE(n) (((n) < 6) ? USB_MASS_STORAGE_1(n) : USB_MASS_STORAGE_2(n)) - #define MAX_SECTIONS ((0x10000-sizeof(rawseciso_args))/8) #define FREE(x) if(x!=NULL) {free(x);x=NULL;} @@ -441,9 +230,40 @@ #define INPUT_X 10 #define INPUT_Y 491-INPUT_SIZE/2 +#define GAMEPIC_COVER_UNK 16 +#define GAMEPIC_ICON0_DEFAULT 8 +#define GAMEPIC_COVER3D 4 +#define GAMEPIC_COVER2D 2 +#define GAMEPIC_ICON0 1 +#define GAMEPIC_NONE 0 + +// GAMEOS ID + +#define FLASH_NAND 0x100000000000001ULL +#define FLAS_NAND_EXT 0x100000500000001ULL +#define FLASH_NOR 0x100000000000004ULL +#define FLASH_NOR_EXT 0x100000200000004ULL + +#define ATA_HDD 0x101000000000007ULL +#define BDVD_DRIVE 0x101000000000006ULL +#define PATA0_HDD_DRIVE 0x101000000000008ULL +#define PATA0_BDVD_DRIVE BDVD_DRIVE +#define PATA1_HDD_DRIVE ATA_HDD +#define PATA1_BDVD_DRIVE 0x101000000000009ULL +#define CARDCTRL 0x101000000000010ULL // ? +#define BUILTIN_FLASH 0x100000000000001ULL +#define MEMORY_STICK 0x103000000000010ULL +#define SD_CARD 0x103000100000010ULL +#define COMPACT_FLASH 0x103000200000010ULL -u8 scene=SCENE_MAIN; +#define USB_MASS_STORAGE_1(n) (0x10300000000000AULL+(n)) // For 0-5 +#define USB_MASS_STORAGE_2(n) (0x10300000000001FULL+((n)-6)) // For 6-127 +#define USB_MASS_STORAGE(n) (((n) < 6) ? USB_MASS_STORAGE_1(n) : USB_MASS_STORAGE_2(n)) + +#define HDD_PARTITION(n) (ATA_HDD | ((uint64_t)n<<32)) +#define FLASH_PARTITION(n) (BUILTIN_FLASH | ((uint64_t)n<<32)) +u8 scene=SCENE_MAIN; typedef struct { uint64_t device; @@ -457,30 +277,30 @@ SYS_PROCESS_PARAM(1200, 0x100000); //************ FIRMWARE *************** int firmware = 0; -static u64 SYSCALL_TABLE; -static u64 HV_START_OFFSET; -static u64 OFFSET_FIX; -static u64 OFFSET_2_FIX; -static u64 OFFSET_FIX_3C; -static u64 OFFSET_FIX_2B17; -static u64 OFFSET_FIX_LIC; -static u64 OPEN_HOOK; -static u64 BASE_ADDR; -static u64 UMOUNT_SYSCALL_OFFSET; -static u64 LV2MOUNTADDR; -static u64 LV2MOUNTADDR_ESIZE; -static u64 LV2MOUNTADDR_CSIZE; -static u64 NEW_POKE_SYSCALL_ADDR; -static u64 PAYLOAD_SKY; -static size_t PAYLOAD_SKY_SIZE; -static u64 UMOUNT; -static size_t UMOUNT_SIZE; -static u64 MAMBA; -static size_t MAMBA_SIZE; -static u64 *MAMBA_LOADER; -static size_t MAMBA_LOADER_SIZE; -static u64 OFFSET_1_IDPS; -static u64 OFFSET_2_IDPS; +u64 SYSCALL_TABLE; +u64 HV_START_OFFSET; +u64 OFFSET_FIX; +u64 OFFSET_2_FIX; +u64 OFFSET_FIX_3C; +u64 OFFSET_FIX_2B17; +u64 OFFSET_FIX_LIC; +u64 OPEN_HOOK; +u64 BASE_ADDR; +u64 UMOUNT_SYSCALL_OFFSET; +u64 LV2MOUNTADDR; +u64 LV2MOUNTADDR_ESIZE; +u64 LV2MOUNTADDR_CSIZE; +u64 NEW_POKE_SYSCALL_ADDR; +u64 PAYLOAD_SKY; +size_t PAYLOAD_SKY_SIZE; +u64 UMOUNT; +size_t UMOUNT_SIZE; +u64 MAMBA; +size_t MAMBA_SIZE; +u64 *MAMBA_LOADER; +size_t MAMBA_LOADER_SIZE; +u64 OFFSET_1_IDPS; +u64 OFFSET_2_IDPS; //*********** IRIS **************** @@ -507,7 +327,7 @@ static u8 max_mapped=0; //****** Thread Loading ************* -static u8 loading = 1; +static u8 loading = NO; static char loading_log[20][255]; static char head_title[128]; int64_t prog_bar1_value=-1; @@ -522,34 +342,32 @@ static u32 LoadIconRot=0; static u32 time_not = 0; static char not_msg[255]; -//****** Thread Check ************** +//****** Devices ************** -static char list_device[20][20]={{0}}; +static char list_device[32][32]={{0}}; static int8_t device_number=-1; -static int8_t device_plug=0; -static u8 checking=YES; -//****** Thread LoadPIC ************** +//****** Thread LoadGAMEPIC ************** + +//static int64_t Load_GAMEPIC_progbar = -1; +static u8 Load_GAMEPIC_flag=NO; +static u8 Load_GAMEPIC_busy=NO; +static u8 Load_GAMEPIC_init=NO; -static int64_t Load_GamePIC_progbar = -1; -static u8 Load_GamePIC=NO; -static u8 load_PIC1=NO; +//****** Thread LoadTMP ****************** +static u8 Load_CURPIC_flag=NO; //********** Backup LIST ****************** -#define MAX_GAME 512 -/* -static char list_game_path[MAX_GAME][128] = {{0}}; -static char list_game_title[MAX_GAME][128] = {{0}}; -static u8 list_game_platform[MAX_GAME] = {0}; -static int game_number = -1; -*/ +#define MAX_GAME 512*64 static s64 game_number=-1; -static char **list_game_path; -static char **list_game_title; -static u8 *list_game_platform; +static char **list_game_path=NULL; +static char **list_game_title=NULL; +static char **list_game_ID=NULL; +static u8 *list_game_platform=NULL; +static u8 *list_game_havepic=NULL; //********** Backup FAV ****************** @@ -561,11 +379,12 @@ static int8_t FAV_game_number = -1; //*************** Current Informations ************* -static char GamPath[128]; +static char GamPath[512]={0}; static u8 Game_stuff = YES; static u8 PEEKnPOKE; static u8 cobra = NO; static u8 iso = NO; +static u8 HEN = NO; static u8 mamba = NO; static u8 usb = NO; static int position=0; @@ -588,7 +407,7 @@ static int8_t Themes_number[4] = {-1,-1,-1,-1}; // ou {[0 ... 3] = -1} //********* FONT ******************* -static char Font[128]="/dev_flash/data/font/SCE-PS3-SR-R-LATIN2.TTF"; +static char Font[0x40]="/dev_flash/data/font/SCE-PS3-SR-R-LATIN2.TTF"; static char **FontName=NULL; static char **FontPath=NULL; static s8 FontNumber=0; @@ -606,7 +425,7 @@ static float ITEM_angleX[MAX_GAME] = {0.0}; static float ITEM_angleY[MAX_GAME] = {0.0}; static float ITEM_angleZ[MAX_GAME] = {0.0}; -static u8 MOVE_init=NO; +static u8 MOVE_animated=NO; MATRIX matrix; @@ -629,7 +448,7 @@ static u8 use_ex_plug = NO; static char *UI[4] = {"0", "0", "Win", "0"}; #else static char *UI[4] = {"List", "Grid", "XMB", "Flow"}; -#endif +#endif //FILEMANAGER static u8 UI_position = XMB; static u8 XMB_priority = NO; @@ -647,16 +466,37 @@ static u32 COLOR_4 = RED; static u8 Display_PIC1 = NO; static u8 Show_Waves = YES; static u32 WAVES_COLOR = WHITE-0xFF+0x20; -static float filter_x = 700; -static float filter_y = 300; +static float filter_x = 700.0; +static float filter_y = 300.0; +static u8 root_display = 1; + +#define STYLE_CUSTOM 0 +#define STYLE1 1 +#define STYLE2 2 +#define STYLE3 3 +#define STYLE4 4 +#define STYLE5 5 +#define STYLE6 6 + +#define MAX_STYLE 6 + +#define SMALL 0 +#define BIG 1 + +u8 fm_LineSize; +u8 fm_RowNumber; +u8 fm_FontRowSize[3]; +char fm_Format[6][0x80]={{0}}; +float fm_CapacityBarWidth; +u8 fm_CustomIcons; //*************** LIST SETTINGS ******************* #define LIST_SizeFont 20 -static u8 LIST_Show_ICON0 = NO; +static u8 Show_ICON0 = NO; static int first_line=0; static int nb_line=0; -static int last_line; +static int last_line=0; //*************** GRID SETTINGS ******************* @@ -681,8 +521,6 @@ static u8 GRID_KEEP_PROP = YES; #define XMB_W 72.0f #define XMB_H 40.0f -#define XMB_COLUMN_NUMBER 6 - #define XMB_COLUMN_SETTINGS 0 #define XMB_COLUMN_FAVORITES 1 #define XMB_COLUMN_PS3 2 @@ -690,6 +528,9 @@ static u8 GRID_KEEP_PROP = YES; #define XMB_COLUMN_PS1 4 #define XMB_COLUMN_PSP 5 +#define XMB_COLUMN_NUMBER 6 + + static u8 XMB_H_position = 2; static s16 XMB_nb_line = -1; static u16 XMB_value_line[MAX_GAME] = {0}; @@ -734,14 +575,8 @@ typedef struct u32 height; } imgData; // pngData = jpgData = imgData -imgData ICON0[MAX_GAME]; -static u32 ICON0_offset[MAX_GAME]; - -imgData COVER[MAX_GAME]; -static u32 COVER_offset[MAX_GAME]; - -imgData COVER3D[MAX_GAME]; -static u32 COVER3D_offset[MAX_GAME]; +imgData COVER; +static u32 COVER_offset; imgData TMP_PIC; static u32 TMP_PIC_offset; @@ -772,62 +607,218 @@ char TMP_PIC_path[255]; #define DEFAULT 20 #define DEFAULT_ISO 21 #define DEFAULT_JB 22 -#define PS1_DISC 23 -#define PS2_DISC 24 -#define PS3_DISC 25 -#define PSP_DISC 26 -#define TAG 27 -#define PS1_CASE 28 -#define PS2_CASE 29 -#define PS3_CASE 30 -#define PSP_CASE 31 -#define FOLDER 32 -#define FILES 33 -#define BR_LOGO 34 -#define PS_LOGO 35 -#define NOTIF 36 -#define BOXHEAD 37 -#define BOXBODY 38 -#define SIDEBAR 39 -#define BGS 40 - -#define PICTURE_NUMBER 41 - -char *PICTURE_NAME[PICTURE_NUMBER] = { "ALL" , - "UP" , "LEFT" , "DOWN" , "RIGHT" , - "SELECT" , "START" , - "SQUARE" , "CROSS" , "CIRCLE" , "TRIANGLE", +#define TAG 23 +#define PS1_CASE 24 +#define PS2_CASE 25 +#define PS3_CASE 26 +#define PSP_CASE 27 +#define FOLDER 28 +#define FILES 29 +#define GAME 30 +#define DISC 31 +#define DISC_PS1 32 +#define DISC_PS2 33 +#define DISC_PS3 34 +#define DISC_PSP 35 +#define DISC_VIDEO 36 +#define DISC_DATA 37 +#define CF 38 +#define FLASH 39 +#define HDD 40 +#define MS 41 +#define SD 42 +#define USB 43 +#define VIRTUAL 44 +#define LOCK 45 +#define BR_LOGO 46 +#define PS_LOGO 47 +#define TOGGLE_ON 48 +#define TOGGLE_OFF 49 +#define CHECKBOX_FALSE 50 +#define CHECKBOX_TRUE 51 +#define CLOSE 52 +#define MAXIMIZE 53 +#define MINIMIZE 54 +#define FRAME 55 +#define HEADER 56 +#define COLUMN_HEADER 57 +#define CONTENT 58 +#define CURSOR 59 +#define CURSOR_D1 60 +#define CURSOR_D2 61 +#define CURSOR_H 62 +#define CURSOR_V 63 +#define APP_HOME 64 +#define HOST_ROOT 65 + +// with color filter +#define NOTIF 66 +#define BOXHEAD 67 +#define BOXBODY 68 +#define SIDEBAR 69 +#define BGS 70 +#define BGF 71 + +#define PICTURE_NUMBER 72 + +#define _BG_ 100 + +char *PICTURE_NAME[PICTURE_NUMBER] = { "ALL", + "UP", "LEFT", "DOWN", "RIGHT", + "SELECT", "START", + "SQUARE", "CROSS", "CIRCLE", "TRIANGLE", "NOT", - "L1", "L2", "L3", "L", + "L1", "L2", "L3", "L", "R1", "R2", "R3", "R", - "DEFAULT", "DEFAULT_ISO", "DEFAULT_JB", - "PS1_DISC", "PS2_DISC", "PS3_DISC", "PSP_DISC", - "TAG", + "DEFAULT", "DEFAULT_ISO", "DEFAULT_JB", "TAG", "PS1_CASE", "PS2_CASE", "PS3_CASE", "PSP_CASE", - "FOLDER", "FILES", + "FOLDER", "FILES", "GAME", + "DISC", "DISC_PS1", "DISC_PS2", "DISC_PS3", "DISC_PSP", "DISC_VIDEO", "DISC_DATA", + "CF", "FLASH", "HDD", "MS", "SD", "USB", "VIRTUAL", "LOCK", "BR_LOGO", "PS_LOGO", - "NOTIF", "BOXHEAD", "BOXBODY", "SIDEBAR", "BGS"}; + "TOGGLE_ON", "TOGGLE_OFF", + "CHECKBOX_FALSE", "CHECKBOX_TRUE", + "CLOSE", "MAXIMIZE", "MINIMIZE", "FRAME", + "HEADER", "COLUMN_HEADER", "CONTENT", + "CURSOR", "CURSOR_D1", "CURSOR_D2", "CURSOR_H", "CURSOR_V", + "APP_HOME", "HOST_ROOT", + "NOTIF", "BOXHEAD", "BOXBODY", "SIDEBAR", "BGS", "BGF"}; + imgData PICTURE[PICTURE_NUMBER]; static u32 PICTURE_offset[PICTURE_NUMBER]; -#define TEXTURE_FONT_SIZE 2 * 1024*1024 -#define TEXTURE_THEME_SIZE 16 * 1024*1024 -#define TEXTURE_GAMEPIC_SIZE 32 * 1024*1024 +#define _Go(x) ((size_t)(x) >> 30) +#define Go(x) ((size_t)(x) << 30) +#define _Mo(x) ((size_t)(x) >> 20) +#define Mo(x) ((size_t)(x) << 20) +#define _Ko(x) ((size_t)(x) >> 10) +#define Ko(x) ((size_t)(x) << 10) + +#define simple(t, x) if((t) > Go(1)) x = (float)_Go((t)); \ + if((t) > Mo(1)) x = (float)_Mo((t)); \ + if((t) > Ko(1)) x = (float)_Ko((t)); \ + x = (float) (t); + +// **************************************** +// Color Filters +// **************************************** +#define DISABLED 0 +#define ENABLED 1 + +u8 FILTER_NOTIF=DISABLED; +u8 FILTER_BOXHEAD=DISABLED; +u8 FILTER_BOXBODY=DISABLED; +u8 FILTER_SIDEBAR=DISABLED; +u8 FILTER_BGS=DISABLED; +u8 FILTER_BG=DISABLED; + +#define COLOR_NOTIF_DEFAULT 0x555555FF +#define COLOR_BOXHEAD_DEFAULT 0xC0C0C0FF +#define COLOR_BOXBODY_DEFAULT 0x505050FF +#define COLOR_SIDEBAR_DEFAULT 0xFFFFFF60 +#define COLOR_BGS_DEFAULT 0xAA40AAFF +#define COLOR_BG_DEFAULT 0x306090FF + +u32 COLOR_NOTIF=COLOR_NOTIF_DEFAULT; +u32 COLOR_BOXHEAD=COLOR_BOXHEAD_DEFAULT; +u32 COLOR_BOXBODY=COLOR_BOXBODY_DEFAULT; +u32 COLOR_SIDEBAR=COLOR_SIDEBAR_DEFAULT; +u32 COLOR_BGS=COLOR_BGS_DEFAULT; +u32 COLOR_BG=COLOR_BG_DEFAULT; + + +// **************************************** +// RAM 232 Mo (256) * +// **************************************** +// +// **************************************** +// VRAM +// **************************************** +// _____________________________________ +// | TexturePointer -> TextureOffset | +// | 0 Mo -> ~13 Mo | 0xD523100 +// | 1 Mo -> ~17 Mo | +// | X Mo -> ~13 + (X*4) Mo | +// | 55 Mo -> ~233 Mo | +// **************************************** +// +// Texture are stored in BMP, size = w*h*p +// ICON0 320*176*4 = 0x37000 +// COVER PS1 250*250*4 = 0x3D090 +// COVER PS2 250*350*4 = 0x55730 +// COVER PS3 260*300*4 = 0x4C2C0 +// COVER PSP 200*340*4 = 0x42680 +// +// COVER3D PS1 450*450*4 + 450*600*4 = 0x1CD6D0 +// COVER3D PS2 850*570*4 = 0x1D9250 +// COVER3D PS3 950*525*4 = 0x1E70F8 +// COVER3D PSP 800*640*4 = 0x1F4000 +// +// **************************************** +// | TexturePointer | TextureOffset | +// 2 Mo = 0->2 | 8 Mo = 13->21 FONT +// 16 Mo = 2->18 | 64 Mo = 21->85 THEME +// 30 Mo = 18->48 | 120 Mo = 85->205 GAMEPIC +// 1 Mo = 48->49 | 4 Mo = 205->209 COVER +// 6 Mo = 49->55 | 24 Mo = 209->233 TEMP +// + +#define TEXTURE_SIZE_MAX Mo(55) + +#define TEXTURE_FONT_SIZE_MAX Mo(2) +#define TEXTURE_THEME_SIZE_MAX Mo(16) +#define TEXTURE_GAMEPIC_SIZE_2D Ko(512) +#define TEXTURE_GAMEPIC_SIZE_3D Mo(2) +#define TEXTURE_GAMEPIC_TOT_SIZE_MAX Mo(30) +#define TEXTURE_COVER_SIZE_MAX Mo(1) + +char GAMEPIC_LOG[128]; +int GAMEPIC_POSITION = 0; +int GAMEPIC_SLOT_FIRST=0; +int GAMEPIC_SLOT_LAST=0; + +#define GAMEPIC_NUMBER TEXTURE_GAMEPIC_TOT_SIZE_MAX / TEXTURE_GAMEPIC_SIZE_2D +imgData GAMEPIC[GAMEPIC_NUMBER]; +static u32 GAMEPIC_offset[GAMEPIC_NUMBER]; +int GAMEPIC_SLOT_POS[GAMEPIC_NUMBER] = { [0 ... GAMEPIC_NUMBER-1] = -1 }; +u32 TEXTURE_FONT_SIZE = 0; +u32 TEXTURE_THEME_SIZE = 0; +#define TEXTURE_GAMEPIC_SIZE(u) (((GAMEPIC[u].pitch * GAMEPIC[u].height + 15) & ~15) / 4) +#define TEXTURE_COVER_SIZE (((COVER.pitch * COVER.height + 15) & ~15) / 4) +#define TEXTURE_TMP_SIZE (((TMP_PIC.pitch * TMP_PIC.height + 15) & ~15) / 4) + +imgData PS1BACK[GAMEPIC_NUMBER]; +u32 PS1BACK_offset[GAMEPIC_NUMBER]; + +// FONT #define TEXTURE_POINTER_FONT 0 -#define TEXTURE_POINTER_THEME TEXTURE_FONT_SIZE -#define TEXTURE_POINTER_GAMEPIC TEXTURE_FONT_SIZE+TEXTURE_THEME_SIZE + +// THEME +#define TEXTURE_POINTER_THEME (TEXTURE_POINTER_FONT + TEXTURE_FONT_SIZE_MAX) + +u64 TEXTURE_GAMEPIC_SIZE_MAX = 0; +#define GAMEPIC_MAX (TEXTURE_GAMEPIC_TOT_SIZE_MAX / TEXTURE_GAMEPIC_SIZE_MAX) +#define TEXTURE_POINTER_GAMEPIC(x) ((TEXTURE_POINTER_THEME+TEXTURE_THEME_SIZE_MAX) + x * TEXTURE_GAMEPIC_SIZE_MAX) +#define TEXTURE_POINTER_COVER (TEXTURE_POINTER_GAMEPIC(0) + TEXTURE_GAMEPIC_TOT_SIZE_MAX) + +#ifdef FILAMANAGER +#define TEXTURE_POINTER_TMP (TEXTURE_POINTER_GAMEPIC(0)) +#else +#define TEXTURE_POINTER_TMP (TEXTURE_POINTER_COVER + TEXTURE_COVER_SIZE_MAX) +#endif +#define TEXTURE_TMP_SIZE_MAX (TEXTURE_SIZE_MAX - (TEXTURE_FONT_SIZE_MAX + TEXTURE_THEME_SIZE_MAX + TEXTURE_GAMEPIC_TOT_SIZE_MAX + TEXTURE_COVER_SIZE_MAX)) + +// Update Texture after tiny3d_Flip ! static u32 *texture_pointer; static u32 *texture_mem; -static u32 *texture_temp; #define MAX_FRAME 64 static u32 BG_offset[MAX_FRAME]; imgData BG[MAX_FRAME]; - // ***************** PICTURE : XMB *************************** imgData XMB_Col[6]; @@ -841,22 +832,49 @@ static u32 XMB_MMTHM_XMB2_offset; // ****************** FILE MANAGER *************** +#define FM_FORMAT_INIT 0 +#define FM_FORMAT_EMPTY 1 +#define FM_FORMAT_LABEL 2 +#define FM_FORMAT_DEVICE 3 +#define FM_FORMAT_FILESYSTEM 4 +#define FM_FORMAT_MEMORY 5 +#define FM_FORMAT_MOUNTPOINT 6 +#define FM_FORMAT_DEVICE_MOUNTPOINT 7 +#define FM_FORMAT_LABEL_MOUNTPOINT 8 +#define FM_FORMAT_LABEL_DEVICE_MOUNTPOINT 9 +#define FM_FORMAT_CAPACITY 10 +#define FM_FORMAT_CAPACITY_MEMINSIDE 11 +#define FM_FORMAT_CAPACITY_MEMOUTSIDE 12 + +#define ROW(x) x +#define LEFTROW(x) x*2 +#define RIGHTROW(x) x*2+1 + #define ASC 0 #define DSC 1 -#define TOP_H 40 -#define COL_H 20 -#define COL_W_MIN 90 -#define BORDER 5 -#define SCROLL_W 10 -#define SCROLL_H_MIN 10 -#define WINDOW_MIN COL_W_MIN*2 + BORDER*2 -#define CONTENT_FSIZE 15 -#define ICON CONTENT_FSIZE -#define WINDOW_MAX 5 -#define WINDOW_MAX_ITEMS 2048 -#define WINDOW_MAX_PATH_LENGTH 512 -#define WINDOW_MAX_NAME_LENGTH 128 +#define LINE_H1 16.0 +float LINE_H=LINE_H1; +#define COL_H1 20.0 +float COL_H=COL_H1; +#define COL_W_MIN 90 +#define BORDER 5 +#define TOP_H_FONT LINE_H1 +#define TOP_H (BORDER+TOP_H_FONT+TOP_H_FONT/4) +#define SCROLL_W1 10 +float SCROLL_W=SCROLL_W1; +#define SCROLL_H_MIN 10 +#define CLOSEBOX_W 40.0 +#define CLOSEBOX_H TOP_H_FONT +#define DOCKBOX_W 20.0 +#define DOCKBOX_H TOP_H_FONT +#define WINDOW_MIN (COL_W_MIN*2+BORDER*2) +#define WINDOW_MAX 4 +#define WINDOW_MAX_ITEMS 4096 +#define WINDOW_MAX_PATH_LENGTH 512 +#define WINDOW_MAX_NAME_LENGTH 128 + +#define OVERLAY_COLOR 0xC0E0F0FF static float *window_x=NULL; static float *window_y=NULL; @@ -911,6 +929,20 @@ static u8 window_resize_D1 = NO; static u8 window_resize_D2 = NO; static u8 window_move = NO; +typedef struct +{ + char Label[32]; + char MountPoint[32]; + char FileSystem[32]; + char Name[32]; + u8 ReadOnly; + u64 TotalSpace; + u64 FreeSpace; +} DeviceInfo_t; + +static DeviceInfo_t *DevicesInfo=NULL; +static s8 DevicesInfo_N=-1; + // ****************** FILE MANAGER : Properties *************** static u8 prop_activ; @@ -950,16 +982,18 @@ u8 SFO_NB; // ****************** FILE MANAGER : TXT Viewer *************** -#define TXT_W 708 -#define TXT_H 372 -#define TXT_X 70 -#define TXT_Y 70 +#define TXT_FONT 15 +#define TXT_LINE_MAX 24 +#define TXT_H 375 +#define TXT_W 711 +#define TXT_X 68.5 +#define TXT_Y 68.5 -u64 txt_linpos; -u8 txt_scroll; +u64 txt_line; +int txt_scroll; static u8 txt_viewer_activ = NO; char *txt_viewer_content=NULL; -int txt_viewer_content_size; +char *txt_viewer_path=NULL; //************************ COPY ************************ @@ -982,12 +1016,26 @@ static u8 gathering_cancel=NO; //************************** PAD ************************ -static int slow_it; -static u64 hold_it; +#define n_s(x) (x*1000000000ULL) +#define n_ms(x) (x*1000000ULL) +#define n_us(x) (x*1000ULL) + +#define MAX_HOLD (u64)40 +#define MAX_HOLD_S (u64)n_s(4) + + + +u64 hold_value[18]={0}; +u64 slow_value[18]={0}; static int R2speed=6; -static u16 hold_CIRCLE=0; static int x_L = 0; static int y_L = 0; +static u64 hold_CIRCLE=0; + +// ************** filter ************************************ + +u8 filter=NO; +u8 filter_position=0; // ************** FILE MANAGER : Picture Viewer *************** @@ -1003,6 +1051,7 @@ static u8 picture_viewer_activ = NO; #define ITEM_COLORBOX 2 #define ITEM_COMMAND 3 #define ITEM_TOGGLE 4 +#define ITEM_LOCKED 5 static u8 MENU=NO; @@ -1016,7 +1065,10 @@ static u8 *ITEMS_VALUE_POSITION=NULL; static u8 *ITEMS_VALUE_SHOW=NULL; static u8 *ITEMS_TYPE=NULL; -static u8 IN_ITEMS_VALUE=NO; +#define LVL_TITLE 2 +#define LVL_ITEMS 1 +#define LVL_VALUE 0 +static s8 MENU_LVL=LVL_ITEMS; static float MENU_ITEMS_X; static float MENU_ITEMS_VALUE_X; @@ -1030,10 +1082,14 @@ static s8 MENU_TABLE_END; static char **TITLES=NULL; +u8 USE_TITLE_MENU=NO; +s32 TITLE_MENU_FIRST_ITEM=-1; +s32 TITLE_MENU_LAST_ITEM=-1; + static u8 MENU_SIDE; -static float x_COLOR; -static float y_COLOR; +static float current_x; +static float current_y; // ***************** PS2 GAME MENU ************************************* @@ -1041,8 +1097,8 @@ static float y_COLOR; static u8 has_LIMG=NO; static char *PS2ELF_mem = NULL; static int PS2ELF_mem_size = 0; -static char PS2CRC_STR[8]; -static char PS2ORICRC_STR[8]; +static u32 PS2CRC=0; +static u32 PS2ORICRC=0; static char PS2_ID[12]; static char pnach[128]; static char WS[128]; @@ -1133,7 +1189,7 @@ uint8_t lang_code = LANG_UNDEFINED; uint8_t lang_code_loaded = LANG_NONE; static char *STR_LANGUAGE[MAX_LANG]; // "English" -static char *STR_LANGCODE[MAX_LANG]; +static u8 LANGCODE[MAX_LANG]; static char *lang_path[MAX_LANG]; static char *STR_LANG=NULL; @@ -1188,8 +1244,8 @@ static char *STR_FILEMANAGER=NULL; #define STR_FILEMANAGER_DEFAULT "File Manager" static char *STR_HOLD=NULL; #define STR_HOLD_DEFAULT "Hold" -static char *STR_BACKTOXMB=NULL; -#define STR_BACKTOXMB_DEFAULT "Back to XMB" +static char *STR_EXIT=NULL; +#define STR_EXIT_DEFAULT "Exit" static char *STR_GAME_PROP=NULL; #define STR_GAME_PROP_DEFAULT "Game Properties" static char *STR_GAME_TITLE=NULL; @@ -1762,7 +1818,90 @@ static char *STR_JOIN=NULL; #define STR_JOIN_DEFAULT "Join" static char *STR_JOIN_DESC=NULL; #define STR_JOIN_DESC_DEFAULT "Merge .666XX files." - +static char *STR_COLOR_FILTER=NULL; +#define STR_COLOR_FILTER_DEFAULT "Color Filters" +static char *STR_COLOR_NOTIF=NULL; +#define STR_COLOR_NOTIF_DEFAULT "Notification" +static char *STR_COLOR_BOXHEAD=NULL; +#define STR_COLOR_BOXHEAD_DEFAULT "Filter box header" +static char *STR_COLOR_BOXBODY=NULL; +#define STR_COLOR_BOXBODY_DEFAULT "Filter box body" +static char *STR_COLOR_SIDEBAR=NULL; +#define STR_COLOR_SIDEBAR_DEFAULT "Sidebar" +static char *STR_COLOR_BGS=NULL; +#define STR_COLOR_BGS_DEFAULT "Setting background" +static char *STR_COLOR_BG=NULL; +#define STR_COLOR_BG_DEFAULT "Background" +static char *STR_ROOT_DISPLAY=NULL; +#define STR_ROOT_DISPLAY_DEFAULT "Root display" +static char *STR_ROOT_DISPLAY_DESC=NULL; +#define STR_ROOT_DISPLAY_DESC_DEFAULT "Change the display of the root in FileManager." +static char *STR_STYLE=NULL; +#define STR_STYLE_DEFAULT "Style" +static char *STR_STYLE_CUSTOM=NULL; +#define STR_STYLE_CUSTOM_DEFAULT "Custom style" +static char *STR_STYLE1=NULL; +#define STR_STYLE1_DEFAULT "Style 1" +static char *STR_STYLE2=NULL; +#define STR_STYLE2_DEFAULT "Style 2" +static char *STR_STYLE3=NULL; +#define STR_STYLE3_DEFAULT "Style 3" +static char *STR_STYLE4=NULL; +#define STR_STYLE4_DEFAULT "Style 4" +static char *STR_STYLE5=NULL; +#define STR_STYLE5_DEFAULT "Style 5" +static char *STR_STYLE6=NULL; +#define STR_STYLE6_DEFAULT "Style 6" +static char *STR_FREEOF=NULL; +#define STR_FREEOF_DEFAULT "free of" +static char *STR_ROOTLABEL=NULL; +#define STR_ROOTLABEL_DEFAULT "Root" +static char *STR_FM_ICONSIZE=NULL; +#define STR_FM_ICONSIZE_DEFAULT "Icon size" +static char *STR_FM_BIG=NULL; +#define STR_FM_BIG_DEFAULT "Big" +static char *STR_FM_SMALL=NULL; +#define STR_FM_SMALL_DEFAULT "Small" +static char *STR_FM_ROWNUMBER=NULL; +#define STR_FM_ROWNUMBER_DEFAULT "Text row number" +static char *STR_FM_ROWSIZE=NULL; +#define STR_FM_ROWSIZE_DEFAULT "Row size" +static char *STR_FM_LEFT_CONTENT=NULL; +#define STR_FM_LEFT_CONTENT_DEFAULT "Row content [LEFT]" +static char *STR_FM_RIGHT_CONTENT=NULL; +#define STR_FM_RIGHT_CONTENT_DEFAULT "Row content [RIGHT]" +static char *STR_FM_EMPTY=NULL; +#define STR_FM_EMPTY_DEFAULT "Empty" +static char *STR_FM_MOUNTPOINT=NULL; +#define STR_FM_MOUNTPOINT_DEFAULT "Mount point" +static char *STR_FM_DEVICE=NULL; +#define STR_FM_DEVICE_DEFAULT "Device" +static char *STR_FM_LABEL=NULL; +#define STR_FM_LABEL_DEFAULT "Label" +static char *STR_FM_CAPACITY=NULL; +#define STR_FM_CAPACITY_DEFAULT "Capacity bar" +static char *STR_FM_MEMINSIDE=NULL; +#define STR_FM_MEMINSIDE_DEFAULT "Inside memory" +static char *STR_FM_MEMOUTSIDE=NULL; +#define STR_FM_MEMOUTSIDE_DEFAULT "Outside memory" +static char *STR_FM_FILESYSTEM=NULL; +#define STR_FM_FILESYSTEM_DEFAULT "Files system" +static char *STR_FM_CB_WIDTH=NULL; +#define STR_FM_CB_WIDTH_DEFAULT "Capacity bar width" +static char *STR_FM_MEMORY=NULL; +#define STR_FM_MEMORY_DEFAULT "Memory" +static char *STR_FM_ICON=NULL; +#define STR_FM_ICON_DEFAULT "Icons" +static char *STR_FM_FILEFOLDER=NULL; +#define STR_FM_FILEFOLDER_DEFAULT "File and Folder" +static char *STR_FM_CUSTOM=NULL; +#define STR_FM_CUSTOM_DEFAULT "Custom icons" +static char *STR_FM_CB_FILL=NULL; +#define STR_FM_CB_FILL_DEFAULT "Fill" +static char *STR_EDIT_IDPS=NULL; +#define STR_EDIT_IDPS_DEFAULT "Edit IDPS" +static char *STR_FILTER_NOGAME=NULL; +#define STR_FILTER_NOGAME_DEFAULT "No games found. Adjust your filter." //*********************************************************** // Functions @@ -1796,8 +1935,8 @@ u32 Get_Original_PS2CRC(); void Draw_scene(); void Draw_title(float x, float y, char *str); void peek_IDPS(); -void start_load_PIC1(); -void end_load_PIC1(); +void start_load_CURPIC(); +void end_load_CURPIC(); int SaveFile(char *path, char *mem, int file_size); void read_setting(); void write_setting(); @@ -1813,21 +1952,41 @@ void poke_IDPS(); u8 WS_exist(); u8 Pnach_exist(); void CONFIG_check(char *IsoPath); -void DrawTXTInBox(float x, float y, float z, float w, float h, char *txt, u32 bg_color, u32 font_color); +float DrawTXTInBox(float x, float y, float z, float w, float h, char *txt, u32 bg_color, u32 font_color); char *get_unit(u64 nb); char *strcpy_malloc(char *STR_DEFAULT); void Draw_cursor(); void ScreenShot(); u8 GetALPHA(u32 rgba); +u32 SetALPHA(u8 alpha, u32 rgba); char *get_str_regex(char *mem, char *format); void LoadFont(); -u8 LoadTexture(char *texture_path, u32 *texture_offset, imgData *texture_data); +u8 LoadTexture(char *texture_path, u32 *texture_offset, imgData *texture_data, u32 *texture_size, u8 gray); int sys_fs_chown(char *path, s32 uid, s32 gid); u8 SetFilePerms(char *path); void open_SETTINGS(); void close_SETTINGS(); void TranslateTo(float *value, float target); void remove_GAMELIST(s64 pos); +void Draw_MemMonitor(); +void DrawLoadingIcon(); +void Draw_filter(); +void ReloadTheme(u8 i); +int NTFS_Test_Device(char *name); +char *FM_GetContent(char *str_format, char *MountPoint, DeviceInfo_t DeviceInfo); +u8 FM_GetFormat(char *str); +char *FM_SetFormat(u8 format_id); +u8 OldPad(u32 button); +u8 NewPad(u32 button); +u8 R2pad(u32 button); +u8 ComboNewPad(u32 button1, u32 button2); +u8 GetRED(u32 rgba); +u8 GetGREEN(u32 rgba); +u8 GetBLUE(u32 rgba); +u8 GetALPHA(u32 rgba); +u8 is_float_window(); +int move_bdemubackup_to_origin(char *device_path); + void Draw_MENU(); @@ -1839,6 +1998,14 @@ void EmptyFunc() func Draw_MENU_input = &EmptyFunc; func input_MENU = &EmptyFunc; +// TODO +// +// func MENU_TRIANGLE = &EmptyFunc; +// func MENU_CROSS = &EmptyFunc; +// func MENU_CIRCLE = &EmptyFunc; +// func MENU_CROSS = &EmptyFunc; +// func MENU_R1 = &EmptyFunc; + //*********************************************************** // Ugly SpeedFix : Original standard I/O function are slow //*********************************************************** @@ -1920,8 +2087,9 @@ char *FAKE_fgets(char *str, int length, FILE* fp) { char c; int count=0; - memset(str, 0, sizeof(str)); if(length==0) return NULL; + + memset(str, 0, length); while(ps3ntfs_read(*fp, &c, 1)) { str[count]=c; @@ -1996,9 +2164,9 @@ void cls() void Init_Graph() { - tiny3d_Init(2*1024*1024); + tiny3d_Init( TINY3D_Z16 | Mo(2) ); - texture_mem = tiny3d_AllocTexture(200*1024*1024); + texture_mem = tiny3d_AllocTexture(Mo(100)); if(!texture_mem) return; ResetFont(); @@ -2038,7 +2206,6 @@ void adjust_screen() // FONT //******************************************************* - void FreeFont() { int i; @@ -2226,6 +2393,7 @@ void LoadFont() TTFLoadFont(3, "/dev_flash/data/font/SCE-PS3-YG-R-KOR.TTF", NULL, 0); texture_pointer = (u32 *) init_ttf_table((u16 *) texture_pointer); + //TEXTURE_FONT_SIZE = texture_pointer; } float new_line(float nb) @@ -2234,11 +2402,6 @@ float new_line(float nb) return GetFontHeight()*nb; } -float GetWidth(char *str) -{ - return DrawFormatString(0, -50, str); -} - void FontSize(float size) { SetFontSize((float) (3 * size / 4), size ); @@ -2351,6 +2514,17 @@ void Draw_Box(float x, float y, float z, float r, float w, float h, u32 rgba, u8 } +void Draw_BoxLine(float x, float y, float z, float w, float h, u32 color) +{ + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(x , y , z); + tiny3d_VertexColor(color); + tiny3d_VertexPos(x+w , y , z); + tiny3d_VertexPos(x+w , y+h , z); + tiny3d_VertexPos(x , y+h , z); + tiny3d_End(); +} + void Draw_LineBox(float x, float y, float z, float e, float w, float h, u32 color) { Draw_Box(x-e, y-e, z, 0, e, h+2*e, color, NO); @@ -2360,19 +2534,113 @@ void Draw_LineBox(float x, float y, float z, float e, float w, float h, u32 colo Draw_Box(x, y+h, z, 0, w, e, color, NO); } -float Draw_checkbox(u8 checked, float x, float y, char *str, u32 color) + +void DrawCapacityBar(float x, float y, float z, float w, float h, u64 TotalSpace, u64 FreeSpace) +{ + if( TotalSpace == 0) return; + if(y<0) return; + + float t, u; + simple(TotalSpace, t); + simple(TotalSpace - FreeSpace, u); + float w2 = u * w / t ; + + Draw_BoxGradiant(VERTICAL, x, y, z, w, h, WHITE, 0xCCCCCCFF, NO); + Draw_BoxGradiant(VERTICAL, x, y, z, w2, h, 0xEAEAFFFF, 0x9C9CFFFF, NO); + Draw_BoxLine(x, y, z, w, h, 0xA0A0A0FF); +} + +u32 color_light(u32 color) +{ + return GetRED(color)/2 * 0x1000000 + GetGREEN(color)/2 * 0x10000 + GetBLUE(color)/2 * 0x100 + GetALPHA(color); +} + +float Draw_toggle(float x, float y, float z, float h, u8 state, u8 active) +{ + + if( PICTURE_offset[TOGGLE_ON] && PICTURE_offset[TOGGLE_OFF] ) { + u32 color = WHITE; + if(!active) color = SetALPHA(GetALPHA(color)/2, color); + + u8 toggle = TOGGLE_OFF; + if(state) toggle = TOGGLE_ON; + + tiny3d_SetTexture(0, PICTURE_offset[toggle], PICTURE[toggle].width, PICTURE[toggle].height, PICTURE[toggle].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(x, y, z, 0, 2*h, h, color, YES); + } else { + + u32 color = COLOR_2; + if(!state) color = 0.299*GetRED(color) + 0.587*GetGREEN(color) + 0.114*GetBLUE(color); + u32 color2 = color_light(color); + + if(!active) { + color = SetALPHA(GetALPHA(color)/2, color); + color2 = SetALPHA(GetALPHA(color)/2, color2); + } + + float rb = (h/4); + float xb = x + (h/2) - rb; + float yb = y + (h/2) - rb; + float hb = 2*rb; + float wb = (h/2)*3; + + Draw_Box(xb, yb, z, rb, wb, hb, color2, NO); + + + float xc = xb + rb; + if( state ) xc = xb + wb - rb; + float yc = yb + rb; + float rc = (h/2); + + int t; + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(color); + for(t=0; t<=360 ; t+=10) { + tiny3d_VertexPos( xc + rc*sin(t*PI/180), yc + rc*cos(t*PI/180), z); + } + tiny3d_End(); + } + + return x + 2*h; +} + +float Draw_checkbox(float x, float y, float z, char *str, u8 state, u8 active) { - Draw_Box(x, y, 0, 0, 14, 14, color, NO); - Draw_Box(x+2, y+2, 0, 0, 10, 10, BLACK, NO); + if( PICTURE_offset[CHECKBOX_FALSE] && PICTURE_offset[CHECKBOX_TRUE]) { + u32 color = WHITE; + if(!active) color = SetALPHA(3*GetALPHA(color)/4, color); + + u8 cb = CHECKBOX_FALSE; + if(state) cb = CHECKBOX_TRUE; + + tiny3d_SetTexture(0, PICTURE_offset[cb], PICTURE[cb].width, PICTURE[cb].height, PICTURE[cb].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(x, y, z, 0, 14, 14, color, YES); + } else { + + u32 color = COLOR_1; + if(active) color = COLOR_2; + + Draw_Box(x, y, 0, 0, 14, 14, color, NO); + Draw_Box(x+2, y+2, 0, 0, 10, 10, BLACK, NO); + + if(state) Draw_Box(x+3, y+3, 0, 0, 8, 8, COLOR_2, NO); + } - if(checked) Draw_Box(x+3, y+3, 0, 0, 8, 8, color, NO); + if(active) FontColor(COLOR_2); + else FontColor(COLOR_1); - FontColor(color); FontSize(15); return DrawString(x+20, y, str); } +float Draw_itembox(float x, float y, float z, char *str, u8 state, u8 active, u8 error) +{ + if( error ) Draw_Box(x-1.5, y-1.5, 0, 0, 17, 17, RED, NO); + + return Draw_checkbox(x, y, z, str, state, active); +} + void Draw_title(float x, float y, char *str) { int xt; @@ -2388,7 +2656,10 @@ void Draw_title(float x, float y, char *str) u8 is_ntfs(char *path) { - if(strstr(path, "ntfs")) return YES; + u8 n=0; + if(path[0] == '/') n=1; + if( strncmp(&path[n], "ntfs", 4) == 0) return YES; + return NO; } @@ -2433,80 +2704,92 @@ void RemoveExtention(char *path) while(le>0) {path[lp-le]=0; le--;} } -u8 imgLoadFromFile(char *imgPath, imgData *out) +u8 imgLoadFromFile(char *imgPath, imgData *out, u8 gray) { int file_size = 0; out->bmp_out = NULL; - - if(path_info(imgPath) == _NOT_EXIST) return FAILED; - + char *buff = LoadFile((char *) imgPath, &file_size); if(buff==NULL) return FAILED; - - if(pngLoadFromBuffer((const void *) buff, file_size, (pngData *) out) != 0) - if(jpgLoadFromBuffer((const void *) buff, file_size, (jpgData *) out) != 0) { - free(buff); - return FAILED; - } - free(buff); + if( gray ) { + imgData tp; + + if( get_ext(imgPath) == _PNG ) { + if(pngLoadFromBuffer((const void *) buff, file_size, (pngData *) &tp) != 0) + if(jpgLoadFromBuffer((const void *) buff, file_size, (jpgData *) &tp) != 0) { + free(buff); + return FAILED; + } + } else { + if(jpgLoadFromBuffer((const void *) buff, file_size, (jpgData *) &tp) != 0) + if(pngLoadFromBuffer((const void *) buff, file_size, (pngData *) &tp) != 0) + { + free(buff); + return FAILED; + } + } + + u64 d; - return SUCCESS; -} + // L8 + // out->height = tp.height; + // out->width = tp.width; + // out->pitch = tp.pitch/4; + // out->bmp_out = (u8 *) malloc(tp.pitch*tp.height/4+1); -void Read_ICON0(int position) -{ - char temp[128]; + // for(d=0; d< tp.pitch*tp.height; d+=4) { + // u8 ARGB[4]; + // memcpy(&ARGB, tp.bmp_out+d, 4); + // u8 Y = (0.299*ARGB[1] + 0.587*ARGB[2] + 0.114*ARGB[3])*((float) (ARGB[0]/0xFF)); + // memcpy(out->bmp_out + d/4, &Y, 1); + // } + + out->height = tp.height; + out->width = tp.width; + out->pitch = tp.pitch; + out->bmp_out = (u8 *) malloc(tp.pitch*tp.height+1); - if(list_game_platform[position] == _ISO_PS3) { - int size; - char *mem = LoadFileFromISO(NO, list_game_path[position], "/PS3_GAME/ICON0.PNG", &size); - if(mem==NULL) return; - pngLoadFromBuffer((const void *) mem, size, (pngData *) &ICON0[position]); - free(mem); - } else - if(list_game_platform[position] == _ISO_PSP) { - int size; - char *mem = LoadFileFromISO(NO, list_game_path[position], "/PSP_GAME/ICON0.PNG", &size); - if(mem==NULL) return; - pngLoadFromBuffer((const void *) mem, size, (pngData *) &ICON0[position]); - free(mem); - } else - if(list_game_platform[position] == _JB_PS3) { - sprintf(temp, "%s/PS3_GAME/PKGDIR/ICON0.PNG", list_game_path[position]); - if(imgLoadFromFile(temp, &ICON0[position]) == SUCCESS) return; - else { - sprintf(temp, "%s/PS3_GAME/ICON0.PNG", list_game_path[position]); - if(imgLoadFromFile(temp, &ICON0[position]) == SUCCESS) return; + for(d=0; d< tp.pitch*tp.height; d+=4) { + u8 ARGB[4]; + memcpy(&ARGB, tp.bmp_out+d, 4); + u8 Y = (0.299*ARGB[1] + 0.587*ARGB[2] + 0.114*ARGB[3]); + + u8 new_ARGB[4]={0}; + new_ARGB[0] = ARGB[0]; + new_ARGB[1] = Y; + new_ARGB[2] = Y; + new_ARGB[3] = Y; + + memcpy(out->bmp_out + d, new_ARGB, 4); } - } else - if(list_game_platform[position] == _JB_PSP) { - sprintf(temp, "%s/PSP_GAME/PKGDIR/ICON0.PNG", list_game_path[position]); - if(imgLoadFromFile(temp, &ICON0[position]) == SUCCESS) return; - else { - sprintf(temp, "%s/PSP_GAME/ICON0.PNG", list_game_path[position]); - if(imgLoadFromFile(temp, &ICON0[position]) == SUCCESS) return; + + } else { + + if( get_ext(imgPath) == _PNG ) { + if(pngLoadFromBuffer((const void *) buff, file_size, (pngData *) out) != 0) + if(jpgLoadFromBuffer((const void *) buff, file_size, (jpgData *) out) != 0) { + free(buff); + return FAILED; + } + } else { + if(jpgLoadFromBuffer((const void *) buff, file_size, (jpgData *) out) != 0) + if(pngLoadFromBuffer((const void *) buff, file_size, (pngData *) out) != 0) + { + free(buff); + return FAILED; + } } - } else - if(list_game_platform[position] == _ISO_PS2 || list_game_platform[position] == _ISO_PS1) { - strcpy(temp, list_game_path[position]); - temp[strlen(temp)-4]=0; - char temp2[255]; - sprintf(temp2, "%s.jpg", temp); - if(imgLoadFromFile(temp2, &ICON0[position]) == SUCCESS) return; - sprintf(temp2, "%s.png", temp); - if(imgLoadFromFile(temp2, &ICON0[position]) == SUCCESS) return; - sprintf(temp2, "%s.JPG", temp); - if(imgLoadFromFile(temp2, &ICON0[position]) == SUCCESS) return; - sprintf(temp2, "%s.PNG", temp); - if(imgLoadFromFile(temp2, &ICON0[position]) == SUCCESS) return; } + free(buff); + + return SUCCESS; } //******************************************************* -// SCREENSOT +// SCREENSHOT //****************************************************** typedef struct /**** BMP file header structure ****/ @@ -2535,7 +2818,7 @@ typedef struct /**** BMP file info structure ****/ void es_bmp_file_header(bmp_file_header *w) { - w->bfSize = ENDIAN_SWAP_32(w->bfSize);; + w->bfSize = ENDIAN_SWAP_32(w->bfSize); w->bfReserved1 = ENDIAN_SWAP_16(w->bfReserved1); w->bfReserved2 = ENDIAN_SWAP_16(w->bfReserved2); w->bfOffBits = ENDIAN_SWAP_32(w->bfOffBits); @@ -2559,8 +2842,7 @@ void es_bmp_info_header(bmp_info_header *w) // https://en.wikipedia.org/wiki/BMP_file_format void ScreenShot() { - if( !((new_pad & BUTTON_L2) && (old_pad & BUTTON_R2)) - && !((new_pad & BUTTON_R2) && (old_pad & BUTTON_L2)) ) return; + if( ComboNewPad(BUTTON_L2, BUTTON_R2) == NO ) return; if(Video_currentBuffer==NO) return; @@ -2677,6 +2959,13 @@ print_head("Writing bitmap data..."); // TEST ZONE //******************************************************* +// http://www.psdevwiki.com/ps3/AIM_Manager#0x19003_-_Get_Device_ID +u8 TEST_IDPS[0x10]; +void GetIDPS() +{ + lv2syscall2(867, 0x19003, (u64) TEST_IDPS); +} + // https://www.imagemagick.org/api/magick-image.php void ConvertImage(char *file_in, char *file_out) @@ -2782,7 +3071,7 @@ void ddsLoadFromFile(char *path, ddsData *data) void Load_FM() { - if(Load_GamePIC) return; + if(Load_GAMEPIC_busy) return; u8 loaded=NO; @@ -2791,11 +3080,7 @@ void Load_FM() start_loading(); } -#ifdef FILEMANAGER - texture_pointer = texture_mem + TEXTURE_POINTER_GAMEPIC; -#else - texture_pointer = texture_temp; -#endif + texture_pointer = texture_mem + TEXTURE_POINTER_TMP; memset(&TMP_PIC, 0, sizeof(TMP_PIC)); TMP_PIC_offset = 0; @@ -2806,216 +3091,605 @@ void Load_FM() return; } - LoadTexture(TMP_PIC_path, &TMP_PIC_offset ,&TMP_PIC); + LoadTexture(TMP_PIC_path, &TMP_PIC_offset ,&TMP_PIC, NULL, NO); if(loaded == YES) end_loading(); } -void Read_COVER3D(int position) +static void* jpg_malloc(u32 size,void *usrdata) { - char temp[128]; - char title_id[20]; - - if(Get_ID(list_game_path[position], list_game_platform[position], title_id) == FAILED) { - print_load("Error: Read_COVER3D : Get_ID %s", list_game_path[position]); - return; - } - - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.JPG", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.jpg", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.PNG", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.png", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - - return; -read: - - if( imgLoadFromFile(temp, &COVER3D[position]) == 0) return; - + return malloc(size); } -void Read_COVER(int position) +static void jpg_free(void *ptr,void *usrdata) { - char temp[128]; - char title_id[20]; - - if(Get_ID(list_game_path[position], list_game_platform[position], title_id) == FAILED) { - print_load("Error: Read_COVER : Get_ID %s", list_game_path[position]); - return; - } - - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.JPG", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.jpg", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.PNG", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.png", ManaGunZ_id, title_id); - if(path_info(temp) == _FILE) goto read; - - sprintf(temp, "/dev_hdd0/tmp/covers/%s.JPG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.jpg", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.PNG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.png", title_id); - if(path_info(temp) == _FILE) goto read; - - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.JPG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.jpg", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.PNG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.png", title_id); - if(path_info(temp) == _FILE) goto read; - - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.JPG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.jpg", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.PNG", title_id); - if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.png", title_id); - if(path_info(temp) == _FILE) goto read; - - return; -read: - - if( imgLoadFromFile(temp, &COVER[position]) == 0) return; - - //Delete(temp); + free(ptr); } -void Load_ICON0() +u8 GetInfo_JPG(char *path, u32 *w, u32 *h) { - int i; + jpgDecSource source; - Load_GamePIC_progbar = 0; + memset(&source,0,sizeof(jpgDecSource)); - for(i=0; i<=game_number; i++) { - Load_GamePIC_progbar = (i*100)/game_number; - - if(Load_GamePIC==NO) return; - - Read_ICON0(i); - - if(Load_GamePIC==NO) return; - - if(ICON0[i].bmp_out) { - memcpy(texture_pointer, ICON0[i].bmp_out, ICON0[i].pitch * ICON0[i].height); - free(ICON0[i].bmp_out); - ICON0_offset[i] = tiny3d_TextureOffset(texture_pointer); - texture_pointer += ((ICON0[i].pitch * ICON0[i].height + 15) & ~15) / 4; - } else ICON0_offset[i]=0; - } + source.stream = JPGDEC_FILE; + source.file_name = __get_addr32(path); + source.enable = JPGDEC_DISABLE; - Load_GamePIC_progbar = -1; -} + s32 mHandle,sHandle,ret; + u32 space_allocated; + jpgDecInfo DecInfo; + jpgDecThreadInParam InThdParam; + jpgDecThreadOutParam OutThdParam; -u8 COVER_Loaded; -void Load_COVER() -{ - int i; - - if(Load_GamePIC==NO) return; - - COVER_Loaded = NO; - - if(Show_COVER==YES || (UI_position==FLOW && FLOW_3D==YES) ) { - Load_GamePIC_progbar=0; - for(i=0; i<=game_number; i++) { - Load_GamePIC_progbar = (i*100)/game_number; - if(Load_GamePIC==NO) return; - Read_COVER(i); - if(Load_GamePIC==NO) return; - if(COVER[i].bmp_out) { - memcpy(texture_pointer, COVER[i].bmp_out, COVER[i].pitch * COVER[i].height); - free(COVER[i].bmp_out); - COVER_offset[i] = tiny3d_TextureOffset(texture_pointer); - texture_pointer += ((COVER[i].pitch * COVER[i].height + 15) & ~15) / 4; - } else COVER_offset[i] = 0; - } - if(UI_position==FLOW && FLOW_3D==YES) { - Load_GamePIC_progbar=0; - for(i=0; i<=game_number; i++) { - Load_GamePIC_progbar = (i*100)/game_number; - if(Load_GamePIC==NO) return; - Read_COVER3D(i); - if(Load_GamePIC==NO) return; - if(COVER3D[i].bmp_out) { - memcpy(texture_pointer, COVER3D[i].bmp_out, COVER3D[i].pitch * COVER3D[i].height); - free(COVER3D[i].bmp_out); - COVER3D_offset[i] = tiny3d_TextureOffset(texture_pointer); - texture_pointer += ((COVER3D[i].pitch * COVER3D[i].height + 15) & ~15) / 4; - } else COVER3D_offset[i] = 0; + InThdParam.enable = 0; + InThdParam.ppu_prio = 512; + InThdParam.spu_prio = 200; + InThdParam.malloc_func = __get_addr32(__get_opd32(jpg_malloc)); + InThdParam.malloc_arg = 0; // no args + InThdParam.free_func = __get_addr32(__get_opd32(jpg_free)); + InThdParam.free_arg = 0; // no args + + ret = jpgDecCreate(&mHandle,&InThdParam,&OutThdParam); + + if(ret==0) { + ret = jpgDecOpen(mHandle,&sHandle,&source,&space_allocated); + if(ret==0) { + ret = jpgDecReadHeader(mHandle,sHandle,&DecInfo); + if(ret==0) { + *w = DecInfo.width; + *h = DecInfo.height; } + jpgDecClose(mHandle,sHandle); } - COVER_Loaded = YES; + jpgDecDestroy(mHandle); } - Load_GamePIC_progbar = -1; + + if( ret==0 ) return SUCCESS; + else return FAILED; } -static sys_ppu_thread_t Load_GamePIC_id; - -void Load_GamePIC_thread(void *unused) +u8 GetInfo_PNG(char * path, u32 *w, u32 *h) { - memset(ICON0_offset, 0, sizeof(ICON0_offset)); - memset(ICON0, 0, sizeof(ICON0)); - memset(COVER_offset, 0, sizeof(COVER_offset)); - memset(COVER, 0, sizeof(COVER)); - memset(COVER3D_offset, 0, sizeof(COVER3D_offset)); - memset(COVER3D, 0, sizeof(COVER3D)); - TMP_PIC_offset = 0; + FILE *f; + u32 magic; + + f=fopen(path, "rb"); + if( f == NULL ) return FAILED; + + fread(&magic, sizeof(32), 1, f); - texture_pointer = texture_mem + TEXTURE_POINTER_GAMEPIC; + if(magic != 0x89504E47) { + fclose(f); + return FAILED; + } - Load_ICON0(); - Load_COVER(); + fseek(f, 0x10, SEEK_SET); - while(Load_GamePIC == YES) usleep(100); + u32 width, height; + fread(&width, sizeof(32), 1, f); + fread(&height, sizeof(32), 1, f); - texture_temp = texture_pointer; + fclose(f); - sysThreadExit(0); + *w = width; + *h = height; + + return SUCCESS; } -void end_Load_GamePIC() +u8 Get_PICType(u32 w, u32 h) { - u64 ret; - Load_GamePIC = NO; - sysThreadJoin(Load_GamePIC_id, &ret); -} + if( w <= h) return GAMEPIC_COVER2D; + + float ratio = (float) w / (float) h ; + float ratio_ICON0 = 320.0/176.0; + float e = fabs(ratio_ICON0 - ratio); + if( e < 0.1 ) return GAMEPIC_ICON0; -void start_Load_GamePIC() -{ - if(Load_GamePIC==YES) { - end_Load_GamePIC(); - } - if(Load_GamePIC==NO) { - Load_GamePIC = YES; - sysThreadCreate(&Load_GamePIC_id, Load_GamePIC_thread, NULL, 999, 0x2000, THREAD_JOINABLE, "Load_GamePIC"); - } + return GAMEPIC_COVER3D; } -void Draw_Load_GamePIC() +u8 Get_PIC(char *path) { - if(Load_GamePIC == NO) return; - - if(Load_GamePIC_progbar >= 0) Draw_Progress_Bar(50, 15, 1, Load_GamePIC_progbar, COLOR_2); + u32 width, height; - if(Load_GamePIC_progbar == -1) end_Load_GamePIC(); + if(GetInfo_PNG(path, &width, &height)==FAILED) + if(GetInfo_JPG(path, &width, &height)==FAILED) return GAMEPIC_COVER_UNK; + return Get_PICType(width, height); } -void Draw_CASE(int pos, float xi, float yi, float z, float wi, float hi) +u8 Have_GAMEPIC(int game_pos) { - float xj,yj,wj,hj; - float xl,yl,wl,hl; + u8 ret = GAMEPIC_NONE; + + if(list_game_platform[game_pos] == _ISO_PS3 || list_game_platform[game_pos] == _JB_PS3 + || list_game_platform[game_pos] == _ISO_PSP || list_game_platform[game_pos] == _JB_PSP) ret += GAMEPIC_ICON0; + + char temp[512]; + +// 3D + u8 is_PS1 = (list_game_platform[game_pos] == _ISO_PS1 || list_game_platform[game_pos] == _JB_PS1); + + char t[10] = {0}; + if(is_PS1) strcpy(t, "_FRONT"); + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.JPG", ManaGunZ_id, list_game_ID[game_pos], t); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER3D; goto search_2D; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.jpg", ManaGunZ_id, list_game_ID[game_pos], t); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER3D; goto search_2D; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.PNG", ManaGunZ_id, list_game_ID[game_pos], t); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER3D; goto search_2D; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.png", ManaGunZ_id, list_game_ID[game_pos], t); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER3D; goto search_2D; } + +search_2D: + + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.jpg", ManaGunZ_id, list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.JPG", ManaGunZ_id, list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.png", ManaGunZ_id, list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.PNG", ManaGunZ_id, list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + + sprintf(temp, "/dev_hdd0/tmp/covers/%s.jpg", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/tmp/covers/%s.JPG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/tmp/covers/%s.png", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/tmp/covers/%s.PNG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.jpg", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.JPG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.png", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.PNG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.jpg", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.JPG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.png", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.PNG", list_game_ID[game_pos]); + if(path_info(temp) == _FILE) { ret += GAMEPIC_COVER2D; goto search_next; } + + +search_next: + + strcpy(temp, list_game_path[game_pos]); + temp[strlen(temp)-4]=0; + char temp2[512]; + sprintf(temp2, "%s.jpg", temp); + if(path_info(temp2) == _FILE) { ret += Get_PIC(temp2); goto end; } + sprintf(temp2, "%s.png", temp); + if(path_info(temp2) == _FILE) { ret += Get_PIC(temp2); goto end; } + sprintf(temp2, "%s.JPG", temp); + if(path_info(temp2) == _FILE) { ret += Get_PIC(temp2); goto end; } + sprintf(temp2, "%s.PNG", temp); + if(path_info(temp2) == _FILE) { ret += Get_PIC(temp2); goto end; } + +end: + + return ret; +} + +u8 Read_PS1BACK(int game_pos, imgData *DataPic) +{ + u8 is_PS1 = (list_game_platform[game_pos] == _ISO_PS1 || list_game_platform[game_pos] == _JB_PS1); + + if(is_PS1==NO || UI_position!=FLOW || FLOW_3D == NO) return FAILED; + +// TODO +// support 3 pictures = 2 sides + 1 back +// FULL 450 x 600 +// BACK 450 x 510 +// LEFT 450 x 45 +// RIGHT 450 x 45 +// merge them in 1 imgData ? + + char temp[128]; + + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.JPG", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.jpg", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.PNG", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s.png", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + return FAILED; +} + +u8 Read_GAMEPIC_COVER3D(int game_pos, imgData *DataPic) +{ + char temp[512]; + u8 is_PS1 = (list_game_platform[game_pos] == _ISO_PS1 || list_game_platform[game_pos] == _JB_PS1); + + char t[10] = {0}; + if(is_PS1==YES) strcpy(t, "_FRONT"); + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.JPG", ManaGunZ_id, list_game_ID[game_pos], t); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.jpg", ManaGunZ_id, list_game_ID[game_pos], t); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.PNG", ManaGunZ_id, list_game_ID[game_pos], t); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/3D/%s%s.png", ManaGunZ_id, list_game_ID[game_pos], t); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + return FAILED; +} + +u8 Read_GAMEPIC_COVER2D(int game_pos, imgData *DataPic) +{ + char temp[512]; + + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.jpg", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.JPG", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.png", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.PNG", ManaGunZ_id, list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + sprintf(temp, "/dev_hdd0/tmp/covers/%s.jpg", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/tmp/covers/%s.JPG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/tmp/covers/%s.png", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/tmp/covers/%s.PNG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.jpg", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.JPG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.png", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.PNG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + if( list_game_platform[game_pos] == _ISO_PS3 || list_game_platform[game_pos] == _JB_PS3) return FAILED; + + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.jpg", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.JPG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.png", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.PNG", list_game_ID[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + + return FAILED; +} + +u8 Read_GAMEPIC_ICON0(int game_pos, imgData *DataPic) +{ + char temp[512]; + + if(list_game_platform[game_pos] == _ISO_PS3) { + int size; + char *mem = LoadFileFromISO(NO, list_game_path[game_pos], "/PS3_GAME/ICON0.PNG", &size); + if(mem==NULL) return FAILED; + if(pngLoadFromBuffer((const void *) mem, size, (pngData *) DataPic) == 0) {free(mem); return SUCCESS;} + } else + if(list_game_platform[game_pos] == _ISO_PSP) { + int size; + char *mem = LoadFileFromISO(NO, list_game_path[game_pos], "/PSP_GAME/ICON0.PNG", &size); + if(mem==NULL) return FAILED; + if(pngLoadFromBuffer((const void *) mem, size, (pngData *) DataPic) == 0) {free(mem); return SUCCESS;} + } else + if(list_game_platform[game_pos] == _JB_PS3) { + sprintf(temp, "%s/PS3_GAME/PKGDIR/ICON0.PNG", list_game_path[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "%s/PS3_GAME/ICON0.PNG", list_game_path[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + } else + if(list_game_platform[game_pos] == _JB_PSP) { + sprintf(temp, "%s/PSP_GAME/PKGDIR/ICON0.PNG", list_game_path[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp, "%s/PSP_GAME/ICON0.PNG", list_game_path[game_pos]); + if(imgLoadFromFile(temp, DataPic, NO) == SUCCESS) return SUCCESS; + } else + if(list_game_platform[game_pos] == _ISO_PS2 || list_game_platform[game_pos] == _ISO_PS1) { + strcpy(temp, list_game_path[game_pos]); + temp[strlen(temp)-4]=0; + char temp2[255]; + sprintf(temp2, "%s.jpg", temp); + if(imgLoadFromFile(temp2, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp2, "%s.png", temp); + if(imgLoadFromFile(temp2, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp2, "%s.JPG", temp); + if(imgLoadFromFile(temp2, DataPic, NO) == SUCCESS) return SUCCESS; + sprintf(temp2, "%s.PNG", temp); + if(imgLoadFromFile(temp2, DataPic, NO) == SUCCESS) return SUCCESS; + } + + return FAILED; +} + +u8 Read_GAMEPIC(int game_pos, imgData *DataPic) +{ + + if(list_game_havepic[game_pos] == GAMEPIC_NONE) return FAILED; + + if(UI_position==FLOW) { + + if(FLOW_3D) { + if( Read_GAMEPIC_COVER3D(game_pos, DataPic) == SUCCESS) return SUCCESS; + } + + if(FLOW_3D || Show_COVER) { + if( Read_GAMEPIC_COVER2D(game_pos, DataPic) == SUCCESS) return SUCCESS; + } + + if( Read_GAMEPIC_ICON0(game_pos, DataPic) == SUCCESS) return SUCCESS; + + } else + if(UI_position==LIST) { + if(Show_ICON0) { + if( Read_GAMEPIC_ICON0(game_pos, DataPic) == SUCCESS) return SUCCESS; + } + if(Show_COVER) { + if( Read_GAMEPIC_COVER2D(game_pos, DataPic) == SUCCESS) return SUCCESS; + } + } else { + if( Read_GAMEPIC_ICON0(game_pos, DataPic) == SUCCESS) return SUCCESS; + + if(Show_COVER) { + if( Read_GAMEPIC_COVER2D(game_pos, DataPic) == SUCCESS) return SUCCESS; + } + } + + return FAILED; +} + +int VRAM_GetSlotUsed() +{ + int i; + int nb=0; + for(i=0; i0) GAMEPIC_SLOT_LAST = slot; + if(e<0) GAMEPIC_SLOT_FIRST = slot; +next: + e=-e; if(0<=e) e++; + } + + update_VRAM(); +} + +u8 VRAM_isFull() +{ + int i; + for(i=0; i0) LOCAL_SLOT_LAST = slot; + if(e<0) LOCAL_SLOT_FIRST = slot; + + texture_loaded_number++; + +next: + e=-e; if(e>=0) e++; + } + + GAMEPIC_SLOT_LAST = LOCAL_SLOT_FIRST; + GAMEPIC_SLOT_LAST = LOCAL_SLOT_LAST; + + Load_GAMEPIC_busy = NO; +} + +void init_Load_GAMEPIC() +{ + if(UI_position==FLOW && FLOW_3D==YES) { + TEXTURE_GAMEPIC_SIZE_MAX = TEXTURE_GAMEPIC_SIZE_3D; + } else { + TEXTURE_GAMEPIC_SIZE_MAX = TEXTURE_GAMEPIC_SIZE_2D; + } + + memset(GAMEPIC_offset, 0, sizeof(GAMEPIC_offset)); + memset(GAMEPIC, 0, sizeof(GAMEPIC)); + + if(position < 0) GAMEPIC_POSITION = position; + + int i; + for(i=0; i= ICON0[pos].width) { - float w1= ICON0[pos].width * h / ICON0[pos].height; - float x1 = x + (w-w1)/2; - Draw_Box(x1, y, z, 0, w1, h, WHITE, YES); - } else Draw_Box(x, y, z, 0, w, h, WHITE, YES); - + float x1 = x; + float y1 = y; + if(center) { + x1-= w1/2; + y1-= h1/2; } - else Draw_DEFAULT(pos, x, y, z, w, h); + + tiny3d_SetTexture(0, PICTURE_offset[plat], PICTURE[plat].width, PICTURE[plat].height, PICTURE[plat].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + u32 col = color; + if(type == _JB_PS1 || type == _ISO_PS1) col = SetALPHA(GetALPHA(color), COLOR_PS1); + if(type == _JB_PS2 || type == _ISO_PS2) col = SetALPHA(GetALPHA(color), COLOR_PS2); + if(type == _JB_PS3 || type == _ISO_PS3) col = SetALPHA(GetALPHA(color), COLOR_PS3); + if(type == _JB_PSP || type == _ISO_PSP) col = SetALPHA(GetALPHA(color), COLOR_PSP); + Draw_Box(x1, y1, z, 0, w1, h1, col , YES); } -void DrawFromCenter_ICON0(int pos, float x, float y, float z, float w, float h) +u8 Get_GAMEPIC_TYPE(int pos, int *slot) { - Draw_ICON0(pos, x-w/2, y-h/2, z, w, h); + if(pos < 0 || game_number < pos) return GAMEPIC_NONE; + + int TextSlot = VRAM_GetSlot(pos); + + if(TextSlot < 0) return GAMEPIC_NONE; + + if(GAMEPIC_offset[TextSlot] == 0) return GAMEPIC_NONE; + + *slot = TextSlot; + + return Get_PICType(GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height); } -void Draw_MMTHM_XMB(float x , float y, float z, float w, float h, u8 n_icon) +void Draw_GAMEPIC(int pos, u8 pic, float x, float y, float z, float w, float h, u8 center, u32 color) +{ + int TextSlot=0; + + u8 PICType = Get_GAMEPIC_TYPE(pos, &TextSlot); + + if(pic & GAMEPIC_ICON0) { + if(PICType==GAMEPIC_ICON0) { + float h1 = h; + float w1 = w; + if( h==0 && w==0 ) { + h1 = GAMEPIC[TextSlot].height; + w1 = GAMEPIC[TextSlot].width; + } else + if( h==0 ) { + h1 = (GAMEPIC[TextSlot].height * w) / GAMEPIC[TextSlot].width; + } else + if( w==0 ) { + w1 = (GAMEPIC[TextSlot].width * h) / GAMEPIC[TextSlot].height; + } + + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + float x1 = x; + float y1 = y; + if(center) { + x1-= w1/2; + y1-= h1/2; + } + Draw_Box(x1, y1, z, 0, w1, h1, color, YES); + return; + } + } + + if(pic & GAMEPIC_COVER2D) { + if(PICType == GAMEPIC_COVER2D) { + if(UI_position==GRID) { + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + float w1= (GAMEPIC[TextSlot].width * h) / GAMEPIC[TextSlot].height; + float h1=h; + float x1 = x + (w-w1)/2; + float y1 = y; + if(center) { + x1 -= w1/2; + y1 -= h1/2; + } + Draw_Box(x1, y1, z, 0, w1, h1, color, YES); + return; + } else { + Draw_COVER(pos, x, y, z, w, h, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot], center, color); + return; + } + } + } + + if(pic & GAMEPIC_ICON0_DEFAULT) { + Draw_DEFAULT(pos, x, y, z, w, h, center, color); + return; + } +} + +void Draw_MMTHM_XMB(float x , float y, float z, float w, float h, u8 n_icon) { if(n_icon<24) { @@ -3652,6 +4349,14 @@ u64 get_time(u8 i) return (((1000000000*time_e[i] + time_n_e[i]) - (1000000000*time_s[i] + time_n_s[i]))/1000000.0); } +u64 nTime() +{ + u64 time_s=0; + u64 time_n=0; + sysGetCurrentTime(&time_s, &time_n); + return 1000000000ULL*time_s + time_n; +} + void init_timer(u8 i) { time_s[i]=0; @@ -3709,7 +4414,6 @@ u8 is_apng(char *file) u8 Load_APNG(char* filename) { - FILE* f; u64 magic; u32 pos; chunk_header ch; @@ -3719,85 +4423,83 @@ u8 Load_APNG(char* filename) u8 Frame_Header[0x29]; acTL_data ad; - texture_pointer = texture_temp; + texture_pointer = texture_mem + TEXTURE_POINTER_TMP; memset(APNG_data, 0, sizeof(APNG_data)); memset(APNG, 0, sizeof(APNG)); memset(APNG_offset, 0, sizeof(APNG_offset)); APNG_num_frames = 0; - f = fopen(filename, "rb"); - - if(f==NULL) { - //print_load("Error : failed to open file"); + print_load("Loading %s", filename); + + int size; + u8 *data = (u8*) LoadFile(filename, &size); + if(data==NULL) { + print_load("Error : failed to load file"); return NO; } - fread(&magic, 1, 8, f); + memcpy(&magic, data, 8); if(magic != MAGIC_PNG) { - //print_load("Error : bad magic"); - fclose(f); return NO; + print_load("Error : bad magic"); + free(data); + return NO; } - fseek(f, 0, SEEK_SET); - fread(&Frame_Header, 1, 0x21, f); + memcpy(Frame_Header, data, 0x21); + + memcpy(&ch, data+0x21, 0x8); + + pos=0x21+8; - fread(&ch, 1, 8, f); - while (ch.type != acTL) { - pos = ftell(f) + ch.length + 4; // ignore CRC - fseek(f, pos, SEEK_SET); - fread(&ch, 1, 8, f); + pos += ch.length + 4; // ignore CRC + memcpy(&ch, data+pos, 8); pos+=8; if(ch.type == IDAT) { - //print_load("Error : no actl"); - fclose(f); + print_load("Error : no actl"); return NO; - } // not GRID_ANIMATED + } } - - fread(&ad, 1, ch.length, f); + memcpy(&ad, data+pos, ch.length); pos+=ch.length; APNG_num_frames = ad.num_frames; - pos = ftell(f) + 4; // ignore CRC - fseek(f, pos, SEEK_SET); + pos += 4; // ignore CRC + u32 i; for(i=0; i= BG_num_frames) BG_frame = 0; - if(BG_offset[BG_frame] != 0) { + if(BG_offset[BG_frame] != 0) { tiny3d_SetTexture(0, BG_offset[BG_frame], BG[BG_frame].width, BG[BG_frame].height, BG[BG_frame].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(0, 0, 1000, 0, 848, 512, color, YES); } if(BG_data[BG_frame].delay_den == 0) BG_data[BG_frame].delay_den=100; @@ -4158,7 +5067,6 @@ void Draw_ANIMATED_BG() start_timer(1); BG_frame++; } - } void float_to_fract(float f, uint16_t *num, uint16_t *den) @@ -4522,17 +5430,30 @@ u8 make_ABG(char *dir_path, char *file_out) // LANGUAGE //################################################### +#define LANG(x, y, z) FREE(x); x = language(flang, y, z); + char *strcpy_malloc(char *STR_DEFAULT) { if(STR_DEFAULT==NULL) return NULL; - char *STR = malloc( strlen(STR_DEFAULT)+1); + u32 size = strlen(STR_DEFAULT)+1; + char *STR = malloc(size+1); if(STR==NULL) return NULL; + memset(STR, 0, size+1); strcpy(STR, STR_DEFAULT); - strcat(STR, "\0"); return STR; } -static char buff3[512]; +char *strncpy_malloc(char *STR_DEFAULT, u32 size) +{ + if(STR_DEFAULT==NULL) return NULL; + char *STR = malloc(size+1); + if(STR==NULL) return NULL; + memset(STR, 0, size+1); + strncpy(STR, STR_DEFAULT, size); + return STR; +} + +static char buff3[4096]; char *sprintf_malloc(char *format, ...) { char *str = (char *) buff3; @@ -4545,92 +5466,28 @@ char *sprintf_malloc(char *format, ...) return strcpy_malloc(str); } -char *language(FILE* flang, const char *strName, char *str_default) +// It may be faster than previous function I wrote... +char *language(char *lang_mem, const char *strName, char *str_default) { - if(flang==NULL) return strcpy_malloc(str_default); + if(lang_mem==NULL) return strcpy_malloc(str_default); - int c; - int i; + char t[255]; + sprintf(t, "%s\t", strName); - char str[512]; - memset(str, 0, 512); + char *res = strstr(lang_mem, t); + if(res == NULL) { + sprintf(t, "%s ", strName); + res = strstr(lang_mem, t); + if(res == NULL) return strcpy_malloc(str_default); + } - uint8_t do_retry = YES; - - int l = strlen(strName); + char *start=strchr(res, '{'); + if(start == NULL) return strcpy_malloc(str_default); -retry: - do { - c = fgetc(flang); - for(i=0; i < l; i++) - { - if( c != strName[i]) break; - else if (i==l-1) - { - c = fgetc(flang); - if(c != '\t' && c != ' ') break; - - while(c != '{') { - c = fgetc(flang); - if(c == FAKE_EOF) break; - } - - int str_len = 0; - - do { - - c = fgetc(flang); - - if (c == '}') { - str[str_len] = '\0'; - - char *ret = (char *) malloc((size_t) str_len+1); - memcpy(ret, str, str_len+1); - return ret; - } - - if (c == 92) { - c = fgetc(flang); - if (c == 'n') { - str[str_len] = '\n'; - str_len++; - } - else if (c == 'r') { - str[str_len] = '\r'; - str_len++; - } - else if (c == 'x') { - char Number[2]; - Number[0] = fgetc(flang); - Number[1] = fgetc(flang); - short unsigned int val=0; - sscanf(Number, "%hX", &val); - str[str_len] = val; - str_len++; - } - else { - str[str_len] = 92; - str_len++; - str[str_len] = c; - str_len++; - } - - } else { - str[str_len] = c; - str_len++; - } - - } while (c != FAKE_EOF); - - } - else c = fgetc(flang); - } - - } while (c != FAKE_EOF); + char *end=strchr(start, '}'); + if(end == NULL) return strcpy_malloc(str_default); - if(do_retry == YES) {do_retry=NO; fseek(flang, 0, SEEK_SET); goto retry;} - - return strcpy_malloc(str_default); + return strncpy_malloc(&start[1], end-start-1); } void init_lang() @@ -4641,10 +5498,9 @@ void init_lang() lang_N = 0; STR_LANGUAGE[lang_N] = (char *) malloc((size_t)18); - STR_LANGCODE[lang_N] = (char *) malloc((size_t)2); strcpy(STR_LANGUAGE[lang_N], "English (default)"); - STR_LANGCODE[lang_N][0] = LANG_DEFAULT; + LANGCODE[lang_N] = LANG_DEFAULT; lang_N++; @@ -4661,21 +5517,28 @@ void init_lang() sprintf(TXTPath, "%s/%s", LOCPath, dir->d_name); - FILE* flang = fopen(TXTPath, "rb"); + int flang_size=0; + char* flang = LoadFile(TXTPath, &flang_size); if(flang==NULL) continue; - STR_LANGUAGE[lang_N] = language(flang, "STR_LANGUAGE", NULL); + LANG(STR_LANGUAGE[lang_N], "STR_LANGUAGE", NULL); if(STR_LANGUAGE[lang_N] != NULL ) { - STR_LANGCODE[lang_N] = language(flang, "STR_LANGCODE", NULL); - FREE(lang_path[lang_N]); - lang_path[lang_N] = (char *) malloc(strlen(TXTPath)+1); - strcpy(lang_path[lang_N], TXTPath); - lang_N++; - + char *temp_str = language(flang, "STR_LANGCODE", NULL); + if(temp_str!=NULL) { + short unsigned int val=0; + sscanf(&temp_str[2], "%hX", &val); + LANGCODE[lang_N] = (u8) val; + FREE(temp_str); + + FREE(lang_path[lang_N]); + lang_path[lang_N] = strcpy_malloc(TXTPath); + + lang_N++; + } } - FCLOSE(flang); + FREE(flang); } closedir(d); @@ -4683,637 +5546,367 @@ void init_lang() void update_lang() { - FILE* flang=NULL; - if(lang>0) flang = fopen(lang_path[lang], "r"); - - FREE(STR_LANG); - STR_LANG = language(flang, "STR_LANG", STR_LANG_DEFAULT); - FREE(STR_LANG_DESC); - STR_LANG_DESC = language(flang, "STR_LANG_DESC", STR_LANG_DESC_DEFAULT); - FREE(STR_GATHERING); - STR_GATHERING = language(flang, "STR_GATHERING", STR_GATHERING_DEFAULT); - FREE(STR_COPYING); - STR_COPYING = language(flang, "STR_COPYING", STR_COPYING_DEFAULT); - FREE(STR_FROM); - STR_FROM = language(flang, "STR_FROM", STR_FROM_DEFAULT); - FREE(STR_TO); - STR_TO = language(flang, "STR_TO", STR_TO_DEFAULT); - FREE(STR_FILES); - STR_FILES = language(flang, "STR_FILES", STR_FILES_DEFAULT); - FREE(STR_DIRS); - STR_DIRS = language(flang, "STR_DIRS", STR_DIRS_DEFAULT); - FREE(STR_UNKNOWN); - STR_UNKNOWN = language(flang, "STR_UNKNOWN", STR_UNKNOWN_DEFAULT); - FREE(STR_FILE); - STR_FILE = language(flang, "STR_FILE", STR_FILE_DEFAULT); - FREE(STR_CANCEL); - STR_CANCEL = language(flang, "STR_CANCEL", STR_CANCEL_DEFAULT); - FREE(STR_TURNOFF_YES); - STR_TURNOFF_YES = language(flang, "STR_TURNOFF_YES", STR_TURNOFF_YES_DEFAULT); - FREE(STR_TURNOFF_NO); - STR_TURNOFF_NO = language(flang, "STR_TURNOFF_NO", STR_TURNOFF_NO_DEFAULT); - FREE(STR_CANCELLED); - STR_CANCELLED = language(flang, "STR_CANCELLED", STR_CANCELLED_DEFAULT); - FREE(STR_UNIT); - STR_UNIT = language(flang, "STR_UNIT", STR_UNIT_DEFAULT); - FREE(STR_TOTALSIZE); - STR_TOTALSIZE = language(flang, "STR_TOTALSIZE", STR_TOTALSIZE_DEFAULT); - FREE(STR_HIDELOGS); - STR_HIDELOGS = language(flang, "STR_HIDELOGS", STR_HIDELOGS_DEFAULT); - FREE(STR_SHOWLOGS); - STR_SHOWLOGS = language(flang, "STR_SHOWLOGS", STR_SHOWLOGS_DEFAULT); - FREE(STR_BOOST); - STR_BOOST = language(flang, "STR_BOOST", STR_BOOST_DEFAULT); - FREE(STR_GAMEMENU); - STR_GAMEMENU = language(flang, "STR_GAMEMENU", STR_GAMEMENU_DEFAULT); - FREE(STR_SETTINGS); - STR_SETTINGS = language(flang, "STR_SETTINGS", STR_SETTINGS_DEFAULT); - FREE(STR_MOUNTGAME); - STR_MOUNTGAME = language(flang, "STR_MOUNTGAME", STR_MOUNTGAME_DEFAULT); - FREE(STR_FILTER); - STR_FILTER = language(flang, "STR_FILTER", STR_FILTER_DEFAULT); - FREE(STR_FAVORITE); - STR_FAVORITE = language(flang, "STR_FAVORITE", STR_FAVORITE_DEFAULT); - FREE(STR_FILEMANAGER); - STR_FILEMANAGER = language(flang, "STR_FILEMANAGER", STR_FILEMANAGER_DEFAULT); - FREE(STR_HOLD); - STR_HOLD = language(flang, "STR_HOLD", STR_HOLD_DEFAULT); - FREE(STR_BACKTOXMB); - STR_BACKTOXMB = language(flang, "STR_BACKTOXMB", STR_BACKTOXMB_DEFAULT); - FREE(STR_GAME_PROP); - STR_GAME_PROP = language(flang, "STR_GAME_PROP", STR_GAME_PROP_DEFAULT); - FREE(STR_GAME_TITLE); - STR_GAME_TITLE = language(flang, "STR_GAME_TITLE", STR_GAME_TITLE_DEFAULT); - FREE(STR_GAME_PATH); - STR_GAME_PATH = language(flang, "STR_GAME_PATH", STR_GAME_PATH_DEFAULT); - FREE(STR_GAME_FORMAT); - STR_GAME_FORMAT = language(flang, "STR_GAME_FORMAT", STR_GAME_FORMAT_DEFAULT); - FREE(STR_GAME_SIZE); - STR_GAME_SIZE = language(flang, "STR_GAME_SIZE", STR_GAME_SIZE_DEFAULT); - FREE(STR_GAME_PLATFORM); - STR_GAME_PLATFORM = language(flang, "STR_GAME_PLATFORM", STR_GAME_PLATFORM_DEFAULT); - FREE(STR_SYSVERS); - STR_SYSVERS = language(flang, "STR_SYSVERS", STR_SYSVERS_DEFAULT); - FREE(STR_GAMEID); - STR_GAMEID = language(flang, "STR_GAMEID", STR_GAMEID_DEFAULT); - FREE(STR_ELFCRC); - STR_ELFCRC = language(flang, "STR_ELFCRC", STR_ELFCRC_DEFAULT); - FREE(STR_ELFCRCO); - STR_ELFCRCO = language(flang, "STR_ELFCRCO", STR_ELFCRCO_DEFAULT); - FREE(STR_BACK); - STR_BACK = language(flang, "STR_BACK", STR_BACK_DEFAULT); - FREE(STR_ENTER); - STR_ENTER = language(flang, "STR_ENTER", STR_ENTER_DEFAULT); - FREE(STR_UPDATE_FOUND); - STR_UPDATE_FOUND = language(flang, "STR_UPDATE_FOUND", STR_UPDATE_FOUND_DEFAULT); - FREE(STR_UPDATE); - STR_UPDATE = language(flang, "STR_UPDATE", STR_UPDATE_DEFAULT); - FREE(STR_SIZE); - STR_SIZE = language(flang, "STR_SIZE", STR_SIZE_DEFAULT); - FREE(STR_SYSTEM); - STR_SYSTEM = language(flang, "STR_SYSTEM", STR_SYSTEM_DEFAULT); - FREE(STR_DL); - STR_DL = language(flang, "STR_DL", STR_DL_DEFAULT); - FREE(STR_DL_ALL); - STR_DL_ALL = language(flang, "STR_DL_ALL", STR_DL_ALL_DEFAULT); - FREE(STR_UNPLUG); - STR_UNPLUG = language(flang, "STR_UNPLUG", STR_UNPLUG_DEFAULT); - FREE(STR_PATH); - STR_PATH = language(flang, "STR_PATH", STR_PATH_DEFAULT); - FREE(STR_TYPE); - STR_TYPE = language(flang, "STR_TYPE", STR_TYPE_DEFAULT); - FREE(STR_FOLDER); - STR_FOLDER = language(flang, "STR_FOLDER", STR_FOLDER_DEFAULT); - FREE(STR_DIR); - STR_DIR = language(flang, "STR_DIR", STR_DIR_DEFAULT); - FREE(STR_MULT); - STR_MULT = language(flang, "STR_MULT", STR_MULT_DEFAULT); - FREE(STR_THM_SETTINGS); - STR_THM_SETTINGS = language(flang, "STR_THM_SETTINGS", STR_THM_SETTINGS_DEFAULT); - FREE(STR_THM); - STR_THM = language(flang, "STR_THM", STR_THM_DEFAULT); - FREE(STR_THM_DESC); - STR_THM_DESC = language(flang, "STR_THM_DESC", STR_THM_DESC_DEFAULT); - FREE(STR_CREATE); - STR_CREATE = language(flang, "STR_CREATE", STR_CREATE_DEFAULT); - FREE(STR_ZOOM_OUT); - STR_ZOOM_OUT = language(flang, "STR_ZOOM_OUT", STR_ZOOM_OUT_DEFAULT); - FREE(STR_ZOOM_IN); - STR_ZOOM_IN = language(flang, "STR_ZOOM_IN", STR_ZOOM_IN_DEFAULT); - FREE(STR_MOVE_FRAME); - STR_MOVE_FRAME = language(flang, "STR_MOVE_FRAME", STR_MOVE_FRAME_DEFAULT); - FREE(STR_CHECK); - STR_CHECK = language(flang, "STR_CHECK", STR_CHECK_DEFAULT); - FREE(STR_UNCHECK); - STR_UNCHECK = language(flang, "STR_UNCHECK", STR_UNCHECK_DEFAULT); - FREE(STR_GAME_OPTION); - STR_GAME_OPTION = language(flang, "STR_GAME_OPTION", STR_GAME_OPTION_DEFAULT); - FREE(STR_ADD_FAV); - STR_ADD_FAV = language(flang, "STR_ADD_FAV", STR_ADD_FAV_DEFAULT); - FREE(STR_REM_FAV); - STR_REM_FAV = language(flang, "STR_REM_FAV", STR_REM_FAV_DEFAULT); - FREE(STR_FAV_DESC); - STR_FAV_DESC = language(flang, "STR_FAV_DESC", STR_FAV_DESC_DEFAULT); - FREE(STR_RENAME); - STR_RENAME = language(flang, "STR_RENAME", STR_RENAME_DEFAULT); - FREE(STR_RENAME_DESC); - STR_RENAME_DESC = language(flang, "STR_RENAME_DESC", STR_RENAME_DESC_DEFAULT); - FREE(STR_DELETE); - STR_DELETE = language(flang, "STR_DELETE", STR_DELETE_DEFAULT); - FREE(STR_DELETE_DESC); - STR_DELETE_DESC = language(flang, "STR_DELETE_DESC", STR_DELETE_DESC_DEFAULT); - FREE(STR_COPY); - STR_COPY = language(flang, "STR_COPY", STR_COPY_DEFAULT); - FREE(STR_COPY_DESC); - STR_COPY_DESC = language(flang, "STR_COPY_DESC", STR_COPY_DESC_DEFAULT); - FREE(STR_CREATE_ICON0); - STR_CREATE_ICON0 = language(flang, "STR_CREATE_ICON0", STR_CREATE_ICON0_DEFAULT); - FREE(STR_CREATE_ICON0_DESC); - STR_CREATE_ICON0_DESC = language(flang, "STR_CREATE_ICON0_DESC", STR_CREATE_ICON0_DESC_DEFAULT); - FREE(STR_REST_PNACH); - STR_REST_PNACH = language(flang, "STR_REST_PNACH", STR_REST_PNACH_DEFAULT); - FREE(STR_REST_PNACH_DESC); - STR_REST_PNACH_DESC = language(flang, "STR_REST_PNACH_DESC", STR_REST_PNACH_DESC_DEFAULT); - FREE(STR_APPLY_PNACH); - STR_APPLY_PNACH = language(flang, "STR_APPLY_PNACH", STR_APPLY_PNACH_DEFAULT); - FREE(STR_APPLY_PNACH_DESC); - STR_APPLY_PNACH_DESC = language(flang, "STR_APPLY_PNACH_DESC", STR_APPLY_PNACH_DESC_DEFAULT); - FREE(STR_DISABLE_WS); - STR_DISABLE_WS = language(flang, "STR_DISABLE_WS", STR_DISABLE_WS_DEFAULT); - FREE(STR_ENABLE_WS); - STR_ENABLE_WS = language(flang, "STR_ENABLE_WS", STR_ENABLE_WS_DEFAULT); - FREE(STR_WS_DESC); - STR_WS_DESC = language(flang, "STR_WS_DESC", STR_WS_DESC_DEFAULT); - FREE(STR_DISABLE_480P); - STR_DISABLE_480P = language(flang, "STR_DISABLE_480P", STR_DISABLE_480P_DEFAULT); - FREE(STR_ENABLE_480P); - STR_ENABLE_480P = language(flang, "STR_ENABLE_480P", STR_ENABLE_480P_DEFAULT); - FREE(STR_480P_DESC); - STR_480P_DESC = language(flang, "STR_480P_DESC", STR_480P_DESC_DEFAULT); - FREE(STR_DISABLE_YFIX); - STR_DISABLE_YFIX = language(flang, "STR_DISABLE_YFIX", STR_DISABLE_YFIX_DEFAULT); - FREE(STR_ENABLE_YFIX); - STR_ENABLE_YFIX = language(flang, "STR_ENABLE_YFIX", STR_ENABLE_YFIX_DEFAULT); - FREE(STR_YFIX_DESC); - STR_YFIX_DESC = language(flang, "STR_YFIX_DESC", STR_YFIX_DESC_DEFAULT); - FREE(STR_DISABLE_FMVSKIP); - STR_DISABLE_FMVSKIP = language(flang, "STR_DISABLE_FMVSKIP", STR_DISABLE_FMVSKIP_DEFAULT); - FREE(STR_ENABLE_FMVSKIP); - STR_ENABLE_FMVSKIP = language(flang, "STR_ENABLE_FMVSKIP", STR_ENABLE_FMVSKIP_DEFAULT); - FREE(STR_FMVSKIP_DESC); - STR_FMVSKIP_DESC = language(flang, "STR_FMVSKIP_DESC", STR_FMVSKIP_DESC_DEFAULT); - FREE(STR_DISABLE_NETEMU); - STR_DISABLE_NETEMU = language(flang, "STR_DISABLE_NETEMU", STR_DISABLE_NETEMU_DEFAULT); - FREE(STR_ENABLE_NETEMU); - STR_ENABLE_NETEMU = language(flang, "STR_ENABLE_NETEMU", STR_ENABLE_NETEMU_DEFAULT); - FREE(STR_NETEMU_DESC); - STR_NETEMU_DESC = language(flang, "STR_NETEMU_DESC", STR_NETEMU_DESC_DEFAULT); - FREE(STR_SAVE_CONFIG); - STR_SAVE_CONFIG = language(flang, "STR_SAVE_CONFIG", STR_SAVE_CONFIG_DEFAULT); - FREE(STR_CONFIG); - STR_CONFIG = language(flang, "STR_CONFIG", STR_CONFIG_DEFAULT); - FREE(STR_CONFIG_DESC); - STR_CONFIG_DESC = language(flang, "STR_CONFIG_DESC", STR_CONFIG_DESC_DEFAULT); - FREE(STR_NONE); - STR_NONE = language(flang, "STR_NONE", STR_NONE_DEFAULT); - FREE(STR_CHECK_MD5); - STR_CHECK_MD5 = language(flang, "STR_CHECK_MD5", STR_CHECK_MD5_DEFAULT); - FREE(STR_PROPS); - STR_PROPS = language(flang, "STR_PROPS", STR_PROPS_DEFAULT); - FREE(STR_PROPS_DESC); - STR_PROPS_DESC = language(flang, "STR_PROPS_DESC", STR_PROPS_DESC_DEFAULT); - FREE(STR_ASK_DEL); - STR_ASK_DEL = language(flang, "STR_ASK_DEL", STR_ASK_DEL_DEFAULT); - FREE(STR_GAME_SETTINGS); - STR_GAME_SETTINGS = language(flang, "STR_GAME_SETTINGS", STR_GAME_SETTINGS_DEFAULT); - FREE(STR_DIRECT_BOOT); - STR_DIRECT_BOOT = language(flang, "STR_DIRECT_BOOT", STR_DIRECT_BOOT_DEFAULT); - FREE(STR_DIRECT_BOOT_DESC); - STR_DIRECT_BOOT_DESC = language(flang, "STR_DIRECT_BOOT_DESC", STR_DIRECT_BOOT_DESC_DEFAULT); - FREE(STR_YES); - STR_YES = language(flang, "STR_YES", STR_YES_DEFAULT); - FREE(STR_NO); - STR_NO = language(flang, "STR_NO", STR_NO_DEFAULT); - FREE(STR_CLEAN_SYSCALL); - STR_CLEAN_SYSCALL = language(flang, "STR_CLEAN_SYSCALL", STR_CLEAN_SYSCALL_DEFAULT); - FREE(STR_CLEAN_SYSCALL_DESC); - STR_CLEAN_SYSCALL_DESC = language(flang, "STR_CLEAN_SYSCALL_DESC", STR_CLEAN_SYSCALL_DESC_DEFAULT); - FREE(STR_CHANGE_IDPS); - STR_CHANGE_IDPS = language(flang, "STR_CHANGE_IDPS", STR_CHANGE_IDPS_DEFAULT); - FREE(STR_CHANGE_IDPS_DESC); - STR_CHANGE_IDPS_DESC = language(flang, "STR_CHANGE_IDPS_DESC", STR_CHANGE_IDPS_DESC_DEFAULT); - FREE(STR_EXT_GAME_DATA); - STR_EXT_GAME_DATA = language(flang, "STR_EXT_GAME_DATA", STR_EXT_GAME_DATA_DEFAULT); - FREE(STR_EXT_GAME_DATA_DESC); - STR_EXT_GAME_DATA_DESC = language(flang, "STR_EXT_GAME_DATA_DESC", STR_EXT_GAME_DATA_DESC_DEFAULT); - FREE(STR_PAYLOAD); - STR_PAYLOAD = language(flang, "STR_PAYLOAD", STR_PAYLOAD_DEFAULT); - FREE(STR_PAYLOAD_DESC); - STR_PAYLOAD_DESC = language(flang, "STR_PAYLOAD_DESC", STR_PAYLOAD_DESC_DEFAULT); - FREE(STR_PRIM_USB); - STR_PRIM_USB = language(flang, "STR_PRIM_USB", STR_PRIM_USB_DEFAULT); - FREE(STR_PRIM_USB_DESC); - STR_PRIM_USB_DESC = language(flang, "STR_PRIM_USB_DESC", STR_PRIM_USB_DESC_DEFAULT); - FREE(STR_BDEMU); - STR_BDEMU = language(flang, "STR_BDEMU", STR_BDEMU_DEFAULT); - FREE(STR_BDEMU_DESC); - STR_BDEMU_DESC = language(flang, "STR_BDEMU_DESC", STR_BDEMU_DESC_DEFAULT); - FREE(STR_PATCH_LIBFS); - STR_PATCH_LIBFS = language(flang, "STR_PATCH_LIBFS", STR_PATCH_LIBFS_DEFAULT); - FREE(STR_PATCH_LIBFS_DESC); - STR_PATCH_LIBFS_DESC = language(flang, "STR_PATCH_LIBFS_DESC", STR_PATCH_LIBFS_DESC_DEFAULT); - FREE(STR_MOUNT_APPHOME); - STR_MOUNT_APPHOME = language(flang, "STR_MOUNT_APPHOME", STR_MOUNT_APPHOME_DEFAULT); - FREE(STR_MOUNT_APPHOME_DESC); - STR_MOUNT_APPHOME_DESC = language(flang, "STR_MOUNT_APPHOME_DESC", STR_MOUNT_APPHOME_DESC_DEFAULT); - FREE(STR_PATCH_EXP); - STR_PATCH_EXP = language(flang, "STR_PATCH_EXP", STR_PATCH_EXP_DEFAULT); - FREE(STR_PATCH_EXP_DESC); - STR_PATCH_EXP_DESC = language(flang, "STR_PATCH_EXP_DESC", STR_PATCH_EXP_DESC_DEFAULT); - FREE(STR_MAKE_SHTCUT_PKG); - STR_MAKE_SHTCUT_PKG = language(flang, "STR_MAKE_SHTCUT_PKG", STR_MAKE_SHTCUT_PKG_DEFAULT); - FREE(STR_MAKE_SHTCUT_PKG_DESC); - STR_MAKE_SHTCUT_PKG_DESC = language(flang, "STR_MAKE_SHTCUT_PKG_DESC", STR_MAKE_SHTCUT_PKG_DESC_DEFAULT); - FREE(STR_PATCH_EBOOT); - STR_PATCH_EBOOT = language(flang, "STR_PATCH_EBOOT", STR_PATCH_EBOOT_DEFAULT); - FREE(STR_PATCH_EBOOT_DESC); - STR_PATCH_EBOOT_DESC = language(flang, "STR_PATCH_EBOOT_DESC", STR_PATCH_EBOOT_DESC_DEFAULT); - FREE(STR_RESIGN); - STR_RESIGN = language(flang, "STR_RESIGN", STR_RESIGN_DEFAULT); - FREE(STR_RESIGN_DESC); - STR_RESIGN_DESC = language(flang, "STR_RESIGN_DESC", STR_RESIGN_DESC_DEFAULT); - FREE(STR_RESTORE); - STR_RESTORE = language(flang, "STR_RESTORE", STR_RESTORE_DEFAULT); - FREE(STR_RESTORE_DESC); - STR_RESTORE_DESC = language(flang, "STR_RESTORE_DESC", STR_RESTORE_DESC_DEFAULT); - FREE(STR_EXTRACT_ISO); - STR_EXTRACT_ISO = language(flang, "STR_EXTRACT_ISO", STR_EXTRACT_ISO_DEFAULT); - FREE(STR_EXTRACT_ISO_DESC); - STR_EXTRACT_ISO_DESC = language(flang, "STR_EXTRACT_ISO_DESC", STR_EXTRACT_ISO_DESC_DEFAULT); - FREE(STR_CONVERT_ISO); - STR_CONVERT_ISO = language(flang, "STR_CONVERT_ISO", STR_CONVERT_ISO_DEFAULT); - FREE(STR_CONVERT_ISO_DESC); - STR_CONVERT_ISO_DESC = language(flang, "STR_CONVERT_ISO_DESC", STR_CONVERT_ISO_DESC_DEFAULT); - FREE(STR_FIX_PERMS); - STR_FIX_PERMS = language(flang, "STR_FIX_PERMS", STR_FIX_PERMS_DEFAULT); - FREE(STR_FIX_PERMS_DESC); - STR_FIX_PERMS_DESC = language(flang, "STR_FIX_PERMS_DESC", STR_FIX_PERMS_DESC_DEFAULT); - FREE(STR_CHECK_IRD); - STR_CHECK_IRD = language(flang, "STR_CHECK_IRD", STR_CHECK_IRD_DEFAULT); - FREE(STR_CHECK_DESC); - STR_CHECK_DESC = language(flang, "STR_CHECK_DESC", STR_CHECK_DESC_DEFAULT); - FREE(STR_DL_UPDATE); - STR_DL_UPDATE = language(flang, "STR_DL_UPDATE", STR_DL_UPDATE_DEFAULT); - FREE(STR_DL_UPDATE_DESC); - STR_DL_UPDATE_DESC = language(flang, "STR_DL_UPDATE_DESC", STR_DL_UPDATE_DESC_DEFAULT); - FREE(STR_OPEN_WINDOW); - STR_OPEN_WINDOW = language(flang, "STR_OPEN_WINDOW", STR_OPEN_WINDOW_DEFAULT); - FREE(STR_MOUNT_DEVBLIND); - STR_MOUNT_DEVBLIND = language(flang, "STR_MOUNT_DEVBLIND", STR_MOUNT_DEVBLIND_DEFAULT); - FREE(STR_DUMP_LV1); - STR_DUMP_LV1 = language(flang, "STR_DUMP_LV1", STR_DUMP_LV1_DEFAULT); - FREE(STR_DUMP_LV2); - STR_DUMP_LV2 = language(flang, "STR_DUMP_LV2", STR_DUMP_LV2_DEFAULT); - FREE(STR_DUMP_FLASH); - STR_DUMP_FLASH = language(flang, "STR_DUMP_FLASH", STR_DUMP_FLASH_DEFAULT); - FREE(STR_REFRESH); - STR_REFRESH = language(flang, "STR_REFRESH", STR_REFRESH_DEFAULT); - FREE(STR_NEWFOLDER); - STR_NEWFOLDER = language(flang, "STR_NEWFOLDER", STR_NEWFOLDER_DEFAULT); - FREE(STR_NEWFILE); - STR_NEWFILE = language(flang, "STR_NEWFILE", STR_NEWFILE_DEFAULT); - FREE(STR_PASTE); - STR_PASTE = language(flang, "STR_PASTE", STR_PASTE_DEFAULT); - FREE(STR_CUT); - STR_CUT = language(flang, "STR_CUT", STR_CUT_DEFAULT); - FREE(STR_UNSELECT_ALL); - STR_UNSELECT_ALL = language(flang, "STR_UNSELECT_ALL", STR_UNSELECT_ALL_DEFAULT); - FREE(STR_SELECT_ALL); - STR_SELECT_ALL = language(flang, "STR_SELECT_ALL", STR_SELECT_ALL_DEFAULT); - FREE(STR_MAKE_PKG); - STR_MAKE_PKG = language(flang, "STR_MAKE_PKG", STR_MAKE_PKG_DEFAULT); - FREE(STR_GETMD5); - STR_GETMD5 = language(flang, "STR_GETMD5", STR_GETMD5_DEFAULT); - FREE(STR_GETSHA1); - STR_GETSHA1 = language(flang, "STR_GETSHA1", STR_GETSHA1_DEFAULT); - FREE(STR_VIEW); - STR_VIEW = language(flang, "STR_VIEW", STR_VIEW_DEFAULT); - FREE(STR_VIEW_TXT); - STR_VIEW_TXT = language(flang, "STR_VIEW_TXT", STR_VIEW_TXT_DEFAULT); - FREE(STR_VIEW_SFO); - STR_VIEW_SFO = language(flang, "STR_VIEW_SFO", STR_VIEW_SFO_DEFAULT); - FREE(STR_READ_XREG); - STR_READ_XREG = language(flang, "STR_READ_XREG", STR_READ_XREG_DEFAULT); - FREE(STR_EXTRACT_ELF); - STR_EXTRACT_ELF = language(flang, "STR_EXTRACT_ELF", STR_EXTRACT_ELF_DEFAULT); - FREE(STR_RESIGN_SELF); - STR_RESIGN_SELF = language(flang, "STR_RESIGN_SELF", STR_RESIGN_SELF_DEFAULT); - FREE(STR_LAUNCH_SELF); - STR_LAUNCH_SELF = language(flang, "STR_LAUNCH_SELF", STR_LAUNCH_SELF_DEFAULT); - FREE(STR_EXTRACT_EBOOT); - STR_EXTRACT_EBOOT = language(flang, "STR_EXTRACT_EBOOT", STR_EXTRACT_EBOOT_DEFAULT); - FREE(STR_RESIGN_EBOOT); - STR_RESIGN_EBOOT = language(flang, "STR_RESIGN_EBOOT", STR_RESIGN_EBOOT_DEFAULT); - FREE(STR_LAUNCH_EBOOT); - STR_LAUNCH_EBOOT = language(flang, "STR_LAUNCH_EBOOT", STR_LAUNCH_EBOOT_DEFAULT); - FREE(STR_SIGN_ELF); - STR_SIGN_ELF = language(flang, "STR_SIGN_ELF", STR_SIGN_ELF_DEFAULT); - FREE(STR_SIGN_EBOOT); - STR_SIGN_EBOOT = language(flang, "STR_SIGN_EBOOT", STR_SIGN_EBOOT_DEFAULT); - FREE(STR_SIGN_PRX); - STR_SIGN_PRX = language(flang, "STR_SIGN_PRX", STR_SIGN_PRX_DEFAULT); - FREE(STR_EXTRACT_PRX); - STR_EXTRACT_PRX = language(flang, "STR_EXTRACT_PRX", STR_EXTRACT_PRX_DEFAULT); - FREE(STR_RESIGN_SPRX); - STR_RESIGN_SPRX = language(flang, "STR_RESIGN_SPRX", STR_RESIGN_SPRX_DEFAULT); - FREE(STR_REMOVE_PRXLOADER); - STR_REMOVE_PRXLOADER = language(flang, "STR_REMOVE_PRXLOADER", STR_REMOVE_PRXLOADER_DEFAULT); - FREE(STR_ADD_PRXLOADER); - STR_ADD_PRXLOADER = language(flang, "STR_ADD_PRXLOADER", STR_ADD_PRXLOADER_DEFAULT); - FREE(STR_REMOVE_PRXLOADER2); - STR_REMOVE_PRXLOADER2 = language(flang, "STR_REMOVE_PRXLOADER2", STR_REMOVE_PRXLOADER2_DEFAULT); - FREE(STR_ADD_PRXLOADER2); - STR_ADD_PRXLOADER2 = language(flang, "STR_ADD_PRXLOADER2", STR_ADD_PRXLOADER2_DEFAULT); - FREE(STR_REMOVE_MAMBA); - STR_REMOVE_MAMBA = language(flang, "STR_REMOVE_MAMBA", STR_REMOVE_MAMBA_DEFAULT); - FREE(STR_ADD_MAMBA); - STR_ADD_MAMBA = language(flang, "STR_ADD_MAMBA", STR_ADD_MAMBA_DEFAULT); - FREE(STR_REMOVE_COBRA); - STR_REMOVE_COBRA = language(flang, "STR_REMOVE_COBRA", STR_REMOVE_COBRA_DEFAULT); - FREE(STR_ADD_COBRA); - STR_ADD_COBRA = language(flang, "STR_ADD_COBRA", STR_ADD_COBRA_DEFAULT); - FREE(STR_EXTRACT_RCO); - STR_EXTRACT_RCO = language(flang, "STR_EXTRACT_RCO", STR_EXTRACT_RCO_DEFAULT); - FREE(STR_EXTRACT_PKG); - STR_EXTRACT_PKG = language(flang, "STR_EXTRACT_PKG", STR_EXTRACT_PKG_DEFAULT); - FREE(STR_PKG_INFO); - STR_PKG_INFO = language(flang, "STR_PKG_INFO", STR_PKG_INFO_DEFAULT); - FREE(STR_EXTRACT_TRP); - STR_EXTRACT_TRP = language(flang, "STR_EXTRACT_TRP", STR_EXTRACT_TRP_DEFAULT); - FREE(STR_COMPRESS_ISO); - STR_COMPRESS_ISO = language(flang, "STR_COMPRESS_ISO", STR_COMPRESS_ISO_DEFAULT); - FREE(STR_CHECK_CRC32); - STR_CHECK_CRC32 = language(flang, "STR_CHECK_CRC32", STR_CHECK_CRC32_DEFAULT); - FREE(STR_DECOMPRESS_CSO); - STR_DECOMPRESS_CSO = language(flang, "STR_DECOMPRESS_CSO", STR_DECOMPRESS_CSO_DEFAULT); - FREE(STR_EXTRACT_THM); - STR_EXTRACT_THM = language(flang, "STR_EXTRACT_THM", STR_EXTRACT_THM_DEFAULT); - FREE(STR_EXTRACT_P3T); - STR_EXTRACT_P3T = language(flang, "STR_EXTRACT_P3T", STR_EXTRACT_P3T_DEFAULT); - FREE(STR_EXTRACT_RAF); - STR_EXTRACT_RAF = language(flang, "STR_EXTRACT_RAF", STR_EXTRACT_RAF_DEFAULT); - FREE(STR_EXTRACT_QRC); - STR_EXTRACT_QRC = language(flang, "STR_EXTRACT_QRC", STR_EXTRACT_QRC_DEFAULT); - FREE(STR_EXTRACT_ZIP); - STR_EXTRACT_ZIP = language(flang, "STR_EXTRACT_ZIP", STR_EXTRACT_ZIP_DEFAULT); - FREE(STR_CONVERT_JSX_JS); - STR_CONVERT_JSX_JS = language(flang, "STR_CONVERT_JSX_JS", STR_CONVERT_JSX_JS_DEFAULT); - FREE(STR_CONVERT_VAG_WAV); - STR_CONVERT_VAG_WAV = language(flang, "STR_CONVERT_VAG_WAV", STR_CONVERT_VAG_WAV_DEFAULT); - FREE(STR_CONVERT_GTF_DDS); - STR_CONVERT_GTF_DDS = language(flang, "STR_CONVERT_GTF_DDS", STR_CONVERT_GTF_DDS_DEFAULT); - FREE(STR_CONVERT_DDS_PNG); - STR_CONVERT_DDS_PNG = language(flang, "STR_CONVERT_DDS_PNG", STR_CONVERT_DDS_PNG_DEFAULT); - FREE(STR_MAKE_APNG); - STR_MAKE_APNG = language(flang, "STR_MAKE_APNG", STR_MAKE_APNG_DEFAULT); - FREE(STR_SET_PERMS); - STR_SET_PERMS = language(flang, "STR_SET_PERMS", STR_SET_PERMS_DEFAULT); - FREE(STR_NOGAME); - STR_NOGAME = language(flang, "STR_NOGAME", STR_NOGAME_DEFAULT); - FREE(STR_GLOB_SETTINGS); - STR_GLOB_SETTINGS = language(flang, "STR_GLOB_SETTINGS", STR_GLOB_SETTINGS_DEFAULT); - FREE(STR_ADJUST); - STR_ADJUST = language(flang, "STR_ADJUST", STR_ADJUST_DEFAULT); - FREE(STR_ADJUST_DESC); - STR_ADJUST_DESC = language(flang, "STR_ADJUST_DESC", STR_ADJUST_DESC_DEFAULT); - FREE(STR_DL_COVER); - STR_DL_COVER = language(flang, "STR_DL_COVER", STR_DL_COVER_DEFAULT); - FREE(STR_DL_COVER_DESC); - STR_DL_COVER_DESC = language(flang, "STR_DL_COVER_DESC", STR_DL_COVER_DESC_DEFAULT); - FREE(STR_PLUGIN_MANAGER); - STR_PLUGIN_MANAGER = language(flang, "STR_PLUGIN_MANAGER", STR_PLUGIN_MANAGER_DEFAULT); - FREE(STR_PLUGIN_MANAGER_DESC); - STR_PLUGIN_MANAGER_DESC = language(flang, "STR_PLUGIN_MANAGER_DESC", STR_PLUGIN_MANAGER_DESC_DEFAULT); - FREE(STR_UPD_MGZ); - STR_UPD_MGZ = language(flang, "STR_UPD_MGZ", STR_UPD_MGZ_DEFAULT); - FREE(STR_UPD_MGZ_DESC); - STR_UPD_MGZ_DESC = language(flang, "STR_UPD_MGZ_DESC", STR_UPD_MGZ_DESC_DEFAULT); - FREE(STR_GAME_PATHS); - STR_GAME_PATHS = language(flang, "STR_GAME_PATHS", STR_GAME_PATHS_DEFAULT); - FREE(STR_GAME_PATHS_DESC); - STR_GAME_PATHS_DESC = language(flang, "STR_GAME_PATHS_DESC", STR_GAME_PATHS_DESC_DEFAULT); - FREE(STR_XMB_PRIO); - STR_XMB_PRIO = language(flang, "STR_XMB_PRIO", STR_XMB_PRIO_DEFAULT); - FREE(STR_XMB_PRIO_DESC); - STR_XMB_PRIO_DESC = language(flang, "STR_XMB_PRIO_DESC", STR_XMB_PRIO_DESC_DEFAULT); - FREE(STR_HELP); - STR_HELP = language(flang, "STR_HELP", STR_HELP_DEFAULT); - FREE(STR_HELP_DESC); - STR_HELP_DESC = language(flang, "STR_HELP_DESC", STR_HELP_DESC_DEFAULT); - FREE(STR_COLOR_1); - STR_COLOR_1 = language(flang, "STR_COLOR_1", STR_COLOR_1_DEFAULT); - FREE(STR_COLOR_2); - STR_COLOR_2 = language(flang, "STR_COLOR_2", STR_COLOR_2_DEFAULT); - FREE(STR_COLOR_3); - STR_COLOR_3 = language(flang, "STR_COLOR_3", STR_COLOR_3_DEFAULT); - FREE(STR_COLOR_4); - STR_COLOR_4 = language(flang, "STR_COLOR_4", STR_COLOR_4_DEFAULT); - FREE(STR_COLOR_DESC); - STR_COLOR_DESC = language(flang, "STR_COLOR_DESC", STR_COLOR_DESC_DEFAULT); - FREE(STR_UI_SETTINGS); - STR_UI_SETTINGS = language(flang, "STR_UI_SETTINGS", STR_UI_SETTINGS_DEFAULT); - FREE(STR_UI); - STR_UI = language(flang, "STR_UI", STR_UI_DEFAULT); - FREE(STR_UI_DESC); - STR_UI_DESC = language(flang, "STR_UI_DESC", STR_UI_DESC_DEFAULT); - FREE(STR_SIDE_MENU); - STR_SIDE_MENU = language(flang, "STR_SIDE_MENU", STR_SIDE_MENU_DEFAULT); - FREE(STR_SIDE_MENU_DESC); - STR_SIDE_MENU_DESC = language(flang, "STR_SIDE_MENU_DESC", STR_SIDE_MENU_DESC_DEFAULT); - FREE(STR_SHOW_PIC1); - STR_SHOW_PIC1 = language(flang, "STR_SHOW_PIC1", STR_SHOW_PIC1_DEFAULT); - FREE(STR_SHOW_PIC1_DESC); - STR_SHOW_PIC1_DESC = language(flang, "STR_SHOW_PIC1_DESC", STR_SHOW_PIC1_DESC_DEFAULT); - FREE(STR_SHOW_COVER); - STR_SHOW_COVER = language(flang, "STR_SHOW_COVER", STR_SHOW_COVER_DEFAULT); - FREE(STR_SHOW_COVER_DESC); - STR_SHOW_COVER_DESC = language(flang, "STR_SHOW_COVER_DESC", STR_SHOW_COVER_DESC_DEFAULT); - FREE(STR_SHOW_GAMECASE); - STR_SHOW_GAMECASE = language(flang, "STR_SHOW_GAMECASE", STR_SHOW_GAMECASE_DEFAULT); - FREE(STR_SHOW_GAMECASE_DESC); - STR_SHOW_GAMECASE_DESC = language(flang, "STR_SHOW_GAMECASE_DESC", STR_SHOW_GAMECASE_DESC_DEFAULT); - FREE(STR_SHOW_ICON0); - STR_SHOW_ICON0 = language(flang, "STR_SHOW_ICON0", STR_SHOW_ICON0_DEFAULT); - FREE(STR_SHOW_ICON0_DESC); - STR_SHOW_ICON0_DESC = language(flang, "STR_SHOW_ICON0_DESC", STR_SHOW_ICON0_DESC_DEFAULT); - FREE(STR_GRID_TYPE); - STR_GRID_TYPE = language(flang, "STR_GRID_TYPE", STR_GRID_TYPE_DEFAULT); - FREE(STR_GRID_TYPE_DESC); - STR_GRID_TYPE_DESC = language(flang, "STR_GRID_TYPE_DESC", STR_GRID_TYPE_DESC_DEFAULT); - FREE(STR_SCROLL); - STR_SCROLL = language(flang, "STR_SCROLL", STR_SCROLL_DEFAULT); - FREE(STR_PAGE); - STR_PAGE = language(flang, "STR_PAGE", STR_PAGE_DEFAULT); - FREE(STR_DIRECTION); - STR_DIRECTION = language(flang, "STR_DIRECTION", STR_DIRECTION_DEFAULT); - FREE(STR_DIRECTION_DESC); - STR_DIRECTION_DESC = language(flang, "STR_DIRECTION_DESC", STR_DIRECTION_DESC_DEFAULT); - FREE(STR_VERTICAL); - STR_VERTICAL = language(flang, "STR_VERTICAL", STR_VERTICAL_DEFAULT); - FREE(STR_HORIZONTAL); - STR_HORIZONTAL = language(flang, "STR_HORIZONTAL", STR_HORIZONTAL_DEFAULT); - FREE(STR_ANIMATED); - STR_ANIMATED = language(flang, "STR_ANIMATED", STR_ANIMATED_DEFAULT); - FREE(STR_ANIMATED_DESC); - STR_ANIMATED_DESC = language(flang, "STR_ANIMATED_DESC", STR_ANIMATED_DESC_DEFAULT); - FREE(STR_KEEP_PROP); - STR_KEEP_PROP = language(flang, "STR_KEEP_PROP", STR_KEEP_PROP_DEFAULT); - FREE(STR_KEEP_PROP_DESC); - STR_KEEP_PROP_DESC = language(flang, "STR_KEEP_PROP_DESC", STR_KEEP_PROP_DESC_DEFAULT); - FREE(STR_NB_COL); - STR_NB_COL = language(flang, "STR_NB_COL", STR_NB_COL_DEFAULT); - FREE(STR_NB_COL_DESC); - STR_NB_COL_DESC = language(flang, "STR_NB_COL_DESC", STR_NB_COL_DESC_DEFAULT); - FREE(STR_NB_LINE); - STR_NB_LINE = language(flang, "STR_NB_LINE", STR_NB_LINE_DEFAULT); - FREE(STR_NB_LINE_DESC); - STR_NB_LINE_DESC = language(flang, "STR_NB_LINE_DESC", STR_NB_LINE_DESC_DEFAULT); - FREE(STR_INVERSE); - STR_INVERSE = language(flang, "STR_INVERSE", STR_INVERSE_DEFAULT); - FREE(STR_INVERSE_DESC); - STR_INVERSE_DESC = language(flang, "STR_INVERSE_DESC", STR_INVERSE_DESC_DEFAULT); - FREE(STR_3D); - STR_3D = language(flang, "STR_3D", STR_3D_DEFAULT); - FREE(STR_3D_DESC); - STR_3D_DESC = language(flang, "STR_3D_DESC", STR_3D_DESC_DEFAULT); - FREE(STR_ADD); - STR_ADD = language(flang, "STR_ADD", STR_ADD_DEFAULT); - FREE(STR_LOAD); - STR_LOAD = language(flang, "STR_LOAD", STR_LOAD_DEFAULT); - FREE(STR_CHANGE); - STR_CHANGE = language(flang, "STR_CHANGE", STR_CHANGE_DEFAULT); - FREE(STR_COLOR); - STR_COLOR = language(flang, "STR_COLOR", STR_COLOR_DEFAULT); - FREE(STR_RESET); - STR_RESET = language(flang, "STR_RESET", STR_RESET_DEFAULT); - FREE(STR_FAILED); - STR_FAILED = language(flang, "STR_FAILED", STR_FAILED_DEFAULT); - FREE(STR_DONE); - STR_DONE = language(flang, "STR_DONE", STR_DONE_DEFAULT); - FREE(STR_OPEN); - STR_OPEN = language(flang, "STR_OPEN", STR_OPEN_DEFAULT); - FREE(STR_CLOSE); - STR_CLOSE = language(flang, "STR_CLOSE", STR_CLOSE_DEFAULT); - FREE(STR_OPTION); - STR_OPTION = language(flang, "STR_OPTION", STR_OPTION_DEFAULT); - FREE(STR_SELECT); - STR_SELECT = language(flang, "STR_SELECT", STR_SELECT_DEFAULT); - FREE(STR_WINDOW); - STR_WINDOW = language(flang, "STR_WINDOW", STR_WINDOW_DEFAULT); - FREE(STR_CLICK); - STR_CLICK = language(flang, "STR_CLICK", STR_CLICK_DEFAULT); - FREE(STR_CURSOR); - STR_CURSOR = language(flang, "STR_CURSOR", STR_CURSOR_DEFAULT); - FREE(STR_NEXT); - STR_NEXT = language(flang, "STR_NEXT", STR_NEXT_DEFAULT); - FREE(STR_PREVIOUS); - STR_PREVIOUS = language(flang, "STR_PREVIOUS", STR_PREVIOUS_DEFAULT); - FREE(STR_SET_COLOR); - STR_SET_COLOR = language(flang, "STR_SET_COLOR", STR_SET_COLOR_DEFAULT); - FREE(STR_HIDETV); - STR_HIDETV = language(flang, "STR_HIDETV", STR_HIDETV_DEFAULT); - FREE(STR_SHOWTV); - STR_SHOWTV = language(flang, "STR_SHOWTV", STR_SHOWTV_DEFAULT); - FREE(STR_MOVE_TO_PLUGINS); - STR_MOVE_TO_PLUGINS = language(flang, "STR_MOVE_TO_PLUGINS", STR_MOVE_TO_PLUGINS_DEFAULT); - FREE(STR_ASK_PLUGINS); - STR_ASK_PLUGINS = language(flang, "STR_ASK_PLUGINS", STR_ASK_PLUGINS_DEFAULT); - FREE(STR_CHANGE_VALUE); - STR_CHANGE_VALUE = language(flang, "STR_CHANGE_VALUE", STR_CHANGE_VALUE_DEFAULT); - FREE(STR_LOAD_IDPS_LV2); - STR_LOAD_IDPS_LV2 = language(flang, "STR_LOAD_IDPS_LV2", STR_LOAD_IDPS_LV2_DEFAULT); - FREE(STR_LOAD_IDPS_EID5); - STR_LOAD_IDPS_EID5 = language(flang, "STR_LOAD_IDPS_EID5", STR_LOAD_IDPS_EID5_DEFAULT); - FREE(STR_NAME); - STR_NAME = language(flang, "STR_NAME", STR_NAME_DEFAULT); - FREE(STR_DOCK_RIGHT); - STR_DOCK_RIGHT = language(flang, "STR_DOCK_RIGHT", STR_DOCK_RIGHT_DEFAULT); - FREE(STR_DOCK_LEFT); - STR_DOCK_LEFT = language(flang, "STR_DOCK_LEFT", STR_DOCK_LEFT_DEFAULT); - FREE(STR_DOCK_FULL); - STR_DOCK_FULL = language(flang, "STR_DOCK_FULL", STR_DOCK_FULL_DEFAULT); - FREE(STR_PLUGIN_MONITOR); - STR_PLUGIN_MONITOR = language(flang, "STR_PLUGIN_MONITOR", STR_PLUGIN_MONITOR_DEFAULT); - FREE(STR_UNUSED); - STR_UNUSED = language(flang, "STR_UNUSED", STR_UNUSED_DEFAULT); - FREE(STR_UNLOAD); - STR_UNLOAD = language(flang, "STR_UNLOAD", STR_UNLOAD_DEFAULT); - FREE(STR_BOOT_FILE); - STR_BOOT_FILE = language(flang, "STR_BOOT_FILE", STR_BOOT_FILE_DEFAULT); - FREE(STR_CURRENT); - STR_CURRENT = language(flang, "STR_CURRENT", STR_CURRENT_DEFAULT); - FREE(STR_NET); - STR_NET = language(flang, "STR_NET", STR_NET_DEFAULT); - FREE(STR_SOFT); - STR_SOFT = language(flang, "STR_SOFT", STR_SOFT_DEFAULT); - FREE(STR_GX); - STR_GX = language(flang, "STR_GX", STR_GX_DEFAULT); - FREE(STR_CUSTOM); - STR_CUSTOM = language(flang, "STR_CUSTOM", STR_CUSTOM_DEFAULT); - FREE(STR_NEW_CMD); - STR_NEW_CMD = language(flang, "STR_NEW_CMD", STR_NEW_CMD_DEFAULT); - FREE(STR_PNACH); - STR_PNACH = language(flang, "STR_PNACH", STR_PNACH_DEFAULT); - FREE(STR_WIDESCREEN); - STR_WIDESCREEN = language(flang, "STR_WIDESCREEN", STR_WIDESCREEN_DEFAULT); - FREE(STR_480P); - STR_480P = language(flang, "STR_480P", STR_480P_DEFAULT); - FREE(STR_YFIX); - STR_YFIX = language(flang, "STR_YFIX", STR_YFIX_DEFAULT); - FREE(STR_FMV); - STR_FMV = language(flang, "STR_FMV", STR_FMV_DEFAULT); - FREE(STR_SIMPLE); - STR_SIMPLE = language(flang, "STR_SIMPLE", STR_SIMPLE_DEFAULT); - FREE(STR_ADVANCED); - STR_ADVANCED = language(flang, "STR_ADVANCED", STR_ADVANCED_DEFAULT); - FREE(STR_INSTALL_MGZ); - STR_INSTALL_MGZ = language(flang, "STR_INSTALL_MGZ", STR_INSTALL_MGZ_DEFAULT); - FREE(STR_UP2DATE); - STR_UP2DATE = language(flang, "STR_UP2DATE", STR_UP2DATE_DEFAULT); - FREE(STR_SHOW_WAVES); - STR_SHOW_WAVES = language(flang, "STR_SHOW_WAVES", STR_SHOW_WAVES_DEFAULT); - FREE(STR_SHOW_WAVES_DESC); - STR_SHOW_WAVES_DESC = language(flang, "STR_SHOW_WAVES_DESC", STR_SHOW_WAVES_DESC_DEFAULT); - FREE(STR_WAVES_COLOR); - STR_WAVES_COLOR = language(flang, "STR_WAVES_COLOR", STR_WAVES_COLOR_DEFAULT); - FREE(STR_WAVES_COLOR_DESC); - STR_WAVES_COLOR_DESC = language(flang, "STR_WAVES_COLOR_DESC", STR_WAVES_COLOR_DESC_DEFAULT); - FREE(STR_USE_CONFIG); - STR_USE_CONFIG = language(flang, "STR_USE_CONFIG", STR_USE_CONFIG_DEFAULT); - FREE(STR_COLORSET); - STR_COLORSET = language(flang, "STR_COLORSET", STR_COLORSET_DEFAULT); - FREE(STR_COLORSET_DESC); - STR_COLORSET_DESC = language(flang, "STR_COLORSET_DESC", STR_COLORSET_DESC_DEFAULT); - FREE(STR_GRID_SCROLL); - STR_GRID_SCROLL = language(flang, "STR_GRID_SCROLL", STR_GRID_SCROLL_DEFAULT); - FREE(STR_ADD_LIMG); - STR_ADD_LIMG = language(flang, "STR_ADD_LIMG", STR_ADD_LIMG_DEFAULT); - FREE(STR_REMOVE_LIMG); - STR_REMOVE_LIMG = language(flang, "STR_REMOVE_LIMG", STR_REMOVE_LIMG_DEFAULT); - FREE(STR_LIMG_DESC); - STR_LIMG_DESC = language(flang, "STR_LIMG_DESC", STR_LIMG_DESC_DEFAULT); - FREE(STR_FONT); - STR_FONT = language(flang, "STR_FONT", STR_FONT_DEFAULT); - FREE(STR_FONT_DESC); - STR_FONT_DESC = language(flang, "STR_FONT_DESC", STR_FONT_DESC_DEFAULT); - FREE(STR_MOVE); - STR_MOVE = language(flang, "STR_MOVE", STR_MOVE_DEFAULT); - FREE(STR_JOIN); - STR_JOIN = language(flang, "STR_JOIN", STR_JOIN_DEFAULT); - FREE(STR_JOIN_DESC); - STR_JOIN_DESC = language(flang, "STR_JOIN_DESC", STR_JOIN_DESC_DEFAULT); - - FCLOSE(flang); + int flang_size=0; + char *flang=NULL; + if(lang>0) flang = LoadFile(lang_path[lang], &flang_size); + + LANG(STR_LANG, "STR_LANG", STR_LANG_DEFAULT); + LANG(STR_LANG_DESC, "STR_LANG_DESC", STR_LANG_DESC_DEFAULT); + LANG(STR_GATHERING, "STR_GATHERING", STR_GATHERING_DEFAULT); + LANG(STR_COPYING, "STR_COPYING", STR_COPYING_DEFAULT); + LANG(STR_FROM, "STR_FROM", STR_FROM_DEFAULT); + LANG(STR_TO, "STR_TO", STR_TO_DEFAULT); + LANG(STR_FILES, "STR_FILES", STR_FILES_DEFAULT); + LANG(STR_DIRS, "STR_DIRS", STR_DIRS_DEFAULT); + LANG(STR_UNKNOWN, "STR_UNKNOWN", STR_UNKNOWN_DEFAULT); + LANG(STR_FILE, "STR_FILE", STR_FILE_DEFAULT); + LANG(STR_CANCEL, "STR_CANCEL", STR_CANCEL_DEFAULT); + LANG(STR_TURNOFF_YES, "STR_TURNOFF_YES", STR_TURNOFF_YES_DEFAULT); + LANG(STR_TURNOFF_NO, "STR_TURNOFF_NO", STR_TURNOFF_NO_DEFAULT); + LANG(STR_CANCELLED, "STR_CANCELLED", STR_CANCELLED_DEFAULT); + LANG(STR_UNIT, "STR_UNIT", STR_UNIT_DEFAULT); + LANG(STR_TOTALSIZE, "STR_TOTALSIZE", STR_TOTALSIZE_DEFAULT); + LANG(STR_HIDELOGS, "STR_HIDELOGS", STR_HIDELOGS_DEFAULT); + LANG(STR_SHOWLOGS, "STR_SHOWLOGS", STR_SHOWLOGS_DEFAULT); + LANG(STR_BOOST, "STR_BOOST", STR_BOOST_DEFAULT); + LANG(STR_GAMEMENU, "STR_GAMEMENU", STR_GAMEMENU_DEFAULT); + LANG(STR_SETTINGS, "STR_SETTINGS", STR_SETTINGS_DEFAULT); + LANG(STR_MOUNTGAME, "STR_MOUNTGAME", STR_MOUNTGAME_DEFAULT); + LANG(STR_FILTER, "STR_FILTER", STR_FILTER_DEFAULT); + LANG(STR_FAVORITE, "STR_FAVORITE", STR_FAVORITE_DEFAULT); + LANG(STR_FILEMANAGER, "STR_FILEMANAGER", STR_FILEMANAGER_DEFAULT); + LANG(STR_HOLD, "STR_HOLD", STR_HOLD_DEFAULT); + LANG(STR_EXIT, "STR_EXIT", STR_EXIT_DEFAULT); + LANG(STR_GAME_PROP, "STR_GAME_PROP", STR_GAME_PROP_DEFAULT); + LANG(STR_GAME_TITLE, "STR_GAME_TITLE", STR_GAME_TITLE_DEFAULT); + LANG(STR_GAME_PATH, "STR_GAME_PATH", STR_GAME_PATH_DEFAULT); + LANG(STR_GAME_FORMAT, "STR_GAME_FORMAT", STR_GAME_FORMAT_DEFAULT); + LANG(STR_GAME_SIZE, "STR_GAME_SIZE", STR_GAME_SIZE_DEFAULT); + LANG(STR_GAME_PLATFORM, "STR_GAME_PLATFORM", STR_GAME_PLATFORM_DEFAULT); + LANG(STR_SYSVERS, "STR_SYSVERS", STR_SYSVERS_DEFAULT); + LANG(STR_GAMEID, "STR_GAMEID", STR_GAMEID_DEFAULT); + LANG(STR_ELFCRC, "STR_ELFCRC", STR_ELFCRC_DEFAULT); + LANG(STR_ELFCRCO, "STR_ELFCRCO", STR_ELFCRCO_DEFAULT); + LANG(STR_BACK, "STR_BACK", STR_BACK_DEFAULT); + LANG(STR_ENTER, "STR_ENTER", STR_ENTER_DEFAULT); + LANG(STR_UPDATE_FOUND, "STR_UPDATE_FOUND", STR_UPDATE_FOUND_DEFAULT); + LANG(STR_UPDATE, "STR_UPDATE", STR_UPDATE_DEFAULT); + LANG(STR_SIZE, "STR_SIZE", STR_SIZE_DEFAULT); + LANG(STR_SYSTEM, "STR_SYSTEM", STR_SYSTEM_DEFAULT); + LANG(STR_DL, "STR_DL", STR_DL_DEFAULT); + LANG(STR_DL_ALL, "STR_DL_ALL", STR_DL_ALL_DEFAULT); + LANG(STR_UNPLUG, "STR_UNPLUG", STR_UNPLUG_DEFAULT); + LANG(STR_PATH, "STR_PATH", STR_PATH_DEFAULT); + LANG(STR_TYPE, "STR_TYPE", STR_TYPE_DEFAULT); + LANG(STR_FOLDER, "STR_FOLDER", STR_FOLDER_DEFAULT); + LANG(STR_DIR, "STR_DIR", STR_DIR_DEFAULT); + LANG(STR_MULT, "STR_MULT", STR_MULT_DEFAULT); + LANG(STR_THM_SETTINGS, "STR_THM_SETTINGS", STR_THM_SETTINGS_DEFAULT); + LANG(STR_THM, "STR_THM", STR_THM_DEFAULT); + LANG(STR_THM_DESC, "STR_THM_DESC", STR_THM_DESC_DEFAULT); + LANG(STR_CREATE, "STR_CREATE", STR_CREATE_DEFAULT); + LANG(STR_ZOOM_OUT, "STR_ZOOM_OUT", STR_ZOOM_OUT_DEFAULT); + LANG(STR_ZOOM_IN, "STR_ZOOM_IN", STR_ZOOM_IN_DEFAULT); + LANG(STR_MOVE_FRAME, "STR_MOVE_FRAME", STR_MOVE_FRAME_DEFAULT); + LANG(STR_CHECK, "STR_CHECK", STR_CHECK_DEFAULT); + LANG(STR_UNCHECK, "STR_UNCHECK", STR_UNCHECK_DEFAULT); + LANG(STR_GAME_OPTION, "STR_GAME_OPTION", STR_GAME_OPTION_DEFAULT); + LANG(STR_ADD_FAV, "STR_ADD_FAV", STR_ADD_FAV_DEFAULT); + LANG(STR_REM_FAV, "STR_REM_FAV", STR_REM_FAV_DEFAULT); + LANG(STR_FAV_DESC, "STR_FAV_DESC", STR_FAV_DESC_DEFAULT); + LANG(STR_RENAME, "STR_RENAME", STR_RENAME_DEFAULT); + LANG(STR_RENAME_DESC, "STR_RENAME_DESC", STR_RENAME_DESC_DEFAULT); + LANG(STR_DELETE, "STR_DELETE", STR_DELETE_DEFAULT); + LANG(STR_DELETE_DESC, "STR_DELETE_DESC", STR_DELETE_DESC_DEFAULT); + LANG(STR_COPY, "STR_COPY", STR_COPY_DEFAULT); + LANG(STR_COPY_DESC, "STR_COPY_DESC", STR_COPY_DESC_DEFAULT); + LANG(STR_CREATE_ICON0, "STR_CREATE_ICON0", STR_CREATE_ICON0_DEFAULT); + LANG(STR_CREATE_ICON0_DESC, "STR_CREATE_ICON0_DESC", STR_CREATE_ICON0_DESC_DEFAULT); + LANG(STR_REST_PNACH, "STR_REST_PNACH", STR_REST_PNACH_DEFAULT); + LANG(STR_REST_PNACH_DESC, "STR_REST_PNACH_DESC", STR_REST_PNACH_DESC_DEFAULT); + LANG(STR_APPLY_PNACH, "STR_APPLY_PNACH", STR_APPLY_PNACH_DEFAULT); + LANG(STR_APPLY_PNACH_DESC, "STR_APPLY_PNACH_DESC", STR_APPLY_PNACH_DESC_DEFAULT); + LANG(STR_DISABLE_WS, "STR_DISABLE_WS", STR_DISABLE_WS_DEFAULT); + LANG(STR_ENABLE_WS, "STR_ENABLE_WS", STR_ENABLE_WS_DEFAULT); + LANG(STR_WS_DESC, "STR_WS_DESC", STR_WS_DESC_DEFAULT); + LANG(STR_DISABLE_480P, "STR_DISABLE_480P", STR_DISABLE_480P_DEFAULT); + LANG(STR_ENABLE_480P, "STR_ENABLE_480P", STR_ENABLE_480P_DEFAULT); + LANG(STR_480P_DESC, "STR_480P_DESC", STR_480P_DESC_DEFAULT); + LANG(STR_DISABLE_YFIX, "STR_DISABLE_YFIX", STR_DISABLE_YFIX_DEFAULT); + LANG(STR_ENABLE_YFIX, "STR_ENABLE_YFIX", STR_ENABLE_YFIX_DEFAULT); + LANG(STR_YFIX_DESC, "STR_YFIX_DESC", STR_YFIX_DESC_DEFAULT); + LANG(STR_DISABLE_FMVSKIP, "STR_DISABLE_FMVSKIP", STR_DISABLE_FMVSKIP_DEFAULT); + LANG(STR_ENABLE_FMVSKIP, "STR_ENABLE_FMVSKIP", STR_ENABLE_FMVSKIP_DEFAULT); + LANG(STR_FMVSKIP_DESC, "STR_FMVSKIP_DESC", STR_FMVSKIP_DESC_DEFAULT); + LANG(STR_DISABLE_NETEMU, "STR_DISABLE_NETEMU", STR_DISABLE_NETEMU_DEFAULT); + LANG(STR_ENABLE_NETEMU, "STR_ENABLE_NETEMU", STR_ENABLE_NETEMU_DEFAULT); + LANG(STR_NETEMU_DESC, "STR_NETEMU_DESC", STR_NETEMU_DESC_DEFAULT); + LANG(STR_SAVE_CONFIG, "STR_SAVE_CONFIG", STR_SAVE_CONFIG_DEFAULT); + LANG(STR_CONFIG, "STR_CONFIG", STR_CONFIG_DEFAULT); + LANG(STR_CONFIG_DESC, "STR_CONFIG_DESC", STR_CONFIG_DESC_DEFAULT); + LANG(STR_NONE, "STR_NONE", STR_NONE_DEFAULT); + LANG(STR_CHECK_MD5, "STR_CHECK_MD5", STR_CHECK_MD5_DEFAULT); + LANG(STR_PROPS, "STR_PROPS", STR_PROPS_DEFAULT); + LANG(STR_PROPS_DESC, "STR_PROPS_DESC", STR_PROPS_DESC_DEFAULT); + LANG(STR_ASK_DEL, "STR_ASK_DEL", STR_ASK_DEL_DEFAULT); + LANG(STR_GAME_SETTINGS, "STR_GAME_SETTINGS", STR_GAME_SETTINGS_DEFAULT); + LANG(STR_DIRECT_BOOT, "STR_DIRECT_BOOT", STR_DIRECT_BOOT_DEFAULT); + LANG(STR_DIRECT_BOOT_DESC, "STR_DIRECT_BOOT_DESC", STR_DIRECT_BOOT_DESC_DEFAULT); + LANG(STR_YES, "STR_YES", STR_YES_DEFAULT); + LANG(STR_NO, "STR_NO", STR_NO_DEFAULT); + LANG(STR_CLEAN_SYSCALL, "STR_CLEAN_SYSCALL", STR_CLEAN_SYSCALL_DEFAULT); + LANG(STR_CLEAN_SYSCALL_DESC, "STR_CLEAN_SYSCALL_DESC", STR_CLEAN_SYSCALL_DESC_DEFAULT); + LANG(STR_CHANGE_IDPS, "STR_CHANGE_IDPS", STR_CHANGE_IDPS_DEFAULT); + LANG(STR_CHANGE_IDPS_DESC, "STR_CHANGE_IDPS_DESC", STR_CHANGE_IDPS_DESC_DEFAULT); + LANG(STR_EXT_GAME_DATA, "STR_EXT_GAME_DATA", STR_EXT_GAME_DATA_DEFAULT); + LANG(STR_EXT_GAME_DATA_DESC, "STR_EXT_GAME_DATA_DESC", STR_EXT_GAME_DATA_DESC_DEFAULT); + LANG(STR_PAYLOAD, "STR_PAYLOAD", STR_PAYLOAD_DEFAULT); + LANG(STR_PAYLOAD_DESC, "STR_PAYLOAD_DESC", STR_PAYLOAD_DESC_DEFAULT); + LANG(STR_PRIM_USB, "STR_PRIM_USB", STR_PRIM_USB_DEFAULT); + LANG(STR_PRIM_USB_DESC, "STR_PRIM_USB_DESC", STR_PRIM_USB_DESC_DEFAULT); + LANG(STR_BDEMU, "STR_BDEMU", STR_BDEMU_DEFAULT); + LANG(STR_BDEMU_DESC, "STR_BDEMU_DESC", STR_BDEMU_DESC_DEFAULT); + LANG(STR_PATCH_LIBFS, "STR_PATCH_LIBFS", STR_PATCH_LIBFS_DEFAULT); + LANG(STR_PATCH_LIBFS_DESC, "STR_PATCH_LIBFS_DESC", STR_PATCH_LIBFS_DESC_DEFAULT); + LANG(STR_MOUNT_APPHOME, "STR_MOUNT_APPHOME", STR_MOUNT_APPHOME_DEFAULT); + LANG(STR_MOUNT_APPHOME_DESC, "STR_MOUNT_APPHOME_DESC", STR_MOUNT_APPHOME_DESC_DEFAULT); + LANG(STR_PATCH_EXP, "STR_PATCH_EXP", STR_PATCH_EXP_DEFAULT); + LANG(STR_PATCH_EXP_DESC, "STR_PATCH_EXP_DESC", STR_PATCH_EXP_DESC_DEFAULT); + LANG(STR_MAKE_SHTCUT_PKG, "STR_MAKE_SHTCUT_PKG", STR_MAKE_SHTCUT_PKG_DEFAULT); + LANG(STR_MAKE_SHTCUT_PKG_DESC, "STR_MAKE_SHTCUT_PKG_DESC", STR_MAKE_SHTCUT_PKG_DESC_DEFAULT); + LANG(STR_PATCH_EBOOT, "STR_PATCH_EBOOT", STR_PATCH_EBOOT_DEFAULT); + LANG(STR_PATCH_EBOOT_DESC, "STR_PATCH_EBOOT_DESC", STR_PATCH_EBOOT_DESC_DEFAULT); + LANG(STR_RESIGN, "STR_RESIGN", STR_RESIGN_DEFAULT); + LANG(STR_RESIGN_DESC, "STR_RESIGN_DESC", STR_RESIGN_DESC_DEFAULT); + LANG(STR_RESTORE, "STR_RESTORE", STR_RESTORE_DEFAULT); + LANG(STR_RESTORE_DESC, "STR_RESTORE_DESC", STR_RESTORE_DESC_DEFAULT); + LANG(STR_EXTRACT_ISO, "STR_EXTRACT_ISO", STR_EXTRACT_ISO_DEFAULT); + LANG(STR_EXTRACT_ISO_DESC, "STR_EXTRACT_ISO_DESC", STR_EXTRACT_ISO_DESC_DEFAULT); + LANG(STR_CONVERT_ISO, "STR_CONVERT_ISO", STR_CONVERT_ISO_DEFAULT); + LANG(STR_CONVERT_ISO_DESC, "STR_CONVERT_ISO_DESC", STR_CONVERT_ISO_DESC_DEFAULT); + LANG(STR_FIX_PERMS, "STR_FIX_PERMS", STR_FIX_PERMS_DEFAULT); + LANG(STR_FIX_PERMS_DESC, "STR_FIX_PERMS_DESC", STR_FIX_PERMS_DESC_DEFAULT); + LANG(STR_CHECK_IRD, "STR_CHECK_IRD", STR_CHECK_IRD_DEFAULT); + LANG(STR_CHECK_DESC, "STR_CHECK_DESC", STR_CHECK_DESC_DEFAULT); + LANG(STR_DL_UPDATE, "STR_DL_UPDATE", STR_DL_UPDATE_DEFAULT); + LANG(STR_DL_UPDATE_DESC, "STR_DL_UPDATE_DESC", STR_DL_UPDATE_DESC_DEFAULT); + LANG(STR_OPEN_WINDOW, "STR_OPEN_WINDOW", STR_OPEN_WINDOW_DEFAULT); + LANG(STR_MOUNT_DEVBLIND, "STR_MOUNT_DEVBLIND", STR_MOUNT_DEVBLIND_DEFAULT); + LANG(STR_DUMP_LV1, "STR_DUMP_LV1", STR_DUMP_LV1_DEFAULT); + LANG(STR_DUMP_LV2, "STR_DUMP_LV2", STR_DUMP_LV2_DEFAULT); + LANG(STR_DUMP_FLASH, "STR_DUMP_FLASH", STR_DUMP_FLASH_DEFAULT); + LANG(STR_REFRESH, "STR_REFRESH", STR_REFRESH_DEFAULT); + LANG(STR_NEWFOLDER, "STR_NEWFOLDER", STR_NEWFOLDER_DEFAULT); + LANG(STR_NEWFILE, "STR_NEWFILE", STR_NEWFILE_DEFAULT); + LANG(STR_PASTE, "STR_PASTE", STR_PASTE_DEFAULT); + LANG(STR_CUT, "STR_CUT", STR_CUT_DEFAULT); + LANG(STR_UNSELECT_ALL, "STR_UNSELECT_ALL", STR_UNSELECT_ALL_DEFAULT); + LANG(STR_SELECT_ALL, "STR_SELECT_ALL", STR_SELECT_ALL_DEFAULT); + LANG(STR_MAKE_PKG, "STR_MAKE_PKG", STR_MAKE_PKG_DEFAULT); + LANG(STR_GETMD5, "STR_GETMD5", STR_GETMD5_DEFAULT); + LANG(STR_GETSHA1, "STR_GETSHA1", STR_GETSHA1_DEFAULT); + LANG(STR_VIEW, "STR_VIEW", STR_VIEW_DEFAULT); + LANG(STR_VIEW_TXT, "STR_VIEW_TXT", STR_VIEW_TXT_DEFAULT); + LANG(STR_VIEW_SFO, "STR_VIEW_SFO", STR_VIEW_SFO_DEFAULT); + LANG(STR_READ_XREG, "STR_READ_XREG", STR_READ_XREG_DEFAULT); + LANG(STR_EXTRACT_ELF, "STR_EXTRACT_ELF", STR_EXTRACT_ELF_DEFAULT); + LANG(STR_RESIGN_SELF, "STR_RESIGN_SELF", STR_RESIGN_SELF_DEFAULT); + LANG(STR_LAUNCH_SELF, "STR_LAUNCH_SELF", STR_LAUNCH_SELF_DEFAULT); + LANG(STR_EXTRACT_EBOOT, "STR_EXTRACT_EBOOT", STR_EXTRACT_EBOOT_DEFAULT); + LANG(STR_RESIGN_EBOOT, "STR_RESIGN_EBOOT", STR_RESIGN_EBOOT_DEFAULT); + LANG(STR_LAUNCH_EBOOT, "STR_LAUNCH_EBOOT", STR_LAUNCH_EBOOT_DEFAULT); + LANG(STR_SIGN_ELF, "STR_SIGN_ELF", STR_SIGN_ELF_DEFAULT); + LANG(STR_SIGN_EBOOT, "STR_SIGN_EBOOT", STR_SIGN_EBOOT_DEFAULT); + LANG(STR_SIGN_PRX, "STR_SIGN_PRX", STR_SIGN_PRX_DEFAULT); + LANG(STR_EXTRACT_PRX, "STR_EXTRACT_PRX", STR_EXTRACT_PRX_DEFAULT); + LANG(STR_RESIGN_SPRX, "STR_RESIGN_SPRX", STR_RESIGN_SPRX_DEFAULT); + LANG(STR_REMOVE_PRXLOADER, "STR_REMOVE_PRXLOADER", STR_REMOVE_PRXLOADER_DEFAULT); + LANG(STR_ADD_PRXLOADER, "STR_ADD_PRXLOADER", STR_ADD_PRXLOADER_DEFAULT); + LANG(STR_REMOVE_PRXLOADER2, "STR_REMOVE_PRXLOADER2", STR_REMOVE_PRXLOADER2_DEFAULT); + LANG(STR_ADD_PRXLOADER2, "STR_ADD_PRXLOADER2", STR_ADD_PRXLOADER2_DEFAULT); + LANG(STR_REMOVE_MAMBA, "STR_REMOVE_MAMBA", STR_REMOVE_MAMBA_DEFAULT); + LANG(STR_ADD_MAMBA, "STR_ADD_MAMBA", STR_ADD_MAMBA_DEFAULT); + LANG(STR_REMOVE_COBRA, "STR_REMOVE_COBRA", STR_REMOVE_COBRA_DEFAULT); + LANG(STR_ADD_COBRA, "STR_ADD_COBRA", STR_ADD_COBRA_DEFAULT); + LANG(STR_EXTRACT_RCO, "STR_EXTRACT_RCO", STR_EXTRACT_RCO_DEFAULT); + LANG(STR_EXTRACT_PKG, "STR_EXTRACT_PKG", STR_EXTRACT_PKG_DEFAULT); + LANG(STR_PKG_INFO, "STR_PKG_INFO", STR_PKG_INFO_DEFAULT); + LANG(STR_EXTRACT_TRP, "STR_EXTRACT_TRP", STR_EXTRACT_TRP_DEFAULT); + LANG(STR_COMPRESS_ISO, "STR_COMPRESS_ISO", STR_COMPRESS_ISO_DEFAULT); + LANG(STR_CHECK_CRC32, "STR_CHECK_CRC32", STR_CHECK_CRC32_DEFAULT); + LANG(STR_DECOMPRESS_CSO, "STR_DECOMPRESS_CSO", STR_DECOMPRESS_CSO_DEFAULT); + LANG(STR_EXTRACT_THM, "STR_EXTRACT_THM", STR_EXTRACT_THM_DEFAULT); + LANG(STR_EXTRACT_P3T, "STR_EXTRACT_P3T", STR_EXTRACT_P3T_DEFAULT); + LANG(STR_EXTRACT_RAF, "STR_EXTRACT_RAF", STR_EXTRACT_RAF_DEFAULT); + LANG(STR_EXTRACT_QRC, "STR_EXTRACT_QRC", STR_EXTRACT_QRC_DEFAULT); + LANG(STR_EXTRACT_ZIP, "STR_EXTRACT_ZIP", STR_EXTRACT_ZIP_DEFAULT); + LANG(STR_CONVERT_JSX_JS, "STR_CONVERT_JSX_JS", STR_CONVERT_JSX_JS_DEFAULT); + LANG(STR_CONVERT_VAG_WAV, "STR_CONVERT_VAG_WAV", STR_CONVERT_VAG_WAV_DEFAULT); + LANG(STR_CONVERT_GTF_DDS, "STR_CONVERT_GTF_DDS", STR_CONVERT_GTF_DDS_DEFAULT); + LANG(STR_CONVERT_DDS_PNG, "STR_CONVERT_DDS_PNG", STR_CONVERT_DDS_PNG_DEFAULT); + LANG(STR_MAKE_APNG, "STR_MAKE_APNG", STR_MAKE_APNG_DEFAULT); + LANG(STR_SET_PERMS, "STR_SET_PERMS", STR_SET_PERMS_DEFAULT); + LANG(STR_NOGAME, "STR_NOGAME", STR_NOGAME_DEFAULT); + LANG(STR_GLOB_SETTINGS, "STR_GLOB_SETTINGS", STR_GLOB_SETTINGS_DEFAULT); + LANG(STR_ADJUST, "STR_ADJUST", STR_ADJUST_DEFAULT); + LANG(STR_ADJUST_DESC, "STR_ADJUST_DESC", STR_ADJUST_DESC_DEFAULT); + LANG(STR_DL_COVER, "STR_DL_COVER", STR_DL_COVER_DEFAULT); + LANG(STR_DL_COVER_DESC, "STR_DL_COVER_DESC", STR_DL_COVER_DESC_DEFAULT); + LANG(STR_PLUGIN_MANAGER, "STR_PLUGIN_MANAGER", STR_PLUGIN_MANAGER_DEFAULT); + LANG(STR_PLUGIN_MANAGER_DESC, "STR_PLUGIN_MANAGER_DESC", STR_PLUGIN_MANAGER_DESC_DEFAULT); + LANG(STR_UPD_MGZ, "STR_UPD_MGZ", STR_UPD_MGZ_DEFAULT); + LANG(STR_UPD_MGZ_DESC, "STR_UPD_MGZ_DESC", STR_UPD_MGZ_DESC_DEFAULT); + LANG(STR_GAME_PATHS, "STR_GAME_PATHS", STR_GAME_PATHS_DEFAULT); + LANG(STR_GAME_PATHS_DESC, "STR_GAME_PATHS_DESC", STR_GAME_PATHS_DESC_DEFAULT); + LANG(STR_XMB_PRIO, "STR_XMB_PRIO", STR_XMB_PRIO_DEFAULT); + LANG(STR_XMB_PRIO_DESC, "STR_XMB_PRIO_DESC", STR_XMB_PRIO_DESC_DEFAULT); + LANG(STR_HELP, "STR_HELP", STR_HELP_DEFAULT); + LANG(STR_HELP_DESC, "STR_HELP_DESC", STR_HELP_DESC_DEFAULT); + LANG(STR_COLOR_1, "STR_COLOR_1", STR_COLOR_1_DEFAULT); + LANG(STR_COLOR_2, "STR_COLOR_2", STR_COLOR_2_DEFAULT); + LANG(STR_COLOR_3, "STR_COLOR_3", STR_COLOR_3_DEFAULT); + LANG(STR_COLOR_4, "STR_COLOR_4", STR_COLOR_4_DEFAULT); + LANG(STR_COLOR_DESC, "STR_COLOR_DESC", STR_COLOR_DESC_DEFAULT); + LANG(STR_UI_SETTINGS, "STR_UI_SETTINGS", STR_UI_SETTINGS_DEFAULT); + LANG(STR_UI, "STR_UI", STR_UI_DEFAULT); + LANG(STR_UI_DESC, "STR_UI_DESC", STR_UI_DESC_DEFAULT); + LANG(STR_SIDE_MENU, "STR_SIDE_MENU", STR_SIDE_MENU_DEFAULT); + LANG(STR_SIDE_MENU_DESC, "STR_SIDE_MENU_DESC", STR_SIDE_MENU_DESC_DEFAULT); + LANG(STR_SHOW_PIC1, "STR_SHOW_PIC1", STR_SHOW_PIC1_DEFAULT); + LANG(STR_SHOW_PIC1_DESC, "STR_SHOW_PIC1_DESC", STR_SHOW_PIC1_DESC_DEFAULT); + LANG(STR_SHOW_COVER, "STR_SHOW_COVER", STR_SHOW_COVER_DEFAULT); + LANG(STR_SHOW_COVER_DESC, "STR_SHOW_COVER_DESC", STR_SHOW_COVER_DESC_DEFAULT); + LANG(STR_SHOW_GAMECASE, "STR_SHOW_GAMECASE", STR_SHOW_GAMECASE_DEFAULT); + LANG(STR_SHOW_GAMECASE_DESC, "STR_SHOW_GAMECASE_DESC", STR_SHOW_GAMECASE_DESC_DEFAULT); + LANG(STR_SHOW_ICON0, "STR_SHOW_ICON0", STR_SHOW_ICON0_DEFAULT); + LANG(STR_SHOW_ICON0_DESC, "STR_SHOW_ICON0_DESC", STR_SHOW_ICON0_DESC_DEFAULT); + LANG(STR_GRID_TYPE, "STR_GRID_TYPE", STR_GRID_TYPE_DEFAULT); + LANG(STR_GRID_TYPE_DESC, "STR_GRID_TYPE_DESC", STR_GRID_TYPE_DESC_DEFAULT); + LANG(STR_SCROLL, "STR_SCROLL", STR_SCROLL_DEFAULT); + LANG(STR_PAGE, "STR_PAGE", STR_PAGE_DEFAULT); + LANG(STR_DIRECTION, "STR_DIRECTION", STR_DIRECTION_DEFAULT); + LANG(STR_DIRECTION_DESC, "STR_DIRECTION_DESC", STR_DIRECTION_DESC_DEFAULT); + LANG(STR_VERTICAL, "STR_VERTICAL", STR_VERTICAL_DEFAULT); + LANG(STR_HORIZONTAL, "STR_HORIZONTAL", STR_HORIZONTAL_DEFAULT); + LANG(STR_ANIMATED, "STR_ANIMATED", STR_ANIMATED_DEFAULT); + LANG(STR_ANIMATED_DESC, "STR_ANIMATED_DESC", STR_ANIMATED_DESC_DEFAULT); + LANG(STR_KEEP_PROP, "STR_KEEP_PROP", STR_KEEP_PROP_DEFAULT); + LANG(STR_KEEP_PROP_DESC, "STR_KEEP_PROP_DESC", STR_KEEP_PROP_DESC_DEFAULT); + LANG(STR_NB_COL, "STR_NB_COL", STR_NB_COL_DEFAULT); + LANG(STR_NB_COL_DESC, "STR_NB_COL_DESC", STR_NB_COL_DESC_DEFAULT); + LANG(STR_NB_LINE, "STR_NB_LINE", STR_NB_LINE_DEFAULT); + LANG(STR_NB_LINE_DESC, "STR_NB_LINE_DESC", STR_NB_LINE_DESC_DEFAULT); + LANG(STR_INVERSE, "STR_INVERSE", STR_INVERSE_DEFAULT); + LANG(STR_INVERSE_DESC, "STR_INVERSE_DESC", STR_INVERSE_DESC_DEFAULT); + LANG(STR_3D, "STR_3D", STR_3D_DEFAULT); + LANG(STR_3D_DESC, "STR_3D_DESC", STR_3D_DESC_DEFAULT); + LANG(STR_ADD, "STR_ADD", STR_ADD_DEFAULT); + LANG(STR_LOAD, "STR_LOAD", STR_LOAD_DEFAULT); + LANG(STR_CHANGE, "STR_CHANGE", STR_CHANGE_DEFAULT); + LANG(STR_COLOR, "STR_COLOR", STR_COLOR_DEFAULT); + LANG(STR_RESET, "STR_RESET", STR_RESET_DEFAULT); + LANG(STR_FAILED, "STR_FAILED", STR_FAILED_DEFAULT); + LANG(STR_DONE, "STR_DONE", STR_DONE_DEFAULT); + LANG(STR_OPEN, "STR_OPEN", STR_OPEN_DEFAULT); + LANG(STR_CLOSE, "STR_CLOSE", STR_CLOSE_DEFAULT); + LANG(STR_OPTION, "STR_OPTION", STR_OPTION_DEFAULT); + LANG(STR_SELECT, "STR_SELECT", STR_SELECT_DEFAULT); + LANG(STR_WINDOW, "STR_WINDOW", STR_WINDOW_DEFAULT); + LANG(STR_CLICK, "STR_CLICK", STR_CLICK_DEFAULT); + LANG(STR_CURSOR, "STR_CURSOR", STR_CURSOR_DEFAULT); + LANG(STR_NEXT, "STR_NEXT", STR_NEXT_DEFAULT); + LANG(STR_PREVIOUS, "STR_PREVIOUS", STR_PREVIOUS_DEFAULT); + LANG(STR_SET_COLOR, "STR_SET_COLOR", STR_SET_COLOR_DEFAULT); + LANG(STR_HIDETV, "STR_HIDETV", STR_HIDETV_DEFAULT); + LANG(STR_SHOWTV, "STR_SHOWTV", STR_SHOWTV_DEFAULT); + LANG(STR_MOVE_TO_PLUGINS, "STR_MOVE_TO_PLUGINS", STR_MOVE_TO_PLUGINS_DEFAULT); + LANG(STR_ASK_PLUGINS, "STR_ASK_PLUGINS", STR_ASK_PLUGINS_DEFAULT); + LANG(STR_CHANGE_VALUE, "STR_CHANGE_VALUE", STR_CHANGE_VALUE_DEFAULT); + LANG(STR_LOAD_IDPS_LV2, "STR_LOAD_IDPS_LV2", STR_LOAD_IDPS_LV2_DEFAULT); + LANG(STR_LOAD_IDPS_EID5, "STR_LOAD_IDPS_EID5", STR_LOAD_IDPS_EID5_DEFAULT); + LANG(STR_NAME, "STR_NAME", STR_NAME_DEFAULT); + LANG(STR_DOCK_RIGHT, "STR_DOCK_RIGHT", STR_DOCK_RIGHT_DEFAULT); + LANG(STR_DOCK_LEFT, "STR_DOCK_LEFT", STR_DOCK_LEFT_DEFAULT); + LANG(STR_DOCK_FULL, "STR_DOCK_FULL", STR_DOCK_FULL_DEFAULT); + LANG(STR_PLUGIN_MONITOR, "STR_PLUGIN_MONITOR", STR_PLUGIN_MONITOR_DEFAULT); + LANG(STR_UNUSED, "STR_UNUSED", STR_UNUSED_DEFAULT); + LANG(STR_UNLOAD, "STR_UNLOAD", STR_UNLOAD_DEFAULT); + LANG(STR_BOOT_FILE, "STR_BOOT_FILE", STR_BOOT_FILE_DEFAULT); + LANG(STR_CURRENT, "STR_CURRENT", STR_CURRENT_DEFAULT); + LANG(STR_NET, "STR_NET", STR_NET_DEFAULT); + LANG(STR_SOFT, "STR_SOFT", STR_SOFT_DEFAULT); + LANG(STR_GX, "STR_GX", STR_GX_DEFAULT); + LANG(STR_CUSTOM, "STR_CUSTOM", STR_CUSTOM_DEFAULT); + LANG(STR_NEW_CMD, "STR_NEW_CMD", STR_NEW_CMD_DEFAULT); + LANG(STR_PNACH, "STR_PNACH", STR_PNACH_DEFAULT); + LANG(STR_WIDESCREEN, "STR_WIDESCREEN", STR_WIDESCREEN_DEFAULT); + LANG(STR_480P, "STR_480P", STR_480P_DEFAULT); + LANG(STR_YFIX, "STR_YFIX", STR_YFIX_DEFAULT); + LANG(STR_FMV, "STR_FMV", STR_FMV_DEFAULT); + LANG(STR_SIMPLE, "STR_SIMPLE", STR_SIMPLE_DEFAULT); + LANG(STR_ADVANCED, "STR_ADVANCED", STR_ADVANCED_DEFAULT); + LANG(STR_INSTALL_MGZ, "STR_INSTALL_MGZ", STR_INSTALL_MGZ_DEFAULT); + LANG(STR_UP2DATE, "STR_UP2DATE", STR_UP2DATE_DEFAULT); + LANG(STR_SHOW_WAVES, "STR_SHOW_WAVES", STR_SHOW_WAVES_DEFAULT); + LANG(STR_SHOW_WAVES_DESC, "STR_SHOW_WAVES_DESC", STR_SHOW_WAVES_DESC_DEFAULT); + LANG(STR_WAVES_COLOR, "STR_WAVES_COLOR", STR_WAVES_COLOR_DEFAULT); + LANG(STR_WAVES_COLOR_DESC, "STR_WAVES_COLOR_DESC", STR_WAVES_COLOR_DESC_DEFAULT); + LANG(STR_USE_CONFIG, "STR_USE_CONFIG", STR_USE_CONFIG_DEFAULT); + LANG(STR_COLORSET, "STR_COLORSET", STR_COLORSET_DEFAULT); + LANG(STR_COLORSET_DESC, "STR_COLORSET_DESC", STR_COLORSET_DESC_DEFAULT); + LANG(STR_GRID_SCROLL, "STR_GRID_SCROLL", STR_GRID_SCROLL_DEFAULT); + LANG(STR_ADD_LIMG, "STR_ADD_LIMG", STR_ADD_LIMG_DEFAULT); + LANG(STR_REMOVE_LIMG, "STR_REMOVE_LIMG", STR_REMOVE_LIMG_DEFAULT); + LANG(STR_LIMG_DESC, "STR_LIMG_DESC", STR_LIMG_DESC_DEFAULT); + LANG(STR_FONT, "STR_FONT", STR_FONT_DEFAULT); + LANG(STR_FONT_DESC, "STR_FONT_DESC", STR_FONT_DESC_DEFAULT); + LANG(STR_MOVE, "STR_MOVE", STR_MOVE_DEFAULT); + LANG(STR_JOIN, "STR_JOIN", STR_JOIN_DEFAULT); + LANG(STR_JOIN_DESC, "STR_JOIN_DESC", STR_JOIN_DESC_DEFAULT); + LANG(STR_COLOR_FILTER, "STR_COLOR_FILTER", STR_COLOR_FILTER_DEFAULT); + LANG(STR_COLOR_NOTIF, "STR_COLOR_NOTIF", STR_COLOR_NOTIF_DEFAULT); + LANG(STR_COLOR_BOXHEAD, "STR_COLOR_BOXHEAD", STR_COLOR_BOXHEAD_DEFAULT); + LANG(STR_COLOR_BOXBODY, "STR_COLOR_BOXBODY", STR_COLOR_BOXBODY_DEFAULT); + LANG(STR_COLOR_SIDEBAR, "STR_COLOR_SIDEBAR", STR_COLOR_SIDEBAR_DEFAULT); + LANG(STR_COLOR_BGS, "STR_COLOR_BGS", STR_COLOR_BGS_DEFAULT); + LANG(STR_COLOR_BG, "STR_COLOR_BG", STR_COLOR_BG_DEFAULT); + LANG(STR_ROOT_DISPLAY, "STR_ROOT_DISPLAY", STR_ROOT_DISPLAY_DEFAULT); + LANG(STR_ROOT_DISPLAY_DESC, "STR_ROOT_DISPLAY_DESC", STR_ROOT_DISPLAY_DEFAULT); + LANG(STR_STYLE, "STR_STYLE", STR_STYLE_DEFAULT); + LANG(STR_STYLE_CUSTOM, "STR_STYLE_CUSTOM", STR_STYLE_CUSTOM_DEFAULT); + LANG(STR_STYLE1, "STR_STYLE1", STR_STYLE1_DEFAULT); + LANG(STR_STYLE2, "STR_STYLE2", STR_STYLE2_DEFAULT); + LANG(STR_STYLE3, "STR_STYLE3", STR_STYLE3_DEFAULT); + LANG(STR_STYLE4, "STR_STYLE4", STR_STYLE4_DEFAULT); + LANG(STR_STYLE5, "STR_STYLE5", STR_STYLE5_DEFAULT); + LANG(STR_STYLE6, "STR_STYLE6", STR_STYLE6_DEFAULT); + LANG(STR_FREEOF, "STR_FREEOF", STR_FREEOF_DEFAULT); + LANG(STR_ROOTLABEL, "STR_ROOTLABEL", STR_ROOTLABEL_DEFAULT); + LANG(STR_FM_ICONSIZE, "STR_FM_ICONSIZE", STR_FM_ICONSIZE_DEFAULT); + LANG(STR_FM_BIG, "STR_FM_BIG", STR_FM_BIG_DEFAULT); + LANG(STR_FM_SMALL, "STR_FM_SMALL", STR_FM_SMALL_DEFAULT); + LANG(STR_FM_ROWNUMBER, "STR_FM_ROWNUMBER", STR_FM_ROWNUMBER_DEFAULT); + LANG(STR_FM_ROWSIZE, "STR_FM_ROWSIZE", STR_FM_ROWSIZE_DEFAULT); + LANG(STR_FM_LEFT_CONTENT, "STR_FM_LEFT_CONTENT", STR_FM_LEFT_CONTENT_DEFAULT); + LANG(STR_FM_RIGHT_CONTENT, "STR_FM_RIGHT_CONTENT", STR_FM_RIGHT_CONTENT_DEFAULT); + LANG(STR_FM_EMPTY, "STR_FM_EMPTY", STR_FM_EMPTY_DEFAULT); + LANG(STR_FM_MOUNTPOINT, "STR_FM_MOUNTPOINT", STR_FM_MOUNTPOINT_DEFAULT); + LANG(STR_FM_DEVICE, "STR_FM_DEVICE", STR_FM_DEVICE_DEFAULT); + LANG(STR_FM_LABEL, "STR_FM_LABEL", STR_FM_LABEL_DEFAULT); + LANG(STR_FM_CAPACITY, "STR_FM_CAPACITY", STR_FM_CAPACITY_DEFAULT); + LANG(STR_FM_MEMINSIDE, "STR_FM_MEMINSIDE", STR_FM_MEMINSIDE_DEFAULT); + LANG(STR_FM_MEMOUTSIDE, "STR_FM_MEMOUTSIDE", STR_FM_MEMOUTSIDE_DEFAULT); + LANG(STR_FM_FILESYSTEM, "STR_FM_FILESYSTEM", STR_FM_FILESYSTEM_DEFAULT); + LANG(STR_FM_CB_WIDTH, "STR_FM_CB_WIDTH", STR_FM_CB_WIDTH_DEFAULT); + LANG(STR_FM_MEMORY, "STR_FM_MEMORY", STR_FM_MEMORY_DEFAULT); + LANG(STR_FM_ICON, "STR_FM_ICON", STR_FM_ICON_DEFAULT); + LANG(STR_FM_FILEFOLDER, "STR_FM_FILEFOLDER", STR_FM_FILEFOLDER_DEFAULT); + LANG(STR_FM_CUSTOM, "STR_FM_CUSTOM", STR_FM_CUSTOM_DEFAULT); + LANG(STR_FM_CB_FILL, "STR_FM_CB_FILL", STR_FM_CB_FILL_DEFAULT); + LANG(STR_EDIT_IDPS, "STR_EDIT_IDPS", STR_EDIT_IDPS_DEFAULT); + LANG(STR_FILTER_NOGAME, "STR_FILTER_NOGAME", STR_FILTER_NOGAME_DEFAULT); + + FREE(flang); lang_code_loaded = lang_code; } @@ -5326,7 +5919,7 @@ void load_lang() #endif for(i=0; i < lang_N ;i++) { - if((uint8_t) STR_LANGCODE[i][0] == lang_code) { + if(LANGCODE[i] == lang_code) { lang = i; write_setting(); return; @@ -6115,6 +6708,10 @@ u8 InstallTheme() } +// ********************** +// COLORS +// ********************** + char *NextColorSetName(FILE *f) { char line[255]; @@ -6129,7 +6726,21 @@ char *NextColorSetName(FILE *f) } void LoadColorSet(char *ColorSetName) -{ +{ + u8 OLD_FILTER_NOTIF = FILTER_NOTIF; + u8 OLD_FILTER_SIDEBAR = FILTER_SIDEBAR; + u8 OLD_FILTER_BOXHEAD = FILTER_BOXHEAD; + u8 OLD_FILTER_BOXBODY = FILTER_BOXBODY; + u8 OLD_FILTER_BGS = FILTER_BGS; + u8 OLD_FILTER_BG = FILTER_BG; + + FILTER_NOTIF=DISABLED; + FILTER_SIDEBAR=DISABLED; + FILTER_BOXHEAD=DISABLED; + FILTER_BOXBODY=DISABLED; + FILTER_BGS=DISABLED; + FILTER_BG=DISABLED; + FILE *f; char SysColorSetPath[128]; sprintf(SysColorSetPath, "/dev_hdd0/game/%s/USRDIR/GUI/colorset.ini", ManaGunZ_id); @@ -6168,6 +6779,30 @@ void LoadColorSet(char *ColorSetName) } else if(strstr(line, "WAVES_COLOR")!=NULL) { WAVES_COLOR = loc; + } else + if(strstr(line, "COLOR_NOTIF")!=NULL) { + COLOR_NOTIF = loc; + FILTER_NOTIF=ENABLED; + } else + if(strstr(line, "COLOR_SIDEBAR")!=NULL) { + COLOR_SIDEBAR = loc; + FILTER_SIDEBAR=ENABLED; + } else + if(strstr(line, "COLOR_BOXHEAD")!=NULL) { + COLOR_BOXHEAD = loc; + FILTER_BOXHEAD=ENABLED; + } else + if(strstr(line, "COLOR_BOXBODY")!=NULL) { + COLOR_BOXBODY = loc; + FILTER_BOXBODY=ENABLED; + } else + if(strstr(line, "COLOR_BGS")!=NULL) { + COLOR_BGS = loc; + FILTER_BGS=ENABLED; + } else + if(strstr(line, "COLOR_BG")!=NULL) { + COLOR_BG = loc; + FILTER_BG=ENABLED; } } @@ -6175,6 +6810,13 @@ void LoadColorSet(char *ColorSetName) } fclose(f); + if(OLD_FILTER_NOTIF != FILTER_NOTIF) ReloadTheme(NOTIF); + if(OLD_FILTER_SIDEBAR != FILTER_SIDEBAR) ReloadTheme(SIDEBAR); + if(OLD_FILTER_BOXHEAD != FILTER_BOXHEAD) ReloadTheme(BOXHEAD); + if(OLD_FILTER_BOXBODY != FILTER_BOXBODY) ReloadTheme(BOXBODY); + if(OLD_FILTER_BGS != FILTER_BGS) ReloadTheme(BGS); + if(OLD_FILTER_BG != FILTER_BG) ReloadTheme(_BG_); + write_setting(); } @@ -6205,9 +6847,19 @@ void AddColorSet(char *ColorSetName) sprintf(temp, "COLOR_2=%08X\n", COLOR_2); fputs(temp, f); sprintf(temp, "COLOR_3=%08X\n", COLOR_3); fputs(temp, f); sprintf(temp, "COLOR_4=%08X\n", COLOR_4); fputs(temp, f); - sprintf(temp, "WAVES_COLOR=%08X\n\n", WAVES_COLOR); fputs(temp, f); + + if(Show_COVER==YES) {sprintf(temp, "WAVES_COLOR=%08X\n", WAVES_COLOR); fputs(temp, f);} + if(FILTER_NOTIF == ENABLED) {sprintf(temp, "COLOR_NOTIF=%08X\n", COLOR_NOTIF); fputs(temp, f);} + if(FILTER_BOXHEAD == ENABLED) {sprintf(temp, "COLOR_BOXHEAD=%08X\n", COLOR_BOXHEAD); fputs(temp, f);} + if(FILTER_BOXBODY == ENABLED) {sprintf(temp, "COLOR_BOXBODY=%08X\n", COLOR_BOXBODY); fputs(temp, f);} + if(FILTER_SIDEBAR == ENABLED) {sprintf(temp, "COLOR_SIDEBAR=%08X\n", COLOR_SIDEBAR); fputs(temp, f);} + if(FILTER_BGS == ENABLED) {sprintf(temp, "COLOR_BGS=%08X\n", COLOR_BGS); fputs(temp, f);} + if(FILTER_BG == ENABLED) {sprintf(temp, "COLOR_BG=%08X\n", COLOR_BG); fputs(temp, f);} + + fputs("\n", f); fclose(f); + } void RemoveColorSet(char *ColorSetName) @@ -6306,7 +6958,13 @@ void AddThemeColorSet() && strstr(line, "COLOR_1") == NULL && strstr(line, "COLOR_2") == NULL && strstr(line, "COLOR_3") == NULL - && strstr(line, "COLOR_4") == NULL ) continue; + && strstr(line, "COLOR_4") == NULL + && strstr(line, "COLOR_NOTIF") == NULL + && strstr(line, "COLOR_BOXHEAD") == NULL + && strstr(line, "COLOR_BOXBODY") == NULL + && strstr(line, "COLOR_SIDEBAR") == NULL + && strstr(line, "COLOR_BGS") == NULL + && strstr(line, "COLOR_BG") == NULL) continue; if( strstr(line, "=") == NULL ) continue; @@ -6332,6 +6990,93 @@ void AddThemeColorSet() fclose(f2); } +char *GetCurrentColorSet() +{ + char *ret=NULL; + + FILE *f; + char SysColorSetPath[128]; + sprintf(SysColorSetPath, "/dev_hdd0/game/%s/USRDIR/GUI/colorset.ini", ManaGunZ_id); + + f = fopen(SysColorSetPath, "rb"); + if(f==NULL) return strcpy_malloc(STR_NONE); + + char *SysColorSetName=NULL; + while((SysColorSetName=NextColorSetName(f)) != NULL) { + + int flag=NO; + + char line[255]; + while(fgets(line, 255, f) != NULL) { + if(strstr(line, "[") != NULL ) break; + if(strstr(line, "=") == NULL ) continue; + + if(strlen(&strrchr(line, '=')[1]) == 0) continue; + + u32 loc=0; + sscanf(&strrchr(line, '=')[1], "%X", (unsigned int *) &loc); + + if(strstr(line, "COLOR_1")!=NULL) { + if( loc == COLOR_1) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_2")!=NULL) { + if( loc == COLOR_2) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_3")!=NULL) { + if( loc == COLOR_3) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_4")!=NULL) { + if( loc == COLOR_4) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "WAVES_COLOR")!=NULL) { + if( loc == WAVES_COLOR) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_NOTIF")!=NULL) { + if( loc == COLOR_NOTIF) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_SIDEBAR")!=NULL) { + if( loc == COLOR_SIDEBAR) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_BOXHEAD")!=NULL) { + if( loc == COLOR_BOXHEAD) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_BOXBODY")!=NULL) { + if( loc == COLOR_BOXBODY) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_BGS")!=NULL) { + if( loc == COLOR_BGS) flag=YES; + else {flag=NO; break;} + } else + if(strstr(line, "COLOR_BG")!=NULL) { + if( loc == COLOR_BG) flag=YES; + else {flag=NO; break;} + } + } + + if(flag==YES) { + ret = strcpy_malloc(SysColorSetName); + FREE(SysColorSetName); + break; + } + + FREE(SysColorSetName); + } + fclose(f); + + if(ret == NULL) return strcpy_malloc(STR_NONE); + + return ret; +} + void LoadThemeFont() { char ThemeFontPath[128]; @@ -6347,6 +7092,20 @@ void LoadThemeFont() void LoadThemeColorSet() { + u8 OLD_FILTER_NOTIF = FILTER_NOTIF; + u8 OLD_FILTER_SIDEBAR = FILTER_SIDEBAR; + u8 OLD_FILTER_BOXHEAD = FILTER_BOXHEAD; + u8 OLD_FILTER_BOXBODY = FILTER_BOXBODY; + u8 OLD_FILTER_BGS = FILTER_BGS; + u8 OLD_FILTER_BG = FILTER_BG; + + FILTER_NOTIF=DISABLED; + FILTER_SIDEBAR=DISABLED; + FILTER_BOXHEAD=DISABLED; + FILTER_BOXBODY=DISABLED; + FILTER_BGS=DISABLED; + FILTER_BG=DISABLED; + FILE *f; char ThemeColorSetPath[128]; @@ -6382,15 +7141,47 @@ void LoadThemeColorSet() } else if(strstr(line, "WAVES_COLOR")!=NULL) { WAVES_COLOR = loc; + } else + if(strstr(line, "COLOR_NOTIF")!=NULL) { + COLOR_NOTIF = loc; + FILTER_NOTIF=ENABLED; + } else + if(strstr(line, "COLOR_SIDEBAR")!=NULL) { + COLOR_SIDEBAR = loc; + FILTER_SIDEBAR=ENABLED; + } else + if(strstr(line, "COLOR_BOXHEAD")!=NULL) { + COLOR_BOXHEAD = loc; + FILTER_BOXHEAD=ENABLED; + } else + if(strstr(line, "COLOR_BOXBODY")!=NULL) { + COLOR_BOXBODY = loc; + FILTER_BOXBODY=ENABLED; + } else + if(strstr(line, "COLOR_BGS")!=NULL) { + COLOR_BGS = loc; + FILTER_BGS=ENABLED; + } else + if(strstr(line, "COLOR_BG")!=NULL) { + COLOR_BG = loc; + FILTER_BG=ENABLED; } } fclose(f); + + if(OLD_FILTER_NOTIF != FILTER_NOTIF) ReloadTheme(NOTIF); + if(OLD_FILTER_SIDEBAR != FILTER_SIDEBAR) ReloadTheme(SIDEBAR); + if(OLD_FILTER_BOXHEAD != FILTER_BOXHEAD) ReloadTheme(BOXHEAD); + if(OLD_FILTER_BOXBODY != FILTER_BOXBODY) ReloadTheme(BOXBODY); + if(OLD_FILTER_BGS != FILTER_BGS) ReloadTheme(BGS); + if(OLD_FILTER_BG != FILTER_BG) ReloadTheme(_BG_); } -u8 LoadTexture(char *texture_path, u32 *texture_offset, imgData *texture_data) +u8 LoadTexture(char *texture_path, u32 *texture_offset, imgData *texture_data, u32 *texture_size, u8 gray) { - if( imgLoadFromFile(texture_path, texture_data) == FAILED ) { + + if( imgLoadFromFile(texture_path, texture_data, gray) == FAILED ) { *texture_offset=0; return FAILED; } @@ -6403,28 +7194,28 @@ u8 LoadTexture(char *texture_path, u32 *texture_offset, imgData *texture_data) memcpy(texture_pointer, (*texture_data).bmp_out, (*texture_data).pitch * (*texture_data).height); free((*texture_data).bmp_out); *texture_offset = tiny3d_TextureOffset(texture_pointer); - texture_pointer += (((*texture_data).pitch * (*texture_data).height + 15) & ~15); + + texture_pointer += (((*texture_data).pitch * (*texture_data).height + 15) & ~15) / 4; + + if(texture_size != NULL) *texture_size += (((*texture_data).pitch * (*texture_data).height + 15) & ~15) / 4; return SUCCESS; } -void Load_Theme() +u32 texture_NOTIF = 0; +u32 texture_BOXHEAD = 0; +u32 texture_BOXBODY = 0; +u32 texture_SIDEBAR = 0; +u32 texture_BGS = 0; +u32 texture_BG = 0; + +// to reload fast for COLORFILTER +void ReloadTheme(u8 i) { char temp[255]; char thmPath[255]; - int i; - - GetThemes(); - - AddThemeColorSet(); - - texture_pointer = texture_mem + TEXTURE_POINTER_THEME; - - memset(PICTURE_offset, 0, sizeof(PICTURE_offset)); - memset(BG_offset, 0, sizeof(BG_offset)); - memset(XMB_Col_offset, 0, sizeof(XMB_Col_offset)); - XMB_MMTHM_XMB2_offset = 0; - XMB_MMTHM_XMB_offset = 0; + u32 SIZE=0; + u8 gray=NO; sprintf(thmPath, "/dev_hdd0/game/%s/USRDIR/GUI/%s/%s", ManaGunZ_id, UI[UI_position], Themes[UI_position]); if(path_info(thmPath) == _NOT_EXIST) { @@ -6432,50 +7223,141 @@ void Load_Theme() sprintf(thmPath, "/dev_hdd0/game/%s/USRDIR/GUI/%s/%s", ManaGunZ_id, UI[UI_position], Themes[UI_position]); } - for(i=0; i=120 ; t-=10) { - tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); - } - tiny3d_End(); - - /* - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexColor(WHITE); - for(t=-60; t<=-30 ; t+=10) { - tiny3d_VertexPos( x + d/2.5*sin(t*PI/180), y + d/2.5*cos(t*PI/180), z); - } - for(t=-30; t>=-60 ; t-=10) { - tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); - } - tiny3d_End(); - */ - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexColor(WHITE); - for(t=0; t<=360 ; t+=10) { - tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); - } - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexColor(color); - for(t=0; t<=360 ; t+=10) { - tiny3d_VertexPos( x + d/8*sin(t*PI/180), y + d/8*cos(t*PI/180), z); - } - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexColor(WHITE); - for(t=0; t<=360 ; t+=10) { - tiny3d_VertexPos( x + d/12*sin(t*PI/180), y + d/12*cos(t*PI/180), z); - } - tiny3d_End(); + Draw_Triangle(x-5, y, + x, y-5, + x+5, y, + 0, COLOR_4); } -void Draw_GAMEDISK(float x, float y, float z, float d, u8 platform) +void DrawDown(float x, float y) // equilateral abc, b vers le bas Xb=x, Ya=Yc=y { - if(platform == _ISO_PS3) { - if(PICTURE_offset[PS3_DISC] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[PS3_DISC], PICTURE[PS3_DISC].width, PICTURE[PS3_DISC].height, PICTURE[PS3_DISC].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - Draw_Box(x, y, z, 0, d, d, WHITE, YES); - } else { - Draw_DISK(x , y, z, 16, COLOR_PS3); + Draw_Triangle(x-5, y, + x, y+5, + x+5, y, + 0, COLOR_4); +} + +void Draw_DISK(float x, float y, float z, float d, u32 color) +{ + if(PICTURE_offset[DISC] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[DISC], PICTURE[DISC].width, PICTURE[DISC].height, PICTURE[DISC].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(x+d/8, y+d/8, z, 0, d*3/4, d*3/4, WHITE, YES); + } else { + x+=d/2; + y+=d/2; + int t; + + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(color); + for(t=0; t<=360 ; t+=10) { + tiny3d_VertexPos( x + d/2.5*sin(t*PI/180), y + d/2.5*cos(t*PI/180), z); } - } else - if(platform == _ISO_PS2) { - if(PICTURE_offset[PS2_DISC] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[PS2_DISC], PICTURE[PS2_DISC].width, PICTURE[PS2_DISC].height, PICTURE[PS2_DISC].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - Draw_Box(x, y, z, 0, d, d, WHITE, YES); - } else { - Draw_DISK(x , y, z, 16, COLOR_PS2); + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(WHITE); + for(t=120; t<=150 ; t+=10) { + tiny3d_VertexPos( x + d/3*sin(t*PI/180), y + d/3*cos(t*PI/180), z); } - } else - if(platform == _ISO_PS1) { - if(PICTURE_offset[PS1_DISC] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[PS1_DISC], PICTURE[PS1_DISC].width, PICTURE[PS1_DISC].height, PICTURE[PS1_DISC].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - Draw_Box(x, y, z, 0, d, d, WHITE, YES); - } else { - Draw_DISK(x , y, z, 16, COLOR_PS1); + for(t=150; t>=120 ; t-=10) { + tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); } - } else - if(platform == _ISO_PSP) { - if(PICTURE_offset[PSP_DISC] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[PSP_DISC], PICTURE[PSP_DISC].width, PICTURE[PSP_DISC].height, PICTURE[PSP_DISC].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - Draw_Box(x, y, z, 0, d, d, WHITE, YES); - } else { - Draw_DISK(x , y, z, 16, COLOR_PS2); + tiny3d_End(); + + /* + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(WHITE); + for(t=-60; t<=-30 ; t+=10) { + tiny3d_VertexPos( x + d/2.5*sin(t*PI/180), y + d/2.5*cos(t*PI/180), z); + } + for(t=-30; t>=-60 ; t-=10) { + tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); + } + tiny3d_End(); + */ + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(WHITE); + for(t=0; t<=360 ; t+=10) { + tiny3d_VertexPos( x + d/6*sin(t*PI/180), y + d/6*cos(t*PI/180), z); + } + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(color); + for(t=0; t<=360 ; t+=10) { + tiny3d_VertexPos( x + d/8*sin(t*PI/180), y + d/8*cos(t*PI/180), z); + } + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_POLYGON); + tiny3d_VertexColor(WHITE); + for(t=0; t<=360 ; t+=10) { + tiny3d_VertexPos( x + d/12*sin(t*PI/180), y + d/12*cos(t*PI/180), z); } + tiny3d_End(); } } @@ -7103,7 +8063,53 @@ void Draw_Button(float x, float y, float d) } -void DrawProgRing(float x, float y, float d, float value, u32 color) +void Draw_Line(float x1, float y1, float x2, float y2, float z, u32 color) +{ + tiny3d_SetPolygon(TINY3D_LINES); + tiny3d_VertexPos(x1, y1, z); + tiny3d_VertexColor(color); + tiny3d_VertexPos(x2, y2, z); + tiny3d_End(); +} + +void DrawChildArrow2(float x, float y, float z, float w, float h, u32 color) +{ + tiny3d_SetPolygon(TINY3D_LINES); + tiny3d_VertexPos(x, y, z); + tiny3d_VertexColor(color); + tiny3d_VertexPos(x, y+h, z); + tiny3d_VertexPos(x+w, y+h, z); + tiny3d_VertexPos(x+w-w/2, y+h+h/4, z); + tiny3d_End(); + + Draw_Line(x+w, y+h, x+w-w/2, y+h-h/4, z, color); +} + +void DrawChildArrow(float x, float y, float z, float w, float h, u32 color) +{ + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(x-1 , y , z); + tiny3d_VertexColor(color); + tiny3d_VertexPos(x+1 , y , 0); + tiny3d_VertexPos(x-1 , y+h+1 , 0); + tiny3d_VertexPos(x+1 , y+h+1 , 0); + tiny3d_VertexPos(x+w-5 , y+h+1 , 0); + tiny3d_VertexPos(x+1 , y+h-1 , 0); + tiny3d_VertexPos(x+w-5 , y+h-1 , 0); + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_TRIANGLES); + tiny3d_VertexPos(x+w-5 , y+h-1-2 , 0); + tiny3d_VertexColor(color); + tiny3d_VertexPos(x+w, y+h , 0); + tiny3d_VertexPos(x+w-5, y+h+1+2, 0); + tiny3d_End(); +} + +s8 spam_CIRCLE=-1; +#define spam_CIRCLE_MAX 3 + +void DrawProgRing(float x, float y, float d, float e, float value, u32 color) { float t; float v = value*3.6; @@ -7111,7 +8117,10 @@ void DrawProgRing(float x, float y, float d, float value, u32 color) float r1 = d / 2; - float r2 = (d-20*d/100) / 2; + float le = e; + if(r1<=le) le = d/10; + float r2 = r1-le; + if(v<10) { tiny3d_SetPolygon(TINY3D_LINES); @@ -7125,16 +8134,57 @@ void DrawProgRing(float x, float y, float d, float value, u32 color) tiny3d_SetPolygon(TINY3D_QUAD_STRIP); tiny3d_VertexColor(color); for(t=0; t<=v ; t+=10) { - tiny3d_VertexPos( x - r1*sin(t*PI/180), y - r1*cos(t*PI/180), 0); - tiny3d_VertexPos( x - r2*sin(t*PI/180), y - r2*cos(t*PI/180), 0); + tiny3d_VertexPos( x + r1*sin(t*PI/180), y - r1*cos(t*PI/180), 0); + tiny3d_VertexPos( x + r2*sin(t*PI/180), y - r2*cos(t*PI/180), 0); } tiny3d_End(); } +float DrawSpam(float x, float y) +{ + // float c = 5; + // float e = 1; + + // if(spam_CIRCLE < 0 ) return x + c + 4; + + // u32 color; + // if(0 <= spam_CIRCLE) color=COLOR_2; + // else color=BLACK; + // Draw_Box(x, y, 0, 0, c, c, color, NO); + // Draw_BoxLine(x, y, 0, c, c, WHITE); + + // if(1 <= spam_CIRCLE) color=COLOR_2; + // else color=BLACK; + // Draw_Box(x, y+c+e, 0, 0, c, c, color, NO); + // Draw_BoxLine(x, y+c+e, 0, c, c, WHITE); + + // if(2 <= spam_CIRCLE) color=COLOR_2; + // else color=BLACK; + // Draw_Box(x, y+c+e+c+e, 0, 0, c, c, color, NO); + // Draw_BoxLine(x, y+c+e+c+e, 0, c, c, WHITE); + + // return x + c + 4; + + + if(spam_CIRCLE < 0 ) return x; + + float val = (spam_CIRCLE*100 + 100) / spam_CIRCLE_MAX; + + DrawProgRing(x+8, y+8, 22.5, 5, val, COLOR_1); + + if(hold_CIRCLE) DrawProgRing(x+8, y+8, 20.5, 2, (float) ((hold_CIRCLE * 100) / MAX_HOLD), COLOR_3); + + if(0<=spam_CIRCLE) Draw_Line(x+8, y+8, x+8 + 22.5/2*sin(0), y+8 - 22.5/2*cos(0), 0, BLACK); + if(1<=spam_CIRCLE) Draw_Line(x+8, y+8, x+8 + 22.5/2*sin(2*PI/3), y+8 - 22.5/2*cos(2*PI/3), 0, BLACK); + if(2<=spam_CIRCLE) Draw_Line(x+8, y+8, x+8 + 22.5/2*sin(4*PI/3), y+8 - 22.5/2*cos(4*PI/3), 0, BLACK); + + return x; +} + int Draw_Button_Circle(float x, float y, float size) { - if(PICTURE_offset[9] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[9], PICTURE[9].width, PICTURE[9].height, PICTURE[9].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[CIRCLE] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CIRCLE], PICTURE[CIRCLE].width, PICTURE[CIRCLE].height, PICTURE[CIRCLE].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, 0, 0, size, size, WHITE, YES); @@ -7167,8 +8217,8 @@ int Draw_Button_Circle(float x, float y, float size) int Draw_Button_Square(float x, float y, float size) { - if(PICTURE_offset[7] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[7], PICTURE[7].width, PICTURE[7].height, PICTURE[7].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[SQUARE] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[SQUARE], PICTURE[SQUARE].width, PICTURE[SQUARE].height, PICTURE[SQUARE].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, 0, 0, size, size, WHITE, YES); @@ -7201,8 +8251,8 @@ int Draw_Button_Square(float x, float y, float size) int Draw_Button_Triangle(float x, float y, float size) { - if(PICTURE_offset[10] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[10], PICTURE[10].width, PICTURE[10].height, PICTURE[10].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[TRIANGLE] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[TRIANGLE], PICTURE[TRIANGLE].width, PICTURE[TRIANGLE].height, PICTURE[TRIANGLE].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, 0, 0, size, size, WHITE, YES); @@ -7234,8 +8284,8 @@ int Draw_Button_Triangle(float x, float y, float size) int Draw_Button_Cross(float x, float y, float size) { - if(PICTURE_offset[8] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[8], PICTURE[8].width, PICTURE[8].height, PICTURE[8].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[CROSS] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CROSS], PICTURE[CROSS].width, PICTURE[CROSS].height, PICTURE[CROSS].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, 0, 0, size, size, WHITE, YES); @@ -7269,8 +8319,8 @@ int Draw_Button_Cross(float x, float y, float size) int Draw_Button_Start(float x, float y, float size) { - if(PICTURE_offset[6] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[6], PICTURE[6].width, PICTURE[6].height, PICTURE[6].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[START] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[START], PICTURE[START].width, PICTURE[START].height, PICTURE[START].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); @@ -7305,8 +8355,8 @@ int Draw_Button_Start(float x, float y, float size) int Draw_Button_Select(float x, float y, float size) { - if(PICTURE_offset[5] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[5], PICTURE[5].width, PICTURE[5].height, PICTURE[5].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[SELECT] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[SELECT], PICTURE[SELECT].width, PICTURE[SELECT].height, PICTURE[SELECT].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, 0, 0, size, size, WHITE, YES); @@ -7319,8 +8369,8 @@ int Draw_Button_Select(float x, float y, float size) { float Draw_Button_L1(float x, float y, float z, float size) { - if(PICTURE_offset[12] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[12], PICTURE[12].width, PICTURE[12].height, PICTURE[12].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[L1] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[L1], PICTURE[L1].width, PICTURE[L1].height, PICTURE[L1].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "L1"); @@ -7328,8 +8378,8 @@ float Draw_Button_L1(float x, float y, float z, float size) float Draw_Button_L2(float x, float y, float z, float size) { - if(PICTURE_offset[13] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[13], PICTURE[13].width, PICTURE[13].height, PICTURE[13].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[L2] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[L2], PICTURE[L2].width, PICTURE[L2].height, PICTURE[L2].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "L2"); @@ -7337,8 +8387,8 @@ float Draw_Button_L2(float x, float y, float z, float size) float Draw_Button_L3(float x, float y, float z, float size) { - if(PICTURE_offset[14] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[14], PICTURE[14].width, PICTURE[14].height, PICTURE[14].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[L3] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[L3], PICTURE[L3].width, PICTURE[L3].height, PICTURE[L3].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "L3"); @@ -7346,8 +8396,8 @@ float Draw_Button_L3(float x, float y, float z, float size) float Draw_Button_L(float x, float y, float z, float size) { - if(PICTURE_offset[15] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[15], PICTURE[15].width, PICTURE[15].height, PICTURE[15].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[L] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[L], PICTURE[L].width, PICTURE[L].height, PICTURE[L].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "L"); @@ -7355,8 +8405,8 @@ float Draw_Button_L(float x, float y, float z, float size) float Draw_Button_R2(float x, float y, float z, float size) { - if(PICTURE_offset[16] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[16], PICTURE[16].width, PICTURE[16].height, PICTURE[16].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[R2] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[R2], PICTURE[R2].width, PICTURE[R2].height, PICTURE[R2].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "R1"); @@ -7364,8 +8414,8 @@ float Draw_Button_R2(float x, float y, float z, float size) float Draw_Button_R1(float x, float y, float z, float size) { - if(PICTURE_offset[17] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[17], PICTURE[17].width, PICTURE[17].height, PICTURE[17].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[R1] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[R1], PICTURE[R1].width, PICTURE[R1].height, PICTURE[R1].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "R2"); @@ -7373,8 +8423,8 @@ float Draw_Button_R1(float x, float y, float z, float size) float Draw_Button_R3(float x, float y, float z, float size) { - if(PICTURE_offset[18] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[18], PICTURE[18].width, PICTURE[18].height, PICTURE[18].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[R3] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[R3], PICTURE[R3].width, PICTURE[R3].height, PICTURE[R3].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "R3"); @@ -7382,8 +8432,8 @@ float Draw_Button_R3(float x, float y, float z, float size) float Draw_Button_R(float x, float y, float z, float size) { - if(PICTURE_offset[19] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[19], PICTURE[19].width, PICTURE[19].height, PICTURE[19].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[R] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[R], PICTURE[R].width, PICTURE[R].height, PICTURE[R].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); Draw_Box(x, y, z, 0, size, size, WHITE, YES); return x+size; } else return DrawString(x, y, "R"); @@ -7391,8 +8441,8 @@ float Draw_Button_R(float x, float y, float z, float size) float Draw_Pad(int button, float x, float y, float z, float size) { - if(PICTURE_offset[0] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[0], PICTURE[0].width, PICTURE[0].height, PICTURE[0].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[ALL] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[ALL], PICTURE[ALL].width, PICTURE[ALL].height, PICTURE[ALL].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); tiny3d_VertexPos(x, y, z); @@ -7408,8 +8458,8 @@ float Draw_Pad(int button, float x, float y, float z, float size) { } if(button & BUTTON_UP) { - if(PICTURE_offset[1] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[1], PICTURE[1].width, PICTURE[1].height, PICTURE[1].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[UP] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[UP], PICTURE[UP].width, PICTURE[UP].height, PICTURE[UP].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); tiny3d_VertexPos(x, y, z); @@ -7425,8 +8475,8 @@ float Draw_Pad(int button, float x, float y, float z, float size) { } } if(button & BUTTON_LEFT) { - if(PICTURE_offset[2] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[2], PICTURE[2].width, PICTURE[2].height, PICTURE[2].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[LEFT] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[LEFT], PICTURE[LEFT].width, PICTURE[LEFT].height, PICTURE[LEFT].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); tiny3d_VertexPos(x, y, z); @@ -7442,8 +8492,8 @@ float Draw_Pad(int button, float x, float y, float z, float size) { } } if(button & BUTTON_DOWN) { - if(PICTURE_offset[3] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[3], PICTURE[3].width, PICTURE[3].height, PICTURE[3].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[DOWN] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[3], PICTURE[DOWN].width, PICTURE[DOWN].height, PICTURE[DOWN].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); tiny3d_VertexPos(x, y, z); @@ -7459,8 +8509,8 @@ float Draw_Pad(int button, float x, float y, float z, float size) { } } if(button & BUTTON_RIGHT) { - if(PICTURE_offset[4] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[4], PICTURE[4].width, PICTURE[4].height, PICTURE[4].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(PICTURE_offset[RIGHT] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[RIGHT], PICTURE[RIGHT].width, PICTURE[RIGHT].height, PICTURE[RIGHT].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); tiny3d_SetPolygon(TINY3D_QUADS); tiny3d_VertexPos(x, y, z); @@ -7552,14 +8602,25 @@ void Draw_NOT(float x, float y, float z, float w, float h) void Draw_SIDEBAR(float x) { - Draw_Box(0, 0, 9, 0, 848, 512, 0x000000B0, NO); + if(UI_position!=XMB) Draw_Box(0, 0, 9, 0, 848, 512, 0x000000B0, NO); + + u32 color=COLOR_SIDEBAR_DEFAULT; if(PICTURE_offset[SIDEBAR] != 0) { - tiny3d_SetTexture(0, PICTURE_offset[SIDEBAR], PICTURE[SIDEBAR].width, PICTURE[SIDEBAR].height, PICTURE[SIDEBAR].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(FILTER_SIDEBAR==ENABLED) color=COLOR_SIDEBAR; + else color=WHITE; - Draw_Box(x, 0, 9, 0, X_MAX-x, 512, 0xFFFFFFFF, YES); + tiny3d_SetTexture(0, PICTURE_offset[SIDEBAR], PICTURE[SIDEBAR].width, PICTURE[SIDEBAR].height, PICTURE[SIDEBAR].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(x, 0, 9, 0, X_MAX-x, 512, color, YES); } else { - Draw_Box(x, 0, 9, 0, X_MAX-x, 512, 0xFFFFFF60, NO); - Draw_Box(x, 0, 9, 0, 1, 512, 0xFFFFFFFF, NO); + if(FILTER_SIDEBAR==ENABLED) { + color=COLOR_SIDEBAR; + Draw_Box(x, 0, 9, 0, X_MAX-x, 512, color, NO); + Draw_Box(x, 0, 9, 0, 1, 512, color, NO); + } else { + Draw_Box(x, 0, 9, 0, X_MAX-x, 512, COLOR_SIDEBAR_DEFAULT, NO); + Draw_Box(x, 0, 9, 0, 1, 512, WHITE, NO); + } + } } @@ -7582,169 +8643,181 @@ int Draw_Progress_Bar(float x, float y, u8 size, float value, u32 color) void DrawNotBody(float x, float y, float z, float w, float h) { - tiny3d_SetTextureWrap(0, PICTURE_offset[NOTIF], PICTURE[NOTIF].width, PICTURE[NOTIF].height, PICTURE[NOTIF].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTWRAP_CLAMP, TEXTWRAP_CLAMP, TEXTURE_LINEAR); - - float wn=PICTURE[NOTIF].width/4; - float hn=PICTURE[NOTIF].height/4;; - - tiny3d_SetPolygon(TINY3D_QUADS); + u32 color = WHITE; - tiny3d_VertexPos(x, y, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.0f, 0.0f); + if(PICTURE_offset[NOTIF]!=0) { + + if(FILTER_NOTIF==ENABLED) color = COLOR_NOTIF; + else color = WHITE; + + tiny3d_SetTextureWrap(0, PICTURE_offset[NOTIF], PICTURE[NOTIF].width, PICTURE[NOTIF].height, PICTURE[NOTIF].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTWRAP_CLAMP, TEXTWRAP_CLAMP, TEXTURE_LINEAR); + + float wn=PICTURE[NOTIF].width/4; + float hn=PICTURE[NOTIF].height/4; + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x, y, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.0f, 0.0f); - tiny3d_VertexPos(x+wn, y, z); - tiny3d_VertexTexture(0.25f, 0.0f); + tiny3d_VertexPos(x+wn, y, z); + tiny3d_VertexTexture(0.25f, 0.0f); - tiny3d_VertexPos(x+wn, y+hn, z); - tiny3d_VertexTexture(0.25f, 0.25f); - - tiny3d_VertexPos(x, y+hn, z); - tiny3d_VertexTexture(0.0f, 0.25f); - - tiny3d_End(); - - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+wn, y, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.25f, 0.0f); + tiny3d_VertexPos(x+wn, y+hn, z); + tiny3d_VertexTexture(0.25f, 0.25f); + + tiny3d_VertexPos(x, y+hn, z); + tiny3d_VertexTexture(0.0f, 0.25f); + + tiny3d_End(); + + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+wn, y, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.25f, 0.0f); - tiny3d_VertexPos(x+w-wn, y, z); - tiny3d_VertexTexture(0.75f, 0.0f); + tiny3d_VertexPos(x+w-wn, y, z); + tiny3d_VertexTexture(0.75f, 0.0f); - tiny3d_VertexPos(x+w-wn, y+hn, z); - tiny3d_VertexTexture(0.75f, 0.25f); - - tiny3d_VertexPos(x+wn, y+hn, z); - tiny3d_VertexTexture(0.25f, 0.25f); - - tiny3d_End(); - - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+w-wn, y, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.75f, 0.0f); + tiny3d_VertexPos(x+w-wn, y+hn, z); + tiny3d_VertexTexture(0.75f, 0.25f); + + tiny3d_VertexPos(x+wn, y+hn, z); + tiny3d_VertexTexture(0.25f, 0.25f); + + tiny3d_End(); + + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+w-wn, y, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.75f, 0.0f); - tiny3d_VertexPos(x+w, y, z); - tiny3d_VertexTexture(1.0f, 0.0f); + tiny3d_VertexPos(x+w, y, z); + tiny3d_VertexTexture(1.0f, 0.0f); - tiny3d_VertexPos(x+w, y+hn, z); - tiny3d_VertexTexture(1.0f, 0.25f); - - tiny3d_VertexPos(x+w-wn, y+hn, z); - tiny3d_VertexTexture(0.75f, 0.25f); - - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x, y+hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.0f, 0.25f); + tiny3d_VertexPos(x+w, y+hn, z); + tiny3d_VertexTexture(1.0f, 0.25f); + + tiny3d_VertexPos(x+w-wn, y+hn, z); + tiny3d_VertexTexture(0.75f, 0.25f); + + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x, y+hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.0f, 0.25f); - tiny3d_VertexPos(x+wn, y+hn, z); - tiny3d_VertexTexture(0.25f, 0.25f); + tiny3d_VertexPos(x+wn, y+hn, z); + tiny3d_VertexTexture(0.25f, 0.25f); - tiny3d_VertexPos(x+wn, y+h-hn, z); - tiny3d_VertexTexture(0.25f, 0.75f); - - tiny3d_VertexPos(x, y+h-hn, z); - tiny3d_VertexTexture(0.0f, 0.75f); - - tiny3d_End(); - - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+wn, y+hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.25f, 0.25f); + tiny3d_VertexPos(x+wn, y+h-hn, z); + tiny3d_VertexTexture(0.25f, 0.75f); + + tiny3d_VertexPos(x, y+h-hn, z); + tiny3d_VertexTexture(0.0f, 0.75f); + + tiny3d_End(); + + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+wn, y+hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.25f, 0.25f); - tiny3d_VertexPos(x+w-wn, y+hn, z); - tiny3d_VertexTexture(0.75f, 0.25f); + tiny3d_VertexPos(x+w-wn, y+hn, z); + tiny3d_VertexTexture(0.75f, 0.25f); - tiny3d_VertexPos(x+w-wn, y+h-hn, z); - tiny3d_VertexTexture(0.75f, 0.75f); - - tiny3d_VertexPos(x+wn, y+h-hn, z); - tiny3d_VertexTexture(0.25f, 0.75f); - - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+w-wn, y+hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.75f, 0.25f); + tiny3d_VertexPos(x+w-wn, y+h-hn, z); + tiny3d_VertexTexture(0.75f, 0.75f); + + tiny3d_VertexPos(x+wn, y+h-hn, z); + tiny3d_VertexTexture(0.25f, 0.75f); + + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+w-wn, y+hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.75f, 0.25f); - tiny3d_VertexPos(x+w, y+hn, z); - tiny3d_VertexTexture(1.0f, 0.25f); + tiny3d_VertexPos(x+w, y+hn, z); + tiny3d_VertexTexture(1.0f, 0.25f); - tiny3d_VertexPos(x+w, y+h-hn, z); - tiny3d_VertexTexture(1.0f, 0.75f); - - tiny3d_VertexPos(x+w-wn, y+h-hn, z); - tiny3d_VertexTexture(0.75f, 0.75f); - - tiny3d_End(); - - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x, y+h-hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.0f, 0.75f); + tiny3d_VertexPos(x+w, y+h-hn, z); + tiny3d_VertexTexture(1.0f, 0.75f); + + tiny3d_VertexPos(x+w-wn, y+h-hn, z); + tiny3d_VertexTexture(0.75f, 0.75f); + + tiny3d_End(); + + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x, y+h-hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.0f, 0.75f); - tiny3d_VertexPos(x+wn, y+h-hn, z); - tiny3d_VertexTexture(0.25f, 0.75f); + tiny3d_VertexPos(x+wn, y+h-hn, z); + tiny3d_VertexTexture(0.25f, 0.75f); - tiny3d_VertexPos(x+wn, y+h, z); - tiny3d_VertexTexture(0.25f, 1.0f); - - tiny3d_VertexPos(x, y+h, z); - tiny3d_VertexTexture(0.0f, 1.0f); - - tiny3d_End(); - - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+wn, y+h-hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.25f, 0.75f); + tiny3d_VertexPos(x+wn, y+h, z); + tiny3d_VertexTexture(0.25f, 1.0f); + + tiny3d_VertexPos(x, y+h, z); + tiny3d_VertexTexture(0.0f, 1.0f); + + tiny3d_End(); + + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+wn, y+h-hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.25f, 0.75f); - tiny3d_VertexPos(x+w-wn, y+h-hn, z); - tiny3d_VertexTexture(0.75f, 0.75f); + tiny3d_VertexPos(x+w-wn, y+h-hn, z); + tiny3d_VertexTexture(0.75f, 0.75f); - tiny3d_VertexPos(x+w-wn, y+h, z); - tiny3d_VertexTexture(0.75f, 1.0f); - - tiny3d_VertexPos(x+wn, y+h, z); - tiny3d_VertexTexture(0.25f, 1.0f); - - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_QUADS); - - tiny3d_VertexPos(x+w-wn, y+h-hn, z); - tiny3d_VertexColor(0xFFFFFFFF); - tiny3d_VertexTexture(0.75f, 0.75f); + tiny3d_VertexPos(x+w-wn, y+h, z); + tiny3d_VertexTexture(0.75f, 1.0f); + + tiny3d_VertexPos(x+wn, y+h, z); + tiny3d_VertexTexture(0.25f, 1.0f); + + tiny3d_End(); + + tiny3d_SetPolygon(TINY3D_QUADS); + + tiny3d_VertexPos(x+w-wn, y+h-hn, z); + tiny3d_VertexColor(color); + tiny3d_VertexTexture(0.75f, 0.75f); - tiny3d_VertexPos(x+w, y+h-hn, z); - tiny3d_VertexTexture(1.0f, 0.75f); + tiny3d_VertexPos(x+w, y+h-hn, z); + tiny3d_VertexTexture(1.0f, 0.75f); - tiny3d_VertexPos(x+w, y+h, z); - tiny3d_VertexTexture(1.0f, 1.0f); - - tiny3d_VertexPos(x+w-wn, y+h, z); - tiny3d_VertexTexture(0.75f, 1.0f); - - tiny3d_End(); - + tiny3d_VertexPos(x+w, y+h, z); + tiny3d_VertexTexture(1.0f, 1.0f); + + tiny3d_VertexPos(x+w-wn, y+h, z); + tiny3d_VertexTexture(0.75f, 1.0f); + + tiny3d_End(); + } else { + if(FILTER_NOTIF==ENABLED) color = COLOR_NOTIF; + else color = COLOR_NOTIF_DEFAULT; + + Draw_Box(590, 40, 0, 3, 213, 50, color, NO); + } } void Draw_Notification() @@ -7760,12 +8833,9 @@ void Draw_Notification() SetFontZ(0); FontColor(COLOR_1); FontSize(14); + + DrawNotBody(590, 40, 0, 213, 50); - if(PICTURE_offset[NOTIF]!=0) { - DrawNotBody(590, 40, 0, 213, 50); - } else { - Draw_Box(590, 40, 0, 3, 213, 50, 0x555555FF, NO); - } Draw_NOT(600, 50, 0, 30, 30); DrawString(635, 58, not_msg); @@ -7776,6 +8846,7 @@ void Draw_Notification() void show_msg(char *str) { + time_not=0; strcpy(not_msg, str); } @@ -7811,12 +8882,13 @@ void DrawLoadingIcon() LoadIconRot+=5; } +u8 show_scene = NO; static sys_ppu_thread_t loading_id; void Draw_Loading(void *unused) { int i=0; int show_log=YES; - int GRID_DIRECTION = 1; + int bullet_move = 1; int h=20, v=70; int speed = 3; int boost=100; @@ -7831,14 +8903,16 @@ void Draw_Loading(void *unused) strcpy(loading_log[i], "\0"); } + //if(scene == SCENE_FILEMANAGER) show_scene = YES; + while(loading) { cls(); - + int x=50, y=40; - + if(loading_log[0][0]!=0 || head_title[0] != 0 || gathering || prog_bar1_value >= 0) have_log=YES; - if(scene == SCENE_FILEMANAGER) { + if(show_scene) { Draw_scene(); if(show_log && have_log) Draw_Box(0, 0, 0, 0, 848, 512, 0x000000C0, NO); } else Draw_BGS(); @@ -7886,9 +8960,10 @@ void Draw_Loading(void *unused) } } - if(scene != SCENE_FILEMANAGER) { + if(!show_scene) { int t; - switch(GRID_DIRECTION){ + switch(bullet_move) + { case 1: //droite { if(speed==9) { @@ -7913,7 +8988,7 @@ void Draw_Loading(void *unused) } tiny3d_End(); - if(h>= 820) GRID_DIRECTION = 2; else h+=speed; + if(h>= 820) bullet_move = 2; else h+=speed; } break; case 2: //gauche @@ -7940,7 +9015,7 @@ void Draw_Loading(void *unused) } tiny3d_End(); - if(h < 20) GRID_DIRECTION = 1; else h-=speed; + if(h < 20) bullet_move = 1; else h-=speed; } break; case 3: // haut @@ -7968,7 +9043,7 @@ void Draw_Loading(void *unused) } tiny3d_End(); - if(v < 20) GRID_DIRECTION = 4; else v-=speed; + if(v < 20) bullet_move = 4; else v-=speed; } break; case 4: // bas @@ -7995,12 +9070,12 @@ void Draw_Loading(void *unused) } tiny3d_End(); - if(v > 490) GRID_DIRECTION = 3; else v+=speed; + if(v > 490) bullet_move = 3; else v+=speed; } break; default: //droite { - GRID_DIRECTION = 1; + bullet_move = 1; } } @@ -8019,10 +9094,11 @@ void Draw_Loading(void *unused) // *** DISPLAY BUTTONS *** x=INPUT_X; y=INPUT_Y; + FontSize(15); FontColor(COLOR_1); SetFontZ(0); - if(scene == SCENE_FILEMANAGER) { + if(show_scene) { if(LoadIconRot<180) { Draw_input(); y=-50; @@ -8034,10 +9110,10 @@ void Draw_Loading(void *unused) else x=DrawButton(x, y, STR_SHOWLOGS, BUTTON_SELECT); } - if(scene != SCENE_FILEMANAGER) { + if(!show_scene) { x=Draw_Button_Square(x, y, 15); x=Draw_Progress_Bar(x+5, y+4, 1, boost, color); - x=DrawFormatString( x+5, y, "%s ", STR_BOOST); + x=DrawFormatString( x+5, y, "%s ", STR_BOOST); } if(AutoM == YES) { @@ -8047,38 +9123,37 @@ void Draw_Loading(void *unused) x=DrawButton(x, y, STR_CANCEL, BUTTON_CIRCLE); } - + Draw_MemMonitor(); DrawLoadingIcon(); tiny3d_Flip(); //ScreenShot(); - ps3pad_read(); - if(new_pad & BUTTON_RIGHT) { - GRID_DIRECTION = 1; + if(NewPad(BUTTON_RIGHT)) { + bullet_move = 1; } - if(new_pad & BUTTON_LEFT) { - GRID_DIRECTION = 2; + if(NewPad(BUTTON_LEFT)) { + bullet_move = 2; } - if(new_pad & BUTTON_UP) { - GRID_DIRECTION = 3; + if(NewPad(BUTTON_UP)) { + bullet_move = 3; } - if(new_pad & BUTTON_DOWN) { - GRID_DIRECTION = 4; + if(NewPad(BUTTON_DOWN)) { + bullet_move = 4; } - if(new_pad & BUTTON_CIRCLE && prog_bar1_value >= 0) { + if(NewPad(BUTTON_CIRCLE) && prog_bar1_value >= 0) { cancel=YES; } - if(new_pad & BUTTON_CIRCLE && gathering == YES) { + if(NewPad(BUTTON_CIRCLE) && gathering == YES) { gathering_cancel=YES; } - if((old_pad & BUTTON_TRIANGLE) && AutoM==YES) { + if((NewPad(BUTTON_TRIANGLE) || OldPad(BUTTON_TRIANGLE)) && AutoM==YES) { gui_called=YES; } - if(new_pad & BUTTON_SELECT) { + if(NewPad(BUTTON_SELECT)) { if(show_log) show_log=NO; else show_log=YES; } - if(old_pad & BUTTON_SQUARE) { + if(OldPad(BUTTON_SQUARE)) { if(0 < boost && boost <= 30 && speed==9 ) { speed=9; boost--; @@ -8104,6 +9179,7 @@ void Draw_Loading(void *unused) gathering=NO; strcpy(head_title, "\0"); + show_scene=NO; for(i=0; i<=20; i++){ strcpy(loading_log[i], "\0"); @@ -8162,26 +9238,181 @@ void print_head(char *format2, ...) void start_loading() { - loading=YES; - sysThreadCreate(&loading_id, Draw_Loading, NULL, 999, 0x2000, THREAD_JOINABLE, "loading"); + if(loading==NO) { + loading=YES; + sysThreadCreate(&loading_id, Draw_Loading, NULL, 999, 0x2000, THREAD_JOINABLE, "loading"); + } } void end_loading() { - u64 ret; - loading=NO; - sysThreadJoin(loading_id, &ret); + if(loading==YES) { + u64 ret; + loading=NO; + sysThreadJoin(loading_id, &ret); + } } float DrawStringFromCenterX(float x, float y, char *txt) { - return DrawString(x-GetWidth(txt)/2, y, txt); + return DrawString(x-WidthFromStr(txt)/2, y, txt); } //******************************************************* //lv2 syscalls //******************************************************* +typedef struct +{ + char Label[0x28]; + u64 sector_count; + u32 sector_size; + u32 unknown; + u8 writable; + u8 unknowns[7]; +} __attribute__((packed)) device_info_t; + +/* +struct storage_device_info { + uint8_t res1[32]; + uint32_t vendor_id; + uint32_t device_id; + uint64_t capacity; + uint32_t sector_size; + uint32_t media_count; + uint8_t res2[8]; +}; +*/ + +typedef struct +{ + char mount_point[0x20]; + char filesystem[0x20]; + char deviceName[0x40]; + char Unk[0x10]; + u32 ReadOnly; +} __attribute__((packed)) sys_fs_mount_info; + + +// https://en.wikipedia.org/wiki/Partition_type#List_of_partition_IDs +// supported = 0xB (FAT32) / 0x7 (NTFS) +// static char* PartitionType[] = { /* 0x00 - 0x0f */ "Empty", "FAT12", "XENIX root", "XENIX usr", "FAT16", "Extended"," FAT16B", "IFS/HPFS/NTFS/exFAT/QNX", "", "", "", "FAT32", "FAT32", "FAT16", "Extended", "", + // /* 0x10 - 0x1f */ "","","","","","","","","","","","","","","","", + // /* 0x20 - 0x2f */ "","","","","","","","","","","","","","","","", + // /* 0x30 - 0x3f */ "","","","","","","","","","","","","","","","", + // /* 0x40 - 0x4f */ "","","","","","","","","","","","","","","","", + // /* 0x50 - 0x5f */ "","","","","","","","","","","","","","","","", + // /* 0x60 - 0x6f */ "","","","","","","","","","","","","","","","", + // /* 0x70 - 0x7f */ "","","","","","","","","","","","","","","","", + // /* 0x80 - 0x8f */ "","","Linux Swap","Linux","","Linux Extended","","","","","","","","","Linux LVM","", + // /* 0x90 - 0x9f */ "","","","","","","","","","","","","","","","", + // /* 0xa0 - 0xaf */ "","","","","","","","","","","","","","","","HFS / HFS+", + // /* 0xb0 - 0xbf */ "","","","","","","","","","","","","","","","", + // /* 0xc0 - 0xcf */ "","","","","","","","","","","","","","","","", + // /* 0xd0 - 0xdf */ "","","","","","","","","","","","","","","","", + // /* 0xe0 - 0xef */ "","","","","","","","","","","","","","","GPT","EFI", + // /* 0xf0 - 0xff */ "","","","","","","","","","","","","","","","" + // }; +// typedef struct +// { + // u16 byte_per_sec; + // u8 sector_per_cluster; + // u16 reserved_sector; + // u8 zero; + // u32 unused0; + // u8 media_descriptor; + // u16 unused1; + // u16 sector_per_track; + // u16 number_of_heads; + // u32 hidden_sectors; + // u32 unused2; + // u32 signature; + // u64 total_sectors; + // u64 MFT_cluster_number; + // u64 MFTMirr_cluster_number; + // u32 cluster_per_file; + // u32 cluster_per_index; + // u64 volume_serial; + // u32 checksum; +// } __attribute__((packed)) NTFS_bios_parameter_t; + +// typedef struct +// { + // u8 JMP_inst[3]; + // char OEM_ID[8]; + // NTFS_bios_parameter_t bios_parameter; + // u8 bootstrap[420]; + // u16 signature; +// } __attribute__((packed)) NTFS_boot_sector_t; + + +// N'OUBLIE PAS L'ENDIAN SWAP SI TU VEUX UTILISER CES DONNéES ! +typedef struct +{ + u16 byte_per_sec; + u8 sector_per_cluster; + u16 reserved_sector; + u8 number_of_FAT; + u16 unused0; + u16 unused00; + u8 media_descriptor; + u16 unused1; + u16 sector_per_track; + u16 number_of_heads; + u32 hidden_sectors; + u32 total_sectors; + u32 sector_per_FAT; + u16 extended_flag; + u16 version; + u32 root_cluster; + u16 system_information_sector; + u16 backup_boot_sector; + u8 reserved[0xC]; +} __attribute__((packed)) FAT32_bios_parameter_t; + +typedef struct +{ + u8 physical_drive; + u8 reserved; + u8 extended_signature; + u32 serial; + char volume_label[0xB]; + char file_system[0x8]; +} __attribute__((packed)) FAT32_extended_bios_parameter_t; + +typedef struct +{ + u8 JMP_inst[3]; + char OEM_ID[8]; + FAT32_bios_parameter_t bios_parameter; + FAT32_extended_bios_parameter_t extended_bios_parameter; + u8 bootstrap[420]; + u16 signature; +} __attribute__((packed)) FAT32_boot_sector_t; + +typedef struct +{ + u8 active_flag; + u8 start_head; + u8 start_sector; + u8 start_cylinder; + u8 partition_type; + u8 end_head; + u8 end_sector; + u8 end_cylinder; + u32 first_sector; + u32 total_sector; +} __attribute__((packed)) mbr_table_entry_t; + +typedef struct +{ + u8 bootstrap[0x1B8]; + u32 serial; + u16 reserved; + mbr_table_entry_t mbr_table_entry[4]; + u16 signature; // 0x55AA +} __attribute__((packed)) mbr_t; + u64 lv2peek(u64 addr) { lv2syscall1(6, (u64) addr >> 0ULL) ; @@ -8243,6 +9474,12 @@ int sys_fs_chown(char *path, s32 uid, s32 gid) return_to_user_prog(int); } +s64 sys_fs_disk_free(char *path, u64 *total_free, u64 *avail_free) +{ + lv2syscall3(835, (u64) path, (u64) total_free, (u64) avail_free); + return_to_user_prog(int); +} + u64 syscall_40(u64 cmd, u64 arg) { lv2syscall2(40, cmd, arg); @@ -8255,1145 +9492,605 @@ s32 sys_map_paths(char *paths[], char *new_paths[], unsigned int num) return_to_user_prog(s32); } -s32 open_device( u64 device_ID, u32* fd ) +s32 sys_storage_open(u64 device_ID, u32* fd) { lv2syscall4( 600, device_ID, 0, (u64)fd, 0 ); return_to_user_prog(s32); } -s32 close_device( u32 fd) +s32 sys_storage_close( u32 fd) { lv2syscall1( 601, fd ); return_to_user_prog(s32); } -s32 read_device( u32 fd, u64 start_sector, u64 nb_sector, const void* buffer, u32 *number_byte_read, u64 flags ) +s32 sys_storage_read( u32 fd, u64 start_sector, u64 nb_sector, const void* buffer, u32 *number_byte_read, u64 flags ) { lv2syscall7( 602, fd, 0, start_sector, nb_sector, (u64)buffer, (u64)number_byte_read, flags ); return_to_user_prog(s32); } -s32 write_device( u32 fd, u64 start_sector, u64 nb_sector, const void* buffer, u32 *number_byte_wrote, u64 flags ) +s32 sys_storage_write( u32 fd, u64 start_sector, u64 nb_sector, const void* buffer, u32 *number_byte_wrote, u64 flags ) { lv2syscall7( 603, fd, 0, start_sector, nb_sector, (u64)buffer, (u64)number_byte_wrote, flags ); return_to_user_prog(s32); } -//******************************************************* -// Init firmware -//******************************************************* - -int init_fw() +s32 sys_storage_get_device_info(u64 device_id, device_info_t *device_info) { - if(( lv2peek(FW_DATE_OFFSET_421C )==FW_DATE_1_421C) && - ( lv2peek(FW_DATE_OFFSET_421C + 8)==FW_DATE_2_421C) ) - { - - firmware = 0x421C; - - OFFSET_2_FIX = OFFSET_2_FIX_421C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_421C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_421C; - OFFSET_FIX = OFFSET_FIX_421C; - HV_START_OFFSET = HV_START_OFFSET_421C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_421C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_421C; - OFFSET_FIX_3C = OFFSET_FIX_3C_421C; - SYSCALL_TABLE = SYSCALL_TABLE_421C; - LV2MOUNTADDR = LV2MOUNTADDR_421C; - OPEN_HOOK = OPEN_HOOK_421C; - BASE_ADDR = BASE_ADDR_421C; - OFFSET_1_IDPS = OFFSET_1_IDPS_421C; - OFFSET_2_IDPS = OFFSET_2_IDPS_421C; - - PAYLOAD_SKY_SIZE = payload_sky_421C_bin_size; - PAYLOAD_SKY = (u64) payload_sky_421C_bin; - UMOUNT_SIZE = umount_421C_bin_size; - UMOUNT = (u64) umount_421C_bin; - MAMBA_SIZE = mamba_421C_lz_bin_size; - MAMBA = (u64) mamba_421C_lz_bin; - MAMBA_LOADER_SIZE = mamba_loader_421C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_421C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_421D )==FW_DATE_1_421D) && - ( lv2peek(FW_DATE_OFFSET_421D + 8)==FW_DATE_2_421D) ) - { - firmware = 0x421D; - - OFFSET_2_FIX = OFFSET_2_FIX_421D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_421D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_421D; - OFFSET_FIX = OFFSET_FIX_421D; - HV_START_OFFSET = HV_START_OFFSET_421D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_421D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_421D; - OFFSET_FIX_3C = OFFSET_FIX_3C_421D; - SYSCALL_TABLE = SYSCALL_TABLE_421D; - LV2MOUNTADDR = LV2MOUNTADDR_421D; - OPEN_HOOK = OPEN_HOOK_421D; - BASE_ADDR = BASE_ADDR_421D; - OFFSET_1_IDPS = OFFSET_1_IDPS_421D; - OFFSET_2_IDPS = OFFSET_2_IDPS_421D; - - PAYLOAD_SKY = (u64) payload_sky_421D_bin; - PAYLOAD_SKY_SIZE = payload_sky_421D_bin_size; - UMOUNT = (u64) umount_421D_bin; - UMOUNT_SIZE = umount_421D_bin_size; - MAMBA = (u64) mamba_421D_lz_bin; - MAMBA_SIZE = mamba_421D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_421D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_421D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_430C )==FW_DATE_1_430C) && - ( lv2peek(FW_DATE_OFFSET_430C + 8)==FW_DATE_2_430C) ) - { - firmware = 0x430C; - - OFFSET_2_FIX = OFFSET_2_FIX_430C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_430C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_430C; - OFFSET_FIX = OFFSET_FIX_430C; - HV_START_OFFSET = HV_START_OFFSET_430C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_430C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_430C; - OFFSET_FIX_3C = OFFSET_FIX_3C_430C; - SYSCALL_TABLE = SYSCALL_TABLE_430C; - LV2MOUNTADDR = LV2MOUNTADDR_430C; - OPEN_HOOK = OPEN_HOOK_430C; - BASE_ADDR = BASE_ADDR_430C; - OFFSET_1_IDPS = OFFSET_1_IDPS_430C; - OFFSET_2_IDPS = OFFSET_2_IDPS_430C; - - PAYLOAD_SKY = (u64) payload_sky_430C_bin; - PAYLOAD_SKY_SIZE = payload_sky_430C_bin_size; - UMOUNT = (u64) umount_430C_bin; - UMOUNT_SIZE = umount_430C_bin_size; - MAMBA = (u64) mamba_430C_lz_bin; - MAMBA_SIZE = mamba_430C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_430C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_430C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_430D )==FW_DATE_1_430D) && - ( lv2peek(FW_DATE_OFFSET_430D + 8)==FW_DATE_2_430D) ) - { - firmware = 0x430D; - - OFFSET_2_FIX = OFFSET_2_FIX_430D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_430D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_430D; - OFFSET_FIX = OFFSET_FIX_430D; - HV_START_OFFSET = HV_START_OFFSET_430D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_430D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_430D; - OFFSET_FIX_3C = OFFSET_FIX_3C_430D; - SYSCALL_TABLE = SYSCALL_TABLE_430D; - LV2MOUNTADDR = LV2MOUNTADDR_430D; - OPEN_HOOK = OPEN_HOOK_430D; - BASE_ADDR = BASE_ADDR_430D; - OFFSET_1_IDPS = OFFSET_1_IDPS_430D; - OFFSET_2_IDPS = OFFSET_2_IDPS_430D; - - PAYLOAD_SKY = (u64) payload_sky_430D_bin; - PAYLOAD_SKY_SIZE = payload_sky_430D_bin_size; - UMOUNT = (u64) umount_430D_bin; - UMOUNT_SIZE = umount_430D_bin_size; - MAMBA = (u64) mamba_430D_lz_bin; - MAMBA_SIZE = mamba_430D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_430D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_430D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_431C )==FW_DATE_1_431C) && - ( lv2peek(FW_DATE_OFFSET_431C + 8)==FW_DATE_2_431C) ) - { - firmware = 0x431C; - - OFFSET_2_FIX = OFFSET_2_FIX_431C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_431C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_431C; - OFFSET_FIX = OFFSET_FIX_431C; - HV_START_OFFSET = HV_START_OFFSET_431C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_431C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_431C; - OFFSET_FIX_3C = OFFSET_FIX_3C_431C; - SYSCALL_TABLE = SYSCALL_TABLE_431C; - LV2MOUNTADDR = LV2MOUNTADDR_431C; - OPEN_HOOK = OPEN_HOOK_431C; - BASE_ADDR = BASE_ADDR_431C; - OFFSET_1_IDPS = OFFSET_1_IDPS_431C; - OFFSET_2_IDPS = OFFSET_2_IDPS_431C; - - PAYLOAD_SKY = (u64) payload_sky_431C_bin; - PAYLOAD_SKY_SIZE = payload_sky_431C_bin_size; - UMOUNT = (u64) umount_431C_bin; - UMOUNT_SIZE = umount_431C_bin_size; - MAMBA = (u64) mamba_431C_lz_bin; - MAMBA_SIZE = mamba_431C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_431C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_431C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_440C )==FW_DATE_1_440C) && - ( lv2peek(FW_DATE_OFFSET_440C + 8)==FW_DATE_2_440C) ) - { - firmware = 0x440C; - - OFFSET_2_FIX = OFFSET_2_FIX_440C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_440C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_440C; - OFFSET_FIX = OFFSET_FIX_440C; - HV_START_OFFSET = HV_START_OFFSET_440C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_440C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_440C; - OFFSET_FIX_3C = OFFSET_FIX_3C_440C; - SYSCALL_TABLE = SYSCALL_TABLE_440C; - LV2MOUNTADDR = LV2MOUNTADDR_440C; - OPEN_HOOK = OPEN_HOOK_440C; - BASE_ADDR = BASE_ADDR_440C; - OFFSET_1_IDPS = OFFSET_1_IDPS_440C; - OFFSET_2_IDPS = OFFSET_2_IDPS_440C; - - PAYLOAD_SKY = (u64) payload_sky_440C_bin; - PAYLOAD_SKY_SIZE = payload_sky_440C_bin_size; - UMOUNT = (u64) umount_440C_bin; - UMOUNT_SIZE = umount_440C_bin_size; - MAMBA = (u64) mamba_440C_lz_bin; - MAMBA_SIZE = mamba_440C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_440C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_440C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_441C )==FW_DATE_1_441C) && - ( lv2peek(FW_DATE_OFFSET_441C + 8)==FW_DATE_2_441C) ) - { - firmware = 0x441C; - - OFFSET_2_FIX = OFFSET_2_FIX_441C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_441C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_441C; - OFFSET_FIX = OFFSET_FIX_441C; - HV_START_OFFSET = HV_START_OFFSET_441C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_441C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_441C; - OFFSET_FIX_3C = OFFSET_FIX_3C_441C; - SYSCALL_TABLE = SYSCALL_TABLE_441C; - LV2MOUNTADDR = LV2MOUNTADDR_441C; - OPEN_HOOK = OPEN_HOOK_441C; - BASE_ADDR = BASE_ADDR_441C; - OFFSET_1_IDPS = OFFSET_1_IDPS_441C; - OFFSET_2_IDPS = OFFSET_2_IDPS_441C; - - PAYLOAD_SKY = (u64) payload_sky_441C_bin; - PAYLOAD_SKY_SIZE = payload_sky_441C_bin_size; - UMOUNT = (u64) umount_441C_bin; - UMOUNT_SIZE = umount_441C_bin_size; - MAMBA = (u64) mamba_441C_lz_bin; - MAMBA_SIZE = mamba_441C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_441C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_441C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_441D )==FW_DATE_1_441D) && - ( lv2peek(FW_DATE_OFFSET_441D + 8)==FW_DATE_2_441D) ) - { - firmware = 0x441D; - - OFFSET_2_FIX = OFFSET_2_FIX_441D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_441D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_441D; - OFFSET_FIX = OFFSET_FIX_441D; - HV_START_OFFSET = HV_START_OFFSET_441D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_441D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_441D; - OFFSET_FIX_3C = OFFSET_FIX_3C_441D; - SYSCALL_TABLE = SYSCALL_TABLE_441D; - LV2MOUNTADDR = LV2MOUNTADDR_441D; - OPEN_HOOK = OPEN_HOOK_441D; - BASE_ADDR = BASE_ADDR_441D; - OFFSET_1_IDPS = OFFSET_1_IDPS_441D; - OFFSET_2_IDPS = OFFSET_2_IDPS_441D; - - PAYLOAD_SKY = (u64) payload_sky_441D_bin; - PAYLOAD_SKY_SIZE = payload_sky_441D_bin_size; - UMOUNT = (u64) umount_441D_bin; - UMOUNT_SIZE = umount_441D_bin_size; - MAMBA = (u64) mamba_441D_lz_bin; - MAMBA_SIZE = mamba_441D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_441D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_441D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_446C )==FW_DATE_1_446C) && - ( lv2peek(FW_DATE_OFFSET_446C + 8)==FW_DATE_2_446C) ) - { - firmware = 0x446C; - - OFFSET_2_FIX = OFFSET_2_FIX_446C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_446C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_446C; - OFFSET_FIX = OFFSET_FIX_446C; - HV_START_OFFSET = HV_START_OFFSET_446C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_446C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_446C; - OFFSET_FIX_3C = OFFSET_FIX_3C_446C; - SYSCALL_TABLE = SYSCALL_TABLE_446C; - LV2MOUNTADDR = LV2MOUNTADDR_446C; - OPEN_HOOK = OPEN_HOOK_446C; - BASE_ADDR = BASE_ADDR_446C; - OFFSET_1_IDPS = OFFSET_1_IDPS_446C; - OFFSET_2_IDPS = OFFSET_2_IDPS_446C; - - PAYLOAD_SKY = (u64) payload_sky_446C_bin; - PAYLOAD_SKY_SIZE = payload_sky_446C_bin_size; - UMOUNT = (u64) umount_446C_bin; - UMOUNT_SIZE = umount_446C_bin_size; - MAMBA = (u64) mamba_446C_lz_bin; - MAMBA_SIZE = mamba_446C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_446C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_446C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_446D )==FW_DATE_1_446D) && - ( lv2peek(FW_DATE_OFFSET_446D + 8)==FW_DATE_2_446D) ) - { - firmware = 0x446D; - - OFFSET_2_FIX = OFFSET_2_FIX_446D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_446D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_446D; - OFFSET_FIX = OFFSET_FIX_446D; - HV_START_OFFSET = HV_START_OFFSET_446D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_446D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_446D; - OFFSET_FIX_3C = OFFSET_FIX_3C_446D; - SYSCALL_TABLE = SYSCALL_TABLE_446D; - LV2MOUNTADDR = LV2MOUNTADDR_446D; - OPEN_HOOK = OPEN_HOOK_446D; - BASE_ADDR = BASE_ADDR_446D; - OFFSET_1_IDPS = OFFSET_1_IDPS_446D; - OFFSET_2_IDPS = OFFSET_2_IDPS_446D; - - PAYLOAD_SKY = (u64) payload_sky_446D_bin; - PAYLOAD_SKY_SIZE = payload_sky_446D_bin_size; - UMOUNT = (u64) umount_446D_bin; - UMOUNT_SIZE = umount_446D_bin_size; - MAMBA = (u64) mamba_446D_lz_bin; - MAMBA_SIZE = mamba_446D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_446D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_446D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_450C )==FW_DATE_1_450C) && - ( lv2peek(FW_DATE_OFFSET_450C + 8)==FW_DATE_2_450C) ) - { - firmware = 0x450C; - - OFFSET_2_FIX = OFFSET_2_FIX_450C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_450C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_450C; - OFFSET_FIX = OFFSET_FIX_450C; - HV_START_OFFSET = HV_START_OFFSET_450C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_450C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_450C; - OFFSET_FIX_3C = OFFSET_FIX_3C_450C; - SYSCALL_TABLE = SYSCALL_TABLE_450C; - LV2MOUNTADDR = LV2MOUNTADDR_450C; - OPEN_HOOK = OPEN_HOOK_450C; - BASE_ADDR = BASE_ADDR_450C; - OFFSET_1_IDPS = OFFSET_1_IDPS_450C; - OFFSET_2_IDPS = OFFSET_2_IDPS_450C; - - PAYLOAD_SKY = (u64) payload_sky_450C_bin; - PAYLOAD_SKY_SIZE = payload_sky_450C_bin_size; - UMOUNT = (u64) umount_450C_bin; - UMOUNT_SIZE = umount_450C_bin_size; - MAMBA = (u64) mamba_450C_lz_bin; - MAMBA_SIZE = mamba_450C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_450C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_450C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_450D )==FW_DATE_1_450D) && - ( lv2peek(FW_DATE_OFFSET_450D + 8)==FW_DATE_2_450D) ) - { - firmware = 0x450D; - - OFFSET_2_FIX = OFFSET_2_FIX_450D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_450D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_450D; - OFFSET_FIX = OFFSET_FIX_450D; - HV_START_OFFSET = HV_START_OFFSET_450D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_450D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_450D; - OFFSET_FIX_3C = OFFSET_FIX_3C_450D; - SYSCALL_TABLE = SYSCALL_TABLE_450D; - LV2MOUNTADDR = LV2MOUNTADDR_450D; - OPEN_HOOK = OPEN_HOOK_450D; - BASE_ADDR = BASE_ADDR_450D; - OFFSET_1_IDPS = OFFSET_1_IDPS_450D; - OFFSET_2_IDPS = OFFSET_2_IDPS_450D; - - PAYLOAD_SKY = (u64) payload_sky_450D_bin; - PAYLOAD_SKY_SIZE = payload_sky_450D_bin_size; - UMOUNT = (u64) umount_450D_bin; - UMOUNT_SIZE = umount_450D_bin_size; - MAMBA = (u64) mamba_450D_lz_bin; - MAMBA_SIZE = mamba_450D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_450D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_450D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_453C )==FW_DATE_1_453C) && - ( lv2peek(FW_DATE_OFFSET_453C + 8)==FW_DATE_2_453C) ) - { - firmware = 0x453C; - - OFFSET_2_FIX = OFFSET_2_FIX_453C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_453C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_453C; - OFFSET_FIX = OFFSET_FIX_453C; - HV_START_OFFSET = HV_START_OFFSET_453C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_453C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_453C; - OFFSET_FIX_3C = OFFSET_FIX_3C_453C; - SYSCALL_TABLE = SYSCALL_TABLE_453C; - LV2MOUNTADDR = LV2MOUNTADDR_453C; - OPEN_HOOK = OPEN_HOOK_453C; - BASE_ADDR = BASE_ADDR_453C; - OFFSET_1_IDPS = OFFSET_1_IDPS_453C; - OFFSET_2_IDPS = OFFSET_2_IDPS_453C; - - PAYLOAD_SKY = (u64) payload_sky_453C_bin; - PAYLOAD_SKY_SIZE = payload_sky_453C_bin_size; - UMOUNT = (u64) umount_453C_bin; - UMOUNT_SIZE = umount_453C_bin_size; - MAMBA = (u64) mamba_453C_lz_bin; - MAMBA_SIZE = mamba_453C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_453C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_453C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_453D )==FW_DATE_1_453D) && - ( lv2peek(FW_DATE_OFFSET_453D + 8)==FW_DATE_2_453D) ) - { - firmware = 0x453D; - - OFFSET_2_FIX = OFFSET_2_FIX_453D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_453D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_453D; - OFFSET_FIX = OFFSET_FIX_453D; - HV_START_OFFSET = HV_START_OFFSET_453D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_453D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_453D; - OFFSET_FIX_3C = OFFSET_FIX_3C_453D; - SYSCALL_TABLE = SYSCALL_TABLE_453D; - LV2MOUNTADDR = LV2MOUNTADDR_453D; - OPEN_HOOK = OPEN_HOOK_453D; - BASE_ADDR = BASE_ADDR_453D; - OFFSET_1_IDPS = OFFSET_1_IDPS_453D; - OFFSET_2_IDPS = OFFSET_2_IDPS_453D; - - PAYLOAD_SKY = (u64) payload_sky_453D_bin; - PAYLOAD_SKY_SIZE = payload_sky_453D_bin_size; - UMOUNT = (u64) umount_453D_bin; - UMOUNT_SIZE = umount_453D_bin_size; - MAMBA = (u64) mamba_453D_lz_bin; - MAMBA_SIZE = mamba_453D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_453D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_453D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_455C )==FW_DATE_1_455C) && - ( lv2peek(FW_DATE_OFFSET_455C + 8)==FW_DATE_2_455C) ) - { - firmware = 0x455C; - - OFFSET_2_FIX = OFFSET_2_FIX_455C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_455C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_455C; - OFFSET_FIX = OFFSET_FIX_455C; - HV_START_OFFSET = HV_START_OFFSET_455C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_455C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_455C; - OFFSET_FIX_3C = OFFSET_FIX_3C_455C; - SYSCALL_TABLE = SYSCALL_TABLE_455C; - LV2MOUNTADDR = LV2MOUNTADDR_455C; - OPEN_HOOK = OPEN_HOOK_455C; - BASE_ADDR = BASE_ADDR_455C; - OFFSET_1_IDPS = OFFSET_1_IDPS_455C; - OFFSET_2_IDPS = OFFSET_2_IDPS_455C; - - PAYLOAD_SKY = (u64) payload_sky_455C_bin; - PAYLOAD_SKY_SIZE = payload_sky_455C_bin_size; - UMOUNT = (u64) umount_455C_bin; - UMOUNT_SIZE = umount_455C_bin_size; - MAMBA = (u64) mamba_455C_lz_bin; - MAMBA_SIZE = mamba_455C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_455C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_455C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_455D )==FW_DATE_1_455D) && - ( lv2peek(FW_DATE_OFFSET_455D + 8)==FW_DATE_2_455D) ) - { - firmware = 0x455D; - - OFFSET_2_FIX = OFFSET_2_FIX_455D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_455D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_455D; - OFFSET_FIX = OFFSET_FIX_455D; - HV_START_OFFSET = HV_START_OFFSET_455D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_455D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_455D; - OFFSET_FIX_3C = OFFSET_FIX_3C_455D; - SYSCALL_TABLE = SYSCALL_TABLE_455D; - LV2MOUNTADDR = LV2MOUNTADDR_455D; - OPEN_HOOK = OPEN_HOOK_455D; - BASE_ADDR = BASE_ADDR_455D; - OFFSET_1_IDPS = OFFSET_1_IDPS_455D; - OFFSET_2_IDPS = OFFSET_2_IDPS_455D; - - PAYLOAD_SKY = (u64) payload_sky_455D_bin; - PAYLOAD_SKY_SIZE = payload_sky_455D_bin_size; - UMOUNT = (u64) umount_455D_bin; - UMOUNT_SIZE = umount_455D_bin_size; - MAMBA = (u64) mamba_455D_lz_bin; - MAMBA_SIZE = mamba_455D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_455D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_455D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_460C )==FW_DATE_1_460C) && - ( lv2peek(FW_DATE_OFFSET_460C + 8)==FW_DATE_2_460C) ) - { - firmware = 0x460C; - - OFFSET_2_FIX = OFFSET_2_FIX_460C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_460C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_460C; - OFFSET_FIX = OFFSET_FIX_460C; - HV_START_OFFSET = HV_START_OFFSET_460C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_460C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_460C; - OFFSET_FIX_3C = OFFSET_FIX_3C_460C; - SYSCALL_TABLE = SYSCALL_TABLE_460C; - LV2MOUNTADDR = LV2MOUNTADDR_460C; - OPEN_HOOK = OPEN_HOOK_460C; - BASE_ADDR = BASE_ADDR_460C; - OFFSET_1_IDPS = OFFSET_1_IDPS_460C; - OFFSET_2_IDPS = OFFSET_2_IDPS_460C; - - PAYLOAD_SKY = (u64) payload_sky_460C_bin; - PAYLOAD_SKY_SIZE = payload_sky_460C_bin_size; - UMOUNT = (u64) umount_460C_bin; - UMOUNT_SIZE = umount_460C_bin_size; - MAMBA = (u64) mamba_460C_lz_bin; - MAMBA_SIZE = mamba_460C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_460C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_460C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_465D )==FW_DATE_1_465D) && - ( lv2peek(FW_DATE_OFFSET_465D + 8)==FW_DATE_2_465D) ) - { - firmware = 0x465D; - - OFFSET_2_FIX = OFFSET_2_FIX_465D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_465D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_465D; - OFFSET_FIX = OFFSET_FIX_465D; - HV_START_OFFSET = HV_START_OFFSET_465D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_465D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_465D; - OFFSET_FIX_3C = OFFSET_FIX_3C_465D; - SYSCALL_TABLE = SYSCALL_TABLE_465D; - LV2MOUNTADDR = LV2MOUNTADDR_465D; - OPEN_HOOK = OPEN_HOOK_465D; - BASE_ADDR = BASE_ADDR_465D; - OFFSET_1_IDPS = OFFSET_1_IDPS_465D; - OFFSET_2_IDPS = OFFSET_2_IDPS_465D; - - PAYLOAD_SKY = (u64) payload_sky_465D_bin; - PAYLOAD_SKY_SIZE = payload_sky_465D_bin_size; - UMOUNT = (u64) umount_465D_bin; - UMOUNT_SIZE = umount_465D_bin_size; - MAMBA = (u64) mamba_465D_lz_bin; - MAMBA_SIZE = mamba_465D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_465D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_465D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_465C )==FW_DATE_1_465C) && - ( lv2peek(FW_DATE_OFFSET_465C + 8)==FW_DATE_2_465C) ) - { - firmware = 0x465C; - - OFFSET_2_FIX = OFFSET_2_FIX_465C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_465C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_465C; - OFFSET_FIX = OFFSET_FIX_465C; - HV_START_OFFSET = HV_START_OFFSET_465C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_465C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_465C; - OFFSET_FIX_3C = OFFSET_FIX_3C_465C; - SYSCALL_TABLE = SYSCALL_TABLE_465C; - LV2MOUNTADDR = LV2MOUNTADDR_465C; - OPEN_HOOK = OPEN_HOOK_465C; - BASE_ADDR = BASE_ADDR_465C; - OFFSET_1_IDPS = OFFSET_1_IDPS_465C; - OFFSET_2_IDPS = OFFSET_2_IDPS_465C; - - PAYLOAD_SKY = (u64) payload_sky_465C_bin; - PAYLOAD_SKY_SIZE = payload_sky_465C_bin_size; - UMOUNT = (u64) umount_465C_bin; - UMOUNT_SIZE = umount_465C_bin_size; - MAMBA = (u64) mamba_465C_lz_bin; - MAMBA_SIZE = mamba_465C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_465C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_465C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_470C )==FW_DATE_1_470C) && - ( lv2peek(FW_DATE_OFFSET_470C + 8)==FW_DATE_2_470C) ) - { - firmware = 0x470C; - - OFFSET_2_FIX = OFFSET_2_FIX_470C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_470C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_470C; - OFFSET_FIX = OFFSET_FIX_470C; - HV_START_OFFSET = HV_START_OFFSET_470C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_470C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_470C; - OFFSET_FIX_3C = OFFSET_FIX_3C_470C; - SYSCALL_TABLE = SYSCALL_TABLE_470C; - LV2MOUNTADDR = LV2MOUNTADDR_470C; - OPEN_HOOK = OPEN_HOOK_470C; - BASE_ADDR = BASE_ADDR_470C; - OFFSET_1_IDPS = OFFSET_1_IDPS_470C; - OFFSET_2_IDPS = OFFSET_2_IDPS_470C; - - PAYLOAD_SKY = (u64) payload_sky_470C_bin; - PAYLOAD_SKY_SIZE = payload_sky_470C_bin_size; - UMOUNT = (u64) umount_470C_bin; - UMOUNT_SIZE = umount_470C_bin_size; - MAMBA = (u64) mamba_470C_lz_bin; - MAMBA_SIZE = mamba_470C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_470C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_470C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_470D )==FW_DATE_1_470D) && - ( lv2peek(FW_DATE_OFFSET_470D + 8)==FW_DATE_2_470D) ) - { - firmware = 0x470D; - - OFFSET_2_FIX = OFFSET_2_FIX_470D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_470D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_470D; - OFFSET_FIX = OFFSET_FIX_470D; - HV_START_OFFSET = HV_START_OFFSET_470D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_470D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_470D; - OFFSET_FIX_3C = OFFSET_FIX_3C_470D; - SYSCALL_TABLE = SYSCALL_TABLE_470D; - LV2MOUNTADDR = LV2MOUNTADDR_470D; - OPEN_HOOK = OPEN_HOOK_470D; - BASE_ADDR = BASE_ADDR_470D; - OFFSET_1_IDPS = OFFSET_1_IDPS_470D; - OFFSET_2_IDPS = OFFSET_2_IDPS_470D; - - PAYLOAD_SKY = (u64) payload_sky_470D_bin; - PAYLOAD_SKY_SIZE = payload_sky_470D_bin_size; - UMOUNT = (u64) umount_470D_bin; - UMOUNT_SIZE = umount_470D_bin_size; - MAMBA = (u64) mamba_470D_lz_bin; - MAMBA_SIZE = mamba_470D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_470D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_470D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_475C )==FW_DATE_1_475C) && - ( lv2peek(FW_DATE_OFFSET_475C + 8)==FW_DATE_2_475C) ) - { - firmware = 0x475C; - - OFFSET_2_FIX = OFFSET_2_FIX_475C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_475C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_475C; - OFFSET_FIX = OFFSET_FIX_475C; - HV_START_OFFSET = HV_START_OFFSET_475C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_475C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_475C; - OFFSET_FIX_3C = OFFSET_FIX_3C_475C; - SYSCALL_TABLE = SYSCALL_TABLE_475C; - LV2MOUNTADDR = LV2MOUNTADDR_475C; - OPEN_HOOK = OPEN_HOOK_475C; - BASE_ADDR = BASE_ADDR_475C; - OFFSET_1_IDPS = OFFSET_1_IDPS_475C; - OFFSET_2_IDPS = OFFSET_2_IDPS_475C; - - PAYLOAD_SKY = (u64) payload_sky_475C_bin; - PAYLOAD_SKY_SIZE = payload_sky_475C_bin_size; - UMOUNT = (u64) umount_475C_bin; - UMOUNT_SIZE = umount_475C_bin_size; - MAMBA = (u64) mamba_475C_lz_bin; - MAMBA_SIZE = mamba_475C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_475C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_475C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_475D )==FW_DATE_1_475D) && - ( lv2peek(FW_DATE_OFFSET_475D + 8)==FW_DATE_2_475D) ) - { - firmware = 0x475D; - - OFFSET_2_FIX = OFFSET_2_FIX_475D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_475D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_475D; - OFFSET_FIX = OFFSET_FIX_475D; - HV_START_OFFSET = HV_START_OFFSET_475D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_475D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_475D; - OFFSET_FIX_3C = OFFSET_FIX_3C_475D; - SYSCALL_TABLE = SYSCALL_TABLE_475D; - LV2MOUNTADDR = LV2MOUNTADDR_475D; - OPEN_HOOK = OPEN_HOOK_475D; - BASE_ADDR = BASE_ADDR_475D; - OFFSET_1_IDPS = OFFSET_1_IDPS_475D; - OFFSET_2_IDPS = OFFSET_2_IDPS_475D; - - PAYLOAD_SKY = (u64) payload_sky_475D_bin; - PAYLOAD_SKY_SIZE = payload_sky_475D_bin_size; - UMOUNT = (u64) umount_475D_bin; - UMOUNT_SIZE = umount_475D_bin_size; - MAMBA = (u64) mamba_475D_lz_bin; - MAMBA_SIZE = mamba_475D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_475D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_475D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_476C )==FW_DATE_1_476C) && - ( lv2peek(FW_DATE_OFFSET_476C + 8)==FW_DATE_2_476C) ) - { - firmware = 0x476C; - - OFFSET_2_FIX = OFFSET_2_FIX_476C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_476C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_476C; - OFFSET_FIX = OFFSET_FIX_476C; - HV_START_OFFSET = HV_START_OFFSET_476C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_476C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_476C; - OFFSET_FIX_3C = OFFSET_FIX_3C_476C; - SYSCALL_TABLE = SYSCALL_TABLE_476C; - LV2MOUNTADDR = LV2MOUNTADDR_476C; - OPEN_HOOK = OPEN_HOOK_476C; - BASE_ADDR = BASE_ADDR_476C; - OFFSET_1_IDPS = OFFSET_1_IDPS_476C; - OFFSET_2_IDPS = OFFSET_2_IDPS_476C; - - PAYLOAD_SKY = (u64) payload_sky_476C_bin; - PAYLOAD_SKY_SIZE = payload_sky_476C_bin_size; - UMOUNT = (u64) umount_476C_bin; - UMOUNT_SIZE = umount_476C_bin_size; - MAMBA = (u64) mamba_476C_lz_bin; - MAMBA_SIZE = mamba_476C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_476C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_476C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_476D )==FW_DATE_1_476D) && - ( lv2peek(FW_DATE_OFFSET_476D + 8)==FW_DATE_2_476D) ) - { - firmware = 0x476D; - - OFFSET_2_FIX = OFFSET_2_FIX_476D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_476D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_476D; - OFFSET_FIX = OFFSET_FIX_476D; - HV_START_OFFSET = HV_START_OFFSET_476D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_476D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_476D; - OFFSET_FIX_3C = OFFSET_FIX_3C_476D; - SYSCALL_TABLE = SYSCALL_TABLE_476D; - LV2MOUNTADDR = LV2MOUNTADDR_476D; - OPEN_HOOK = OPEN_HOOK_476D; - BASE_ADDR = BASE_ADDR_476D; - OFFSET_1_IDPS = OFFSET_1_IDPS_476D; - OFFSET_2_IDPS = OFFSET_2_IDPS_476D; - - PAYLOAD_SKY = (u64) payload_sky_476D_bin; - PAYLOAD_SKY_SIZE = payload_sky_476D_bin_size; - UMOUNT = (u64) umount_476D_bin; - UMOUNT_SIZE = umount_476D_bin_size; - MAMBA = (u64) mamba_476D_lz_bin; - MAMBA_SIZE = mamba_476D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_476D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_476D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_478C )==FW_DATE_1_478C) && - ( lv2peek(FW_DATE_OFFSET_478C + 8)==FW_DATE_2_478C) ) - { - firmware = 0x478C; - - OFFSET_2_FIX = OFFSET_2_FIX_478C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_478C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_478C; - OFFSET_FIX = OFFSET_FIX_478C; - HV_START_OFFSET = HV_START_OFFSET_478C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_478C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_478C; - OFFSET_FIX_3C = OFFSET_FIX_3C_478C; - SYSCALL_TABLE = SYSCALL_TABLE_478C; - LV2MOUNTADDR = LV2MOUNTADDR_478C; - OPEN_HOOK = OPEN_HOOK_478C; - BASE_ADDR = BASE_ADDR_478C; - OFFSET_1_IDPS = OFFSET_1_IDPS_478C; - OFFSET_2_IDPS = OFFSET_2_IDPS_478C; - - PAYLOAD_SKY = (u64) payload_sky_478C_bin; - PAYLOAD_SKY_SIZE = payload_sky_478C_bin_size; - UMOUNT = (u64) umount_478C_bin; - UMOUNT_SIZE = umount_478C_bin_size; - MAMBA = (u64) mamba_478C_lz_bin; - MAMBA_SIZE = mamba_478C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_478C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_478C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_478D )==FW_DATE_1_478D) && - ( lv2peek(FW_DATE_OFFSET_478D + 8)==FW_DATE_2_478D) ) - { - firmware = 0x478D; - - OFFSET_2_FIX = OFFSET_2_FIX_478D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_478D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_478D; - OFFSET_FIX = OFFSET_FIX_478D; - HV_START_OFFSET = HV_START_OFFSET_478D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_478D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_478D; - OFFSET_FIX_3C = OFFSET_FIX_3C_478D; - SYSCALL_TABLE = SYSCALL_TABLE_478D; - LV2MOUNTADDR = LV2MOUNTADDR_478D; - OPEN_HOOK = OPEN_HOOK_478D; - BASE_ADDR = BASE_ADDR_478D; - OFFSET_1_IDPS = OFFSET_1_IDPS_478D; - OFFSET_2_IDPS = OFFSET_2_IDPS_478D; - - PAYLOAD_SKY = (u64) payload_sky_478D_bin; - PAYLOAD_SKY_SIZE = payload_sky_478D_bin_size; - UMOUNT = (u64) umount_478D_bin; - UMOUNT_SIZE = umount_478D_bin_size; - MAMBA = (u64) mamba_478D_lz_bin; - MAMBA_SIZE = mamba_478D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_478D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_478D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_480C )==FW_DATE_1_480C) && - ( lv2peek(FW_DATE_OFFSET_480C + 8)==FW_DATE_2_480C) ) - { - firmware = 0x480C; - - OFFSET_2_FIX = OFFSET_2_FIX_480C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_480C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_480C; - OFFSET_FIX = OFFSET_FIX_480C; - HV_START_OFFSET = HV_START_OFFSET_480C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_480C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_480C; - OFFSET_FIX_3C = OFFSET_FIX_3C_480C; - SYSCALL_TABLE = SYSCALL_TABLE_480C; - LV2MOUNTADDR = LV2MOUNTADDR_480C; - OPEN_HOOK = OPEN_HOOK_480C; - BASE_ADDR = BASE_ADDR_480C; - OFFSET_1_IDPS = OFFSET_1_IDPS_480C; - OFFSET_2_IDPS = OFFSET_2_IDPS_480C; - - PAYLOAD_SKY = (u64) payload_sky_480C_bin; - PAYLOAD_SKY_SIZE = payload_sky_480C_bin_size; - UMOUNT = (u64) umount_480C_bin; - UMOUNT_SIZE = umount_480C_bin_size; - MAMBA = (u64) mamba_480C_lz_bin; - MAMBA_SIZE = mamba_480C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_480C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_480C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_480D )==FW_DATE_1_480D) && - ( lv2peek(FW_DATE_OFFSET_480D + 8)==FW_DATE_2_480D) ) - { - firmware = 0x480D; - - OFFSET_2_FIX = OFFSET_2_FIX_480D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_480D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_480D; - OFFSET_FIX = OFFSET_FIX_480D; - HV_START_OFFSET = HV_START_OFFSET_480D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_480D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_480D; - OFFSET_FIX_3C = OFFSET_FIX_3C_480D; - SYSCALL_TABLE = SYSCALL_TABLE_480D; - LV2MOUNTADDR = LV2MOUNTADDR_480D; - OPEN_HOOK = OPEN_HOOK_480D; - BASE_ADDR = BASE_ADDR_480D; - OFFSET_1_IDPS = OFFSET_1_IDPS_480D; - OFFSET_2_IDPS = OFFSET_2_IDPS_480D; - - PAYLOAD_SKY = (u64) payload_sky_480D_bin; - PAYLOAD_SKY_SIZE = payload_sky_480D_bin_size; - UMOUNT = (u64) umount_480D_bin; - UMOUNT_SIZE = umount_480D_bin_size; - MAMBA = (u64) mamba_480D_lz_bin; - MAMBA_SIZE = mamba_480D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_480D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_480D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_481C )==FW_DATE_1_481C) && - ( lv2peek(FW_DATE_OFFSET_481C + 8)==FW_DATE_2_481C) ) - { - firmware = 0x481C; - - OFFSET_2_FIX = OFFSET_2_FIX_481C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_481C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_481C; - OFFSET_FIX = OFFSET_FIX_481C; - HV_START_OFFSET = HV_START_OFFSET_481C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_481C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_481C; - OFFSET_FIX_3C = OFFSET_FIX_3C_481C; - SYSCALL_TABLE = SYSCALL_TABLE_481C; - LV2MOUNTADDR = LV2MOUNTADDR_481C; - OPEN_HOOK = OPEN_HOOK_481C; - BASE_ADDR = BASE_ADDR_481C; - OFFSET_1_IDPS = OFFSET_1_IDPS_481C; - OFFSET_2_IDPS = OFFSET_2_IDPS_481C; - - PAYLOAD_SKY = (u64) payload_sky_481C_bin; - PAYLOAD_SKY_SIZE = payload_sky_481C_bin_size; - UMOUNT = (u64) umount_481C_bin; - UMOUNT_SIZE = umount_481C_bin_size; - MAMBA = (u64) mamba_481C_lz_bin; - MAMBA_SIZE = mamba_481C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_481C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_481C_bin; + lv2syscall2( 609, device_id, (u64)device_info ); + return_to_user_prog(s32); +} - } else - if(( lv2peek(FW_DATE_OFFSET_481D )==FW_DATE_1_481D) && - ( lv2peek(FW_DATE_OFFSET_481D + 8)==FW_DATE_2_481D) ) - { - firmware = 0x481D; - - OFFSET_2_FIX = OFFSET_2_FIX_481D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_481D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_481D; - OFFSET_FIX = OFFSET_FIX_481D; - HV_START_OFFSET = HV_START_OFFSET_481D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_481D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_481D; - OFFSET_FIX_3C = OFFSET_FIX_3C_481D; - SYSCALL_TABLE = SYSCALL_TABLE_481D; - LV2MOUNTADDR = LV2MOUNTADDR_481D; - OPEN_HOOK = OPEN_HOOK_481D; - BASE_ADDR = BASE_ADDR_481D; - OFFSET_1_IDPS = OFFSET_1_IDPS_481D; - OFFSET_2_IDPS = OFFSET_2_IDPS_481D; - - PAYLOAD_SKY = (u64) payload_sky_481D_bin; - PAYLOAD_SKY_SIZE = payload_sky_481D_bin_size; - UMOUNT = (u64) umount_481D_bin; - UMOUNT_SIZE = umount_481D_bin_size; - MAMBA = (u64) mamba_481D_lz_bin; - MAMBA_SIZE = mamba_481D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_481D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_481D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_482C )==FW_DATE_1_482C) && - ( lv2peek(FW_DATE_OFFSET_482C + 8)==FW_DATE_2_482C) ) - { - firmware = 0x482C; - - OFFSET_2_FIX = OFFSET_2_FIX_482C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_482C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_482C; - OFFSET_FIX = OFFSET_FIX_482C; - HV_START_OFFSET = HV_START_OFFSET_482C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_482C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_482C; - OFFSET_FIX_3C = OFFSET_FIX_3C_482C; - SYSCALL_TABLE = SYSCALL_TABLE_482C; - LV2MOUNTADDR = LV2MOUNTADDR_482C; - OPEN_HOOK = OPEN_HOOK_482C; - BASE_ADDR = BASE_ADDR_482C; - OFFSET_1_IDPS = OFFSET_1_IDPS_482C; - OFFSET_2_IDPS = OFFSET_2_IDPS_482C; - - PAYLOAD_SKY = (u64) payload_sky_482C_bin; - PAYLOAD_SKY_SIZE = payload_sky_482C_bin_size; - UMOUNT = (u64) umount_482C_bin; - UMOUNT_SIZE = umount_482C_bin_size; - MAMBA = (u64) mamba_482C_lz_bin; - MAMBA_SIZE = mamba_482C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_482C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_482C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_482D )==FW_DATE_1_482D) && - ( lv2peek(FW_DATE_OFFSET_482D + 8)==FW_DATE_2_482D) ) - { - firmware = 0x482D; - - OFFSET_2_FIX = OFFSET_2_FIX_482D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_482D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_482D; - OFFSET_FIX = OFFSET_FIX_482D; - HV_START_OFFSET = HV_START_OFFSET_482D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_482D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_482D; - OFFSET_FIX_3C = OFFSET_FIX_3C_482D; - SYSCALL_TABLE = SYSCALL_TABLE_482D; - LV2MOUNTADDR = LV2MOUNTADDR_482D; - OPEN_HOOK = OPEN_HOOK_482D; - BASE_ADDR = BASE_ADDR_482D; - OFFSET_1_IDPS = OFFSET_1_IDPS_482D; - OFFSET_2_IDPS = OFFSET_2_IDPS_482D; - - PAYLOAD_SKY = (u64) payload_sky_482D_bin; - PAYLOAD_SKY_SIZE = payload_sky_482D_bin_size; - UMOUNT = (u64) umount_482D_bin; - UMOUNT_SIZE = umount_482D_bin_size; - MAMBA = (u64) mamba_482D_lz_bin; - MAMBA_SIZE = mamba_482D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_482D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_482D_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_483C )==FW_DATE_1_483C) && - ( lv2peek(FW_DATE_OFFSET_483C + 8)==FW_DATE_2_483C) ) - { - firmware = 0x483C; - - OFFSET_2_FIX = OFFSET_2_FIX_483C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_483C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_483C; - OFFSET_FIX = OFFSET_FIX_483C; - HV_START_OFFSET = HV_START_OFFSET_483C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_483C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_483C; - OFFSET_FIX_3C = OFFSET_FIX_3C_483C; - SYSCALL_TABLE = SYSCALL_TABLE_483C; - LV2MOUNTADDR = LV2MOUNTADDR_483C; - OPEN_HOOK = OPEN_HOOK_483C; - BASE_ADDR = BASE_ADDR_483C; - OFFSET_1_IDPS = OFFSET_1_IDPS_483C; - OFFSET_2_IDPS = OFFSET_2_IDPS_483C; - - PAYLOAD_SKY = (u64) payload_sky_483C_bin; - PAYLOAD_SKY_SIZE = payload_sky_483C_bin_size; - UMOUNT = (u64) umount_483C_bin; - UMOUNT_SIZE = umount_483C_bin_size; - MAMBA = (u64) mamba_483C_lz_bin; - MAMBA_SIZE = mamba_483C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_483C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_483C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_484C )==FW_DATE_1_484C) && - ( lv2peek(FW_DATE_OFFSET_484C + 8)==FW_DATE_2_484C) ) - { - firmware = 0x484C; - - OFFSET_2_FIX = OFFSET_2_FIX_484C; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_484C; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_484C; - OFFSET_FIX = OFFSET_FIX_484C; - HV_START_OFFSET = HV_START_OFFSET_484C; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_484C; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_484C; - OFFSET_FIX_3C = OFFSET_FIX_3C_484C; - SYSCALL_TABLE = SYSCALL_TABLE_484C; - LV2MOUNTADDR = LV2MOUNTADDR_484C; - OPEN_HOOK = OPEN_HOOK_484C; - BASE_ADDR = BASE_ADDR_484C; - OFFSET_1_IDPS = OFFSET_1_IDPS_484C; - OFFSET_2_IDPS = OFFSET_2_IDPS_484C; - - PAYLOAD_SKY = (u64) payload_sky_484C_bin; - PAYLOAD_SKY_SIZE = payload_sky_484C_bin_size; - UMOUNT = (u64) umount_484C_bin; - UMOUNT_SIZE = umount_484C_bin_size; - MAMBA = (u64) mamba_484C_lz_bin; - MAMBA_SIZE = mamba_484C_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_484C_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_484C_bin; - - } else - if(( lv2peek(FW_DATE_OFFSET_484D )==FW_DATE_1_484D) && - ( lv2peek(FW_DATE_OFFSET_484D + 8)==FW_DATE_2_484D) ) - { - firmware = 0x484D; - - OFFSET_2_FIX = OFFSET_2_FIX_484D; - LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_484D; - LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_484D; - OFFSET_FIX = OFFSET_FIX_484D; - HV_START_OFFSET = HV_START_OFFSET_484D; - OFFSET_FIX_2B17 = OFFSET_FIX_2B17_484D; - OFFSET_FIX_LIC = OFFSET_FIX_LIC_484D; - OFFSET_FIX_3C = OFFSET_FIX_3C_484D; - SYSCALL_TABLE = SYSCALL_TABLE_484D; - LV2MOUNTADDR = LV2MOUNTADDR_484D; - OPEN_HOOK = OPEN_HOOK_484D; - BASE_ADDR = BASE_ADDR_484D; - OFFSET_1_IDPS = OFFSET_1_IDPS_484D; - OFFSET_2_IDPS = OFFSET_2_IDPS_484D; - - PAYLOAD_SKY = (u64) payload_sky_484D_bin; - PAYLOAD_SKY_SIZE = payload_sky_484D_bin_size; - UMOUNT = (u64) umount_484D_bin; - UMOUNT_SIZE = umount_484D_bin_size; - MAMBA = (u64) mamba_484D_lz_bin; - MAMBA_SIZE = mamba_484D_lz_bin_size; - MAMBA_LOADER_SIZE = mamba_loader_484D_bin_size; - MAMBA_LOADER = (u64 *) mamba_loader_484D_bin; - - } else {return NOK;} - - NEW_POKE_SYSCALL_ADDR = lv2peek( lv2peek(SYSCALL_TABLE + NEW_POKE_SYSCALL*8) ) + 0ULL; - UMOUNT_SYSCALL_OFFSET = lv2peek( lv2peek(SYSCALL_TABLE + 838*8) ) + 8ULL; - - return OK; +s32 sys_fs_get_mount_info(sys_fs_mount_info *info, uint64_t size, uint64_t *rsize) +{ + lv2syscall3(842, (u64)info, size, (uint64_t)rsize); + return_to_user_prog(s32); } -//******************************************************* -// ZIP -//******************************************************* +s32 sys_fs_get_mount_info_size(uint64_t *size) +{ + lv2syscall1(841, (uint64_t)size); + return_to_user_prog(s32); +} -u8 ExtractZip(char* ZipFile) +u8 DeviceDumpBootSector(u64 device_id, u32 sector_size, u32 first_sector, FAT32_boot_sector_t *boot_sector) { - char FileOUT[255]; - char Folder[255]; + u32 source; + u32 read; - int err=0; - struct zip *f_zip=NULL; + char *sector = (char *) malloc(sector_size); + if(sector==NULL) return FAILED; - strcpy(Folder, ZipFile); - Folder[strlen(Folder)-4]=0; + int ret = sys_storage_open(device_id, &source); + if( ret != 0 ) { + FREE(sector); + return FAILED; + } - mkdir(Folder, 0777); + sys_storage_read(source, first_sector, 1, sector, &read, 0); + sys_storage_close(source); - f_zip = zip_open(ZipFile, ZIP_CHECKCONS, &err); - if(err != ZIP_ER_OK || f_zip==NULL) - { - print_load("Error : zip_open"); + memcpy(boot_sector, sector, sizeof(FAT32_boot_sector_t)); + FREE(sector); + + FILE *f; + f = fopen("/dev_hdd0/boot_sector.bin", "wb"); + fwrite(boot_sector, sizeof(FAT32_boot_sector_t), 1, f); + fclose(f); + + return SUCCESS; +} + +u8 DeviceDumpMBRInfo(u64 device_id, u32 sector_size, mbr_t *mbr) +{ + u32 source; + u32 read; + + char *sector = (char *) malloc(sector_size); + if(sector==NULL) return FAILED; + + int ret = sys_storage_open(device_id, &source); + if( ret != 0 ) { + FREE(sector); + return FAILED; + } + + sys_storage_read(source, 0, 1, sector, &read, 0); + sys_storage_close(source); + + memcpy(mbr, sector, sizeof(mbr_t)); + FREE(sector); + + return SUCCESS; +} + +char *GetVolumeLabel(u64 device_id, u32 sector_size, u32 sector_position) +{ + u32 source; + u32 read; + + char *sector = (char *) malloc(sector_size); + if(sector==NULL) return NULL; + + int ret = sys_storage_open(device_id, &source); + if( ret != 0 ) { + FREE(sector); + return NULL; + } + + sys_storage_read(source, sector_position, 1, sector, &read, 0); + sys_storage_close(source); + + char *label = (char *) malloc(0xB); + if(label==NULL) { + FREE(sector); + return NULL; + } + + memcpy(label, sector, 0xB); + FREE(sector); + + return label; +} + + +u8 get_mount_info(char *mount_point, sys_fs_mount_info *mount_info) +{ + int ret = -1; + uint64_t i, size; + sys_fs_mount_info *info; + + ret = sys_fs_get_mount_info_size(&size); + if (ret != 0) { + //print_load("Error : sys_fs_get_mount_info_size FAILED ! %X", ret); + return SUCCESS; + } + + info = malloc(size*sizeof(sys_fs_mount_info)); + memset(info, 0, size*sizeof(sys_fs_mount_info)); + ret = sys_fs_get_mount_info(info, size, &size); + if (ret != 0) + { + //print_load("Error : sys_fs_get_mount_info FAILED ! %X", ret); + free(info); + return SUCCESS; + } + + for (i = 0; i < size; i++) + { + if (strcmp(info[i].mount_point, mount_point) == 0) + break; + } + + if (i == size) + { + //print_load("Error : FAILED to find mount_point !%X", ret); + free(info); + return SUCCESS; + } + + strcpy( mount_info->mount_point, info[i].mount_point ); + strcpy( mount_info->filesystem, info[i].filesystem ); + strcpy( mount_info->deviceName, info[i].deviceName ); + mount_info->ReadOnly = info[i].ReadOnly; + + free(info); + + return SUCCESS; +} + +u64 get_device(char *name) +{ + if (strcmp(name, "CELL_FS_IOS:ATA_HDD") == 0) + return ATA_HDD; + + if (strcmp(name, "CELL_FS_IOS:BDVD_DRIVE") == 0 || strcmp(name, "/dev_bdvd") == 0) + return BDVD_DRIVE; + + if (strcmp(name, "CELL_FS_IOS:PATA0_HDD_DRIVE") == 0) + return PATA0_HDD_DRIVE; + + if (strcmp(name, "CELL_FS_IOS:PATA0_BDVD_DRIVE") == 0 || strcmp(name, "/dev_bdvd") == 0) + return PATA0_BDVD_DRIVE; + + if (strcmp(name, "CELL_FS_IOS:PATA1_HDD_DRIVE") == 0) + return PATA1_HDD_DRIVE; + + if (strcmp(name, "CELL_FS_IOS:PATA1_BDVD_DRIVE") == 0) + return PATA1_BDVD_DRIVE; + + if (strcmp(name, "CELL_FS_IOS:BUILTIN_FLASH") == 0 || strcmp(name, "/dev_flash") == 0) + return BUILTIN_FLASH; + + if (strcmp(name, "CELL_FS_IOS:COMPACT_FLASH") == 0 || strcmp(name, "/dev_cf") == 0) + return COMPACT_FLASH; + + if (strcmp(name, "CELL_FS_IOS:MEMORY_STICK") == 0 || strcmp(name, "/dev_ms") == 0) + return MEMORY_STICK; + + if (strcmp(name, "CELL_FS_IOS:SD_CARD") == 0 || strcmp(name, "/dev_sd") == 0) + return SD_CARD; + + if (strncmp(name, "CELL_FS_IOS:USB_MASS_STORAGE", 28) == 0) + { + unsigned int num = ((name[28]-'0')*100) + ((name[29]-'0')*10) + (name[30]-'0'); + + if (num > 127) + return 0; + + return USB_MASS_STORAGE(num); + } + + if (strncmp(name, "/dev_usb", 8) == 0) + { + unsigned int num = ((name[8]-'0')*100) + ((name[9]-'0')*10) + (name[10]-'0'); + + if (num > 127) + return 0; + + return USB_MASS_STORAGE(num); + } + + if (strcmp(name, "CELL_FS_IOS:BUILTIN_FLSH1") == 0 || strcmp(name, "/dev_flash1") == 0) + return FLASH_PARTITION(2); + + if (strcmp(name, "CELL_FS_IOS:BUILTIN_FLSH2") == 0 || strcmp(name, "/dev_flash2") == 0) + return FLASH_PARTITION(3); + + if (strcmp(name, "CELL_FS_IOS:BUILTIN_FLSH3") == 0 || strcmp(name, "/dev_flash3") == 0) + return FLASH_PARTITION(4); + + if (strcmp(name, "CELL_FS_IOS:BUILTIN_FLSH4") == 0 || strcmp(name, "/dev_flash4") == 0) + return FLASH_PARTITION(5); + + if (strcmp(name, "CELL_FS_UTILITY:HDD0") == 0 || strcmp(name, "/dev_hdd0") == 0) + return HDD_PARTITION(1); + + if (strcmp(name, "CELL_FS_UTILITY:HDD1") == 0 || strcmp(name, "/dev_hdd1") == 0) + return HDD_PARTITION(2); + + if (strcmp(name, "CELL_FS_UTILITY:HDD2") == 0 || strcmp(name, "/dev_hdd2") == 0) + return HDD_PARTITION(3); + + if (strcmp(name, "CELL_FS_UTILITY:HDD") == 0) + return ATA_HDD; + + + //print_load("Error : Failed to find device_id of %s", name); + + return FAILED; +} + +u8 is_ExtDevice(char *mount_name) +{ + if( strncmp(mount_name, "/dev_usb", 8) == 0) return YES; + if( strcmp(mount_name, "/dev_sd") == 0) return YES; + if( strcmp(mount_name, "/dev_cf") == 0) return YES; + if( strcmp(mount_name, "/dev_ms") == 0) return YES; + + return NO; +} + +u64 GetFreeSpace(char *path) +{ + char temp[64]; + int n = 1; + while(path[n] != '/' && path[n] != 0) n++; + memcpy(temp, path, n); + temp[n] = '/'; + temp[n + 1]=0; + + u64 freeSize = 0; + u32 blockSize; + if(is_ntfs(temp)) { + struct statvfs vfs; + ps3ntfs_statvfs(path, &vfs); + freeSize = (((u64)vfs.f_bsize * vfs.f_bfree)); + } else { + sysFsGetFreeSize(temp, &blockSize, &freeSize); + freeSize = (((u64)blockSize * freeSize)); + } + + return freeSize; + +} + +void GetDeviceInfo(char *mount_point, DeviceInfo_t *DeviceInfo) +{ + char temp[64]; + + int n = 1; + while(mount_point[n] != '/' && mount_point[n] != 0) n++; + memcpy(temp, mount_point, n); + temp[n] = '/'; + temp[n + 1]=0; + + u64 freeSize = 0; + u32 blockSize; + + memset(DeviceInfo, 0, sizeof(DeviceInfo_t)); + + if(is_ntfs(temp)) + { + struct statvfs vfs; + ps3ntfs_statvfs(temp, &vfs); + DeviceInfo->FreeSpace = (((u64)vfs.f_bsize * vfs.f_bfree)); + DeviceInfo->TotalSpace = (((u64)vfs.f_bsize * vfs.f_blocks)); + temp[n]=0; + + strcpy(DeviceInfo->Label, ntfsGetVolumeName(temp)); + strcpy(DeviceInfo->FileSystem, "CELL_FS_NTFS"); + strcpy(DeviceInfo->MountPoint, temp); + sprintf(DeviceInfo->Name, "CELL_FS_IOS:USB_MASS_STORAGE%03d", NTFS_Test_Device(&temp[1])); + + // interface.feature + DeviceInfo->ReadOnly = NO; + + } else { + + sysFsGetFreeSize(temp, &blockSize, &freeSize); + DeviceInfo->FreeSpace = (((u64)blockSize * freeSize)); + temp[n]=0; + + + strcpy(DeviceInfo->MountPoint, temp); + +#ifdef RPCS3 + if(strcmp(temp, "/app_home")==0 || strcmp(temp, "/dev_flash")==0) {DeviceInfo->ReadOnly = YES; return;} + + + DeviceInfo->TotalSpace = Go(500); + strcpy(DeviceInfo->Label, "Device"); + strcpy(DeviceInfo->FileSystem, "CELL_FS_FAKE"); + strcpy(DeviceInfo->Name, "CELL_FS_FAKE:RPCS3"); + + DeviceInfo->ReadOnly = NO; + +#else + sys_fs_mount_info mount_info; + if( get_mount_info(temp, &mount_info) == SUCCESS) { + + DeviceInfo->ReadOnly = mount_info.ReadOnly; + strcpy(DeviceInfo->FileSystem, mount_info.filesystem); + strcpy(DeviceInfo->Name, mount_info.deviceName); + + //DeviceInfo->ReadOnly is used to display lock icon. + //if it's not accessible, it's locked. + //if it's not writable, it's locked. + if(strcmp(temp, "/host_root")==0 || strcmp(temp, "/app_home")==0) { + if( DeviceInfo->ReadOnly==NO ) { + DIR *d = opendir(temp); + if(d==NULL) { + DeviceInfo->ReadOnly = YES; + } else { + closedir(d); + } + } + } + + u64 device_id = get_device(mount_info.deviceName); + if(device_id != FAILED) { + + device_info_t device_info; + memset(&device_info, 0, sizeof(device_info)); + sys_storage_get_device_info(device_id, &device_info); + + memset(DeviceInfo->Label, 0, 32); + + if(is_ExtDevice(mount_info.mount_point)) { + + mbr_t mbr; + if( DeviceDumpMBRInfo(device_id, device_info.sector_size, &mbr) == SUCCESS) { + + //get 1st FAT32 partition, the other FAT32 aren't mounted... + u32 first_sector=0; + u32 total_sector=0; + int i; + for(i=0; i<4; i++) { + if(mbr.mbr_table_entry[i].partition_type == 0xB) { // FAT32 + first_sector = ES(mbr.mbr_table_entry[i].first_sector); + total_sector = ES(mbr.mbr_table_entry[i].total_sector); + break; + } + } + if(total_sector != 0) { + DeviceInfo->TotalSpace = (u64) total_sector * (u64) device_info.sector_size; + //DeviceInfo->TotalSpace = (u64) total_sector * (u64) 512ULL; + + FAT32_boot_sector_t boot_sector; + if( DeviceDumpBootSector(device_id, device_info.sector_size, first_sector, &boot_sector) == SUCCESS) { + + u32 entry_sector = ES(boot_sector.bios_parameter.sector_per_FAT) * boot_sector.bios_parameter.number_of_FAT + + ES(boot_sector.bios_parameter.reserved_sector) + + ES(boot_sector.bios_parameter.hidden_sectors); + + char *Label = GetVolumeLabel(device_id, ES(boot_sector.bios_parameter.byte_per_sec), entry_sector); + if( Label != NULL) { + strncpy( DeviceInfo->Label, Label, 0xB); + FREE(Label); + } else { + strncpy( DeviceInfo->Label, boot_sector.extended_bios_parameter.volume_label, 0xB); + if(strncmp(DeviceInfo->Label, "NO NAME ", 0xB) == 0) { + memset(DeviceInfo->Label, 0, 32); + } + } + + if( DeviceInfo->Label[0] != 0 ) { + for(i=0xA; i>0; i--) { + if( DeviceInfo->Label[i] != ' ') break; + DeviceInfo->Label[i] = 0; + } + } + } + } else { + DeviceInfo->TotalSpace = (u64) device_info.sector_count * (u64) device_info.sector_size; + } + } + + } else { + DeviceInfo->TotalSpace = (u64) device_info.sector_count * (u64) device_info.sector_size; + } + } + } +#endif + } +} + +//************* +// device TEST +//************* + +void DumpDevicesInfo() +{ + int ret = -1; + uint64_t i, size; + sys_fs_mount_info *info; + + ret = sys_fs_get_mount_info_size(&size); + if (ret != 0) { + print_load("Error : sys_fs_get_mount_info_size FAILED ! %X", ret); + return; + } + + info = malloc(size*sizeof(sys_fs_mount_info)); + memset(info, 0, size*sizeof(sys_fs_mount_info)); + ret = sys_fs_get_mount_info(info, size, &size); + if (ret != 0) + { + //print_load("Error : sys_fs_get_mount_info FAILED ! %X", ret); + free(info); + return; + } + for (i = 0; i < size; i++) + { + char temp[64]; + if(strcmp(info[i].mount_point, "/")==0) strcpy(temp, "/dev_hdd0/tmp/mount_info_root.bin"); + else sprintf(temp, "/dev_hdd0/tmp/mount_info_%s.bin", &info[i].mount_point[1]); + + FILE *f; + f = fopen(temp, "wb"); + if(f!=NULL) { + fwrite(&info[i], 1, sizeof(info[i]), f); + fclose(f); + } + + u64 device_id = get_device(info[i].deviceName); + if(device_id != FAILED) { + device_info_t device_info; + memset(&device_info, 0, sizeof(device_info)); + sys_storage_get_device_info(device_id, &device_info); + + if(strcmp(info[i].mount_point, "/")==0) strcpy(temp, "/dev_hdd0/tmp/device_info_root.bin"); + else sprintf(temp, "/dev_hdd0/tmp/device_info_%s.bin", &info[i].mount_point[1]); + + f = fopen(temp, "wb"); + if(f!=NULL) { + fwrite(&device_info, 1, sizeof(device_info), f); + fclose(f); + } + } + } + free(info); +} + +void DumpDevicesData() +{ + int ret=-1; + + u64 i, size; + sys_fs_mount_info *info; + + ret = sys_fs_get_mount_info_size(&size); + if (ret != 0) { + print_load("Error : sys_fs_get_mount_info_size FAILED ! %X", ret); + return; + } + + info = malloc(size*sizeof(sys_fs_mount_info)); + memset(info, 0, size*sizeof(sys_fs_mount_info)); + + ret = sys_fs_get_mount_info(info, size, &size); + if (ret != 0) + { + print_load("Error : DumpDevicesData sys_fs_get_mount_info FAILED ! %X", ret); + free(info); + return; + } + + for (i = 0; i < size; i++) + { + u64 device_id = get_device(info[i].deviceName); + if(device_id == FAILED) { + //print_load("Error : DumpDevicesData get_device %s = FAILED !", info[i].deviceName); + continue; + } + + device_info_t device_info; + memset(&device_info, 0, sizeof(device_info)); + ret = sys_storage_get_device_info(device_id, &device_info); + if( ret != 0 ) { + print_load("Error : DumpDevicesData sys_storage_get_device_info FAILED ! %X", ret); + continue; + } + + + u32 source; + u32 read; + + + ret = sys_storage_open(device_id, &source ); + if( ret != 0 ) { + //print_load("Error : DumpDevicesData sys_storage_open FAILED ! %X", ret); + continue; + } + + + u8 *sector = (u8 *) malloc(device_info.sector_size+1); + if(sector==NULL) { + print_load("Error : DumpDevicesData malloc FAILED ! %X", ret); + continue; + } + + char temp[128]; + if(strcmp(info[i].mount_point, "/")==0) strcpy(temp, "/dev_hdd0/tmp/rawdata_root.bin"); + else sprintf(temp, "/dev_hdd0/tmp/rawdata_%s.bin", &info[i].mount_point[1]); + + FILE *f; + f = fopen(temp, "wb"); + if(f==NULL) { + free(sector); + print_load("Error : DumpDevicesData fopen FAILED ! %s", temp); + continue; + } + + u64 flag = 0; + u64 count = device_info.sector_count; + + if(0x100000 < count) count=0x100000; else + if(0x10000 < count) count=0x10000; else + if(0x1000 < count) count=0x100; else + if(0x100 < count) count=0x100; else + if(0x10 < count) count=0x10; else + count=1; + + if(strncmp(info[i].mount_point, "/dev_flash", 10) ==0) flag = 0x22; + + int j; + for(j=0; jgame_number) position=game_number; @@ -10053,7 +10747,7 @@ void Get_Game_Size(char *path) char *get_unit(u64 nb) { - char *str =(char*) malloc(sizeof(char)*32); + char *str =(char*) malloc(sizeof(char)*16); char unit[3]; @@ -10118,8 +10812,7 @@ void Draw_Copy_screen(void *unused) while(copy_flag) { - cls(); - ps3pad_read(); + cls(); Draw_BGS(); Draw_Notification(); @@ -10168,11 +10861,11 @@ void Draw_Copy_screen(void *unused) if(size_current) free(size_current); - if(gathering_cancel==YES) DrawString(x+400-GetWidth(STR_UNKNOWN), y, STR_UNKNOWN); + if(gathering_cancel==YES) DrawString(x+400-WidthFromStr(STR_UNKNOWN), y, STR_UNKNOWN); else { char *size_tot = get_unit(total_size); - DrawString(x+400-GetWidth(size_tot), y, size_tot); + DrawString(x+400-WidthFromStr(size_tot), y, size_tot); if(size_tot) free(size_tot); } @@ -10226,18 +10919,22 @@ void Draw_Copy_screen(void *unused) } else { x=DrawButton(x, y, STR_TURNOFF_NO, BUTTON_SELECT); } - if(new_pad & BUTTON_SELECT) { + + tiny3d_Flip(); + //ScreenShot(); + ps3pad_read(); + + if(NewPad(BUTTON_SELECT)) { if(shutdown==YES) shutdown=NO; else shutdown=YES; } - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { if(gathering==YES) { gathering_cancel=YES; show_msg(STR_CANCELLED); } else copy_cancel = YES; } - tiny3d_Flip(); - //ScreenShot(); + } if(copy_cancel == YES) Delete_Game(copy_dst, -1); @@ -10930,7 +11627,6 @@ void TestCopy(char *src, char *dst, int i) } #define CopyFile CopyFile_ps3ntfs -void end_checking(); void SpeedTest() { @@ -11176,7 +11872,7 @@ u8 Move(char *src, char *dst) } //********************************************* -// GAME LIST TODOOOOO +// GAME LIST //********************************************* void free_GAMELIST() @@ -11185,11 +11881,14 @@ void free_GAMELIST() for(i=0; i<=game_number; i++) { FREE(list_game_path[i]); FREE(list_game_title[i]); + FREE(list_game_ID[i]); } FREE(list_game_path); FREE(list_game_title); + FREE(list_game_ID); FREE(list_game_platform); + FREE(list_game_havepic); } void sort_GAMELIST() @@ -11228,9 +11927,21 @@ void sort_GAMELIST() FREE(list_game_path[i]); list_game_path[i] = strcpy_malloc(tb); + strcpy(tb, list_game_ID[min]); + + FREE(list_game_ID[min]); + list_game_ID[min] = strcpy_malloc(list_game_ID[i]); + + FREE(list_game_ID[i]); + list_game_ID[i] = strcpy_malloc(tb); + t = list_game_platform[min]; list_game_platform[min] = list_game_platform[i]; list_game_platform[i] = t; + + t = list_game_havepic[min]; + list_game_havepic[min] = list_game_havepic[i]; + list_game_havepic[i] = t; } } @@ -11243,11 +11954,13 @@ void add_GAMELIST(char *path) && ext != _ISO_PSP && ext != _JB_PSP && ext != _ISO_PS2 && ext != _JB_PS2 && ext != _ISO_PS1 && ext != _JB_PS1) return; - + game_number++; - list_game_path = (char **) realloc( list_game_path, (game_number+1) * sizeof(char *)); + list_game_path = (char **) realloc(list_game_path, (game_number+1) * sizeof(char *)); list_game_title = (char **) realloc(list_game_title, (game_number+1) * sizeof(char *)); + list_game_ID = (char **) realloc(list_game_ID, (game_number+1) * sizeof(char *)); list_game_platform = (u8 *) realloc(list_game_platform, (game_number+1) * sizeof(u8) ); + list_game_havepic = (u8 *) realloc(list_game_havepic, (game_number+1) * sizeof(u8) ); list_game_path[game_number] = strcpy_malloc(path); list_game_platform[game_number] = ext; @@ -11259,9 +11972,17 @@ void add_GAMELIST(char *path) if(ext == _ISO_PS3 || ext == _JB_PS3 || ext == _ISO_PSP || ext == _JB_PSP) { GetParamSFO("TITLE", title, game_number, NULL); } - list_game_title[game_number] = strcpy_malloc(title); + char ID[20]; + if( Get_ID(list_game_path[game_number], list_game_platform[game_number], ID) == SUCCESS) { + list_game_ID[game_number] = strcpy_malloc(ID); + } else { + list_game_ID[game_number] = strcpy_malloc("MGZ_ERROR.404"); + } + + //list_game_havepic[game_number] = Have_GAMEPIC(game_number); + list_game_havepic[game_number] = GAMEPIC_NONE; } void remove_GAMELIST(s64 pos) @@ -11276,17 +11997,37 @@ void remove_GAMELIST(s64 pos) FREE(list_game_title[i]); list_game_title[i] = strcpy_malloc(list_game_title[i+1]); + FREE(list_game_ID[i]); + list_game_ID[i] = strcpy_malloc(list_game_ID[i+1]); + list_game_platform[i] = list_game_platform[i+1]; + + list_game_havepic[i] = list_game_havepic[i+1]; } FREE(list_game_title[game_number]); FREE(list_game_path[game_number]); + FREE(list_game_ID[game_number]); game_number--; -} - -void get_GAMELIST(char *scan_path) -{ + if(position > game_number) position = game_number; + + for(i=0; i 0) ) { - if( (total_size <= copy_current_size && copy_current_size != 0) || (gathering_cancel == YES && copy_cancel==NO && copy_current_size > 0) ) { - - //AddGame(copy_dst); - add_GAMELIST(copy_dst); - sort_GAMELIST(); - + init_Load_GAMEPIC(); read_fav(); - start_Load_GamePIC(); - + show_msg(STR_DONE); } else { Delete_Game(copy_dst, -1); @@ -11417,9 +12212,8 @@ void Draw_GameProperties() } char Game_id[20]; - if(Get_ID(list_game_path[position], list_game_platform[position], Game_id) == FAILED) { - strcpy(Game_id, STR_UNKNOWN); - } + if( list_game_ID[position] == NULL) strcpy(Game_id, STR_UNKNOWN); + else strcpy(Game_id, list_game_ID[position]); u8 LoopBreak=1; while(LoopBreak) { @@ -11427,7 +12221,7 @@ void Draw_GameProperties() cls(); Draw_BGS(); - Draw_ICON0(position, 630, 30, 100, 141.3, 75.9); + Draw_GAMEPIC(position, GAMEPIC_ICON0 | GAMEPIC_COVER2D, 630, 30, 100, 141.3, 0, NO, WHITE); int x1=50, y=40; int xt; @@ -11529,15 +12323,15 @@ void Draw_GameProperties() FontColor(COLOR_3); xt=DrawFormatString(x1 , y, "%s :", STR_ELFCRC); FontColor(COLOR_1); - DrawString(xt+10 , y, PS2CRC_STR); + DrawFormatString(xt+10 , y, "%08X", PS2CRC); y+=new_line(1); - if(strcmp(PS2CRC_STR, PS2ORICRC_STR) != 0) { + if(PS2CRC != PS2ORICRC) { FontColor(COLOR_3); xt=DrawFormatString(x1 , y, "%s :", STR_ELFCRCO); FontColor(COLOR_1); - DrawString(xt+10 , y, PS2ORICRC_STR); + DrawFormatString(xt+10 , y, "%08X",PS2ORICRC); y+=new_line(1); } @@ -11553,10 +12347,9 @@ void Draw_GameProperties() tiny3d_Flip(); ScreenShot(); - ps3pad_read(); - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { LoopBreak = 0; return; } @@ -11631,11 +12424,11 @@ void dump_flash(char *dump_path) sprintf(temp, "%s_%d", dump_path, j); } - ret = open_device( 0x100000000000004ull, &source ); + ret = sys_storage_open( FLASH_NOR, &source ); if( ret != 0 ) { size_dump=0x77E00; - close_device(source); - open_device(0x100000000000001ull, &source); + sys_storage_close(source); + sys_storage_open(FLASH_NAND, &source); } else { size_dump=0x8000 ; @@ -11646,13 +12439,13 @@ void dump_flash(char *dump_path) f = fopen(temp, "wb"); if(f==NULL) return; for(i=0x0; i < size_dump; i+=0x1) { - read_device( source, i, 0x1, sector, &read, 0x22 ); + sys_storage_read( source, i, 0x1, sector, &read, 0x22 ); fwrite(sector, sizeof(sector), 1, f); prog_bar1_value = (i*100)/size_dump; if(cancel==YES) break; } fclose(f); - close_device(source); + sys_storage_close(source); if(cancel==YES) { Delete(temp); @@ -12361,7 +13154,7 @@ typedef struct float sysVers; } update_data; -void get_game_update(int position) +void get_game_update() { start_loading(); @@ -12369,7 +13162,6 @@ void get_game_update(int position) int shutdown=NO; char url[128]; char dst[128]; - char title_id[10]; int file_size=0; int n=0; int k=0; @@ -12377,14 +13169,9 @@ void get_game_update(int position) char *xml; int d_position=0; char *size_str[512]; - - if(GetParamSFO("TITLE_ID", title_id, position, NULL)==FAILED) { - print_load("Error: Get title_id failed"); - goto screen; - } - - sprintf(url, "https://a0.ww.np.dl.playstation.net/tpl/np/%s/%s-ver.xml", title_id, title_id); - sprintf(dst, "/dev_hdd0/game/%s/USRDIR/sys/%s.xml", ManaGunZ_id, title_id); + + sprintf(url, "https://a0.ww.np.dl.playstation.net/tpl/np/%s/%s-ver.xml", list_game_ID[position], list_game_ID[position]); + sprintf(dst, "/dev_hdd0/game/%s/USRDIR/sys/%s.xml", ManaGunZ_id, list_game_ID[position]); if(download(url, dst)==FAILED) { print_load("Error: Download xml failed"); @@ -12434,8 +13221,7 @@ void get_game_update(int position) u8 LoopBreak=1; while(LoopBreak) { - cls(); - ps3pad_read(); + cls(); Draw_BGS(); Draw_Notification(); @@ -12488,21 +13274,22 @@ void get_game_update(int position) tiny3d_Flip(); ScreenShot(); + ps3pad_read(); - if(new_pad & BUTTON_SELECT && nPKG!=-1) { + if(NewPad(BUTTON_SELECT) && nPKG!=-1) { if(shutdown==YES) shutdown=NO; else shutdown=YES; } - if(new_pad & BUTTON_UP) { + if(NewPad(BUTTON_UP)) { if(d_position>0) d_position--; } - if(new_pad & BUTTON_DOWN) { + if(NewPad(BUTTON_DOWN)) { if(d_position0) { + if(NewPad(BUTTON_SQUARE) && nPKG>0) { start_loading(); for(n=0; n<=nPKG; n++) { sprintf(dst, "/dev_hdd0/packages%s", strrchr(data[n].url, '/')); @@ -12542,6 +13329,7 @@ int read_scan_dir() char temp[128]; scan_dir_number=-1; + memset(scan_dir, 0, sizeof(scan_dir)); sprintf(scanPath, "/dev_hdd0/game/%s/USRDIR/setting/scan_dir.txt", ManaGunZ_id); @@ -12556,7 +13344,6 @@ int read_scan_dir() if(strstr(temp, "\r") != NULL ) strtok(temp, "\r"); scan_dir_number++; strcpy(scan_dir[scan_dir_number], temp); - } fclose(fp); @@ -12584,6 +13371,166 @@ void write_scan_dir() } +//******************************************************* +// Memory Monitor +//******************************************************* + +typedef struct { + uint32_t total; + uint32_t avail; +} sysMemoryInfo_t; + +s32 sysMemoryGetUserMemorySize(sysMemoryInfo_t * MemInfo) +{ + lv2syscall1(SYSCALL_MEMORY_GET_USER_MEMORY_SIZE, (uint64_t) MemInfo); + return_to_user_prog(s32); +} + +static sys_ppu_thread_t MemMonitor_id; +u8 MemMonitor = NO; +sysMemoryInfo_t MemInfo; + +void Draw_MemMonitor() +{ + if(MemMonitor==NO) return; + + int i; + + float x=30; + float y=20; + float w=800; + float h=10; + float e=4; + + Draw_Box(0, y-10, 0, 0, X_MAX, h*2+2*e+20*2+20, GREY, NO); + + float MemUsed = MemInfo.total - MemInfo.avail ; + + float w2 = (MemUsed * w) / MemInfo.total; + + Draw_Box(x-e, y-e, 0, 0, w+2*e, h+2*e, WHITE, NO); + Draw_Box(x, y, 0, 0, w, h, BLACK, NO); + Draw_Box(x, y, 0, 0, w2, h, GREEN, NO); + + char *MemUsed_u = get_unit(MemUsed); + char *MemTot_u = get_unit(MemInfo.total); + + y+=h+2*e; + + FontColor(WHITE); + FontSize(15); + float val = (float) ((MemUsed * 100) / MemInfo.total); + DrawFormatString(x, y, "RAM %.1f%% - %s/%s", val, MemUsed_u, MemTot_u); + + free(MemUsed_u); + free(MemTot_u); + + y+=20; + +//FONT + float w_font_max = (float) ( ( _Mo(TEXTURE_FONT_SIZE_MAX) * w) / _Mo(TEXTURE_SIZE_MAX)); + float w_font = (float) ( ( _Mo(TEXTURE_FONT_SIZE) * w_font_max) / _Mo(TEXTURE_FONT_SIZE_MAX)); + Draw_Box(x-e, y-e, 0, 0, w_font_max+e, h+2*e, BLUE, NO); + Draw_Box(x, y, 0, 0, w_font_max , h, BLACK, NO); + Draw_Box(x, y, 0, 0, w_font , h, GREEN, NO); + FontColor(BLUE); + + float x1 = DrawString(x, y+h+2*e, "FONT") + 10; + + x+=w_font_max; + +// THEME + + float w_theme_max = (float) ( ( _Mo(TEXTURE_THEME_SIZE_MAX) * w) / _Mo(TEXTURE_SIZE_MAX)); + float w_theme = (float) ( ( _Mo(TEXTURE_THEME_SIZE) * w_theme_max) / _Mo(TEXTURE_THEME_SIZE_MAX)); + Draw_Box(x, y-e, 0, 0, w_theme_max, h+2*e, ORANGE, NO); + Draw_Box(x, y, 0, 0, w_theme_max , h, BLACK, NO); + Draw_Box(x, y, 0, 0, w_theme , h, GREEN, NO); + + + FontColor(ORANGE); + if(x > x1) x1=x; + x1 = DrawString(x1, y+h+2*e, "THEME")+ 10; + +//GAMEPIC + x+= w_theme_max; + float w_gamepic_max = (float) ( ( _Mo(TEXTURE_GAMEPIC_TOT_SIZE_MAX) * w) / _Mo(TEXTURE_SIZE_MAX)); + float w_gamepic_slot_max = (float) ((float) w_gamepic_max / (float) GAMEPIC_MAX); + Draw_Box(x, y-e, 0, 0, w_gamepic_max, h+2*e, PURPLE, NO); + for(i=0; i x1) x1=x; + FontColor(PURPLE); + x1 = DrawFormatString(x1, y+h+2*e, "GAMEPIC : %d/%d slots", VRAM_GetSlotUsed(), GAMEPIC_MAX) + 10; + +// COVER + x+= w_gamepic_max; + float w_cover_max = (float) ( ( _Mo(TEXTURE_COVER_SIZE_MAX) * w) / _Mo(TEXTURE_SIZE_MAX)); + float w_cover = (float) ( ( _Mo(TEXTURE_COVER_SIZE) * w_cover_max) / _Mo(TEXTURE_COVER_SIZE_MAX)); + Draw_Box(x, y-e, 0, 0, w_cover_max, h+2*e, PINK, NO); + Draw_Box(x, y, 0, 0, w_cover_max , h, BLACK, NO); + Draw_Box(x, y, 0, 0, w_cover , h, GREEN, NO); + if(x > x1) x1=x; + FontColor(PINK); + x1 = DrawString(x1, y+h+2*e, "COVER") + 10; + + x+= w_cover_max; + float w_tmp_max = (float) ( ( _Mo(TEXTURE_TMP_SIZE_MAX) * w) / _Mo(TEXTURE_SIZE_MAX)); + float w_tmp = (float) ( ( _Mo(TEXTURE_TMP_SIZE) * w_tmp_max) / _Mo(TEXTURE_TMP_SIZE_MAX)); + Draw_Box(x, y-e, 0, 0, w_tmp_max+e, h+2*e, YELLOW, NO); + Draw_Box(x, y, 0, 0, w_tmp_max , h, BLACK, NO); + Draw_Box(x, y, 0, 0, w_tmp , h, GREEN, NO); + if(x > x1) x1=x; + FontColor(YELLOW); + x1 = DrawString(x1, y+h+2*e, "TEMP") + 10; + + FontColor(WHITE); + + Draw_Box(0, y+h+2*e+20 , 0, 0, X_MAX, 20, GREY, NO); + DrawString(30, y+h+2*e+20, GAMEPIC_LOG); + + Draw_Box(30, y+h+2*e+40, 0, 0, X_MAX-30*2, 2, WHITE, NO); + float x_gpos = (position*(X_MAX-30*2)) / game_number; + Draw_Box(30+x_gpos, y+h+2*e+40-2, 0, 0, 2, 6, GREEN, NO); +} + +void MemMonitor_thread(void *unused) +{ + + while(MemMonitor) { + sysMemoryGetUserMemorySize(&MemInfo); + sleep(1); + } + + sysThreadExit(0); +} + +void start_MemMonitor() +{ + if(MemMonitor==NO) { + MemMonitor = YES; + sysThreadCreate(&MemMonitor_id, MemMonitor_thread, NULL, 999, 0x2000, THREAD_JOINABLE, "MemMonitor"); + } +} + +void end_MemMonitor() +{ + if(MemMonitor==YES) { + u64 ret; + MemMonitor = NO; + sysThreadJoin(MemMonitor_id, &ret); + } +} + + //******************************************************* // DEVICE //******************************************************* @@ -12619,7 +13566,7 @@ void getDevices() || strstr(dir->d_name, "dev_hdd0") || strstr(dir->d_name, "dev_sd") || strstr(dir->d_name, "dev_ms") - || strstr(dir->d_name, "dev_cd") + || strstr(dir->d_name, "dev_cf") ) { device_number++; @@ -12630,177 +13577,303 @@ void getDevices() } -static sys_ppu_thread_t check_device_id; -void check_device_thread(void *unused) +//******************************************************* +// PlugAndPlay +//******************************************************* + +// it's used for the notifications only +#define DEVICE_USB(x) x +#define DEVICE_BDVD_DRIVE 128 +#define DEVICE_MEMORY_STICK 129 +#define DEVICE_COMPACT_FLASH 130 +#define DEVICE_SD_CARD 131 +#define DEVICE_NUMBER 132 + +u8 PluggedDevices[DEVICE_NUMBER] = {[0 ... DEVICE_NUMBER-1] = -1}; + +u64 GetDeviceNumber() { - int i; - u8 device_number_OLD = 0; + u64 Number=0; + int r, i; + device_info_t device_info; + char temp_msg[128]={0}; + char msg[128] = {0}; + +// USB 0 -> 127 + for(i=0; i< 128; i++) { + memset(&device_info, 0, sizeof(device_info)); + r = sys_storage_get_device_info(USB_MASS_STORAGE(i), &device_info); + if(r<0) { + if(PluggedDevices[DEVICE_USB(i)] == YES) { + sprintf(temp_msg, "USB device %03d is unplugged.\n", i); + strcat(msg, temp_msg); + } + PluggedDevices[DEVICE_USB(i)] = NO; + } else { + Number++; + if(PluggedDevices[DEVICE_USB(i)] == NO) { + sprintf(temp_msg, "USB device %03d is plugged.\n", i); + strcat(msg, temp_msg); + } + PluggedDevices[DEVICE_USB(i)] = YES; + } + } + +// COMPACT_FLASH + memset(&device_info, 0, sizeof(device_info)); + r = sys_storage_get_device_info(COMPACT_FLASH, &device_info); + if(r<0) { + if(PluggedDevices[DEVICE_COMPACT_FLASH] == YES) { + strcat(msg, "Compact flash device is plugged.\n"); + } + PluggedDevices[DEVICE_COMPACT_FLASH] = NO; + } else { + if(PluggedDevices[DEVICE_COMPACT_FLASH] == NO) { + strcat(msg, "Compact flash device is plugged.\n"); + } + PluggedDevices[DEVICE_COMPACT_FLASH] = YES; + Number++; + } + +// MEMORY_STICK + memset(&device_info, 0, sizeof(device_info)); + r = sys_storage_get_device_info(MEMORY_STICK, &device_info); + if(r<0) { + if(PluggedDevices[DEVICE_MEMORY_STICK] == YES) { + strcat(msg, "Memory stick device is plugged.\n"); + } + PluggedDevices[DEVICE_MEMORY_STICK] = NO; + } else { + if(PluggedDevices[DEVICE_MEMORY_STICK] == NO) { + strcat(msg, "Memory stick device is plugged.\n"); + } + PluggedDevices[DEVICE_MEMORY_STICK] = YES; + Number++; + } + +// SD_CARD + memset(&device_info, 0, sizeof(device_info)); + r = sys_storage_get_device_info(SD_CARD, &device_info); + if(r<0) { + if(PluggedDevices[DEVICE_SD_CARD] == YES) { + strcat(msg, "SD card device is plugged.\n"); + } + PluggedDevices[DEVICE_SD_CARD] = NO; + } else { + if(PluggedDevices[DEVICE_SD_CARD] == NO) { + strcat(msg, "SD card device is plugged.\n"); + } + PluggedDevices[DEVICE_SD_CARD] = YES; + Number++; + } - for(i=0; i<8; i++) { - if( PS3_NTFS_IsInserted(i) == true ) { - device_number_OLD++; +// BDVD_DRIVE + memset(&device_info, 0, sizeof(device_info)); + r = sys_storage_get_device_info(BDVD_DRIVE, &device_info); + if(r<0) { + if(PluggedDevices[DEVICE_BDVD_DRIVE] == YES) { + strcat(msg, "Disc is ejected.\n"); } + PluggedDevices[DEVICE_BDVD_DRIVE] = NO; + } else { + if(PluggedDevices[DEVICE_BDVD_DRIVE] == NO) { + strcat(msg, "Disc is inserted.\n"); + } + PluggedDevices[DEVICE_BDVD_DRIVE] = YES; + Number++; } + + if(msg[0] != 0) show_msg(msg); + + return Number; +} + +u8 do_Refresh=NO; +u8 PlugAndPlay=NO; +u8 RefreshRetry=NO; + +static sys_ppu_thread_t PlugAndPlay_id; +void PlugAndPlay_thread(void *unused) +{ + u64 Old_NumberOfDevice = 0; - while(checking == YES) { + Old_NumberOfDevice = GetDeviceNumber(); - u8 device_number_NEW = 0; + while(PlugAndPlay) { + + u64 NumberOfDevice = GetDeviceNumber(); - for(i=0; i<8; i++) { - if( PS3_NTFS_IsInserted(i) == true ) { - device_number_NEW++; + if ( Old_NumberOfDevice != NumberOfDevice) { + + do_Refresh=YES; + + if( Old_NumberOfDevice < NumberOfDevice && RefreshRetry == YES) { + // refresh several times because some devices takes times to be mounted + sleep(2); + if(do_Refresh==NO) do_Refresh = YES; + sleep(2); + if(do_Refresh==NO) do_Refresh = YES; } + Old_NumberOfDevice = NumberOfDevice; } - device_plug = device_number_NEW - device_number_OLD; + sleep(1); - if(device_plug != 0) { - checking=NO; - break; - } } sysThreadExit(0); } -void start_checking() +void start_PlugAndPlay() { - checking = YES; - sysThreadCreate(&check_device_id, check_device_thread, NULL, 999, 0x2000, THREAD_JOINABLE, "check"); + if(PlugAndPlay==NO) { + PlugAndPlay = YES; + sysThreadCreate(&PlugAndPlay_id, PlugAndPlay_thread, NULL, 999, 0x2000, THREAD_JOINABLE, "PlugAndPlay"); + } } -void end_checking() +void end_PlugAndPlay() { - u64 ret; - checking = NO; - sysThreadJoin(check_device_id, &ret); + if(PlugAndPlay) { + u64 ret; + PlugAndPlay = NO; + sysThreadJoin(PlugAndPlay_id, &ret); + } } -int move_bdemubackup_to_origin(char *device_path); - -void check_device() +void AutoRefresh_GAMELIST() { - if(device_plug != 0) { - - int i=0, j=0, k; - char scan_path[128], temp[128]; - - end_checking(); - - start_loading(); + if(PlugAndPlay==NO) { start_PlugAndPlay(); return; } + if(do_Refresh == NO) return; + + do_Refresh = NO; + + start_loading(); + + int i=0, j=0, k; + char scan_path[128], temp[128]; + + char list_device_OLD[32][32]={{0}}; + int8_t device_number_OLD=-1; + + memcpy(list_device_OLD, list_device, sizeof(list_device)); + device_number_OLD = device_number; - char list_device_OLD[20][20]={{0}}; - int8_t device_number_OLD=-1; + getDevices(); + + s64 old_game_number = game_number; + + RefreshRetry = NO; // It retry from here... + + if( device_number == device_number_OLD) { + print_load("Please wait..."); + sleep(2); + getDevices(); + if( device_number == device_number_OLD) { + print_load("Please wait even more..."); + sleep(2); + getDevices(); + } + } + + + if(device_number < device_number_OLD) { // *** unplug device *** - memcpy(list_device_OLD, list_device, sizeof(list_device)); - device_number_OLD = device_number; + u8 unplugged_devices = device_number_OLD - device_number; + char path_unplug[32][32]={{0}}; - getDevices(); + k=0; - if(device_number < device_number_OLD) { // *** unplug device *** - for(k=0; k < device_number_OLD - device_number ; k++) { - char path_unplug[20]; - for(i=0; i<=device_number_OLD; i++) { - for(j=0;j<=device_number;j++) { - if(strcmp(list_device[j], list_device_OLD[i]) == 0) break; - if(j==device_number) strcpy(path_unplug, list_device_OLD[i]); - } - } - - print_load("%s unplugged", path_unplug); - - if(strncmp(path_unplug, "dev_", 4)==0) { - char mount_point[20]; - sprintf(mount_point, "/%s", path_unplug); - sysFsAioFinish(mount_point); - } - - s64 old_game_number = game_number; - - for(i=0; i<=game_number; i++) { - - if(strstr(list_game_path[i], path_unplug) == NULL) { - remove_GAMELIST(i); - i--; - } - } - - if(game_number == old_game_number) { - device_plug = 0; - start_checking(); - end_loading(); - return; + for(i=0; i<=device_number_OLD; i++) { + for(j=0;j<=device_number;j++) { + if(strcmp(list_device[j], list_device_OLD[i]) == 0) break; + if(j==device_number) { + strcpy(path_unplug[k], list_device_OLD[i]); + k++; } } - } - else if(device_number > device_number_OLD) { // *** plug device *** - for(k=0; k < device_number - device_number_OLD ; k++) { - - char path_plug[20]; - for(i=0;i<=device_number; i++) { - for(j=0;j<=device_number_OLD;j++) { - if(strcmp(list_device_OLD[j], list_device[i])==0) break; - if(j==device_number_OLD) strcpy(path_plug, list_device[i]); - } - } - - print_load("%s plugged", path_plug); - - if(strncmp(path_plug, "dev_", 4)==0) { - char mount_point[20]; - sprintf(mount_point, "/%s", path_plug); - if(sysFsAioInit(mount_point) != 0) - print_load("Warning : failed to sysFsAioInit(%s)", mount_point); - - } - - s64 old_game_number = game_number; - - print_load( "Get directories names from scan_dir.txt"); - //get scan dir - if(read_scan_dir()==FAILED) { - device_plug = 0; - start_checking(); - end_loading(); - return; - } - - sprintf(temp, "/%s", path_plug); - move_bdemubackup_to_origin(temp); - - //get game list - for(j=0; j<=scan_dir_number; j++) { - sprintf(scan_path, "/%s/%s", path_plug, scan_dir[j]); + if(k==unplugged_devices) break; + } + + k=0; + for(k=0; k < unplugged_devices ; k++) { + print_load("%s unplugged", path_unplug[k]); + + if(strncmp(path_unplug[k], "dev_", 4)==0) { + char mount_point[20]; + sprintf(mount_point, "/%s", path_unplug[k]); + sysFsAioFinish(mount_point); + } - get_GAMELIST(scan_path); + int l = strlen(path_unplug[k]); + for(i=0; i<=game_number; i++) { + if(strncmp(&list_game_path[i][1], path_unplug[k], l) == 0) { + remove_GAMELIST(i); + //i--; } - - if(game_number == old_game_number) { - device_plug = 0; - start_checking(); - end_loading(); - return; + } + } + } else + if(device_number > device_number_OLD) { // *** plug device *** + + u8 plugged_devices = device_number - device_number_OLD; + char path_plug[32][32]={{0}}; + + k=0; + + for(i=0; i<=device_number; i++) { + for(j=0;j<=device_number_OLD;j++) { + if(strcmp(list_device_OLD[j], list_device[i]) == 0) break; + if(j==device_number_OLD) { + strcpy(path_plug[k], list_device[i]); + k++; } - - sort_GAMELIST(); } + if(k==plugged_devices) break; } + for(k=0; k < plugged_devices; k++) { + + print_load("%s plugged", path_plug[k]); + + if(strncmp(path_plug[k], "dev_", 4)==0) { + char mount_point[20]; + sprintf(mount_point, "/%s", path_plug[k]); + if(sysFsAioInit(mount_point) != 0) + print_load("Warning : failed to sysFsAioInit(%s)", mount_point); + } + + print_load( "Get directory names from scan_dir.txt"); + //get scan dir + if(read_scan_dir()==FAILED) { + do_Refresh = NO; + end_loading(); + return; + } + + sprintf(temp, "/%s", path_plug[k]); + move_bdemubackup_to_origin(temp); + + //get game list + for(j=0; j<=scan_dir_number; j++) { + sprintf(scan_path, "/%s/%s", path_plug[k], scan_dir[j]); + + get_GAMELIST(scan_path); + } + } + } + + if(game_number != old_game_number) { print_load("Reloading..."); - - device_plug = 0; + + sort_GAMELIST(); + init_Load_GAMEPIC(); GetThemes(); - read_fav(); - - start_Load_GamePIC(); - - start_checking(); - end_loading(); - - } - else if(checking==NO) start_checking(); + } + + end_loading(); } //******************************************************* @@ -12894,9 +13967,12 @@ u8 CheckMD5(char *path) ExtractZipFile(MD5_DB, MD5_FILE, MD5_redump); if( path_info(MD5_redump) == _NOT_EXIST ) - if( Download_MD5(gameID) == FAILED ) return FAILED; + if( Download_MD5(gameID) == FAILED ) { + print_load("Error : redump MD5 not found"); + return FAILED; + } - if ( md5_file(path, (u8 *) MD5_local) == FAILED ) { + if( md5_file(path, (u8 *) MD5_local) == FAILED ) { print_load("Error : failed to get MD5"); return FAILED; } @@ -12926,8 +14002,8 @@ u8 CheckMD5(char *path) } fputs("*** MD5 from redump.org ***\n\n", f); - fputs(MD5_buff, f); - fputs("\n\n*** real MD5 ***\n\n", f); + fwrite(MD5_buff, size, 1, f); + fputs("\n*** real MD5 ***\n\n", f); fputs(MD5_local_STR, f); fputs(" ", f); fputs(&strrchr(path, '/')[1], f); @@ -13104,9 +14180,27 @@ uint8_t PS2emu_is_patched() return NO; } +u32 getCRC(char *self) +{ + u32 memsize=0x1000; + + FILE *f = fopen(self, "rb"); + if(f==NULL) return 0; + u8 *mem=malloc(memsize); + if(mem==NULL) return 0; + fread(mem, memsize, 1, f); + fclose(f); + u32 crc = crc32(0L, Z_NULL, 0); + crc = crc32(crc, (const unsigned char*) mem, memsize); + free(mem); + + return crc; +} + uint8_t patch_PS2() { - + if( HEN ) return SUCCESS; + if( PS2emu_is_patched() == YES ) return SUCCESS; uint8_t *ps2gxemu_stage1; @@ -13122,7 +14216,7 @@ uint8_t patch_PS2() uint8_t *ps2netemu_stage2; uint32_t ps2netemu_stage2_size; - uint64_t value; + u32 crc; FILE* f; char tmp_dir[128]; @@ -13138,120 +14232,36 @@ uint8_t patch_PS2() Delete(tmp_dir); mkdir(tmp_dir, 0777); - f = fopen("/dev_flash/ps2emu/ps2_gxemu.self", "rb"); - if(f==NULL) return FAILED; - fseek(f, 0xF8, SEEK_SET); - fread(&value, 8, 1, f); - fclose(f); + crc = getCRC("/dev_flash/ps2emu/ps2_gxemu.self"); - if(value == 0x2BB8028) { // 421+ - ps2gxemu_stage1_size = (uint32_t) ps2gxemu_stage1_421_bin_size; - ps2gxemu_stage1 = (uint8_t *) ps2gxemu_stage1_421_bin; - ps2gxemu_stage2_size = (uint32_t) ps2gxemu_stage2_421_bin_size; - ps2gxemu_stage2 = (uint8_t *) ps2gxemu_stage2_421_bin; - } else - if(value == 0x2BB8A28) { // 430+ - ps2gxemu_stage1_size = (uint32_t) ps2gxemu_stage1_430_bin_size; - ps2gxemu_stage1 = (uint8_t *) ps2gxemu_stage1_430_bin; - ps2gxemu_stage2_size = (uint32_t) ps2gxemu_stage2_430_bin_size; - ps2gxemu_stage2 = (uint8_t *) ps2gxemu_stage2_430_bin; - } else - if(value == 0x2BB8C28) { // 440+ - ps2gxemu_stage1_size = (uint32_t) ps2gxemu_stage1_440_bin_size; - ps2gxemu_stage1 = (uint8_t *) ps2gxemu_stage1_440_bin; - ps2gxemu_stage2_size = (uint32_t) ps2gxemu_stage2_440_bin_size; - ps2gxemu_stage2 = (uint8_t *) ps2gxemu_stage2_440_bin; - } else - if(value == 0x2BBAB28) { // 453+ - ps2gxemu_stage1_size = (uint32_t) ps2gxemu_stage1_453_bin_size; - ps2gxemu_stage1 = (uint8_t *) ps2gxemu_stage1_453_bin; - ps2gxemu_stage2_size = (uint32_t) ps2gxemu_stage2_453_bin_size; - ps2gxemu_stage2 = (uint8_t *) ps2gxemu_stage2_453_bin; - } else return FAILED; - - if ( ps2gen("/dev_flash/ps2emu/ps2_gxemu.self", tmp_gx, ps2gxemu_stage1, ps2gxemu_stage1_size) == FAILED) { + if( get_gxemu(crc, &ps2gxemu_stage1, &ps2gxemu_stage1_size, &ps2gxemu_stage2, &ps2gxemu_stage2_size)==FAILED) { + print_load("Error: Failed to load_gxemu"); return FAILED; } - f = fopen("/dev_flash/ps2emu/ps2_emu.self", "rb"); - if(f==NULL) return FAILED; - fseek(f, 0xF8, SEEK_SET); - fread(&value, 8, 1, f); - fclose(f); + if( ps2gen("/dev_flash/ps2emu/ps2_gxemu.self", tmp_gx, ps2gxemu_stage1, ps2gxemu_stage1_size) == FAILED) { + return FAILED; + } - if(value == 0x1079370) { // 421+ - ps2hwemu_stage1_size = (uint32_t) ps2hwemu_stage1_421_bin_size; - ps2hwemu_stage1 = (uint8_t *) ps2hwemu_stage1_421_bin; - ps2hwemu_stage2_size = (uint32_t) ps2hwemu_stage2_421_bin_size; - ps2hwemu_stage2 = (uint8_t *) ps2hwemu_stage2_421_bin; - } else - if(value == 0x1079C70) { // 430+ - ps2hwemu_stage1_size = (uint32_t) ps2hwemu_stage1_421_bin_size; - ps2hwemu_stage1 = (uint8_t *) ps2hwemu_stage1_421_bin; - ps2hwemu_stage2_size = (uint32_t) ps2hwemu_stage2_430_bin_size; - ps2hwemu_stage2 = (uint8_t *) ps2hwemu_stage2_430_bin; - } else - if(value == 0x1079DF0) { // 440+ - ps2hwemu_stage1_size = (uint32_t) ps2hwemu_stage1_440_bin_size; - ps2hwemu_stage1 = (uint8_t *) ps2hwemu_stage1_440_bin; - ps2hwemu_stage2_size = (uint32_t) ps2hwemu_stage2_440_bin_size; - ps2hwemu_stage2 = (uint8_t *) ps2hwemu_stage2_440_bin; - } else - if(value == 0x107BDF0) { // 453+ - ps2hwemu_stage1_size = (uint32_t) ps2hwemu_stage1_453_bin_size; - ps2hwemu_stage1 = (uint8_t *) ps2hwemu_stage1_453_bin; - ps2hwemu_stage2_size = (uint32_t) ps2hwemu_stage2_453_bin_size; - ps2hwemu_stage2 = (uint8_t *) ps2hwemu_stage2_453_bin; - } else return FAILED; + crc = getCRC("/dev_flash/ps2emu/ps2_emu.self"); + + if( get_hwemu(crc, &ps2hwemu_stage1, &ps2hwemu_stage1_size, &ps2hwemu_stage2, &ps2hwemu_stage2_size)==FAILED) { + print_load("Error: Failed to load_hwemu"); + return FAILED; + } if ( ps2gen("/dev_flash/ps2emu/ps2_emu.self", tmp_hw, ps2hwemu_stage1, ps2hwemu_stage1_size) == FAILED) { return FAILED; } - f = fopen("/dev_flash/ps2emu/ps2_netemu.self", "rb"); - if(f==NULL) return FAILED; - fseek(f, 0xF8, SEEK_SET); - fread(&value, 8, 1, f); - fclose(f); + crc = getCRC("/dev_flash/ps2emu/ps2_netemu.self"); - if(value == 0x283B90) { // 421+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_421_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_421_bin; - } else - if(value == 0x284578) { // 430+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_430_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_430_bin; - } else - if(value == 0x288F68) { // 440+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_440_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_440_bin; - } else - if(value == 0x2890A8) { // 446+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_446_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_446_bin; - } else - if(value == 0x28E8F8) { // 450+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_450_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_450_bin; - } else - if(value == 0x28F638) { // 453+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_453_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_453_bin; - } else - if(value == 0x28F6B8) { // 455+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_455_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_455_bin; - } else - if(value == 0x28F878) { // 460+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_460_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_460_bin; - } else - if(value == 0x28F940) { // 478+ - ps2netemu_stage2_size = (uint32_t) ps2netemu_stage2_478_bin_size; - ps2netemu_stage2 = (uint8_t *) ps2netemu_stage2_478_bin; - } else return FAILED; + if( get_netemu(crc, &ps2netemu_stage2, &ps2netemu_stage2_size)==FAILED) { + print_load("Error: Failed to load_gxemu"); + return FAILED; + } - if ( ps2gen("/dev_flash/ps2emu/ps2_netemu.self", tmp_net, ps2netemu_stage2, ps2netemu_stage2_size) == FAILED) { + if( ps2gen("/dev_flash/ps2emu/ps2_netemu.self", tmp_net, ps2netemu_stage2, ps2netemu_stage2_size) == FAILED) { return FAILED; } @@ -13259,31 +14269,27 @@ uint8_t patch_PS2() sys_fs_mount("CELL_FS_IOS:BUILTIN_FLSH1", "CELL_FS_FAT", "/dev_blind", 0); usleep(1000); } + /* print_load("Saving Original files...") char bak[128]; sprintf(bak, "/dev_hdd0/game/%s/USRDIR/PS2BAK", ManaGunZ_id); Delete(bak); - mkdir(bak, 0777); if ( Copy("/dev_blind/ps2emu", bak) == FAILED ) { print_load("Error : failed to copy original files"); return FAILED; } */ + if( path_info("/dev_blind") == _NOT_EXIST) { + print_load("Error : failed to mount dev_blind"); + return FAILED; + } + Delete("/dev_blind/ps2emu"); - mkdir("/dev_blind/ps2emu", 0777); - if( Copy(tmp_net, "/dev_blind/ps2emu/ps2_netemu.self") == FAILED ) { - print_load("Error : failed to copy patched ps2_netemu"); - return FAILED; - } else - if( Copy(tmp_hw, "/dev_blind/ps2emu/ps2_hwemu.self") == FAILED ) { - print_load("Error : failed to copy patched ps2_hwemu"); - return FAILED; - } else - if( Copy(tmp_gx, "/dev_blind/ps2emu/ps2_gxemu.self") == FAILED ) { - print_load("Error : failed to copy patched ps2_gxemu"); + if( Copy(tmp_dir, "/dev_blind/ps2emu") == FAILED ) { + print_load("Error : failed to copy patched emu files"); return FAILED; } @@ -13598,14 +14604,14 @@ char upit(char in){ return in; } -void Download_covers() +u32 Download_covers() { int i; char game_ID[20]; char link[255]; char out[255]; - int nb_dl = -1; + u32 nb_dl = 0; print_head("Downloading covers"); @@ -13617,10 +14623,8 @@ void Download_covers() memset(game_ID, 0, sizeof(game_ID)); memset(link, 0, sizeof(link)); - if( Get_ID(list_game_path[i], list_game_platform[i], game_ID) == FAILED) { - print_load("Error : Failed to get ID %s", list_game_path[i]); - continue; - } + strcpy(game_ID, list_game_ID[i]); + int j; for(j=0; j < strlen(game_ID); j++) game_ID[j] = upit(game_ID[j]); @@ -13871,7 +14875,7 @@ void Download_covers() } - if(0 <= nb_dl) start_Load_GamePIC(); + return nb_dl; } //******************************************************* @@ -14269,8 +15273,8 @@ int Sign_PS2ELF(char *in, char *out) _add_shdrs=(char*) "TRUE"; _vendor_id=(char*) "02000003"; _self_type=(char*) "LV2"; - _fw_version=(char*) "0004002100000000"; _key_rev=(char*) "0"; + _fw_version=(char*) "0004002100000000"; _app_version=(char*) "0004002100000000"; _encrypt_file = TRUE; @@ -14396,7 +15400,7 @@ u8 re_sign_SELF(char *path) { char elf[128]; char bak[128]; - char local_path[128]; //faster in local if file is in usb + char local_path[128]; //faster in hdd0 char *filename; filename=strrchr(path, '/'); @@ -14647,7 +15651,6 @@ void unplug_device() while(need_unplug()==YES) { int i; cls(); - ps3pad_read(); Draw_BGS(); int x=50, y=40; @@ -14663,6 +15666,8 @@ void unplug_device() tiny3d_Flip(); ScreenShot(); + //ps3pad_read(); + } sleep(1); start_loading(); @@ -14700,8 +15705,8 @@ void SetPrimaryUSB() for(f0=0; f0<8; f0++) { if(f0!=indx) { - sys_storage_ext_fake_storage_event(7, 0, ((f0<6)?USB_MASS_STORAGE_1(f0):USB_MASS_STORAGE_2(f0))); - sys_storage_ext_fake_storage_event(3, 0, ((f0<6)?USB_MASS_STORAGE_1(f0):USB_MASS_STORAGE_2(f0))); + sys_storage_ext_fake_storage_event(7, 0, USB_MASS_STORAGE(f0)); + sys_storage_ext_fake_storage_event(3, 0, USB_MASS_STORAGE(f0)); } } @@ -14763,7 +15768,8 @@ char *LoadFile(char *path, int *file_size) char *mem = malloc(*file_size); if(mem==NULL) return NULL; - + memset(mem, 0, s.st_size); + int f1 = ps3ntfs_open(path, O_RDONLY, 0766); if(f1<0) return NULL; @@ -14908,7 +15914,7 @@ int move_bdemubackup_to_origin(char *device_path) sprintf(temp_buffer, "%s/PS3_GM01", device_path); sprintf(temp_buffer + 256, "%s/PS3_GM01/PS3PATH2.BUP", device_path); - if(path_info(temp_buffer) == _NOT_EXIST) return -1;; + if(path_info(temp_buffer) == _NOT_EXIST) return -1; file = LoadFile(temp_buffer + 256, &file_size); if(!file) return -1; @@ -14955,7 +15961,7 @@ int patch_bdmirror() device=-1; print_load("mount ps2disc"); sys_fs_mount("CELL_FS_IOS:BDVD_DRIVE", "CELL_FS_ISO9660", "/dev_ps2disc", 1); - sleep(1); + usleep(1000); for(n=0; n<10;n++) { if(path_info("/dev_ps2disc") != _NOT_EXIST) break; @@ -15197,7 +16203,6 @@ int patch_libfs(int8_t device) /*80*/ 0x4B,0xFF,0xFE,0xF8 }; - FILE* fp; char patched_libfs_from_MM[128]; char patched_libfs_from_iris[128]; char patched_libfs_from_reactPSN[128]; @@ -15232,8 +16237,7 @@ int patch_libfs(int8_t device) return NOK; } - int size; - + int size=0; char *data = LoadFile(ori_prx, &size); if(data==NULL) { print_load("Error : can't read the original libfs"); @@ -15264,9 +16268,9 @@ int patch_libfs(int8_t device) memcpy(&data[n-0x20], patch_from_MM, 0x84); //write - if( SaveFile(patched_prx, data, size) == FAILED) - { - free(data); + u8 ret = SaveFile(patched_prx, data, size); + free(data); + if(ret == FAILED) { print_load("Error : cannot create the file"); return NOK; } @@ -15300,33 +16304,9 @@ int patch_libfs(int8_t device) return NOK; } - char *data; - long size; - size_t result; - fp = fopen(ori_prx, "rb"); - if(fp!=NULL) { - fseek (fp , 0 , SEEK_END); - size = ftell (fp); - fseek(fp, 0, SEEK_SET); - - data = (char*) malloc (sizeof(char)*size); - if (data == NULL) { - free(data); - fclose(fp); - print_load("Error : failed to malloc data"); - return NOK; - } - - result = fread(data, 1, size, fp); - if (result != size) { - free (data); - fclose (fp); - print_load("Error : Failed to read data"); - return NOK; - } - fclose (fp); - - } else { + int size=0; + char *data = LoadFile(ori_prx, &size); + if(data==NULL) { print_load("Error : can't read the original libfs"); return NOK; } @@ -15351,22 +16331,12 @@ int patch_libfs(int8_t device) // memcpy(&data[m + 0x64], patch_from_iris + 0x64, 0xB4 - 0x64); //write - fp = fopen(patched_prx, "wb"); - if(fp==NULL){ - free(data); - fclose(fp); - print_load("Error : cannot create the file"); - return NOK; - } - result = fwrite(data, 1, size, fp); - if(result != size) { - free(data); - fclose(fp); - print_load("Error : cannot write the file\n"); + u8 ret = SaveFile(patched_prx, data, size); + free(data); + if(ret == FAILED) { + print_load("Error : cannot create the %s", patched_prx); return NOK; } - fclose(fp); - free(data); if(Sign_PRX(patched_prx, patched_libfs_from_iris) == NOK) { print_load("Error : cannot sign the prx\n"); @@ -15398,34 +16368,9 @@ int patch_libfs(int8_t device) return NOK; } - char *data; - long size; - size_t result; - fp = fopen(ori_prx, "rb"); - if(fp!=NULL) { - - fseek (fp , 0 , SEEK_END); - size = ftell (fp); - fseek(fp, 0, SEEK_SET); - - data = (char*) malloc (sizeof(char)*size); - if (data == NULL) { - free(data); - fclose(fp); - print_load("Error : failed to malloc data"); - return NOK; - } - - result = fread(data, 1, size, fp); - if (result != size) { - free (data); - fclose (fp); - print_load("Error : Failed to read data"); - return NOK; - } - fclose (fp); - - } else { + int size=0; + char *data = LoadFile(ori_prx, &size); + if(data==NULL) { print_load("Error : can't read the original libfs"); return NOK; } @@ -15456,22 +16401,12 @@ int patch_libfs(int8_t device) memcpy(&data[n-0x68], patch_from_reactPSN, 0xA8); //write - fp = fopen(patched_prx, "wb"); - if(fp==NULL){ - free(data); - fclose(fp); - print_load("Error : cannot create the file"); - return NOK; - } - result = fwrite(data, 1, size, fp); - if(result != size) { - free(data); - fclose(fp); - print_load("Error : cannot write the file\n"); + u8 ret = SaveFile(patched_prx, data, size); + free(data); + if(ret == FAILED) { + print_load("Error : cannot create the %s", patched_prx); return NOK; } - fclose(fp); - free(data); if(Sign_PRX(patched_prx, patched_libfs_from_reactPSN) == NOK) { print_load("Error : cannot sign the prx\n"); @@ -15522,7 +16457,6 @@ char *get_libfs_path() int patch_exp_plug() { - FILE* fp; char patched_sprx[128]; sprintf(patched_sprx, "/dev_hdd0/game/%s/USRDIR/sys/patched_explore_plugin_%X.sprx", ManaGunZ_id, firmware); @@ -15547,36 +16481,10 @@ int patch_exp_plug() return NOK; } - char *data; - long size; - size_t result; - - fp = fopen(ori_prx, "rb"); - if(fp!=NULL) { - - fseek (fp , 0 , SEEK_END); - size = ftell (fp); - fseek(fp, 0, SEEK_SET); - - data = (char*) malloc (sizeof(char)*size); - if (data == NULL) { - free(data); - fclose(fp); - print_load("Error : failed to malloc data"); - return NOK; - } - - result = fread(data, 1, size, fp); - if (result != size) { - free (data); - fclose (fp); - print_load("Error : Failed to read data"); - return NOK; - } - fclose (fp); - - } else { - print_load("Error : can't read the original explore_plugin.prx"); + int size=0; + char *data = LoadFile(ori_prx, &size); + if(data==NULL) { + print_load("Error : can't read the original_explore_plugin_%X.prx", firmware); return NOK; } @@ -15603,24 +16511,15 @@ int patch_exp_plug() } //write - fp = fopen(patched_prx, "wb"); - if(!fp){ - free(data); - fclose(fp); - print_load("Error : cannot create the file"); - return NOK; - } - result = fwrite(data, 1, size, fp); - if(result != size) { - free(data); - fclose(fp); - print_load("Error : cannot write the file"); + u8 ret = SaveFile(patched_prx, data, size); + free(data); + if(ret == FAILED) { + print_load("Error : cannot create the %s", patched_prx); return NOK; } - fclose(fp); - free(data); if(Sign_PRX(patched_prx, patched_sprx) == NOK) { + print_load("Error : cannot sign the prx\n"); return NOK; } @@ -16082,6 +16981,34 @@ u8 get_ext(char *file) return _FILE; } +//******************************************************* +// HEN +//******************************************************* + +int syscall_is_HEN() +{ + lv2syscall1(8, SYSCALL8_OPCODE_IS_HEN); + return_to_user_prog(int); +} + +int HEN_rev() +{ + lv2syscall1(8, SYSCALL8_OPCODE_HEN_REV); + return_to_user_prog(int); +} + +u8 is_HEN() +{ + if( syscall_is_HEN() == SYSCALL8_OPCODE_IS_HEN) return YES; + return NO; +} + +void HEN_game_settings() +{ + if( emu==BDEMU ) emu=NONE; + use_ex_plug=NO; +} + //******************************************************* //Iris Mount Game //******************************************************* @@ -16350,8 +17277,8 @@ void iris_Mount() if( ret != 0) print_load("Error %d: failed to patch bdmirroir", ret); sleep(1); - sprintf(temp_buffer, "%s/PS3_DISC.SFB", GamPath); - add_sys8_path_table("/dev_bdvd/PS3_DISC.SFB", temp_buffer); + sprintf(temp_buffer, "%s/DISC_PS3.SFB", GamPath); + add_sys8_path_table("/dev_bdvd/DISC_PS3.SFB", temp_buffer); add_sys8_bdvd(NULL, NULL); @@ -16553,8 +17480,8 @@ void mm_Mount() if( ret != 0) print_load("Error %d: patch_bdmirror failed", ret); sleep(1); - sprintf(temp, "%s/PS3_DISC.SFB", GamPath); - add_to_map("/dev_bdvd/PS3_DISC.SFB", temp); + sprintf(temp, "%s/DISC_PS3.SFB", GamPath); + add_to_map("/dev_bdvd/DISC_PS3.SFB", temp); } else if(emu == BDEMU) { @@ -16729,6 +17656,17 @@ u8 can_mount() return NO; } +u8 can_be_mounted(u8 ext) +{ + if(can_mount()) { + if(ext==_ISO_PS3 || ext==_JB_PS3) return YES; + if(ext==_ISO_PS2 && !HEN) return YES; + if(ext==_ISO_PS1) return YES; + if(ext==_ISO_PSP) return YES; + } + + return NO; +} void cobra_MountISO(int EMU) { @@ -16861,8 +17799,8 @@ void cobra_Mount() if( ret != 0) print_load("Error %d: patch_bdmirror failed", ret); sleep(1); - sprintf(temp, "%s/PS3_DISC.SFB", GamPath); - {sys_map_path("/dev_bdvd/PS3_DISC.SFB", temp);} + sprintf(temp, "%s/DISC_PS3.SFB", GamPath); + {sys_map_path("/dev_bdvd/DISC_PS3.SFB", temp);} } else if(emu == BDEMU) { char *libfs_path = get_libfs_path(); @@ -17229,8 +18167,8 @@ void mamba_Mount() if( ret != 0) print_load("Error %d: patch_bdmirror failed", ret); sleep(1); - sprintf(temp, "%s/PS3_DISC.SFB", GamPath); - {mamba_map("/dev_bdvd/PS3_DISC.SFB", temp);} + sprintf(temp, "%s/DISC_PS3.SFB", GamPath); + {mamba_map("/dev_bdvd/DISC_PS3.SFB", temp);} } else if(emu == BDEMU) { char *libfs_path = get_libfs_path(); @@ -17263,12 +18201,15 @@ void mamba_Mount() u8 MountGame(char *GamePath) { - if(can_mount()==NO) return FAILED; - if(is_66600(GamePath)) return FAILED; + u8 platform = get_ext(GamePath); - strcpy(GamPath, GamePath); // todo : something better... + if(can_be_mounted(platform)==NO || is_66600(GamePath)) { + print_load("Error : Cannot be mounted"); + return FAILED; + } + + strcpy(GamPath, GamePath); - u8 platform = get_ext(GamePath); iso = is_iso(GamePath); if(platform == _ISO_PS3 || platform == _JB_PS3) { @@ -17305,18 +18246,26 @@ u8 MountGame(char *GamePath) if(platform == _ISO_PSP) emul = EMU_PSP; if(PEEKnPOKE) { - if(!cobra && !mamba) mamba = install_mamba(); + if(!cobra && !mamba) { + mamba = install_mamba(); + if(!mamba) { + print_load("Error : 0x01234567"); + return FAILED; + } + } } - if(emul == EMU_PS2_DVD) { + if(emul == EMU_PS2_DVD) { patch_PS2(); CONFIG_check(GamePath); } cobra_MountISO(emul); cobra_MountISO(emul); - } else + } else { + print_load("Error : 0x11223344"); return FAILED; + } // todo : check if game mounted... @@ -18088,10 +19037,17 @@ u8 pkg_list(const char *filename) fputs(str, txt); sprintf(str, "Content ID : %s\n", header.content_id); fputs(str, txt); - - fseek(in.fd, header.pkg_info_offset, SEEK_SET); - fread(&info, 1, sizeof(pkg_info), in.fd); + //fseek(in.fd, header.pkg_info_offset, SEEK_SET); + //fread(&info, 1, sizeof(pkg_info), in.fd); + // |-> broked by FAKE_ stdio functions... + FILE *f; + f = fopen((char *) filename, "rb"); + if( f!= NULL ) { + fseek(f, header.pkg_info_offset, SEEK_SET); + fread(&info, 1, sizeof(pkg_info), f); + fclose(f); + } switch (info.drm_type) { @@ -18297,14 +19253,19 @@ u8 read_AutoMount_setting() fread(&emu, sizeof(u8), 1, fp); fread(&libfs_from, sizeof(u8), 1, fp); fread(&mount_app_home, sizeof(u8), 1, fp); - fread(&use_ex_plug, sizeof(u8), 1, fp); + fread(&use_ex_plug, sizeof(u8), 1, fp); + fread(&path_size, sizeof(u16), 1, fp); - fread(list_game_path[0], path_size, 1, fp); + list_game_path = (char **) malloc(sizeof(char *)); + list_game_path[0] = (char *) malloc(path_size+1); + fread(list_game_path, path_size, 1, fp); fclose(fp); if(iso) payload=SNAKE; if(PEEKnPOKE==NO) payload=SNAKE; + if( HEN ) HEN_game_settings(); + return SUCCESS; } @@ -18337,9 +19298,23 @@ u8 write_AutoMount_setting(char *path) return SUCCESS; } -int make_launcher_pkg(char *title_id) +int make_launcher_pkg(char *title_id, char *path) { -print_load("Start..."); + +print_load("Init..."); + char title[512]; + if( strcmp(path, list_game_path[position]) == 0) { + strcpy(title, list_game_title[position]); + } else { + + strcpy(title, &strrchr(path, '/')[1]); + RemoveExtention(title); + u8 ext = get_ext(path); + if(ext == _ISO_PS3 || ext == _JB_PS3 || ext == _ISO_PSP || ext == _JB_PSP) { + GetParamSFO("TITLE", title, game_number, NULL); + } + } + char content_id[37]; char src[128]; char dst[128]; @@ -18352,6 +19327,7 @@ print_load("Start..."); mkdir(dst, 0777); // sys +print_load("Copy sys..."); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/USRDIR/sys", ManaGunZ_id); sprintf(src, "/dev_hdd0/game/%s/USRDIR/sys", ManaGunZ_id); if( Copy(src, dst) == FAILED ) { @@ -18361,6 +19337,7 @@ print_load("Start..."); } // self +print_load("Copy self..."); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/USRDIR/ManaGunZ.self", ManaGunZ_id); sprintf(src, "/dev_hdd0/game/%s/USRDIR/ManaGunZ.self", ManaGunZ_id); if( CopyFile(src, dst) == FAILED ) { @@ -18370,15 +19347,16 @@ print_load("Start..."); } // ICON0 +print_load("Copy icon0..."); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/ICON0.PNG", ManaGunZ_id); - if(iso==YES) { - if( ExtractFromISO(list_game_path[position], "/PS3_GAME/ICON0.PNG", dst) == FAILED) { + if(is_iso(path)) { + if( ExtractFromISO(path, "/PS3_GAME/ICON0.PNG", dst) == FAILED) { print_load("Error : failed to get ICON0.PNG"); Delete(lch); return FAILED; } } else { - sprintf(src, "%s/PS3_GAME/ICON0.PNG", list_game_path[position]); + sprintf(src, "%s/PS3_GAME/ICON0.PNG", path); if( CopyFile(src, dst) == FAILED ) { print_load("Error : failed to copy ICON0.PNG"); Delete(lch); @@ -18386,8 +19364,8 @@ print_load("Start..."); } } -print_load("param"); // PARAM.SFO +print_load("Copy param..."); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/PARAM.SFO", ManaGunZ_id); sprintf(src, "/dev_hdd0/game/%s/PARAM.SFO", ManaGunZ_id); if( CopyFile(src, dst) == FAILED ) { @@ -18395,27 +19373,33 @@ print_load("param"); Delete(lch); return FAILED; } -print_load("titleID"); + +// TITLE ID +print_load("Set title ID..."); if( SetParamSFO("TITLE_ID", title_id, -1, dst) == FAILED ) { print_load("Error : failed to change TITLE_ID"); Delete(lch); return FAILED; } -print_load("title"); - if( SetParamSFO("TITLE", list_game_title[position], -1, dst) == FAILED ) { + +// TITLE +print_load("Set title..."); + if( SetParamSFO("TITLE", title, -1, dst) == FAILED ) { print_load("Error : failed to change TITLE"); Delete(lch); return FAILED; } -print_load("AutoMount"); + // AUTOMOUNT - if( write_AutoMount_setting(list_game_path[position]) == FAILED ) { +print_load("Create AutoMount..."); + if( write_AutoMount_setting(path) == FAILED ) { print_load("Error : failed to write AutoMount file"); Delete(lch); return FAILED; } -print_load("EBOOT.ELF"); + // EBOOT.BIN +print_load("Extract EBOOT..."); sprintf(src, "/dev_hdd0/game/%s/USRDIR/EBOOT.BIN", ManaGunZ_id); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/USRDIR/EBOOT.elf", ManaGunZ_id); if( Extract(src, dst) == FAILED ) { @@ -18423,7 +19407,9 @@ print_load("EBOOT.ELF"); Delete(lch); return FAILED; } -print_load("EBOOT.BIN"); + +// NEW EBOOT +print_load("Make new EBOOT..."); sprintf(src, "/dev_hdd0/game/%s/USRDIR/launcher/USRDIR/EBOOT.elf", ManaGunZ_id); sprintf(dst, "/dev_hdd0/game/%s/USRDIR/launcher/USRDIR/EBOOT.BIN", ManaGunZ_id); sprintf(content_id, "EP0001-%s_00-0000000000000000", title_id); @@ -18434,19 +19420,19 @@ print_load("EBOOT.BIN"); } Delete(src); -print_load("ASCII"); -// Name of Package file +// Name of PKG +print_load("Set pkg name..."); char ascii_name[60]={0}; int i; int k=0; - int l=strlen(list_game_title[position]); + int l=strlen(title); for(i=0; i<=l; i++) { - if(list_game_title[position][i]==32 // space - || (48<=list_game_title[position][i] && list_game_title[position][i]<=57) //number - || (65<=list_game_title[position][i] && list_game_title[position][i]<=90) // A..Z - || (97<=list_game_title[position][i] && list_game_title[position][i]<=122)) //a..z + if(title[i]==32 // space + || (48<=title[i] && title[i]<=57) //number + || (65<=title[i] && title[i]<=90) // A..Z + || (97<=title[i] && title[i]<=122)) //a..z { - ascii_name[k]=list_game_title[position][i]; + ascii_name[k]=title[i]; k++; if(k>40) { break; @@ -18457,11 +19443,10 @@ print_load("ASCII"); strcat(ascii_name, title_id); strcat(ascii_name, "]"); -print_load("Make Package"); // Make package +print_load("Make Package..."); strcpy(dst, "/dev_hdd0/packages"); mkdir(dst, 0777); - sprintf(dst, "/dev_hdd0/packages/%s.pkg", ascii_name); Delete(dst); sprintf(src, "/dev_hdd0/game/%s/USRDIR", ManaGunZ_id); @@ -18470,8 +19455,8 @@ print_load("Make Package"); Delete(lch); return FAILED; } - // Delete launcher directory +print_load("Delete launcher directory..."); Delete(lch); return SUCCESS; @@ -18670,9 +19655,8 @@ void update_MGZ() free(mem); - if(Load_GamePIC==YES) end_Load_GamePIC(); - end_load_PIC1(); - end_checking(); + end_Load_GAMEPIC(); + end_load_CURPIC(); end_loading(); sysModuleUnload(SYSMODULE_PNGDEC); sysModuleUnload(SYSMODULE_JPGDEC); @@ -18692,6 +19676,103 @@ void update_MGZ() // Settings //******************************************************* +void read_RootSetting() +{ + if( root_display != STYLE_CUSTOM ) return; + if( lang_code_loaded == LANG_NONE ) return; + + FILE *fp; + char setPath[128]; + u8 format_id[6]={0}; + + sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/root.bin", ManaGunZ_id); + + fp = fopen(setPath, "rb"); + if(fp==NULL) return; + + fread(&fm_LineSize, sizeof(u8), 1, fp); + fread(&fm_RowNumber, sizeof(u8), 1, fp); + fread(&fm_FontRowSize[0], sizeof(u8), 1, fp); + fread(&fm_FontRowSize[1], sizeof(u8), 1, fp); + fread(&fm_FontRowSize[2], sizeof(u8), 1, fp); + fread(&fm_CustomIcons, sizeof(u8), 1, fp); + fread(&fm_CapacityBarWidth, sizeof(float), 1, fp); + fread(&format_id[0], sizeof(u8), 1, fp); + fread(&format_id[1], sizeof(u8), 1, fp); + fread(&format_id[2], sizeof(u8), 1, fp); + fread(&format_id[3], sizeof(u8), 1, fp); + fread(&format_id[4], sizeof(u8), 1, fp); + fread(&format_id[5], sizeof(u8), 1, fp); + fclose(fp); + + if(format_id[0] == FM_FORMAT_INIT) { + fm_CustomIcons = NO; + fm_LineSize=SMALL; + fm_RowNumber=0; + + fm_FontRowSize[0] = LINE_H1; + strcpy( fm_Format[ LEFTROW(0) ], STR_FM_MOUNTPOINT); + strcpy( fm_Format[ RIGHTROW(0) ], STR_FM_EMPTY); + + fm_FontRowSize[1] = 0; + strcpy( fm_Format[ LEFTROW(1) ], STR_FM_EMPTY); + strcpy( fm_Format[ RIGHTROW(1) ], STR_FM_EMPTY); + + fm_FontRowSize[2] = 0; + strcpy( fm_Format[ LEFTROW(2) ], STR_FM_EMPTY); + strcpy( fm_Format[ RIGHTROW(2) ], STR_FM_EMPTY); + + fm_CapacityBarWidth=0; + + return; + } + + int i; + for(i=0; i < 6; i++) { + char *format = FM_SetFormat(format_id[i]); + if(format != NULL) { + strcpy(fm_Format[i], format); + FREE(format); + } + } + +} + +void write_RootSetting() +{ + if( root_display != STYLE_CUSTOM ) return; + if( lang_code_loaded == LANG_NONE ) return; + + FILE *fp; + char setPath[128]; + + sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/root.bin", ManaGunZ_id); + + u8 format_id[6] = {0}; + int i; + for(i=0; i<6; i++) format_id[i] = FM_GetFormat(fm_Format[i]); + + fp = fopen(setPath, "wb"); + if(fp==NULL) return; + + fwrite(&fm_LineSize, sizeof(u8), 1, fp); + fwrite(&fm_RowNumber, sizeof(u8), 1, fp); + fwrite(&fm_FontRowSize[0], sizeof(u8), 1, fp); + fwrite(&fm_FontRowSize[1], sizeof(u8), 1, fp); + fwrite(&fm_FontRowSize[2], sizeof(u8), 1, fp); + fwrite(&fm_CustomIcons, sizeof(u8), 1, fp); + fwrite(&fm_CapacityBarWidth, sizeof(float), 1, fp); + fwrite(&format_id[0], sizeof(u8), 1, fp); + fwrite(&format_id[1], sizeof(u8), 1, fp); + fwrite(&format_id[2], sizeof(u8), 1, fp); + fwrite(&format_id[3], sizeof(u8), 1, fp); + fwrite(&format_id[4], sizeof(u8), 1, fp); + fwrite(&format_id[5], sizeof(u8), 1, fp); + fclose(fp); + + SetFilePerms(setPath); +} + void read_setting() { FILE* fp=NULL; @@ -18705,7 +19786,7 @@ void read_setting() fread(&Themes[1], sizeof(char), 0x40, fp); fread(&Themes[2], sizeof(char), 0x40, fp); fread(&Themes[3], sizeof(char), 0x40, fp); - fread(&LIST_Show_ICON0, sizeof(u8), 1, fp); + fread(&Show_ICON0, sizeof(u8), 1, fp); fread(&UI_position, sizeof(u8), 1, fp); fread(&GRID_TYPE, sizeof(u8), 1, fp); fread(&GRID_DIRECTION, sizeof(u8), 1, fp); @@ -18738,8 +19819,24 @@ void read_setting() fread(&Font, sizeof(char), 0x40, fp); fread(&filter_x, sizeof(float), 1, fp); fread(&filter_y, sizeof(float), 1, fp); + fread(&FILTER_NOTIF, sizeof(u8), 1, fp); + fread(&COLOR_NOTIF, sizeof(u32), 1, fp); + fread(&FILTER_BOXHEAD, sizeof(u8), 1, fp); + fread(&COLOR_BOXHEAD, sizeof(u32), 1, fp); + fread(&FILTER_BOXBODY, sizeof(u8), 1, fp); + fread(&COLOR_BOXBODY, sizeof(u32), 1, fp); + fread(&FILTER_SIDEBAR, sizeof(u8), 1, fp); + fread(&COLOR_SIDEBAR, sizeof(u32), 1, fp); + fread(&FILTER_BGS, sizeof(u8), 1, fp); + fread(&COLOR_BGS, sizeof(u32), 1, fp); + fread(&FILTER_BG, sizeof(u8), 1, fp); + fread(&COLOR_BG, sizeof(u32), 1, fp); + fread(&root_display, sizeof(u8), 1, fp); + fclose(fp); - } + } + + read_RootSetting(); } void write_setting() @@ -18758,7 +19855,7 @@ void write_setting() fwrite(&Themes[1], sizeof(char), 0x40, fp); fwrite(&Themes[2], sizeof(char), 0x40, fp); fwrite(&Themes[3], sizeof(char), 0x40, fp); - fwrite(&LIST_Show_ICON0, sizeof(u8), 1, fp); + fwrite(&Show_ICON0, sizeof(u8), 1, fp); fwrite(&UI_position, sizeof(u8), 1, fp); fwrite(&GRID_TYPE, sizeof(u8), 1, fp); fwrite(&GRID_DIRECTION, sizeof(u8), 1, fp); @@ -18791,32 +19888,56 @@ void write_setting() fwrite(&Font, sizeof(char), 0x40, fp); fwrite(&filter_x, sizeof(float), 1, fp); fwrite(&filter_y, sizeof(float), 1, fp); + fwrite(&FILTER_NOTIF, sizeof(u8), 1, fp); + fwrite(&COLOR_NOTIF, sizeof(u32), 1, fp); + fwrite(&FILTER_BOXHEAD, sizeof(u8), 1, fp); + fwrite(&COLOR_BOXHEAD, sizeof(u32), 1, fp); + fwrite(&FILTER_BOXBODY, sizeof(u8), 1, fp); + fwrite(&COLOR_BOXBODY, sizeof(u32), 1, fp); + fwrite(&FILTER_SIDEBAR, sizeof(u8), 1, fp); + fwrite(&COLOR_SIDEBAR, sizeof(u32), 1, fp); + fwrite(&FILTER_BGS, sizeof(u8), 1, fp); + fwrite(&COLOR_BGS, sizeof(u32), 1, fp); + fwrite(&FILTER_BG, sizeof(u8), 1, fp); + fwrite(&COLOR_BG, sizeof(u32), 1, fp); + fwrite(&root_display, sizeof(u8), 1, fp); + fclose(fp); SetFilePerms(setPath); } + write_RootSetting(); + char sfo[64]; sprintf(sfo, "/dev_hdd0/game/%s/PARAM.SFO", ManaGunZ_id); SetParamSFO("ITEM_PRIORITY", (char *) &XMB_priority, 0, sfo); if(lang_code != lang_code_loaded) update_lang(); - - if(Load_GamePIC == NO && COVER_Loaded == NO && Show_COVER == YES) { - start_Load_GamePIC(); - } read_setting(); } -void read_game_setting(char *file_name) +void read_game_setting(int pos) { FILE* fp=NULL; - char setPath[128]; - if(iso) sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[ISO]%s.bin", ManaGunZ_id, file_name); - else sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[JB]%s.bin", ManaGunZ_id, file_name); - fp = fopen(setPath, "rb"); - if(fp!=NULL) { + if(0<=pos) { + char oldPath[128]; + char setPath[128]; + + if(iso) sprintf(oldPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[ISO]%s.bin", ManaGunZ_id, list_game_title[pos]); + else sprintf(oldPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[JB]%s.bin", ManaGunZ_id, list_game_title[pos]); + + if(iso) sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[ISO]%s.bin", ManaGunZ_id, list_game_ID[pos]); + else sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[JB]%s.bin", ManaGunZ_id, list_game_ID[pos]); + + if(path_info(setPath) == _FILE) Delete(oldPath); + else rename(oldPath, setPath); + + fp = fopen(setPath, "rb"); + } + + if(fp!=NULL) { fread(&direct_boot, sizeof(u8), 1, fp); fread(&clean_syscall, sizeof(u8), 1, fp); fread(&change_IDPS, sizeof(u8), 1, fp); @@ -18829,8 +19950,7 @@ void read_game_setting(char *file_name) fread(&mount_app_home, sizeof(u8), 1, fp); fread(&use_ex_plug, sizeof(u8), 1, fp); fclose(fp); - } - else { + } else { direct_boot = NO; clean_syscall = NO; change_IDPS = NO; @@ -18847,19 +19967,24 @@ void read_game_setting(char *file_name) if(iso) payload=SNAKE; if(PEEKnPOKE==NO) payload=SNAKE; + + if( HEN ) HEN_game_settings(); } -void write_game_setting(char *file_name) +void write_game_setting(int pos) { if(AutoM == YES) return; - + FILE* fp=NULL; - char setPath[128]; - if(iso) sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[ISO]%s.bin", ManaGunZ_id, file_name); - else sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[JB]%s.bin", ManaGunZ_id, file_name); - fp = fopen(setPath, "wb"); - if(fp!=NULL) { + if(0<=pos) { + char setPath[128]; + if(iso) sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[ISO]%s.bin", ManaGunZ_id, list_game_ID[pos]); + else sprintf(setPath, "/dev_hdd0/game/%s/USRDIR/setting/game_setting/[JB]%s.bin", ManaGunZ_id, list_game_ID[pos]); + fp = fopen(setPath, "wb"); + } + + if(fp!=NULL){ fwrite(&direct_boot, sizeof(u8), 1, fp); fwrite(&clean_syscall, sizeof(u8), 1, fp); fwrite(&change_IDPS, sizeof(u8), 1, fp); @@ -18873,7 +19998,8 @@ void write_game_setting(char *file_name) fwrite(&use_ex_plug, sizeof(u8), 1, fp); fclose(fp); } - read_game_setting(file_name); + + read_game_setting(pos); } void write_fav() @@ -19014,6 +20140,7 @@ int init_ManaGunZ() cobra = is_cobra(); mamba = is_mamba(); + HEN = is_HEN(); if(PEEKnPOKE) { peek_IDPS(); @@ -19044,7 +20171,6 @@ int init_ManaGunZ() {mamba_map((char*)"//dev_bdvd", NULL);} {mamba_map((char*)"/app_home", NULL);} {mamba_map((char*)"//app_home", NULL);} - {mamba_map((char*)"//app_home", NULL);} {mamba_map("/dev_flash/sys/external/libfs.sprx", NULL);} {mamba_map("/dev_flash/vsh/module/explore_plugin.sprx", NULL);} } @@ -19064,7 +20190,7 @@ int init_ManaGunZ() real_disk = YES; } */ - + getDevices(); char temp[128]; @@ -19072,6 +20198,7 @@ int init_ManaGunZ() sprintf(temp, "/%s", list_device[i]); move_bdemubackup_to_origin(temp); } + if(path_info("/dev_hdd0/game/MANAGUNZ0/USRDIR/sys/Changelog.txt") == _FILE) { open_txt_viewer("/dev_hdd0/game/MANAGUNZ0/USRDIR/sys/Changelog.txt"); Delete("/dev_hdd0/game/MANAGUNZ0/USRDIR/sys/Changelog.txt"); @@ -19084,49 +20211,367 @@ int init_ManaGunZ() // PAD //******************************************************* -void get_R2speed() +u8 AnyOldPad() { - if(old_pad & BUTTON_R2) { - R2speed = 6 - paddata.PRE_R2/50; - } else R2speed=6; - - if(old_pad & BUTTON_LEFT || old_pad & BUTTON_RIGHT || old_pad & BUTTON_UP || old_pad & BUTTON_DOWN) { - hold_it++; - if(hold_it > 30) { - slow_it++; - if(R2speed < slow_it) slow_it=0; - } - } else {slow_it=1; hold_it=0;} + if(old_pad) return YES; + return NO; } -u8 R2pad(int button) +u8 AnyNewPad() { - return (new_pad & button || ((old_pad & button) && slow_it==0)); + if(new_pad) return YES; + return NO; } -float R2JoyStick_X(int joystick) +void SetHold(u32 button, u64 value); +u8 NewPad(u32 button) { - float joy_x; - - if(joystick == BUTTON_R) { - joy_x = (paddata.button[4] - 128.0f); - } else - if(joystick == BUTTON_L) { - joy_x = (paddata.button[6] - 128.0f); - } else return 0; - if(28.0f < abs(joy_x) ) { - return (float) (joy_x / (R2speed*5+1)); + if(new_pad & button) { + if(button != BUTTON_CIRCLE) { + SetHold(BUTTON_CIRCLE, 0); + hold_CIRCLE=0; + spam_CIRCLE=-1; + } + return YES; } - return 0; + return NO; } -float R2JoyStick_Y(int joystick) +u8 OldPad(u32 button) { - float joy_y; - - if(joystick == BUTTON_R) { + if(old_pad & button) return YES; + return NO; +} + +u64 GetHold(u32 button) +{ + if(button & BUTTON_R) return hold_value[0]; + if(button & BUTTON_L) return hold_value[1]; + if(button & BUTTON_LEFT) return hold_value[2]; + if(button & BUTTON_DOWN) return hold_value[3]; + if(button & BUTTON_RIGHT) return hold_value[4]; + if(button & BUTTON_UP) return hold_value[5]; + if(button & BUTTON_START) return hold_value[6]; + if(button & BUTTON_R3) return hold_value[7]; + if(button & BUTTON_L3) return hold_value[8]; + if(button & BUTTON_SELECT) return hold_value[9]; + if(button & BUTTON_SQUARE) return hold_value[10]; + if(button & BUTTON_CROSS) return hold_value[11]; + if(button & BUTTON_CIRCLE) return hold_value[12]; + if(button & BUTTON_TRIANGLE) return hold_value[13]; + if(button & BUTTON_R1) return hold_value[14]; + if(button & BUTTON_L1) return hold_value[15]; + if(button & BUTTON_R2) return hold_value[16]; + if(button & BUTTON_L2) return hold_value[17]; + + return 0; +} + +void SetHold(u32 button, u64 value) +{ + if(button & BUTTON_R) hold_value[0]=value; + if(button & BUTTON_L) hold_value[1]=value; + if(button & BUTTON_LEFT) hold_value[2]=value; + if(button & BUTTON_DOWN) hold_value[3]=value; + if(button & BUTTON_RIGHT) hold_value[4]=value; + if(button & BUTTON_UP) hold_value[5]=value; + if(button & BUTTON_START) hold_value[6]=value; + if(button & BUTTON_R3) hold_value[7]=value; + if(button & BUTTON_L3) hold_value[8]=value; + if(button & BUTTON_SELECT) hold_value[9]=value; + if(button & BUTTON_SQUARE) hold_value[10]=value; + if(button & BUTTON_CROSS) hold_value[11]=value; + if(button & BUTTON_CIRCLE) hold_value[12]=value; + if(button & BUTTON_TRIANGLE) hold_value[13]=value; + if(button & BUTTON_R1) hold_value[14]=value; + if(button & BUTTON_L1) hold_value[15]=value; + if(button & BUTTON_R2) hold_value[16]=value; + if(button & BUTTON_L2) hold_value[17]=value; +} + +u64 GetSlow(u32 button) +{ + if(button & BUTTON_R) return slow_value[0]; + if(button & BUTTON_L) return slow_value[1]; + if(button & BUTTON_LEFT) return slow_value[2]; + if(button & BUTTON_DOWN) return slow_value[3]; + if(button & BUTTON_RIGHT) return slow_value[4]; + if(button & BUTTON_UP) return slow_value[5]; + if(button & BUTTON_START) return slow_value[6]; + if(button & BUTTON_R3) return slow_value[7]; + if(button & BUTTON_L3) return slow_value[8]; + if(button & BUTTON_SELECT) return slow_value[9]; + if(button & BUTTON_SQUARE) return slow_value[10]; + if(button & BUTTON_CROSS) return slow_value[11]; + if(button & BUTTON_CIRCLE) return slow_value[12]; + if(button & BUTTON_TRIANGLE) return slow_value[13]; + if(button & BUTTON_R1) return slow_value[14]; + if(button & BUTTON_L1) return slow_value[15]; + if(button & BUTTON_R2) return slow_value[16]; + if(button & BUTTON_L2) return slow_value[17]; + + return 0; +} + +void SetSlow(u32 button, u64 value) +{ + if(button & BUTTON_R) slow_value[0]=value; + if(button & BUTTON_L) slow_value[1]=value; + if(button & BUTTON_LEFT) slow_value[2]=value; + if(button & BUTTON_DOWN) slow_value[3]=value; + if(button & BUTTON_RIGHT) slow_value[4]=value; + if(button & BUTTON_UP) slow_value[5]=value; + if(button & BUTTON_START) slow_value[6]=value; + if(button & BUTTON_R3) slow_value[7]=value; + if(button & BUTTON_L3) slow_value[8]=value; + if(button & BUTTON_SELECT) slow_value[9]=value; + if(button & BUTTON_SQUARE) slow_value[10]=value; + if(button & BUTTON_CROSS) slow_value[11]=value; + if(button & BUTTON_CIRCLE) slow_value[12]=value; + if(button & BUTTON_TRIANGLE) slow_value[13]=value; + if(button & BUTTON_R1) slow_value[14]=value; + if(button & BUTTON_L1) slow_value[15]=value; + if(button & BUTTON_R2) slow_value[16]=value; + if(button & BUTTON_L2) slow_value[17]=value; +} + +u8 OldPadTicks(u32 button, u32 Ticks) +{ + if(OldPad(button)) { + u64 hold = GetHold(button); + if(Ticks < hold) return YES; + hold++; + SetHold(button, hold); + } else SetHold(button, 0); + + return NO; +} + +u64 OldPadDelay(u32 button, u64 nDelay) +{ + if(OldPad(button)) { + u64 start = GetHold(button); + u64 end = nTime(); + if(start==0) { + SetHold(button, end); + return 0; + } + u64 t = end - start; + if(nDelay < t) return t; + } else SetHold(button, 0); + + return 0; +} + +u8 HoldCircleTicks() +{ + if(NewPad(BUTTON_CIRCLE)) { + hold_CIRCLE+=MAX_HOLD/4; + if(MAX_HOLD < hold_CIRCLE) return YES; + return NO; + } + + if(OldPad(BUTTON_CIRCLE)) { + if(MAX_HOLD < hold_CIRCLE) return YES; + hold_CIRCLE++; + } else { + hold_CIRCLE-=2; + if(hold_CIRCLE < 0) hold_CIRCLE=0; + } + + return NO; +} + +u64 WaitToUnload = 0; +s64 TimeCircle = 0; + +u8 HoldCircleDelay() +{ + if(NewPad(BUTTON_CIRCLE)) { + u64 start = GetHold(BUTTON_CIRCLE); + WaitToUnload = nTime(); + if(start==0) SetHold(BUTTON_CIRCLE, WaitToUnload); + spam_CIRCLE++; + if(spam_CIRCLE==spam_CIRCLE_MAX) return YES; + return NO; + } else + if(OldPad(BUTTON_CIRCLE)) { + u64 start = GetHold(BUTTON_CIRCLE); + + if(start==0) return NO; + + u64 end = nTime(); + + TimeCircle = end - start; + + if(TimeCircle<=0) { + start=0; + hold_CIRCLE = 0; + } else { + hold_CIRCLE = (u64) ((TimeCircle * MAX_HOLD / MAX_HOLD_S) * 2); + if(MAX_HOLD < hold_CIRCLE) return YES; + } + + if( 2*MAX_HOLD / 3 < hold_CIRCLE && spam_CIRCLE < 2) spam_CIRCLE=2; else + if( MAX_HOLD / 3 < hold_CIRCLE && spam_CIRCLE < 1) spam_CIRCLE=1; + + WaitToUnload = end; + } else { + u64 start = GetHold(BUTTON_CIRCLE); + if(start!=0) { + u64 end = nTime(); + if(WaitToUnload) { + s64 s = end - WaitToUnload; + if(n_s(1) < s) { + WaitToUnload = 0; + spam_CIRCLE=-1; + } else { + SetHold(BUTTON_CIRCLE, start+s); + return NO; + } + } + + start += n_ms(200); + s64 t = end - start; + + while(TimeCircle < t) { + start += n_ms(200); + t = end - start; + } + TimeCircle = t; + + if(t <= 0) { + start=0; + hold_CIRCLE = 0; + } else { + hold_CIRCLE = (u64) ((t * MAX_HOLD / MAX_HOLD_S) * 2); + } + + if(MAX_HOLD < hold_CIRCLE) { + start=0; + hold_CIRCLE = 0; + } + + SetHold(BUTTON_CIRCLE, start); + } else { + hold_CIRCLE=0; + spam_CIRCLE=-1; + } + } + + return NO; +} + +u8 R2pad(u32 button) +{ + + if(NewPad(button)) return YES; + + u64 t = OldPadDelay(button, n_ms(50)); + if(0 window_w[n] - 50) { - sprintf(TOP_str, "...%s", strrchr(window_path[n], '/')); - while(GetWidth(TOP_str) > window_w[n] - 50) { - TOP_str[strlen(TOP_str)-1] = 0; - TOP_str[strlen(TOP_str)-1] = 0; - TOP_str[strlen(TOP_str)-1] = 0; - TOP_str[strlen(TOP_str)-1] = 0; - TOP_str[strlen(TOP_str)] = '.'; - TOP_str[strlen(TOP_str)] = '.'; - TOP_str[strlen(TOP_str)] = '.'; + if(strcmp(TOP_str, "/") == 0) { + if(fm_LineSize==BIG) LINE_H = LINE_H1*2.0; + else LINE_H = LINE_H1; + + COL_H = 0; + strcpy(TOP_str, STR_ROOTLABEL); + } else { + COL_H = COL_H1; + LINE_H = LINE_H1; + if( WidthFromStr(TOP_str) > window_w[n] - BORDER-CLOSEBOX_W-DOCKBOX_W-5) { + sprintf(TOP_str, "...%s", strrchr(window_path[n], '/')); + while(WidthFromStr(TOP_str) > window_w[n] - BORDER-CLOSEBOX_W-DOCKBOX_W-5) { + TOP_str[strlen(TOP_str)-1] = 0; + TOP_str[strlen(TOP_str)-1] = 0; + TOP_str[strlen(TOP_str)-1] = 0; + TOP_str[strlen(TOP_str)-1] = 0; + TOP_str[strlen(TOP_str)] = '.'; + TOP_str[strlen(TOP_str)] = '.'; + TOP_str[strlen(TOP_str)] = '.'; + } } } - DrawString(window_x[n]+BORDER, window_y[n]+10, TOP_str); + DrawString(window_x[n]+BORDER+5, window_y[n]+BORDER+3, TOP_str); //CLOSE BOX - Draw_Box(window_x[n]+window_w[n]-40, window_y[n]+10, window_z[n], 0, 30, 20, RED, NO); - DrawStringFromCenterX(window_x[n]+window_w[n]-40+15, window_y[n]+11, "X"); - - //CONTENT BOX - FontSize(CONTENT_FSIZE); - FontColor(BLACK); - - Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H, window_z[n], 0, window_w[n]-BORDER*2, window_h[n]-TOP_H-BORDER, 0xF0F0F0FF, NO); - - //COLUMN HEADER BOX - Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H, window_z[n], 0, window_w[n]-BORDER*2, COL_H, 0xD4DBEDFF, NO); - DrawString(window_x[n]+BORDER+5, window_y[n]+TOP_H+3, STR_NAME); - - if(window_w_col_size[n]< COL_W_MIN) window_w_col_size[n]=COL_W_MIN; - if(window_w[n] - window_w_col_size[n] - BORDER*2 - SCROLL_W < COL_W_MIN) window_w_col_size[n] = window_w[n] - COL_W_MIN - BORDER*2 - SCROLL_W; - - tiny3d_SetPolygon(TINY3D_LINES); - tiny3d_VertexPos(window_x[n]+window_w[n] - BORDER-SCROLL_W-window_w_col_size[n], window_y[n]+TOP_H+2 , window_z[n]); - tiny3d_VertexColor(0x505050FF); - tiny3d_VertexPos(window_x[n]+window_w[n] - BORDER-SCROLL_W-window_w_col_size[n], window_y[n]+TOP_H+COL_H-2 , window_z[n]); - tiny3d_End(); - - DrawString(window_x[n]+window_w[n]-BORDER-SCROLL_W-window_w_col_size[n] + 5, window_y[n]+TOP_H+3, STR_SIZE); - + if(n==window_activ) { + if( is_float_window() == NO) { + if( window_x[n]+window_w[n]-BORDER-CLOSEBOX_W < curs_x && curs_x < window_x[n]+window_w[n]-BORDER + && window_y[n]+BORDER < curs_y && curs_y < window_y[n]+BORDER+CLOSEBOX_H ) + { + Draw_Box(window_x[n]+window_w[n]-BORDER-CLOSEBOX_W, window_y[n]+BORDER, window_z[n], 0, CLOSEBOX_W, CLOSEBOX_H, RED, NO); + } + } + Draw_CloseBox(window_x[n]+window_w[n]-BORDER-CLOSEBOX_W/2-CLOSEBOX_H/2, window_y[n]+BORDER, window_z[n], CLOSEBOX_H, CLOSEBOX_H); + + //DOCK BOX + if( is_float_window() == NO) { + if( window_x[n]+window_w[n]-BORDER-CLOSEBOX_W-DOCKBOX_W < curs_x && curs_x < window_x[n]+window_w[n]-BORDER-CLOSEBOX_W + && window_y[n]+BORDER < curs_y && curs_y < window_y[n]+BORDER+DOCKBOX_H ) + { + Draw_Box(window_x[n]+window_w[n]-BORDER-CLOSEBOX_W-DOCKBOX_W, window_y[n]+BORDER, window_z[n], 0, DOCKBOX_W, DOCKBOX_H, OVERLAY_COLOR, NO); + } + } + if( GetWindowLocation() == WINDOW_LOC_FULL ) { + Draw_MinimizeBox(window_x[n]+window_w[n]-BORDER-CLOSEBOX_W-DOCKBOX_W/2-DOCKBOX_H/2, window_y[n]+BORDER, window_z[n], DOCKBOX_H, DOCKBOX_H); + } else { + Draw_MaximizeBox(window_x[n]+window_w[n]-BORDER-CLOSEBOX_W-DOCKBOX_W/2-DOCKBOX_H/2, window_y[n]+BORDER, window_z[n], DOCKBOX_H, DOCKBOX_H); + } + } + //SCROLL BAR - window_item_N[n] = ((window_h[n] - TOP_H-COL_H-BORDER) / CONTENT_FSIZE) - 1; + window_item_N[n] = ((window_h[n] - TOP_H-COL_H-BORDER) / LINE_H) - 1; window_scroll_N[n] = 0; if(window_content_N[n] > window_item_N[n] ) window_scroll_N[n] = window_content_N[n] - window_item_N[n]; if(window_scroll_P[n] > window_scroll_N[n]) window_scroll_P[n] = window_scroll_N[n]; + + window_scroll_size[n] = (window_h[n]-TOP_H-COL_H-BORDER) - (SCROLL_H_MIN*window_scroll_N[n]); + if( window_scroll_size[n] < SCROLL_H_MIN ) window_scroll_size[n] = SCROLL_H_MIN; - Draw_Box(window_x[n]+window_w[n]-BORDER-SCROLL_W, window_y[n]+TOP_H+COL_H, window_z[n], 0, SCROLL_W, window_h[n]-TOP_H-COL_H-BORDER, 0xD0D0D0FF, NO); - if(window_scroll_N[n]>0) { - window_scroll_size[n] = (window_h[n]-TOP_H-COL_H-BORDER) - (SCROLL_H_MIN*window_scroll_N[n]); - if( window_scroll_size[n] < SCROLL_H_MIN ) window_scroll_size[n] = SCROLL_H_MIN; + + SCROLL_W = SCROLL_W1; window_scroll_y[n] = (window_h[n]-TOP_H-COL_H-window_scroll_size[n]-BORDER) * window_scroll_P[n] / window_scroll_N[n]; if(n==window_activ) window_scroll_y[n] += curs_move_scroll; if(window_scroll_y[n] < 0) window_scroll_y[n]=0; - Draw_Box(window_x[n]+window_w[n]-BORDER-SCROLL_W, window_y[n]+TOP_H+COL_H+window_scroll_y[n], window_z[n], 0, SCROLL_W, window_scroll_size[n], 0x9090C0FF, NO); + Draw_Box(window_x[n]+window_w[n]-BORDER-SCROLL_W, window_y[n]+TOP_H+COL_H, window_z[n], 0, SCROLL_W, window_h[n]-TOP_H-COL_H-BORDER, 0xD0D0D0FF, NO); + Draw_Box(window_x[n]+window_w[n]-BORDER-SCROLL_W, window_y[n]+TOP_H+COL_H+window_scroll_y[n], window_z[n], 0, SCROLL_W, window_scroll_size[n], 0x9090C0FF, NO); + } else { + SCROLL_W = 0; + } + + //CONTENT BOX + Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H, window_z[n], 0, window_w[n]-BORDER*2, window_h[n]-TOP_H-BORDER, 0xF0F0F0FF, NO); + + FontColor(BLACK); + if(strcmp(window_path[n], "/") != 0 ) { + + //COLUMN HEADER BOX + Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H, window_z[n], 0, window_w[n]-BORDER*2, COL_H, 0xD4DBEDFF, NO); + DrawString(window_x[n]+BORDER+5, window_y[n]+TOP_H+3, STR_NAME); + + + if(window_w_col_size[n]< COL_W_MIN) window_w_col_size[n]=COL_W_MIN; + if(window_w[n] - window_w_col_size[n] - BORDER*2 - SCROLL_W < COL_W_MIN) window_w_col_size[n] = window_w[n] - COL_W_MIN - BORDER*2 - SCROLL_W; + + tiny3d_SetPolygon(TINY3D_LINES); + tiny3d_VertexPos(window_x[n]+window_w[n] - BORDER-SCROLL_W-window_w_col_size[n], window_y[n]+TOP_H+2 , window_z[n]); + tiny3d_VertexColor(0x505050FF); + tiny3d_VertexPos(window_x[n]+window_w[n] - BORDER-SCROLL_W-window_w_col_size[n], window_y[n]+TOP_H+COL_H-2 , window_z[n]); + tiny3d_End(); + + DrawString(window_x[n]+window_w[n]-BORDER-SCROLL_W-window_w_col_size[n] + 5, window_y[n]+TOP_H+3, STR_SIZE); } // CONTENT @@ -19646,246 +21202,723 @@ void Draw_window() for(i=0 ; i<=window_item_N[n]; i++) { if(window_content_N[n] < i+window_scroll_P[n]) break; - if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ]+window_w[window_activ]-BORDER-SCROLL_W - && window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*i < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*(i+1) - && n==window_activ && option_activ == NO && prop_activ == NO) - { - Draw_Box(window_x[window_activ]+BORDER, window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[window_activ], 0, window_w[window_activ]-5-10-5, CONTENT_FSIZE, 0x00D0FFFF, NO); + if(n==window_activ) { + if( is_float_window() == NO) { + if( window_x[n]+BORDER < curs_x && curs_x < window_x[n]+window_w[n]-BORDER-SCROLL_W + && window_y[n]+TOP_H+COL_H+LINE_H*i < curs_y && curs_y < window_y[n]+TOP_H+COL_H+LINE_H*(i+1) ) + { + Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], 0, + window_w[n]-BORDER-SCROLL_W-BORDER, LINE_H, OVERLAY_COLOR, NO); + } + } } if(window_content_Selected[n][i+window_scroll_P[n]] == YES) { - Draw_Box(window_x[n]+5, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 0, window_w[n]-5-10-5, CONTENT_FSIZE, 0x0090FFFF, NO); + Draw_Box(window_x[n]+BORDER, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], 0, + window_w[n]-BORDER-SCROLL_W-BORDER, LINE_H, 0x0090FFFF, NO); } - DrawTXTInBox(window_x[n]+BORDER+ICON+5, - window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, + if( strcmp(window_path[n], "/")==0) { + int j; + u8 found=NO; + for(j=0; j<=DevicesInfo_N; j++) { + if( strcmp(&DevicesInfo[j].MountPoint[1], window_content_Name[n][window_scroll_P[n]+i]) == 0) { + found=YES; + break; + } + } + + // ------------------------------------------------------------ + // TODO give a LABEL to dev_hdd0, dev_hdd1, dev_flash... etc. + // Save them in mgz directory. + // ------------------------------------------------------------ + + if( fm_LineSize == SMALL ) { + + FontSize(LINE_H); + + float Rx = window_x[n]+BORDER+LINE_H+5; + float Ry = window_y[n]+TOP_H+COL_H+LINE_H*i+1; + float Rw = window_w[n]- BORDER*2-SCROLL_W-LINE_H-5-5-5; + float Rx2 = Rx + Rw; + + char *RowLeft =NULL; + char *RowRight =NULL; + + if(found) { + RowLeft = FM_GetContent(fm_Format[0], window_content_Name[n][window_scroll_P[n]+i], DevicesInfo[j]); + RowRight = FM_GetContent(fm_Format[1], window_content_Name[n][window_scroll_P[n]+i], DevicesInfo[j]); + } else { + RowLeft = strcpy_malloc(window_content_Name[n][window_scroll_P[n]+i]); + } + + float wrl = WidthFromStr(RowLeft); + float wrr = WidthFromStr(RowRight); + + if( Rx2 - wrr < Rx + wrl ) FREE(RowRight); + + if(RowLeft!=NULL) { + DrawTXTInBox(Rx, + Ry, + window_z[n], + Rw, + 1, + RowLeft, + 0, BLACK); + FREE(RowLeft); + } + if(RowRight!=NULL) { + DrawTXTInBox(Rx2 - wrr, + Ry, + window_z[n], + wrr+5, + 1, + RowRight, + 0, BLACK); + FREE(RowRight); + } + + } else + if( fm_LineSize == BIG ) { + float Rx = window_x[n]+BORDER+LINE_H+5; + float Ry = window_y[n]+TOP_H+COL_H+LINE_H*i+1; + float Rw = window_w[n]- BORDER*2-SCROLL_W-LINE_H-5-5-5; + float Rx2 = Rx + Rw; + + u8 outside = NO; + int k; + for(k=0; k<=fm_RowNumber*2; k+=2) { + u8 f = FM_GetFormat(fm_Format[k]); + if(FM_FORMAT_CAPACITY <= f) { + if(fm_CapacityBarWidth != 0) Rx2 = Rx + fm_CapacityBarWidth; + if(f==FM_FORMAT_CAPACITY_MEMOUTSIDE) outside=YES; + break; + } + } + + for(k=0; k<=fm_RowNumber*2; k+=2) { + FontSize(fm_FontRowSize[k/2]); + u8 f = FM_GetFormat(fm_Format[k]); + + if(k!=0) Ry+=fm_FontRowSize[k/2]/4.0; + + if( f < FM_FORMAT_CAPACITY ) { + + char *RowLeft = NULL; + char *RowRight= NULL; + + if( found ) { + RowLeft = FM_GetContent(fm_Format[k], window_content_Name[n][window_scroll_P[n]+i], DevicesInfo[j]); + RowRight = FM_GetContent(fm_Format[k+1], window_content_Name[n][window_scroll_P[n]+i], DevicesInfo[j]); + } else { + if(FM_FORMAT_MOUNTPOINT<=f) { + RowLeft = strcpy_malloc(window_content_Name[n][window_scroll_P[n]+i]); + } + } + float wrl = WidthFromStr(RowLeft); + float wrr = WidthFromStr(RowRight); + + if( outside == NO && Rx2 - wrr < Rx + wrl ) FREE(RowRight); + if( outside == YES && Rx2 < Rx + wrl) FREE(RowRight); + if( outside == YES && Rx + Rw < Rx2 + wrr) FREE(RowRight); + + if(RowLeft!=NULL) { + DrawTXTInBox(Rx, + Ry, + window_z[n], + Rw, + 1, + RowLeft, + 0, BLACK); + FREE(RowLeft); + } + if(RowRight!=NULL) { + float wr = 3 ; + if( outside == NO ) wr = -wrr; + DrawTXTInBox(Rx2 + wr, + Ry, + window_z[n], + wrr+5, + 1, + RowRight, + 0, BLACK); + FREE(RowRight); + } + } + else + if( FM_FORMAT_CAPACITY <= f && found) { + if( DevicesInfo[j].TotalSpace != 0 ) { + float wc = fm_CapacityBarWidth; + if( wc == 0 ) wc = Rw; + float xc = 5.0; + if(outside) xc = wc + 3; + if(Rx + Rw < Rx + wc ) wc = Rw; + + DrawCapacityBar(Rx, + Ry, + window_z[n], + wc, + fm_FontRowSize[k/2] - fm_FontRowSize[k/2]/6.0, + DevicesInfo[j].TotalSpace, + DevicesInfo[j].FreeSpace); + + if ( FM_FORMAT_CAPACITY != f ) + { + char MemRow[128]; + char *Total_str = get_unit(DevicesInfo[j].TotalSpace); + char *Free_str = get_unit(DevicesInfo[j].FreeSpace); + sprintf(MemRow, "%s %s %s", Free_str, STR_FREEOF, Total_str); + FREE(Total_str); + FREE(Free_str); + + float Rcy = Ry; + if(outside) { + if( Rx + Rw < Rx + xc + WidthFromStr(MemRow)) Rcy = -50; + } + + DrawTXTInBox(Rx+xc, + Rcy, + window_z[n], + wc, 1, MemRow, 0, BLACK); + } + + } + } + + + Ry+=fm_FontRowSize[k/2] - fm_FontRowSize[k/2]/4.0; + } + } + + // ICONS + if( fm_CustomIcons == NO) { + + u8 ext = window_content_Type[n][window_scroll_P[n]+i]; + + if(ext == _DIRECTORY) { + DrawIcon_Directory(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n]); + } else { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], WHITE); + } + } else { + + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_hdd", 7)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], HDD, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_usb", 7)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], USB, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "ntfs", 4)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], USB, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_bdvd", 8)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], DISC_PS3, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_ps2disk", 11)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], DISC_PS2, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_flash", 9)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], FLASH, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_blind", 9)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], FLASH, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_rebug", 9)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], FLASH, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_rewrite", 9)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], FLASH, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "app_home", 8)==0) { + if( window_content_Type[n][window_scroll_P[n]+i] == _ISO_PS3) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], DISC_PS3, WHITE, DevicesInfo[j].ReadOnly); + } else { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], APP_HOME, WHITE, DevicesInfo[j].ReadOnly); + } + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "host_root", 8)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], HOST_ROOT, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_cf", 6)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], CF, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_ms", 6)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], MS, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_sd", 6)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], SD, WHITE, DevicesInfo[j].ReadOnly); + } else + if( strncmp(window_content_Name[n][window_scroll_P[n]+i], "dev_simple_hdd", 14)==0) { + DrawIcon(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], HDD, WHITE, DevicesInfo[j].ReadOnly); + } else { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], WHITE); + } + } + + continue; + } + + DrawTXTInBox(window_x[n]+BORDER+LINE_H+5, + window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], - window_w[n]- BORDER*2-SCROLL_W-window_w_col_size[n]-ICON-5-5-5, + window_w[n]- BORDER*2-SCROLL_W-window_w_col_size[n]-LINE_H-5-5-5, 1, window_content_Name[n][window_scroll_P[n]+i], 0, BLACK); + - if(window_content_Type[n][window_scroll_P[n]+i] != _DIRECTORY) { + if(window_content_Type[n][window_scroll_P[n]+i] != _DIRECTORY && strcmp(window_path[n], "/") != 0) { char *size_str = get_unit(window_content_Size[n][window_scroll_P[n]+i]); - float size_str_w = GetWidth(size_str); - DrawString(window_x[n]+window_w[n]-BORDER-SCROLL_W-size_str_w - 5 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, size_str); + float size_str_w = WidthFromStr(size_str); + DrawString(window_x[n]+window_w[n]-BORDER-SCROLL_W-size_str_w - 5 , window_y[n]+TOP_H+COL_H+LINE_H*i, size_str); free(size_str); } - + + u8 ext = window_content_Type[n][window_scroll_P[n]+i]; if(ext == _DIRECTORY) { - DrawIcon_Directory(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n]); - } - else if(ext == _PNG || ext == _JPG) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], GREEN); - } - else if(ext == _SELF || ext == _SPRX || ext == _EBOOT_BIN) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], RED); - } - else if(ext == _ELF || ext == _PRX || ext == _EBOOT_ELF) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], ORANGE); - } - else if(ext == _PKG) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], BLUE); - } - else if(ext == _RCO) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], PURPLE); - } - else if(ext == _TRP) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], PINK); - } - else if(ext == _SFO) { - DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], GREY); - } - else if(can_read(ext)==YES) { - DrawIcon_TXT(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], WHITE); - } - else if(ext == _ISO) { - Draw_DISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 16, COLOR_ISO); - } - else if(ext == _ISO_PS3) { - Draw_GAMEDISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 16, _ISO_PS3); - } - else if(ext == _ISO_PS2) { - Draw_GAMEDISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 16, _ISO_PS2); - } - else if(ext == _ISO_PS1) { - Draw_GAMEDISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 16, _ISO_PS1); - } - else if(ext == _ISO_PSP) { - Draw_GAMEDISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], 16, _ISO_PSP); + DrawIcon_Directory(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n]); + } else + if(ext == _PNG || ext == _JPG) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], GREEN); + } else + if(ext == _SELF || ext == _SPRX || ext == _EBOOT_BIN) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], RED); + } else + if(ext == _ELF || ext == _PRX || ext == _EBOOT_ELF) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], ORANGE); + } else + if(ext == _PKG) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], BLUE); + } else + if(ext == _RCO) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], PURPLE); + } else + if(ext == _TRP) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], PINK); + } else + if(ext == _SFO) { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], GREY); + } else + if(can_read(ext)) { + DrawIcon_TXT(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], WHITE); + } else + if(ext == _ISO) { + Draw_DISK(window_x[n]+BORDER+1 , window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], LINE_H, COLOR_ISO); + } else { + DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+LINE_H*i, window_z[n], WHITE); } - else DrawIcon_File(window_x[n]+BORDER+2, window_y[n]+TOP_H+COL_H+CONTENT_FSIZE*i, window_z[n], WHITE); - } } } void Draw_cursor() { - if(loading) return; + if(loading) return; + if(picture_viewer_activ) return; + + // main colors, separated here because eventually can be passed as arguments of the function + u32 cci = 0xffffffff; // cursor color in + u32 cco = 0x000000ff; // cursor color out + u32 ccp = 0x70ff70ff; // cursor color push + + // shadow colors, separated here for alpha tests + u32 sci = 0x00000080; // shadow color in + u32 sco = 0x00000040; // shadow color out + + if(curs_push == YES) cci = ccp; if(window_resize_H == YES) { - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x-9 , curs_y , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-5 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x-5 , curs_y+4 , 0); - tiny3d_End(); - - if(curs_push==YES) Draw_Box(curs_x-5, curs_y-1, 0, 0, 10, 2, RED, NO); else Draw_Box(curs_x-5, curs_y-1, 0, 0, 10, 2, WHITE, NO); - - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x+9 , curs_y , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x+5 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x+5 , curs_y+4 , 0); - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_LINE_LOOP); - tiny3d_VertexPos(curs_x-9 , curs_y , 0); - tiny3d_VertexColor(BLACK); - tiny3d_VertexPos(curs_x-5 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x-5 , curs_y-1 , 0); - tiny3d_VertexPos(curs_x+5 , curs_y-1 , 0); - tiny3d_VertexPos(curs_x+5 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x+9 , curs_y , 0); - tiny3d_VertexPos(curs_x+5 , curs_y+4 , 0); - tiny3d_VertexPos(curs_x+5 , curs_y+1 , 0); - tiny3d_VertexPos(curs_x-5 , curs_y+1 , 0); - tiny3d_VertexPos(curs_x-5 , curs_y+4 , 0); - tiny3d_End(); + if(PICTURE_offset[CURSOR_H] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CURSOR_H], PICTURE[CURSOR_H].width, PICTURE[CURSOR_H].height, PICTURE[CURSOR_H].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(curs_x-12.5, curs_y-5.5, 0, 0, 25, 11, cci, YES); + } + else { + // shadows + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x-4 , curs_y+3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-3 , curs_y+3 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x-4 , curs_y-3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-3 , curs_y-3 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x+4 , curs_y+3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+5 , curs_y+3 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+8 , curs_y , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+9 , curs_y , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+4 , curs_y-3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+5 , curs_y-3 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + + // heads + tiny3d_SetPolygon(TINY3D_TRIANGLES); + tiny3d_VertexPos(curs_x-8 , curs_y , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x-4 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x-4 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x+8 , curs_y , 0); + tiny3d_VertexPos(curs_x+4 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x+4 , curs_y-3 , 0); + tiny3d_End(); + + // shaft + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(curs_x-4 , curs_y+1 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x+4 , curs_y+1 , 0); + tiny3d_VertexPos(curs_x-4 , curs_y-1 , 0); + tiny3d_VertexPos(curs_x+4 , curs_y-1 , 0); + tiny3d_End(); + + // outline + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(curs_x-8 , curs_y , 0); + tiny3d_VertexColor(cco); + tiny3d_VertexPos(curs_x-4 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x-4 , curs_y+1 , 0); + tiny3d_VertexPos(curs_x+4 , curs_y+1 , 0); + tiny3d_VertexPos(curs_x+4 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x+8 , curs_y , 0); + tiny3d_VertexPos(curs_x+4 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x+4 , curs_y-1 , 0); + tiny3d_VertexPos(curs_x-4 , curs_y-1 , 0); + tiny3d_VertexPos(curs_x-4 , curs_y-3 , 0); + tiny3d_End(); + } } else if(window_resize_V == YES) { - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x , curs_y-9 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-4 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y-5 , 0); - tiny3d_End(); - if(curs_push==YES) Draw_Box(curs_x-1, curs_y-5, 0, 0, 2, 10, RED, NO); else Draw_Box(curs_x-1, curs_y-5, 0, 0, 2, 10, WHITE, NO); - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x , curs_y+9 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-4 , curs_y+5 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y+5 , 0); - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_LINE_LOOP); - tiny3d_VertexPos(curs_x , curs_y-9 , 0); - tiny3d_VertexColor(BLACK); - tiny3d_VertexPos(curs_x-4 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x-1 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x-1 , curs_y+5 , 0); - tiny3d_VertexPos(curs_x-4 , curs_y+5 , 0); - tiny3d_VertexPos(curs_x , curs_y+9 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y+5 , 0); - tiny3d_VertexPos(curs_x+1 , curs_y+5 , 0); - tiny3d_VertexPos(curs_x+1 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y-5 , 0); - tiny3d_End(); + if(PICTURE_offset[CURSOR_V] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CURSOR_V], PICTURE[CURSOR_V].width, PICTURE[CURSOR_V].height, PICTURE[CURSOR_V].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(curs_x-5.5, curs_y-12.5, 0, 0, 11, 25, cci, YES); + } + else { + // shadows + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x , curs_y-8 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+1 , curs_y-8 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+3 , curs_y-4 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+4 , curs_y-4 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x+1 , curs_y-4 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+2 , curs_y-4 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+1 , curs_y+4 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+2 , curs_y+4 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x+3 , curs_y+4 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+4 , curs_y+4 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x , curs_y+8 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+1 , curs_y+8 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + + // heads + tiny3d_SetPolygon(TINY3D_TRIANGLES); + tiny3d_VertexPos(curs_x , curs_y-8 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x-3 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x , curs_y+8 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x-3 , curs_y+4 , 0); + tiny3d_End(); + + // shaft + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(curs_x-1 , curs_y+4 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x+1 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x-1 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x+1 , curs_y-4 , 0); + tiny3d_End(); + + // outline + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(curs_x , curs_y-8 , 0); + tiny3d_VertexColor(cco); + tiny3d_VertexPos(curs_x+3 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x+1 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x+1 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x , curs_y+8 , 0); + tiny3d_VertexPos(curs_x-3 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x-1 , curs_y+4 , 0); + tiny3d_VertexPos(curs_x-1 , curs_y-4 , 0); + tiny3d_VertexPos(curs_x-3 , curs_y-4 , 0); + tiny3d_End(); + } } else if(window_resize_D1 == YES) { - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x-6 , curs_y-6 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-6 , curs_y-2 , 0); - tiny3d_VertexPos(curs_x-2 , curs_y-6 , 0); - tiny3d_End(); - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x-5 , curs_y-4 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-4 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x+5 , curs_y+4 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y+5 , 0); - tiny3d_End(); - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x+6 , curs_y+2 , 0); - tiny3d_VertexPos(curs_x+2 , curs_y+6 , 0); - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_LINE_LOOP); - tiny3d_VertexPos(curs_x-6 , curs_y-6 , 0); - tiny3d_VertexColor(BLACK); - tiny3d_VertexPos(curs_x-6 , curs_y-2 , 0); - tiny3d_VertexPos(curs_x-4 , curs_y-3 , 0); - tiny3d_VertexPos(curs_x+3 , curs_y+4 , 0); - tiny3d_VertexPos(curs_x+2 , curs_y+6 , 0); - tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); - tiny3d_VertexPos(curs_x+6 , curs_y+2 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y+3 , 0); - tiny3d_VertexPos(curs_x-3 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x-2 , curs_y-6 , 0); - tiny3d_End(); - + if(PICTURE_offset[CURSOR_D1] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CURSOR_D1], PICTURE[CURSOR_D1].width, PICTURE[CURSOR_D1].height, PICTURE[CURSOR_D1].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(curs_x-9.5, curs_y-9.5, 0, 0, 19, 19, cci, YES); + } + else { + // shadows + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x-6 , curs_y-6 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-5 , curs_y-6 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x , curs_y-5 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+1 , curs_y-5 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x-2 , curs_y-3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-1 , curs_y-3 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+3 , curs_y+2 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+4 , curs_y+2 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+6 , curs_y , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+7 , curs_y+6 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-4 , curs_y , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x-3 , curs_y-2 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-2 , curs_y-2 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + + // heads + tiny3d_SetPolygon(TINY3D_TRIANGLES); + tiny3d_VertexPos(curs_x-6 , curs_y-6 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x , curs_y-5 , 0); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); + tiny3d_VertexPos(curs_x , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_End(); + + // shaft + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(curs_x-3 , curs_y-2 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x+2 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x-2 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y+2 , 0); + tiny3d_End(); + + // outline + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(curs_x-6 , curs_y-6 , 0); + tiny3d_VertexColor(cco); + tiny3d_VertexPos(curs_x , curs_y-5 , 0); + tiny3d_VertexPos(curs_x-2 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y+2 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); + tiny3d_VertexPos(curs_x , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+2 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x-3 , curs_y-2 , 0); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_End(); + } } else if(window_resize_D2 == YES) { - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x+6 , curs_y-6 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x+6 , curs_y-2 , 0); - tiny3d_VertexPos(curs_x+2 , curs_y-6 , 0); - tiny3d_End(); - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x+5 , curs_y-4 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x+4 , curs_y-5 , 0); - tiny3d_VertexPos(curs_x-5 , curs_y+4 , 0); - tiny3d_VertexPos(curs_x-4 , curs_y+5 , 0); - tiny3d_End(); - tiny3d_SetPolygon(TINY3D_POLYGON); - tiny3d_VertexPos(curs_x-6 , curs_y+6 , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x-6 , curs_y+2 , 0); - tiny3d_VertexPos(curs_x-2 , curs_y+6 , 0); - tiny3d_End(); - - tiny3d_SetPolygon(TINY3D_LINE_LOOP); - tiny3d_VertexPos(curs_x+6 , curs_y-6 , 0); - tiny3d_VertexColor(BLACK); - tiny3d_VertexPos(curs_x+6 , curs_y-2 , 0); - tiny3d_VertexPos(curs_x+4 , curs_y-3 , 0); - tiny3d_VertexPos(curs_x-3 , curs_y+4 , 0); - tiny3d_VertexPos(curs_x-2 , curs_y+6 , 0); - tiny3d_VertexPos(curs_x-6 , curs_y+6 , 0); - tiny3d_VertexPos(curs_x-6 , curs_y+2 , 0); - tiny3d_VertexPos(curs_x-4 , curs_y+3 , 0); - tiny3d_VertexPos(curs_x+3 , curs_y-4 , 0); - tiny3d_VertexPos(curs_x+2 , curs_y-6 , 0); - tiny3d_End(); + if(PICTURE_offset[CURSOR_D2] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CURSOR_D2], PICTURE[CURSOR_D2].width, PICTURE[CURSOR_D2].height, PICTURE[CURSOR_D2].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(curs_x-9.5, curs_y-9.5, 0, 0, 19, 19, cci, YES); + } + else { + // shadows + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x-6 , curs_y+6 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-5 , curs_y+6 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x , curs_y+5 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+1 , curs_y+5 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x-2 , curs_y+3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-1 , curs_y+3 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+3 , curs_y-2 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+4 , curs_y-2 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+6 , curs_y , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+6 , curs_y-6 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+7 , curs_y-6 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-4 , curs_y , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x-3 , curs_y+2 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x-2 , curs_y+2 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + + // heads + tiny3d_SetPolygon(TINY3D_TRIANGLES); + tiny3d_VertexPos(curs_x-6 , curs_y+6 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_VertexPos(curs_x , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+6 , curs_y-6 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_VertexPos(curs_x , curs_y-5 , 0); + tiny3d_End(); + + // shaft + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(curs_x-3 , curs_y+2 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x-2 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x+2 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y-2 , 0); + tiny3d_End(); + + // outline + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(curs_x-6 , curs_y+6 , 0); + tiny3d_VertexColor(cco); + tiny3d_VertexPos(curs_x , curs_y+5 , 0); + tiny3d_VertexPos(curs_x-2 , curs_y+3 , 0); + tiny3d_VertexPos(curs_x+3 , curs_y-2 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y , 0); + tiny3d_VertexPos(curs_x+6 , curs_y-6 , 0); + tiny3d_VertexPos(curs_x , curs_y-5 , 0); + tiny3d_VertexPos(curs_x+2 , curs_y-3 , 0); + tiny3d_VertexPos(curs_x-3 , curs_y+2 , 0); + tiny3d_VertexPos(curs_x-5 , curs_y , 0); + tiny3d_End(); + } } else { - tiny3d_SetPolygon(TINY3D_TRIANGLES); - tiny3d_VertexPos(curs_x , curs_y , 0); - if(curs_push==YES) tiny3d_VertexColor(RED); else tiny3d_VertexColor(WHITE); - tiny3d_VertexPos(curs_x , curs_y + 15, 0); - tiny3d_VertexPos(curs_x+9, curs_y + 12, 0); - tiny3d_End(); - tiny3d_SetPolygon(TINY3D_LINE_LOOP); - tiny3d_VertexPos(curs_x , curs_y , 0); - tiny3d_VertexColor(BLACK); - tiny3d_VertexPos(curs_x , curs_y + 15, 0); - tiny3d_VertexPos(curs_x+9, curs_y + 12, 0); - tiny3d_End(); + if(PICTURE_offset[CURSOR] != 0) { + tiny3d_SetTexture(0, PICTURE_offset[CURSOR], PICTURE[CURSOR].width, PICTURE[CURSOR].height, PICTURE[CURSOR].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + Draw_Box(curs_x+1, curs_y+1, 0, 0, 11, 17, cci, YES); + } + else { + // shadows + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + tiny3d_VertexPos(curs_x, curs_y, 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+1, curs_y, 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+9 , curs_y+3 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+10, curs_y+3 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+6 , curs_y+5 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+7 , curs_y+5 , 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+12, curs_y+11, 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+13, curs_y+11, 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+11, curs_y+12, 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+12, curs_y+12, 0); + tiny3d_VertexColor(sco); + tiny3d_VertexPos(curs_x+5 , curs_y+6 , 0); + tiny3d_VertexColor(sci); + tiny3d_VertexPos(curs_x+6 , curs_y+6 , 0); + tiny3d_VertexColor(sco); + tiny3d_End(); + + // head + tiny3d_SetPolygon(TINY3D_TRIANGLE_FAN); + tiny3d_VertexPos(curs_x, curs_y, 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x+3 , curs_y+9 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y+6 , 0); + tiny3d_VertexPos(curs_x+6 , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+9 , curs_y+3 , 0); + tiny3d_End(); + + // shaft + tiny3d_SetPolygon(TINY3D_TRIANGLE_STRIP); + tiny3d_VertexPos(curs_x+5, curs_y+6 , 0); + tiny3d_VertexColor(cci); + tiny3d_VertexPos(curs_x+6 , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+11, curs_y+12, 0); + tiny3d_VertexPos(curs_x+12, curs_y+11, 0); + tiny3d_End(); + + // outline + tiny3d_SetPolygon(TINY3D_LINE_LOOP); + tiny3d_VertexPos(curs_x , curs_y , 0); + tiny3d_VertexColor(cco); + tiny3d_VertexPos(curs_x+3 , curs_y+9 , 0); + tiny3d_VertexPos(curs_x+5 , curs_y+6 , 0); + tiny3d_VertexPos(curs_x+11, curs_y+12, 0); + tiny3d_VertexPos(curs_x+12, curs_y+11, 0); + tiny3d_VertexPos(curs_x+6 , curs_y+5 , 0); + tiny3d_VertexPos(curs_x+9 , curs_y+3 , 0); + tiny3d_End(); + } } } -void sort() +void sort(int window_id) { + if(window_id==-1) return; + + if(strcmp(window_path[window_id], "/") == 0) window_sort[window_id] = ASC; + int min; u8 t; u64 t1; int i, j; - int Folder_N = -1; int File_N = -1; - for (i = 0; i<=window_content_N[window_activ]; i++) { - if(strcmp(window_content_Name[window_activ][i], "..") == 0) continue; - if(window_content_Type[window_activ][i] == _DIRECTORY) Folder_N++; + for (i = 0; i<=window_content_N[window_id]; i++) { + if(strcmp(window_content_Name[window_id][i], "..") == 0) continue; + if(window_content_Type[window_id][i] == _DIRECTORY) Folder_N++; else File_N++; } @@ -19897,17 +21930,17 @@ void sort() Folder_N = -1; File_N = -1; - for (i = 0; i<=window_content_N[window_activ]; i++) { - if(strcmp(window_content_Name[window_activ][i], "..") == 0) continue; - if(window_content_Type[window_activ][i] == _DIRECTORY) { + for (i = 0; i<=window_content_N[window_id]; i++) { + if(strcmp(window_content_Name[window_id][i], "..") == 0) continue; + if(window_content_Type[window_id][i] == _DIRECTORY) { Folder_N++; - list_Dir[Folder_N] = strcpy_malloc(window_content_Name[window_activ][i]); - list_Dir_sel[Folder_N] = window_content_Selected[window_activ][i]; + list_Dir[Folder_N] = strcpy_malloc(window_content_Name[window_id][i]); + list_Dir_sel[Folder_N] = window_content_Selected[window_id][i]; } else { File_N++; - list_Fil[File_N] = strcpy_malloc(window_content_Name[window_activ][i]); - list_Fil_sel[File_N] = window_content_Selected[window_activ][i]; - list_Fil_siz[File_N] = window_content_Size[window_activ][i]; + list_Fil[File_N] = strcpy_malloc(window_content_Name[window_id][i]); + list_Fil_sel[File_N] = window_content_Selected[window_id][i]; + list_Fil_siz[File_N] = window_content_Size[window_id][i]; } } @@ -19923,7 +21956,7 @@ void sort() tb = strcpy_malloc(list_Dir[min]); if(ta[0]>=97 && ta[0]<=123) ta[0]-=32; if(tb[0]>=97 && tb[0]<=123) tb[0]-=32; - if(window_sort[window_activ] == ASC) { + if(window_sort[window_id] == ASC) { if(strcmp(ta, tb) < 0) min = j; } else if(strcmp(ta, tb) > 0) min = j; } @@ -19950,7 +21983,7 @@ void sort() tb = strcpy_malloc(list_Fil[min]); if(ta[0]>=97 && ta[0]<=123) ta[0]-=32; if(tb[0]>=97 && tb[0]<=123) tb[0]-=32; - if(window_sort[window_activ] == ASC) { + if(window_sort[window_id] == ASC) { if(strcmp(ta, tb) < 0) min = j; } else if(strcmp(ta, tb) > 0) min = j; } @@ -19976,42 +22009,42 @@ void sort() FREE(tb); u32 n; - for(n=0; n window_z[i]) window_activ=i; - } - if(window_activ != -1) { - window_z[window_activ] = 1; + if(window_id == window_activ) { + + window_activ=-1; + for(i=0; i window_z[i]) window_activ=i; + } + if(window_activ != -1) { + window_z[window_activ] = 1; + for(i=0; id_name, ".")==0) continue; + if(strcmp(dir->d_name, "..")==0) continue; + if(!strncmp(dir->d_name, "$", 1)) continue; + + DevicesInfo_N++; + sprintf(temp, "/%s/", dir->d_name); + GetDeviceInfo(temp, &DevicesInfo[DevicesInfo_N]); } -#endif + closedir(d); - if(path_info("/dev_hdd1")==_NOT_EXIST) { - sys_fs_mount("CELL_FS_UTILITY:HDD1", "CELL_FS_FAT", "/dev_hdd1", 0); - sysFsAioInit("/dev_hdd1"); +// can't see NTFS with opendir("/") + int r,i; + for(i = 0; i < 8 ; i++) { + r = -1; + sprintf(temp, "ntfs%c", 48+i); + r = NTFS_Test_Device(temp); + if(r>=0) { + sprintf(temp, "/ntfs%c:/", 48+i); + DevicesInfo_N++; + GetDeviceInfo(temp, &DevicesInfo[DevicesInfo_N]); + } } - +} + +void RefreshWindow(window_id) +{ char temp[512]; + int n, i; + if(window_open[window_id] == NO) return; + + // clear + window_content_N[window_id]=-1; + for(n=0; nd_name, "..")==0) continue; // NTFS : added for all directories after if(!strncmp(dir->d_name, "$", 1)) continue; // NTFS : ignore system files - if(window_content_N[window_activ] == WINDOW_MAX_ITEMS-1) { + if(window_content_N[window_id] == WINDOW_MAX_ITEMS-1) { show_msg("Too many files..."); closedir(d); - sort(); + sort(window_id); return; } - window_content_N[window_activ]++; + + window_content_N[window_id]++; if(dir->d_type & DT_DIR) { - window_content_Type[window_activ][window_content_N[window_activ]]= _DIRECTORY; - } else { - if(strcmp(window_path[window_activ], "/") != 0) { - sprintf(temp, "%s/%s", window_path[window_activ], dir->d_name); - window_content_Size[window_activ][window_content_N[window_activ]] = get_size(temp, NO); + window_content_Type[window_id][window_content_N[window_id]] = _DIRECTORY; + if(strcmp(window_path[window_id], "/") == 0) { + if(strcmp(dir->d_name, "app_home") == 0 || strcmp(dir->d_name, "dev_bdvd") == 0) { + sprintf(temp, "/%s", dir->d_name); + window_content_Type[window_id][window_content_N[window_id]] = get_ext(temp); + } } - window_content_Type[window_activ][window_content_N[window_activ]] = get_ext(dir->d_name); + } else { + if(strcmp(window_path[window_id], "/") != 0) { + sprintf(temp, "%s/%s", window_path[window_id], dir->d_name); + window_content_Size[window_id][window_content_N[window_id]] = get_size(temp, NO); + } + window_content_Type[window_id][window_content_N[window_id]] = get_ext(dir->d_name); } - window_content_Name[window_activ][window_content_N[window_activ]] = strcpy_malloc(dir->d_name); + window_content_Name[window_id][window_content_N[window_id]] = strcpy_malloc(dir->d_name); } closedir(d); -// can't see NTFS with opendir("/") - if(strcmp(window_path[window_activ], "/") == 0) { - - int r,i; + if(strcmp(window_path[window_id], "/") == 0) { + // can't see NTFS with opendir("/") for(i = 0; i < 8 ; i++) { - r = -1; + n = -1; sprintf(temp, "ntfs%c", 48+i); - r = NTFS_Test_Device(temp); - if(r>=0) { - window_content_N[window_activ]++; - window_content_Type[window_activ][window_content_N[window_activ]]= _DIRECTORY; + n = NTFS_Test_Device(temp); + if(n>=0) { + window_content_N[window_id]++; + window_content_Type[window_id][window_content_N[window_id]]= _DIRECTORY; sprintf(temp, "ntfs%c:", 48+i); - window_content_Name[window_activ][window_content_N[window_activ]] = strcpy_malloc(temp); + window_content_Name[window_id][window_content_N[window_id]] = strcpy_malloc(temp); } } } else { + window_content_N[window_id]++; + window_content_Type[window_id][window_content_N[window_id]]= _DIRECTORY; + window_content_Name[window_id][window_content_N[window_id]] = strcpy_malloc(".."); + } + + sort(window_id); +} + +void Window(char *directory) +{ + char temp[512]; + + if(directory==NULL) { + if( OpenWindow() == FAILED) return; + } else + if(strcmp(directory, "..") == 0) { + if(window_activ==-1) return; + if(strcmp(window_path[window_activ], "/") == 0) return; + strcpy(temp, window_path[window_activ]); + temp[strrchr(temp, '/') - temp] = 0; + memset(window_path[window_activ], 0, sizeof(window_path[window_activ])); + strcpy(window_path[window_activ], temp); + if(window_path[window_activ][0] == 0) window_path[window_activ][0] = '/'; + } else + if(strcmp(directory, ".") == 0) { + //refresh; + if(window_activ==-1) return; + } else { + if(window_activ==-1) return; + if(strcmp(window_path[window_activ], "/") != 0) { + strcat(window_path[window_activ], "/"); + } + strcat(window_path[window_activ], directory); + UpdateLastPath(); + } + +#ifdef RPCS3 + + window_content_N[window_activ]=-1; + int n; + for(n=0; n (float) PROP_W - (float) PROP_COL_W - (float) 10.0f) { + while((float) WidthFromStr(PROP_ITEM_VALUE[PROP_ITEM_NUMBER]) > (float) PROP_W - (float) PROP_COL_W - (float) 10.0f) { PROP_ITEM_VALUE[PROP_ITEM_NUMBER][l-1]=0; PROP_ITEM_VALUE[PROP_ITEM_NUMBER][l-2]='.'; PROP_ITEM_VALUE[PROP_ITEM_NUMBER][l-3]='.'; @@ -20426,7 +22545,8 @@ void picture_viewer_input() { if(picture_viewer_activ == NO) return; - if(new_pad & BUTTON_RIGHT) { + if(NewPad(BUTTON_RIGHT)) + { int flag=NO, i; for(i=0; i<=window_content_N[window_activ]; i++) { if(flag==YES) { @@ -20440,7 +22560,8 @@ void picture_viewer_input() } } - if(new_pad & BUTTON_LEFT) { + if(NewPad(BUTTON_LEFT)) + { int flag=NO, i; for(i=window_content_N[window_activ]; i>0; i--) { if(flag==YES) { @@ -20454,7 +22575,7 @@ void picture_viewer_input() } } - if(new_pad & BUTTON_CIRCLE) + if(NewPad(BUTTON_CIRCLE)) { picture_viewer_activ=NO; memset(TMP_PIC_path, 0, sizeof(TMP_PIC_path)); @@ -20515,79 +22636,65 @@ void open_picture_viewer(char *pict_path) //**** txt viewer **** -void nextLine() +float DrawTXTInBox(float x, float y, float z, float w, float h, char *string, u32 bg_color, u32 font_color) { - u64 i; - float xt=TXT_X; - for(i=txt_linpos; i < txt_viewer_content_size; i++) { - if(txt_viewer_content[i] == '\n' || xt > TXT_X+TXT_W) { - txt_linpos = i+1; - return; - } - xt = DrawFormatString(xt, -50, "%c", txt_viewer_content[i]); - } + if(y<0) return x; + + + SetFontZ(z); + FontColor(font_color); + + float h1 = h; + if(h==1) h1 = GetFontHeight(); + + if( bg_color != 0) Draw_Box(x, y, z, 0, w, h1, bg_color, NO); + + + set_ttf_window(x, y, w, h1, WIN_AUTO_LF); + Z_ttf = z; + x = (float) display_ttf_string(0, 0, string, font_color, 0, GetFontWidth(), GetFontHeight()); + + set_ttf_window(0, 0, 848, 512, 0); + + return x; + } -void prevLine() +int GetNumberOfLine(float x, float y, float w, float h, char *string) { - u64 i; - float xt=TXT_X; - if(txt_linpos == 0) return; - if(txt_linpos == 1) { - txt_linpos=0; - return; - } - for(i=txt_linpos-2; i >= 0; i--) { - if(txt_viewer_content[i] == '\n' || xt > TXT_X+TXT_W) { - txt_linpos = i+1; - return; - } - if(i==0) { - txt_linpos=0; - return; - } - xt = DrawFormatString(xt, -50, "%c", txt_viewer_content[i]); - } + float h1 = h; + if(h==1) h1 = GetFontHeight(); + + Z_ttf = 0.0; + Y_ttf = y; + set_ttf_window(x, y, w, h1, WIN_AUTO_LF); + int lines = display_ttf_line(-1, 0, 0, string, 0, 0, GetFontWidth(), GetFontHeight()); + + set_ttf_window(0, 0, 848, 512, 0); + + return lines; } -void DrawTXTInBox(float x, float y, float z, float w, float h, char *txt, u32 bg_color, u32 font_color) +float DrawTXTInBoxScroll(int line, float x, float y, float z, float w, float h, char *string, u32 bg_color, u32 font_color) { - Draw_Box(x, y, z, 0, w, h, bg_color, NO); + if(y<0) return x; + SetFontZ(z); FontColor(font_color); - float xt = x; - float yt = y; - u64 i, j; - u64 l = strlen(txt); - - for(i=0; i < l ; i++) { - if(txt[i] == '\r') continue; - if(txt[i] == '\n') { - xt = x; - yt+=new_line(1); - continue; - } - else if(txt[i] == '\t') { - for(j=x; j < x+w; j+=30) { - if(j>xt) { - xt=j; - break; - } - } - continue; - } - - if(xt > x+w) { - if(h==1) {xt = DrawString(xt, yt, "..."); return;} - xt = x; - yt+=new_line(1); - } - - if(yt > y+h) { txt_scroll=YES; return;} - - xt = DrawFormatString(xt, yt, "%c", txt[i]); - } + float h1 = h; + if(h==1) h1 = GetFontHeight(); + + if( bg_color != 0) Draw_Box(x, y, z, 0, w, h1, bg_color, NO); + + set_ttf_window(x, y, w, h1, WIN_AUTO_LF); + Z_ttf = z; + x = (float) display_ttf_line(line, 0, 0, string, font_color, 0, GetFontWidth(), GetFontHeight()); + + set_ttf_window(0, 0, 848, 512, 0); + + return x; + } void txt_viewer_input() @@ -20596,21 +22703,29 @@ void txt_viewer_input() get_R2speed(); - if( R2pad(BUTTON_DOWN) && txt_scroll == YES ) + if( R2pad(BUTTON_DOWN) ) { - nextLine(); + if(txt_line < txt_scroll ) txt_line++; } - if( R2pad(BUTTON_UP) && txt_linpos != 0) + if( R2pad(BUTTON_UP)) { - prevLine(); + if(0xt) { - xt=j; - break; - } - } - continue; - } - - if(xt > TXT_X+TXT_W) { - xt = TXT_X; - yt+=new_line(1); - } - - if(yt > TXT_Y+TXT_H) { txt_scroll=YES; return;} - - xt = DrawFormatString(xt, yt, "%c", txt_viewer_content[i]); - } + DrawTXTInBoxScroll(txt_line, TXT_X, TXT_Y, 0, TXT_W, TXT_H, txt_viewer_content, WHITE, BLACK); } void open_txt_viewer(char *txt_path) { - txt_linpos=0; - txt_scroll=NO; - - txt_viewer_content = LoadFile(txt_path, &txt_viewer_content_size); + txt_line=0; + txt_scroll=0; - txt_viewer_activ = YES; + FREE(txt_viewer_path); + txt_viewer_path = strcpy_malloc(txt_path); + + int size; + txt_viewer_content = LoadFile(txt_viewer_path, &size); + + txt_scroll = GetNumberOfLine(TXT_X, TXT_Y, TXT_W, TXT_H, txt_viewer_content) + 1; + if(TXT_LINE_MAX < txt_scroll) txt_scroll -= TXT_LINE_MAX; + else txt_scroll = 0; + + txt_viewer_activ = YES; } //**** SFO viewer **** @@ -20728,7 +22816,7 @@ void SFO_viewer_input() { if(SFO_viewer_activ == NO) return; - if(new_pad & BUTTON_CIRCLE) + if(NewPad(BUTTON_CIRCLE)) { SFO_viewer_activ=NO; } @@ -20816,7 +22904,7 @@ void Draw_SFO_viewer() int SFO_Y=512/2-SFO_H/2; float x=0; for(i=0; i= 0 && option_sel_N > 0) { - if(all_same_ext == _PNG) { - add_option_item(STR_MAKE_APNG); - } - } - - if(0 <= option_sel_N) { add_option_item(STR_SET_PERMS); } - add_option_item(STR_PROPS); } + float k=0; for(i=0; i<=option_item_N; i++) { - if(k90) { + if(window_activ < 0) { + if(HoldCircleDelay()) { finalize_FileExplorer(); return BREAK; } - } else { - if(new_pad & BUTTON_CIRCLE) { - CloseWindow(); + } + else { + if(NewPad(BUTTON_CIRCLE)) { + CloseWindow(window_activ); return CONTINUE; } } #else - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { if(window_activ < 0) { finalize_FileExplorer(); return BREAK; } else { - CloseWindow(); + CloseWindow(window_activ); return CONTINUE; } } #endif + if(NewPad(BUTTON_R3)) { + root_display++; + if(MAX_STYLE0) { + SCROLL_W = SCROLL_W1; + } else { + SCROLL_W = 0; + } + // R3 move window window_x[window_activ] += R2JoyStick_X(BUTTON_R); window_y[window_activ] += R2JoyStick_Y(BUTTON_R); @@ -21877,7 +24270,7 @@ u8 window_input() if(window_y[window_activ] < 0 ) window_y[window_activ]=0; // 'MOUSE CLICK' - if(new_pad & BUTTON_CROSS) { + if(NewPad(BUTTON_CROSS)) { //Cursor on activ window if( window_x[window_activ] < curs_x && curs_x < (window_x[window_activ] + window_w[window_activ]) && window_y[window_activ] < curs_y && curs_y < (window_y[window_activ] + window_h[window_activ]) ) @@ -21885,8 +24278,8 @@ u8 window_input() // browse for(i=0 ; i<=window_item_N[window_activ]; i++) { if(window_content_N[window_activ] < i+window_scroll_P[window_activ]) break; - if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-SCROLL_W-BORDER - && window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*i < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*(i+1) ) + if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-SCROLL_W-BORDER + && window_y[window_activ]+TOP_H+COL_H+LINE_H*i < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H+LINE_H*(i+1) ) { if(window_content_Type[window_activ][i+window_scroll_P[window_activ]] == _DIRECTORY) { Window(window_content_Name[window_activ][i+window_scroll_P[window_activ]]); @@ -21909,7 +24302,7 @@ u8 window_input() if(window_content_Type[window_activ][i+window_scroll_P[window_activ]] == _ISO) { char IsoPath[255]; sprintf(IsoPath, "%s/%s", window_path[window_activ], window_content_Name[window_activ][i+window_scroll_P[window_activ]]); - read_game_setting(NULL); + read_game_setting(-1); if( MountGame(IsoPath) == SUCCESS) { finalize_FileExplorer(); exit(0); @@ -21919,19 +24312,33 @@ u8 window_input() } // Close - if( window_x[window_activ]+window_w[window_activ]-10-30 < curs_x && curs_x < window_x[window_activ]+window_w[window_activ]-10 - && window_y[window_activ]+10 < curs_y && curs_y < window_y[window_activ]+10+20 ) + if( window_x[window_activ]+window_w[window_activ]-BORDER-CLOSEBOX_W < curs_x && curs_x < window_x[window_activ]+window_w[window_activ]-BORDER + && window_y[window_activ]+BORDER < curs_y && curs_y < window_y[window_activ]+BORDER+CLOSEBOX_H ) { - CloseWindow(); + CloseWindow(window_activ); + return CONTINUE; } - - // sort Name - if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-BORDER-SCROLL_W - window_w_col_size[window_activ]- 10 - && window_y[window_activ]+TOP_H < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H ) + // Maximize / Minimize + if( window_x[window_activ]+window_w[window_activ]-BORDER-CLOSEBOX_W-DOCKBOX_W < curs_x && curs_x < window_x[window_activ]+window_w[window_activ]-BORDER-CLOSEBOX_W + && window_y[window_activ]+BORDER < curs_y && curs_y < window_y[window_activ]+BORDER+DOCKBOX_H ) { - if(window_sort[window_activ] == ASC) window_sort[window_activ] = DSC; - else window_sort[window_activ] = ASC; - sort(); + if(GetWindowLocation() != WINDOW_LOC_FULL) { + SetWindowLocation(WINDOW_LOC_FULL); + } else { + SetWindowLocation(WINDOW_LOC_DEFAULT); + } + return CONTINUE; + } + + // sort Name + if(0 < COL_H) { + if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-BORDER-SCROLL_W - window_w_col_size[window_activ]- 10 + && window_y[window_activ]+TOP_H < curs_y && curs_y < window_y[window_activ] + TOP_H + COL_H ) + { + if(window_sort[window_activ] == ASC) window_sort[window_activ] = DSC; + else window_sort[window_activ] = ASC; + sort(window_activ); + } } } // cursor on passiv window @@ -21960,14 +24367,14 @@ u8 window_input() } //SELECT ITEM - if(new_pad & BUTTON_SQUARE) { + if(NewPad(BUTTON_SQUARE)) { if( window_x[window_activ] < curs_x && curs_x < (window_x[window_activ] + window_w[window_activ]) && window_y[window_activ] < curs_y && curs_y < (window_y[window_activ] + window_h[window_activ]) ) { for(i=0 ; i <=window_item_N[window_activ]; i++) { - if(window_content_N[window_activ] < i+window_scroll_P[window_activ]) break; - if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-SCROLL_W-BORDER - && window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*i < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H+CONTENT_FSIZE*(i+1) ) + if(window_content_N[window_activ] < i + window_scroll_P[window_activ]) break; + if( window_x[window_activ]+BORDER < curs_x && curs_x < window_x[window_activ] + window_w[window_activ]-SCROLL_W-BORDER + && window_y[window_activ]+TOP_H+COL_H+LINE_H*i < curs_y && curs_y < window_y[window_activ]+TOP_H+COL_H+LINE_H*(i+1) ) { if(window_content_Selected[window_activ][i+window_scroll_P[window_activ]] == NO) { if(strcmp(window_content_Name[window_activ][i+window_scroll_P[window_activ]], "..") != 0) { @@ -22163,37 +24570,37 @@ u8 window_input() } // DOCK screen - if(old_pad & BUTTON_R1) { - if(new_pad & BUTTON_LEFT) { + if(OldPad(BUTTON_R1)) { + if(NewPad(BUTTON_LEFT)) { SetWindowLocation(WINDOW_LOC_LEFT); return CONTINUE; } else - if(new_pad & BUTTON_UP) { + if(NewPad(BUTTON_UP)) { SetWindowLocation(WINDOW_LOC_FULL); return CONTINUE; } else - if(new_pad & BUTTON_RIGHT) { + if(NewPad(BUTTON_RIGHT)) { SetWindowLocation(WINDOW_LOC_RIGHT); return CONTINUE; } else - if(new_pad & BUTTON_DOWN) { + if(NewPad(BUTTON_DOWN)) { SetWindowLocation(WINDOW_LOC_DEFAULT); return CONTINUE; } } //Refresh Window - if(new_pad & BUTTON_L3) { + if(NewPad(BUTTON_L3)) { Window("."); } //Parent directory - if(old_pad & BUTTON_L1) { - if(new_pad & BUTTON_LEFT) { + if(OldPad(BUTTON_L1)) { + if(NewPad(BUTTON_LEFT)) { Window(".."); return CONTINUE; } else - if(new_pad & BUTTON_RIGHT) { + if(NewPad(BUTTON_RIGHT)) { GotoLastPath(); return CONTINUE; } @@ -22234,67 +24641,107 @@ u8 window_input() void Draw_input() { - float x=INPUT_X; - float y=INPUT_Y; - FontColor(COLOR_1); - SetFontZ(0); - - if(option_activ == NO - && prop_activ == NO - && picture_viewer_activ == NO - && txt_viewer_activ == NO - && SFO_viewer_activ == NO) { - if(window_activ < 0) { -#ifdef FILEMANAGER - if(hold_CIRCLE) { - DrawProgRing(x+7, y+7.5, 20, ((hold_CIRCLE%30)*100)/30, COLOR_3); - FontColor(COLOR_3); - DrawFormatString(x+10, y-12, "%d", (90 - hold_CIRCLE)/30); - FontColor(COLOR_1); - } - x=DrawButton(x, y, STR_BACKTOXMB, BUTTON_CIRCLE); + float x=INPUT_X; + float y=INPUT_Y; + FontColor(COLOR_1); + SetFontZ(0); + + if(is_float_window() == NO) { + x=DrawButton(x, y, STR_OPEN, BUTTON_START); +#ifdef FILEMANAGER + x=DrawButton(x, y, STR_SETTINGS, BUTTON_SELECT); +#endif + if(0 <= window_activ) { + x=DrawButton(x, y, STR_SELECT, BUTTON_SQUARE); + x=DrawButton(x, y, STR_OPTION, BUTTON_TRIANGLE); + x=DrawButton(x, y, STR_CLICK, BUTTON_CROSS); + x=DrawButton(x, y, STR_CURSOR, BUTTON_L); + x=DrawButton(x, y, STR_REFRESH, BUTTON_L3); + x=DrawButton(x, y, STR_WINDOW, BUTTON_R); + x=DrawButton(x, y, STR_SCROLL, BUTTON_UP | BUTTON_DOWN | BUTTON_LEFT | BUTTON_RIGHT); + x=DrawButton(x, y, STR_CLOSE, BUTTON_CIRCLE); + } else + if(window_activ < 0) { +#ifdef FILEMANAGER + x=DrawSpam(x, y); + x=DrawButton(x, y, STR_EXIT, BUTTON_CIRCLE); #else x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); #endif - } else { - x=DrawButton(x, y, STR_CLOSE, BUTTON_CIRCLE); + } + } else + if(option_activ == YES) { + x=DrawButton(x, y, STR_CLICK, BUTTON_CROSS); + x=DrawButton(x, y, STR_CURSOR, BUTTON_L); + x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); + } else + if(prop_activ == YES || SFO_viewer_activ == YES) { + x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); + } else + if(txt_viewer_activ == YES){ + Draw_txt_viewer_input(); + } else + if(picture_viewer_activ == YES) { + x=DrawButton(x, y, STR_PREVIOUS, BUTTON_LEFT); + x=DrawButton(x, y, STR_NEXT, BUTTON_RIGHT); + x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); + } +} + +// close if device of this window is unplugged +void AutoClose(int window_id) +{ + if(window_open[window_id] == NO) return; + + if(strcmp(window_path[window_id], "/") == 0) return; + + int n=1; + char temp[512]; + while(window_path[window_id][n] != '/' && window_path[window_id][n] != 0) n++; + strncpy(temp, window_path[window_id], n); + temp[n]=0; + + u8 found = NO; + for(n=0; n <=DevicesInfo_N; n++) { + if(strcmp(temp, DevicesInfo[n].MountPoint) == 0) { + found = YES; + break; } -#ifdef FILEMANAGER - x=DrawButton(x, y, STR_SETTINGS, BUTTON_SELECT); + } + + if(found==NO) CloseWindow(window_id); +} + +void AutoRefresh_Windows() +{ + +#ifdef RPCS3 + return; #endif - x=DrawButton(x, y, STR_OPEN, BUTTON_START); - x=DrawButton(x, y, STR_OPTION, BUTTON_TRIANGLE); - x=DrawButton(x, y, STR_CLICK, BUTTON_CROSS); - if(0 <= window_activ) { - x=DrawButton(x, y, STR_SELECT, BUTTON_SQUARE); - x=DrawButton(x, y, STR_CURSOR, BUTTON_L); - x=DrawButton(x, y, STR_REFRESH, BUTTON_L3); - x=DrawButton(x, y, STR_WINDOW, BUTTON_R); - x=DrawButton(x, y, STR_SCROLL, BUTTON_UP | BUTTON_DOWN | BUTTON_LEFT | BUTTON_RIGHT); - } - } else - if(option_activ == YES) { - x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); - x=DrawButton(x, y, STR_CLICK, BUTTON_CROSS); - x=DrawButton(x, y, STR_CURSOR, BUTTON_L); - } else - if(prop_activ == YES || SFO_viewer_activ == YES) { - x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); - } else - if(txt_viewer_activ == YES){ - Draw_txt_viewer_input(); - } else - if(picture_viewer_activ == YES) { - x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); - x=DrawButton(x, y, STR_PREVIOUS, BUTTON_LEFT); - x=DrawButton(x, y, STR_NEXT, BUTTON_RIGHT); + + if(PlugAndPlay == NO) {start_PlugAndPlay(); return;} + if(do_Refresh == NO) return; + + MountNTFS(); + + RefreshDevices(); + + int k; + for(k=0; k 0) { - for(j=ITEMS_NUMBER; j>=0; j--){ - if(TITLES[j] != NULL) { - MENU_SCROLL_START=j; - break; - } + if( USE_TITLE_MENU ) { + if( TITLE_MENU_FIRST_ITEM==i) FontColor(COLOR_2); + else FontColor(COLOR_1); + DrawString(x3, y1, TITLES[i]); + y1+=new_line(1); + } else { + y+=10; + Draw_title(x1, y, TITLES[i]); + + if(strcmp( TITLES[i], STR_THM_SETTINGS)==0) { + FontColor(COLOR_4); + FontSize(18); + DrawFormatString(x2, y, Themes[UI_position]); + FontSize(15); + FontColor(COLOR_1); } - if(MENU_SCROLL_START==i) { - DrawUp(x1-7, y1+5); - i+=MENU_SCROLL; + + y+=new_line(1)+15; + y1=y; + + if(MENU_SCROLL > 0) { + for(j=ITEMS_NUMBER; j>=0; j--){ + if(TITLES[j] != NULL) { + MENU_SCROLL_START=j; + break; + } + } + if(MENU_SCROLL_START==i) { + DrawUp(x1-7, y1+5); + i+=MENU_SCROLL; + } } } } - if(i==MENU_TABLE_START) y1=y; + if( USE_TITLE_MENU ) { + if( !(TITLE_MENU_FIRST_ITEM<=i && i<=TITLE_MENU_LAST_ITEM) ) continue; + if( i == TITLE_MENU_FIRST_ITEM ) y = 40; + } + + if(i==MENU_TABLE_START) y1=y; + + if(ITEMS_TYPE[i] == ITEM_TOGGLE) { + u8 active=YES; + + if(ITEMS_POSITION == i && MENU_LVL != LVL_TITLE) { + color = COLOR_2; + FontColor(COLOR_2); + } else { + color = COLOR_1; + FontColor(COLOR_1); + //active=NO; + } + + if( strcmp(ITEMS[i], STR_PATCH_EXP) == 0 ) { + DrawChildArrow(x1+5, y, 9, 10, 7, color); + DrawFormatString(x1+20, y, ITEMS[i]); + } else { + DrawFormatString(x1, y, ITEMS[i]); + } + + Draw_toggle(x2, y, 9, 12, ITEMS_VALUE_POSITION[i], active); + + y+=new_line(1); + + } else + if(ITEMS_TYPE[i] == ITEM_LOCKED) { + color = SetALPHA(GetALPHA(COLOR_1)/2, COLOR_1); + + FontColor(color); + + if( strcmp(ITEMS[i], STR_CURRENT) == 0 ) { + DrawChildArrow(x1+5, y, 9, 10, 7, color); + DrawFormatString(x1+20, y, ITEMS[i]); + } else { + DrawFormatString(x1, y, ITEMS[i]); + } + + if( ITEMS_VALUE_NUMBER[i] == 0 ) DrawFormatString(x2, y, ITEMS_VALUE[i][0]); + + y+=new_line(1); + } else if(ITEMS_TYPE[i] == ITEM_TEXTBOX) { - if(ITEMS_POSITION == i) FontColor(COLOR_2); - else FontColor(COLOR_1); - DrawFormatString(x1, y, ITEMS[i]); + if(ITEMS_POSITION == i && MENU_LVL != LVL_TITLE) { + color = COLOR_2; + FontColor(COLOR_2); + } else { + color = COLOR_1; + FontColor(COLOR_1); + } + + if( strcmp(ITEMS[i], STR_PATCH_LIBFS) == 0 ) { + DrawChildArrow(x1+5, y, 9, 10, 7, color); + DrawFormatString(x1+20, y, ITEMS[i]); + } else { + DrawFormatString(x1, y, ITEMS[i]); + } FontColor(COLOR_1); + if( ITEMS_VALUE_NUMBER[i] != -1 ) { - if(IN_ITEMS_VALUE == YES && ITEMS_POSITION == i) { + float x2_t = x2; + + if(MENU_LVL==LVL_VALUE && ITEMS_POSITION==i) { FontColor(COLOR_2); + + float w=WidthFromStr(ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); + + if(X_MAX - 5 < x2+w && MENU_ITEMS_X == FINAL_ITEMS_X) { + y+=new_line(1); + DrawChildArrow(x1+10, y, 9, 10, 7, COLOR_2); + x2_t=x1+25; + } + if( ITEMS_VALUE_NUMBER[i] > 0 ) { - float w=GetWidth(ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); float h=GetFontHeight(); - DrawDown(x2+w/2, y+h*0.85); - DrawUp(x2+w/2, y); - } - DrawFormatString(x2, y, ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); - /* - // START OF .:THEME TAGS:. - if(strcmp(ITEMS[i], STR_THM)==0) { - if(!(strcmp(ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]], STR_NONE) == 0)) { - char tags[10]; - if(strstr(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]], "/dev_hdd0") != NULL) { - strcpy(tags, "HDD "); - } else - if(strstr(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]], "/dev_usb") != NULL) { - int t; - sscanf(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]], "/dev_usb%d%*s" , &t); - sprintf(tags, "USB%d ", t); - } else - if(strstr(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]], "/ntfs") != NULL) { - int t; - sscanf(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]], "/ntfs%d%*s" , &t); - sprintf(tags, "NTFS%d ", t); - } - u8 ThemeType = GetThemeType(Themes_Paths_list[UI_position][ITEMS_VALUE_POSITION[ITEMS_POSITION]]); - if(ThemeType==MGZ) strcat(tags, "MGZ"); else - if(ThemeType==P3T) strcat(tags, "P3T"); else - if(ThemeType==THM) strcat(tags, "THM"); - FontColor(COLOR_3); - DrawFormatString(x2-90, y, tags); - } - } - // END OF .:THEME TAGS:. - */ + DrawDown(x2_t+w/2, y+h*0.85); + DrawUp(x2_t+w/2, y); + } + + DrawFormatString(x2_t, y, ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); + } else { FontColor(COLOR_1); - if(ITEMS_VALUE_SHOW[i]==YES) DrawFormatString(x2, y, ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); + + if(ITEMS_VALUE_SHOW[i]==YES) { + float w=WidthFromStr(ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); + + if(X_MAX - 5 < x2+w && MENU_ITEMS_X == FINAL_ITEMS_X) { + y+=new_line(1); + DrawChildArrow(x1+10, y, 9, 10, 7, COLOR_1); + x2_t=x1+25; + } + DrawFormatString(x2_t, y, ITEMS_VALUE[i][ITEMS_VALUE_POSITION[i]]); + } } } @@ -22848,26 +25454,18 @@ void Draw_MENU() if(i>0) { if(ITEMS_TYPE[i-1] == ITEM_TEXTBOX) { y+=10; y1=y; } } - - if(ITEMS_POSITION==i) color = COLOR_2; else color = COLOR_1; - Draw_checkbox(ITEMS_VALUE_POSITION[i], x1, y, ITEMS[i], color); - y+=new_line(1); + Draw_checkbox(x1, y, 0, ITEMS[i], ITEMS_VALUE_POSITION[i], ITEMS_POSITION==i && MENU_LVL != LVL_TITLE); + y+=new_line(1); } else if(ITEMS_TYPE[i] == ITEM_COMMAND) { if(i>0) { if(ITEMS_TYPE[i-1] == ITEM_TEXTBOX) { y+=10; y1=y; } } - if(ITEMS_POSITION==i) { - if(ITEMS_VALUE_SHOW[i]==YES) color = COLOR_3; - else color = COLOR_2; - } else { - if(ITEMS_VALUE_SHOW[i]==YES) color = COLOR_4; - else color = COLOR_1; - } - Draw_checkbox(ITEMS_VALUE_POSITION[i], x1, y, ITEMS[i], color); + Draw_itembox(x1, y, 0, ITEMS[i], ITEMS_VALUE_POSITION[i], ITEMS_POSITION==i, ITEMS_VALUE_SHOW[i]==YES); + y+=new_line(1); if(ITEMS_POSITION==i) { @@ -22889,17 +25487,18 @@ void Draw_MENU() } else if(ITEMS_TYPE[i] == ITEM_COLORBOX) { - if(ITEMS_POSITION == i) FontColor(COLOR_2); + if(ITEMS_POSITION == i && MENU_LVL != LVL_TITLE) FontColor(COLOR_2); else FontColor(COLOR_1); DrawFormatString(x1, y, ITEMS[i]); memcpy(&color, ITEMS_VALUE[i][0], 4); - color=color - GetALPHA(color) + 0xFF; - Draw_Box(x2, y, 10, 0, 16, 10, color, NO); - if(ITEMS_POSITION == i) {x_COLOR=x2; y_COLOR=y;} + DrawFormatString(x2 + 20, y, "0x%08X", color); + color=color - GetALPHA(color) + 0xFF; + Draw_Box(x2, y+1, 10, 0, 16, 10, color, NO); + y+=new_line(1); } @@ -22918,12 +25517,20 @@ void Draw_MENU() } } - if(y>450) { + if(y>450 && !USE_TITLE_MENU) { if(ITEMS_POSITION > i) MENU_SCROLL += ITEMS_POSITION - i; if(i0) Y_ICON0_creator--; } - if(old_pad & BUTTON_DOWN) { - if(Y_ICON0_creator + H_ICON0_creator < COVER[position].height) Y_ICON0_creator++; + if(OldPad(BUTTON_DOWN)) { + if(Y_ICON0_creator + H_ICON0_creator < COVER.height) Y_ICON0_creator++; } - if(old_pad & BUTTON_LEFT) { + if(OldPad(BUTTON_LEFT)) { if(X_ICON0_creator>0) X_ICON0_creator--; } - if(old_pad & BUTTON_RIGHT) { - if(X_ICON0_creator + W_ICON0_creator < COVER[position].width) X_ICON0_creator++; + if(OldPad(BUTTON_RIGHT)) { + if(X_ICON0_creator + W_ICON0_creator < COVER.width) X_ICON0_creator++; } - if(old_pad & BUTTON_L1) { - if(W_ICON0_creator < COVER[position].width) { + if(OldPad(BUTTON_L1)) { + if(W_ICON0_creator < COVER.width) { W_ICON0_creator++; H_ICON0_creator = 176 * W_ICON0_creator / 320; - if(X_ICON0_creator + W_ICON0_creator > COVER[position].width) X_ICON0_creator=COVER[position].width-W_ICON0_creator; - if(Y_ICON0_creator + H_ICON0_creator > COVER[position].height) Y_ICON0_creator=COVER[position].height-H_ICON0_creator; + if(X_ICON0_creator + W_ICON0_creator > COVER.width) X_ICON0_creator=COVER.width-W_ICON0_creator; + if(Y_ICON0_creator + H_ICON0_creator > COVER.height) Y_ICON0_creator=COVER.height-H_ICON0_creator; } } - if(old_pad & BUTTON_L2) { - if(W_ICON0_creator > COVER[position].width / 4) { + if(OldPad(BUTTON_L2)) { + if(W_ICON0_creator > COVER.width / 4) { W_ICON0_creator--; H_ICON0_creator = 176 * W_ICON0_creator / 320; } } - if(old_pad & BUTTON_SQUARE) { + if(NewPad(BUTTON_SQUARE)) { start_loading(); char out[255]; strcpy(out, list_game_path[position]); @@ -22984,10 +25591,10 @@ void input_ICON0_creator() ICON0_creator=NO; memset(ICON0_creator_PATH, 0, sizeof(ICON0_creator_PATH)); end_loading(); - start_Load_GamePIC(); + if( !(list_game_havepic[position] & GAMEPIC_ICON0) ) list_game_havepic[position] += GAMEPIC_ICON0; } - if(new_pad & BUTTON_CIRCLE) + if(NewPad(BUTTON_CIRCLE)) { ICON0_creator=NO; memset(ICON0_creator_PATH, 0, sizeof(ICON0_creator_PATH)); @@ -23003,30 +25610,30 @@ void Draw_ICON0_creator() float xi, yi, wi, hi; float xj, yj, wj, hj; - if(COVER_offset[position] != 0 ) { - tiny3d_SetTexture(0, COVER_offset[position], COVER[position].width, COVER[position].height, COVER[position].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + if(COVER_offset != 0 ) { + tiny3d_SetTexture(0, COVER_offset, COVER.width, COVER.height, COVER.pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - if( COVER[position].width > 748) { + if( COVER.width > 748) { wi = 748; - hi = COVER[position].height * 748 / COVER[position].width; + hi = COVER.height * 748 / COVER.width; } else - if (COVER[position].width > 412) { + if (COVER.width > 412) { hi = 412; - wi = COVER[position].width * 412 / COVER[position].height; + wi = COVER.width * 412 / COVER.height; } else { - wi = COVER[position].width; - hi = COVER[position].height; + wi = COVER.width; + hi = COVER.height; } xi = (848 - wi) / 2; yi = (512 - hi) / 2; Draw_Box(xi, yi, 0, 0, wi, hi, WHITE, YES); - wj = W_ICON0_creator * wi / COVER[position].width; - hj = H_ICON0_creator * hi / COVER[position].height; + wj = W_ICON0_creator * wi / COVER.width; + hj = H_ICON0_creator * hi / COVER.height; - xj = X_ICON0_creator * wi / COVER[position].width; - yj = Y_ICON0_creator * hi / COVER[position].height ; + xj = X_ICON0_creator * wi / COVER.width; + yj = Y_ICON0_creator * hi / COVER.height ; Draw_LineBox(xi+xj, yi+yj, 0, 5, wj, hj, RED); } @@ -23051,44 +25658,41 @@ void Draw_ICON0_creator_input() void open_ICON0_creator() { char temp[128]; - char title_id[20]; - - if(Get_ID(list_game_path[position], list_game_platform[position], title_id) == FAILED) return; - - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.JPG", ManaGunZ_id, title_id); + + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.JPG", ManaGunZ_id, list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.jpg", ManaGunZ_id, title_id); + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.jpg", ManaGunZ_id, list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.PNG", ManaGunZ_id, title_id); + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.PNG", ManaGunZ_id, list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.png", ManaGunZ_id, title_id); + sprintf(temp, "/dev_hdd0/game/%s/USRDIR/covers/%s.png", ManaGunZ_id, list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.JPG", title_id); + sprintf(temp, "/dev_hdd0/tmp/covers/%s.JPG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.jpg", title_id); + sprintf(temp, "/dev_hdd0/tmp/covers/%s.jpg", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.PNG", title_id); + sprintf(temp, "/dev_hdd0/tmp/covers/%s.PNG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/tmp/covers/%s.png", title_id); + sprintf(temp, "/dev_hdd0/tmp/covers/%s.png", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.JPG", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.JPG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.jpg", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.jpg", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.PNG", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.PNG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.png", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers/%s.png", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.JPG", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.JPG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.jpg", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.jpg", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.PNG", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.PNG", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; - sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.png", title_id); + sprintf(temp, "/dev_hdd0/game/BLES80608/USRDIR/covers_retro/psx/%s_COV.png", list_game_ID[position]); if(path_info(temp) == _FILE) goto read; return; @@ -23099,7 +25703,7 @@ void open_ICON0_creator() X_ICON0_creator=0; Y_ICON0_creator=0; - W_ICON0_creator=COVER[position].width; + W_ICON0_creator=COVER.width; H_ICON0_creator= 176 * W_ICON0_creator / 320; ICON0_creator = YES; @@ -23127,7 +25731,7 @@ void open_PS2_GAME_MENU(); int ps2_netemu_cobra(int param) { - lv2syscall2(8, (uint64_t)0x1ee9, (uint64_t)(int)param); + lv2syscall2(8, (uint64_t) SYSCALL8_OPCODE_USE_PS2NETEMU, (uint64_t)(int)param); return_to_user_prog(int); } @@ -23647,7 +26251,7 @@ void CONFIG_check(char *IsoPath) { cls(); Draw_BGS(); - + FontColor(COLOR_1); FontSize(20); @@ -23670,23 +26274,24 @@ void CONFIG_check(char *IsoPath) if(config_number>0) DrawButton(x, y, STR_CHANGE, BUTTON_SQUARE); + Draw_MemMonitor(); tiny3d_Flip(); ScreenShot(); - ps3pad_read(); - if(config_number>0 && new_pad & BUTTON_SQUARE) { + + if(config_number>0 && NewPad(BUTTON_SQUARE)) { if(config_position==config_number) config_position=0; else config_position++; } - if(new_pad & BUTTON_CROSS) { + if(NewPad(BUTTON_CROSS)) { char CONFIG_path[128]; sprintf(CONFIG_path, "/dev_hdd0/game/%s/USRDIR/sys/CONFIG/%s/%s.CONFIG", ManaGunZ_id, CONFIG_STR[config_number], PS2_ID); CopyFile(CONFIG_path, CurrentCONFIG); LoopBreak = 0; break; } - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { LoopBreak=0; break; } @@ -24007,7 +26612,7 @@ u8 CONFIG_exist_PNACH(char *PnachPath) while(fgets(line, 128, fp) != NULL) { if( strstr(line, "patch") == NULL && strstr(line, "comment")==NULL && strstr(line, "gametitle")==NULL ) continue; - if(strncmp(line, "patch=1", 7) == 0) + if(strncmp(line, "patch=", 6) == 0) { if(strstr(line, ",") == NULL) continue; @@ -24026,8 +26631,8 @@ u8 CONFIG_exist_PNACH(char *PnachPath) if(token == NULL) continue; token = strtok (NULL, ", "); //data sscanf(token, "%8lX", &value); - Patched_Data = value; - + Patched_Data = reverse32(value); + EEoffset = EEoffset - (EEoffset >> 28)*0x10000000; ret += CONFIG_exist_PS2PATCH(0, EEoffset); @@ -24056,7 +26661,7 @@ void CONFIG_remove_PNACH(char *PnachPath) while(fgets(line, 128, fp) != NULL) { if( strstr(line, "patch") == NULL && strstr(line, "comment")==NULL && strstr(line, "gametitle")==NULL ) continue; - if(strncmp(line, "patch=1", 7) == 0) + if(strncmp(line, "patch=", 6) == 0) { if(strstr(line, ",") == NULL) continue; @@ -24075,7 +26680,7 @@ void CONFIG_remove_PNACH(char *PnachPath) if(token == NULL) continue; token = strtok (NULL, ", "); //data sscanf(token, "%8lX", &value); - Patched_Data = value; + Patched_Data = reverse32(value); EEoffset = EEoffset - (EEoffset >> 28)*0x10000000; @@ -24106,7 +26711,7 @@ void CONFIG_add_PNACH(char *PnachPath) while(fgets(line, 128, fp) != NULL) { if( strstr(line, "patch") == NULL && strstr(line, "comment")==NULL && strstr(line, "gametitle")==NULL ) continue; - if(strncmp(line, "patch=1", 7) == 0) + if(strncmp(line, "patch=", 6) == 0) { if(strstr(line, ",") == NULL) continue; @@ -24125,7 +26730,7 @@ void CONFIG_add_PNACH(char *PnachPath) if(token == NULL) continue; token = strtok (NULL, ", "); //data sscanf(token, "%8lX", &value); - Patched_Data = value; + Patched_Data = reverse32(value); EEoffset = EEoffset - (EEoffset >> 28)*0x10000000; @@ -24852,7 +27457,7 @@ void input_PS2_CONFIG_EDITOR() } if(R2pad(BUTTON_UP)) { - if(IN_ITEMS_VALUE == NO) { + if(MENU_LVL == LVL_ITEMS) { if(ITEMS_POSITION == 0) ITEMS_POSITION = ITEMS_NUMBER; else ITEMS_POSITION--; if(ITEMS_POSITION==MENU_TABLE_END) ITEMS_POSITION=MENU_TABLE_START+MENU_COLUMN_ITEMS_NUMBER; @@ -24862,7 +27467,7 @@ void input_PS2_CONFIG_EDITOR() } } else if(R2pad(BUTTON_DOWN)) { - if(IN_ITEMS_VALUE == NO) { + if(MENU_LVL == LVL_ITEMS) { if(ITEMS_POSITION == ITEMS_NUMBER) ITEMS_POSITION = 0; else ITEMS_POSITION++; } else { @@ -24870,23 +27475,27 @@ void input_PS2_CONFIG_EDITOR() else ITEMS_VALUE_POSITION[ITEMS_POSITION]++; } } else - if(new_pad & BUTTON_CROSS) { - if(IN_ITEMS_VALUE == NO && ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1 + if(NewPad(BUTTON_CROSS)) { + if( ITEMS_TYPE[ITEMS_POSITION] == ITEM_TOGGLE ) { + if(ITEMS_VALUE_POSITION[ITEMS_POSITION]==0) ITEMS_VALUE_POSITION[ITEMS_POSITION]=1; + else ITEMS_VALUE_POSITION[ITEMS_POSITION]=0; + } else + if(MENU_LVL == LVL_ITEMS && ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1 && ITEMS_TYPE[ITEMS_POSITION] != ITEM_COMMAND && ITEMS_TYPE[ITEMS_POSITION] != ITEM_CHECKBOX) { - IN_ITEMS_VALUE = YES; + MENU_LVL = LVL_VALUE; } else { PS2_CONFIG_MENU_CROSS(); } } else - if(new_pad & BUTTON_CIRCLE) { - if(IN_ITEMS_VALUE == NO) + if(NewPad(BUTTON_CIRCLE)) { + if(MENU_LVL == LVL_ITEMS) close_PS2_CONFIG_EDITOR(); else - IN_ITEMS_VALUE = NO; + MENU_LVL = LVL_ITEMS; } else - if(new_pad & BUTTON_START) { - if(IN_ITEMS_VALUE == NO) { + if(NewPad(BUTTON_START)) { + if(MENU_LVL == LVL_ITEMS) { start_loading(); if( Create_PS2_CONFIG() ) show_msg(STR_DONE); else show_msg(STR_FAILED); @@ -24916,7 +27525,7 @@ void Draw_PS2_CONFIG_EDITOR_input() x=DrawButton(x, y, STR_ENTER, BUTTON_CROSS); } x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); - if(IN_ITEMS_VALUE == NO) { + if(MENU_LVL == LVL_ITEMS) { x=DrawButton(x, y, STR_SAVE_CONFIG, BUTTON_START ); } } @@ -24927,7 +27536,7 @@ void open_PS2_CONFIG_EDITOR() start_loading(); close_PS2_GAME_MENU(); - + USE_TITLE_MENU=NO; new_MENU(); char CONFIG_path[128]; @@ -24958,7 +27567,38 @@ u32 Get_PS2CRC() prog_bar1_value=-1; return reverse32(CRC); +} + +typedef struct +{ + u32 offset; + u32 data; +} PnachRestore_s; + +PnachRestore_s *LoadPnachRestore(char *file, int *size) +{ + int lsize; + + PnachRestore_s *data = (PnachRestore_s *) LoadFile(file, &lsize); + + *size = lsize/8; + + return data; +} + +u8 GetRestoreData(PnachRestore_s *in, int size, u32 offset, u32 *data) +{ + int j; + for(j=0; j> 28)*0x10000000; @@ -25388,7 +28037,7 @@ u8 apply_pnach(char *pnach_file, char *PnachRest) return FAILED; } - new_data = reverse32(new_data); + fseek(fi, file_offset + offset, SEEK_SET); fread(&old_data, 4, 1, fi); @@ -25418,7 +28067,7 @@ u8 apply_pnach(char *pnach_file, char *PnachRest) u8 WS_exist() { - sprintf(WS, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%s.ws", ManaGunZ_id, PS2ORICRC_STR); + sprintf(WS, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%08X.ws", ManaGunZ_id, PS2ORICRC); if(path_info(WS) == _NOT_EXIST) return NO; @@ -25427,14 +28076,14 @@ u8 WS_exist() void get_WS() { - sprintf(WS, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%s.ws", ManaGunZ_id, PS2ORICRC_STR); + sprintf(WS, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%08X.ws", ManaGunZ_id, PS2ORICRC); if(path_info(WS) != _NOT_EXIST) return; char ZIP_WS[32]; char ZIP[128]; - sprintf(ZIP_WS, "%s.pnach", PS2ORICRC_STR); + sprintf(ZIP_WS, "%08X.pnach", PS2ORICRC); sprintf(ZIP, "/dev_hdd0/game/%s/USRDIR/sys/ws.zip", ManaGunZ_id); ExtractZipFile(ZIP, ZIP_WS, WS); @@ -25444,7 +28093,7 @@ u8 is_WS() { char WSRest[128]; - sprintf(WSRest, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%s.wsrest", ManaGunZ_id, PS2CRC_STR); + sprintf(WSRest, "/dev_hdd0/game/%s/USRDIR/setting/PS2/%08X.wsrest", ManaGunZ_id, PS2CRC); if(path_info(WSRest) == _NOT_EXIST) return NO; else return YES; @@ -25590,7 +28239,7 @@ void init_PS2_GAME_MENU() add_item_MENU(STR_ADD_LIMG, ITEM_TEXTBOX); } - if(COVER_offset[position] != 0) { + if(COVER_offset != 0) { add_item_MENU(STR_CREATE_ICON0, ITEM_TEXTBOX); } @@ -25700,13 +28349,30 @@ u8 PS2_GAME_MENU_CROSS() else show_msg(STR_FAILED); } else if(item_is(STR_REM_FAV)) { - if(remove_favorite()==SUCCESS) show_msg(STR_DONE); - else show_msg(STR_FAILED); + if(remove_favorite()==SUCCESS) { + show_msg(STR_DONE); + if(UI_position != XMB && Only_FAV) { + int i; + int old_position = position; + for(i=0; i<=game_number; i++) { + if(position-i<0 && game_number> 4)*0x10 > 0x2) IDPS[0x5]--; @@ -26676,7 +29390,7 @@ u8 input_CHOOSE_IDPS() } } - if(new_pad & BUTTON_UP) { + if(NewPad(BUTTON_UP)) { if(CHOOSE_IDPS_position==0) { if(IDPS[0x5] - (IDPS[0x5] >> 4)*0x10 < 0xF) IDPS[0x5]++; } else @@ -26734,27 +29448,27 @@ u8 input_CHOOSE_IDPS() } } - if(new_pad & BUTTON_RIGHT) { + if(NewPad(BUTTON_RIGHT)) { if(0 <= CHOOSE_IDPS_position && CHOOSE_IDPS_position < 17) { CHOOSE_IDPS_position++; } } - if(new_pad & BUTTON_LEFT) { + if(NewPad(BUTTON_LEFT)) { if(0 < CHOOSE_IDPS_position && CHOOSE_IDPS_position <= 17) { CHOOSE_IDPS_position--; } } - if(new_pad & BUTTON_SQUARE) { + if(NewPad(BUTTON_SQUARE)) { peek_IDPS(); } - if(new_pad & BUTTON_TRIANGLE) { + if(NewPad(BUTTON_TRIANGLE)) { LoadEID5_IDPS(); } - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { return BREAK; } @@ -26787,8 +29501,8 @@ void Draw_CHOOSE_IDPS() tiny3d_Flip(); ScreenShot(); - ps3pad_read(); + if(input_CHOOSE_IDPS() == BREAK) { LoopBreak=0; @@ -26801,7 +29515,7 @@ void Draw_CHOOSE_IDPS() void close_PS3_GAME_MENU() { - write_game_setting(list_game_title[position]); + write_game_setting(position); Draw_MENU_input = &EmptyFunc; input_MENU = &EmptyFunc; MENU=NO; @@ -26815,86 +29529,74 @@ void init_PS3_GAME_MENU() init_MENU(); add_title_MENU(STR_GAME_SETTINGS); - - add_item_MENU(STR_DIRECT_BOOT, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + + add_item_MENU(STR_DIRECT_BOOT, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = direct_boot; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - + if(PEEKnPOKE) { - - add_item_MENU(STR_CLEAN_SYSCALL, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + add_item_MENU(STR_CLEAN_SYSCALL, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = clean_syscall; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - - add_item_MENU(STR_CHANGE_IDPS, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + + add_item_MENU(STR_CHANGE_IDPS, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = change_IDPS; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; } - - add_item_MENU(STR_EXT_GAME_DATA, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + + add_item_MENU(STR_EXT_GAME_DATA, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = ext_game_data; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - add_item_MENU(STR_PAYLOAD, ITEM_TEXTBOX); - if(cobra) add_item_value_MENU("Cobra"); - else add_item_value_MENU("Mamba"); - if(PEEKnPOKE) { - if(iso == NO) { + + if(iso || HEN) { + add_item_MENU(STR_PAYLOAD, ITEM_LOCKED); + if(cobra) add_item_value_MENU("Cobra"); + else add_item_value_MENU("Mamba"); + } else { + add_item_MENU(STR_PAYLOAD, ITEM_TEXTBOX); + if(cobra) add_item_value_MENU("Cobra"); + else add_item_value_MENU("Mamba"); + if(PEEKnPOKE) { add_item_value_MENU("Iris"); add_item_value_MENU("multiMAN"); } } ITEMS_VALUE_POSITION[ITEMS_NUMBER] = payload; ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - + if(iso == NO) { - if(cobra==YES && usb==YES) { - add_item_MENU(STR_PRIM_USB, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + if(cobra && usb) { + add_item_MENU(STR_PRIM_USB, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = prim_USB; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; } - add_item_MENU(STR_BDEMU, ITEM_TEXTBOX); - add_item_value_MENU(STR_NONE); - add_item_value_MENU("BDMIRROR"); - add_item_value_MENU("BDEMU"); - ITEMS_VALUE_POSITION[ITEMS_NUMBER] = emu; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - - if(emu==BDEMU) { - add_item_MENU(STR_PATCH_LIBFS, ITEM_TEXTBOX); - add_item_value_MENU("reactPSN"); - add_item_value_MENU("Iris"); - add_item_value_MENU("multiMAN"); - ITEMS_VALUE_POSITION[ITEMS_NUMBER] = libfs_from; + if( HEN ) { + add_item_MENU("BDMIRROR", ITEM_TOGGLE); + ITEMS_VALUE_POSITION[ITEMS_NUMBER] = emu; + } else { + add_item_MENU(STR_BDEMU, ITEM_TEXTBOX); + add_item_value_MENU(STR_NONE); + add_item_value_MENU("BDMIRROR"); + add_item_value_MENU("BDEMU"); + ITEMS_VALUE_POSITION[ITEMS_NUMBER] = emu; ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; + + if(emu==BDEMU) { + add_item_MENU(STR_PATCH_LIBFS, ITEM_TEXTBOX); + add_item_value_MENU("reactPSN"); + add_item_value_MENU("Iris"); + add_item_value_MENU("multiMAN"); + ITEMS_VALUE_POSITION[ITEMS_NUMBER] = libfs_from; + ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; + } } } - add_item_MENU(STR_MOUNT_APPHOME, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + add_item_MENU(STR_MOUNT_APPHOME, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = mount_app_home; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; - if(mount_app_home==YES) { - add_item_MENU(STR_PATCH_EXP, ITEM_TEXTBOX); - add_item_value_MENU(STR_NO); - add_item_value_MENU(STR_YES); + if(mount_app_home && !HEN) { + add_item_MENU(STR_PATCH_EXP, ITEM_TOGGLE); ITEMS_VALUE_POSITION[ITEMS_NUMBER] = use_ex_plug; - ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; } - + add_title_MENU(STR_GAME_OPTION); if(is_favorite(list_game_path[position]) == NO) { @@ -26923,15 +29625,17 @@ void init_PS3_GAME_MENU() add_item_MENU(STR_JOIN, ITEM_TEXTBOX); } - add_item_MENU(STR_MAKE_SHTCUT_PKG, ITEM_TEXTBOX); + // add_item_MENU(STR_MAKE_SHTCUT_PKG, ITEM_TEXTBOX); - add_item_MENU(STR_PATCH_EBOOT, ITEM_TEXTBOX); - - if(iso==NO) { - if(is_resigned_GAME(list_game_path[position])==NO) { - add_item_MENU(STR_RESIGN, ITEM_TEXTBOX); - } else { - add_item_MENU(STR_RESTORE, ITEM_TEXTBOX); + if( !HEN ) { + add_item_MENU(STR_PATCH_EBOOT, ITEM_TEXTBOX); + + if(iso==NO) { + if(is_resigned_GAME(list_game_path[position])==NO) { + add_item_MENU(STR_RESIGN, ITEM_TEXTBOX); + } else { + add_item_MENU(STR_RESTORE, ITEM_TEXTBOX); + } } } @@ -26955,8 +29659,7 @@ void init_PS3_GAME_MENU() add_item_MENU(STR_CHECK_IRD, ITEM_TEXTBOX); add_item_MENU(STR_DL_UPDATE, ITEM_TEXTBOX); - add_item_MENU(STR_PROPS, ITEM_TEXTBOX); - + add_item_MENU(STR_PROPS, ITEM_TEXTBOX); } void PS3_GAME_MENU_UPDATE() @@ -26979,7 +29682,7 @@ void PS3_GAME_MENU_UPDATE() if(item_is(STR_PRIM_USB)) { prim_USB = ITEMS_VALUE_POSITION[ITEMS_POSITION]; } else - if(item_is(STR_BDEMU)) { + if(item_is(STR_BDEMU) || item_is("BDMIRROR")) { emu = ITEMS_VALUE_POSITION[ITEMS_POSITION]; } else if(item_is(STR_PATCH_LIBFS)) { @@ -26997,9 +29700,6 @@ void PS3_GAME_MENU_UPDATE() u8 PS3_GAME_MENU_CROSS() { - if(item_is(STR_CHANGE_IDPS)) { - Draw_CHOOSE_IDPS(); - } else if(item_is(STR_RENAME)) { char tmpName[128]; strcpy(tmpName, list_game_title[position]); @@ -27018,23 +29718,37 @@ u8 PS3_GAME_MENU_CROSS() else show_msg(STR_FAILED); } else if(item_is(STR_REM_FAV)) { - if(remove_favorite()==SUCCESS) show_msg(STR_DONE); - else show_msg(STR_FAILED); + if(remove_favorite()==SUCCESS) { + show_msg(STR_DONE); + if(UI_position != XMB && Only_FAV) { + int i; + int old_position = position; + for(i=0; i<=game_number; i++) { + if(position-i<0 && game_numberd_name, ".") || !strcmp(dir->d_name, "..")) continue; + + sprintf(temp, "%s/%s", PluginsPath, dir->d_name); + + if(dir->d_type & DT_DIR) GetPlugins(temp); + + if(get_ext(dir->d_name) != _SPRX) continue; + + if(ITEMS_NUMBER==MENU_MAX_ITEMS-1) break; + + add_item_MENU(&temp[PLUGINS_PATH_LENGTH+1], ITEM_CHECKBOX); + + ITEMS_VALUE_POSITION[ITEMS_NUMBER] = is_it_inside(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], temp); + + } + closedir(d); + } +} + +u8 cobra_bootfile_exist = NO; +u8 mamba_bootfile_exist = NO; + void init_PLUGINS_MANAGER() { init_MENU(); @@ -27376,18 +30256,30 @@ void init_PLUGINS_MANAGER() add_title_MENU(STR_PLUGIN_MANAGER); add_item_MENU(STR_BOOT_FILE, ITEM_TEXTBOX); + + if( cobra ) { + if(path_info("/dev_hdd0/boot_plugins.txt") == _FILE) { + cobra_bootfile_exist = YES; + add_item_value_MENU("/dev_hdd0/boot_plugins.txt"); + } else { + cobra_bootfile_exist = NO; + } + } else + if( mamba ) { + if(path_info("/dev_hdd0/mamba_plugins.txt") == _FILE) { + mamba_bootfile_exist = YES; + add_item_value_MENU("/dev_hdd0/mamba_plugins.txt"); + } else { + mamba_bootfile_exist = NO; + } + } if(path_info("/dev_hdd0/game/PRXLOADER/USRDIR/plugins.txt") == _FILE) { add_item_value_MENU("/dev_hdd0/game/PRXLOADER/USRDIR/plugins.txt"); } if(path_info("/dev_hdd0/prx_plugins.txt") == _FILE) { add_item_value_MENU("/dev_hdd0/prx_plugins.txt"); } - if(path_info("/dev_hdd0/mamba_plugins.txt") == _FILE) { - add_item_value_MENU("/dev_hdd0/mamba_plugins.txt"); - } - if(path_info("/dev_hdd0/boot_plugins.txt") == _FILE) { - add_item_value_MENU("/dev_hdd0/boot_plugins.txt"); - } + ITEMS_VALUE_SHOW[ITEMS_NUMBER] = YES; BOOTFILE_ITEM = ITEMS_NUMBER; @@ -27398,11 +30290,13 @@ void init_PLUGINS_MANAGER() FILE* f = fopen(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], "r"); if(f) { char line[255]; - int l = strlen("/dev_hdd0/plugins"); + int l = strlen(PLUGINS_PATH); while(fgets(line, 255, f) != NULL) { if(line[0]=='\r' || line[0]=='\n') continue; - strtok(line, "\r\n"); - if(strncmp(line, "/dev_hdd0/plugins", l) != 0) { + if(strstr(line, "\r") != NULL) strtok(line, "\r"); + if(strstr(line, "\n") != NULL) strtok(line, "\n"); + + if(strncmp(line, PLUGINS_PATH, l) != 0) { if(ITEMS_NUMBER==MENU_MAX_ITEMS-1) break; add_item_MENU(line, ITEM_TEXTBOX); } @@ -27410,26 +30304,45 @@ void init_PLUGINS_MANAGER() fclose(f); } - DIR *d; - struct dirent *dir; - d = opendir("/dev_hdd0/plugins"); - if(d!=NULL) { - while ((dir = readdir(d))) { - if(!strcmp(dir->d_name, ".") || !strcmp(dir->d_name, "..")) continue; - if(get_ext(dir->d_name) == _SPRX) { - if(ITEMS_NUMBER==MENU_MAX_ITEMS-1) break; - add_item_MENU(dir->d_name, ITEM_CHECKBOX); - sprintf(temp, "/dev_hdd0/plugins/%s", dir->d_name); - ITEMS_VALUE_POSITION[ITEMS_NUMBER] = is_it_inside(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], temp); - } - } - closedir(d); - } + GetPlugins(PLUGINS_PATH); MENU_TABLE_END=ITEMS_NUMBER; MENU_COLUMN_ITEMS_NUMBER = 1+(ITEMS_NUMBER-BOOTFILE_ITEM)/4; } +u8 PLUGINS_MANAGER_R1() +{ + if(ITEMS_POSITION == BOOTFILE_ITEM) { + if(ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1) { + open_txt_viewer(ITEMS_VALUE[ITEMS_POSITION][ITEMS_VALUE_POSITION[ITEMS_POSITION]]); + } + } + + init_PLUGINS_MANAGER(); + + return CONTINUE; +} + +u8 PLUGINS_MANAGER_L1() +{ + if(ITEMS_POSITION == BOOTFILE_ITEM) { + FILE* f=NULL; + if(cobra && !cobra_bootfile_exist) { + f=fopen("/dev_hdd0/boot_plugins.txt", "wb"); + if(f) cobra_bootfile_exist=YES; + } else + if(mamba && !mamba_bootfile_exist) { + f=fopen("/dev_hdd0/mamba_plugins.txt", "wb"); + if(f) mamba_bootfile_exist=YES; + } + if(f) fclose(f); + } + + init_PLUGINS_MANAGER(); + + return CONTINUE; +} + u8 PLUGINS_MANAGER_CROSS() { // PLUGIN MONITOR @@ -27443,30 +30356,33 @@ u8 PLUGINS_MANAGER_CROSS() // BOOT FILE if(ITEMS_POSITION == BOOTFILE_ITEM) { if(ITEMS_VALUE_NUMBER[ITEMS_POSITION] == -1) { - if(cobra || mamba) { - FILE* f=NULL; - if(cobra) f=fopen("/dev_hdd0/boot_plugins.txt", "wb"); else - if(mamba) f=fopen("/dev_hdd0/mamba_plugins.txt", "wb"); - if(f) fclose(f); + FILE* f=NULL; + if(cobra) { + f=fopen("/dev_hdd0/boot_plugins.txt", "wb"); + if(f) cobra_bootfile_exist=YES; + } else + if(mamba) { + f=fopen("/dev_hdd0/mamba_plugins.txt", "wb"); + if(f) mamba_bootfile_exist=YES; } + if(f) fclose(f); } else { open_txt_viewer(ITEMS_VALUE[ITEMS_POSITION][ITEMS_VALUE_POSITION[ITEMS_POSITION]]); } - } else // PLUGIN MANAGER if(ITEMS_POSITION > BOOTFILE_ITEM) { if(ITEMS_TYPE[ITEMS_POSITION]==ITEM_TEXTBOX) { - char NewPath[255]; - sprintf(NewPath, "/dev_hdd0/plugins/%s", &strrchr(ITEMS[ITEMS_POSITION], '/')[1]); + char NewPath[255] = {0}; + sprintf(NewPath, PLUGINS_PATH "/%s", &strrchr(ITEMS[ITEMS_POSITION], '/')[1]); if( Move(ITEMS[ITEMS_POSITION], NewPath) == SUCCESS) { remove_from_list(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], ITEMS[ITEMS_POSITION]); add_to_list(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], NewPath); } } else if(ITEMS_TYPE[ITEMS_POSITION]==ITEM_CHECKBOX) { - char temp[128]; - sprintf(temp, "/dev_hdd0/plugins/%s", ITEMS[ITEMS_POSITION]); + char temp[255] = {0}; + sprintf(temp, PLUGINS_PATH "/%s", ITEMS[ITEMS_POSITION]); if(ITEMS_VALUE_POSITION[ITEMS_POSITION] == YES) remove_from_list(ITEMS_VALUE[BOOTFILE_ITEM][ITEMS_VALUE_POSITION[BOOTFILE_ITEM]], temp); else @@ -27481,14 +30397,13 @@ u8 PLUGINS_MANAGER_CROSS() u8 PLUGINS_MANAGER_SQUARE() { - if(ITEMS_POSITION > BOOTFILE_ITEM) { char diag_msg[512]; sprintf(diag_msg, "%s '%s' ?", STR_ASK_DEL, ITEMS[ITEMS_POSITION]); if( DrawDialogYesNo(diag_msg) == YES) { char prx_path[128]; if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_CHECKBOX) { - sprintf(prx_path, "/dev_hdd0/plugins/%s", ITEMS[ITEMS_POSITION]); + sprintf(prx_path, PLUGINS_PATH "/%s", ITEMS[ITEMS_POSITION]); } else if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_TEXTBOX) { strcpy(prx_path, ITEMS[ITEMS_POSITION]); @@ -27512,7 +30427,7 @@ u8 PLUGINS_MANAGER_TRIANGLE() if(strcmp(&strrchr(ITEMS[i], ' ')[1], STR_UNUSED)==0) { char prx_path[128]; if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_CHECKBOX) { - sprintf(prx_path, "/dev_hdd0/plugins/%s", ITEMS[ITEMS_POSITION]); + sprintf(prx_path, PLUGINS_PATH "/%s", ITEMS[ITEMS_POSITION]); } else if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_TEXTBOX) { strcpy(prx_path, ITEMS[ITEMS_POSITION]); @@ -27530,6 +30445,19 @@ u8 PLUGINS_MANAGER_TRIANGLE() void input_PLUGINS_MANAGER() { + if(MENU==NO) return; + if(txt_viewer_activ) { + // if the user delete the file from txt_viewer + if(NewPad(BUTTON_SQUARE)) { + txt_viewer_activ=NO; + FREE(txt_viewer_content); + FREE(txt_viewer_path); + MENU_LVL = LVL_ITEMS; + init_PLUGINS_MANAGER(); + } + return; + } + get_R2speed(); if(MENU_TABLE_START < ITEMS_POSITION && ITEMS_POSITION <=MENU_TABLE_END) { @@ -27542,7 +30470,7 @@ void input_PLUGINS_MANAGER() } if(R2pad(BUTTON_UP)) { - if(IN_ITEMS_VALUE == NO) { + if(MENU_LVL == LVL_ITEMS) { if(ITEMS_POSITION == 0) ITEMS_POSITION = ITEMS_NUMBER; else ITEMS_POSITION--; } else { @@ -27551,7 +30479,7 @@ void input_PLUGINS_MANAGER() } } else if(R2pad(BUTTON_DOWN)) { - if(IN_ITEMS_VALUE == NO) { + if(MENU_LVL == LVL_ITEMS) { if(ITEMS_POSITION == ITEMS_NUMBER) ITEMS_POSITION = 0; else ITEMS_POSITION++; } else { @@ -27559,34 +30487,46 @@ void input_PLUGINS_MANAGER() else ITEMS_VALUE_POSITION[ITEMS_POSITION]++; } } else - if(new_pad & BUTTON_CROSS) { + if(NewPad(BUTTON_CROSS)) { if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_CHECKBOX ) { PLUGINS_MANAGER_CROSS(); } else - if(IN_ITEMS_VALUE == NO && ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1 ) { - IN_ITEMS_VALUE = YES; + if( ITEMS_TYPE[ITEMS_POSITION] == ITEM_TOGGLE ) { + if(ITEMS_VALUE_POSITION[ITEMS_POSITION] == 0) ITEMS_VALUE_POSITION[ITEMS_POSITION]=1; + else ITEMS_VALUE_POSITION[ITEMS_POSITION]=0; + } else + if(MENU_LVL == LVL_ITEMS && ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1 ) { + MENU_LVL = LVL_VALUE; } else { if(PLUGINS_MANAGER_CROSS() == BREAK) close_PLUGINS_MANAGER(); } } else - if(new_pad & BUTTON_SQUARE) { + if(NewPad(BUTTON_SQUARE)) { if(PLUGINS_MANAGER_SQUARE() == BREAK) close_PLUGINS_MANAGER(); } else - if(new_pad & BUTTON_TRIANGLE) { + if(NewPad(BUTTON_TRIANGLE)) { if(PLUGINS_MANAGER_TRIANGLE() == BREAK) close_PLUGINS_MANAGER(); } else - if(new_pad & BUTTON_CIRCLE) { - if(IN_ITEMS_VALUE == NO) close_PLUGINS_MANAGER(); + if(NewPad(BUTTON_R1)) { + if( PLUGINS_MANAGER_R1() == BREAK) close_PLUGINS_MANAGER(); + } else + if(NewPad(BUTTON_L1)) { + if( PLUGINS_MANAGER_L1() == BREAK) close_PLUGINS_MANAGER(); + } else + if(NewPad(BUTTON_CIRCLE)) { + if(MENU_LVL == LVL_ITEMS) close_PLUGINS_MANAGER(); else { init_PLUGINS_MANAGER(); - IN_ITEMS_VALUE = NO; + MENU_LVL = LVL_ITEMS; } } + } void Draw_PLUGINS_MANAGER_input() { if(MENU==NO) return; + if(txt_viewer_activ) return; float x=INPUT_X; float y=INPUT_Y; @@ -27597,13 +30537,17 @@ void Draw_PLUGINS_MANAGER_input() x=DrawButton(x, y, STR_UNLOAD, BUTTON_CROSS); } else if(ITEMS_POSITION == BOOTFILE_ITEM) { - if(IN_ITEMS_VALUE == YES) { - x=DrawButton(x, y, STR_VIEW, BUTTON_CROSS); - } else - if(ITEMS_VALUE_NUMBER[ITEMS_POSITION] == -1) { - if(cobra || mamba) x=DrawButton(x, y, STR_CREATE, BUTTON_CROSS); - } else { - x=DrawButton(x, y, STR_ENTER, BUTTON_CROSS); + if(MENU_LVL != LVL_VALUE) { + x=DrawButton(x, y, STR_ENTER, BUTTON_CROSS); + } + if(ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1) { + x=DrawButton(x, y, STR_VIEW, BUTTON_R1); + } + if( cobra && !cobra_bootfile_exist ) { + x=DrawButton(x, y, STR_CREATE, BUTTON_L1); + } else + if( mamba && !mamba_bootfile_exist) { + x=DrawButton(x, y, STR_CREATE, BUTTON_L1); } } else if(ITEMS_POSITION > BOOTFILE_ITEM) { @@ -27623,8 +30567,8 @@ void Draw_PLUGINS_MANAGER_input() u8 open_PLUGINS_MANAGER() { - if( path_info("/dev_hdd0/plugins") == _NOT_EXIST) { - if( DrawDialogYesNo(STR_ASK_PLUGINS) == YES) mkdir("/dev_hdd0/plugins", 0777); + if( path_info(PLUGINS_PATH) == _NOT_EXIST) { + if( DrawDialogYesNo(STR_ASK_PLUGINS) == YES) mkdir(PLUGINS_PATH, 0777); else return CONTINUE; } @@ -27632,13 +30576,15 @@ u8 open_PLUGINS_MANAGER() close_SETTINGS(); + USE_TITLE_MENU=NO; + MENU_SIDE = NO; new_MENU(); if(PEEKnPOKE) { if(!cobra && !mamba) mamba = install_mamba(); } init_PLUGINS_MANAGER(); - MENU_SIDE = NO; + Draw_MENU_input = &Draw_PLUGINS_MANAGER_input; input_MENU = &input_PLUGINS_MANAGER; @@ -27724,7 +30670,9 @@ void Draw_AdjustScreen() FontColor(BLACK); FontSize(15); - if(Show_TVTEST != -1 && Load_GamePIC==NO) x=DrawButton(x, INPUT_Y, STR_SHOWTV, BUTTON_CROSS); + + //if(Show_TVTEST != -1) x=DrawButton(x, INPUT_Y, STR_SHOWTV, BUTTON_CROSS); + if(Show_TVTEST != -1 && Load_GAMEPIC_busy==NO) x=DrawButton(x, INPUT_Y, STR_SHOWTV, BUTTON_CROSS); } x=DrawButton(x, INPUT_Y, STR_RESET, BUTTON_SQUARE); @@ -27732,15 +30680,15 @@ void Draw_AdjustScreen() tiny3d_Flip(); ScreenShot(); - ps3pad_read(); - if(new_pad & BUTTON_SQUARE) { + if(NewPad(BUTTON_SQUARE)) { videoscale_x = 0; videoscale_y = 0; } - if(Show_TVTEST != -1 && Load_GamePIC==NO) { - if(new_pad & BUTTON_CROSS) { + if(Show_TVTEST != -1 && Load_GAMEPIC_busy==NO) { + //if(Show_TVTEST != -1) { + if(NewPad(BUTTON_CROSS)) { if(Show_TVTEST==NO) { memset(TMP_PIC_path, 0, sizeof(TMP_PIC_path)); strcpy(TMP_PIC_path, TVTEST); @@ -27749,133 +30697,167 @@ void Draw_AdjustScreen() } else { Show_TVTEST=NO; TMP_PIC_offset=0; + memset(TMP_PIC_path, 0, sizeof(TMP_PIC_path)); } } } - if(new_pad & BUTTON_DOWN) {if(videoscale_y > -120) videoscale_y-=10;} - if(new_pad & BUTTON_UP) {if(videoscale_y < 120) videoscale_y+=10;} - if(new_pad & BUTTON_RIGHT) {if(videoscale_x > -120) videoscale_x-=10;} - if(new_pad & BUTTON_LEFT) {if(videoscale_x < 120) videoscale_x+=10;} - if(new_pad & BUTTON_CIRCLE) { - write_setting(); + if(NewPad(BUTTON_DOWN)) {if(videoscale_y > -120) videoscale_y-=10;} + if(NewPad(BUTTON_UP)) {if(videoscale_y < 120) videoscale_y+=10;} + if(NewPad(BUTTON_RIGHT)) {if(videoscale_x > -120) videoscale_x-=10;} + if(NewPad(BUTTON_LEFT)) {if(videoscale_x < 120) videoscale_x+=10;} + if(NewPad(BUTTON_CIRCLE)) { + if(Show_TVTEST==YES) { + TMP_PIC_offset=0; + memset(TMP_PIC_path, 0, sizeof(TMP_PIC_path)); + } + write_setting(); LoopBreak=0; return; } } } -u8 C_pos=0; +#define FLAG_COLOR_1 1 +#define FLAG_COLOR_2 2 +#define FLAG_COLOR_3 3 +#define FLAG_COLOR_4 4 +#define FLAG_WAVES_COLOR 5 +#define FLAG_COLOR_NOTIF 6 +#define FLAG_COLOR_BOXHEAD 7 +#define FLAG_COLOR_BOXBODY 8 +#define FLAG_COLOR_SIDEBAR 9 +#define FLAG_COLOR_BGS 10 +#define FLAG_COLOR_BG 11 +u8 C_pos=0; void Draw_RGBA_box(int n) { u32 COLOR=0; - if(n==1) COLOR = COLOR_1; else - if(n==2) COLOR = COLOR_2; else - if(n==3) COLOR = COLOR_3; else - if(n==4) COLOR = COLOR_4; else - if(n==5) COLOR = WAVES_COLOR; + if(n==FLAG_COLOR_1) COLOR = COLOR_1; else + if(n==FLAG_COLOR_2) COLOR = COLOR_2; else + if(n==FLAG_COLOR_3) COLOR = COLOR_3; else + if(n==FLAG_COLOR_4) COLOR = COLOR_4; else + if(n==FLAG_WAVES_COLOR) COLOR = WAVES_COLOR; else + if(n==FLAG_COLOR_NOTIF) COLOR = COLOR_NOTIF; else + if(n==FLAG_COLOR_BOXHEAD) COLOR = COLOR_BOXHEAD; else + if(n==FLAG_COLOR_BOXBODY) COLOR = COLOR_BOXBODY; else + if(n==FLAG_COLOR_SIDEBAR) COLOR = COLOR_SIDEBAR; else + if(n==FLAG_COLOR_BGS) COLOR = COLOR_BGS; else + if(n==FLAG_COLOR_BG) COLOR = COLOR_BG; float h_COLOR = 5+20*4+5; - float w_COLOR = h_COLOR + 10+10+10+128+10; - - if(x_COLOR + w_COLOR > X_MAX) x_COLOR -= w_COLOR-16; - if(y_COLOR + h_COLOR > Y_MAX) y_COLOR -= h_COLOR-10; + float w_COLOR = h_COLOR + 10+10+128+10 + 50; - Draw_Box(x_COLOR, y_COLOR, 0, 0, w_COLOR, h_COLOR, 0x888888FF, NO); + if(current_x + w_COLOR > X_MAX) current_x -= w_COLOR-16; + if(current_y + h_COLOR > Y_MAX) current_y -= h_COLOR-10; - Draw_Box(x_COLOR+10, y_COLOR+10, 0, 0, h_COLOR-20, h_COLOR-20, COLOR, NO); + // CurrentColor + Draw_Box(current_x, current_y, 0, 0, w_COLOR, h_COLOR, 0x888888FF, NO); // Background + Draw_Box(current_x+10, current_y+10, 0, 0, h_COLOR-20, h_COLOR-20, COLOR, NO); //CurrentColor - Draw_Box(x_COLOR+h_COLOR+10+10+10, y_COLOR+5+9 , 0, 0, 128, 2, 0x444444FF, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10, y_COLOR+5+20+9 , 0, 0, 128, 2, 0x444444FF, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10, y_COLOR+5+20+20+9 , 0, 0, 128, 2, 0x444444FF, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10, y_COLOR+5+20+20+20+9 , 0, 0, 128, 2, 0x444444FF, NO); + // Bar + Draw_Box(current_x+h_COLOR+10+10, current_y+5+9 , 0, 0, 128, 2, 0x444444FF, NO); + Draw_Box(current_x+h_COLOR+10+10, current_y+5+20+9 , 0, 0, 128, 2, 0x444444FF, NO); + Draw_Box(current_x+h_COLOR+10+10, current_y+5+20+20+9 , 0, 0, 128, 2, 0x444444FF, NO); + Draw_Box(current_x+h_COLOR+10+10, current_y+5+20+20+20+9 , 0, 0, 128, 2, 0x444444FF, NO); - u32 curs_color; + FontSize(10); + SetFontZ(0); + FontColor(WHITE); + + u32 curs_color=WHITE; float e; if(C_pos == 0) {curs_color = WHITE; e=12;} else {curs_color = 0x666666FF; e=8;} - Draw_Box(x_COLOR+h_COLOR+10+5-e/2, y_COLOR+5+10-e/2, 0, 0, e, e, RED, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10 + GetRED(COLOR)/2 - 2, y_COLOR+5+10-4, 0, 0, 4, 8, curs_color, NO); + Draw_Box(current_x+h_COLOR+5-e/2, current_y+5+10-e/2, 0, 0, e, e, RED, NO); + Draw_Box(current_x+h_COLOR+10+10 + GetRED(COLOR)/2 - 2, current_y+5+10-4, 0, 0, 4, 8, curs_color, NO); + FontColor(curs_color); + DrawFormatString(current_x+w_COLOR-50, current_y+5+10-4, "%03d", (int) GetRED(COLOR)); + DrawFormatString(current_x+w_COLOR-30, current_y+5+10-4, "0x%02X", (int) GetRED(COLOR)); if(C_pos == 1) {curs_color = WHITE; e=12;} else {curs_color = 0x666666FF; e=8;} - Draw_Box(x_COLOR+h_COLOR+10+5-e/2, y_COLOR+5+20+10-e/2, 0, 0, e, e, GREEN, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10 + GetGREEN(COLOR)/2 - 2, y_COLOR+5+20+10-4, 0, 0, 4, 8, curs_color, NO); + Draw_Box(current_x+h_COLOR+5-e/2, current_y+5+20+10-e/2, 0, 0, e, e, GREEN, NO); + Draw_Box(current_x+h_COLOR+10+10 + GetGREEN(COLOR)/2 - 2, current_y+5+20+10-4, 0, 0, 4, 8, curs_color, NO); + FontColor(curs_color); + DrawFormatString(current_x+w_COLOR-50, current_y+5+20+10-4, "%03d", (int) GetGREEN(COLOR)); + DrawFormatString(current_x+w_COLOR-30, current_y+5+20+10-4, "0x%02X", (int) GetGREEN(COLOR)); if(C_pos == 2) {curs_color = WHITE; e=12;} else {curs_color = 0x666666FF; e=8;} - Draw_Box(x_COLOR+h_COLOR+10+5-e/2, y_COLOR+5+20+20+10-e/2, 0, 0, e, e, BLUE, NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10 + GetBLUE(COLOR)/2 - 2, y_COLOR+5+20+20+10-4, 0, 0, 4, 8, curs_color, NO); + + Draw_Box(current_x+h_COLOR+5-e/2, current_y+5+20+20+10-e/2, 0, 0, e, e, BLUE, NO); + Draw_Box(current_x+h_COLOR+10+10 + GetBLUE(COLOR)/2 - 2, current_y+5+20+20+10-4, 0, 0, 4, 8, curs_color, NO); + FontColor(curs_color); + DrawFormatString(current_x+w_COLOR-50, current_y+5+20+20+10-4, "%03d", (int) GetBLUE(COLOR)); + DrawFormatString(current_x+w_COLOR-30, current_y+5+20+20+10-4, "0x%02X", (int) GetBLUE(COLOR)); if(C_pos == 3) {curs_color = WHITE; e=12;} else {curs_color = 0x666666FF; e=8;} - Draw_Box(x_COLOR+h_COLOR+10+5-e/2, y_COLOR+5+20+20+20+10-e/2, 0, 0, e, e, BLACK-0xFF+GetALPHA(COLOR), NO); - Draw_Box(x_COLOR+h_COLOR+10+10+10 + GetALPHA(COLOR)/2 - 2, y_COLOR+5+20+20+20+10-4, 0, 0, 4, 8, curs_color, NO); + Draw_Box(current_x+h_COLOR+5-e/2, current_y+5+20+20+20+10-e/2, 0, 0, e, e, BLACK-0xFF+GetALPHA(COLOR), NO); + Draw_Box(current_x+h_COLOR+10+10 + GetALPHA(COLOR)/2 - 2, current_y+5+20+20+20+10-4, 0, 0, 4, 8, curs_color, NO); + FontColor(curs_color); + DrawFormatString(current_x+w_COLOR-50, current_y+5+20+20+20+10-4, "%03d", (int) GetALPHA(COLOR)); + DrawFormatString(current_x+w_COLOR-30, current_y+5+20+20+20+10-4, "0x%02X", (int) GetALPHA(COLOR)); + + FontSize(20); +} + +u8 GetSpeed(u64 delay) +{ + u64 i; + for(i=4; 0 < i; i--) { + if(n_s(i) 0) { - COLOR = SetRED(GetRED(COLOR)-5, COLOR); - } - } else - if(C_pos == 1) { - if(GetGREEN(COLOR) > 0) { - COLOR = SetGREEN(GetGREEN(COLOR)-5, COLOR); - } - } else - if(C_pos == 2) { - if(GetBLUE(COLOR) > 0) { - COLOR = SetBLUE(GetBLUE(COLOR)-5, COLOR); - } - } else - if(C_pos == 3) { - if(GetALPHA(COLOR) > 0) { - COLOR = SetALPHA(GetALPHA(COLOR)-5, COLOR); - } - } - } - - if(new_pad & BUTTON_RIGHT || (old_pad & BUTTON_RIGHT && slow_it==0)) { - if(C_pos == 0) { - if(GetRED((u32) COLOR) < 0xFF) { - COLOR = SetRED(GetRED(COLOR)+5, COLOR); - } - } else - if(C_pos == 1) { - if(GetGREEN((u32) COLOR) < 0xFF) { - COLOR = SetGREEN(GetGREEN(COLOR)+5, COLOR); - } - } else - if(C_pos == 2) { - if(GetBLUE((u32) COLOR) < 0xFF) { - COLOR = SetBLUE(GetBLUE(COLOR)+5, COLOR); - } - } else - if(C_pos == 3) { - if(GetALPHA((u32) COLOR) < 0xFF) { - COLOR = SetALPHA(GetALPHA(COLOR)+5, COLOR); - } - } - } + if(C_pos == 0 && red_inc != 0) COLOR = SetRED(GetRED(COLOR) + red_inc, COLOR); else + if(C_pos == 1 && green_inc != 0) COLOR = SetGREEN(GetGREEN(COLOR) + green_inc, COLOR); + if(C_pos == 2 && blue_inc != 0) COLOR = SetBLUE(GetBLUE(COLOR) + blue_inc, COLOR); + if(C_pos == 3 && alpha_inc != 0) COLOR = SetALPHA(GetALPHA(COLOR) + alpha_inc, COLOR); if(n==1) COLOR_1 = COLOR; else if(n==2) COLOR_2 = COLOR; else @@ -27883,7 +30865,20 @@ u8 input_COLOR(int n) if(n==4) COLOR_4 = COLOR; else if(n==5) WAVES_COLOR = COLOR; - if(new_pad & BUTTON_CIRCLE) { + + if(n==FLAG_COLOR_1) COLOR_1 = COLOR; else + if(n==FLAG_COLOR_2) COLOR_2 = COLOR; else + if(n==FLAG_COLOR_3) COLOR_3 = COLOR; else + if(n==FLAG_COLOR_4) COLOR_4 = COLOR; else + if(n==FLAG_WAVES_COLOR) WAVES_COLOR = COLOR; else + if(n==FLAG_COLOR_NOTIF) COLOR_NOTIF = COLOR; else + if(n==FLAG_COLOR_BOXHEAD) COLOR_BOXHEAD = COLOR; else + if(n==FLAG_COLOR_BOXBODY) COLOR_BOXBODY = COLOR; else + if(n==FLAG_COLOR_SIDEBAR) COLOR_SIDEBAR = COLOR; else + if(n==FLAG_COLOR_BGS) COLOR_BGS = COLOR; else + if(n==FLAG_COLOR_BG) COLOR_BG = COLOR; + + if(NewPad(BUTTON_CIRCLE)) { return BREAK; } @@ -27904,34 +30899,326 @@ void Draw_COLOR_input() void Draw_ChooseColor(u8 n) { u8 LoopBreak=1; + + u32 old_BGS_offset=PICTURE_offset[BGS]; + u8 old_FILTER_BGS= FILTER_BGS; + while(LoopBreak) { cls(); Draw_scene(); Draw_RGBA_box(n); + if( n == FLAG_COLOR_NOTIF) { + time_not = 0; + show_msg("0123456789"); + Draw_Notification(); + } else + if( n == FLAG_COLOR_BOXHEAD || n == FLAG_COLOR_BOXBODY) { + filter=YES; + Draw_filter(); + } else + if( n == FLAG_COLOR_SIDEBAR) { + Draw_SIDEBAR(593); + } else + if( n == FLAG_COLOR_BG) { + PICTURE_offset[BGS]=0; + FILTER_BGS=DISABLED; + } Draw_COLOR_input(); tiny3d_Flip(); ScreenShot(); - ps3pad_read(); - + if(input_COLOR(n) == BREAK) { + PICTURE_offset[BGS]=old_BGS_offset; + FILTER_BGS=old_FILTER_BGS; LoopBreak=0; + time_not = 101; + filter = NO; return; } } } +u8 REC_UI_position=0; +u8 REC_Show_COVER=0; +u8 REC_Show_ICON0=0; +u8 REC_FLOW_3D=0; void close_SETTINGS() { - FreeFont(); - write_setting(); - Draw_MENU_input = &EmptyFunc; - input_MENU = &EmptyFunc; - MENU=NO; - free_MENU(); + if(REC_UI_position!=UI_position) { + start_loading(); + print_load("Reloading Theme..."); + if(REC_UI_position == XMB ) { + if(Show_it(position) == NO) { + int i; + int old_position = position; + for(i=0; i<=game_number; i++) { + if(position-i<0 && game_number0) { + remove_SCANDIR(scan_dir[ITEMS_VALUE_POSITION[ITEMS_POSITION]]); + int i; for(i=ITEMS_VALUE_POSITION[ITEMS_POSITION]; i < scan_dir_number; i++) { strcpy(scan_dir[i], scan_dir[i+1]); } memset(scan_dir[scan_dir_number], 0, sizeof(scan_dir[scan_dir_number])); - if(scan_dir_number==ITEMS_VALUE_POSITION[ITEMS_POSITION]) ITEMS_VALUE_POSITION[ITEMS_POSITION]--; scan_dir_number--; write_scan_dir(); + + init_Load_GAMEPIC(); } } else if(item_is(STR_COLORSET)) { @@ -28427,39 +32159,113 @@ u8 SETTINGS_TRIANGLE() init_SETTINGS(); return CONTINUE; -} +} void input_SETTINGS() { - get_R2speed(); + int i; + get_R2speed(); + if(R2pad(BUTTON_UP)) { - if(IN_ITEMS_VALUE == NO) { - if(ITEMS_POSITION == 0) ITEMS_POSITION = ITEMS_NUMBER; - else ITEMS_POSITION--; + if(USE_TITLE_MENU) { + if(MENU_LVL == LVL_TITLE) { + u8 twice=NO; + if(TITLES[ITEMS_POSITION]==NULL) twice=YES; + for(i=1; i<=ITEMS_NUMBER; i++) { + int i_pos = ITEMS_POSITION-i; + if( i_pos < 0 ) i_pos+=ITEMS_NUMBER+1; + if(TITLES[i_pos] != NULL) { + if(twice==NO) { + ITEMS_POSITION = i_pos; + break; + } else twice=NO; + } + } + } else if(MENU_LVL == LVL_ITEMS) { + for(i=0; i<=TITLE_MENU_LAST_ITEM-TITLE_MENU_FIRST_ITEM; i++) { + if(ITEMS_POSITION==TITLE_MENU_FIRST_ITEM) ITEMS_POSITION=TITLE_MENU_LAST_ITEM; + else ITEMS_POSITION--; + if(ITEMS_TYPE[ITEMS_POSITION]!=ITEM_LOCKED) break; + } + } else if(MENU_LVL == LVL_VALUE) { + if(ITEMS_VALUE_POSITION[ITEMS_POSITION] == 0) ITEMS_VALUE_POSITION[ITEMS_POSITION] = ITEMS_VALUE_NUMBER[ITEMS_POSITION]; + else ITEMS_VALUE_POSITION[ITEMS_POSITION]--; + } } else { - if(ITEMS_VALUE_POSITION[ITEMS_POSITION] == 0) ITEMS_VALUE_POSITION[ITEMS_POSITION] = ITEMS_VALUE_NUMBER[ITEMS_POSITION]; - else ITEMS_VALUE_POSITION[ITEMS_POSITION]--; + if(MENU_LVL == LVL_ITEMS) { + for(i=0; i<=ITEMS_NUMBER; i++) { + if(ITEMS_POSITION == 0) ITEMS_POSITION = ITEMS_NUMBER; + else ITEMS_POSITION--; + if(ITEMS_TYPE[ITEMS_POSITION]!=ITEM_LOCKED) break; + } + + } else if(MENU_LVL == LVL_VALUE) { + if(ITEMS_VALUE_POSITION[ITEMS_POSITION] == 0) ITEMS_VALUE_POSITION[ITEMS_POSITION] = ITEMS_VALUE_NUMBER[ITEMS_POSITION]; + else ITEMS_VALUE_POSITION[ITEMS_POSITION]--; + } } } else if(R2pad(BUTTON_DOWN)) { - if(IN_ITEMS_VALUE == NO) { - if(ITEMS_POSITION == ITEMS_NUMBER) ITEMS_POSITION = 0; - else ITEMS_POSITION++; + if(USE_TITLE_MENU) { + if(MENU_LVL==LVL_TITLE) { + for(i=1; i<=ITEMS_NUMBER; i++) { + int i_pos=ITEMS_POSITION+i; + if(ITEMS_NUMBER0) { @@ -28520,7 +32357,7 @@ void Draw_SETTINGS_input() } } x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); - } else { + } else if(MENU_LVL == LVL_ITEMS) { x=DrawButton(x, y, STR_ENTER, BUTTON_CROSS); x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); if(ITEMS_VALUE_NUMBER[ITEMS_POSITION] != -1) { @@ -28531,21 +32368,43 @@ void Draw_SETTINGS_input() if(ITEMS_TYPE[ITEMS_POSITION] == ITEM_COLORBOX) { x=DrawButton(x, y, STR_RESET, BUTTON_SQUARE); } + } else if(MENU_LVL == LVL_TITLE) { + x=DrawButton(x, y, STR_ENTER, BUTTON_CROSS); + x=DrawButton(x, y, STR_BACK, BUTTON_CIRCLE); + } + + if( ITEMS_TYPE[ITEMS_POSITION] == ITEM_TOGGLE ) { + if( ( item_is(STR_COLOR_NOTIF) && FILTER_NOTIF==ENABLED ) + || ( item_is(STR_COLOR_BOXHEAD) && FILTER_BOXHEAD==ENABLED ) + || ( item_is(STR_COLOR_BOXBODY) && FILTER_BOXBODY==ENABLED ) + || ( item_is(STR_COLOR_SIDEBAR) && FILTER_SIDEBAR==ENABLED ) + || ( item_is(STR_COLOR_BGS) && FILTER_BGS==ENABLED ) + || ( item_is(STR_COLOR_BG) && FILTER_BG==ENABLED ) + || ( item_is(STR_SHOW_WAVES) && Show_Waves==YES) + ){ + x=DrawButton(x, y, STR_SET_COLOR, BUTTON_R1); + } } - } void open_SETTINGS() { start_loading(); + MENU_SIDE=NO; + USE_TITLE_MENU=YES; new_MENU(); #ifndef FILEMANAGER read_scan_dir(); #endif read_setting(); + + REC_UI_position=UI_position; + REC_Show_COVER=Show_COVER; + REC_Show_ICON0=Show_ICON0; + REC_FLOW_3D=FLOW_3D; + GetFont(); init_SETTINGS(); - MENU_SIDE=NO; Draw_MENU_input = &Draw_SETTINGS_input; input_MENU = &input_SETTINGS; end_loading(); @@ -28580,12 +32439,15 @@ void AutoMount() if(read_AutoMount_setting()==FAILED) { print_load("Error : Failed to read AutoMount file"); + sleep(4); exit(0); } print_load("AutoMount = %s", list_game_path[0]); game_number=0; + position=0; + GetParamSFO("TITLE", list_game_title[0], 0, NULL); list_game_platform[0] = get_ext(list_game_path[0]); iso = is_iso(list_game_path[0]); @@ -28593,38 +32455,23 @@ void AutoMount() u8 Path_exist=NO; - MountNTFS(); + strcpy(GamPath, list_game_path[0]); //check GamPath if(path_info(GamPath)==_NOT_EXIST) { print_load("Warning : Game path not exist."); - print_load("Searching in other ports"); - memset(temp_buffer, 0, sizeof(temp_buffer)); - if(strstr(GamPath, "/ntfs") != NULL) { - strcpy(temp_buffer, &GamPath[5]); - int i; - for(i=0; i<8; i++) { - sprintf(GamPath, "/ntfs%c:%s", 48+i, temp_buffer); - if(path_info(GamPath)!=_NOT_EXIST) { - print_load("Game found !"); - Path_exist=YES; - break; - } - } - } - else { - if(strstr(GamPath, "/dev_usb") != NULL) { - strcpy(temp_buffer, &GamPath[11]); - } else strcpy(temp_buffer, &GamPath[9]); - int device; - for(device=0; device<=10; device++) { - if(device!=10) sprintf(GamPath, "/dev_usb00%c%s", 48+device, temp_buffer); else - sprintf(GamPath, "/dev_hdd0%s", temp_buffer); - if(path_info(GamPath) != _NOT_EXIST) { - print_load("Game found !"); - Path_exist=YES; - break; - } + print_load("Searching in other devices..."); + + int n = 1, i; + while(GamPath[n] != '/' && GamPath[n] != 0) n++; + strcpy(temp_buffer, &GamPath[n]); + + for(i=0; i<=device_number; i++) { + sprintf(GamPath, "/%s%s", list_device[i], temp_buffer); + if(path_info(GamPath) != _NOT_EXIST) { + print_load("Game found !"); + Path_exist=YES; + break; } } } else Path_exist=YES; @@ -28650,14 +32497,13 @@ void AutoMount() FontColor(COLOR_1); SetFontZ(0); - DrawButton(x, y, STR_BACKTOXMB, BUTTON_CIRCLE); + DrawButton(x, y, STR_EXIT, BUTTON_CIRCLE); tiny3d_Flip(); ScreenShot(); - ps3pad_read(); - if(new_pad & BUTTON_CIRCLE) { + if(NewPad(BUTTON_CIRCLE)) { ioPadEnd(); LoopBreak=0; exit(0); @@ -28678,20 +32524,20 @@ void AutoMount() Draw_MENU(); Draw_MENU_input(); - check_device(); + //AutoRefresh_GAMELIST(); tiny3d_Flip(); ScreenShot(); ps3pad_read(); - + input_MENU(); } write_AutoMount_setting(GamPath); } - MountGame(list_game_path[0]); + MountGame(GamPath); end_loading(); @@ -28703,9 +32549,6 @@ void AutoMount() // Filter //******************************************************* -u8 filter=NO; -u8 filter_position=0; - void open_filter() { filter = YES; @@ -28722,7 +32565,7 @@ void input_filter() { if(filter==NO) return; - if(new_pad & BUTTON_CROSS) { + if(NewPad(BUTTON_CROSS)) { if(filter_position==0) { if(Only_FAV==YES) Only_FAV=NO; else Only_FAV=YES; @@ -28743,22 +32586,40 @@ void input_filter() if(Show_PSP==YES) Show_PSP=NO; else Show_PSP=YES; } + + if( UI_position == XMB) { + if(XMB_H_position==XMB_COLUMN_PSP && !Show_PSP) { XMB_H_position--; } + if(XMB_H_position==XMB_COLUMN_PS1 && !Show_PS1) { XMB_H_position--; } + if(XMB_H_position==XMB_COLUMN_PS2 && !Show_PS2) { XMB_H_position--; } + if(XMB_H_position==XMB_COLUMN_PS3 && !Show_PS3) { XMB_H_position--; } + if(XMB_H_position==XMB_COLUMN_FAVORITES && !Only_FAV) { XMB_H_position--; } + } else + if(Show_it(position) == NO) { + int i; + int old_position = position; + for(i=0; i<=game_number; i++) { + if(position-i<0 && game_number target) { - local -= TranslateSpeed; - *value = local; + if(target < local) { + if(local - TranslateSpeed < target) *value = target; + else { + local -= TranslateSpeed; + *value = local; + } } else if(local < target) { - local += TranslateSpeed; - *value = local; + if( target < local + TranslateSpeed) *value = target; + else { + local += TranslateSpeed; + *value = local; + } } } @@ -28900,7 +32771,7 @@ void RotateTo(float *value, float target) RotateSpeed=RotateSpeed*2; } - if((local - RotateSpeed < target && target < local + RotateSpeed) || MOVE_init==NO) { + if((local - RotateSpeed < target && target < local + RotateSpeed) || MOVE_animated==NO) { *value = target; } else if(local > target) { @@ -28918,6 +32789,84 @@ float FLOW_FakeZoom(float z) return 2-(z-10)/90; } +//******************************************************* +// LIST +//******************************************************* + +void Draw_LIST() +{ + if(position == -1) return; + + if(Show_ICON0) { + Draw_GAMEPIC(position, GAMEPIC_ICON0, 630, 30, 100, 141.3, 0, NO, WHITE); + } + if(Show_COVER) { + int slot; + if(Get_GAMEPIC_TYPE(position, &slot) == GAMEPIC_COVER2D) { + Draw_GAMEPIC(position, GAMEPIC_COVER2D, 630, 150, 100, 141.3, 0, NO, WHITE); + } else { + Draw_COVER(position, 630, 150, 100, 141.3, 0, COVER_offset, COVER, NO, WHITE); + } + } + + float x=50, y=40; + + FontColor(COLOR_1); + FontSize(LIST_SizeFont); + + nb_line = (460 - y - LIST_SizeFont) / LIST_SizeFont; + + int j=0, i=0; + + if(position<=first_line) { + first_line=position; + j=0; + for(i=first_line; j<=nb_line; i++) { + if(game_number < first_line + i) break; + if(Show_it(i) == NO) continue; + j++; + } + last_line=i-1; + } + if(last_line<=position) { + last_line=position; + j=0; + for(i=last_line; j<=nb_line; i--) { + if(game_number < last_line - i) break; + if(Show_it(i) == NO) continue; + j++; + } + first_line=i+1; + } + + SetFontZ(105); + + j=0; + for(i=first_line; j <= nb_line; i++) { + if(i>game_number) break; + if(Show_it(i) == NO) continue; + + j++; + + if(i==position) FontColor(COLOR_2); + else FontColor(COLOR_1); + + DrawFormatString(x, y, "%s", list_game_title[i]); + y+=LIST_SizeFont; + } + SetFontZ(10); + last_line=i-1; + + if(j < nb_line) { + j=0; + for(i=last_line; j<=nb_line; i--) { + if(game_number < last_line - i) break; + if(Show_it(i) == NO) continue; + j++; + } + first_line=i+1; + } +} //******************************************************* // FLOW 3D @@ -29032,6 +32981,50 @@ void Draw_PS3COVER_3D() } +void Draw_ICON03D(float w, float e, float r) +{ + float x=0,y=0,z=0; // 0,0,0 au centre du volume + + x-=0.1; // pour avoir la jaquette autour de la boite + + float w_icon0 = w-r ; + + float h_icon0 = w_icon0 * 176.0 / 320.0; + + y=-h_icon0/2; + x=-w/2+r; + z=-e/2; + + tiny3d_SetPolygon(TINY3D_QUAD_STRIP); + + tiny3d_VertexPos(x, y+h_icon0 , z); + tiny3d_Normal(0, 0, -1); + tiny3d_VertexTexture(0.0f, 0.0f); + + tiny3d_VertexPos(x, y , z); + tiny3d_Normal(0, 0, -1); + tiny3d_VertexTexture(0.0f, 1.0f); + + tiny3d_VertexPos(x+w_icon0, y+h_icon0 , z); + tiny3d_Normal(0, 0, -1); + tiny3d_VertexTexture(1.0f, 0.0f); + + tiny3d_VertexPos(x+w_icon0, y , z); + tiny3d_Normal(0, 0, -1); + tiny3d_VertexTexture(1.0f, 1.0f); + + tiny3d_End(); +} + +void Draw_PS3ICON0() +{ + float w=129; // largeur de la jaquette de face + float e=14+0.1; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float r=3; // rayon des arrondies + + Draw_ICON03D(w, e, r); +} + void Draw_PS3COVER() { @@ -29550,6 +33543,16 @@ void Draw_PS3GAMECASE_3D() } +void Draw_PS2ICON0() +{ + + float w=130; // largeur de la jaquette de face + float e=14+0.1; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float r=3; // rayon des arrondies + + Draw_ICON03D(w, e, r); +} + void Draw_PS2COVER() { float x=0,y=0,z=0; // 0,0,0 au centre du volume @@ -30085,6 +34088,18 @@ void Draw_PS2GAMECASE_3D() } +#define PS1_e 15.0f + +void Draw_PS1ICON0() +{ + float wb = 140; // largeur de la boite + float e=PS1_e+0.2; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float w=126; // largeur de la jaquette de face + float l=wb-w; // largeur de la marge noire à gauche + + Draw_ICON03D(w, e, l); +} + void Draw_PS1COVER_FRONT() { float x=0,y=0,z=0; // 0,0,0 au centre du volume @@ -30093,7 +34108,7 @@ void Draw_PS1COVER_FRONT() float hb = 130; // hauteur de la boite float w=126; // largeur de la jaquette de face - float e=15+0.2; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float e=PS1_e+0.2; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. float r=2; // rayon des arrondies float l=wb-r-w; // largeur de la marge noire à gauche @@ -30131,7 +34146,7 @@ void Draw_PS1COVER_BACK() float wb = 140+0.2; // largeur de la boite float hb = 130; // hauteur de la boite - float e=15+0.2; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float e=PS1_e+0.2; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. float r=2; // rayon des arrondies // x,y,z : superieur bas gauche @@ -30139,23 +34154,25 @@ void Draw_PS1COVER_BACK() y = -hb/2; z = -e/2; - float l_tot = wb-2*r + 2*(e-r) + PI*r; + float gap = 2; + + float l_tot = wb-2*r + 2*(e-r) + PI*r - gap*2; float SW=0; // longueur de la texture tiny3d_SetPolygon(TINY3D_QUAD_STRIP); - tiny3d_VertexPos(x+wb, y+hb-r , z+r); + tiny3d_VertexPos(x+wb, y+hb-r , z+r+gap); tiny3d_Normal(1, 0, 0); tiny3d_VertexTexture(0.0f, 0.0f); - tiny3d_VertexPos(x+wb, y+r , z+r); + tiny3d_VertexPos(x+wb, y+r , z+r+gap); tiny3d_Normal(1, 0, 0); tiny3d_VertexTexture(0.0f, 1.0f); tiny3d_VertexPos(x+wb, y+hb-r , z+e-r); tiny3d_Normal(1, 0, 0); - SW+=e-r; + SW+=e-r-gap; tiny3d_VertexTexture((float) SW / l_tot, 0.0f); tiny3d_VertexPos(x+wb, y+r , z+e-r); @@ -30196,12 +34213,12 @@ void Draw_PS1COVER_BACK() tiny3d_VertexTexture((float) SW / l_tot, 1.0f); } - SW += e-r; - tiny3d_VertexPos(x, y+hb-r, z+r); + SW += e-r-gap; + tiny3d_VertexPos(x, y+hb-r, z+r+gap); tiny3d_Normal(-1, 0, 0); tiny3d_VertexTexture((float) SW / l_tot, 0.0f); - tiny3d_VertexPos(x, y+r, z+r); + tiny3d_VertexPos(x, y+r, z+r+gap); tiny3d_Normal(-1, 0, 0); tiny3d_VertexTexture((float) SW / l_tot, 1.0f); @@ -30216,7 +34233,7 @@ void Draw_PS1GAMECASE_3D() float x=0,y=0,z=0; // 0,0,0 au centre du volume - float e=15; // epaisseur de la boite + float e=PS1_e; // epaisseur de la boite float wb=140; // largeur de la boite float hb=130; // hauteur de la boite @@ -30247,7 +34264,6 @@ void Draw_PS1GAMECASE_3D() } tiny3d_End(); - // arrondie superieur bas tiny3d_SetPolygon(TINY3D_QUAD_STRIP); for(t=0; t<=90; t+=10) { @@ -30572,6 +34588,15 @@ void Draw_PS1GAMECASE_3D() } } +void Draw_PSPICON0() +{ + float w=92; // largeur de la jaquette de face + float e=15.0+0.1; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float r=3; // rayon des arrondies + + Draw_ICON03D(w, e, r); +} + void Draw_PSPCOVER() { float x=0,y=0,z=0; // 0,0,0 au centre du volume @@ -30580,7 +34605,7 @@ void Draw_PSPCOVER() float w=92; // largeur de la jaquette de face float h=158; // hauteur de la jaquettte de face - float e=14+0.1; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. + float e=15.0+0.1; // epaisseur de la boite + 0.1 pixel de chaque coté pour garder la jaquette autour de la boite. float r=3; // rayon des arrondies float l_tot = w-r + PI*r/2 ; @@ -30716,6 +34741,7 @@ void Draw_PSPCOVER_3D() void Draw_PSPGAMECASE_3D() { + //float l; int t,i; @@ -31100,10 +35126,13 @@ void Draw_PSPGAMECASE_3D() void update_3DFLOW() { + + if( position == -1) return; + float e=0; int i; - if(ITEM_moveZ[position]==0) MOVE_init=NO; + if(ITEM_moveZ[position]==0) MOVE_animated=NO; int previous=-1; int next=-1; @@ -31155,11 +35184,113 @@ void update_3DFLOW() } RotateTo(&ITEM_angleZ[position], 0.0); - MOVE_init=YES; + MOVE_animated=YES; +} + +void Draw_FLOW_SCROLL(float x, float y, float z, float w) +{ + if(position == -1) return; + + if( OldPad(BUTTON_LEFT) == NO && OldPad(BUTTON_RIGHT) == NO) { + return; + } else + if( R2speed == 6 ) { + if(OldPadDelay(BUTTON_LEFT, n_s(2)) == NO && OldPadDelay(BUTTON_RIGHT, n_s(2)) == NO ) return; + } else + if( 3 < R2speed ) return; + + FontSize(15); + SetFontZ(z); + + float xc1 = 0; + float xc2 = 0; + float xc = 0; + float xp = 0; + int cc = upit(list_game_title[position][0]); + int c = 0; + int cp = 0; + float x_gpos = 0; + int i; + + int displayed_game_number = -1; + for(i=0; i<=game_number; i++) { + if(Show_it(i)) displayed_game_number++; + } + + if(displayed_game_number == -1) return; + + float wg = w / (displayed_game_number + 1); + + Draw_Box(x, y-1, z, 0, w, 2, COLOR_1, NO); + + for(i=0; i<=game_number; i++) { + if(Show_it(i) == NO) continue; + + x_gpos = i*wg; + + if(c < upit(list_game_title[i][0]) || i == game_number) { + + cp = c; + c = upit(list_game_title[i][0]); + + xp = xc; + xc = x + x_gpos; + + if( xp == 0 || cp == 0) continue; // first + +here: + if(cp == cc) { + Draw_Box(xp, y-2, z, 0, xc-xp, 2, COLOR_2, NO); + FontColor(COLOR_2); + } else { + FontColor(COLOR_1); + } + + char str[2]={0}; + str[0]=cp; + + float xt = xp + (xc-xp)/2 - WidthFromStr(str)/2; + + if( xc1 < xt ) { + xc1 = DrawFormatString(xt, y-4-15, "%c", cp); + } else + if( xc2 < xt ) { + xc2 = DrawFormatString(xt, y+8, "%c", cp); + } else + if(xc1 < xc2) { + xc1 = DrawFormatString(xc1, y-4-15, "%c", cp); + } else { + xc2 = DrawFormatString(xc2, y+8, "%c", cp); + } + + if(i==game_number) { + cp=c; + xp=xc; + xc=x+w; + i++; + goto here; + } + } + } + + x_gpos = position*wg; + + Draw_Box(x+x_gpos, y, z, 0, wg, 2, COLOR_3, NO); + + Draw_TriangleGradiant(x+x_gpos + wg/2 , y+2, + x+x_gpos + wg/2 - 6, y+2+12, + x+x_gpos + wg/2 + 6, y+2+12, + 0, + COLOR_4, + SetALPHA(GetALPHA(COLOR_4)/16, COLOR_4), + SetALPHA(GetALPHA(COLOR_4)/16, COLOR_4)); + } void Draw_FLOW_3D() { + if(position == -1) return; + MATRIX tmp; // fix Perspective Projection Matrix @@ -31213,6 +35344,12 @@ void Draw_FLOW_3D() matrix = MatrixMultiply(m_axis, tmp); tiny3d_SetMatrixModelView(&matrix); + + int TextSlot = VRAM_GetSlot(i); + + u8 PICType = GAMEPIC_COVER_UNK; + + if(0<=TextSlot) PICType = Get_PICType(GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height); if( list_game_platform[i] == _ISO_PS3 || list_game_platform[i] == _JB_PS3 ) { // texture @@ -31227,33 +35364,26 @@ void Draw_FLOW_3D() // Object Draw_PS3GAMECASE_3D(); - if(COVER3D_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER3D_offset[i], COVER3D[i].width, COVER3D[i].height, COVER3D[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PS3COVER_3D(); - - } else - if(COVER_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER_offset[i], COVER[i].width, COVER[i].height, COVER[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PS3COVER(); - } + if(0<=TextSlot) { + if(GAMEPIC_offset[TextSlot]) { + // texture + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + // material + tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); + tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); + tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); + tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + + // Object + if(PICType == GAMEPIC_COVER3D) + Draw_PS3COVER_3D(); + else if(PICType == GAMEPIC_COVER2D) + Draw_PS3COVER(); + else if(PICType == GAMEPIC_ICON0) + Draw_PS3ICON0(); + } + } } else if( list_game_platform[i] == _ISO_PS2 || list_game_platform[i] == _JB_PS2 ) { @@ -31266,34 +35396,26 @@ void Draw_FLOW_3D() // Object Draw_PS2GAMECASE_3D(); - if(COVER3D_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER3D_offset[i], COVER3D[i].width, COVER3D[i].height, COVER3D[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PS2COVER_3D(); - - } else - if(COVER_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER_offset[i], COVER[i].width, COVER[i].height, COVER[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PS2COVER(); + if(0<=TextSlot) { + if(GAMEPIC_offset[TextSlot]) { + // texture + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + // material + tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); + tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); + tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); + tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + + // Object + if(PICType == GAMEPIC_COVER3D) + Draw_PS2COVER_3D(); + else if(PICType == GAMEPIC_COVER2D) + Draw_PS2COVER(); + else if(PICType == GAMEPIC_ICON0) + Draw_PS2ICON0(); + } } - } else if( list_game_platform[i] == _ISO_PS1 || list_game_platform[i] == _JB_PS1 ) { @@ -31308,35 +35430,39 @@ void Draw_FLOW_3D() // Object Draw_PS1GAMECASE_3D(); - - if(COVER_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER_offset[i], COVER[i].width, COVER[i].height, COVER[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PS1COVER_FRONT(); - } - if(COVER3D_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER3D_offset[i], COVER3D[i].width, COVER3D[i].height, COVER3D[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + if(0<=TextSlot) { + if(GAMEPIC_offset[TextSlot]) { + // texture + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + // material + tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); + tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); + tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); + tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + + // Object + if(PICType == GAMEPIC_ICON0) + Draw_PS1ICON0(); + else + Draw_PS1COVER_FRONT(); + } - // Object - Draw_PS1COVER_BACK(); + if(PS1BACK_offset[TextSlot]) { + // texture + tiny3d_SetTexture(0, PS1BACK_offset[TextSlot], PS1BACK[TextSlot].width, PS1BACK[TextSlot].height, PS1BACK[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + // material + tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); + tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); + tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); + tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + + // Object + Draw_PS1COVER_BACK(); + } } - } else if( list_game_platform[i] == _ISO_PSP || list_game_platform[i] == _JB_PSP ) { // material @@ -31348,32 +35474,25 @@ void Draw_FLOW_3D() // Object Draw_PSPGAMECASE_3D(); - if(COVER3D_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER3D_offset[i], COVER3D[i].width, COVER3D[i].height, COVER3D[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PSPCOVER_3D(); - - } else - if(COVER_offset[i]) { - // texture - tiny3d_SetTexture(0, COVER_offset[i], COVER[i].width, COVER[i].height, COVER[i].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); - - // material - tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); - tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); - tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); - tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); - - // Object - Draw_PSPCOVER(); + if(0<=TextSlot) { + if(GAMEPIC_offset[TextSlot]) { + // texture + tiny3d_SetTexture(0, GAMEPIC_offset[TextSlot], GAMEPIC[TextSlot].width, GAMEPIC[TextSlot].height, GAMEPIC[TextSlot].pitch, TINY3D_TEX_FORMAT_A8R8G8B8, TEXTURE_LINEAR); + + // material + tiny3d_EmissiveMaterial(0.1f, 0.1f, 0.1f, 0.00f); + tiny3d_AmbientMaterial( 0.3f, 0.3f, 0.3f, 1.0f); + tiny3d_DiffuseMaterial( 0.5f, 0.5f, 0.5f, 1.0f); + tiny3d_SpecularMaterial(1.0f, 1.0f, 1.0f, 13.0f); + + // Object + if(PICType == GAMEPIC_COVER3D) + Draw_PSPCOVER_3D(); + else if(PICType == GAMEPIC_COVER2D) + Draw_PSPCOVER(); + else if(PICType == GAMEPIC_ICON0) + Draw_PSPICON0(); + } } } } @@ -31381,13 +35500,15 @@ void Draw_FLOW_3D() void update_FLOW() { + if( position == -1) return; + int i; float x=848/2; float y=512/2; float e; // Init - if(ITEM_moveX[position]==0 && ITEM_moveY[position]==0) MOVE_init=NO; + if(ITEM_moveX[position]==0 && ITEM_moveY[position]==0) MOVE_animated=NO; TranslateTo(&ITEM_moveX[position], x); TranslateTo(&ITEM_moveY[position], y); @@ -31411,32 +35532,26 @@ void update_FLOW() e-=FLOW_W * FLOW_FakeZoom(ITEM_moveZ[i]) + 10; } - MOVE_init=YES; + MOVE_animated=YES; } void Draw_FLOW() { + if(position == -1) return; + int i; for(i=0; i<=game_number; i++) { if(Show_it(i)==NO) continue; - if( ITEM_moveX[i] < - FLOW_W) continue; - if( X_MAX < ITEM_moveX[i] - FLOW_W ) continue; - float w_3D = FLOW_W * FLOW_FakeZoom(ITEM_moveZ[i]); - float h_3D = FLOW_H * FLOW_FakeZoom(ITEM_moveZ[i]); + //float h_3D = FLOW_H * FLOW_FakeZoom(ITEM_moveZ[i]); if(ITEM_moveX[i] < -w_3D) continue; if(X_MAX + w_3D < ITEM_moveX[i]) break; - if(Show_COVER == YES && COVER_offset[i] != 0) { - Draw_CoverFromCenter(i, ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], w_3D, 0); - } - else { - Draw_ICON0(i, ITEM_moveX[i]-w_3D/2, ITEM_moveY[i]-h_3D/2, ITEM_moveZ[i], w_3D, h_3D); - } + Draw_GAMEPIC(i, GAMEPIC_COVER2D | GAMEPIC_ICON0 | GAMEPIC_ICON0_DEFAULT, ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], w_3D, 0, YES, WHITE); + } - } //******************************************************* @@ -31451,35 +35566,33 @@ void Draw_FLOW() void init_XMB() { - if(XMB_H_position != XMB_COLUMN_SETTINGS) { - - XMB_nb_line=-1; - memset(XMB_value_line, 0, sizeof(XMB_value_line)); + XMB_nb_line=-1; + memset(XMB_value_line, 0, sizeof(XMB_value_line)); + + int i; + for(i = 0 ; i <= game_number ; i++) { + if(XMB_H_position==XMB_COLUMN_SETTINGS) continue; - int i; - for(i = 0 ; i <= game_number ; i++) { - if(XMB_H_position==XMB_COLUMN_PS3 && (list_game_platform[i] !=_ISO_PS3 && list_game_platform[i] !=_JB_PS3)) continue; - if(XMB_H_position==XMB_COLUMN_PS2 && (list_game_platform[i] !=_ISO_PS2 && list_game_platform[i] !=_JB_PS2)) continue; - if(XMB_H_position==XMB_COLUMN_PS1 && (list_game_platform[i] !=_ISO_PS1 && list_game_platform[i] !=_JB_PS1)) continue; - if(XMB_H_position==XMB_COLUMN_PSP && (list_game_platform[i] !=_ISO_PSP && list_game_platform[i] !=_JB_PSP)) continue; - if(XMB_H_position==XMB_COLUMN_FAVORITES && is_favorite(list_game_path[i]) == NO) continue; - - XMB_nb_line++; - XMB_value_line[XMB_nb_line]=i; - - if(XMB_V_position[XMB_H_position]==XMB_nb_line) position=i; - } + if(XMB_H_position==XMB_COLUMN_PS3 && (list_game_platform[i] !=_ISO_PS3 && list_game_platform[i] !=_JB_PS3)) continue; + if(XMB_H_position==XMB_COLUMN_PS2 && (list_game_platform[i] !=_ISO_PS2 && list_game_platform[i] !=_JB_PS2)) continue; + if(XMB_H_position==XMB_COLUMN_PS1 && (list_game_platform[i] !=_ISO_PS1 && list_game_platform[i] !=_JB_PS1)) continue; + if(XMB_H_position==XMB_COLUMN_PSP && (list_game_platform[i] !=_ISO_PSP && list_game_platform[i] !=_JB_PSP)) continue; + if(XMB_H_position==XMB_COLUMN_FAVORITES && is_favorite(list_game_path[i]) == NO) continue; - if(XMB_V_position[XMB_H_position]>XMB_nb_line) XMB_V_position[XMB_H_position] = XMB_nb_line; - if(XMB_nb_line==-1) Game_stuff=NO; + XMB_nb_line++; + XMB_value_line[XMB_nb_line]=i; + if(XMB_V_position[XMB_H_position]==XMB_nb_line) position=i; } + + if(XMB_V_position[XMB_H_position]>XMB_nb_line) XMB_V_position[XMB_H_position] = XMB_nb_line; + if(XMB_nb_line==-1) Game_stuff=NO; } float XMB_FakeZoom(float z) { if(10<=z && z<=100) return 2 - (z-10)/90; else - if(0<=z && z<10) return 4 - 3*(z/10); else + if(0<=z && z<10) return 3 - (z/10); else return 1; } @@ -31488,14 +35601,22 @@ void Draw_XMB_COLUMNS() int i; for(i=0; i XMB_nb_line) break; w = XMB_W * XMB_FakeZoom(ITEM_moveZ[i]); h = XMB_H * XMB_FakeZoom(ITEM_moveZ[i]); - DrawFromCenter_ICON0(XMB_value_line[i], ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], w, h); + Draw_GAMEPIC(XMB_value_line[i], GAMEPIC_ICON0 | GAMEPIC_ICON0_DEFAULT, ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], w, h, YES, color); + } + + if(Show_COVER) { + int slot; + if(Get_GAMEPIC_TYPE(position, &slot) == GAMEPIC_COVER2D) { + Draw_GAMEPIC(position, GAMEPIC_COVER2D, 30, 200, 10, 130, 0, NO, WHITE); + } else { + Draw_COVER(position, 30, 200, 10, 130, 0, COVER_offset, COVER, NO, WHITE); + } } - if(Show_COVER == YES) Draw_COVER(position, 30, 200, 10, 130, 0); + w = XMB_W * XMB_FakeZoom(ITEM_moveZ[XMB_V_position[XMB_H_position]]); + h = XMB_H * XMB_FakeZoom(ITEM_moveZ[XMB_V_position[XMB_H_position]]); + Draw_GAMEPIC(XMB_value_line[XMB_V_position[XMB_H_position]], GAMEPIC_ICON0 | GAMEPIC_ICON0_DEFAULT, + ITEM_moveX[XMB_V_position[XMB_H_position]], + ITEM_moveY[XMB_V_position[XMB_H_position]], + ITEM_moveZ[XMB_V_position[XMB_H_position]], + w, h, YES, WHITE); - if(MENU) w = XMB_W * 4; - else w = XMB_W * 2; - DrawString(XMB_X_LINE+w/2+20, XMB_Y_LINE, list_game_title[position]); + if(w=0; i--) { + if(i==XMB_COLUMN_FAVORITES && !Only_FAV) continue; + if(i==XMB_COLUMN_PS3 && !Show_PS3) continue; + if(i==XMB_COLUMN_PS2 && !Show_PS2) continue; + if(i==XMB_COLUMN_PS1 && !Show_PS1) continue; + if(i==XMB_COLUMN_PSP && !Show_PSP) continue; + TranslateTo(&XMB_columnX[i], e); TranslateTo(&XMB_columnY[i], y); TranslateTo(&XMB_columnZ[i], 35.0); e2-=5; e-=e2; } + } void update_XMB_LINES() @@ -31602,10 +35760,11 @@ void update_XMB_LINES() if(Game_stuff==NO) return; // Init - if(ITEM_moveX[XMB_V_position[XMB_H_position]] != x) MOVE_init=NO; + if(ITEM_moveX[XMB_V_position[XMB_H_position]] != x) MOVE_animated=NO; TranslateTo(&ITEM_moveX[XMB_V_position[XMB_H_position]], x); TranslateTo(&ITEM_moveY[XMB_V_position[XMB_H_position]], y); + if(MENU) TranslateTo(&ITEM_moveZ[XMB_V_position[XMB_H_position]], 0.0); else @@ -31627,8 +35786,7 @@ void update_XMB_LINES() e-=XMB_H+2; } - MOVE_init=YES; - + MOVE_animated=YES; } //******************************************************* @@ -31671,20 +35829,22 @@ void init_GRID() GRID_LAST_ICON=i; if(j==GRID_NB_ICON0) break; } + MOVE_animated = NO; } void Draw_GRID() { + if(position == -1) return; + int i; for(i = GRID_FIRST_ICON-GRID_NB_ICON0 ; i<=GRID_LAST_ICON+GRID_NB_ICON0 ; i++) { if(i<0) continue; if(i>game_number) break; if(Show_it(i)==NO) continue; - Draw_ICON0(i, ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], GRID_W_ICON0, GRID_H_ICON0); + Draw_GAMEPIC(i, GAMEPIC_ICON0 | GAMEPIC_COVER2D | GAMEPIC_ICON0_DEFAULT, ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], GRID_W_ICON0, GRID_H_ICON0, NO, WHITE); if(i==position) { - Draw_Box(ITEM_moveX[i]-5, ITEM_moveY[i]-5, ITEM_moveZ[i]+1, 0, GRID_W_ICON0+10, GRID_H_ICON0+10, WHITE, NO); - Draw_Box(ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i]+1, 0, GRID_W_ICON0, GRID_H_ICON0, BLACK, NO); + Draw_LineBox(ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i], 5, GRID_W_ICON0, GRID_H_ICON0, WHITE); } else { Draw_Box(ITEM_moveX[i], ITEM_moveY[i], ITEM_moveZ[i]-1, 0, GRID_W_ICON0, GRID_H_ICON0, 0xFFFFFF80, NO); } @@ -31693,8 +35853,10 @@ void Draw_GRID() void update_GRID() { + if(position==-1) return; + // Init - if(ITEM_moveZ[position]!=100.0 || GRID_ANIMATED == NO) MOVE_init=NO; + if(ITEM_moveZ[position]!=100.0 || GRID_ANIMATED == NO) MOVE_animated=NO; float x, y, x1, y1; int i, k=0; @@ -31780,7 +35942,7 @@ void update_GRID() } } - MOVE_init=YES; + MOVE_animated=YES; } //******************************************************* @@ -31794,132 +35956,133 @@ void input_MAIN() if(txt_viewer_activ == YES) return; int i,j,k; - - u8 old_x = x_L; - u8 old_y = y_L; - - x_L = (paddata.button[6] - 128); - y_L = (paddata.button[7] - 128); - - if (y_L < -28) { - if(old_y == 0) new_pad |= BUTTON_UP; else - { - old_pad |= BUTTON_UP; - R2speed = 6 + y_L/20; - } - } else - if (28 < y_L) { - if(old_y == 0) new_pad |= BUTTON_DOWN; else - { - old_pad |= BUTTON_DOWN; - R2speed = 6 - y_L/20; - } - } else - if (x_L < -28) { - if(old_x == 0) new_pad |= BUTTON_LEFT; else - { - old_pad |= BUTTON_LEFT; - R2speed = 6 + x_L/20 ; - } - } else - if (28 < x_L) { - if(old_x == 0) new_pad |= BUTTON_RIGHT; else - { - old_pad |= BUTTON_RIGHT; - R2speed = 6 - x_L/20; - } - } else { - x_L=0; y_L=0; - if(old_pad & BUTTON_R2) { - R2speed = 6 - paddata.PRE_R2/50; - } else R2speed=6; - } - - if((old_pad & BUTTON_LEFT) || (old_pad & BUTTON_RIGHT) || (old_pad & BUTTON_UP) || (old_pad & BUTTON_DOWN)) { - hold_it++; - if(hold_it>30) { - slow_it++; - if(slow_it>R2speed) slow_it=0; - } - } else {slow_it=1; hold_it=0;} - - if(new_pad & BUTTON_CIRCLE) { - while(hold_CIRCLE%30!=0) hold_CIRCLE++; - hold_CIRCLE+=15; - } else - if(old_pad & BUTTON_CIRCLE) { - hold_CIRCLE++; - } else { - if(hold_CIRCLE%30==0) hold_CIRCLE=0; - else hold_CIRCLE--; - } - - if(hold_CIRCLE>90) { - if(Load_GamePIC==YES) end_Load_GamePIC(); - end_load_PIC1(); - end_checking(); + + R2_SyncLeftJoystick(); + + if(HoldCircleDelay()) { + end_Load_GAMEPIC(); + end_load_CURPIC(); sysModuleUnload(SYSMODULE_PNGDEC); sysModuleUnload(SYSMODULE_JPGDEC); ioPadEnd(); exit(0); } - if((old_pad & BUTTON_L3) && (old_pad & BUTTON_R3)) { + if(ComboNewPad(BUTTON_L3, BUTTON_R3)) { sysProcessExitSpawn2("/dev_hdd0/game/MANAGUNZ0/USRDIR/ManaGunZ.self", NULL, NULL, NULL, 0, 64, SYS_PROCESS_SPAWN_STACK_SIZE_128K); } - if(old_pad & BUTTON_R1) Display_PIC1=YES; + if(OldPad(BUTTON_R1)) Display_PIC1=YES; else Display_PIC1=NO; - if(new_pad & BUTTON_CROSS && Game_stuff == YES) { + + if(OldPad(BUTTON_L1)) { + if(NewPad(BUTTON_LEFT)) { + start_MemMonitor(); + } else + if(NewPad(BUTTON_RIGHT)) { + end_MemMonitor(); + } + } + + if(NewPad(BUTTON_CROSS) && Game_stuff == YES) { - if( list_game_platform[position] == _ISO_PS3 || list_game_platform[position] == _JB_PS3 - || list_game_platform[position] == _ISO_PS2 - || list_game_platform[position] == _ISO_PS1 - || list_game_platform[position] == _ISO_PSP - ) { -#ifndef RPCS3 - if(Load_GamePIC==YES) end_Load_GamePIC(); - end_load_PIC1(); - end_checking(); -#endif - + if(can_be_mounted(list_game_platform[position]) ){ start_loading(); - read_game_setting(list_game_title[position]); + read_game_setting(position); u8 mounted = MountGame(list_game_path[position]); end_loading(); + #ifdef RPCS3 if(mounted) show_msg("EXIT !"); + else show_msg("FAILED : EXIT !"); #else if(mounted) { + end_Load_GAMEPIC(); + end_load_CURPIC(); sysModuleUnload(SYSMODULE_PNGDEC); sysModuleUnload(SYSMODULE_JPGDEC); ioPadEnd(); exit(0); - } else { - start_load_PIC1(); - start_checking(); } #endif - - } else show_msg("TODO"); + } else { + show_msg("TODO"); + } } else - if(new_pad & BUTTON_TRIANGLE && Game_stuff == YES) { + + if(NewPad(BUTTON_TRIANGLE) && Game_stuff) { open_GameMenu(); } else - if(new_pad & BUTTON_SELECT) { - Draw_FileExplorer(NULL); + if(NewPad(BUTTON_SELECT)) { + Draw_FileExplorer(); } else - if(new_pad & BUTTON_SQUARE && UI_position!=XMB) { + if(NewPad(BUTTON_SQUARE)) { open_filter(); } else - if(new_pad & BUTTON_START) { + if(NewPad(BUTTON_START)) { open_SETTINGS(); } + + if(UI_position==XMB) { + if(R2pad(BUTTON_LEFT) ) { + if(XMB_H_position > 0) { + XMB_H_position--; + if(XMB_H_position==XMB_COLUMN_PSP && !Show_PSP) XMB_H_position--; + if(XMB_H_position==XMB_COLUMN_PS1 && !Show_PS1) XMB_H_position--; + if(XMB_H_position==XMB_COLUMN_PS2 && !Show_PS2) XMB_H_position--; + if(XMB_H_position==XMB_COLUMN_PS3 && !Show_PS3) XMB_H_position--; + if(XMB_H_position==XMB_COLUMN_FAVORITES && !Only_FAV) XMB_H_position--; + + MOVE_animated=NO; + init_XMB(); + update_XMB_LINES(); + position_CURPIC = -1; + MOVE_animated=YES; + } + } else + if(R2pad(BUTTON_RIGHT)) { + if(XMB_H_position < 5) { + u8 old_XMB_H_position = XMB_H_position; + XMB_H_position++; + if(XMB_H_position==XMB_COLUMN_FAVORITES && !Only_FAV) XMB_H_position++; + if(XMB_H_position==XMB_COLUMN_PS3 && !Show_PS3) XMB_H_position++; + if(XMB_H_position==XMB_COLUMN_PS2 && !Show_PS2) XMB_H_position++; + if(XMB_H_position==XMB_COLUMN_PS1 && !Show_PS1) XMB_H_position++; + if(XMB_H_position==XMB_COLUMN_PSP && !Show_PSP) XMB_H_position=old_XMB_H_position; + + if( old_XMB_H_position != XMB_H_position ) { + MOVE_animated=NO; + init_XMB(); + update_XMB_LINES(); + position_CURPIC = -1; + MOVE_animated=YES; + } + } + } else + if(R2pad(BUTTON_UP)) { + if(XMB_V_position[XMB_H_position] == 0 && XMB_nb_line != 0) { + XMB_V_position[XMB_H_position] = XMB_nb_line; + MOVE_animated=NO; + } + else if(XMB_V_position[XMB_H_position] > 0) XMB_V_position[XMB_H_position]--; + COVER_offset=0; + } else + if(R2pad(BUTTON_DOWN)) { + if(XMB_V_position[XMB_H_position] == XMB_nb_line && XMB_nb_line != 0) { + XMB_V_position[XMB_H_position] = 0; + MOVE_animated=NO; + } else if(XMB_V_position[XMB_H_position] < XMB_nb_line) XMB_V_position[XMB_H_position]++; + COVER_offset=0; + } + } + + if(position < 0) return; + if(UI_position==LIST) { if(R2pad(BUTTON_UP)) { for(i=0; i<=game_number;i++) { @@ -31927,49 +36090,15 @@ void input_MAIN() if(position<0) position=game_number; if(Show_it(position) == YES) break; } - if(position>last_line) { - last_line=position; - j=0; - for(i=last_line; j<=nb_line; i--) { - if(Show_it(i) == NO) continue; - j++; - } - first_line=i+1; - } else - if(positiongame_number) position=0; if(Show_it(position) == YES) break; } - if(position>last_line) { - last_line=position; - j=0; - for(i=last_line; j<=nb_line; i--) { - if(Show_it(i) == NO) continue; - j++; - } - first_line=i+1; - } else - if(position 0) { XMB_H_position--; MOVE_init=NO; } - } else - if(R2pad(BUTTON_RIGHT)) { - if(XMB_H_position < 5) { XMB_H_position++; MOVE_init=NO; } - } else - if(R2pad(BUTTON_UP)) { - if(XMB_V_position[XMB_H_position] == 0 && XMB_nb_line != 0) { - XMB_V_position[XMB_H_position] = XMB_nb_line; - MOVE_init=NO; - } - else if(XMB_V_position[XMB_H_position] > 0) XMB_V_position[XMB_H_position]--; - } else - if(R2pad(BUTTON_DOWN)) { - if(XMB_V_position[XMB_H_position] == XMB_nb_line && XMB_nb_line != 0) { - XMB_V_position[XMB_H_position] = 0; - MOVE_init=NO; - } else if(XMB_V_position[XMB_H_position] < XMB_nb_line) XMB_V_position[XMB_H_position]++; - } - } else if(UI_position==FLOW) { if( (FLOW_inverse_button==NO && R2pad(BUTTON_RIGHT)) || (FLOW_inverse_button==YES && R2pad(BUTTON_LEFT)) ) @@ -32052,7 +36160,7 @@ void input_MAIN() for(k=game_number; k>=0; k--) { if(Show_it(k) == NO) continue; position=k; - MOVE_init=NO; + MOVE_animated=NO; break; } } @@ -32069,23 +36177,24 @@ void input_MAIN() for(k=0; k<=game_number; k++) { if(Show_it(k) == NO) continue; position=k; - MOVE_init=NO; + MOVE_animated=NO; break; } } if(Show_it(position) == YES) break; } } - if( (new_pad & BUTTON_R3) && FLOW_3D) { + if( NewPad(BUTTON_R3) && FLOW_3D) { if(FLOW_ShowBack==YES) FLOW_ShowBack=NO; else FLOW_ShowBack=YES; } - if( (new_pad & BUTTON_L3) && FLOW_3D) { + if( NewPad(BUTTON_L3) && FLOW_3D) { if(FLOW_Zoom==YES) FLOW_Zoom=NO; else FLOW_Zoom=YES; } } + } float DrawTAG(float x, float y, float z, float min_width, float font_height, char *str) @@ -32093,7 +36202,7 @@ float DrawTAG(float x, float y, float z, float min_width, float font_height, cha float w = min_width; - float w_str = GetWidth(str) + 8.0; + float w_str = WidthFromStr(str) + 8.0; while( w_str > w ) w += 4.0; @@ -32110,8 +36219,6 @@ float DrawTAG(float x, float y, float z, float min_width, float font_height, cha return x+w+1; } -#define INPUT_TAG_WIDTH_MIN - void Draw_MAIN_input() { if(MENU==YES) return; @@ -32123,31 +36230,24 @@ void Draw_MAIN_input() float y=INPUT_Y; FontColor(COLOR_1); SetFontZ(0); - + x=DrawButton(x, y, STR_SETTINGS, BUTTON_START); - if(Game_stuff==YES) { + x=DrawButton(x, y, STR_FILTER, BUTTON_SQUARE); + + if(Game_stuff) { x=DrawButton(x, y, STR_GAMEMENU, BUTTON_TRIANGLE); - x=DrawButton(x, y, STR_MOUNTGAME, BUTTON_CROSS); - } - if(UI_position!=XMB) { - x=DrawButton(x, y, STR_FILTER, BUTTON_SQUARE); + if(can_be_mounted(list_game_platform[position])) { + x=DrawButton(x, y, STR_MOUNTGAME, BUTTON_CROSS); + } } x=DrawButton(x, y, STR_FILEMANAGER, BUTTON_SELECT); - - //FontColor(COLOR_4); - //x=DrawFormatString( x+10, y, "%s", STR_HOLD); - FontColor(COLOR_1); - if(hold_CIRCLE) { - DrawProgRing(x+7, y+7.5, 20, ((hold_CIRCLE%30)*100)/30, COLOR_3); - FontColor(COLOR_3); - DrawFormatString(x+10, y-12, "%d", (90 - hold_CIRCLE)/30); - FontColor(COLOR_1); - } - x=DrawButton(x, y, STR_BACKTOXMB, BUTTON_CIRCLE); + x=DrawSpam(x, y); + x=DrawButton(x, y, STR_EXIT, BUTTON_CIRCLE); + x=X_MAX-10-4*tagbox_min_width; y=INPUT_Y; - if(Game_stuff == YES) { + if(Game_stuff) { char tag_str[20]; int t; @@ -32213,10 +36313,9 @@ void Draw_MAIN_input() sscanf(list_game_path[position], "/dev_usb%d%*s" , &t); sprintf(tag_str, "USB%d", t); x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, tag_str); - } else if(is_ntfs(list_game_path[position]) == YES) { - + sscanf(list_game_path[position], "/ntfs%d%*s" , &t); sprintf(tag_str, "NTFS%d", t); x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, tag_str); @@ -32225,88 +36324,67 @@ void Draw_MAIN_input() sprintf(dev, "ntfs%d", t); sprintf(tag_str, "USB%d", NTFS_Test_Device(dev)); x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, tag_str); - } else + if( strstr(list_game_path[position], "/dev_sd") != NULL) { + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "FAT32"); + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "SD"); + } else + if( strstr(list_game_path[position], "/dev_cf") != NULL) { + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "FAT32"); + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "CF"); + } else + if( strstr(list_game_path[position], "/dev_ms") != NULL) { + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "FAT32"); + x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "MS"); + } else if( strstr(list_game_path[position], "/dev_hdd0") != NULL) { x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "UFS2"); x = DrawTAG(x, y, 0, tagbox_min_width, INPUT_SIZE, "HDD0"); } - } + } void Draw_MAIN() { if(MENU==YES && MENU_SIDE == NO) return; - + SetFontZ(10); + + if(position < 0) { + Game_stuff = NO; + DrawFormatString(50, 40, "%s", STR_FILTER_NOGAME); + return; + } - int x, y, i; - iso = is_iso(list_game_path[position]); usb = is_usb(list_game_path[position]); Game_stuff = YES; - if(UI_position==LIST) { - - if(LIST_Show_ICON0 == YES) { - Draw_ICON0(position, 630, 30, 100, 141.3, 75.9); - } - if(Show_COVER == YES) { - Draw_COVER(position, 630, 150, 100, 141.3, 0); - } + if(UI_position==XMB) { - x=50, y=40; - FontColor(COLOR_1); - FontSize(LIST_SizeFont); + if(XMB_H_position == XMB_COLUMN_SETTINGS) Game_stuff = NO; + else Game_stuff = YES; - - nb_line = (460 - y - LIST_SizeFont) / LIST_SizeFont; + init_XMB(); - SetFontZ(105); - - int j=0; + Draw_XMB_COLUMNS(); + update_XMB_COLUMNS(); - for(i=first_line; j <= nb_line; i++) { - if(i>game_number) break; - if(Show_it(i) == NO) continue; - - j++; - - if(i==position) FontColor(COLOR_2); - else FontColor(COLOR_1); - - DrawFormatString(x, y, "%s", list_game_title[i]); - y+=LIST_SizeFont; - } - SetFontZ(10); - last_line=i-1; + Draw_XMB_LINES(); + update_XMB_LINES(); - if(position #include -unsigned temp_pad = 0, new_pad = 0, old_pad = 0; +unsigned temp_pad=0, new_pad = 0, old_pad = 0; padInfo padinfo; padData paddata; @@ -18,8 +18,6 @@ unsigned ps3pad_read() padActParam actparam; - unsigned butt = 0; - pad_alive = 0; sysUtilCheckCallback(); @@ -32,27 +30,14 @@ unsigned ps3pad_read() ioPadGetData(n, &paddata); pad_alive = 1; - butt = (paddata.button[2] << 8) | (paddata.button[3] & 0xff); - - /* Analog stick management */ - // if (paddata.button[6] < 0x10) - // butt |= BUTTON_LEFT; - // else if (paddata.button[6] > 0xe0) - // butt |= BUTTON_RIGHT; - // if (paddata.button[7] < 0x10) - // butt |= BUTTON_UP; - // else if (paddata.button[7] > 0xe0) - // butt |= BUTTON_DOWN; - - // if(butt) pad_last_time = sec; - - break; - + old_pad = (paddata.button[2] << 8) | (paddata.button[3] & 0xff); + + break; } } - if(!pad_alive) butt = 0; + if(!pad_alive) old_pad = 0; else { actparam.small_motor = 0; actparam.large_motor = 0; @@ -80,11 +65,9 @@ unsigned ps3pad_read() ioPadSetActDirect(n, &actparam); } - - temp_pad = butt; - - new_pad = temp_pad & (~old_pad); old_pad = temp_pad; - - -return butt; + + new_pad = old_pad & (~temp_pad); + temp_pad = old_pad; + + return old_pad; } diff --git a/MGZ/source/ps2crc.h b/MGZ/source/ps2crc.h new file mode 100644 index 00000000..ac950f56 --- /dev/null +++ b/MGZ/source/ps2crc.h @@ -0,0 +1,132 @@ +#ifndef __PS2CRC_H__ +#define __PS2CRC_H__ + +/* CRC32 of the 0x1000 first bytes */ + +#define CRC32HWEMU_421C 0xA3654526 +#define CRC32HWEMU_421D 0x32A50076 +#define CRC32HWEMU_425C 0x6C076276 +#define CRC32HWEMU_425D 0xFAB33600 +#define CRC32HWEMU_430C 0xF33CD838 +#define CRC32HWEMU_430D 0xB3B7B7F1 +#define CRC32HWEMU_431C 0x4F10CC1F +#define CRC32HWEMU_431D 0xA7DC40AB +#define CRC32HWEMU_440C 0xC9AC93B1 +#define CRC32HWEMU_440D 0x634E9090 +#define CRC32HWEMU_441C 0x20AA0843 +#define CRC32HWEMU_441D 0x0C027371 +#define CRC32HWEMU_446C 0x86648031 +#define CRC32HWEMU_446D 0x4BA25E5B +#define CRC32HWEMU_450C 0xEE8BE4B1 +#define CRC32HWEMU_450D 0xB864E262 +#define CRC32HWEMU_453C 0x41AFDAF4 +#define CRC32HWEMU_453D 0xBC8E8314 +#define CRC32HWEMU_455C 0xC2DC9A42 +#define CRC32HWEMU_455D 0x039FF44A +#define CRC32HWEMU_460C 0xBAB2F364 +#define CRC32HWEMU_460D 0xF6E23969 +#define CRC32HWEMU_465C 0x816814B5 +#define CRC32HWEMU_465D 0xD7B03AA0 +#define CRC32HWEMU_466C 0x07492F45 +#define CRC32HWEMU_470C 0x21471ACE +#define CRC32HWEMU_470D 0x4AB0AEDE +#define CRC32HWEMU_475C 0x3A9DC0BF +#define CRC32HWEMU_475D 0x2980E9F2 +#define CRC32HWEMU_476C 0x77FE3FF1 +#define CRC32HWEMU_476D 0x0777F840 +#define CRC32HWEMU_478C 0xEECA1109 +#define CRC32HWEMU_478D 0x2EB80EB6 +#define CRC32HWEMU_480C 0x09DE4E03 +#define CRC32HWEMU_480D 0x459C9AA8 +#define CRC32HWEMU_481C 0x94734F4A +#define CRC32HWEMU_481D 0x637B3661 +#define CRC32HWEMU_482C 0x290CE0EF +#define CRC32HWEMU_483C 0x46E2023C +#define CRC32HWEMU_484C 0x163D378B +#define CRC32HWEMU_484D 0x36557E04 + +#define CRC32GXEMU_421C 0xE031E18E +#define CRC32GXEMU_421D 0x513B3FD1 +#define CRC32GXEMU_425C 0xE031E18E +#define CRC32GXEMU_425D 0x5A8E7662 +#define CRC32GXEMU_430C 0xFB037992 +#define CRC32GXEMU_430D 0x42A42FE4 +#define CRC32GXEMU_431C 0xFB037992 +#define CRC32GXEMU_431D 0x51A12BB0 +#define CRC32GXEMU_440C 0x05D516DE +#define CRC32GXEMU_440D 0x97B8EEFC +#define CRC32GXEMU_441C 0x05D516DE +#define CRC32GXEMU_441D 0xC7FC7BC6 +#define CRC32GXEMU_446C 0xB8C82FEF +#define CRC32GXEMU_446D 0x91665679 +#define CRC32GXEMU_450C 0x9143D784 +#define CRC32GXEMU_450D 0xDF547E31 +#define CRC32GXEMU_453C 0xB0EDA8C7 +#define CRC32GXEMU_453D 0x50A08D56 +#define CRC32GXEMU_455C 0x4FAE89F8 +#define CRC32GXEMU_455D 0x76A2A532 +#define CRC32GXEMU_460C 0x4FAE89F8 +#define CRC32GXEMU_460D 0x6B3FE785 +#define CRC32GXEMU_465C 0x4FAE89F8 +#define CRC32GXEMU_465D 0x119A3D71 +#define CRC32GXEMU_466C 0xFB55D4EF +#define CRC32GXEMU_470C 0xFB55D4EF +#define CRC32GXEMU_470D 0x3078C396 +#define CRC32GXEMU_475C 0xFB55D4EF +#define CRC32GXEMU_475D 0xB625FF66 +#define CRC32GXEMU_476C 0xFB55D4EF +#define CRC32GXEMU_476D 0x4EEE1916 +#define CRC32GXEMU_478C 0x0BE22CBC +#define CRC32GXEMU_478D 0x46603734 +#define CRC32GXEMU_480C 0x9C1D118B +#define CRC32GXEMU_480D 0xEC8B06CB +#define CRC32GXEMU_481C 0x9C1D118B +#define CRC32GXEMU_481D 0xE4831F86 +#define CRC32GXEMU_482C 0x9C1D118B +#define CRC32GXEMU_483C 0x9C1D118B +#define CRC32GXEMU_484C 0x9C1D118B +#define CRC32GXEMU_484D 0x0B47F5DA + +#define CRC32NETEMU_421C 0x6CCC9066 +#define CRC32NETEMU_421D 0x4EBC5CFC +#define CRC32NETEMU_425C 0x92764ECC +#define CRC32NETEMU_425D 0xC0D6CB10 +#define CRC32NETEMU_430C 0x1706216E +#define CRC32NETEMU_430D 0x3C32CD48 +#define CRC32NETEMU_431C 0x1706216E +#define CRC32NETEMU_431D 0x9DCDE59F +#define CRC32NETEMU_440C 0xE381D716 +#define CRC32NETEMU_440D 0x69DEF1C8 +#define CRC32NETEMU_441C 0xE381D716 +#define CRC32NETEMU_441D 0x0479D566 +#define CRC32NETEMU_446C 0xFF2422AD +#define CRC32NETEMU_446D 0x78E312D4 +#define CRC32NETEMU_450C 0x83C443DE +#define CRC32NETEMU_450D 0xE47CE92A +#define CRC32NETEMU_453C 0x8E4FDB22 +#define CRC32NETEMU_453D 0xD7434C94 +#define CRC32NETEMU_455C 0xA45EC10D +#define CRC32NETEMU_455D 0xF9981D85 +#define CRC32NETEMU_460C 0xAE408035 +#define CRC32NETEMU_460D 0x59B089DD +#define CRC32NETEMU_465C 0xAE408035 +#define CRC32NETEMU_465D 0x1155E48C +#define CRC32NETEMU_466C 0xAE408035 +#define CRC32NETEMU_470C 0xAE408035 +#define CRC32NETEMU_470D 0xA770520B +#define CRC32NETEMU_475C 0xAE408035 +#define CRC32NETEMU_475D 0x858EF426 +#define CRC32NETEMU_476C 0xAE408035 +#define CRC32NETEMU_476D 0x81CC2B05 +#define CRC32NETEMU_478C 0xFBFF0BB3 +#define CRC32NETEMU_478D 0xB87419D6 +#define CRC32NETEMU_480C 0x93E0EB0B +#define CRC32NETEMU_480D 0x2C10E095 +#define CRC32NETEMU_481C 0x93E0EB0B +#define CRC32NETEMU_481D 0x9AF3BE9A +#define CRC32NETEMU_482C 0x93E0EB0B +#define CRC32NETEMU_483C 0x93E0EB0B +#define CRC32NETEMU_484C 0x93E0EB0B +#define CRC32NETEMU_484D 0x8D7C6589 + +#endif /* __PS2CRC_H__ */ diff --git a/MGZ/source/ps2data.h b/MGZ/source/ps2data.h new file mode 100644 index 00000000..fd664247 --- /dev/null +++ b/MGZ/source/ps2data.h @@ -0,0 +1,253 @@ +#ifndef __PS2DATA_H__ +#define __PS2DATA_H__ + +#include + +#include "ps2hwemu_stage1_421C_bin.h" +#include "ps2hwemu_stage2_421C_bin.h" +#include "ps2gxemu_stage1_421C_bin.h" +#include "ps2gxemu_stage2_421C_bin.h" +#include "ps2netemu_stage2_421C_bin.h" + +#include "ps2hwemu_stage1_421D_bin.h" +#include "ps2hwemu_stage2_421D_bin.h" +#include "ps2gxemu_stage1_421D_bin.h" +#include "ps2gxemu_stage2_421D_bin.h" +#include "ps2netemu_stage2_421D_bin.h" + +#include "ps2hwemu_stage1_425C_bin.h" +#include "ps2hwemu_stage2_425C_bin.h" +#include "ps2gxemu_stage1_425C_bin.h" +#include "ps2gxemu_stage2_425C_bin.h" +#include "ps2netemu_stage2_425C_bin.h" + +#include "ps2hwemu_stage1_425D_bin.h" +#include "ps2hwemu_stage2_425D_bin.h" +#include "ps2gxemu_stage1_425D_bin.h" +#include "ps2gxemu_stage2_425D_bin.h" +#include "ps2netemu_stage2_425D_bin.h" + +#include "ps2hwemu_stage1_430C_bin.h" +#include "ps2hwemu_stage2_430C_bin.h" +#include "ps2gxemu_stage1_430C_bin.h" +#include "ps2gxemu_stage2_430C_bin.h" +#include "ps2netemu_stage2_430C_bin.h" + +#include "ps2hwemu_stage1_430D_bin.h" +#include "ps2hwemu_stage2_430D_bin.h" +#include "ps2gxemu_stage1_430D_bin.h" +#include "ps2gxemu_stage2_430D_bin.h" +#include "ps2netemu_stage2_430D_bin.h" + +#include "ps2hwemu_stage1_431C_bin.h" +#include "ps2hwemu_stage2_431C_bin.h" +#include "ps2gxemu_stage1_431C_bin.h" +#include "ps2gxemu_stage2_431C_bin.h" +#include "ps2netemu_stage2_431C_bin.h" + +#include "ps2hwemu_stage1_431D_bin.h" +#include "ps2hwemu_stage2_431D_bin.h" +#include "ps2gxemu_stage1_431D_bin.h" +#include "ps2gxemu_stage2_431D_bin.h" +#include "ps2netemu_stage2_431D_bin.h" + +#include "ps2hwemu_stage1_440C_bin.h" +#include "ps2hwemu_stage2_440C_bin.h" +#include "ps2gxemu_stage1_440C_bin.h" +#include "ps2gxemu_stage2_440C_bin.h" +#include "ps2netemu_stage2_440C_bin.h" + +#include "ps2hwemu_stage1_440D_bin.h" +#include "ps2hwemu_stage2_440D_bin.h" +#include "ps2gxemu_stage1_440D_bin.h" +#include "ps2gxemu_stage2_440D_bin.h" +#include "ps2netemu_stage2_440D_bin.h" + +#include "ps2hwemu_stage1_441C_bin.h" +#include "ps2hwemu_stage2_441C_bin.h" +#include "ps2gxemu_stage1_441C_bin.h" +#include "ps2gxemu_stage2_441C_bin.h" +#include "ps2netemu_stage2_441C_bin.h" + +#include "ps2hwemu_stage1_441D_bin.h" +#include "ps2hwemu_stage2_441D_bin.h" +#include "ps2gxemu_stage1_441D_bin.h" +#include "ps2gxemu_stage2_441D_bin.h" +#include "ps2netemu_stage2_441D_bin.h" + +#include "ps2hwemu_stage1_446C_bin.h" +#include "ps2hwemu_stage2_446C_bin.h" +#include "ps2gxemu_stage1_446C_bin.h" +#include "ps2gxemu_stage2_446C_bin.h" +#include "ps2netemu_stage2_446C_bin.h" + +#include "ps2hwemu_stage1_446D_bin.h" +#include "ps2hwemu_stage2_446D_bin.h" +#include "ps2gxemu_stage1_446D_bin.h" +#include "ps2gxemu_stage2_446D_bin.h" +#include "ps2netemu_stage2_446D_bin.h" + +#include "ps2hwemu_stage1_450C_bin.h" +#include "ps2hwemu_stage2_450C_bin.h" +#include "ps2gxemu_stage1_450C_bin.h" +#include "ps2gxemu_stage2_450C_bin.h" +#include "ps2netemu_stage2_450C_bin.h" + +#include "ps2hwemu_stage1_450D_bin.h" +#include "ps2hwemu_stage2_450D_bin.h" +#include "ps2gxemu_stage1_450D_bin.h" +#include "ps2gxemu_stage2_450D_bin.h" +#include "ps2netemu_stage2_450D_bin.h" + +#include "ps2hwemu_stage1_453C_bin.h" +#include "ps2hwemu_stage2_453C_bin.h" +#include "ps2gxemu_stage1_453C_bin.h" +#include "ps2gxemu_stage2_453C_bin.h" +#include "ps2netemu_stage2_453C_bin.h" + +#include "ps2hwemu_stage1_453D_bin.h" +#include "ps2hwemu_stage2_453D_bin.h" +#include "ps2gxemu_stage1_453D_bin.h" +#include "ps2gxemu_stage2_453D_bin.h" +#include "ps2netemu_stage2_453D_bin.h" + +#include "ps2hwemu_stage1_455C_bin.h" +#include "ps2hwemu_stage2_455C_bin.h" +#include "ps2gxemu_stage1_455C_bin.h" +#include "ps2gxemu_stage2_455C_bin.h" +#include "ps2netemu_stage2_455C_bin.h" + +#include "ps2hwemu_stage1_455D_bin.h" +#include "ps2hwemu_stage2_455D_bin.h" +#include "ps2gxemu_stage1_455D_bin.h" +#include "ps2gxemu_stage2_455D_bin.h" +#include "ps2netemu_stage2_455D_bin.h" + +#include "ps2hwemu_stage1_460C_bin.h" +#include "ps2hwemu_stage2_460C_bin.h" +#include "ps2gxemu_stage1_460C_bin.h" +#include "ps2gxemu_stage2_460C_bin.h" +#include "ps2netemu_stage2_460C_bin.h" + +#include "ps2hwemu_stage1_460D_bin.h" +#include "ps2hwemu_stage2_460D_bin.h" +#include "ps2gxemu_stage1_460D_bin.h" +#include "ps2gxemu_stage2_460D_bin.h" +#include "ps2netemu_stage2_460D_bin.h" + +#include "ps2hwemu_stage1_465C_bin.h" +#include "ps2hwemu_stage2_465C_bin.h" +#include "ps2gxemu_stage1_465C_bin.h" +#include "ps2gxemu_stage2_465C_bin.h" +#include "ps2netemu_stage2_465C_bin.h" + +#include "ps2hwemu_stage1_465D_bin.h" +#include "ps2hwemu_stage2_465D_bin.h" +#include "ps2gxemu_stage1_465D_bin.h" +#include "ps2gxemu_stage2_465D_bin.h" +#include "ps2netemu_stage2_465D_bin.h" + +#include "ps2hwemu_stage1_466C_bin.h" +#include "ps2hwemu_stage2_466C_bin.h" +#include "ps2gxemu_stage1_466C_bin.h" +#include "ps2gxemu_stage2_466C_bin.h" +#include "ps2netemu_stage2_466C_bin.h" + +#include "ps2hwemu_stage1_470C_bin.h" +#include "ps2hwemu_stage2_470C_bin.h" +#include "ps2gxemu_stage1_470C_bin.h" +#include "ps2gxemu_stage2_470C_bin.h" +#include "ps2netemu_stage2_470C_bin.h" + +#include "ps2hwemu_stage1_470D_bin.h" +#include "ps2hwemu_stage2_470D_bin.h" +#include "ps2gxemu_stage1_470D_bin.h" +#include "ps2gxemu_stage2_470D_bin.h" +#include "ps2netemu_stage2_470D_bin.h" + +#include "ps2hwemu_stage1_475C_bin.h" +#include "ps2hwemu_stage2_475C_bin.h" +#include "ps2gxemu_stage1_475C_bin.h" +#include "ps2gxemu_stage2_475C_bin.h" +#include "ps2netemu_stage2_475C_bin.h" + +#include "ps2hwemu_stage1_475D_bin.h" +#include "ps2hwemu_stage2_475D_bin.h" +#include "ps2gxemu_stage1_475D_bin.h" +#include "ps2gxemu_stage2_475D_bin.h" +#include "ps2netemu_stage2_475D_bin.h" + +#include "ps2hwemu_stage1_476C_bin.h" +#include "ps2hwemu_stage2_476C_bin.h" +#include "ps2gxemu_stage1_476C_bin.h" +#include "ps2gxemu_stage2_476C_bin.h" +#include "ps2netemu_stage2_476C_bin.h" + +#include "ps2hwemu_stage1_476D_bin.h" +#include "ps2hwemu_stage2_476D_bin.h" +#include "ps2gxemu_stage1_476D_bin.h" +#include "ps2gxemu_stage2_476D_bin.h" +#include "ps2netemu_stage2_476D_bin.h" + +#include "ps2hwemu_stage1_478C_bin.h" +#include "ps2hwemu_stage2_478C_bin.h" +#include "ps2gxemu_stage1_478C_bin.h" +#include "ps2gxemu_stage2_478C_bin.h" +#include "ps2netemu_stage2_478C_bin.h" + +#include "ps2hwemu_stage1_478D_bin.h" +#include "ps2hwemu_stage2_478D_bin.h" +#include "ps2gxemu_stage1_478D_bin.h" +#include "ps2gxemu_stage2_478D_bin.h" +#include "ps2netemu_stage2_478D_bin.h" + +#include "ps2hwemu_stage1_480C_bin.h" +#include "ps2hwemu_stage2_480C_bin.h" +#include "ps2gxemu_stage1_480C_bin.h" +#include "ps2gxemu_stage2_480C_bin.h" +#include "ps2netemu_stage2_480C_bin.h" + +#include "ps2hwemu_stage1_480D_bin.h" +#include "ps2hwemu_stage2_480D_bin.h" +#include "ps2gxemu_stage1_480D_bin.h" +#include "ps2gxemu_stage2_480D_bin.h" +#include "ps2netemu_stage2_480D_bin.h" + +#include "ps2hwemu_stage1_481C_bin.h" +#include "ps2hwemu_stage2_481C_bin.h" +#include "ps2gxemu_stage1_481C_bin.h" +#include "ps2gxemu_stage2_481C_bin.h" +#include "ps2netemu_stage2_481C_bin.h" + +#include "ps2hwemu_stage1_481D_bin.h" +#include "ps2hwemu_stage2_481D_bin.h" +#include "ps2gxemu_stage1_481D_bin.h" +#include "ps2gxemu_stage2_481D_bin.h" +#include "ps2netemu_stage2_481D_bin.h" + +#include "ps2hwemu_stage1_482C_bin.h" +#include "ps2hwemu_stage2_482C_bin.h" +#include "ps2gxemu_stage1_482C_bin.h" +#include "ps2gxemu_stage2_482C_bin.h" +#include "ps2netemu_stage2_482C_bin.h" + +#include "ps2hwemu_stage1_483C_bin.h" +#include "ps2hwemu_stage2_483C_bin.h" +#include "ps2gxemu_stage1_483C_bin.h" +#include "ps2gxemu_stage2_483C_bin.h" +#include "ps2netemu_stage2_483C_bin.h" + +#include "ps2hwemu_stage1_484C_bin.h" +#include "ps2hwemu_stage2_484C_bin.h" +#include "ps2gxemu_stage1_484C_bin.h" +#include "ps2gxemu_stage2_484C_bin.h" +#include "ps2netemu_stage2_484C_bin.h" + +#include "ps2hwemu_stage1_484D_bin.h" +#include "ps2hwemu_stage2_484D_bin.h" +#include "ps2gxemu_stage1_484D_bin.h" +#include "ps2gxemu_stage2_484D_bin.h" +#include "ps2netemu_stage2_484D_bin.h" + + +#endif /* __PS2DATA_H__ */ diff --git a/MGZ/source/ps2gen.c b/MGZ/source/ps2gen.c index f424d655..c506a298 100644 --- a/MGZ/source/ps2gen.c +++ b/MGZ/source/ps2gen.c @@ -392,10 +392,10 @@ int Search_Offset(char *elf_p, uint8_t type) } else if(type == GX) { - uint8_t payload_addr_FLAG[0x1C] = {0x79, 0x29, 0x80, 0x00, 0x7D, 0x20, 0x01, 0x64, 0x55, 0x60, 0x06, 0x3C, 0x4B, 0xFF, 0xFF, 0x8C, 0x38, 0x60, 0x00, 0x01, 0x4B, 0xFB, 0x32, 0x85, 0x60, 0x00, 0x00, 0x00}; + uint8_t payload_addr_FLAG[0x14] = {0x79, 0x29, 0x80, 0x00, 0x7D, 0x20, 0x01, 0x64, 0x55, 0x60, 0x06, 0x3C, 0x4B, 0xFF, 0xFF, 0x8C, 0x38, 0x60, 0x00, 0x01}; int n; for(n=0x10000; nxt) { + // xt=j; + // break; + // } + // } + // continue; +// } + #define UX 30 #define UY 24 - -int display_ttf_string(int posx, int posy, char *string, u32 color, u32 bkcolor, int sw, int sh) +int display_ttf_line(int line, int posx, int posy, char *string, u32 color, u32 bkcolor, int sw, int sh) { int l,n, m, ww, ww2; u8 colorc; @@ -317,11 +327,13 @@ int display_ttf_string(int posx, int posy, char *string, u32 color, u32 bkcolor, int lenx = 0; + int c_line = 0; + while(*ustring) { - if(posy >= Win_H_ttf) break; + if(Win_H_ttf <= posy && line!=-1) break; - if(*ustring == 32 || *ustring == 9) {posx += sw>>1; ustring++; continue;} + if(*ustring == 32) {posx += sw>>1; ustring++; continue;} //space if(*ustring & 128) { m = 1; @@ -353,15 +365,22 @@ int display_ttf_string(int posx, int posy, char *string, u32 color, u32 bkcolor, } else { if(Win_flag & WIN_DOUBLE_LF) { if(ttf_char == '\r') {if(posx > lenx) lenx = posx; posx = 0;continue;} - if(ttf_char == '\n') {posy += sh;continue;} + if(ttf_char == '\n') {if(line<=c_line) posy += sh; c_line++; continue;} } else { - if(ttf_char == '\n') {if(posx > lenx) lenx = posx; posx = 0;posy += sh;continue;} - } + if(ttf_char == '\r') continue; + if(ttf_char == '\n') {if(posx > lenx) lenx = posx; posx = 0; if(line<=c_line) posy += sh; c_line++; continue;} + if(ttf_char == '\t') { + float j; + for(j=0; j < Win_W_ttf; j+=30) { + if(posx Win_W_ttf) { - posx = 0; - posy += sh; - } - + u32 ccolor = color; u32 cx =(ttf_font_datas[l].width * sw / 32) + 1; - + + if(line==-1) ccolor=0; else + if(c_line Win_W_ttf || (posy + sh) > Win_H_ttf ) ccolor = 0; - - if(ccolor) + if(Win_W_ttf <= (posx + cx) || Win_H_ttf <= posy) ccolor=0; + + if(ccolor) { + tiny3d_SetTextureWrap(0, tiny3d_TextureOffset(bitmap), 32, + 32, 32 * 2, + TINY3D_TEX_FORMAT_A4R4G4B4, TEXTWRAP_CLAMP, TEXTWRAP_CLAMP,1); + DrawBox_ttf((float) (Win_X_ttf + posx), (float) (Win_Y_ttf + posy) + ((float) ttf_font_datas[l].y_start * sh) * 0.03125f, Z_ttf, (float) sw, (float) sh, bkcolor); DrawTextBox_ttf((float) (Win_X_ttf + posx), (float) (Win_Y_ttf + posy) + ((float) ttf_font_datas[l].y_start * sh) * 0.03125f, Z_ttf, (float) sw, (float) sh, color, 0.99f, 0.99f); - + } + posx+= cx; - - } - - Y_ttf = (float) posy + sh; + + if(posx < lenx) posx = lenx; + if(line==-1) return c_line; + + return posx; +} - if(posx < lenx) posx = lenx; - return posx; - +int display_ttf_string(int posx, int posy, char *string, u32 color, u32 bkcolor, int sw, int sh) +{ + return display_ttf_line(0, posx, posy, string, color, bkcolor, sw, sh); } \ No newline at end of file diff --git a/MGZ/source/ttf_render.h b/MGZ/source/ttf_render.h index 59b6daeb..64961fa4 100644 --- a/MGZ/source/ttf_render.h +++ b/MGZ/source/ttf_render.h @@ -34,5 +34,9 @@ extern float Z_ttf; int display_ttf_string(int posx, int posy, char *string, u32 color, u32 bkcolor, int sw, int sh); +// It display the string from the line. +// With line -1 don´t display and refrest/calculate the total number of lines. + +int display_ttf_line(int line, int posx, int posy, char *string, u32 color, u32 bkcolor, int sw, int sh); #endif diff --git a/Makefile b/Makefile index 4080b13f..c8dea982 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ include $(PSL1GHT)/ppu_rules # FileManger : "FILEMANAGER=1 make pkg" # FileManager for rpcs3 : "FILEMANAGER=1 RPCS3=1 make pkg" # -# Note : RPCS3 doesn't support "opendir" on the system root +# Note : RPCS3 doesn't support "opendir" on system root : "/" #--------------------------------------------------------------------------------- #--------------------------------------------------------------------------------- @@ -34,7 +34,7 @@ PKGFILES1 := $(CURDIR)/pkgfiles PKGFILES2 := $(CURDIR)/pkgfiles2 SFOXML := sfo.xml -VERSION := 1.35 +VERSION := 1.36 ifeq ($(FILEMANAGER), 1) PKGFILES := $(PKGFILES2) @@ -147,29 +147,7 @@ $(BUILD): @[ -d $@ ] || mkdir -p $@ @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile ifeq ($(FILEMANAGER), 1) - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/ALL.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/CIRCLE.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/CROSS.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/DOWN.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/FILES.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/FOLDER.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/L.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/R.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/L1.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/R1.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/L2.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/R2.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/L3.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/R3.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/LEFT.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/NOT.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/RIGHT.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/SELECT.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/SQUARE.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/START.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/TRIANGLE.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/TVTEST.PNG $(PKGFILES2)/USRDIR/GUI/common - @cp -fr $(PKGFILES1)/USRDIR/GUI/common/UP.PNG $(PKGFILES2)/USRDIR/GUI/common + @cp -fr $(PKGFILES1)/USRDIR/GUI/common $(PKGFILES2)/USRDIR/GUI @cp -fr $(PKGFILES1)/USRDIR/GUI/colorset.ini $(PKGFILES2)/USRDIR/GUI @cp -fr $(PKGFILES1)/USRDIR/sys/data $(PKGFILES2)/USRDIR/sys @cp -fr $(PKGFILES1)/USRDIR/sys/loc $(PKGFILES2)/USRDIR/sys @@ -189,7 +167,6 @@ small_clean: @rm -fr MGZ/build/main.o #--------------------------------------------------------------------------------- - clean: @echo clean ... @rm -fr $(BUILD) *.elf *.self *.pkg @@ -201,28 +178,27 @@ clean: @$(MAKE) clean -C MGZ/lib/libiconv --no-print-directory @$(MAKE) clean -C MGZ/lib/libntfs_ext --no-print-directory @$(MAKE) clean -C payloads/MAMBA --no-print-directory + @$(MAKE) clean -C payloads/PS2_EMU --no-print-directory + @$(MAKE) clean -C payloads/rawseciso --no-print-directory @rm -fr $(PKGFILES1)/USRDIR/$(TARGET).self - @rm -fr $(PKGFILES2)/USRDIR/$(TARGET).self @rm -fr $(PKGFILES2)/USRDIR #--------------------------------------------------------------------------------- -payload: - cd OffsetFinder; ./OffsetFinder.exe - @cp -f OffsetFinder/firmware_symbols.h payloads/SKY/firmware_symbols.h; - @cp -f OffsetFinder/common.h MGZ/source/common.h - @cp -f OffsetFinder/symbols.h payloads/MAMBA/lv2/include/lv2/symbols.h +update: + cd OffsetFinder; ./OffsetFinder.exe search + cd OffsetFinder; ./OffsetFinder.exe move @$(MAKE) -C payloads/SKY --no-print-directory @$(MAKE) clean -C payloads/MAMBA --no-print-directory @$(MAKE) all -C payloads/MAMBA --no-print-directory @$(MAKE) loader -C payloads/MAMBA --no-print-directory - mv -f payloads/MAMBA/mamba_*.lz.bin MGZ/data - mv -f payloads/MAMBA/mamba_loader_*.bin MGZ/data + @mv -f payloads/MAMBA/mamba_*.lz.bin MGZ/data + @mv -f payloads/MAMBA/mamba_loader_*.bin MGZ/data + @$(MAKE) all -C payloads/PS2_EMU --no-print-directory + @mv -f payloads/PS2_EMU/BIN/*.bin MGZ/data + @$(MAKE) -C payloads/rawseciso --no-print-directory + @mv -f payloads/rawseciso/rawseciso.sprx $(PKGFILES)/USRDIR/sys/sprx_iso #--------------------------------------------------------------------------------- -sprx_iso: - $(MAKE) -C payloads/rawseciso --no-print-directory - @cp -f payloads/rawseciso/rawseciso.sprx $(PKGFILES)/USRDIR/sys/sprx_iso -#--------------------------------------------------------------------------------- lib: $(MAKE) -C MGZ/lib/cobra --no-print-directory @mv -f MGZ/lib/cobra/libcobra.a MGZ/lib/libcobra.a diff --git a/OffsetFinder/GetFlash.exe b/OffsetFinder/GetFlash.exe new file mode 100644 index 0000000000000000000000000000000000000000..e22a91b077385867becdb31b7cb179ec2e6d7d66 GIT binary patch literal 191488 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ᛮ(s_sKMCX%^qS;W^~@fn0LjlM1SoX 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 q_R0*7@DtYc9>8) | ((x) << 8)) #define SWAP32(x) ((((x) & 0xff) << 24) | (((x) & 0xff00) << 8) | (((x) & 0xff0000) >> 8) | (((x) >> 24) & 0xff)) +#define warning(x) "## Warning: "x"\n" +#define error(x) "## Error: "x"\n" + +char *PWD; + typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u32; @@ -113,6 +118,13 @@ static uint64_t swap64(uint64_t data) return ret; } +void Extract(char *self_path) +{ + char temp[512]; + sprintf(temp, "scetool -d %s/%s %s/temp_dec", PWD, self_path, PWD); + system(temp); +} + uint64_t hash(char *self_path, uint8_t section, uint8_t mode) { FILE *f; @@ -134,9 +146,7 @@ uint64_t hash(char *self_path, uint8_t section, uint8_t mode) fread(self_buf, 1, 256*1024, f); fclose(f); - char sce_decrypt[255]; - sprintf(sce_decrypt, "scetool -d %s temp_dec", self_path); - system(sce_decrypt); + Extract(self_path); f = fopen("temp_dec", "rb"); if (!f) @@ -239,9 +249,907 @@ uint8_t compare(u8 ignore, char *mem, char *flag, u32 size) return 1; } -int main() +int PS2_CRC() +{ + char temp[255]; + char str[255]; + + u32 memsize=0x1000; + + DIR *d; + struct dirent* ent = NULL; + + FILE *ps2crc = fopen("ps2crc.h", "w"); + if(ps2crc==NULL) return 0; + + fputs("#ifndef __PS2CRC_H__\n", ps2crc); + fputs("#define __PS2CRC_H__\n\n", ps2crc); + + sprintf(temp, "/* CRC32 of the 0x%X first bytes */\n\n", memsize); fputs(temp, ps2crc); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory flash not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + //sprintf(temp, "../payloads/PS2_EMU/BIN/ps2hwemu_stage2_%s.bin", ent->d_name); + //if(exist(temp)==0) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_emu.self", ent->d_name); + + FILE *self = fopen(temp, "rb"); + u8 *mem = (u8*) malloc(memsize); + fread(mem, memsize, 1, self); + fclose(self); + + u32 crc = crc32(0L, Z_NULL, 0); + crc = crc32(crc, (const unsigned char*) mem, memsize); + sprintf(str, "#define CRC32HWEMU_%s 0x%08lX\n", ent->d_name, crc); fputs(str, ps2crc); + free(mem); + } + closedir(d); + + fputs("\n", ps2crc); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory flash not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + //sprintf(temp, "../payloads/PS2_EMU/BIN/ps2gxemu_stage2_%s.bin", ent->d_name); + //if(exist(temp)==0) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_gxemu.self", ent->d_name); + + FILE *self = fopen(temp, "rb"); + u8 *mem = (u8*) malloc(memsize); + fread(mem, memsize, 1, self); + fclose(self); + + u32 crc = crc32(0L, Z_NULL, 0); + crc = crc32(crc, (const unsigned char*) mem, memsize); + sprintf(str, "#define CRC32GXEMU_%s 0x%08lX\n", ent->d_name, crc); fputs(str, ps2crc); + free(mem); + } + closedir(d); + + fputs("\n", ps2crc); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory flash not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_netemu.self", ent->d_name); + + FILE *self = fopen(temp, "rb"); + u8 *mem = (u8*) malloc(memsize); + fread(mem, memsize, 1, self); + fclose(self); + + u32 crc = crc32(0L, Z_NULL, 0); + crc = crc32(crc, (const unsigned char*) mem, memsize); + sprintf(str, "#define CRC32NETEMU_%s 0x%08lX\n", ent->d_name, crc); fputs(str, ps2crc); + free(mem); + } + closedir(d); + + fputs("\n#endif /* __PS2CRC_H__ */\n", ps2crc); + + fclose(ps2crc); + + return 0; +} + +int PS2_SearchOffsets() { + char temp[2048]; + char str[2048]; + FILE *elf; + FILE *sym; + FILE *fw; + FILE *ps2vers; + FILE *ps2data; + DIR *d; + struct dirent* ent = NULL; + + ps2data = fopen("ps2data.h", "w"); + sym = fopen("ps2symbols.h", "wb"); + ps2vers = fopen("ps2vers.c", "w"); + fw = fopen("FIRMWARES", "a"); + + fputs("\n\ +#include \"ps2vers.h\"\n\ +\n\ +#define SUCCESS 1\n\ +#define FAILED 0\n\ +\n\ +u8 get_hwemu(u32 crc, u8 **stage1, u32 *stage1_size, u8 **stage2, u32 *stage2_size)\n\ +{\n", ps2vers); + + + fputs("\nPS2_PAYLOADS := ", fw); + + fputs("#ifndef __PS2EMU_SYMBOLS_H_S__\n", sym); + fputs("#define __PS2EMU_SYMBOLS_H_S__\n\n", sym); + + fputs("#ifndef __PS2DATA_H__\n", ps2data); + fputs("#define __PS2DATA_H__\n\n", ps2data); + fputs("#include \n\n", ps2data); + +// ps2_emu + + fputs("#ifdef PS2HWEMU\n\n", sym); + + fputs("\t#define DATA_TOC_OFFSET -0x7358\n", sym); + fputs("\t#define DATA_SUBTOC_OFFSET 0x20\n", sym); + fputs("\t#define LPAR_SUBTOC_OFFSET 0x18\n", sym); + fputs("\t#define FILESZ_TOC_OFFSET -0x63E0\n", sym); + + fputs("\n", sym); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory ps2emu not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + + sprintf(str, "%s ", ent->d_name); fputs(str, fw); + + sprintf(temp, "#include \"ps2hwemu_stage1_%s_bin.h\"\n", ent->d_name); fputs(temp, ps2data); + sprintf(temp, "#include \"ps2hwemu_stage2_%s_bin.h\"\n", ent->d_name); fputs(temp, ps2data); + sprintf(temp, "#include \"ps2gxemu_stage1_%s_bin.h\"\n", ent->d_name); fputs(temp, ps2data); + sprintf(temp, "#include \"ps2gxemu_stage2_%s_bin.h\"\n", ent->d_name); fputs(temp, ps2data); + sprintf(temp, "#include \"ps2netemu_stage2_%s_bin.h\"\n\n", ent->d_name); fputs(temp, ps2data); + + + sprintf(str, "\n\ + if(crc == CRC32HWEMU_%s) {\n\ + *stage1_size = (uint32_t) ps2hwemu_stage1_%s_bin_size;\n\ + *stage1 = (uint8_t *) ps2hwemu_stage1_%s_bin;\n\ + *stage2_size = (uint32_t) ps2hwemu_stage2_%s_bin_size;\n\ + *stage2 = (uint8_t *) ps2hwemu_stage2_%s_bin;\n\ + } else ", ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name); + fputs(str, ps2vers); + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_emu.self", ent->d_name); + Extract(temp); + + u32 elf_size = 0; + + elf = fopen("temp_dec", "rb"); + if(elf==NULL) { + printf(error("cannot open ps2_emu.elf %s\n"), ent->d_name); + continue; + } + fseek (elf , 0 , SEEK_END); + elf_size = ftell(elf); + fseek(elf, 0, SEEK_SET); + + char *elf_data = (char*) malloc (sizeof(char)*elf_size); + if (elf_data == NULL) { + printf(error("cannot malloc ps2_emu.self %s\n"), ent->d_name); + fclose(elf); + continue; + } + fread(elf_data,1,elf_size, elf); + fclose(elf); + + system("del temp_dec"); + + sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); + + u64 DISC_SIZE_OFFSET=0; + u64 DISC_TYPE_OFFSET=0; + + u64 TOC=0; + + u64 cdvd_send_atapi_command_symbol=0; + + u64 ufs_open_symbol=0; + u64 ufs_close_symbol=0; + u64 ufs_read_symbol=0; + u64 ufs_write_symbol=0; + u64 ufs_fstat_symbol=0; + + u64 zeroalloc_symbol=0; + u64 malloc_symbol=0; + u64 free_symbol=0; + + u64 memcpy_symbol=0; + u64 memset_symbol=0; + u64 strcpy_symbol=0; + u64 strcat_symbol=0; + u64 strlen_symbol=0; + + u64 vuart_read_symbol=0; + u64 vuart_write_symbol=0; + + u64 ps2_disc_auth_symbol=0; + u64 ps2_disc_auth_caller_symbol=0; + + u64 overwritten_symbol=0; + + u8 DISC_SIZE_OFFSET_FLAG[0x10] = {0xE8, 0xFD, 0x00, 0x20, 0x83, 0xA7, 0x00, 0x00, 0x39, 0x5D, 0x00, 0x01, 0x91, 0x56, 0x00, 0x00}; + u8 DISC_TYPE_OFFSET_FLAG[0x10] = {0x38, 0x00, 0x00, 0x2B, 0x9B, 0x81, 0x00, 0x93, 0x7B, 0xEB, 0x46, 0x02, 0x9A, 0xE1, 0x00, 0x94}; + + u8 cdvd_send_atapi_command_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x51, 0x7D, 0x68, 0x02, 0xA6, 0xFB, 0x61, 0x00, 0x88, 0x7C, 0x9B, 0x23, 0x78}; + + u8 ufs_open_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x31, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x01, 0x00, 0x90, 0x7C, 0x98, 0x23, 0x78}; + u8 ufs_close_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x6B, 0x1B, 0x78}; + u8 ufs_read_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x08, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0x7C, 0x8A, 0x23, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x6B, 0x1B, 0x78}; //+8 + u8 ufs_write_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x01, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0x7C, 0x8A, 0x23, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x6B, 0x1B, 0x78}; //+8 + u8 ufs_fstat_symbol_FLAG[0x10] = {0x7C, 0x88, 0x23, 0x78, 0xE9, 0x22, 0x9C, 0x18, 0x7C, 0x6A, 0x1B, 0x78, 0x38, 0x80, 0x00, 0x40}; + + u8 zeroalloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xA1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0xA0, 0x7C, 0x7D, 0x1B, 0x78, 0x4B, 0xFF, 0xFF, 0x01, 0x7C, 0x7C, 0x1B, 0x78}; + u8 malloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x7F, 0x1B, 0x78, 0xE9, 0x22, 0xCD, 0x40, 0xE8, 0x09, 0x00, 0x00, 0x2F, 0xA0, 0x00, 0x00}; + u8 free_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x91, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x48, 0x00, 0x1B, 0xD5}; + + u8 memcpy_symbol_FLAG[0x10] = {0x7F, 0xA3, 0x20, 0x00, 0x7C, 0x8A, 0x23, 0x78, 0x4D, 0x9E, 0x00, 0x20, 0x7C, 0x24, 0x18, 0x40}; + u8 memset_symbol_FLAG[0x10] = {0x2B, 0xA5, 0x00, 0x07, 0x78, 0x84, 0x06, 0x20, 0x7C, 0x69, 0x1B, 0x78, 0x7C, 0xC3, 0x2A, 0x14}; + u8 strcpy_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x04, 0x00, 0x00, 0x38, 0x84, 0x00, 0x01, 0x2F, 0xA0, 0x00, 0x00}; + u8 strcat_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x03, 0x00, 0x00, 0x48, 0x00, 0x00, 0x08, 0x8C, 0x09, 0x00, 0x01}; + u8 strlen_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x09, 0x00, 0x00, 0x48, 0x00, 0x00, 0x08, 0x8C, 0x03, 0x00, 0x01}; + + u8 vuart_read_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x03, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x83, 0x23, 0x78}; //+8 + u8 vuart_write_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x83, 0x23, 0x78}; //+8 + + u8 ps2_disc_auth_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFE, 0xE1, 0x7C, 0xE8, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0xE8, 0x7C, 0x79, 0x1B, 0x78}; + u8 ps2_disc_auth_caller_symbol_FLAG[0x10] = {0x38, 0xC0, 0xFF, 0xFF, 0x7C, 0xE8, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x81, 0x78, 0xC5, 0x00, 0x20}; + + u8 overwritten_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xE8, 0x62, 0x8D, 0x68, 0xF8, 0x21, 0xFE, 0xE1, 0xFA, 0xA1, 0x00, 0xC8}; + + u64 n, i; + + for(n=0; n < elf_size ; n++) { + + u64 value = 0; + + memcpy(&value, &elf_data[n], 8); + value = reverse64(value); + + if(TOC==0) + if( 0 < value && value < elf_size) { + for(i=0; i<=30; i++) { + if(!memcmp((char *) &elf_data[n], (char *) &elf_data[n+0x18*i], 8)) + { + if(i==30) TOC = value; + } else break; + } + } + + if(DISC_SIZE_OFFSET==0) + if(!memcmp((char *) &elf_data[n], (char *) DISC_SIZE_OFFSET_FLAG, 0x10)) { + DISC_SIZE_OFFSET = n - 0x10000; + } + if(DISC_TYPE_OFFSET==0) + if(!memcmp((char *) &elf_data[n], (char *) DISC_TYPE_OFFSET_FLAG, 0x10)) { + DISC_TYPE_OFFSET = n - 0x10000; + } + if(cdvd_send_atapi_command_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_atapi_command_symbol_FLAG, 0x10)) { + cdvd_send_atapi_command_symbol = n - 0x10000; + } + if(ufs_open_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { + ufs_open_symbol = n - 0x10000; + } + if(ufs_close_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x10)) { + ufs_close_symbol = n - 0x10000; + } + if(ufs_read_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x20)) { + ufs_read_symbol = n + 8 - 0x10000; + } + if(ufs_write_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { + ufs_write_symbol = n + 8 - 0x10000; + } + if(ufs_fstat_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x10)) { + ufs_fstat_symbol = n - 0x10000; + } + if(zeroalloc_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) zeroalloc_symbol_FLAG, 0x20)) { + zeroalloc_symbol = n - 0x10000; + } + if(malloc_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) malloc_symbol_FLAG, 0x20)) { + malloc_symbol = n - 0x10000; + } + if(free_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) free_symbol_FLAG, 0x10)) { + free_symbol = n - 0x10000; + } + if(memcpy_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x10)) { + memcpy_symbol = n - 0x10000; + } + if(memset_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x10)) { + memset_symbol = n - 0x10000; + } + if(strcpy_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { + strcpy_symbol = n - 0x10000; + } + if(strcat_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { + strcat_symbol = n - 0x10000; + } + if(strlen_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { + strlen_symbol = n - 0x10000; + } + if(vuart_read_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) vuart_read_symbol_FLAG, 0x20)) { + vuart_read_symbol = n + 8 - 0x10000; + } + if(vuart_write_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) vuart_write_symbol_FLAG, 0x20)) { + vuart_write_symbol = n + 8 - 0x10000; + } + if(ps2_disc_auth_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_symbol_FLAG, 0x10)) { + ps2_disc_auth_symbol = n - 0x10000; + } + if(ps2_disc_auth_caller_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_caller_symbol_FLAG, 0x10)) { + ps2_disc_auth_caller_symbol = n - 0x10000; + } + if(overwritten_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) overwritten_symbol_FLAG, 0x10)) { + overwritten_symbol = n - 0x10000; + } + + if(TOC) + if(DISC_SIZE_OFFSET) + if(DISC_TYPE_OFFSET) + if(cdvd_send_atapi_command_symbol) + if(ufs_open_symbol) + if(ufs_close_symbol) + if(ufs_read_symbol) + if(ufs_write_symbol) + if(ufs_fstat_symbol) + if(zeroalloc_symbol) + if(malloc_symbol) + if(free_symbol) + if(memcpy_symbol) + if(memset_symbol) + if(strcpy_symbol) + if(strcat_symbol) + if(strlen_symbol) + if(vuart_read_symbol) + if(vuart_write_symbol) + if(ps2_disc_auth_symbol) + if(ps2_disc_auth_caller_symbol) + if(overwritten_symbol) + break; + + } + + sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); + sprintf(str, "\t\t#define DISC_SIZE_OFFSET 0x%llX\n", DISC_SIZE_OFFSET); fputs(str, sym); + sprintf(str, "\t\t#define DISC_TYPE_OFFSET 0x%llX\n", DISC_TYPE_OFFSET); fputs(str, sym); + sprintf(str, "\t\t#define cdvd_send_atapi_command_symbol 0x%llX\n", cdvd_send_atapi_command_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define zeroalloc_symbol 0x%llX\n", zeroalloc_symbol); fputs(str, sym); + sprintf(str, "\t\t#define malloc_symbol 0x%llX\n", malloc_symbol); fputs(str, sym); + sprintf(str, "\t\t#define free_symbol 0x%llX\n", free_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); + sprintf(str, "\t\t#define vuart_read_symbol 0x%llX\n", vuart_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define vuart_write_symbol 0x%llX\n", vuart_write_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ps2_disc_auth_symbol 0x%llX\n", ps2_disc_auth_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ps2_disc_auth_caller_symbol 0x%llX\n", ps2_disc_auth_caller_symbol); fputs(str, sym); + sprintf(str, "\t\t#define overwritten_symbol 0x%llX\n", overwritten_symbol); fputs(str, sym); + + fputs("\t\t#define stage1_addr overwritten_symbol\n", sym); + fputs("\t\t#define stage2_addr 0x021f0000\n", sym); + + fputs("\t#endif /* FIRMWARE */\n\n", sym); + + free(elf_data); + } + closedir(d); + + fputs("\n", fw); + fclose(fw); + + fputs(" return FAILED;\n\ +\n\ + return SUCCESS;\n\ +}\n\ +\n\ +u8 get_gxemu(u32 crc, u8 **stage1, u32 *stage1_size, u8 **stage2, u32 *stage2_size)\n\ +{\n", ps2vers); + + fputs("#endif /* PS2HWEMU */\n\n", sym); + +// ps2_gxemu + + fputs("#ifdef PS2GXEMU\n\n", sym); + + fputs("\t#define DATA_TOC_OFFSET -0x5B00\n", sym); + fputs("\t#define LPAR_TOC_OFFSET -0x5BC8\n", sym); + fputs("\t#define FILESZ_TOC_OFFSET -0xE68\n\n", sym); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory ps2emu not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + + sprintf(str, "\n\ + if(crc == CRC32GXEMU_%s) {\n\ + *stage1_size = (uint32_t) ps2gxemu_stage1_%s_bin_size;\n\ + *stage1 = (uint8_t *) ps2gxemu_stage1_%s_bin;\n\ + *stage2_size = (uint32_t) ps2gxemu_stage2_%s_bin_size;\n\ + *stage2 = (uint8_t *) ps2gxemu_stage2_%s_bin;\n\ + } else ", ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name); + fputs(str, ps2vers); + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_gxemu.self", ent->d_name); + Extract(temp); + + u32 elf_size = 0; + + elf = fopen("temp_dec", "rb"); + if(elf==NULL) { + printf(error("cannot open ps2_gxemu.elf %s\n"), ent->d_name); + continue; + } + fseek (elf , 0 , SEEK_END); + elf_size = ftell (elf); + fseek(elf, 0, SEEK_SET); + + char *elf_data = (char*) malloc (sizeof(char)*elf_size); + if (elf_data == NULL) { + printf(error("cannot malloc ps2_gxemu.self %s\n"), ent->d_name); + fclose(elf); + continue; + } + fread(elf_data,1,elf_size, elf); + fclose(elf); + + system("del temp_dec"); + + sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); + + u64 TOC=0; + u64 cdvd_read_symbol=0; + u64 cdvd_send_atapi_command_symbol=0; + u64 cdvd_send_device_command_symbol=0; + u64 ufs_open_symbol=0; + u64 ufs_close_symbol=0; + u64 ufs_read_symbol=0; + u64 ufs_write_symbol=0; + u64 ufs_fstat_symbol=0; + u64 zeroalloc_symbol=0; + u64 malloc_symbol=0; + u64 free_symbol=0; + u64 memcpy_symbol=0; + u64 memset_symbol=0; + u64 strcpy_symbol=0; + u64 strcat_symbol=0; + u64 strlen_symbol=0; + u64 vuart_read_symbol=0; + u64 vuart_write_symbol=0; + u64 ps2_disc_auth_symbol=0; + u64 ps2_disc_auth_caller_symbol=0; + u64 overwritten_symbol=0; + u64 stage2_addr=0; + + u8 cdvd_read_symbol_FLAG[0x10] = {0x2B, 0x84, 0xFF, 0xFF, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x71, 0xFB, 0xA1, 0x00, 0x78}; + u8 cdvd_send_atapi_command_symbol_FLAG[0x20] = {0x2C, 0x23, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x81, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0xBF, 0x2B, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x41, 0xC2, 0x01, 0x6C, 0xE9, 0x62, 0xA4, 0xA8}; + u8 cdvd_send_device_command_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x64, 0x1B, 0x78}; + u8 ufs_open_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x41, 0xFA, 0xC1, 0x00, 0x70, 0x7C, 0x96, 0x23, 0x78}; + u8 ufs_close_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x7F, 0x1B, 0x78, 0xFB, 0xC1, 0x00, 0x70, 0xF8, 0x01, 0x00, 0x90, 0x7D, 0x60, 0x00, 0xA6, 0x79, 0x60, 0x80, 0x42}; + u8 ufs_read_symbol_FLAG[0x10] = {0x7D, 0x20, 0x01, 0x64, 0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6}; // +8 + u8 ufs_write_symbol_FLAG[0x20] = {0x38, 0x21, 0x00, 0x90, 0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0x7C, 0xDC, 0x33, 0x78, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0xBD, 0x2B, 0x78}; // +8 + u8 ufs_fstat_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xC1, 0x00, 0x70, 0x7C, 0x7E, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x9F, 0x23, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7D, 0x60, 0x00, 0xA6}; + u8 zeroalloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xA1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0xA0, 0x7C, 0x7D, 0x1B, 0x78, 0x4B, 0xFF, 0xFF, 0x89, 0x7C, 0x7C, 0x1B, 0x78}; + u8 malloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x7F, 0x1B, 0x78, 0xE9, 0x62, 0xE0, 0xB0, 0xE8, 0x0B, 0x00, 0x00, 0x2F, 0xA0, 0x00, 0x00}; + u8 free_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x91, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x48, 0x00, 0x32, 0x51}; + u8 memcpy_symbol_FLAG[0x20] = {0x2C, 0x25, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x82, 0x00, 0x0C, 0x2F, 0xA3, 0x00, 0x00, 0x41, 0xDE, 0x00, 0x48, 0x38, 0x05, 0xFF, 0xFF}; + u8 memset_symbol_FLAG[0x20] = {0x2C, 0x25, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x82, 0x00, 0x0C, 0x2F, 0xA3, 0x00, 0x00, 0x41, 0xDE, 0x00, 0x40, 0x38, 0x05, 0xFF, 0xFF}; + u8 strcpy_symbol_FLAG[0x10] = {0x88, 0x04, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0xA0, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x18}; + u8 strcat_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x10}; + u8 strlen_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x39, 0x20, 0x00, 0x00, 0x39, 0x63, 0x00, 0x01, 0x2F, 0x80, 0x00, 0x00}; + u8 vuart_read_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x81, 0xFB, 0xE1, 0x00, 0x78, 0x39, 0x60, 0x00, 0xA2}; + u8 vuart_write_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x71, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78}; + u8 ps2_disc_auth_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x98, 0xEB, 0xA2, 0xA6, 0x28}; + u8 ps2_disc_auth_caller_symbol_FLAG[0x10] = {0x7C, 0x69, 0x18, 0xF8, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0x7D, 0x2B, 0xFE, 0x70}; + u8 overwritten_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xC1, 0x00, 0x70, 0x7C, 0x7E, 0x1B, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x80, 0x03, 0x00, 0x04, 0xFB, 0xE1, 0x00, 0x78, 0x2F, 0x80, 0x00, 0x00}; + + memcpy(&TOC, &elf_data[0x101C0], 8); + TOC = reverse64(TOC); + + memcpy(&stage2_addr, &elf_data[0x68], 8); + stage2_addr = reverse64(stage2_addr); + + u64 n; + + for(n=0; n < elf_size ; n++) { + + if(cdvd_read_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) cdvd_read_symbol_FLAG, 0x10)) { + cdvd_read_symbol = n - 0x10000; + } + if(cdvd_send_atapi_command_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_atapi_command_symbol_FLAG, 0x20)) { + cdvd_send_atapi_command_symbol = n - 0x10000; + } + if(cdvd_send_device_command_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_device_command_symbol_FLAG, 0x10)) { + cdvd_send_device_command_symbol = n - 0x10000; + } + if(ufs_open_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { + ufs_open_symbol = n - 0x10000; + } + if(ufs_close_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x20)) { + ufs_close_symbol = n - 0x10000; + } + if(ufs_read_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x10)) { + ufs_read_symbol = n + 8 - 0x10000; + } + if(ufs_write_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { + ufs_write_symbol = n + 8 - 0x10000; + } + if(ufs_fstat_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x20)) { + ufs_fstat_symbol = n - 0x10000; + } + if(zeroalloc_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) zeroalloc_symbol_FLAG, 0x20)) { + zeroalloc_symbol = n - 0x10000; + } + if(malloc_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) malloc_symbol_FLAG, 0x20)) { + malloc_symbol = n - 0x10000; + } + if(free_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) free_symbol_FLAG, 0x10)) { + free_symbol = n - 0x10000; + } + if(memcpy_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x20)) { + memcpy_symbol = n - 0x10000; + } + if(memset_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x20)) { + memset_symbol = n - 0x10000; + } + if(strcpy_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { + strcpy_symbol = n - 0x10000; + } + if(strcat_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { + strcat_symbol = n - 0x10000; + } + if(strlen_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { + strlen_symbol = n - 0x10000; + } + if(vuart_read_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) vuart_read_symbol_FLAG, 0x10)) { + vuart_read_symbol = n - 0x10000; + } + if(vuart_write_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) vuart_write_symbol_FLAG, 0x10)) { + vuart_write_symbol = n - 0x10000; + } + if(ps2_disc_auth_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_symbol_FLAG, 0x10)) { + ps2_disc_auth_symbol = n - 0x10000; + } + if(ps2_disc_auth_caller_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_caller_symbol_FLAG, 0x10)) { + ps2_disc_auth_caller_symbol = n - 0x10000; + } + if(overwritten_symbol==0) + if(!memcmp((char *) &elf_data[n], (char *) overwritten_symbol_FLAG, 0x20)) { + overwritten_symbol = n - 0x10000; + } + + if(cdvd_read_symbol) + if(cdvd_send_atapi_command_symbol) + if(cdvd_send_device_command_symbol) + if(ufs_open_symbol) + if(ufs_close_symbol) + if(ufs_read_symbol) + if(ufs_write_symbol) + if(ufs_fstat_symbol) + if(zeroalloc_symbol) + if(malloc_symbol) + if(free_symbol) + if(memcpy_symbol) + if(memset_symbol) + if(strcpy_symbol) + if(strcat_symbol) + if(strlen_symbol) + if(vuart_read_symbol) + if(vuart_write_symbol) + if(ps2_disc_auth_symbol) + if(ps2_disc_auth_caller_symbol) + if(overwritten_symbol) + break; + + } + + sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); + sprintf(str, "\t\t#define cdvd_read_symbol 0x%llX\n", cdvd_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define cdvd_send_atapi_command_symbol 0x%llX\n", cdvd_send_atapi_command_symbol); fputs(str, sym); + sprintf(str, "\t\t#define cdvd_send_device_command_symbol 0x%llX\n", cdvd_send_device_command_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define zeroalloc_symbol 0x%llX\n", zeroalloc_symbol); fputs(str, sym); + sprintf(str, "\t\t#define malloc_symbol 0x%llX\n", malloc_symbol); fputs(str, sym); + sprintf(str, "\t\t#define free_symbol 0x%llX\n", free_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); + sprintf(str, "\t\t#define vuart_read_symbol 0x%llX\n", vuart_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define vuart_write_symbol 0x%llX\n", vuart_write_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ps2_disc_auth_symbol 0x%llX\n", ps2_disc_auth_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ps2_disc_auth_caller_symbol 0x%llX\n", ps2_disc_auth_caller_symbol); fputs(str, sym); + sprintf(str, "\t\t#define overwritten_symbol 0x%llX\n", overwritten_symbol); fputs(str, sym); + fputs("\t\t#define stage1_addr overwritten_symbol\n", sym); + sprintf(str, "\t\t#define stage2_addr 0x%llX\n", stage2_addr); fputs(str, sym); + + fputs("\t#endif /* FIRMWARE */\n\n", sym); + + free(elf_data); + } + closedir(d); + + fputs("#endif /* PS2GXEMU */\n\n", sym); + + fputs(" return FAILED;\n\ + \n\ + return SUCCESS;\n\ + \n\ +}\n\ +\n\ +u8 get_netemu(u32 crc, u8 **stage2, u32 *stage2_size)\n\ +{\n", ps2vers); + +//ps2netemu + + fputs("#ifdef PS2NETEMU\n\n", sym); + + fputs("\t#define EXTENDED_DATA (0x821000+0x2953478)\n\n", sym); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory ps2emu not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + + sprintf(str, "\n\ + if(crc == CRC32NETEMU_%s) {\n\ + *stage2_size = (uint32_t) ps2netemu_stage2_%s_bin_size;\n\ + *stage2 = (uint8_t *) ps2netemu_stage2_%s_bin;\n\ + } else ", ent->d_name, ent->d_name, ent->d_name); + fputs(str, ps2vers); + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_netemu.self", ent->d_name); + Extract(temp); + + u32 elf_size = 0; + + elf = fopen("temp_dec", "rb"); + if(elf==NULL) { + printf(error("cannot open ps2_netemu.elf %s\n"), ent->d_name); + continue; + } + fseek (elf , 0 , SEEK_END); + elf_size = ftell (elf); + fseek(elf, 0, SEEK_SET); + + char *elf_data = (char*) malloc (sizeof(char)*elf_size); + if (elf_data == NULL) { + printf(error("cannot malloc ps2_netemu.self %s\n"), ent->d_name); + fclose(elf); + continue; + } + fread(elf_data,1,elf_size, elf); + fclose(elf); + + system("del temp_dec"); + + sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); + + u64 TOC=0; + u64 cdvd_read_symbol=0; + u64 ufs_open_symbol=0; + u64 ufs_close_symbol=0; + u64 ufs_read_symbol=0; + u64 ufs_write_symbol=0; + u64 ufs_fstat_symbol=0; + u64 memcpy_symbol=0; + u64 memset_symbol=0; + u64 strcpy_symbol=0; + u64 strcat_symbol=0; + u64 strlen_symbol=0; + + u8 cdvd_read_symbol_FLAG[0x10] = {0x2F, 0x86, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFE, 0xF1, 0xF9, 0xC1, 0x00, 0x80}; + + u8 ufs_open_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x31, 0xFB, 0x01, 0x00, 0x90, 0xFB, 0x41, 0x00, 0xA0}; + u8 ufs_close_symbol_FLAG[0x20] = {0x38, 0x60, 0xFF, 0xFB, 0x4B, 0xFF, 0xFF, 0x30, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xC1, 0x00, 0x80, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x7E, 0x1B, 0x78}; //+8 + u8 ufs_read_symbol_FLAG[0x20] = {0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0x78, 0xFB, 0x41, 0x00, 0x80, 0xFB, 0x61, 0x00, 0x88, 0xFB, 0x81, 0x00, 0x90, 0xFB, 0xC1, 0x00, 0xA0}; //+4 + u8 ufs_write_symbol_FLAG[0x20] = {0x4B, 0xFF, 0xFE, 0xAC, 0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0x78, 0xFB, 0x41, 0x00, 0x80, 0xFB, 0x61, 0x00, 0x88, 0xFB, 0x81, 0x00, 0x90, 0xFB, 0xC1, 0x00, 0xA0}; //+4 + u8 ufs_fstat_symbol_FLAG[0x20] = {0x4B, 0xFF, 0xFF, 0x28, 0xF8, 0x21, 0xFF, 0x61, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x61, 0x00, 0x78, 0xFB, 0x81, 0x00, 0x80, 0xFB, 0xC1, 0x00, 0x90, 0xFB, 0xE1, 0x00, 0x98, 0x7C, 0x9C, 0x23, 0x78}; //+4 + + u8 memcpy_symbol_FLAG[0x20] = {0x2F, 0x85, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x9E, 0x00, 0x2C, 0x2F, 0xA3, 0x00, 0x00, 0x78, 0xA5, 0x00, 0x20, 0x7C, 0x69, 0x1B, 0x78}; + u8 memset_symbol_FLAG[0x20] = {0x2F, 0x85, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x9E, 0x00, 0x28, 0x2F, 0xA3, 0x00, 0x00, 0x78, 0xA5, 0x00, 0x20, 0x7C, 0x69, 0x1B, 0x78}; + + u8 strcpy_symbol_FLAG[0x10] = {0x88, 0x04, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x1C}; + u8 strcat_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x14}; + u8 strlen_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x38, 0x60, 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x2F, 0x80, 0x00, 0x00}; + + memcpy(&TOC, &elf_data[0x13008], 8); + TOC = reverse64(TOC); + + u64 n; + + for(n=0; n < elf_size ; n++) { + + if(cdvd_read_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) cdvd_read_symbol_FLAG, 0x10)) { + cdvd_read_symbol = n - 0x10000; + } + if(ufs_open_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { + ufs_open_symbol = n - 0x10000; + } + if(ufs_close_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x20)) { + ufs_close_symbol = n + 8 - 0x10000; + } + if(ufs_read_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x20)) { + ufs_read_symbol = n + 4 - 0x10000; + } + if(ufs_write_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { + ufs_write_symbol = n + 4 - 0x10000; + } + if(ufs_fstat_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x20)) { + ufs_fstat_symbol = n + 4 - 0x10000; + } + if(memcpy_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x20)) { + memcpy_symbol = n - 0x10000; + } + if(memset_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x20)) { + memset_symbol = n - 0x10000; + } + if(strcpy_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { + strcpy_symbol = n - 0x10000; + } + if(strcat_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { + strcat_symbol = n - 0x10000; + } + if(strlen_symbol == 0) + if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { + strlen_symbol = n - 0x10000; + } + + if(cdvd_read_symbol) + if(ufs_open_symbol) + if(ufs_close_symbol) + if(ufs_read_symbol) + if(ufs_write_symbol) + if(ufs_fstat_symbol) + if(memcpy_symbol) + if(memset_symbol) + if(strcpy_symbol) + if(strcat_symbol) + if(strlen_symbol) + break; + + + } + + sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); + sprintf(str, "\t\t#define cdvd_read_symbol 0x%llX\n", cdvd_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); + sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); + sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); + fputs("\t\t#define decrypt_symbol cdvd_read_symbol\n", sym); + fputs("\t#endif /* FIRMWARE */\n\n", sym); + + free(elf_data); + } + closedir(d); + + fputs("#endif /* PS2NETEMU */\n\n", sym); + + fputs("\n#endif /* __PS2EMU_SYMBOLS_H_S__ */\n", sym); + + fputs("\n#endif /* __PS2DATA_H__ */\n", ps2data); + + fputs(" return FAILED;\n\ + \n\ + return SUCCESS;\n\ +}\n", ps2vers); + + fclose(ps2vers); + fclose(sym); + + return 0; +} + +int SearchOffsets() +{ char dump[255]; FILE *f; FILE *common; @@ -249,8 +1157,12 @@ int main() FILE *symbols; FILE *IDPSet; FILE *ERK; - char temp[255]; - char temp2[255]; + FILE *fw; + FILE *data; + FILE *fwc; + + char temp[2048]; + char temp2[2048]; DIR *d; struct dirent* ent = NULL; @@ -260,6 +1172,15 @@ int main() symbols = fopen("symbols.h", "w"); IDPSet = fopen("firmware.h", "w"); ERK = fopen("erk_symbols.h", "w"); + fw = fopen("FIRMWARES", "w"); + fwc = fopen("fw.c", "w"); + data = fopen("data.h","w"); + + fputs("#ifndef __DATA_H__\n", data); + fputs("#define __DATA_H__\n\n", data); + fputs("#include \n\n", data); + + fputs("PAYLOADS :=", fw); fputs("#ifndef __COMMON_H__\n", common); fputs("#define __COMMON_H__\n\n", common); @@ -277,7 +1198,6 @@ int main() fputs("#define strncmp memset + 0x200\n", SKY); fputs("#define free alloc + 0x43C\n", SKY); - fputs("#ifndef __FIRMWARE_SYMBOLS_H_S__\n", symbols); fputs("#define __FIRMWARE_SYMBOLS_H_S__\n\n", symbols); @@ -290,6 +1210,44 @@ int main() fputs("#define __SYMBOLS_H__\n\n", ERK); fputs("#define KERNEL_BASE 0x8000000000000000\n\n", ERK); + fputs("\n\ +#include \"fw.h\"\n\ +\n\ +#define SUCCESS 1\n\ +#define FAILED 0\n\ +\n\ +extern int firmware;\n\ +extern u64 SYSCALL_TABLE;\n\ +extern u64 HV_START_OFFSET;\n\ +extern u64 OFFSET_FIX;\n\ +extern u64 OFFSET_2_FIX;\n\ +extern u64 OFFSET_FIX_3C;\n\ +extern u64 OFFSET_FIX_2B17;\n\ +extern u64 OFFSET_FIX_LIC;\n\ +extern u64 OPEN_HOOK;\n\ +extern u64 BASE_ADDR;\n\ +extern u64 UMOUNT_SYSCALL_OFFSET;\n\ +extern u64 LV2MOUNTADDR;\n\ +extern u64 LV2MOUNTADDR_ESIZE;\n\ +extern u64 LV2MOUNTADDR_CSIZE;\n\ +extern u64 NEW_POKE_SYSCALL_ADDR;\n\ +extern u64 PAYLOAD_SKY;\n\ +extern size_t PAYLOAD_SKY_SIZE;\n\ +extern u64 UMOUNT;\n\ +extern size_t UMOUNT_SIZE;\n\ +extern u64 MAMBA;\n\ +extern size_t MAMBA_SIZE;\n\ +extern u64 *MAMBA_LOADER;\n\ +extern size_t MAMBA_LOADER_SIZE;\n\ +extern u64 OFFSET_1_IDPS;\n\ +extern u64 OFFSET_2_IDPS;\n\ +\n\ +extern void print_load(char *format, ...);\n\ +extern u64 lv2peek(u64 addr);\n\ +\n\ +u8 init_fw()\n\ +{", fwc); + printf("Searching offsets...\n"); d = opendir("LV2"); @@ -301,34 +1259,56 @@ int main() if(strcmp(ent->d_name, ".") == 0) continue; if(strcmp(ent->d_name, "..") == 0) continue; - sprintf(dump, "LV2/%s", ent->d_name); - - f=fopen(dump, "rb"); - if(f==NULL) { - printf("Error : cannot open the dump\n"); - return 0; - } + sprintf(temp, "%s ", ent->d_name); fputs(temp, fw); + + sprintf(temp, "#include \"payload_sky_%s_bin.h\"\n", ent->d_name); fputs(temp, data); + sprintf(temp, "#include \"umount_%s_bin.h\"\n", ent->d_name); fputs(temp, data); + sprintf(temp, "#include \"mamba_%s_lz_bin.h\"\n", ent->d_name); fputs(temp, data); + sprintf(temp, "#include \"mamba_loader_%s_bin.h\"\n\n", ent->d_name); fputs(temp, data); - fseek (f , 0 , SEEK_END); - u32 size = ftell (f); - fseek(f, 0, SEEK_SET); + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + u8 ps2payloads = 1; + if( exist(temp) ) ps2payloads = 0; + + + sprintf(temp, "\n\ + if(( lv2peek(FW_DATE_OFFSET_%s )==FW_DATE_1_%s) &&\n\ + ( lv2peek(FW_DATE_OFFSET_%s + 8)==FW_DATE_2_%s) )\n\ + {\n\ + \n\ + firmware = 0x%s;\n\ + \n\ + OFFSET_2_FIX = OFFSET_2_FIX_%s;\n\ + LV2MOUNTADDR_ESIZE = LV2MOUNTADDR_ESIZE_%s;\n\ + LV2MOUNTADDR_CSIZE = LV2MOUNTADDR_CSIZE_%s;\n\ + OFFSET_FIX = OFFSET_FIX_%s;\n\ + HV_START_OFFSET = HV_START_OFFSET_%s;\n\ + OFFSET_FIX_2B17 = OFFSET_FIX_2B17_%s;\n\ + OFFSET_FIX_LIC = OFFSET_FIX_LIC_%s;\n\ + OFFSET_FIX_3C = OFFSET_FIX_3C_%s;\n\ + SYSCALL_TABLE = SYSCALL_TABLE_%s;\n\ + LV2MOUNTADDR = LV2MOUNTADDR_%s;\n\ + OPEN_HOOK = OPEN_HOOK_%s;\n\ + BASE_ADDR = BASE_ADDR_%s;\n\ + OFFSET_1_IDPS = OFFSET_1_IDPS_%s;\n\ + OFFSET_2_IDPS = OFFSET_2_IDPS_%s;\n\ + \n\ + PAYLOAD_SKY_SIZE = payload_sky_%s_bin_size;\n\ + PAYLOAD_SKY = (u64) payload_sky_%s_bin;\n\ + UMOUNT_SIZE = umount_%s_bin_size;\n\ + UMOUNT = (u64) umount_%s_bin;\n\ + MAMBA_SIZE = mamba_%s_lz_bin_size;\n\ + MAMBA = (u64) mamba_%s_lz_bin;\n\ + MAMBA_LOADER_SIZE = mamba_loader_%s_bin_size;\n\ + MAMBA_LOADER = (u64 *) mamba_loader_%s_bin;\n\ + \n\ + } else", + ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, + ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, + ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name, ent->d_name); - if(size != 0x800000) { - printf("Error : bad size of your dump\n"); - fclose(f); - return 0; - } + fputs(temp, fwc); - char *memLV2 = (char *) malloc(size); - if(memLV2 == NULL) { - printf("Error : cannot malloc"); - free(memLV2); - fclose(f); - return 0; - } - - fread(memLV2,size,1, f); - fclose (f); u64 SYSCALL_TABLE=0; u64 OFFSET_FIX=0; @@ -620,6 +1600,36 @@ int main() u8 user_thread_prio_patch_flag[] = {0x3F, 0xE0, 0x80, 0x01, 0x2B, 0x80, 0x0E, 0x7F, 0x80, 0x01, 0x00, 0x94, 0x63, 0xFF, 0x00, 0x02}; // +0x10 u8 shutdown_patch_offset_flag[] = {0x41, 0x82, 0xFE, 0xFC, 0x7F, 0x83, 0xE3, 0x78, 0x7F, 0x64, 0xDB, 0x78, 0x7F, 0xC5, 0xF3, 0x78}; u8 shutdown_copy_params_call_flag[] = {0x2F, 0x83, 0x00, 0x00, 0x40, 0x9E, 0x00, 0x5C, 0x7F, 0xC6, 0xF3, 0x78, 0x7F, 0xA3, 0xEB, 0x78, 0x38, 0x80, 0x00, 0x01, 0x7F, 0x65, 0xDB, 0x78}; + +// ************* +// LV2 +// ************* + + sprintf(dump, "LV2/%s", ent->d_name); + f=fopen(dump, "rb"); + if(f==NULL) { + printf(error("Cannot open the dump\n")); + return 0; + } + fseek (f , 0 , SEEK_END); + u32 size = ftell (f); + fseek(f, 0, SEEK_SET); + + if(size != 0x800000) { + printf(error("bad size of your dump\n")); + fclose(f); + return 0; + } + + char *memLV2 = (char *) malloc(size); + if(memLV2 == NULL) { + printf(error("cannot malloc LV2")); + free(memLV2); + fclose(f); + return 0; + } + fread(memLV2,size,1, f); + fclose (f); memcpy(&TOC, &memLV2[0x3000], 8); TOC = reverse64(TOC); @@ -1079,7 +2089,11 @@ int main() } } + free(memLV2); +// ************* +// LV1 +// ************* sprintf(dump, "LV1/%s", ent->d_name); f=fopen(dump, "r"); @@ -1089,13 +2103,13 @@ int main() fseek(f, 0, SEEK_SET); if(size != 0x1000000) { - printf("Error : bad size of your dump\n"); + printf(error("bad size of your LV1 dump\n")); fclose(f); return 0; } char *memLV1 = (char*) malloc (sizeof(char)*size); if (memLV1 == NULL) { - printf("Error : cannot malloc"); + printf(error("cannot malloc LV1")); free(memLV1); fclose(f); return 0; @@ -1140,7 +2154,7 @@ int main() } free(memLV1); - } else printf("Warning : LV1 is missing, HV_START_OFFSET = unk \n"); + } else printf(warning("LV1 is missing, HV_START_OFFSET = unk \n")); if(SYSCALL_TABLE != 0) SYSCALL_TABLE = 0x8000000000000000ULL + SYSCALL_TABLE; if(OPEN_HOOK != 0) OPEN_HOOK = 0x8000000000000000ULL + OPEN_HOOK; @@ -1192,12 +2206,11 @@ int main() sprintf(str, "#define LV2MOUNTADDR_%lld%c 0x%llXULL\n", FIRMWARE, D, LV2MOUNTADDR); fputs(str, common); sprintf(str, "#define LV2MOUNTADDR_ESIZE_%lld%c 0x%llX\n", FIRMWARE, D, LV2MOUNTADDR_ESIZE); fputs(str, common); sprintf(str, "#define LV2MOUNTADDR_CSIZE_%lld%c 0x%llX\n", FIRMWARE, D, LV2MOUNTADDR_CSIZE); fputs(str, common); - //sprintf(str, "#define FIRMWARE_OFFSET_%lld%c 0x%llXULL\n", FIRMWARE, D, FIRMWARE_OFFSET); fputs(str, common); sprintf(str, "#define FW_DATE_OFFSET_%lld%c 0x%llXULL\n", FIRMWARE, D, FW_DATE_OFFSET); fputs(str, common); sprintf(str, "#define FW_DATE_1_%lld%c 0x%llXULL\n", FIRMWARE, D, FW_DATE_1); fputs(str, common); sprintf(str, "#define FW_DATE_2_%lld%c 0x%llXULL\n", FIRMWARE, D, FW_DATE_2); fputs(str, common); sprintf(str, "#define OFFSET_1_IDPS_%lld%c 0x%llXULL\n", FIRMWARE, D, OFFSET_1_IDPS); fputs(str, common); - sprintf(str, "#define OFFSET_2_IDPS_%lld%c 0x%llXULL\n", FIRMWARE, D, OFFSET_2_IDPS); fputs(str, common); + sprintf(str, "#define OFFSET_2_IDPS_%lld%c 0x%llXULL\n", FIRMWARE, D, OFFSET_2_IDPS); fputs(str, common); fputs("\n", SKY); sprintf(str, "#ifdef CFW_%lld%c\n", FIRMWARE, D); fputs(str, SKY); @@ -1360,6 +2373,9 @@ int main() fputs("\n", symbols); +// ************* +// PLUGINS FOR MAMBA +// ************* sprintf(temp2, "flash/%lld%c", FIRMWARE, D); if(exist(temp2)) { @@ -1451,8 +2467,8 @@ int main() u64 psp_extra_drm_patch=0; u8 psp_extra_drm_patch_FLAG[0x10] = {0xEB, 0x81, 0x01, 0xE0, 0xEB, 0xA1, 0x01, 0xE8, 0x7C, 0x08, 0x03, 0xA6, 0xEB, 0xC1, 0x01, 0xF0}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/vsh/module/vsh.self temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/vsh/module/vsh.self", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1462,7 +2478,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc vsh")); free(mem); fclose(f); return 0; @@ -1575,8 +2591,8 @@ int main() u64 ps2_nonbw_offset=0; u8 ps2_nonbw_offset_FLAG[0x10] = {0x7D, 0x2B, 0x02, 0x14, 0x80, 0x89, 0x00, 0x30, 0x48, 0x00, 0x00, 0x08, 0x38, 0xA0, 0x00, 0x00}; //+4 - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/vsh/module/explore_plugin.sprx temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/vsh/module/explore_plugin.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1586,7 +2602,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc explore_plugin")); free(mem); fclose(f); return 0; @@ -1617,8 +2633,8 @@ int main() u64 ps2_nonbw_offset2=0; u8 ps2_nonbw_offset2_FLAG[0x10] = {0x7D, 0x2B, 0x02, 0x14, 0x80, 0x89, 0x00, 0x30, 0x48, 0x00, 0x00, 0x08, 0x38, 0xA0, 0x00, 0x00}; // +4 - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/vsh/module/explore_category_game.sprx temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/vsh/module/explore_category_game.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1628,7 +2644,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc explore_category_game")); free(mem); fclose(f); return 0; @@ -1659,8 +2675,8 @@ int main() u64 ps2_nonbw_offset3=0; u8 ps2_nonbw_offset3_FLAG[0x10] = {0x38, 0x61, 0x00, 0x70, 0x2F, 0x9F, 0x00, 0x00, 0x41, 0x9C, 0x00, 0x58, 0x38, 0x00, 0x00, 0x70}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/vsh/module/game_ext_plugin.sprx temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/vsh/module/game_ext_plugin.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1670,7 +2686,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc game_ext_plugin")); free(mem); fclose(f); return 0; @@ -1701,9 +2717,9 @@ int main() u64 psp_set_psp_mode_offset=0; u8 psp_set_psp_mode_offset_FLAG[0x10] = {0x38, 0x80, 0x00, 0x01, 0x38, 0x60, 0x00, 0x05, 0x78, 0x84, 0x07, 0xC6, 0x64, 0x84, 0x00, 0x01}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/pspemu/psp_emulator.self temp_dec", FIRMWARE, D); - system(temp2); - + sprintf(temp2, "flash/%lld%c/dev_flash/pspemu/psp_emulator.self", FIRMWARE, D); + Extract(temp2); + f = fopen("temp_dec", "rb"); if(f!=NULL) { fseek (f , 0 , SEEK_END); @@ -1712,7 +2728,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc psp_emulator")); free(mem); fclose(f); return 0; @@ -1766,9 +2782,9 @@ int main() u64 psp_product_id_patch3=0; u8 psp_product_id_patch3_FLAG[] = {0x7C, 0x7F, 0x1B, 0x78, 0x40, 0x92, 0x00, 0x18, 0xE8, 0x01, 0x00, 0x90, 0x2F, 0xA0, 0x00, 0x28}; - - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/pspemu/release/emulator_api.sprx temp_dec", FIRMWARE, D); - system(temp2); + + sprintf(temp2, "flash/%lld%c/dev_flash/pspemu/release/emulator_api.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1778,7 +2794,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc emulator_api")); free(mem); fclose(f); return 0; @@ -1875,9 +2891,9 @@ int main() u64 prx_patch_call_lr=0; u8 prx_patch_call_lr_FLAG[0x10] = {0xA3, 0x5B, 0x00, 0x2C, 0x93, 0x5E, 0x00, 0xF8, 0x80, 0x1B, 0x00, 0x1C, 0x2F, 0x80, 0x00, 0x00}; - - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/pspemu/release/PEmuCoreLib.sprx temp_dec", FIRMWARE, D); - system(temp2); + + sprintf(temp2, "flash/%lld%c/dev_flash/pspemu/release/PEmuCoreLib.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -1887,7 +2903,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc PEmuCoreLib")); free(mem); fclose(f); return 0; @@ -1963,9 +2979,9 @@ int main() u64 psp_drm_key_overwrite=0; u8 psp_drm_key_overwrite_FLAG[4] = {0x00, 0x00, 0xBC, 0xC0}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/pspemu/release/emulator_drm.sprx temp_dec", FIRMWARE, D); - system(temp2); - + sprintf(temp2, "flash/%lld%c/dev_flash/pspemu/release/emulator_drm.sprx", FIRMWARE, D); + Extract(temp2); + f = fopen("temp_dec", "rb"); if(f!=NULL) { fseek (f , 0 , SEEK_END); @@ -1974,7 +2990,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc emulator_drm")); free(mem); fclose(f); return 0; @@ -2029,8 +3045,8 @@ int main() u64 psp_savedata_patch6=0; u8 psp_savedata_patch6_FLAG[] = {0xEA, 0x21, 0x08, 0xB8, 0xEA, 0x41, 0x08, 0xC0, 0xEA, 0x61, 0x08, 0xC8, 0xEA, 0x81, 0x08, 0xD0}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/sys/external/libsysutil_savedata_psp.sprx temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/sys/external/libsysutil_savedata_psp.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -2040,7 +3056,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc libsysutil_savedata_psp")); free(mem); fclose(f); return 0; @@ -2099,8 +3115,8 @@ int main() u64 aio_copy_root_offset=0; u8 aio_copy_root_offset_FLAG[] = {0x78, 0x84, 0x04, 0x20, 0x4B, 0xFF, 0xB1, 0x74, 0x38, 0x80, 0xFF, 0xFF, 0x38, 0x60, 0x00, 0x01}; - sprintf(temp2, "scetool -d flash/%lld%c/dev_flash/sys/external/libfs.sprx temp_dec", FIRMWARE, D); - system(temp2); + sprintf(temp2, "flash/%lld%c/dev_flash/sys/external/libfs.sprx", FIRMWARE, D); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -2110,7 +3126,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc libfs")); free(mem); fclose(f); return 0; @@ -2136,33 +3152,42 @@ int main() sprintf(temp, "\t#define aio_copy_root_offset 0x%X\n", aio_copy_root_offset); fputs(temp, symbols); char temp3[64]; - sprintf(temp3, "flash/%lld%c/dev_flash_rebug", FIRMWARE, D); - if(exist(temp3)) { - fputs("\n\t/* rebug */\n", symbols); - } else { - if(D=='C') { - sprintf(temp3, "flash/%lldD/dev_flash", FIRMWARE); - if(exist(temp3)) fputs("\n\t/* DEX */\n", symbols); - } else - if(D=='D') { - sprintf(temp3, "flash/%lldC/dev_flash", FIRMWARE); - if(exist(temp3)) fputs("\n\t/* CEX */\n", symbols); - } + + if(D=='C') { + sprintf(temp3, "flash/%lldD/dev_flash", FIRMWARE); + } else + if(D=='D') { + sprintf(temp3, "flash/%lldC/dev_flash", FIRMWARE); } if(exist(temp3)) { + // ONLY for CEX! because rebug use only DEX modules. + // https://www.psx-place.com/threads/4-84-cfw-homebrew-plugins-tools.22528/page-10#post-164287 if(D=='C') { - sprintf(temp2, "%s/vsh/module/explore_plugin.sprx", temp3); - sprintf(temp, "\t#define EXPLORE_PLUGIN_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); - fputs(temp, symbols); + fputs("\n\t/* DEX */\n", symbols); - sprintf(temp2, "%s/vsh/module/explore_category_game.sprx", temp3); - sprintf(temp, "\t#define EXPLORE_CATEGORY_GAME_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); - fputs(temp, symbols); + char temp_rebug[512]; + sprintf(temp_rebug, "flash/%lld%c/dev_flash_rebug", FIRMWARE, D); - sprintf(temp2, "%s/vsh/module/game_ext_plugin.sprx", temp3); - sprintf(temp, "\t#define GAME_EXT_PLUGIN_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); - fputs(temp, symbols); + if( !exist(temp_rebug) ) { + sprintf(temp_rebug, "flash/%lldD/dev_flash", FIRMWARE); + } + + if(exist(temp_rebug)) { + sprintf(temp2, "%s/vsh/module/explore_plugin.sprx", temp_rebug); + sprintf(temp, "\t#define EXPLORE_PLUGIN_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); + fputs(temp, symbols); + + sprintf(temp2, "%s/vsh/module/explore_category_game.sprx", temp_rebug); + sprintf(temp, "\t#define EXPLORE_CATEGORY_GAME_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); + fputs(temp, symbols); + + sprintf(temp2, "%s/vsh/module/game_ext_plugin.sprx", temp_rebug); + sprintf(temp, "\t#define GAME_EXT_PLUGIN_REBUG_HASH 0x%016llX\n", hash(temp2, 0, 0)); + fputs(temp, symbols); + } + } else { + fputs("\n\t/* CEX */\n", symbols); } ps2tonet_patch=0; @@ -2180,9 +3205,9 @@ int main() psp_drm_patchF=0; psp_extra_drm_patch=0; - sprintf(temp2, "scetool -d %s/vsh/module/vsh.self temp_dec", temp3); - system(temp2); - + sprintf(temp2, "%s/vsh/module/vsh.self", temp3); + Extract(temp2); + f = fopen("temp_dec", "rb"); if(f!=NULL) { fseek (f , 0 , SEEK_END); @@ -2191,7 +3216,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc vsh")); free(mem); fclose(f); return 0; @@ -2284,8 +3309,8 @@ int main() } ps2_nonbw_offset=0; - sprintf(temp2, "scetool -d %s/vsh/module/explore_plugin.sprx temp_dec", temp3); - system(temp2); + sprintf(temp2, "%s/vsh/module/explore_plugin.sprx", temp3); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -2295,7 +3320,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc vsh")); free(mem); fclose(f); return 0; @@ -2323,9 +3348,9 @@ int main() ps2_nonbw_offset2=0; - sprintf(temp2, "scetool -d %s/vsh/module/explore_category_game.sprx temp_dec", temp3); - system(temp2); - + sprintf(temp2, "%s/vsh/module/explore_category_game.sprx", temp3); + Extract(temp2); + f = fopen("temp_dec", "rb"); if(f!=NULL) { fseek (f , 0 , SEEK_END); @@ -2334,7 +3359,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc explore_category_game")); free(mem); fclose(f); return 0; @@ -2361,9 +3386,8 @@ int main() } ps2_nonbw_offset3=0; - - sprintf(temp2, "scetool -d %s/vsh/module/game_ext_plugin.sprx temp_dec", temp3); - system(temp2); + sprintf(temp2, "%s/vsh/module/game_ext_plugin.sprx", temp3); + Extract(temp2); f = fopen("temp_dec", "rb"); if(f!=NULL) { @@ -2373,7 +3397,7 @@ int main() char *mem = (char*) malloc (sizeof(char)*size); if (mem == NULL) { - printf("Error : cannot malloc vsh"); + printf(error("cannot malloc game_ext_plugin")); free(mem); fclose(f); return 0; @@ -2442,21 +3466,433 @@ int main() fputs("#endif\n\n", symbols); - free(memLV2); - } - + + fputs(" {return FAILED;}\n\ + \n\ + NEW_POKE_SYSCALL_ADDR = lv2peek( lv2peek(SYSCALL_TABLE + NEW_POKE_SYSCALL*8) ) + 0ULL;\n\ + UMOUNT_SYSCALL_OFFSET = lv2peek( lv2peek(SYSCALL_TABLE + 838*8) ) + 8ULL;\n\ + \n\ + return SUCCESS;\n\ +}\n", fwc); + fputs("\n#endif /* __FIRMWARE_SYMBOLS_H_S__ */\n", symbols); fputs("\n#endif /* __COMMON_H__ */\n", common); fputs("\n#endif /* __FIRMWARE_H__ */\n", IDPSet); fputs("\n#endif /* __SYMBOLS_H__ */\n", ERK); + fputs("\n#endif /* __DATA_H__ */\n", data); + + fputs("\n", fw); + fclose(fwc); + fclose(data); + fclose(fw); fclose(IDPSet); fclose(common); fclose(SKY); fclose(symbols); closedir(d); + return 0; +} + +void Extract_DevFlash(char *fw) +{ + printf("Extracting %s dev_flash...\n", fw); + + char PUP_path[512]; + char target[512]; + char cmd[512]; + if(exist("GetFlash.exe") == 0) { + printf(error("GetFlash.exe is missing")); + return; + } + + sprintf(target, "flash/%s", fw); + mkdir(target); + + int do_rebug=0; + +rebug: + if(do_rebug) { + sprintf(PUP_path, "PUP/REBUG/%s.PUP", fw); + sprintf(target, "flash/%s/dev_flash_rebug", fw); + } else { + sprintf(PUP_path, "PUP/OFFICIAL/%s.PUP", fw); + sprintf(target, "flash/%s/dev_flash", fw); + } + + + if(exist(PUP_path) == 0) { + printf(warning("%s is missing"), PUP_path); + if(!do_rebug) {do_rebug=1; goto rebug;} + return; + } + if(exist(target)) { + printf(warning("%s already exist"), target); + if(!do_rebug) {do_rebug=1; goto rebug;} + return; + } + + sprintf(cmd, "GetFlash.exe %s", PUP_path); + system(cmd); + + rename("dev_flash", target); + + if(!do_rebug) {do_rebug=1; goto rebug;} +} + +void ExtractAll_DevFlash() +{ + DIR *d; + struct dirent* ent = NULL; + + d = opendir("PUP/OFFICIAL"); + if(d== NULL) { + printf(error("Directory PUP/OFFICIAL not found")); + return; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + if(strcmp(&ent->d_name[strlen(ent->d_name)-4], ".PUP")==0) { + char fw[512]; + strcpy(fw, ent->d_name); + strtok(fw, "."); + Extract_DevFlash(fw); + } + } + closedir(d); + +} + +char *LoadFile(char *path) +{ + struct stat s; + if(stat(path, &s) != 0) return NULL; + if(S_ISDIR(s.st_mode)) return NULL; + int file_size = s.st_size; + FILE *f = fopen(path, "rb"); + if(f==NULL) return NULL; + char *mem = malloc(file_size); + if(mem==NULL) return NULL; + fread(mem, file_size, 1, f); + fclose(f); + return mem; +} + +#define HW 0 +#define GX 1 +#define NET 2 + +#define SUCCESS 1 +#define FAILED 0 + +uint64_t cdvd_read_symbol; +uint64_t read_iso_size_call; +uint64_t fstat_iso_call; +uint64_t open_iso_call1; +uint64_t open_iso_call2; +uint64_t read_config_size_call; +uint64_t open_config_call; +uint64_t decrypt_config_call; + +uint64_t payload_addr; +FILE *info; + +int PS2_SearchOffset(char *elf_p, uint8_t type) +{ + Extract(elf_p); + + char temp[256]; + FILE *elf = fopen("temp_dec", "rb"); + + //FILE *elf = fopen(elf_p, "rb"); + if (!elf) + { + printf("Error : Cannot open ELF"); + return -1; + } + + fseek(elf, 0, SEEK_END); + int elf_size = ftell(elf); + fseek(elf, 0, SEEK_SET); + + uint8_t *elf_buf = malloc(elf_size); + if(elf_buf==NULL) { + fclose(elf); + printf("Error : Cannot MALLOC ELF %X", elf_size); + return -1; + } + + fread(elf_buf, 1, elf_size, elf); + fclose(elf); + + if(type == NET) { + + cdvd_read_symbol=0; + read_iso_size_call=0; + fstat_iso_call=0; + open_iso_call1=0; + open_iso_call2=0; + read_config_size_call=0;// -0x24 + open_config_call=0; // -0x48 + decrypt_config_call=0; // +0x10 + + uint8_t CONFIG_FLAG[0x10] = {0x7F, 0x83, 0xE3, 0x78, 0x38, 0x80, 0x00, 0x00, 0x7F, 0xE5, 0xFB, 0x78, 0x7F, 0xA6, 0x07, 0xB4}; + + uint8_t cdvd_read_symbol_FLAG[0x10] = {0x2F, 0x86, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFE, 0xF1, 0xF9, 0xC1, 0x00, 0x80}; + uint8_t read_iso_size_call_FLAG[0x10] = {0x60, 0x00, 0x00, 0x00, 0x2F, 0x83, 0x00, 0x08, 0x41, 0x9E, 0x01, 0x34, 0xE8, 0x7F, 0x00, 0x58}; // -4 + uint8_t fstat_iso_call_FLAG[0x10] = {0x60, 0x00, 0x00, 0x00, 0x2F, 0x83, 0x00, 0x00, 0x7C, 0x60, 0x1B, 0x78, 0x41, 0x9C, 0x02, 0x14}; // -4 + uint8_t open_iso_call1_FLAG[0x10] = {0x60, 0x00, 0x00, 0x00, 0x2F, 0x83, 0x00, 0x00, 0x7C, 0x7E, 0x1B, 0x78, 0x7C, 0x7D, 0x07, 0xB4}; // -4 + uint8_t open_iso_call2_FLAG[0x20] = {0x60, 0x00, 0x00, 0x00, 0x39, 0x60, 0x00, 0x00, 0x90, 0x7E, 0x00, 0x04, 0x80, 0x1E, 0x00, 0x04}; // -4 + + int n; + int i=0; + for(n=0; nd_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + sprintf(temp, "../payloads/PS2_EMU/BIN/ps2hwemu_stage2_%s.bin", ent->d_name); + if(exist(temp)==0) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_emu.self", ent->d_name); + + fputs(ent->d_name, info); + fputs(" ", info); + PS2_SearchOffset(temp, HW); + fputs("\n", info); + + } + closedir(d); + + fputs("\nGX\n", info); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory flash not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + sprintf(temp, "../payloads/PS2_EMU/BIN/ps2gxemu_stage2_%s.bin", ent->d_name); + if(exist(temp)==0) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_gxemu.self", ent->d_name); + + fputs(ent->d_name, info); + fputs(" ", info); + PS2_SearchOffset(temp, GX); + fputs("\n", info); + } + closedir(d); + + fputs("\nNET\n", info); + + d = opendir("flash"); + if(d== NULL) { + printf("Directory flash not found\n"); + return 0; + } + while ((ent = readdir(d)) != NULL) { + if(strcmp(ent->d_name, ".") == 0) continue; + if(strcmp(ent->d_name, "..") == 0) continue; + + sprintf(temp, "flash/%s/dev_flash/rebug", ent->d_name); + if(exist(temp)) continue; + + sprintf(temp, "flash/%s/dev_flash/ps2emu/ps2_netemu.self", ent->d_name); + + fputs(ent->d_name, info); + fputs(" ", info); + PS2_SearchOffset(temp, NET); + fputs("\n", info); + } + closedir(d); + + + fclose(info); + + return 0; +} + +void print_help() +{ + printf("offsetfinder.exe [option]\n\n\ + search\t\tsearch offsets and generate files\n\ + move\t\tmove files to their directories\n\ + extract\t\textract dev_flash from PUP\n"); + exit(0); +} + +void force_rename(char *old, char *new) +{ + if(exist(old)==0) { + printf("Error : %s doesn't exist\n", old); + exit(0); + } + remove(new); + rename(old, new); +} + +int main(int argc, char **argv) +{ + PWD = getenv("PWD"); + char *PS3ENV = getenv("PS3"); + if(PS3ENV==NULL) { + printf("Environnement variable 'PS3' is missing.\nType : export PS3=$PS3DEV/bin/data\nscetool need it to load the keys.\n\n"); + return 0; + } + + if(argc<2) print_help(); + + if(strcmp(argv[1], "search")==0) { + SearchOffsets(); + PS2_SearchOffsets(); + PS2_CRC(); + } else + if(strcmp(argv[1], "move")==0) { + force_rename("firmware_symbols.h", "../payloads/SKY/firmware_symbols.h"); + force_rename("symbols.h", "../payloads/MAMBA/lv2/include/lv2/symbols.h"); + force_rename("ps2symbols.h", "../payloads/PS2_EMU/ps2emu/include/ps2emu/symbols.h"); + force_rename("common.h", "../MGZ/source/common.h"); + force_rename("data.h", "../MGZ/source/data.h"); + force_rename("ps2data.h", "../MGZ/source/ps2data.h"); + force_rename("ps2crc.h", "../MGZ/source/ps2crc.h"); + force_rename("ps2vers.c", "../MGZ/source/ps2vers.c"); + force_rename("fw.c", "../MGZ/source/fw.c"); + force_rename("FIRMWARES", "../payloads/FIRMWARES"); + } else + if(strcmp(argv[1], "extract")==0) { + if(2fbmTlX{vb}26;%d3yd-T@9|33YGu1oy` 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 O-jJcHHK=(r?f(PzIvKG5 diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/data/keys b/payloads/PS2_EMU/SRC/ps2emu_gen/data/keys deleted file mode 100644 index 77db7caf..00000000 --- a/payloads/PS2_EMU/SRC/ps2emu_gen/data/keys +++ /dev/null @@ -1,4499 +0,0 @@ -[NP_tid] -type=OTHER -key=9B515FEACF75064981AA604D91A54E97 - -[NP_ci] -type=OTHER -key=6BA52976EFDA16EF3C339FB2971E256B - -[NP_klic_free] -type=OTHER -key=72F990788F9CFF745725F08E4C128387 - -[NP_klic_key] -type=OTHER -key=F2FBCA7A75B04EDC1390638CCDFDD1EE - -[NP_klic_dev] -type=OTHER -key=52C0B5CA76D6134BB45FC66CA637F2C1 - -[NP_sig] -type=OTHER -pub=E6792E446CEBA27BCADF374B99504FD8E80ADFEB3E66DE73FFE58D3291221C65018C038D3822C3C9 -priv=000000000000000000000000000000000000000000 -ctype=2 - -[NP_dat] -type=OTHER -key=2B7E151628AED2A6ABF7158809CF4F3C -riv=3032ADFCDE09CFBFF0A3B3525B097FAF - -[NP_gpkg_key] -type=OTHER -key=2E7B71D7C9C9A14EA3221F188828B8F8 - -[ppu] -type=OTHER -revision=0000 -erk=31A57D41FF28CD29721B41D347F48809D01E8C70A8F297D2F652C298315D9D4FD3ADB79D9BC55C38BF49F8664FB84281145A935130D5A22AAE065D2B3542175D36337FA72E0C24F10B8605BB1957D81D6DA1D45DCEBF6B503283905BC1F656CCD23F408234778FBCA0DAD68C625951E20C2CF06A001CDA65E715148CF1EEB294D2C4EABF968CFA6F23608F6F6257F317F53FD595A656EDC8739596EA6F25429217EC4391566D330DB1FE95CDF45B9F3B -riv=B5F9F0E46307DBFA5F54BE397475E2BB - -[PUP_hmac_key] -type=OTHER -key=F491AD94C6811096915FD5D24481AEDCEDEDBE6BE513724DD8F7B691E88A38F4B5162BFBECBE3A62185DD7C94DA2225ADA3FBFCE555B9EA9649829EB30CE8366 - -[spu] -type=OTHER -revision=0000 -erk=E044C1E29C53FEF2E064E31207D09D48676719789D59E5C1F004D002390F23608350EBCCCA16A69A08E2A813F18B92EF688B163CB6C4781F0285AEAD4DAB0FD2555A7B10D87DA8C9257136546E1A6A33782DC8C1B1A888A3FB2000EFBC12DE7FFC6EC40EC3782C8C53625B96E72334E67073EC2C0395A5DB0A1CACA119E61A86ADA4401ADD1CC764A0C2DB4D58E13F8B23515AB750DCED2BAE626CCE7FD07242E2BF4D2503282798E4A736ACC388412D -riv=20385B4B1819FD8E691BBEF17001392B - -[pkg] -type=PKG -revision=00 -version=0000000000000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[pkg] -type=PKG -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[pkg] -type=PKG -revision=00 -version=0003005500000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[pkg] -type=PKG -revision=01 -version=0003005600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv= -ctype=17 - -[pkg] -type=PKG -revision=00 -version=0004004600000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[PKG] -type=PKG -revision=00 -version=0004004600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - -[SPKG-REV000] -type=OTHER -revision=00 -version=0000000000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - -[metldr] -type=SELF -revision=00 -self_type=LDR -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - -[spp-4.46] -type=SPP -revision=00 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[spp] -type=SPP -revision=00 -version=0003005500000000 -erk=56C655747A4B6957A2D8BB9AC605C297E6AC9871932BFECDDE066CEE5B29470A -riv=007E6B268EF1E986D10A9889CF93A8CB -pub=265C04E7F20C3B8ACAC90E7C9D12757ED7ACBC01AA6624A2A927E719A4AA1222F87D917005F6072A -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=22 - -[spp] -type=SPP -revision=01 -version=0003005600000000 -erk=7FD222B3FEF467DF7E3F63AC8B77501A3B38752411E96AFEDA6587B5CD5E91B0 -riv=B889290922B002F57086B818A8FDE3CC -pub=71E12CB3D81AFA79670AF4FAC4BBE41AA7F7DDF368F5615E933CB1C21A783B73C085CA49986CCF63 -priv= -ctype=22 - -[spp] -type=SPP -revision=02 -version=0003006000000000 -erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2 -riv=3E05572881C5BC845D310EAC28497B08 -pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E -priv= -ctype=13 - -[spp] -type=SPP -revision=02 -version=0003006100000000 -erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2 -riv=3E05572881C5BC845D310EAC28497B08 -pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E -priv= -ctype=13 - -[spp] -type=SPP -revision=03 -version=0003006500000000 -erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4 -riv=0F23BBED0473B4899AD793AC76D8F722 -pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F -priv= -ctype=22 - -[spp] -type=SPP -revision=03 -version=0003006600000000 -erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4 -riv=0F23BBED0473B4899AD793AC76D8F722 -pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F -priv= -ctype=22 - -[spp] -type=SPP -revision=04 -version=0003007000000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007200000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007300000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007400000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=05 -version=0004000000000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=05 -version=0004001000000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=05 -version=0004001100000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=06 -version=0004002000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004002100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004002500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004003000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004003100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0004004600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0004002100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004002500000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004003000000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004003100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004000000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004500000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004600000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[rvk-4.46] -type=RVK -revision=00 -version=0000000000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[rvk] -type=RVK -revision=00 -version=0003005500000000 -erk=03AF06FD1CE6DA366361682CDF59F9708B5D7876F40A9E1E9AC2B22F51B60BDF -riv=8B5D7876F40A9E1E9AC2B22F51B60BDF -pub=9ADE7830EB74245EC357CE4F6401633E5A8048FD865F9D8F1A9189535A37623E2921427463A754F7 -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=29 - -[rvk] -type=RVK -revision=01 -version=0003005600000000 -erk=22628A9EC4C414D5B32F2B4BA4926089DE9A461B190FB3E4392D057C525535DE -riv=D5D4B8ED62B6CCA0249A79776E136975 -pub=51751B9F1DA58638D2D99F67E20A1D4A454C5B042CD1D0A449A2989808002BA68FB5B7F4B5B4E63B -priv= -ctype=32 - -[rvk] -type=RVK -revision=02 -version=0003006000000000 -erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3 -riv=B20A23079516205525683D8058379CBF -pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6 -priv= -ctype=33 - -[rvk] -type=RVK -revision=02 -version=0003006100000000 -erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3 -riv=B20A23079516205525683D8058379CBF -pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6 -priv= -ctype=33 - -[rvk] -type=RVK -revision=0000 -version=0003006500000000 -erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C -riv=501819323BFCF9FB99396B46B70A97E7 -pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448 -priv= -ctype=30 - -[rvk] -type=RVK -revision=03 -version=0003006600000000 -erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C -riv=501819323BFCF9FB99396B46B70A97E7 -pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448 -priv= -ctype=30 - -[rvk] -type=RVK -revision=04 -version=0003007000000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007200000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007300000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007400000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=05 -version=0004000000000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=05 -version=0004001000000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=05 -version=0004001100000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=06 -version=0004002000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004002100000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004002500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004003000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004003100000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=02 -version=0004004600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[isoldr] -type=SELF -revision=0000 -version=0000000000000000 -self_type=ISO -erk=9E85BEE6D39E9632A77FE3CD6E647C8DFE4606C383E1697DD6D9CE63341EAFF9 -riv=2C1F4C82FF3A796D3A772CEEF010ECA4 -pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782 -priv=00D19A1B338041F7C31062B9C40E725E1DA5D7C11A -ctype=20 - -[isoldr] -type=SELF -revision=0001 -version=0003001500000000 -self_type=ISO -erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4 -riv=C82D015D46CF152F1DD0C16F18B5B1E5 -pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29 -priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F -ctype=36 - -[isoldr] -type=SELF -revision=0001 -version=0003003100000000 -self_type=ISO -erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4 -riv=C82D015D46CF152F1DD0C16F18B5B1E5 -pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29 -priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F -ctype=36 - -[isoldr] -type=SELF -revision=0001 -version=0003004100000000 -self_type=ISO -erk=101E27F3FA2FB53ACA924F783AD553162D56B975D05B81351A1111799F20254D -riv=8D2E9C6297B8AD252998458296AC773C -pub=138446EE0BDDA5638F97328C8956E6489CBBFE57C5961D40DD5C43BB4138F1C400A8B27204A5D625 -priv=00849DBC57D3B92F01864E6E82EB4EF0EF6311E122 -ctype=32 - -[isoldr] -type=SELF -revision=0001 -version=0003005000000000 -self_type=ISO -erk=3F2604FA27AEADFBE1AC69EB00BB16EF196C2193CBD62900FFD8C25041680843 -riv=A414AC1DB7987E43777651B330B899E1 -pub=1F4633AFDE18614D6CEF38A2FD6C4CCAC7B6EB8109D72CD066ECEBA0193EA3F43C37AE83179A4E5F -priv=0085B4B05DEBA7E6AD831653C974D95149803BB272 -ctype=33 - -[isoldr] -type=SELF -revision=0001 -version=0003005500000000 -self_type=ISO -erk=BDB74AA6E3BA2DC10B1BD7F17198399A158DBE1FA0BEA68C90FCACBE4D04BE37 -riv=0207A479B1574F8E7F697528F05D5435 -pub=917E1F1DC48A54EB5F10B38E7569BB5383628A7C906F0DCA62FDA33805C15FAB270016940A09DB58 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003005600000000 -self_type=ISO -erk=311C015F169F2A1E0757F7064B14C7C9F3A3FFEE015BD4E3A22401A2667857CE -riv=7BB8B3F5AC8E0890E3148AE5688C7350 -pub=3F040EFA2335FED5670BA4D5C3AB2D9D0B4BA69D154A0062EA995A7D21DBAF0DC5A0DAD333D1C1DD -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003006000000000 -self_type=ISO -erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093 -riv=FFF9CACCC4129125CAFB240F419E5F39 -pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556 -priv= -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003006100000000 -self_type=ISO -erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093 -riv=FFF9CACCC4129125CAFB240F419E5F39 -pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556 -priv= -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003006500000000 -self_type=ISO -erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592 -riv=D292A7BD57C0BB2EABBCA1252FA9EDEF -pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5 -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003006600000000 -self_type=ISO -erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592 -riv=D292A7BD57C0BB2EABBCA1252FA9EDEF -pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5 -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003007000000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007000000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007200000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007200000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007300000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007300000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007400000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007400000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0004000000000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004000000000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004001000000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004001000000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004001100000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004001100000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004002000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004020000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004002100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004021000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004002500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004025000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004003000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004030000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004003100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004031000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -version=0004004000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004004100000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004004500000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -revision=0001 -version=0004004600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -revision=0001 -version=0004004600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF -ctype=15 - -[isoldr] -type=SELF -version=0004004600000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004005000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF -ctype=15 - -[lv0ldr] -type=SELF -revision=0000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv0ldr] -type=SELF -revision=0000 -self_type=LV0 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[lv0ldr] -type=SELF -version=0004004600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv0ldr] -type=SELF -version=0004005000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv1ldr] -type=SELF -revision=0000 -version=0000000000000000 -self_type=LV1 -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[lv1ldr] -type=SELF -revision=0000 -version=0003001500000000 -self_type=LV1 -erk=B9F3F9E6107CFF2680A91E118C2403CF4A6F18F3C7EFD7D13D1AC4DB760BD222 -riv=B43661B9A79BAD9D8E2B046469CDA1E7 -pub=4C870BE86DDD996A92A3F7F404F33604244A1D02AB5B78BC9DAF030B78BE8867CF586171B7D45D20 -priv=002CC736C7AD06D264E9AB663EB1F35F5DC159248C -ctype=33 - -[lv1ldr] -type=SELF -revision=0000 -version=0003004100000000 -self_type=LV1 -erk=B880593856C8C6D2037585626A12977F50DCFCF3F132D2C89AA6E670EAFC1646 -riv=A79B05D4E37B8117A95E6E7C14FB640E -pub=7454C7CCBFC2F66C142D78A730A3A6F973CC0FB75A46FCBB390790138910A0CAC78E5E21F4DA3375 -priv=00033A699FDD2DA6CDD6CCC03B2C6145F998706F74 -ctype=34 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005000000000 -self_type=LV1 -erk=1E8EEEA9E80A729F3FA52CF523B25941EA44B4155D94E5DADC5C5A77847620C7 -riv=E034D31A80316960024D1B3D3164FDC3 -pub=7E3A196F4A5879F3A7B091A2263F7C24E1716129B580566D308D9C2254B36AEE53DEF30EC85F8398 -priv=005815D17125D04C33790321DE29EB6241365100B5 -ctype=35 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005500000000 -self_type=LV1 -erk=53ABDF84BE08B0351B734F2B97D2BE1621BC6C889E4362E5C70F39D6C3ED9F23 -riv=44E652661AC7584DBE08ECB810FB5FC0 -pub=733198A7759BC07326755BC9773A8A17C8A7043C7BDAB83D88E230512E2EA3852D7DA4263A7E97F9 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=05 - -[lv1ldr] -type=SELF -version=0003005600000000 -self_type=LV1 -erk=48793EBDDA1AF65D737DA2FDA2DD104447A698F8A82CAAEE992831711BA94E83 -riv=15DCF3C67147A45D09DE7521EECA07A1 -pub=85A8868C320127F10B6598964C69221C086702021D31803520E21FDE4DBE827766BE41825CB7328C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005600000000 -self_type=LV1 -erk=962E952E25236322FE415F6EAC9DEC6BB2AD93CA1FE6B4B82C9A21510BE4B76D -riv=148E7A251EC03A2FA88EFCC13D882D4B -pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782 -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006000000000 -self_type=LV1 -erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5 -riv=DF0F50EC3C4743C5B17839D7B49F24A4 -pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E -priv= -ctype=05 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006100000000 -self_type=LV1 -erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5 -riv=DF0F50EC3C4743C5B17839D7B49F24A4 -pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E -priv= -ctype=05 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006500000000 -self_type=LV1 -erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951 -riv=569AF3745E1E02E3E288273CDE244CD8 -pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006600000000 -self_type=LV1 -erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951 -riv=569AF3745E1E02E3E288273CDE244CD8 -pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007000000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007200000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007300000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007400000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0004000000000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004001000000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004001100000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004003000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004003100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004005000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE -ctype=30 - -[lv2ldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=LV2 -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003001500000000 -self_type=LV2 -erk=94303F69513572AB5AE17C8C2A1839D2C24C28F65389D3BBB11894CE23E0798F -riv=9769BFD187B90990AE5FEA4E110B9CF5 -pub=AFAF5E96AF396CBB69071082C46A8F34A030E8EDB799E0A7BE00AA264DFF3AEBF7923920D559404D -priv=0070ABF9361B02291829D479F56AB248203CD3EB46 -ctype=20 - -[lv2ldr] -type=SELF -revision=0000 -version=0003004100000000 -self_type=LV2 -erk=575B0A6C4B4F2760A03FE4189EBAF4D947279FD982B14070349098B08FF92C10 -riv=411CB18F460CE50CAF2C426D8F0D93C8 -pub=3FEE313954CB3039C321A7E33B97FFDEC8988A8B55759161B04DBF4731284E4A8191E3F17D32B0EA -priv=0073076441A08CD179E5FACE349B86DA58B5B7BA78 -ctype=21 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005000000000 -self_type=LV2 -erk=6DBD48D787C58803A8D724DA5ACF04FF8FCE91D7545D2322F2B7ABF57014AF68 -riv=603A36213708520ED5D745DEC1325BA5 -pub=5888CB83AC3CCA9610BC173C53141C0CA58B93719E744660CA8823D5EAEE8F9BF736997054E4B7E3 -priv=0009EBC3DE442FA5FBF6C4F3D4F9EAB07778A142BD -ctype=22 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005500000000 -self_type=LV2 -erk=84015E90FA23139628A3C75CC09714E6427B527A82D18ABC3E91CD8D7DDAFF17 -riv=5B240444D645F2038118F97FD5A145D5 -pub=B266318245266B2D33641CD8A864066D077FAC60B7E27399099A70A683454B70F9888E7CC0C2BF72 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005600000000 -self_type=LV2 -erk=EAE15444048EFDE7A831BFA9F5D96F047C9FCFF50723E292CF50F5417D81E359 -riv=9CA9282DC7FA9F315EF3156D970B7CD4 -pub=0D58938CB47598A6A672874F1768068F8B80D8D17014D2ABEBAC85E5B0993D9FB6F307DDC3DDA699 -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006000000000 -self_type=LV2 -erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC -riv=8D18E8E525230E63DE10291C9DD615BF -pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027 -priv= -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006100000000 -self_type=LV2 -erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC -riv=8D18E8E525230E63DE10291C9DD615BF -pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027 -priv= -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006500000000 -self_type=LV2 -erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0 -riv=75E0239D18B0B669EAE650972F99726B -pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006600000000 -self_type=LV2 -erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0 -riv=75E0239D18B0B669EAE650972F99726B -pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007000000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007200000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007300000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007400000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0004000000000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004001000000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004001100000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004003000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004003100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC -ctype=30 - -[lv2ldr] -type=SELF -revision=0000 -version=0004005000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC -ctype=30 - -[appldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=APP -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[appldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=APP -erk=95F50019E7A68E341FA72EFDF4D60ED376E25CF46BB48DFDD1F080259DC93F04 -riv=4A0955D946DB70D691A640BB7FAECC4C -pub=6F8DF8EBD0A1D1DB08B30DD3A951E3F1F27E34030B42C729C55555232D61B834B8BDFFB07E54B343 -priv=006C3E4CCB2C69A5AD7C6F60448E50C7F9184EEAF4 -ctype=21 - -[appldr] -type=SELF -revision=0001 -version=0003001500000000 -self_type=APP -erk=79481839C406A632BDB4AC093D73D99AE1587F24CE7E69192C1CD0010274A8AB -riv=6F0F25E1C8C4B7AE70DF968B04521DDA -pub=94D1B7378BAFF5DFED269240A7A364ED68446741622E50BC6079B6E606A2F8E0A4C56E5CFF836526 -priv=003DE80167D2F0E9D30F2145144A558D1174F5410C -ctype=11 - -[appldr] -type=SELF -revision=0002 -version=0003001500000000 -self_type=APP -erk=4F89BE98DDD43CAD343F5BA6B1A133B0A971566F770484AAC20B5DD1DC9FA06A -riv=90C127A9B43BA9D8E89FE6529E25206F -pub=8CA6905F46148D7D8D84D2AFCEAE61B41E6750FC22EA435DFA61FCE6F4F860EE4F54D9196CA5290E -priv= -ctype=13 - -[appldr] -type=SELF -revision=0003 -version=0003001500000000 -self_type=APP -erk=C1E6A351FCED6A0636BFCB6801A0942DB7C28BDFC5E0A053A3F52F52FCE9754E -riv=E0908163F457576440466ACAA443AE7C -pub=50022D5D37C97905F898E78E7AA14A0B5CAAD5CE8190AE5629A10D6F0CF4173597B37A95A7545C92 -priv= -ctype=0B - -[appldr] -type=SELF -revision=0004 -version=0003004100000000 -self_type=APP -erk=838F5860CF97CDAD75B399CA44F4C214CDF951AC795298D71DF3C3B7E93AAEDA -riv=7FDBB2E924D182BB0D69844ADC4ECA5B -pub=1F140E8EF887DAB52F079A06E6915A6460B75CD256834A43FA7AF90C23067AF412EDAFE2C1778D69 -priv=0074E922FDEE5DC4CDF22FC8D7986477F813400860 -ctype=14 - -[appldr] -type=SELF -revision=0005 -version=0003004100000000 -self_type=APP -erk=C109AB56593DE5BE8BA190578E7D8109346E86A11088B42C727E2B793FD64BDC -riv=15D3F191295C94B09B71EBDE088A187A -pub=B6BB0A84C649A90D97EBA55B555366F52381BB38A84C8BB71DA5A5A0949043C6DB249029A43156F7 -priv= -ctype=15 - -[appldr] -type=SELF -revision=0006 -version=0003004100000000 -self_type=APP -erk=6DFD7AFB470D2B2C955AB22264B1FF3C67F180983B26C01615DE9F2ECCBE7F41 -riv=24BD1C19D2A8286B8ACE39E4A37801C2 -pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95 -priv= -ctype=2C - -[appldr] -type=SELF -revision=0007 -version=0003005000000000 -self_type=APP -erk=945B99C0E69CAF0558C588B95FF41B232660ECB017741F3218C12F9DFDEEDE55 -riv=1D5EFBE7C5D34AD60F9FBC46A5977FCE -pub=AB284CA549B2DE9AA5C903B75652F78D192F8F4A8F3CD99209415C0A84C5C9FD6BF3095C1C18FFCD -priv=002CF896D35DB871D0E6A252E799876A70D043C23E -ctype=15 - -[appldr] -type=SELF -revision=0008 -version=0003005000000000 -self_type=APP -erk=2C9E8969EC44DFB6A8771DC7F7FDFBCCAF329EC3EC070900CABB23742A9A6E13 -riv=5A4CEFD5A9C3C093D0B9352376D19405 -pub=6E82F6B54A0E9DEBE4A8B3043EE3B24CD9BBB62B4416B0482582E419A2552E29AB4BEA0A4D7FA2D5 -priv= -ctype=16 - -[appldr] -type=SELF -revision=0009 -version=0003005000000000 -self_type=APP -erk=F69E4A2934F114D89F386CE766388366CDD210F1D8913E3B973257F1201D632B -riv=F4D535069301EE888CC2A852DB654461 -pub=1D7B974D10E61C2ED087A0981535904677EC07E96260F89565FF7EBDA4EE035C2AA9BCBDD5893F99 -priv= -ctype=2D - -[appldr] -type=SELF -revision=000A -version=0003005500000000 -self_type=APP -erk=29805302E7C92F204009161CA93F776A072141A8C46A108E571C46D473A176A3 -riv=5D1FAB844107676ABCDFC25EAEBCB633 -pub=09301B6436C85B53CB1585300A3F1AF9FB14DB7C30088C4642AD66D5C148B8995BB1A698A8C71827 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=25 - -[appldr] -type=SELF -revision=000B -version=0003005500000000 -self_type=APP -erk=A4C97402CC8A71BC7748661FE9CE7DF44DCE95D0D58938A59F47B9E9DBA7BFC3 -riv=E4792F2B9DB30CB8D1596077A13FB3B5 -pub=2733C889D289550FE00EAA5A47A34CEF0C1AF187610EB07BA35D2C09BB73C80B244EB4147700D1BF -priv= -ctype=26 - -[appldr] -type=SELF -revision=000C -version=0003005500000000 -self_type=APP -erk=9814EFFF67B7074D1B263BF85BDC8576CE9DEC914123971B169472A1BC2387FA -riv=D43B1FA8BE15714B3078C23908BB2BCA -pub=7D1986C6BEE6CE1E0C5893BD2DF203881F40D5056761CC3F1F2E9D9A378617A2DE40BA5F09844CEB -priv= -ctype=3D - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=APP -erk=03B4C421E0C0DE708C0F0B71C24E3EE04306AE7383D8C5621394CCB99FF7A194 -riv=5ADB9EAFE897B54CB1060D6885BE22CF -pub=71502ADB5783583AB88B2D5F23F419AF01C8B1E72FCA1E694AD49FE3266F1F9C61EFC6F29B351142 -priv= -ctype=12 - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=APP -erk=6DEC0F32E7403B6302122678A8DB1B41EEAB9A8449CFBD241C7FEAFEFD609094 -riv=20CF5F16EC9ABBD5ECEE9A957B4CD543 -pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC000000 -ctype=12 - -[appldr] -type=SELF -revision=000E -version=0003005600000000 -self_type=APP -erk=39A870173C226EB8A3EEE9CA6FB675E82039B2D0CCB22653BFCE4DB013BAEA03 -riv=90266C98CBAA06C1BF145FF760EA1B45 -pub=84DE5692809848E5ACBE25BE548F6981E3DB14735A5DDE1A0FD1F475866532B862B1AB6A004B7255 -priv= -ctype=27 - -[appldr] -type=SELF -revision=000F -version=0003005600000000 -self_type=APP -erk=FD52DFA7C6EEF5679628D12E267AA863B9365E6DB95470949CFD235B3FCA0F3B -riv=64F50296CF8CF49CD7C643572887DA0B -pub=0696D6CCBD7CF585EF5E00D547503C185D7421581BAD196E081723CD0A97FA40B2C0CD2492B0B5A1 -priv= -ctype=3A - -[appldr] -type=SELF -revision=0010 -version=0003006000000000 -self_type=APP -erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F -riv=7A203D5112F799979DF0E1B8B5B52AA4 -pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0010 -version=0003006100000000 -self_type=APP -erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F -riv=7A203D5112F799979DF0E1B8B5B52AA4 -pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0011 -version=0003006000000000 -self_type=APP -erk=0F8EAB8884A51D092D7250597388E3B8B75444AC138B9D36E5C7C5B8C3DF18FD -riv=97AF39C383E7EF1C98FA447C597EA8FE -pub=2FDA7A56AAEA65921C0284FF1942C6DE137370093D106034B59191951A5201B422D462F8726F852D -priv= -ctype=26 - -[appldr] -type=SELF -revision=0013 -version=0003006500000000 -self_type=APP -erk=DBF62D76FC81C8AC92372A9D631DDC9219F152C59C4B20BFF8F96B64AB065E94 -riv=CB5DD4BE8CF115FFB25801BC6086E729 -pub=B26FE6D3E3A1E766FAE79A8E6A7F48998E7FC1E4B0AD8745FF54C018C2A6CC7A0DD7525FAFEA4917 -priv= -ctype=12 - -[appldr] -type=SELF -revision=0014 -version=0003006500000000 -self_type=APP -erk=491B0D72BB21ED115950379F4564CE784A4BFAABB00E8CB71294B192B7B9F88E -riv=F98843588FED8B0E62D7DDCB6F0CECF4 -pub=04275E8838EF95BD013B223C3DF674540932F21B534C7ED2944B9104D938FEB03B824DDB866AB26E -priv= -ctype=27 - -[appldr] -type=SELF -revision=0016 -version=0003007000000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007200000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007300000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007400000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0017 -version=0003007000000000 -self_type=APP -erk=4E104DCE09BA878C75DA98D0B1636F0E5F058328D81419E2A3D22AB0256FDF46 -riv=954A86C4629E116532304A740862EF85 -pub=3B7B04C71CAE2B1199D57453C038BB1B541A05AD1B94167B0AB47A9B24CAECB9000CB21407009666 -priv= -ctype=08 - -[appldr] -type=SELF -revision=0019 -version=0004000000000000 -self_type=APP -erk=3236B9937174DF1DC12EC2DD8A318A0EA4D3ECDEA5DFB4AC1B8278447000C297 -riv=6153DEE781B8ADDC6A439498B816DC46 -pub=148DCA961E2738BAF84B2D1B6E2DA2ABD6A95F2C9571E54C6922F9ED9674F062B7F1BE5BD6FA5268 -priv= -ctype=31 - -[appldr] -type=SELF -revision=001A -version=0004000000000000 -self_type=APP -erk=5EFD1E9961462794E3B9EF2A4D0C1F46F642AAE053B5025504130590E66F19C9 -riv=1AC8FA3B3C90F8FDE639515F91B58327 -pub=BE4B1B513536960618BFEF12A713F6673881B02F9DC616191E823FC8337CCF99ADAA6172019C0C23 -priv= -ctype=17 - -[appldr] -type=SELF -revision=001C -version=0004002000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv= -ctype=09 - -[appldr] -type=SELF -revision=001C -version=0004002100000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -ctype=09 - -[appldr] -type=SELF -revision=001C -version=0004002500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv= -ctype=09 - -[appldr] -type=SELF -revision=001D -version=0004002000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv= -ctype=1A - -[appldr] -type=SELF -revision=001F -version=0004003000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004003100000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004100000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004500000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=002A9064DD179A34C4FA12A969E278005600E9AFE4 -ctype=09 - -[appldr] -type=SELF -revision=001F -version=0004004600000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001D -version=0004004600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=00745179EACF255033E3F2D5D860F401C4650C7FCB -ctype=1A - -[appldr] -type=SELF -revision=001F -version=0004005000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=0000 -version=0000009200000000 -self_type=NPDRM -erk=D91166973979EA8694476B011AC62C7E9F37DA26DE1E5C2EE3D66E42B8517085 -riv=DC01280A6E46BC674B81A7E8801EBE6E -pub=A0FC44108236141BF3517A662B027AFC1AC513A05690496C754DEB7D43BDC41B80FD75C212624EE4 -priv= -ctype=11 - -[appldr] -type=SELF -revision=0001 -version=0001000000000000 -self_type=NPDRM -erk=F9EDD0301F770FABBA8863D9897F0FEA6551B09431F61312654E28F43533EA6B -riv=A551CCB4A42C37A734A2B4F9657D5540 -pub=B05F9DA5F9121EE4031467E74C505C29A8E29D1022379EDFF0500B9AE480B5DAB4578A4C61C5D6BF -priv=00040AB47509BED04BD96521AD1B365B86BF620A98 -ctype=11 - -[appldr] -type=SELF -revision=0002 -version=0001000000000000 -self_type=NPDRM -erk=8E737230C80E66AD0162EDDD32F1F774EE5E4E187449F19079437A508FCF9C86 -riv=7AAECC60AD12AED90C348D8C11D2BED5 -pub=05BF09CB6FD78050C78DE69CC316FF27C9F1ED66A45BFCE0A1E5A6749B19BD546BBB4602CF373440 -priv= -ctype=0A - -[appldr] -type=SELF -revision=0003 -version=0003001500000000 -self_type=NPDRM -erk=1B715B0C3E8DC4C1A5772EBA9C5D34F7CCFE5B82025D453F3167566497239664 -riv=E31E206FBB8AEA27FAB0D9A2FFB6B62F -pub=3F51E59FC74D6618D34431FA67987FA11ABBFACC7111811473CD9988FE91C43FC74605E7B8CB732D -priv= -ctype=08 - -[appldr] -type=SELF -revision=0004 -version=0003004000000000 -self_type=NPDRM -erk=BB4DBF66B744A33934172D9F8379A7A5EA74CB0F559BB95D0E7AECE91702B706 -riv=ADF7B207A15AC601110E61DDFC210AF6 -pub=9C327471BAFF1F877AE4FE29F4501AF5AD6A2C459F8622697F583EFCA2CA30ABB5CD45D1131CAB30 -priv=00B61A91DF4AB6A9F142C326BA9592B5265DA88856 -ctype=16 - -[appldr] -type=SELF -revision=0005 -version=0003004000000000 -self_type=NPDRM -erk=B73111B0B00117E48DE5E2EE5E534C0F0EFFA4890BBB8CAD01EE0F848F91583E -riv=86F56F9E5DE513894874B8BA253334B1 -pub=B0BA1A1AB9723BB4E87CED9637BE056066BC56E16572D43D0210A06411DBF8FEB8885CD912384AE5 -priv= -ctype=12 - -[appldr] -type=SELF -revision=0006 -version=0003004000000000 -self_type=NPDRM -erk=8B4C52849765D2B5FA3D5628AFB17644D52B9FFEE235B4C0DB72A62867EAA020 -riv=05719DF1B1D0306C03910ADDCE4AF887 -pub=2A5D6C6908CA98FC4740D834C6400E6D6AD74CF0A712CF1E7DAE806E98605CC308F6A03658F2970E -priv= -ctype=29 - -[appldr] -type=SELF -revision=0007 -version=0003005000000000 -self_type=NPDRM -erk=3946DFAA141718C7BE339A0D6C26301C76B568AEBC5CD52652F2E2E0297437C3 -riv=E4897BE553AE025CDCBF2B15D1C9234E -pub=A13AFE8B63F897DA2D3DC3987B39389DC10BAD99DFB703838C4A0BC4E8BB44659C726CFD0CE60D0E -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=17 - -[appldr] -type=SELF -revision=0008 -version=0003005000000000 -self_type=NPDRM -erk=8E944267C02E69A4FE474B7F5FCD7974A4F936FF4355AEC4F80EFA123858D8F6 -riv=908A75754E521EAC2F5A4889C6D7B72D -pub=91201DA7D79E8EE2563142ECBD646DA026C963AC09E760E5390FFE24DAE6864310ABE147F8204D0B -priv= -ctype=13 - -[appldr] -type=SELF -revision=0009 -version=0003005000000000 -self_type=NPDRM -erk=0786F4B0CA5937F515BDCE188F569B2EF3109A4DA0780A7AA07BD89C3350810A -riv=04AD3C2F122A3B35E804850CAD142C6D -pub=A1FE61035DBBEA5A94D120D03C000D3B2F084B9F4AFA99A2D4A588DF92B8F36327CE9E47889A45D0 -priv= -ctype=2A - -[appldr] -type=SELF -revision=000A -version=0003005500000000 -self_type=NPDRM -erk=03C21AD78FBB6A3D425E9AAB1298F9FD70E29FD4E6E3A3C151205DA50C413DE4 -riv=0A99D4D4F8301A88052D714AD2FB565E -pub=3995C390C9F7FBBAB124A1C14E70F9741A5E6BDF17A605D88239652C8EA7D5FC9F24B30546C1E44B -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=27 - -[appldr] -type=SELF -revision=000B -version=0003005500000000 -self_type=NPDRM -erk=BB31DF9A6F62C0DF853075FAA65134D9CE2240306C1731D1F7DA9B5329BD699F -riv=263057225873F83940A65C8C926AC3E4 -pub=BC3A82A4F44C43A197070CD236FDC94FCC542D69A3E803E0AFF78D1F3DA19A79D2F61FAB5B94B437 -priv= -ctype=23 - -[appldr] -type=SELF -revision=000C -version=0003005500000000 -self_type=NPDRM -erk=337A51416105B56E40D7CAF1B954CDAF4E7645F28379904F35F27E81CA7B6957 -riv=8405C88E042280DBD794EC7E22B74002 -pub=9BFF1CC7118D2393DE50D5CF44909860683411A532767BFDAC78622DB9E5456753FE422CBAFA1DA1 -priv= -ctype=18 - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=NPDRM -erk=357EBBEA265FAEC271182D571C6CD2F62CFA04D325588F213DB6B2E0ED166D92 -riv=D26E6DD2B74CD78E866E742E5571B84F -pub=00DCF5391618604AB42C8CFF3DC304DF45341EBA4551293E9E2B68FFE2DF527FFA3BE8329E015E57 -priv= -ctype=3A - -[appldr] -type=SELF -revision=000E -version=0003005600000000 -self_type=NPDRM -erk=71AA75C70A255580E4AE9BDAA0B08828C53EAA713CD0713797F143B284C1589B -riv=9DED878CB6BA07121C0F50E7B172A8BF -pub=387FCDAEAFF1B59CFAF79CE6215A065ACEAFFAF4048A4F217E1FF5CE67C66EC3F089DB235E52F9D3 -priv= -ctype=29 - -[appldr] -type=SELF -revision=000F -version=0003005600000000 -self_type=NPDRM -erk=135C098CBE6A3E037EBE9F2BB9B30218DDE8D68217346F9AD33203352FBB3291 -riv=4070C898C2EAAD1634A288AA547A35A8 -pub=BBD7CCCB556C2EF0F908DC7810FAFC37F2E56B3DAA5F7FAF53A4944AA9B841F76AB091E16B231433 -priv= -ctype=3B - -[appldr] -type=SELF -revision=0010 -version=0003006000000000 -self_type=NPDRM -erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61 -riv=C0F2AB86E6E0457552DB50D7219371C5 -pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213 -ctype=27 - -[appldr] -type=SELF -revision=0010 -version=0003006100000000 -self_type=NPDRM -erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61 -riv=C0F2AB86E6E0457552DB50D7219371C5 -pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213 -priv= -ctype=27 - -[appldr] -type=SELF -revision=0013 -version=0003006500000000 -self_type=NPDRM -erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46 -riv=8DEA5FF959682A9B98B688CEA1EF4A1D -pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8 -priv= -ctype=18 - -[appldr] -type=SELF -revision=0013 -version=0003006600000000 -self_type=NPDRM -erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46 -riv=8DEA5FF959682A9B98B688CEA1EF4A1D -pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8 -priv= -ctype=18 - -[appldr] -type=SELF -revision=0016 -version=0003007000000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007200000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007300000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007400000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0019 -version=0004000000000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004000100000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004001000000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004001100000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=001C -version=0004002000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004002100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004002500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004003000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004003100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004005000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=30 - -[NP_edat_key] -type=OTHER -revision=00 -key=84E9FC3574EAA11A9462FFA53D5EA46B4D0003BF - -[NP_edat_key] -type=OTHER -revision=01 -key=6ECDFEC0A11890C1F2A689062D3EFE562317B2FB - -[NP_edat_hash] -type=OTHER -revision=00 -key=8A721A06ABC7BB9BF398C5EF5D6F1FD997BC0A56 - -[NP_idps_const] -type=OTHER -key=5E06E04FD94A71BF0000000000000001 - -[NP_rif_key] -type=OTHER -key=DA7D4B5E499A4F53B1C1A14A7484443B - -[NP_riv_key] -type=OTHER -key=E129F27C5103BC5CC44BCDF0A15E160D445066FF - -[NP_rap_initial] -type=OTHER -key=869F7745C13FD890CCF29188E3CC3EDF - -[NP_rap_pbox] -type=OTHER -key=0C030604010B0F08020700050A0E0D09 - -[NP_rap_e1] -type=OTHER -key=A93E1FD67C55A329B75FDDA62A95C7A5 - -[NP_rap_e2] -type=OTHER -key=67D45DA3296D006A4E7C537BF5538C74 - -[NP_edat_key] -type=OTHER -revision=00 -key=BE959CA8308DEFA2E5E180C63712A9AE - -[NP_edat_default_hash_key] -type=OTHER -revision=00 -key=EFFE5BD1652EEBC11918CF7C04D4F011 - -[NP_edat_key] -type=OTHER -revision=01 -key=4CA9C14B01C95309969BEC68AA0BC081 - -[NP_edat_default_hash_key] -type=OTHER -revision=01 -key=3D92699B705B073854D8FCC6C7672747 - -[NP_riv_key] -type=OTHER -key=00000000000000000000000000000000 - -[NP_sdat_key] -type=OTHER -key=0D655EF8E674A98AB8505CFA7D012933 - -[NP_sdat_sha1] -type=OTHER -key=F7B2917B1FA260FD51D37716A91036651F6F42F2 - -[NP_vsh_pub] -type=OTHER -pub=6227B00A02856FB04108876719E0A0183291EEB96E736ABF81F70EE9161B0DDEB026761AFF7BC85B - -[NP_PSISOIMG0000] -type=OTHER -pub=948DA13E8CAFD5BA0E90CE434461BB327FE7E080475EAA0AD3AD4F5B6247A7FDA86DF69790196773 -priv=00bf21224b041f29549db25e9aade19e720a1fe0f1 -ctype=02 - -[spp] -type=SPP -revision=00 -version=0004005300000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005300000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005300000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005300000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005300000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005300000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005300000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005300000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005300000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004005300000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005300000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005300000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005300000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005300000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005300000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005300000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005300000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005300000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004005500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004006000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004006500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004006600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006600000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006600000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004007000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004007500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004007600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007600000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007600000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004007800000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007800000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007800000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007800000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007800000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007800000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007800000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007800000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007800000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007800000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007800000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007800000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007800000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004008000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004008000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004008000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004008000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004008000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004008000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004008000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004008000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004008000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004008000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004008000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004008000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004008000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/data/ldr_curves b/payloads/PS2_EMU/SRC/ps2emu_gen/data/ldr_curves deleted file mode 100644 index 602292a4694f56dcc9f9d6f078327955d1b60abd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7744 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 O-jJcHHK=(r?f(PzIvKG5 diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/data/npdrm-const b/payloads/PS2_EMU/SRC/ps2emu_gen/data/npdrm-const deleted file mode 100644 index fa9d8b198f0193cd2445328db2b097d8677f840d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16 Tcma!Jd*FZ5t8hO91TX>sF9`$a diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/data/rif-key b/payloads/PS2_EMU/SRC/ps2emu_gen/data/rif-key deleted file mode 100644 index 739a0b06..00000000 --- a/payloads/PS2_EMU/SRC/ps2emu_gen/data/rif-key +++ /dev/null @@ -1 +0,0 @@ -Ú}K^IšOS±Á¡Jt„D; \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/data/vsh_curves b/payloads/PS2_EMU/SRC/ps2emu_gen/data/vsh_curves deleted file mode 100644 index 8eea7364576bc9671c2aec2542874b5ff70804fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 360 zcmZQz7+CQC|NnpJE$FDwJYpoxf-Ku1Q}X`{oykeYl~qxYp6`yFFYl0ed4$gltYf z|C{{iu*{Lvvk#125SbhL@CrP<_TZfC4fk%mEwsKhyMn1eVYcj^7W+6(tpLT# a%a*Td^i%o&cK+T~w^eM~w1O9GRR91-%2j*- diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/ps2emu_gen.exe b/payloads/PS2_EMU/SRC/ps2emu_gen/ps2emu_gen.exe deleted file mode 100644 index 3bd42f2db6f586b6d463b81def8509040f961a8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 144403 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%0A_wv2+K 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 Wl<9Wf9ex)phh&l&9js^%vi>hYha;>2 diff --git a/payloads/PS2_EMU/SRC/ps2emu_gen/scetool.exe b/payloads/PS2_EMU/SRC/ps2emu_gen/scetool.exe deleted file mode 100644 index 4fe5f2b6bbd048ac39a1f9b8a6304cef1977820a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 124416 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 O-jJcHHK=(r?f(PzIvKG5 diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/idps b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/idps deleted file mode 100644 index da3786bd..00000000 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/idps +++ /dev/null @@ -1 +0,0 @@ -³ÎuÃló¸p×þ‘+%S \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/keys b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/keys deleted file mode 100644 index 77db7caf..00000000 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/keys +++ /dev/null @@ -1,4499 +0,0 @@ -[NP_tid] -type=OTHER -key=9B515FEACF75064981AA604D91A54E97 - -[NP_ci] -type=OTHER -key=6BA52976EFDA16EF3C339FB2971E256B - -[NP_klic_free] -type=OTHER -key=72F990788F9CFF745725F08E4C128387 - -[NP_klic_key] -type=OTHER -key=F2FBCA7A75B04EDC1390638CCDFDD1EE - -[NP_klic_dev] -type=OTHER -key=52C0B5CA76D6134BB45FC66CA637F2C1 - -[NP_sig] -type=OTHER -pub=E6792E446CEBA27BCADF374B99504FD8E80ADFEB3E66DE73FFE58D3291221C65018C038D3822C3C9 -priv=000000000000000000000000000000000000000000 -ctype=2 - -[NP_dat] -type=OTHER -key=2B7E151628AED2A6ABF7158809CF4F3C -riv=3032ADFCDE09CFBFF0A3B3525B097FAF - -[NP_gpkg_key] -type=OTHER -key=2E7B71D7C9C9A14EA3221F188828B8F8 - -[ppu] -type=OTHER -revision=0000 -erk=31A57D41FF28CD29721B41D347F48809D01E8C70A8F297D2F652C298315D9D4FD3ADB79D9BC55C38BF49F8664FB84281145A935130D5A22AAE065D2B3542175D36337FA72E0C24F10B8605BB1957D81D6DA1D45DCEBF6B503283905BC1F656CCD23F408234778FBCA0DAD68C625951E20C2CF06A001CDA65E715148CF1EEB294D2C4EABF968CFA6F23608F6F6257F317F53FD595A656EDC8739596EA6F25429217EC4391566D330DB1FE95CDF45B9F3B -riv=B5F9F0E46307DBFA5F54BE397475E2BB - -[PUP_hmac_key] -type=OTHER -key=F491AD94C6811096915FD5D24481AEDCEDEDBE6BE513724DD8F7B691E88A38F4B5162BFBECBE3A62185DD7C94DA2225ADA3FBFCE555B9EA9649829EB30CE8366 - -[spu] -type=OTHER -revision=0000 -erk=E044C1E29C53FEF2E064E31207D09D48676719789D59E5C1F004D002390F23608350EBCCCA16A69A08E2A813F18B92EF688B163CB6C4781F0285AEAD4DAB0FD2555A7B10D87DA8C9257136546E1A6A33782DC8C1B1A888A3FB2000EFBC12DE7FFC6EC40EC3782C8C53625B96E72334E67073EC2C0395A5DB0A1CACA119E61A86ADA4401ADD1CC764A0C2DB4D58E13F8B23515AB750DCED2BAE626CCE7FD07242E2BF4D2503282798E4A736ACC388412D -riv=20385B4B1819FD8E691BBEF17001392B - -[pkg] -type=PKG -revision=00 -version=0000000000000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[pkg] -type=PKG -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[pkg] -type=PKG -revision=00 -version=0003005500000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[pkg] -type=PKG -revision=01 -version=0003005600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv= -ctype=17 - -[pkg] -type=PKG -revision=00 -version=0004004600000000 -erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031 -riv=4ACEF01224FBEEDF8245F8FF10211E6E -pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=23 - -[PKG] -type=PKG -revision=00 -version=0004004600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - -[SPKG-REV000] -type=OTHER -revision=00 -version=0000000000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - -[metldr] -type=SELF -revision=00 -self_type=LDR -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - -[spp-4.46] -type=SPP -revision=00 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[spp] -type=SPP -revision=00 -version=0003005500000000 -erk=56C655747A4B6957A2D8BB9AC605C297E6AC9871932BFECDDE066CEE5B29470A -riv=007E6B268EF1E986D10A9889CF93A8CB -pub=265C04E7F20C3B8ACAC90E7C9D12757ED7ACBC01AA6624A2A927E719A4AA1222F87D917005F6072A -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=22 - -[spp] -type=SPP -revision=01 -version=0003005600000000 -erk=7FD222B3FEF467DF7E3F63AC8B77501A3B38752411E96AFEDA6587B5CD5E91B0 -riv=B889290922B002F57086B818A8FDE3CC -pub=71E12CB3D81AFA79670AF4FAC4BBE41AA7F7DDF368F5615E933CB1C21A783B73C085CA49986CCF63 -priv= -ctype=22 - -[spp] -type=SPP -revision=02 -version=0003006000000000 -erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2 -riv=3E05572881C5BC845D310EAC28497B08 -pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E -priv= -ctype=13 - -[spp] -type=SPP -revision=02 -version=0003006100000000 -erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2 -riv=3E05572881C5BC845D310EAC28497B08 -pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E -priv= -ctype=13 - -[spp] -type=SPP -revision=03 -version=0003006500000000 -erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4 -riv=0F23BBED0473B4899AD793AC76D8F722 -pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F -priv= -ctype=22 - -[spp] -type=SPP -revision=03 -version=0003006600000000 -erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4 -riv=0F23BBED0473B4899AD793AC76D8F722 -pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F -priv= -ctype=22 - -[spp] -type=SPP -revision=04 -version=0003007000000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007200000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007300000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=04 -version=0003007400000000 -erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0 -riv=3B6203C2730D283F978A12D5390DD747 -pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8 -priv= -ctype=23 - -[spp] -type=SPP -revision=05 -version=0004000000000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=05 -version=0004001000000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=05 -version=0004001100000000 -erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF -riv=67B49380C74FFB15AD929E8C819586AD -pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3 -priv= -ctype=04 - -[spp] -type=SPP -revision=06 -version=0004002000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004002100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004002500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004003000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004003100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004100000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0004004600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=06 -version=0004004600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - -[spp] -type=SPP -revision=00 -version=0004002100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004002500000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004003000000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004003100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004000000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004100000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004500000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[spp] -type=SPP -revision=00 -version=0004004600000000 -erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8 -riv=5C57DC863833964A41376FD7E7233D74 -pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3 -priv= -ctype=12 - -[rvk-4.46] -type=RVK -revision=00 -version=0000000000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=00 -version=0000000000000000 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[rvk] -type=RVK -revision=00 -version=0003005500000000 -erk=03AF06FD1CE6DA366361682CDF59F9708B5D7876F40A9E1E9AC2B22F51B60BDF -riv=8B5D7876F40A9E1E9AC2B22F51B60BDF -pub=9ADE7830EB74245EC357CE4F6401633E5A8048FD865F9D8F1A9189535A37623E2921427463A754F7 -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=29 - -[rvk] -type=RVK -revision=01 -version=0003005600000000 -erk=22628A9EC4C414D5B32F2B4BA4926089DE9A461B190FB3E4392D057C525535DE -riv=D5D4B8ED62B6CCA0249A79776E136975 -pub=51751B9F1DA58638D2D99F67E20A1D4A454C5B042CD1D0A449A2989808002BA68FB5B7F4B5B4E63B -priv= -ctype=32 - -[rvk] -type=RVK -revision=02 -version=0003006000000000 -erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3 -riv=B20A23079516205525683D8058379CBF -pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6 -priv= -ctype=33 - -[rvk] -type=RVK -revision=02 -version=0003006100000000 -erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3 -riv=B20A23079516205525683D8058379CBF -pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6 -priv= -ctype=33 - -[rvk] -type=RVK -revision=0000 -version=0003006500000000 -erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C -riv=501819323BFCF9FB99396B46B70A97E7 -pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448 -priv= -ctype=30 - -[rvk] -type=RVK -revision=03 -version=0003006600000000 -erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C -riv=501819323BFCF9FB99396B46B70A97E7 -pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448 -priv= -ctype=30 - -[rvk] -type=RVK -revision=04 -version=0003007000000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007200000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007300000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=04 -version=0003007400000000 -erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4 -riv=0E5CB28FA2666E3ED45289DABC67DDC2 -pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371 -priv= -ctype=31 - -[rvk] -type=RVK -revision=05 -version=0004000000000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=05 -version=0004001000000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=05 -version=0004001100000000 -erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E -riv=182CC801794A2F7027BB76D29D598550 -pub= -priv= -ctype= - -[rvk] -type=RVK -revision=06 -version=0004002000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004002100000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004002500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004003000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004003100000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[rvk] -type=RVK -revision=02 -version=0004004600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - -[rvk] -type=RVK -revision=06 -version=0004004600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv= -ctype=12 - -[isoldr] -type=SELF -revision=0000 -version=0000000000000000 -self_type=ISO -erk=9E85BEE6D39E9632A77FE3CD6E647C8DFE4606C383E1697DD6D9CE63341EAFF9 -riv=2C1F4C82FF3A796D3A772CEEF010ECA4 -pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782 -priv=00D19A1B338041F7C31062B9C40E725E1DA5D7C11A -ctype=20 - -[isoldr] -type=SELF -revision=0001 -version=0003001500000000 -self_type=ISO -erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4 -riv=C82D015D46CF152F1DD0C16F18B5B1E5 -pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29 -priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F -ctype=36 - -[isoldr] -type=SELF -revision=0001 -version=0003003100000000 -self_type=ISO -erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4 -riv=C82D015D46CF152F1DD0C16F18B5B1E5 -pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29 -priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F -ctype=36 - -[isoldr] -type=SELF -revision=0001 -version=0003004100000000 -self_type=ISO -erk=101E27F3FA2FB53ACA924F783AD553162D56B975D05B81351A1111799F20254D -riv=8D2E9C6297B8AD252998458296AC773C -pub=138446EE0BDDA5638F97328C8956E6489CBBFE57C5961D40DD5C43BB4138F1C400A8B27204A5D625 -priv=00849DBC57D3B92F01864E6E82EB4EF0EF6311E122 -ctype=32 - -[isoldr] -type=SELF -revision=0001 -version=0003005000000000 -self_type=ISO -erk=3F2604FA27AEADFBE1AC69EB00BB16EF196C2193CBD62900FFD8C25041680843 -riv=A414AC1DB7987E43777651B330B899E1 -pub=1F4633AFDE18614D6CEF38A2FD6C4CCAC7B6EB8109D72CD066ECEBA0193EA3F43C37AE83179A4E5F -priv=0085B4B05DEBA7E6AD831653C974D95149803BB272 -ctype=33 - -[isoldr] -type=SELF -revision=0001 -version=0003005500000000 -self_type=ISO -erk=BDB74AA6E3BA2DC10B1BD7F17198399A158DBE1FA0BEA68C90FCACBE4D04BE37 -riv=0207A479B1574F8E7F697528F05D5435 -pub=917E1F1DC48A54EB5F10B38E7569BB5383628A7C906F0DCA62FDA33805C15FAB270016940A09DB58 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003005600000000 -self_type=ISO -erk=311C015F169F2A1E0757F7064B14C7C9F3A3FFEE015BD4E3A22401A2667857CE -riv=7BB8B3F5AC8E0890E3148AE5688C7350 -pub=3F040EFA2335FED5670BA4D5C3AB2D9D0B4BA69D154A0062EA995A7D21DBAF0DC5A0DAD333D1C1DD -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003006000000000 -self_type=ISO -erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093 -riv=FFF9CACCC4129125CAFB240F419E5F39 -pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556 -priv= -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003006100000000 -self_type=ISO -erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093 -riv=FFF9CACCC4129125CAFB240F419E5F39 -pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556 -priv= -ctype=03 - -[isoldr] -type=SELF -revision=0001 -version=0003006500000000 -self_type=ISO -erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592 -riv=D292A7BD57C0BB2EABBCA1252FA9EDEF -pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5 -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003006600000000 -self_type=ISO -erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592 -riv=D292A7BD57C0BB2EABBCA1252FA9EDEF -pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5 -priv= -ctype=08 - -[isoldr] -type=SELF -revision=0001 -version=0003007000000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007000000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007200000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007200000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007300000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007300000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0003007400000000 -self_type=ISO -erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51 -riv=8516A81F02CF938740498A406C880871 -pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D -priv= -ctype=21 - -[isoldr] -type=SELF -version=0003007400000000 -revision=0100 -self_type=ISO -erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8 -riv=94662F13D99A9F5D211C979FFDF65FE3 -pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B -priv= -ctype=0E - -[isoldr] -type=SELF -revision=0001 -version=0004000000000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004000000000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004001000000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004001000000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004001100000000 -self_type=ISO -erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD -riv=4F1E3EF07D893A4714B1B3D5A4E50479 -pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702 -priv= -ctype=11 - -[isoldr] -type=SELF -version=0004001100000000 -revision=0100 -self_type=ISO -erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B -riv=0E50DB6D937D262CB0499136852FCB80 -pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC -priv= -ctype=0F - -[isoldr] -type=SELF -revision=0001 -version=0004002000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004020000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004002100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004021000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004002500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004025000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004003000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004030000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004003100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004031000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -version=0004004000000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004004100000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004100000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -version=0004004500000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004004500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -revision=0001 -version=0004004600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv= -ctype=15 - -[isoldr] -type=SELF -revision=0001 -version=0004004600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF -ctype=15 - -[isoldr] -type=SELF -version=0004004600000000 -revision=0100 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv= -ctype=02 - -[isoldr] -type=SELF -revision=0001 -version=0004005000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF -ctype=15 - -[lv0ldr] -type=SELF -revision=0000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv0ldr] -type=SELF -revision=0000 -self_type=LV0 -erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF -riv=0123456789ABCDEFFEDCBA9876543210 -pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872 -priv=000000000000000000000000000000000001000000 -ctype=27 - -[lv0ldr] -type=SELF -version=0004004600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv0ldr] -type=SELF -version=0004005000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - -[lv1ldr] -type=SELF -revision=0000 -version=0000000000000000 -self_type=LV1 -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[lv1ldr] -type=SELF -revision=0000 -version=0003001500000000 -self_type=LV1 -erk=B9F3F9E6107CFF2680A91E118C2403CF4A6F18F3C7EFD7D13D1AC4DB760BD222 -riv=B43661B9A79BAD9D8E2B046469CDA1E7 -pub=4C870BE86DDD996A92A3F7F404F33604244A1D02AB5B78BC9DAF030B78BE8867CF586171B7D45D20 -priv=002CC736C7AD06D264E9AB663EB1F35F5DC159248C -ctype=33 - -[lv1ldr] -type=SELF -revision=0000 -version=0003004100000000 -self_type=LV1 -erk=B880593856C8C6D2037585626A12977F50DCFCF3F132D2C89AA6E670EAFC1646 -riv=A79B05D4E37B8117A95E6E7C14FB640E -pub=7454C7CCBFC2F66C142D78A730A3A6F973CC0FB75A46FCBB390790138910A0CAC78E5E21F4DA3375 -priv=00033A699FDD2DA6CDD6CCC03B2C6145F998706F74 -ctype=34 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005000000000 -self_type=LV1 -erk=1E8EEEA9E80A729F3FA52CF523B25941EA44B4155D94E5DADC5C5A77847620C7 -riv=E034D31A80316960024D1B3D3164FDC3 -pub=7E3A196F4A5879F3A7B091A2263F7C24E1716129B580566D308D9C2254B36AEE53DEF30EC85F8398 -priv=005815D17125D04C33790321DE29EB6241365100B5 -ctype=35 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005500000000 -self_type=LV1 -erk=53ABDF84BE08B0351B734F2B97D2BE1621BC6C889E4362E5C70F39D6C3ED9F23 -riv=44E652661AC7584DBE08ECB810FB5FC0 -pub=733198A7759BC07326755BC9773A8A17C8A7043C7BDAB83D88E230512E2EA3852D7DA4263A7E97F9 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=05 - -[lv1ldr] -type=SELF -version=0003005600000000 -self_type=LV1 -erk=48793EBDDA1AF65D737DA2FDA2DD104447A698F8A82CAAEE992831711BA94E83 -riv=15DCF3C67147A45D09DE7521EECA07A1 -pub=85A8868C320127F10B6598964C69221C086702021D31803520E21FDE4DBE827766BE41825CB7328C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003005600000000 -self_type=LV1 -erk=962E952E25236322FE415F6EAC9DEC6BB2AD93CA1FE6B4B82C9A21510BE4B76D -riv=148E7A251EC03A2FA88EFCC13D882D4B -pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782 -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006000000000 -self_type=LV1 -erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5 -riv=DF0F50EC3C4743C5B17839D7B49F24A4 -pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E -priv= -ctype=05 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006100000000 -self_type=LV1 -erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5 -riv=DF0F50EC3C4743C5B17839D7B49F24A4 -pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E -priv= -ctype=05 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006500000000 -self_type=LV1 -erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951 -riv=569AF3745E1E02E3E288273CDE244CD8 -pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003006600000000 -self_type=LV1 -erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951 -riv=569AF3745E1E02E3E288273CDE244CD8 -pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C -priv= -ctype=07 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007000000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007200000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007300000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0003007400000000 -self_type=LV1 -erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE -riv=C8C98D5A5CE23AF5607A352AECACB0DC -pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667 -priv= -ctype=12 - -[lv1ldr] -type=SELF -revision=0000 -version=0004000000000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004001000000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004001100000000 -self_type=LV1 -erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74 -riv=7144D7574937818517826227EF4AC0B4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv= -ctype=13 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004002500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004003000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004003100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004100000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv= -ctype=30 - -[lv1ldr] -type=SELF -revision=0000 -version=0004005000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17 -priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE -ctype=30 - -[lv2ldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=LV2 -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003001500000000 -self_type=LV2 -erk=94303F69513572AB5AE17C8C2A1839D2C24C28F65389D3BBB11894CE23E0798F -riv=9769BFD187B90990AE5FEA4E110B9CF5 -pub=AFAF5E96AF396CBB69071082C46A8F34A030E8EDB799E0A7BE00AA264DFF3AEBF7923920D559404D -priv=0070ABF9361B02291829D479F56AB248203CD3EB46 -ctype=20 - -[lv2ldr] -type=SELF -revision=0000 -version=0003004100000000 -self_type=LV2 -erk=575B0A6C4B4F2760A03FE4189EBAF4D947279FD982B14070349098B08FF92C10 -riv=411CB18F460CE50CAF2C426D8F0D93C8 -pub=3FEE313954CB3039C321A7E33B97FFDEC8988A8B55759161B04DBF4731284E4A8191E3F17D32B0EA -priv=0073076441A08CD179E5FACE349B86DA58B5B7BA78 -ctype=21 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005000000000 -self_type=LV2 -erk=6DBD48D787C58803A8D724DA5ACF04FF8FCE91D7545D2322F2B7ABF57014AF68 -riv=603A36213708520ED5D745DEC1325BA5 -pub=5888CB83AC3CCA9610BC173C53141C0CA58B93719E744660CA8823D5EAEE8F9BF736997054E4B7E3 -priv=0009EBC3DE442FA5FBF6C4F3D4F9EAB07778A142BD -ctype=22 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005500000000 -self_type=LV2 -erk=84015E90FA23139628A3C75CC09714E6427B527A82D18ABC3E91CD8D7DDAFF17 -riv=5B240444D645F2038118F97FD5A145D5 -pub=B266318245266B2D33641CD8A864066D077FAC60B7E27399099A70A683454B70F9888E7CC0C2BF72 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003005600000000 -self_type=LV2 -erk=EAE15444048EFDE7A831BFA9F5D96F047C9FCFF50723E292CF50F5417D81E359 -riv=9CA9282DC7FA9F315EF3156D970B7CD4 -pub=0D58938CB47598A6A672874F1768068F8B80D8D17014D2ABEBAC85E5B0993D9FB6F307DDC3DDA699 -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006000000000 -self_type=LV2 -erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC -riv=8D18E8E525230E63DE10291C9DD615BF -pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027 -priv= -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006100000000 -self_type=LV2 -erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC -riv=8D18E8E525230E63DE10291C9DD615BF -pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027 -priv= -ctype=32 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006500000000 -self_type=LV2 -erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0 -riv=75E0239D18B0B669EAE650972F99726B -pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003006600000000 -self_type=LV2 -erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0 -riv=75E0239D18B0B669EAE650972F99726B -pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA -priv= -ctype=33 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007000000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007200000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007300000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0003007400000000 -self_type=LV2 -erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254 -riv=15058FA7F2CAD7C528B5F605F6444EB0 -pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED -priv= -ctype=11 - -[lv2ldr] -type=SELF -revision=0000 -version=0004000000000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004001000000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004001100000000 -self_type=LV2 -erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97 -riv=BBE7799B9A37CB272E386618FDFD4AEC -pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8 -priv= -ctype=07 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004002500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004003000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004003100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004100000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv= -ctype=14 - -[lv2ldr] -type=SELF -revision=0000 -version=0004004600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC -ctype=30 - -[lv2ldr] -type=SELF -revision=0000 -version=0004005000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC -ctype=30 - -[appldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=APP -erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011 -riv=A17D6A522CB1B08F97DA8A82E97C12F7 -pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573 -priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8 -ctype=11 - -[appldr] -type=SELF -revision=0000 -version=0000008000000000 -self_type=APP -erk=95F50019E7A68E341FA72EFDF4D60ED376E25CF46BB48DFDD1F080259DC93F04 -riv=4A0955D946DB70D691A640BB7FAECC4C -pub=6F8DF8EBD0A1D1DB08B30DD3A951E3F1F27E34030B42C729C55555232D61B834B8BDFFB07E54B343 -priv=006C3E4CCB2C69A5AD7C6F60448E50C7F9184EEAF4 -ctype=21 - -[appldr] -type=SELF -revision=0001 -version=0003001500000000 -self_type=APP -erk=79481839C406A632BDB4AC093D73D99AE1587F24CE7E69192C1CD0010274A8AB -riv=6F0F25E1C8C4B7AE70DF968B04521DDA -pub=94D1B7378BAFF5DFED269240A7A364ED68446741622E50BC6079B6E606A2F8E0A4C56E5CFF836526 -priv=003DE80167D2F0E9D30F2145144A558D1174F5410C -ctype=11 - -[appldr] -type=SELF -revision=0002 -version=0003001500000000 -self_type=APP -erk=4F89BE98DDD43CAD343F5BA6B1A133B0A971566F770484AAC20B5DD1DC9FA06A -riv=90C127A9B43BA9D8E89FE6529E25206F -pub=8CA6905F46148D7D8D84D2AFCEAE61B41E6750FC22EA435DFA61FCE6F4F860EE4F54D9196CA5290E -priv= -ctype=13 - -[appldr] -type=SELF -revision=0003 -version=0003001500000000 -self_type=APP -erk=C1E6A351FCED6A0636BFCB6801A0942DB7C28BDFC5E0A053A3F52F52FCE9754E -riv=E0908163F457576440466ACAA443AE7C -pub=50022D5D37C97905F898E78E7AA14A0B5CAAD5CE8190AE5629A10D6F0CF4173597B37A95A7545C92 -priv= -ctype=0B - -[appldr] -type=SELF -revision=0004 -version=0003004100000000 -self_type=APP -erk=838F5860CF97CDAD75B399CA44F4C214CDF951AC795298D71DF3C3B7E93AAEDA -riv=7FDBB2E924D182BB0D69844ADC4ECA5B -pub=1F140E8EF887DAB52F079A06E6915A6460B75CD256834A43FA7AF90C23067AF412EDAFE2C1778D69 -priv=0074E922FDEE5DC4CDF22FC8D7986477F813400860 -ctype=14 - -[appldr] -type=SELF -revision=0005 -version=0003004100000000 -self_type=APP -erk=C109AB56593DE5BE8BA190578E7D8109346E86A11088B42C727E2B793FD64BDC -riv=15D3F191295C94B09B71EBDE088A187A -pub=B6BB0A84C649A90D97EBA55B555366F52381BB38A84C8BB71DA5A5A0949043C6DB249029A43156F7 -priv= -ctype=15 - -[appldr] -type=SELF -revision=0006 -version=0003004100000000 -self_type=APP -erk=6DFD7AFB470D2B2C955AB22264B1FF3C67F180983B26C01615DE9F2ECCBE7F41 -riv=24BD1C19D2A8286B8ACE39E4A37801C2 -pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95 -priv= -ctype=2C - -[appldr] -type=SELF -revision=0007 -version=0003005000000000 -self_type=APP -erk=945B99C0E69CAF0558C588B95FF41B232660ECB017741F3218C12F9DFDEEDE55 -riv=1D5EFBE7C5D34AD60F9FBC46A5977FCE -pub=AB284CA549B2DE9AA5C903B75652F78D192F8F4A8F3CD99209415C0A84C5C9FD6BF3095C1C18FFCD -priv=002CF896D35DB871D0E6A252E799876A70D043C23E -ctype=15 - -[appldr] -type=SELF -revision=0008 -version=0003005000000000 -self_type=APP -erk=2C9E8969EC44DFB6A8771DC7F7FDFBCCAF329EC3EC070900CABB23742A9A6E13 -riv=5A4CEFD5A9C3C093D0B9352376D19405 -pub=6E82F6B54A0E9DEBE4A8B3043EE3B24CD9BBB62B4416B0482582E419A2552E29AB4BEA0A4D7FA2D5 -priv= -ctype=16 - -[appldr] -type=SELF -revision=0009 -version=0003005000000000 -self_type=APP -erk=F69E4A2934F114D89F386CE766388366CDD210F1D8913E3B973257F1201D632B -riv=F4D535069301EE888CC2A852DB654461 -pub=1D7B974D10E61C2ED087A0981535904677EC07E96260F89565FF7EBDA4EE035C2AA9BCBDD5893F99 -priv= -ctype=2D - -[appldr] -type=SELF -revision=000A -version=0003005500000000 -self_type=APP -erk=29805302E7C92F204009161CA93F776A072141A8C46A108E571C46D473A176A3 -riv=5D1FAB844107676ABCDFC25EAEBCB633 -pub=09301B6436C85B53CB1585300A3F1AF9FB14DB7C30088C4642AD66D5C148B8995BB1A698A8C71827 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=25 - -[appldr] -type=SELF -revision=000B -version=0003005500000000 -self_type=APP -erk=A4C97402CC8A71BC7748661FE9CE7DF44DCE95D0D58938A59F47B9E9DBA7BFC3 -riv=E4792F2B9DB30CB8D1596077A13FB3B5 -pub=2733C889D289550FE00EAA5A47A34CEF0C1AF187610EB07BA35D2C09BB73C80B244EB4147700D1BF -priv= -ctype=26 - -[appldr] -type=SELF -revision=000C -version=0003005500000000 -self_type=APP -erk=9814EFFF67B7074D1B263BF85BDC8576CE9DEC914123971B169472A1BC2387FA -riv=D43B1FA8BE15714B3078C23908BB2BCA -pub=7D1986C6BEE6CE1E0C5893BD2DF203881F40D5056761CC3F1F2E9D9A378617A2DE40BA5F09844CEB -priv= -ctype=3D - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=APP -erk=03B4C421E0C0DE708C0F0B71C24E3EE04306AE7383D8C5621394CCB99FF7A194 -riv=5ADB9EAFE897B54CB1060D6885BE22CF -pub=71502ADB5783583AB88B2D5F23F419AF01C8B1E72FCA1E694AD49FE3266F1F9C61EFC6F29B351142 -priv= -ctype=12 - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=APP -erk=6DEC0F32E7403B6302122678A8DB1B41EEAB9A8449CFBD241C7FEAFEFD609094 -riv=20CF5F16EC9ABBD5ECEE9A957B4CD543 -pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC000000 -ctype=12 - -[appldr] -type=SELF -revision=000E -version=0003005600000000 -self_type=APP -erk=39A870173C226EB8A3EEE9CA6FB675E82039B2D0CCB22653BFCE4DB013BAEA03 -riv=90266C98CBAA06C1BF145FF760EA1B45 -pub=84DE5692809848E5ACBE25BE548F6981E3DB14735A5DDE1A0FD1F475866532B862B1AB6A004B7255 -priv= -ctype=27 - -[appldr] -type=SELF -revision=000F -version=0003005600000000 -self_type=APP -erk=FD52DFA7C6EEF5679628D12E267AA863B9365E6DB95470949CFD235B3FCA0F3B -riv=64F50296CF8CF49CD7C643572887DA0B -pub=0696D6CCBD7CF585EF5E00D547503C185D7421581BAD196E081723CD0A97FA40B2C0CD2492B0B5A1 -priv= -ctype=3A - -[appldr] -type=SELF -revision=0010 -version=0003006000000000 -self_type=APP -erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F -riv=7A203D5112F799979DF0E1B8B5B52AA4 -pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0010 -version=0003006100000000 -self_type=APP -erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F -riv=7A203D5112F799979DF0E1B8B5B52AA4 -pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0011 -version=0003006000000000 -self_type=APP -erk=0F8EAB8884A51D092D7250597388E3B8B75444AC138B9D36E5C7C5B8C3DF18FD -riv=97AF39C383E7EF1C98FA447C597EA8FE -pub=2FDA7A56AAEA65921C0284FF1942C6DE137370093D106034B59191951A5201B422D462F8726F852D -priv= -ctype=26 - -[appldr] -type=SELF -revision=0013 -version=0003006500000000 -self_type=APP -erk=DBF62D76FC81C8AC92372A9D631DDC9219F152C59C4B20BFF8F96B64AB065E94 -riv=CB5DD4BE8CF115FFB25801BC6086E729 -pub=B26FE6D3E3A1E766FAE79A8E6A7F48998E7FC1E4B0AD8745FF54C018C2A6CC7A0DD7525FAFEA4917 -priv= -ctype=12 - -[appldr] -type=SELF -revision=0014 -version=0003006500000000 -self_type=APP -erk=491B0D72BB21ED115950379F4564CE784A4BFAABB00E8CB71294B192B7B9F88E -riv=F98843588FED8B0E62D7DDCB6F0CECF4 -pub=04275E8838EF95BD013B223C3DF674540932F21B534C7ED2944B9104D938FEB03B824DDB866AB26E -priv= -ctype=27 - -[appldr] -type=SELF -revision=0016 -version=0003007000000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007200000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007300000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0016 -version=0003007400000000 -self_type=APP -erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C -riv=62773C70BD749269C0AFD1F12E73909E -pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF -priv= -ctype=30 - -[appldr] -type=SELF -revision=0017 -version=0003007000000000 -self_type=APP -erk=4E104DCE09BA878C75DA98D0B1636F0E5F058328D81419E2A3D22AB0256FDF46 -riv=954A86C4629E116532304A740862EF85 -pub=3B7B04C71CAE2B1199D57453C038BB1B541A05AD1B94167B0AB47A9B24CAECB9000CB21407009666 -priv= -ctype=08 - -[appldr] -type=SELF -revision=0019 -version=0004000000000000 -self_type=APP -erk=3236B9937174DF1DC12EC2DD8A318A0EA4D3ECDEA5DFB4AC1B8278447000C297 -riv=6153DEE781B8ADDC6A439498B816DC46 -pub=148DCA961E2738BAF84B2D1B6E2DA2ABD6A95F2C9571E54C6922F9ED9674F062B7F1BE5BD6FA5268 -priv= -ctype=31 - -[appldr] -type=SELF -revision=001A -version=0004000000000000 -self_type=APP -erk=5EFD1E9961462794E3B9EF2A4D0C1F46F642AAE053B5025504130590E66F19C9 -riv=1AC8FA3B3C90F8FDE639515F91B58327 -pub=BE4B1B513536960618BFEF12A713F6673881B02F9DC616191E823FC8337CCF99ADAA6172019C0C23 -priv= -ctype=17 - -[appldr] -type=SELF -revision=001C -version=0004002000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv= -ctype=09 - -[appldr] -type=SELF -revision=001C -version=0004002100000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -ctype=09 - -[appldr] -type=SELF -revision=001C -version=0004002500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv= -ctype=09 - -[appldr] -type=SELF -revision=001D -version=0004002000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv= -ctype=1A - -[appldr] -type=SELF -revision=001F -version=0004003000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004003100000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004100000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001F -version=0004004500000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=002A9064DD179A34C4FA12A969E278005600E9AFE4 -ctype=09 - -[appldr] -type=SELF -revision=001F -version=0004004600000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=001D -version=0004004600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=00745179EACF255033E3F2D5D860F401C4650C7FCB -ctype=1A - -[appldr] -type=SELF -revision=001F -version=0004005000000000 -self_type=APP -erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9 -riv=BF036387CDB613C0AC88A6D9D2CC5316 -pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952 -priv= -ctype=0F - -[appldr] -type=SELF -revision=0000 -version=0000009200000000 -self_type=NPDRM -erk=D91166973979EA8694476B011AC62C7E9F37DA26DE1E5C2EE3D66E42B8517085 -riv=DC01280A6E46BC674B81A7E8801EBE6E -pub=A0FC44108236141BF3517A662B027AFC1AC513A05690496C754DEB7D43BDC41B80FD75C212624EE4 -priv= -ctype=11 - -[appldr] -type=SELF -revision=0001 -version=0001000000000000 -self_type=NPDRM -erk=F9EDD0301F770FABBA8863D9897F0FEA6551B09431F61312654E28F43533EA6B -riv=A551CCB4A42C37A734A2B4F9657D5540 -pub=B05F9DA5F9121EE4031467E74C505C29A8E29D1022379EDFF0500B9AE480B5DAB4578A4C61C5D6BF -priv=00040AB47509BED04BD96521AD1B365B86BF620A98 -ctype=11 - -[appldr] -type=SELF -revision=0002 -version=0001000000000000 -self_type=NPDRM -erk=8E737230C80E66AD0162EDDD32F1F774EE5E4E187449F19079437A508FCF9C86 -riv=7AAECC60AD12AED90C348D8C11D2BED5 -pub=05BF09CB6FD78050C78DE69CC316FF27C9F1ED66A45BFCE0A1E5A6749B19BD546BBB4602CF373440 -priv= -ctype=0A - -[appldr] -type=SELF -revision=0003 -version=0003001500000000 -self_type=NPDRM -erk=1B715B0C3E8DC4C1A5772EBA9C5D34F7CCFE5B82025D453F3167566497239664 -riv=E31E206FBB8AEA27FAB0D9A2FFB6B62F -pub=3F51E59FC74D6618D34431FA67987FA11ABBFACC7111811473CD9988FE91C43FC74605E7B8CB732D -priv= -ctype=08 - -[appldr] -type=SELF -revision=0004 -version=0003004000000000 -self_type=NPDRM -erk=BB4DBF66B744A33934172D9F8379A7A5EA74CB0F559BB95D0E7AECE91702B706 -riv=ADF7B207A15AC601110E61DDFC210AF6 -pub=9C327471BAFF1F877AE4FE29F4501AF5AD6A2C459F8622697F583EFCA2CA30ABB5CD45D1131CAB30 -priv=00B61A91DF4AB6A9F142C326BA9592B5265DA88856 -ctype=16 - -[appldr] -type=SELF -revision=0005 -version=0003004000000000 -self_type=NPDRM -erk=B73111B0B00117E48DE5E2EE5E534C0F0EFFA4890BBB8CAD01EE0F848F91583E -riv=86F56F9E5DE513894874B8BA253334B1 -pub=B0BA1A1AB9723BB4E87CED9637BE056066BC56E16572D43D0210A06411DBF8FEB8885CD912384AE5 -priv= -ctype=12 - -[appldr] -type=SELF -revision=0006 -version=0003004000000000 -self_type=NPDRM -erk=8B4C52849765D2B5FA3D5628AFB17644D52B9FFEE235B4C0DB72A62867EAA020 -riv=05719DF1B1D0306C03910ADDCE4AF887 -pub=2A5D6C6908CA98FC4740D834C6400E6D6AD74CF0A712CF1E7DAE806E98605CC308F6A03658F2970E -priv= -ctype=29 - -[appldr] -type=SELF -revision=0007 -version=0003005000000000 -self_type=NPDRM -erk=3946DFAA141718C7BE339A0D6C26301C76B568AEBC5CD52652F2E2E0297437C3 -riv=E4897BE553AE025CDCBF2B15D1C9234E -pub=A13AFE8B63F897DA2D3DC3987B39389DC10BAD99DFB703838C4A0BC4E8BB44659C726CFD0CE60D0E -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=17 - -[appldr] -type=SELF -revision=0008 -version=0003005000000000 -self_type=NPDRM -erk=8E944267C02E69A4FE474B7F5FCD7974A4F936FF4355AEC4F80EFA123858D8F6 -riv=908A75754E521EAC2F5A4889C6D7B72D -pub=91201DA7D79E8EE2563142ECBD646DA026C963AC09E760E5390FFE24DAE6864310ABE147F8204D0B -priv= -ctype=13 - -[appldr] -type=SELF -revision=0009 -version=0003005000000000 -self_type=NPDRM -erk=0786F4B0CA5937F515BDCE188F569B2EF3109A4DA0780A7AA07BD89C3350810A -riv=04AD3C2F122A3B35E804850CAD142C6D -pub=A1FE61035DBBEA5A94D120D03C000D3B2F084B9F4AFA99A2D4A588DF92B8F36327CE9E47889A45D0 -priv= -ctype=2A - -[appldr] -type=SELF -revision=000A -version=0003005500000000 -self_type=NPDRM -erk=03C21AD78FBB6A3D425E9AAB1298F9FD70E29FD4E6E3A3C151205DA50C413DE4 -riv=0A99D4D4F8301A88052D714AD2FB565E -pub=3995C390C9F7FBBAB124A1C14E70F9741A5E6BDF17A605D88239652C8EA7D5FC9F24B30546C1E44B -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=27 - -[appldr] -type=SELF -revision=000B -version=0003005500000000 -self_type=NPDRM -erk=BB31DF9A6F62C0DF853075FAA65134D9CE2240306C1731D1F7DA9B5329BD699F -riv=263057225873F83940A65C8C926AC3E4 -pub=BC3A82A4F44C43A197070CD236FDC94FCC542D69A3E803E0AFF78D1F3DA19A79D2F61FAB5B94B437 -priv= -ctype=23 - -[appldr] -type=SELF -revision=000C -version=0003005500000000 -self_type=NPDRM -erk=337A51416105B56E40D7CAF1B954CDAF4E7645F28379904F35F27E81CA7B6957 -riv=8405C88E042280DBD794EC7E22B74002 -pub=9BFF1CC7118D2393DE50D5CF44909860683411A532767BFDAC78622DB9E5456753FE422CBAFA1DA1 -priv= -ctype=18 - -[appldr] -type=SELF -revision=000D -version=0003005600000000 -self_type=NPDRM -erk=357EBBEA265FAEC271182D571C6CD2F62CFA04D325588F213DB6B2E0ED166D92 -riv=D26E6DD2B74CD78E866E742E5571B84F -pub=00DCF5391618604AB42C8CFF3DC304DF45341EBA4551293E9E2B68FFE2DF527FFA3BE8329E015E57 -priv= -ctype=3A - -[appldr] -type=SELF -revision=000E -version=0003005600000000 -self_type=NPDRM -erk=71AA75C70A255580E4AE9BDAA0B08828C53EAA713CD0713797F143B284C1589B -riv=9DED878CB6BA07121C0F50E7B172A8BF -pub=387FCDAEAFF1B59CFAF79CE6215A065ACEAFFAF4048A4F217E1FF5CE67C66EC3F089DB235E52F9D3 -priv= -ctype=29 - -[appldr] -type=SELF -revision=000F -version=0003005600000000 -self_type=NPDRM -erk=135C098CBE6A3E037EBE9F2BB9B30218DDE8D68217346F9AD33203352FBB3291 -riv=4070C898C2EAAD1634A288AA547A35A8 -pub=BBD7CCCB556C2EF0F908DC7810FAFC37F2E56B3DAA5F7FAF53A4944AA9B841F76AB091E16B231433 -priv= -ctype=3B - -[appldr] -type=SELF -revision=0010 -version=0003006000000000 -self_type=NPDRM -erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61 -riv=C0F2AB86E6E0457552DB50D7219371C5 -pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213 -ctype=27 - -[appldr] -type=SELF -revision=0010 -version=0003006100000000 -self_type=NPDRM -erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61 -riv=C0F2AB86E6E0457552DB50D7219371C5 -pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213 -priv= -ctype=27 - -[appldr] -type=SELF -revision=0013 -version=0003006500000000 -self_type=NPDRM -erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46 -riv=8DEA5FF959682A9B98B688CEA1EF4A1D -pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8 -priv= -ctype=18 - -[appldr] -type=SELF -revision=0013 -version=0003006600000000 -self_type=NPDRM -erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46 -riv=8DEA5FF959682A9B98B688CEA1EF4A1D -pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8 -priv= -ctype=18 - -[appldr] -type=SELF -revision=0016 -version=0003007000000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007200000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007300000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0016 -version=0003007400000000 -self_type=NPDRM -erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B -riv=4AD981431B98DFD39B6388EDAD742A8E -pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1 -priv= -ctype=25 - -[appldr] -type=SELF -revision=0019 -version=0004000000000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004000100000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004001000000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=0019 -version=0004001100000000 -self_type=NPDRM -erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3 -riv=F72C1D80FFDA2E3BF085F4133E6D2805 -pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42 -priv= -ctype=24 - -[appldr] -type=SELF -revision=001C -version=0004002000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004002100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004002500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004003000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004003100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004100000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004004600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv= -ctype=30 - -[appldr] -type=SELF -revision=001C -version=0004005000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F -ctype=30 - -[NP_edat_key] -type=OTHER -revision=00 -key=84E9FC3574EAA11A9462FFA53D5EA46B4D0003BF - -[NP_edat_key] -type=OTHER -revision=01 -key=6ECDFEC0A11890C1F2A689062D3EFE562317B2FB - -[NP_edat_hash] -type=OTHER -revision=00 -key=8A721A06ABC7BB9BF398C5EF5D6F1FD997BC0A56 - -[NP_idps_const] -type=OTHER -key=5E06E04FD94A71BF0000000000000001 - -[NP_rif_key] -type=OTHER -key=DA7D4B5E499A4F53B1C1A14A7484443B - -[NP_riv_key] -type=OTHER -key=E129F27C5103BC5CC44BCDF0A15E160D445066FF - -[NP_rap_initial] -type=OTHER -key=869F7745C13FD890CCF29188E3CC3EDF - -[NP_rap_pbox] -type=OTHER -key=0C030604010B0F08020700050A0E0D09 - -[NP_rap_e1] -type=OTHER -key=A93E1FD67C55A329B75FDDA62A95C7A5 - -[NP_rap_e2] -type=OTHER -key=67D45DA3296D006A4E7C537BF5538C74 - -[NP_edat_key] -type=OTHER -revision=00 -key=BE959CA8308DEFA2E5E180C63712A9AE - -[NP_edat_default_hash_key] -type=OTHER -revision=00 -key=EFFE5BD1652EEBC11918CF7C04D4F011 - -[NP_edat_key] -type=OTHER -revision=01 -key=4CA9C14B01C95309969BEC68AA0BC081 - -[NP_edat_default_hash_key] -type=OTHER -revision=01 -key=3D92699B705B073854D8FCC6C7672747 - -[NP_riv_key] -type=OTHER -key=00000000000000000000000000000000 - -[NP_sdat_key] -type=OTHER -key=0D655EF8E674A98AB8505CFA7D012933 - -[NP_sdat_sha1] -type=OTHER -key=F7B2917B1FA260FD51D37716A91036651F6F42F2 - -[NP_vsh_pub] -type=OTHER -pub=6227B00A02856FB04108876719E0A0183291EEB96E736ABF81F70EE9161B0DDEB026761AFF7BC85B - -[NP_PSISOIMG0000] -type=OTHER -pub=948DA13E8CAFD5BA0E90CE434461BB327FE7E080475EAA0AD3AD4F5B6247A7FDA86DF69790196773 -priv=00bf21224b041f29549db25e9aade19e720a1fe0f1 -ctype=02 - -[spp] -type=SPP -revision=00 -version=0004005300000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005300000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005300000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005300000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005300000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005300000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005300000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005300000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005300000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004005300000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005300000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005300000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005300000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005300000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005300000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005300000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005300000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005300000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005300000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005300000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004005500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004005500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004005500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004005500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004005500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004005500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004005500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004005500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004005500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004005500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004005500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004005500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004005500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004006000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004006500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004006600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004006600000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004006600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004006600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004006600000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004006600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004006600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004006600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004006600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004006600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004006600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004006600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004006600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004007000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004007500000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007500000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007500000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007500000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007500000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007500000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007500000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007500000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007500000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007500000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007500000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007500000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - - -[spp] -type=SPP -revision=00 -version=0004007600000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007600000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007600000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007600000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007600000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007600000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007600000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007600000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007600000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007600000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007600000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007600000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004007800000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004007800000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004007800000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004007800000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004007800000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004007800000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004007800000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004007800000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004007800000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004007800000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004007800000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004007800000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004007800000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 - -[spp] -type=SPP -revision=00 -version=0004008000000000 -erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5 -riv=6D308B59BC9054B12C833359D31BAE77 -pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5 -priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C -ctype=07 - - -[metldr] -type=SELF -revision=00 -self_type=LDR -version=0004008000000000 -erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B -riv=47EE7454E4774CC9B8960C7B59F4C14D -pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019 -priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670 -ctype=20 - - -[rvk] -type=RVK -revision=02 -version=0004008000000000 -erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17 -riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46 -pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A -priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF -ctype=12 - - -[isoldr] -type=SELF -revision=01 -version=0004008000000000 -self_type=ISO -erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086 -riv=953F6A99891B4739358F5363A00C08B9 -pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=15 - - -[isoldr] -type=SELF -revision=0100 -version=0004008000000000 -self_type=ISO -erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C -riv=B96EA32CB96EA32DB96EA32DB96EA32C -pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151 -priv=00294411363290975BA551336D3965D88AF029A17B -ctype=02 - - -[lv0ldr] -type=SELF -version=0004008000000000 -self_type=LV0 -erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A -riv=F9205F46F6021697E670F13DFA726212 -pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D -priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3 -ctype=33 - - -[lv1ldr] -type=SELF -revision=0000 -version=0004008000000000 -self_type=LV1 -erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD -riv=ED8699562C6AC65204FA166257E7FCF4 -pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96 -priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3 -ctype=14 - - -[lv2ldr] -type=SELF -revision=0000 -version=0004008000000000 -self_type=LV2 -erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03 -riv=9B79374722AD888EB6A35A2DF25A8B3E -pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50 -priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A -ctype=14 - - -[appldr] -type=SELF -revision=001D -version=0004008000000000 -self_type=APP -erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E -riv=ACB9945914EBB7B9A31ECE320AE09F2D -pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=1A - - -[appldr] -type=SELF -revision=001C np -version=0004008000000000 -self_type=NPDRM -erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F -riv=246F4B8328BE6A2D394EDE20479247C5 -pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762 -priv=009EF86907782A318D4CC3617EBACE2480E73A46F6 -ctype=30 - - -[spkg] -type=PKG -revision=00 -version=0004008000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[pkg] -type=PKG -revision=00 -version=0004008000000000 -erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD -riv=59D28DB4ADDFB40B7D768BC9667C67B1 -pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0 -priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710 -ctype=17 - - -[appldr] -type=SELF -revision=001C -version=0004008000000000 -self_type=APP -erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752 -riv=FD40664E2EBBA01BF359B0DCDF543DA4 -pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893 -priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC -ctype=09 \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/ldr_curves b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/ldr_curves deleted file mode 100644 index 602292a4694f56dcc9f9d6f078327955d1b60abd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7744 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 O-jJcHHK=(r?f(PzIvKG5 diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/npdrm-const b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/npdrm-const deleted file mode 100644 index fa9d8b198f0193cd2445328db2b097d8677f840d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16 Tcma!Jd*FZ5t8hO91TX>sF9`$a diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/rif-key b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/rif-key deleted file mode 100644 index 739a0b06..00000000 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/rif-key +++ /dev/null @@ -1 +0,0 @@ -Ú}K^IšOS±Á¡Jt„D; \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/vsh_curves b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/vsh_curves deleted file mode 100644 index 8eea7364576bc9671c2aec2542874b5ff70804fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 360 zcmZQz7+CQC|NnpJE$FDwJYpoxf-Ku1Q}X`{oykeYl~qxYp6`yFFYl0ed4$gltYf z|C{{iu*{Lvvk#125SbhL@CrP<_TZfC4fk%mEwsKhyMn1eVYcj^7W+6(tpLT# a%a*Td^i%o&cK+T~w^eM~w1O9GRR91-%2j*- diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/you_know_where_to_get_keys!!.txt b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/data/you_know_where_to_get_keys!!.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/ps2netemu_gen.exe b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/ps2netemu_gen.exe deleted file mode 100644 index 8c54d2c7f8f03f2cec0bb5fb01c18d5b02233a90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150964 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

7G77n&WjA$On!eg~w{ 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%0AtG%F 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 diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/scetool.exe b/payloads/PS2_EMU/SRC/ps2emu_stage2/ps2netemu_gen/scetool.exe deleted file mode 100644 index 4fe5f2b6bbd048ac39a1f9b8a6304cef1977820a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 124416 zcmeGFcUTk4{v4M1@NfAX60t5(z1QWW7DE8jP-U}8~5Jf>$ z>=i^5v4CB%VZq*>dp4U8J)ZOZz3+d|bv?mhc4nuS&)hpZL9gJ2R1=D#RAGMoqNqaH zS}jmlisraXzIP6*G%Q6Zn~>!9o%)(9ZVm>?)rAV=>z6|h3Qnr-`8|M zV+Wc3f_>I*kLi8JJ%q9S1Q9VLEqTd(T`0kRqFo5{|~R5>;LEz2Fv?D|M1E=_JZz4!^*Rolbh6Tirl>HpNM0fjes&%4 zi`1Re;S_A8j{{oDOu`q6BPi-fbKF3gsTQy+{}FD8Qndf?^8W=bpk2nHK3?Ha4`9y0 zS-ibC?5g?}pg|vkGQ0%uJXJm}D3sOgPL)7;hM7 zm;o?WFgp?71h)KRAmAt*MX?-CGjXFkVnWLJcX8s=7My6)pH;h(FHAW<@#`qJH+w2K z?On4)a{SPbCEaZYf4XF|_3_(rH!TfR&vrf8cDdRrjTV^?Ui8RI(#q=H-cS_0!LR>~ z{GJcZr}|%|UeVw8kB+@q(r>8e$g=YKo!^|itf#qrQJLgBVEvBan;jM`UTgQE_~5P1 z`oG>+TyEO(W#|g$Hm9~{42%qECk>nIbEiwMg)?1W7q+Syt8@FFmA$rydbcs9*LH_5 zTJ|XI>AAk~^R9d62uCzL=cngt9!WJeGun3G%(J_RorWEqGdp2WL6m!wk9xd5L5HWG z=&iJ7ocbrjoCD5dH?#5ZV$DRy{aa_r5wlAQl^_hr>t)C}MnEE;;W#z~5 z26 zF*Y`1hHu^4aP{$Hn=fzQYCae@Zpp5jH>Kg0mj1mA39FQ1(|AHVwct@U&#r_-yv zysDzCtpl4+o3?bei%VJEmoNINDk|zfCrz5X!Poaq>VN^x#_QJ~8Mb4`!%f47zYp2G z`Ddns!*R6*3uX^qym(LNwQGwL?Cjj%e)ymoQCwV`a`51Zy|->94e8uDg4Wl!c>L>E z`ycP$>m948h@X7Q;RGA2vre<65kt5gNq^8asYHTbXV`e6?GcxKHv~Am4>45`h zSDZOB{Nl4`T{qsnJKxzp37&iQ1=+A2~*PdM!$Myv?zF`h?~N1$_}5K3v{r`t(IBPn;NO-=RZ~ z9_!W}uD*ZY?#1WNElsnt^Sd-}Ze1Y|6y;P`Cuq!{Kg)XQ((T;Us}Bz7*s+Vjj2Vm1 z*VWN8u3Yih85sD>*Tf`sYi(_Mleu#jjM}*Iv(~IxneBCT+whMayH)k%iRIKGL(Y`P z#1u|(bUfK}<;s1*Ty9FoX3d(9-?#7Lj(~vg@kK>9dbe(EzZC$O3IMDG0OkPzx&XjY z0AN1=5C8!90su__fE)l|A^^}100;*Fo&W%=000*NU@ZXP007JY01N4ggpI z0DJ%dVgLX#|9b-fVE{lU0N@+|@CpDZ0RUV9fNB6>7ywWM08|11&j5g-06-i7&az$E~n z9{>;p0K5YLrT_qL0Kjel;3)uL3IHqv05$*s*#N**0ALaT5Cs5a006rHfGhyu0sznx z0JsJK3;+Pq0DuPoKnDOI835=H0E_?tya9lY0KjbkKpOxM0sxNyfDiyc1OU_n0NVh7 z9RR=<0H7}bFb4pz0sx!^%z00{ul4FGrx0GtH?h64ay0e}erz#0IcGXQWG0JsAHOa}m_0RRgD zfFS_DDF9$60B{okPy+xs06+@>U^4&^3IKco0LlS?MF7A^0H6l|a2Nov0{~hA0Qmrb zH2_cq03-kavjBkY0Kh>2pbG%77yzIF01p7*7XXk70Hgx|3jl!606-=H&;|gw1prtA z0A~PzLIB_-0I&}LNC5zv0{|BRfbRgn4FJF%0EhqpCIA2_0Kj+v;2i)E2LOlxfYShg z1pvSS0HOf^Qvl#608j-0>;eFi0e}ktz!U)BJOD5e0Qd?3i~<1M0Dw0Dz#agg5&+l) z0PF<-)&Kxo000R9a2x>~-U9#?0KjDcpeX>*5&(D!0E7YnD*ymz0H6&3a0&p} z4gh2T00RMlNB|%N0B8pQNCAK_0AMlz-~#~M0RXxH0KEW!g#f@z0KgRhcnts)0syT5 zfEoZ`EC8Sb0Ne%u?g0Q+0DwIJpbY?c008O$KsNwj3;<9H09*qAb^`$60Kg&uU>N}L z2mnX}0G=Kz4d06;tdFb@E@4gh!q0674F5C9kf05kvq&jA2F0FVv<G1^~0Dvw4a0~!=0sssF0Ac_D zM*v_Y0Kf$RngIa&0Du4hpa=kH4FEv?pMm`U4Eg^W^8X{`|1Ze@8<77skpGJy|HB~v zRUrSbK>m+_{C^7hUjX^<1^NFH@_zy3e<#TQS&;um-0{NDokpA7kb2=ad-t8 zkpI&l|BE31PecCuK>oji{GSf_zY6j{3i7`>2GcC6NDtkpJHy|I;D=&q4klf&90E{C@)Ze;o3^ z9pwKy$p6id|IU#A0g(UwA^&wC|K~#fpN0I7gZwvv{NE1wUkv%*8uEV+VoyF>mLLjJFZ{67l$?*#dO3i7`nLe;MTe1<3yf$bUD;e|^Y*G35Un$p4{`|6?Hk z?I8byApfP1|0^K>FGBurg#3R7`9BEqe>vno5At6Z^1m76|2@e636THeApb8x{x5|5 zSBL!n1o>|S`Ckh89}D@P3;8dA{BHyKzY_A_9`e5jfA^&GU{_lkR_l5l53i;mz@_!WMzZT?wd&qx2)NFkpDd)|AQg_J3{`Chy33G`5zDY-`h_s_PT}bR=Z;ko7YW#U-fOm!+uj%oBx_& zGvCSiR88H*fbmPMwv~1r_}X)s&XBJsy*14?MwwK1%S#@;$s>NwRb$ELkCD@3vRhYf z8FMLwe{iud!QJ=AtHZa(8n^~+pSO1E!kfFOxy9GCKRp_$R+#UiUf#Rof(wJ2shrq* zv>^S>H%^iKB?>t}euI$R215c#OcPDmvx~I>y2VeR=GfJuzxxH;au0zk$v&4tO z^>(%`G5kJa(6BQVY4obw$A6|?4sPglcZc;%jkA{fTj-DKk@+$-Z1|*{b_GLqxsTJ= zFFC)ae#5=~Ub($K>^t|OXh4?#N?sdN)r=!4H@e>!w2BDq+;rmbhV8x?j(q?2ZMK}W z?=g0H|6OqxJFRtjyZh_NUBezWSwdTU4cwC)|8eG}ta>+KF*m1 z;hPuK><{)ZK4KW{@?0-FKR3 zXqWU_SIIDy2M;?f2#N~a)hq9XiH3PWX_M)v$FI89S97a{$&7bhk8RCUX%c(nRqH8Z zW|tY6ZcjU~_`SxvH{OB=8~L{yE~~4RT)%1)-s#k~pR;Yu{MT-JAGkqn_I;}@A73Qt zWWDU?5LUl)?6~#nM@9O>2X&tPW%*t8fp-U~<$66i>bfXkUctCiA!@4XmEtg8gJ12k zzjeEDv~I;L2d7KX)$3CBJsWaVW7eFRPuq>QOFQ@a_Qna?ZWD$ytNT2)<9WhRt<33J zR;I7qJ2p?)Eew`;|IqvOt=TlY5d(9tceLg9>!IDOIx=R=w$7_Z2VCuDYi8e6J9__; zpr_3ayk1^mxO&mL%;Tqhcz5Vc!70N8MlIU6ez4?-_VEq99uMeprBn+|$fx;pRX zoZZ7cxZ`lEjydOo-nN^zH%Y_u^~$?Nn|(vJeujtl*=oD1 zC+1$*^fS9s$9CI?$z@y9YfNq(n%{l!o?}~j+pm4(o4QyxHuTc!fDG60kMmlVF1%Uz z%&gz1u~Sa&{jfeHvqVt7WPb?FMgF(XIIbhb6oF1iO0B8XKYz6?% z002(`fMo!{3jp920Kf$Rt^oi&0RU$JAQk{f1pwjzfV%*|K>(l)01yQL8~^~?0svD0 zfG_~S1pv4Q089k{i~xY80KiB9pdA1(0{}P#0CWWa9smGA06;GQKm!110syQ60JZ`E z?*M>20N@A!Fa`iH1ppQU0B-<*jR3%90N^?R&F0RSrifJ*>C3IK2v0GJ5?*Z}~y0RT4u zpbh{y4*-z)p9KK80|2`L0B-=`8vrl@0O$w+^Z)=N0f5c`z*PXi9st-605k&tDgc0W z0Dunwun7PV006B40Br!^F#zBM0CWHVbO3-o0Kj1Y;2Z!j4FK>20Ez&B9{|950H7EE zI1K>U007AVz#RY}1^|cv04@Lk`T&3f06+r(69ItF06=p9ARYi11^~PV0A2zB2LU^@UH0szJX09pV*0|3AQ0CoTXd;lN= z0MG;go&W&V0KgRhpb`MM0RZd;04xCj3jp9a0MHiz*aiUX0{{#FfS~}uCjdYX05Ast z<^cd+06+i$PzwM&1ON;HfI+ z0J8vq*8o5t0N@n>FaQ7;1po{N0MY<}V*tQ&0AMr#&9fIR>(6acUU0IUIkNdQ0! z0FVm+YybdE0e~0);0FL81OPq*0M`Hj6#!rX0I&-HFaZEc0f6xUfF=Mi0|3|x0K@_S zQvd)X0N?-s@D2cY001-q03`rGH~{by0PqI@0s(;g0Kf|X;3WW14*;wO0Q3QX*#Lk# z0H6i{90dU80RSNYKqUZR004Xg0O|k$Cjej_05Ajqm;(Te1^`|I0NMaRGXS6?06^yd zbO7KL0FVFxNC1Fe0Dv6;a2){X2LMz90NVh7006)Y0Eh+vo&o^N0f0pSz-a)01^|Wu z0PO*QBLF}z0N@?~&;|g|1pv+h06PGH8~~sl0H6T?+ywx_0D$fQzy|=JKLC&c0Q3X^ z&Hw=40f4svz#RZ!8UWA*0B8;XbOQhe0svM3z(xST900HY0Q>-ehX6op0N^kH;0^#p z0swOXfWZJjZvbE+0N@P(Tm=9&0RTDxz+?cR1^}2302~7V)&c;F0f0*YfGYsd5&$R! z06qZ#djWt<0AL9Kzy$zW001iifQbM=1OQM30Hgu{Z2^Eo0Kh5$Km-6h0RYMXfM)=} zY5>3%0MG&eCIA3=060E__u4**~p z0KfqN@&SNH0Kf?VU@8D`5C9kh00aR5kpIIW|1%)}+e7}_L;m-N{O<($zZ>#@800?< z`M(G9eZ8LjF&N{GSK;9|!s01oGbi z^8Xm*|1!w`O343_kpCW#|MMaLlOX>aApciF{`Y|VFM<4j1Nna*@_!=ae+1@_!fPzXbCCA>@A)KSeEs*~@ zkpB*l|6?Klk3#+rg8W|&`F|Jk-wX185#;|k$bVJH|1ik^c98!!Apd7U{zpUp?}Pl; zfc$?7`JV>)zY+3(0_6W^GXEj}wIKhkApbi;{tF@he?a~>gZv)|`ELvPuMPPh1Npxi z^1mD8e^bc+C6NCIApZ>^|1%-~d656XkpD)I{|_Mlk3;?sfc$R(`L750{|@q>3;Ev) z@;?aje=p?!Ysml2kpG_`|HnZ7J461DhWwuc`F|1e{~+XlA>@A*NL4#@uvkpCkf|GPl`&w%`| zhWwuk`JWB>zYX$#E9Czz$p68R|GgpqeIfs2A^!s)|35mdImM){Qm~|pAY%J81lak@;@H(e--3^U&#MakpC|r|F1y) zAA2eB?%;aDa{knJV|s?JYSTkjb~rw&)?!jiuqDek3^a$6pB-RkNlTha3qfxA1;Va z5+_NKI>nTkEy>?X&{zRBY?4UAj}S+T1nGQ5B~e4vK$}VHulKoJ#eGGsiPyhWTDjaz z()52+^7lIQV6yuEAv`I?pN+!hl9rM6we0Huzu%l)mk;&Ze7gRv;lS-ZTlT5FKWER1 zc3E4?u72w1< zK5o{$f5=%6>%d>6gGcuYptrxDCR}diTwBkAuo}SL4|;S4Tsa4 z5qzoikDyH0Af7}d5JfAe8p)54q$MOahK}L$BKZHm$9TN%RMUi3&*TeY_f5)W67}ob6`3&Qy(SH17 z0aFT+j}4O+X}>@zX%TIveFEgID{BOrZ5)0innS6rm0LrK)}Z5)q|7nd0RvG`OA8A+ zJS~wgm9?Q#Jf#+kA}vOXNaRE@IbmyUr4&gy4%?#t89^z$uaM7^@@Z)TKSB_d#-Jr3 zK`4meF=R`Ybp$DyQXCH!f276fM6~!H_y0_jRt~6?&OgE>GhIb{IRD;$e})4)(RZ?7 zjpd?ElzXkGJz)R?HGP4Mr?#2o+qS5N%7(A;Qg<1#bG!|*x~R;U42Bt zG+LUJkRX;MVqnmoK2DCFXvRp|)z8I+MoaQVXx}KY1d}r5zw3oOP^Kt>kT2rJlScio zGDV=Hv3jtr@Ynv~DfOhhoBk_JwCg`(FcreQB-MfSU-1>Sm1joE{~rudpyPjpBPW(g zvr|su_ynw;Qhua;fM1{s!vrNi20z4;nQ(+V_TE0;2*yk#20HeXi=Us5UvD~46oXC@ zVm>i}8A{QF9-TXDE5*m!X<;>z)Y~ahB4m@GT!UCb*%La+*yNaypztKDRp7{;K`*7i zka8Ruf*2n;<1mQ1a`fPa6-k}6k24zKH^87w#NVCa@9%erKf4|vIVnGpj^RNQ&?yoz zhA4(tbYjdOVU=KQ91BoXD5ZQbDwcmzX4B5Y5DKjEuyf|Mx&7U1Zjn5j)P90xB1d^;gVq=BprN z=F{RR24ZxIKnTRjz7Z0kn7VA)ne=}1r6@9~kt~J&qI`$BQD|@FdNRuhlU|ZQn8>EX zc!skcBrY17r197G0bnC#-LHKA&-F!CdKO|z=>&@6z;F?b<$yq%eD5WJFM*!v0f9++ zI)cPO-U$*xGATnsQaD8}5rN`M;*|4DV$))Z&$Jqw2-7o&8|XbOv@dK=XFtlr--m+q zp*%-e!C1mrP*T1yDwNHSU8X7d8b$K{OSzS^p?m_|UC0+?*d!>Ta)@FYZ7dBT45f{^ zeWZ+zvKa~GgdxGmGx$p>29$K8LSn(ktn-WnLjp8O!yD@uYzd4~c^b!SlmH7QT8AKt zERoF2{6BI;da>lXCHlM~Si^fgFjERzn<4O4tjCA!M;gpr%Z{=sRCzS+RBl)Sc zI4P0LkZ^I5DDp3wPodw%;fXwahpMqGq=DokjiS7LLs5fJGPKAwsd^|%D<$6nB6W~w zOwh}~g!TUi=NLA#q1id*;q2?rJU_4z|Jrvx4n?ksl;K7Z9fN$~ zR#XE{;%4OwS3sT(NZf=3E;AHy&9=VGO~yGFEhk9k679^4du{|Tfy*ddigjagW<8kj zOi5xQCFobi9hJhB&k@;uG{3r`kmrl@2tW3*CKJQhrpD@u&` z@I!@Vj|*^8(l|i^N*h5mG>SmUF~^k+S4tYemsJk;}pBRJn2&*rGLyDld7%FBoql*d4X>K%|UgOXq>G91F%4LX; zPk`AF4{zc_K7K?gyRu4|DHF{Vvhfu|jR|RKE0ZsbL-ET8%`72L1&Y9A6w}-&HjT#N zsfhBA3nzsFCk3Fn5%Tt6hq5e!zpvj&bC;1WPUeBkWgxkxp%!HjH3{s+kS{3#V}md4 z$<`&DO-p$y(6WaMbLPQ9sWhJKGe!UwAJUFI5|*3e=+ z)W}Lg>eWw?o?_Y|cliUTQbBO3XjcT4KkYLURR#&Bo$MOZQ%u|cou2Y@t*o#5D$-F* zca(sPKgGzC4Mh0UWd>m znu%{Iudb}t)->5{!PBa|%F5{|^7#G2#=^umDZHnZrHL;jR8LD2rvQLNF}`FNX1Fno zltboLO2XQT><9F;v^DV&CKie%_#qyXL z&otMH&0B$gCc3N*EqYs6_QoSdZwp6a(I}2WGLi8jW!g`9sUVU6=lCUy3oTzm{&CX17DdKOIi*rkf87x_g-ojHWLIRv^nd9Y$W{!T6ojv1&iV}#}= zlKArFO%@El3AC|{DcrIP#ZDR{tWB7qtxO@(e-e@&mdHP%{?+Ls;)O$@lhD}pNy0Np zQer}qY@JCa>9EV}Un47dvgyb}D^j5-AKw5EA8&u9u(C^Eu~aG`d5<9Z64gvTE~(gt z#giBW0Xu_eE}xWxUFKz>$ZvW3FgDSO%*RFcRA?T7#gRPSqPa;+G2=gyq$7VamIeRU zbev_|x8{*a@d?VQkoHX{>7)w<;mjc73i-)=Ax)cbEy=3gkF4U2AAbn;UmC2U~Y!lX_70XD#O+{|`_36Z`K^FCRL{G;u_N+1o=JEA1+S;c5O*0rU*1QhQuZE>yL1M zbIR(KNd8&^iGdWHe7w9Iy`BFtfP8uQQwn@MyZ=_0-^Wj&zoVOrJuR1Tqh;?~q#<}* ziI2y&7HM}S&CU)Uc2@_lo&+My1!j{{HlUfYgnch+Vky`C5iSH_LlZidn@~R`(gIh_BQr?>>cfG z?fcr>+4JoC*@xRl*hkq5?W65u?bGdLb@ODNYncAvCrYs)|9hPky6(5VEV&p&`;(d~ z_AVNqNSUXaWN8e>pCnm%PoB;1w_9+8%EHOY^l#~rL?M0^Ns_$T^!~g>2_q%{r!?gQ zQK`rNsD(Vl-`a~A!pyS_X}4azdi_3|$;%gJLfach(zuJ>B^`|COwz8QQ4&6RtW&s= z6O{rkN#c2uIPyXVKkWSofh=4id3utVhLbqVGvc6u6g3F<2EZnNFJmC=&M>qKUJ0d< z_gDadd{YAVX`ck%IDnk_D82fTD=@~N-GgLaN`zWAhLybvqGbLS|L`Ymh&@+v9G_+; zxol5WHm2CU4p|)eZ>Jc3L>zIj+KtgSc$s95ZJkhSa>I)!jZ=(CU-l2ADCa?{Dd5Wn zF8hv)Ml~s8uBELMSMm)PvMWPw7;~-UM4;GqA^FHYxR3oB%YKN64Meg9z>IHSUPK%( zn*Uqfl=GEsDtj{f!AwHR?aFQ}EAA@a^OElt`$R>Ny&L6zV&f5Esz_7z`izoqRx9qY zn@zt-BNB7caC?C^PxVi=nvB4n=uk6!(3Y0|a=K zWgE>OZ`=_`ai7#(HWTDge^1|Ew#V>i7)5+}`Pd;ZPegIwU%owzw;*ImU^|=Km%nxW zt=>uvM0-T0(roub70L<@`AWJSPnFo{a_327uyN+^?r4cg&F*S5U5%!d>jpkqtbWTw zUME>z%mf+j?L(6eA3e&&pRtLXsSJ)@U=gNC|B!o(A9-nl4NLNy_{+kQfW#>eCkq50 z1hmGUu!S97z%*JU1z8d#8gs?2I|`+Xz9EGpW%q|9Pe4`WQkvisTYRiYM{ML^A|*|P z^*^025#xd6{~S-&S@a z7$SKn&r5lIF@DK=Nale}b}oXX%&de;esUaA>?1xo5upetyTJHYyu8G9x}0N@*~Cgtdk37DiOa55Op&buo@a zN|>c&zC>d9)6RluJ{~x*v?#983i9j5GBazBqV-Aj8t*a9_QyRZ4~EQ4*-2O@59d%< zZ}_Q${oQW!s#x^D{Dm)wq30QfaI#)Dw<7MDS&+fRg`j>yVQFZ)>#7 zU(uf4_}?OTVsDH5>e7;fAeDsO!`0>C8Ux3NBKJsaib|emjFi(Pnu#>1uE?4 z;u_%N0}p&GQY~!A1#BzUwj{P+V19 zGlw78M3pRgqyHm)C7crI;L%?8R|4hf|9PJX(=?@o*-J(Gja>UJkm9}GWm5DzoAC(JX0$K!n`|~Q#qi?CGdA0*r1emW#xe27 z;3sXzG#lGqXganT<+h?}No9<=eX)|s+lW zr2YIy%9@Sj(b!&pD{EsL{eC5d$YB04!orwqN4l0tOD-uB*l8alJEtU@uCxOSN!mo_ z!N|q`ipM1Vw^&TM|2+FD-zFv6NVYkKXDnF>$nG79^SkyX*o25x99m_LY03`miMZsI z7}=3#HckF#e&p35Inyd2dy=w!7P2<GaT|fi7nq_kq;BO9wh0=%kSyy z=%*wCl~=MqFr+LWl-GAzj!JcrmraI3B9a&>1wF(Z0ip1k)z1Zo6*2rM{-eAC9EXJZyL&q`XZ+m!d;)PBX}NfKdjy0! z`uRDIg4-1?xkLGe^C)j5fppwGJ%%703P5@L4DkpcdHV#oz>7i{M=uX2%H7f5owyOk zk=XtLe#l#129l?bn=B?Nx2GowgF4|XR3PQ+>tt&~+`dkfNQ_-JA>QAoN%3w4`=~f+ zg!hfuHpKZCshF{a$yTgw$=KMZB;i8^B0*xPSc)exCVnU{DN;Z->S7`zadsqu+2@Gh z3x!dM2~+}(1ji@QkrL#=UgJ;sCJFgCa{zZ}A|CUkI87i%zOwsh*JP_m0WX@!TK~kP zDCT@kg49}?l0;Gbc)o-w0P>TE8{&+uDLhw7kh3&76vYq4oC{5mS|MwMi|7Bvk0(k( zI#J?KX+lz{tVjq->SvC32YiVLQ{9wCmCa>0$zLFr6`LY4k`l4aCkh3Y$f8b z#7Bc9l0WFk=KEU)2~ta@P$VBHQ&~QZNmJpGu`mgt;gRvo*{}ErrtH6^A(e(o`Pf#L zSkorLWXqmR-f};yzxY`;`b9;?|5oED9N7^|(n85wyU=)1w1iDs9)skCBA~}HJ_NtV zW!w7qvY`$BY#I_EAuc*pk{lO`QVXI4e73z3es?o~ z2(g50Qj0|bauo{kCnN(Oa|4H_BqBcMkbIy?u$?Io($P>!=CbnO{2e)`f$+?!4cM#` z^AVF0ABb$lYQai#**W9izv4j29^=3e_B#)<_xMUr#3T>)Fd#Ya2epFZnzGjeq_I6P zr?It;eKf4tUd&LYlw+elsFNj(1vG_h&x?o{dz#T*sf;b9DGBy`s23cLFAT0I^~}ua znUgc|#iu6IGpA3642%if`(Psh&6zOnaKAx(Ra^(aw4w|&A0j^fRJbOFilzt7(P%r;xu6uF*M~UEtmVTLoqc%n-OAAwC*VGZ>~l+)I%^Mx|yt zj6K|y$iF47V_|y1eE>FT&)G0T;ch^Dbg1SCnAVg7s?t)!8rMLSrY-JYLjKKg4ODA( zhkG|{(%#cyT;YC+_*%Fg3xhw?ptT11N8maG25)b)?jV1BQ%+L^V+MCIY(1FyFy3%~ zXZwFR+|5z{EVlp0!EK5ArAVKYmj}}s?oF^UJT)i7IKuq^_epuM3Tw85dokPpSTHpE z!Ck@jKi)EF0;gJeut|Am!Fa&^4)IBU2ErIn`kE>nS^r~o(d>i!7ufy>DKw4Y-U*wu z*EARxxSu0F>3{4JX?B2n72E$4;T{P0Ew=x$NNRH7J_4JJr+F}5aDPR7(*I=4v_$<+ zvi&cG8~vblhV6gSrd{FQ2AhP>f^mZT3F4Ff9}R_W?|9H6j!+nG8|2ViYuC)%r zCgW)i%rLk=B0i~45KJ4T{!f7$w9&f4_CF47YW9FT7dFXn2880_l_f4}+l*ej{uOCKJX1?)$h;`hO%$ zTeugo{htcA9o$#h{*Qs%1n&K?Nq^0RafkaY;*4xw*uu1r-FwSt- zAwEfO42%)nE7|^^0QUg6tJ(e+!rdG0!?2se%!ToU`wQZe{`|N3f12(8aD?fC@LOT4 zz)XP|0{3IYC;br&(;n_+Z2zajZ4dW#w*O<{?ge)NY|@^yVTQu}0r5%y|J(e(%=Uj2 z!gNRYJ+Mi8Pls`Z`xWAo{vQj|5$?5Y|7XBG2=2RV|BK)@gZn6KJ(&40-f;i;AM^ht z(kJER!E{FW&9FHzlVKd;eu(>|JfmRR!M)^<`G1Y=e*y0I#Ql8Oq`b3WJm7wh_@qDo zZT??m`=5_6#t6R)HfgVEFfMSvKz!2wAut`_Ud{IZM7RgSeVgt7c(}Q67s1wrnFr$q z_cz2R{r_+C|18`85eU;2;kUyk;j>_z;C_nur2j|57{a}R?f>y`_lLWR?f*EqP2oNS zTL)$i%rLk=AwH?kzs>(Lw*R9MrU%0Bg-!CC0pkXDJ>rx0l+XY5Z2!yWe=XbpVuUeA z_+zk}!7PCBf%_Mwug0O;sBt(g)tXa=Y8?IMYHCzFHIAx*nj_UgjpLxN)`V)S#!+dd z)|oO=La8YHe~%-(E005xC$B=|1vr0(-3)w{k}HnlhT~8;DUKqI zaOh_?PYFK(r^%G=F=@zd%Cn|OwQ!~=O&$p+u@qI7rp1Sgg;GV@II$%mF9u1TY#5V>dG^vu}Gkzh5ql)pQ3G;9fxmLs963}F?)hQZ3GJjS0 z>r-`0IUG&c#9w}$NoBIvG_EKP@h4X*_-{32*D4%b>yvA_wkGWnpMVpEJ8gc)RS`Rv?nXM-U<4W4Aw^ACG57iW$jl2x%gY6vj7(XU@m{aZiMHW4?PF zDPZ0q@Q{XGBE{(q)4_(~(6IGkRAJsoDb78Zb1=+3JgfhY_WrGDo1h)lFi$nmhFX}d zI+&%+Fo#=GZSXf4I#FFIQ_7m^PdQQkR0JiZvZ&3}N$MeKE9OJmSox`zOi zM1ESaKL(WSN1t-1uwsD*IB8%Oy;07ns8J(>Ksi@ zQ;t5TEr;e&n^|44!qoGi*3k+3Gc>q` zPZxDKwlGrvP=|N)zF7Bhhu_yYmQ0;kd8_@4M|b0g7gRQ!opvp2M7FTy@f~rI>0iQs zygbjJ?K6hcs#>TX5izjY*AKdy^Ul$t{$uq8o{t>Eu1m&6Z@T)Z$pE)X)nPxT=~l!Q zXm9gR58(f>&6is_2%Ui#PTXHDBbu2aE5^{tPNt+%c$e75PlMykyhs@eP)kKX zjh)0D7_YfP7`ccuCgMrM@VK~ep3vx~1%H}175?tkGIinjtsKJ>4VqJePBr^*rg|UW zx9(7j=Y=J6Cd@qiy|%;Ma1ZV+gZC4z&EG-u%F#sM2w3?a-=a zHwVU_y1M0C!;NdPbpogF)gl|$nbCX73&UOYgI-aUjK-9Mej?^*zEJwJ-cL=?>n%g>TH{V`J*Q59x&@a z=IEh4!XwA&tio3Z^N+1+`ru%bRTcXa`?+0zzBi>}twHzOs#&e?NL%PcJe=A;a_OMh zc-Oa2NiF-t6ng8m~Ec>EmPf_o`%|cKMrkT8c(OjMHn28&NBw+}Wm<{A zb#6ZIV*9M9;tdsIW7`KYe#=stUTWf|Q*^ksN*D9)YJnyFkDNBqIhwaP_<*TuZ2p+- zzp6?t%gPJptgG(bA-87qzS79m-QPvLT(dbgNqb4WN{+hLn!&buFQ!FnNLmI_YEy*U$I!X-$8uDz{OS#fRpkO!4-Kj+_#5oO)#bh&lO zz2@TULGzW%wzIj7eZ z)l4eObF2GRU}5y`=+W7wM=n?_$@ky3`9L={+wvnz)T=J{45|q@7G2%dEIlf}a47GT zieXI1Qd4oSz9l*bHqLK)(y&%7cwW5b` zSkDWr$~9~Cq@ZtALAKHIsaa~HvJI!S&7oG`{>t6A>Y{BPBcbqD?O?~sb$Y>< zH+7r3?4iN>xwLEEc3w(O$+r8?-aajV|Eyb9%}IXV>03K7q5rJ)mVXVl`ot!r(bM#!0Q0ST`x_;C%N-uEgxSZcW`X_3(^n++NZzZI`< zb7bCBy|kJfW4rpi0l(7TOH16J#ZELl?Kq%U%}6z$v^UNf;dL{(KBZ@j0&a6=8!UAw z(wmp{tn0SYYP(~)r#IMnHWYPUuzk7qmF4qVYEhTQxLa1a%nAQ0y5N65B_O2eh=Fj! z<{N|O&0L|ke35T<^ZVV>6XUESQzKR56%@9CQHEhdHk;A7fg^F!|4Y!eN&I`rw)LiJs-|FHad?tTe1 z{4~q@jIf{YpFBNQ`s3$>MdjBAZn${qtL^NpB8^3>QUi+j_v3HhF)TZ)zjjV`m-Al> zv}Rt+)%OXh57iSkxLzJy9Y0sEG|{O=@Ozc6j?Ygd2v1}>rrdO^vR$G6gggIq0kw7N zRKw!-vmM8cE((sxewN}?T`dgm=)*M#&9H5{hHKd4t`Rk;1(ki+-!f~%!tmTVSN#hX zw?5r)H>jch)Y9#x_1BkIf2=Fk$lWo|=uljZ<(gjgy{5fNi@UJfJ>ifX>6%lGPZopzP}H9wAbt$$K|^nP)x@8#Qd z2WQRho{_g`@ZoOd37-uv3i`V~8IqpzV{}0r|4u`2#_7IV{;!km+&}Hl)hc|mzQsoC zOM_=ieso(x=6~PVQjVx{YLihVt}1tSXlcACy{MiyVV>%=);?;5!&~Yt=zq1@jcF@% z@7D)5jr`JH%YVsDO>OQv?SXD%bP_gqH*!1ws6)q;O`Upn2|6~X7N1kn$=xS zbL)kVQr;Y)HUpT&vDv= zOd5>FaZe`a_g;1GgV~-Bw=pqdH1gTHlcv881mO^% z)H|~>d=3tq)LK(_V(0L(30o2~)0T7`l6ql-YWj~0XU6X{D;Cah&WNx1YA3E+_*EpF zUJy6>WlF4ypJhxRyY~XkNqfTw8^lLM?K0&JKT#J}S+$M-@MvV@ktSWD<_Yda(-*7U z+iW!O@b2V4EG=o#(C-m7J{Pr&ycZt|_S||m+bet3Dc8Mk)ZIRMJGh+aHpSW5>awGB zWHX0ePdtWnm^;VGH|A|Xw2F1$pyH$;ts93%%su|uzi6ku--A{Ye6MGe41d<|L2#`< zJ$m}9s8Rc8Y#C{@=tW4AZ#~BZyNJieo9_wDH0*Q#(6~?cUYG5EP`y?9a7_MyCvnw3 zpISv1K33CBe`Ghbdwnzd(d!ZGHofFEguQz7!2H>@nXl?*+wOXCbd2Eno5Geq&Q@Ig zzD~H}XO4Q{uipCYzZ$0B{5Is&x-Ut&V?MjrQST>ZmA>mfaO#`pL9TC?I%+j+Hof@a z>#}*DF8}iR7#5OR9n|;8O}$y)Z}odP=yvgkaW!++=hs$r{&4s4u)cS0HjS&QkIK1m z@MeAGk%MjZJuREu?+73jLpBPxn~5=2S+nTW35R+Mc~MBB=D+fMq8) zO}Tbr*|X-yckK1Lxc>A4^wjxtZ=36!PtiK!YdnfyiJAX{rymm#&rgG`2f~W1&50q?o zI5_L_ltWE#U(V~lzgd2GGmrg&{5kt#x>OZ~x*Hr(|L9+6xn|Mf1G8(2v+fxky)`!Y z*ejdt5;Fh!(Zz*x&S~v@y|DfM-6C>{(6?0~A zstS+Y7<%_+>^tj}+Iu7PBSx+dYUlgaV(YV3>-E2m`@DO|x#Qz&_iR5K?W8G5>Mp)= zIbqVCWd?1VbH5$hGI(8i+ZjEcm9-zTK)Pu+eP-Wzw{*=xd#yH%J~zK@L3DrZa%x7N zz|PmaY3R!p58jNLHed1?LD^sv>y+vGkDfnF8R@5c^OZx)vEiRL zel~q`YW)iLUKU+~eS+3K_$c<6v_$j6*@@d7uD3n@J>I)~eIL_9UFV%{yL|nINxgcs zbNg{*0_~`>ctL~yr)Tav299jCdgS08T@NnoV0rD+##ymt$*r30xUl=a#-x&|VJFoq z5;lxI)W+z^sKT6v0ksC6)1H=Iy_cCG&@;a{KF&Sm{l43iCsjrFTa;R1+R#a~q{*l5 z{i7DH%9=UYe9^0sOL_)`IUlgp_}sL1hgZiVWpB5=tX=$bR-u_|beq)yDhWMa7P-F} zS7YvZ-XinM?ZBrl5osp%_+Y^#zv(qm24SAI7dw-0>uK;i3>}MaPGw0;C zuJ7CWv%?hCwLJzEck5Kw*)cV6<=(1$b1v)~W8MGYs8?gJJ`UWM;p=w2-OFFX&i%u+ zTxZ;RT4!}`%KZ5WmFr%a?Ef-+Vd#iQQ|v8A+GlAk*#1Oh-AVJrblv!E_61w+I~+YR z{kxiZPmeZ3y+7=IpWMZ2dGmF%Q%g*#KbeaO4FT_3Bpi}MQ0sQNJfYWUL^2Wvw8=4+Mqtt&{ccBNv9I~SKfx2&DHU_^uk z@5_xYs_SA`9o=?RhsbIUEXd9a$DZEKBwQFAD6~9cTs=sl^ika?Ui}m zo$owz{2Vzv&HRf^$0d%p_ILL`c4O6xx-(z$=WcY-3D^?OzpFB z@p9jvW@al72Xy~l^K4yYu-{>$(d;iA!k22h11}F1p&YH(74Z7*rZm<;%H=4h_b=36IakmEbt`Yb4 zIDBpCo5`wL%bpbOAMc^Nxue;BL-#=yPTWzVZzn(AuG_XKdU&UteV5X&G)-K}I~?^^ zU9E=9{}c_2<*)U4y;o`tKcW$Ts$D{C!-Beqt$o%-F59ekd!|*|ox&~muGe*3QBgfp z>!7D;#{LOMpB8d879Q)csKX)s$k=`KyZ493xlb)|tZ9F%a$@}5M=u&G3x;Q1n|8LP zFndH~+>YZv!oQ@?=AVDriZjM1LS0z>wb{Ukd78Q(`itmuo&x=`*TWniZHgWz8PMd> z)nTfYZWX%Ier(k)i0f0Z4oRx^Cv;2{T5< zcs4)5>#*x!6n9|q9mj>7+vC);E9m0->-xRM?VmPF{a`_-^~WA^SxZ+8~7*1T=@CG9xFMJx`;^sSi-At&y?3E#B>-Z^} z4JSS{I~By=SAC|%p*r6=C56wwAD%fO{BDO@gIipWxz{GV|5oYA_sZjqv@aNbWpgo= zSXpH8U})`D$ALGORc*O?D*oDyhHp-Sx>y@g_4hr|GhJ_m6_z`za;4TyIy~N~?HPJk zcfxsJwQ&P_s5tH{(b3mG-;|yn6jNYKi>Kuuj;hqU!h5uSY|R(Fp4I2G_myXNIa{^k zz^MFzZOjhnPCj&WO#kCYgnM2UX3?vTh10Z(mSoQ z9!BW2SQ^=Xs&0Jjp!C?_9gp0xE-yM4C%i&t_{F3@FZ4Q+ICO@@ASR80@74XZ!7 zBf2)wQZ&EbRZx<4k(WQWI4Y~XvAAM`U(5sBOHEUj73sJ&>7vs5aG+Xu^V3KAm*gGQ zF)=+5ym(B0tZHf1uk8ipWtP3G*UcGSliOi+Wa++_5%0Pu#cp1s62C-yjh1@O3q9Mx z5{+maO$cha?AXvL4+_&;jo)vY+w`EJ-QtS*s~=x4(VcLo{*cb?+RoFjRaCyMd@v;D zZvN*^x3WZ&OIlz4c)0s$@xGM%Z4bGn%+w5i@~c^FLX>*{3(Yw?V;1n&{rVi9E8xZb zy4G4)=CVQiL28w5#cOZXtbl$^@=LczcjuLdwf^KGaPt}@O1YhTHFjwAjo>>DwK`FK zZ}xwaQ=IExQ?%~1TVB~Di-KQuM~}WUx^Sd)wtxN-i*5%tZ#z5>X{ZB>; zPpeK$X>b`4ynVWl#->`|+!oVNS8UvKBwUR?DgB_!mR zP-s-?IJow5u->|5Q@d@NyWZg8_B>bm|6%W4;G(L!|KWidV1UsXbx>4P3MvyVY`lPY zL2+PA(IEsRMa{}4v_hSOnxfc%aX3w8nORwCX=zzmkGGN(&;TzbUQ$XQ(=t6YlqjUA z=)B*x&m5RRt$x4fc|Y&_e*Q0hmixB$+H0@9_S)C8XXl35k6jecd?40Up5J}S7XITm zUp$$S@##my<5xMJn|7dkcGiujqkB*LG_=Q~7XtnKd$tXUdgiD2esyITeqa2aHFie* zv?n8X^r*Y?UhmSae8^Jn6~EPeI;<+X-a60z)jbUr171)OyTe`gU8>f!1Fqa?L(5B|hwZng2 z+yC0kDaR*Fn|rQH?AR@*(#PbjYTvr;IBif^$MC4E9|wgEef!B9(>|P!4S=-${`ZWo zjC#Ur>8I}p7q0r*@Zo{GdKBH5{7Lwk&o&RK{9{#HTd&3bUrgU?3jeq=Iq0|R3*ztp z`N`Rq2ZzkP+%Md;t&4wWtEz2}z9W;1EQ4jG={{ERXIOA2(ZE z@#yp)ehBI{rmLpkf=Tyv?zM8TBIMs+u28gHZR?#Zd^+WoSGOb|`gi>|?e|=$PrFe1 z;j+s=EdTyfzoP1GA@=nvd!L$?j}3r*)8_tuB+In1A*1tiXX1N2F!fZwGYh}*TaD%a zan^50}hHe=H+gfR`likr@gC}{b~U&kssH;(E3=Kig4B7( zd%Zs8K*-Tv_QH03mhX6^+YWK5@9G~aCoZU~NqDmKlj)|V&vMDD9~{uOpBU!vw?Q2~ zHnYu;CnJ`BIQQ(5BGbCHOFK{fy0FK6m-ZK(c2wHe6yG>C<%e?@!t_OFzHaqlW#het zwjo27ez72{GW^S@_Xjl$I~N}_{>JR*Pd+(q%Qp)it^Xt0zyB3eRQ7iNPd{JNc2#ZR zkOPL-!f)VW5Y8YfBi|{{iP0-ef}3dW7_ApZkM!Odnjf}t2gqG zX;Lnn@$Yo?33b(L$pP>73J9E#Fev2S_p`d3-J8(uz1dy6PVRDl=LZ8fcKZFXw}U_a zskGzMTmEd@_fkc>D=VCBKEL+^-KQYsOo8KjQs#T~yyGpDk2B{!Gx2$09zSI=Q+e>B$d{ zAARD9uYZ|(xALo}PCsoo9p4{1B4|yAk;&agKfIKiJLc5mjiW>S_m6sX+pCEy{=F`K z&s!@Jd}}{5#*V%`{Dtt6q2E3pNT)6k)s6WnzYHQwmH}&_) z^^b`U{(QFj_ktsikNXw=_Vk3WZ?xN9+j!`3`OP<`zw1o#-EggwuIKft=R040ch9hf z37>LxifYrPQrp7Xyg~O~j8AJ*?>}_epZg=;zhZy=+T}6MZ-1DRF}doi{%Jop@~uw{ z{w4a<4E&Vnzg7wV{`0QGC;N~5_4qVR)v*mzFC4v4we|a6Uo5JevQ~9y^>>CN=dv;n zhj+^OX5vlVo|Vh)EBmp>g7Vr@w4^&mVC3SV(+}N zy@72m9vJRt{dVy)aR-Z!bo$Qw%U(-ATORw$GmW!fjTrX8Yt`L5F8^Tg$~T@E`|;~{ z|8{BF>D+Ht6_q!(`rp`a{mi|wr^3SJo3dRK1OP3IP!{P9rUYX`>WCw=hv ziyeXoEdG9Gs|`O_u3jJd)f*p8ReksI+GnqR>XU&UzCEG& zm-h3R&qrvdY!aSK*>U`C%U40BN!ybz`+m7}W$&U>g`2+)Ic?kZ=)@m)uITeS_5bZf zPd)jOe}&L?%V&Qqnes+j|5LRO-7{^{$#;%NefiDi?iX^@V+x=9`t%dWu>tV#v0d9Q zWmf(B^iQ)5;~v+gnmeYg64ymuyQW*EAGWb!#!vH#E1oL<@DpyPI_}%=p1b$;PZnnN zY7-nZWbL-=F9uh>+v%Wq-+Qx`4BJ!|x>5an!rs*neKt7w<%;nEF;8vz;zdQ}gXXBG z->8|S$xpBSdC;$Ky!hne7Z3e=!0F8gmyCIIwxRow-_Gh5KQeCiFR{N@wQ5M(WvPv5 zSYvu))t*Q1j_mRCyJ=$W}?9xBl|J#H~KD-PdlqP!^&ocz@A}O`W2jI=(RC@SLTuJ=?85 z=H4qx+gqsMt7Y}}Q^VOef;vd+~kA1ttQ#JQx zdC#ad?bti&!BZ!$=0-klJfAXc$m*3xY~@!=`dK>6E!56Do6&#&gfr$(M~`*JUKUr} z^QllUt9}0q?Nu+tHWUrM@1473oX8DSUopVCp_@T?3`n@BIO`kq+_=Z<; z=Fq9@t}LGzGNwoL+>BMr-}p7`;-$oC9ew^hzF_kCDTiL3bZV=k)c@s2p5Id4-=c{B zp%NPa1wZxvE%NcyC3hdY`q*2U@2dQ;0kF%fr0SE+&-M#a`zLpqIr^=2-`(%rHg9no zZTT7NtGXY)?Xhv^`lya=;&az!hgFqL2h{1io*lVl^bs6h6la* zYroa~0$&bEdUo;D_8$)ZaYkv+=T7xpcI3+u{;EZ_pKm|+`unX$%nzY zHoaH%iOai_o?80BflV8_SvB81KlRJUmYwqPy@>Armw$B4!5zF2b_d)Z!~KP3P{HpG zxKf3?4b1?rLf57(u6_CY2KWT3G|E=qt-a_*l;@vZrd*a>hD=+giQ9U(y`jME2?=m} z4mUY)70d;=?T1?(3f$|E0JkM^7fXSg781bukN${1;*H9uKMhKM2`~z90MHY#5ilK4 z0|)`E1WW*&1PlZe0p;v=wd<4h@{08U*cnk0-;77m!z*m6h0oMS&fW?4#KpEg(zz2Y-fOCNMfaQQx zz%f8Sz*ayu;4+{!;AOyQz;}QL0G|S$1^fZ%3V0VV5pW7H7_bwt0B{rF1y}?a3Mc{G z1y}=k3~&a}2Cx*61ULlf4fq@|18@=G58weK0DA%V12zDj22=w&0^S6q1AYKR1HJ^z z1zZLA0P+Dwz&C(<0P6rx0)7Pq0bU2B0KNzG1#AIufIk7P0Cqqk;9Ed1z$bub0KWse z0Nw#)0R9aa1o#?|1GoWbhZ?l=@>jeD_cgf5aFgL4fqMk50j>e=zu^80?ku>o;MT#d zgBu7p5Uv1MfIAZINVxmq?uQ!zHv;a*a6g7S4em6!4!91uo#A$d`!?LS;f{wp9_|Ua zC*a1wje)xZ?hd%~;Ld}49qx6wbc@Lk?u&3=gqr|20d6_ma=7=wy$|k(a6g3m6x^ra zo`-uLZU?v>;JyL(4Y+A=)8HP5dmL_mxc%X7gS!pxY`C-GUV(cBt`@Eq?h?35;EsVi z2JS()2jM;l_d&Ry!Tk*Gb8w%7djakRxZU7(gS!guD!7y2PJ;Ur+@IhMfjb25F1Wkk zE`+-ft`n{kE?I(DKqz1`KnE}bA^}+dx)*8!bO%@f!GLjqD8L+m3NRcH4tN5f2aE;u z0ayV_P_O~w0J{NUfcF891AYOJrPVPl_5p1lcC$N35YQRm2j~D$czG*TDjy$T{Q2Qe?fR2{YAB$^Uto(r z&ENdB`kTMj|KXqZKm22(THAK*^!N+HUwhYI2iIS4i@%O7{yP25U+2I13;7TKy8MTK zto?m_(eD2K0Re%5)ST30)GQ=go$IfS>#wcrubu0U{5egvMv4F{dTtG2^n9luQ5HL~R z|K(r72`{hE)zBE^pEKP{@m>}&;PxjtQ-m79sOy!BNNabS7;6ot|J0eM$5oF(HX%h_ z?oDEJ=$V&l>hNb?60(q}OHM7R_OTCB8!o5u!&H2tI)86=q>!kwm3V8n&h^r6?O1YN z9e7>4HQgzDZZZ!)a8takL>0rSXC4#U+I|br=2^hr!w+lo=&%fKeg(pJrKop0sVGy3 zcB{FYcI&J7;LI!RJMC7UJSAt;hJ8rr>PnEqUEIUq*HDP>vb+Sd%AmH-2{jzzwSoyb zc~f`Z94?qOh%xunZZ$pVqO09H?g8!Ax8)-CBizdswi(qbDrSG!G510YCY@l`gN`Xu zFa;CoD1#})mZJ{g&3$;&K%rdwLVu^zS$zq$F`RH!N)O&U+^JIS-RT1{$USTj+-elu zTqARcR2@^OVA8P~8ccfIZWZdun|cc6w(FrYUvy+Oai9TV?VUJi?Oq}fTe*ilIM6k7 zfZCfhtVBI;3ZW9a&wOLjL__iTj8cu_0R72|x2Pr25r&iBVm;1T&kGwAZ zBQNP+s*}^%^TnGGE2pu~R-5_RD)GJ>PG^3xHvcQi&k{>ctCaaQz{*q!YQA;4vP94+ zFY@hMx-3g z#oPxa3tsdKX{=jpn8Hh0!VgwnbSA2~4JaZs|M0?h#|t_)9xj3#Fek*S_;{6}c;ckJ z9>TKKXau8LFsaa8(GcFrsoJes%93;Hz)J{vrGZyp@DkvP(a9-(hTbJVs{@ZC-ADGQ zWKW>0OOErGJ!;w08hz8yhW?Aje|!!Kouic#p$4%U7NGwc4AEc>ShgIEg3oEx<_Ezl z3&Dr3kK{8Nwv#OKPiSARMN11Ax)O&jtg7UKI;?>N33<5$Dg0RC2qr&dE1U|eA}{17 zoH9h0IMjTOM#yQTj5;YJL@&#mXg1~iu_-6xT{y+c<8#!)wc8b%(dd>p1Dwgl5>YkE z`%M>C$*1T9z0|fDIs<$tyyTBygMJHRmTL^FB|o^8-Td1NS z-iPHCGSpNm0#w%wO;{D>Ll6}BoO(W`5s^~y7lP4##Dk!JorNyjoY20c?l^pLOy z@{_D`)b4d;HK+O@pWs>1dbf(!Q{hreGePSZ8Hhp%VP%1Q$k&WUj-~|sAV6%RHCTeH z)*V5`nb=^h@1$g&V(@Hl5;K#!tKxaa>V>KsL-V0=`ei#A0Y zE*W|gB54~}FVg~LPf{tG+t6yJ0*Z_{qeG1L#(zB5Ak#wuE$D&Smf4RtF~!J%uM{=U z=>!gCgFU$(e}K|fR!J0kjOm?r>o!-d!>Y7fZRAG^WKd~HQdM^%qY!n-Ifl=183m{I zkW zCpnFbZ^=Yt)C*8;Dl(^@l$=o6u>3bU($NwVBqTvCq>6PxnbZImYJjWHz1Aj zkm``%RcuFKx>}j~GfH60Nalk|zTz?~l$RqN;WO&dnIr@dfn*GA&@(T&l+HzktOAo2 ztOm@|JFM&s5+eM>D$L0R*c_Mb1gaz?s-k3zAZ#i#!(|v)9x~}ohCzoRK*)iqqRxSQ zOmHM7Nnq}Bav27>&YV?F5;RjTqV4PQh8ougav{->jDI_)&jPrIS`4nIZ)Rg9j6-dE2 zUn$Lmoc=7Wz!WI#E2&l&m|DRF5wm7eNi~`?xL{ns!~#?60<#v=(Y>WQx9O;@CVUO8 zm<-?W#zvZJCF*(OX~C#V7BWKk#FOi_SQnidSBp zPZW9MS%C|-=hUoQm+a(%*JUc4-05{<)Md;*b>oCYu~5@7GBD1>)eAW%ZN^}o?HN($ zOgwAnkYn9CuG9gd*-6612rgKn$q`M5Qs6|v7%W`R)I~I;7wUZ<(iQ0aVn=ZG$tXvI zLd2tgQqO84D%63VZ8s5L$CXUNlu}4+G<-W=ocy&yv9~nXz3QkADw--pT2rXDX+lo0 zGf|U&nY%yD$>}q_oSa(ZKt5B8D(ICJH@z|y>Dpx_LZvDHuvL}6mlL&Hm4%wY4^;@p z&^RZ4HNzdWVjF)nkK~Xi8UA-9CKnS7R(V2 zMN~#yjk(6B)Gp|U33(4?gI&K<$f>n!7GsViM8hl!1NdmzaDD)k(N+p8Q_r0j5^IE% z+WS))91r9>7j(DlUuGFWhRPGE<)hp732Eo@7iPa<@AI`^zI)hH@6kb=VIu~E53N)(I`S_4RZSK`x zoPT+IFs-~D{<&8pI6vFeU`2u>z_1rOv#f+49W0bj%J8IKL#h@k#HrE@&V=Y3HS{n? zZL4rrAH=DLp*WR~(?lz+9iroORy`zIs2JGGsu~!W^7d-;mcnbx(JQP0)B-++ zy+a+|hQ0RTYA-%cPYK#Q6;6?`KYw+4eyAoLTU-o4pFvv3YyBtAtSsRZrH(R9X`ZhhwgB0fI4HxXBwE z91+neAzZMKpo)oCVg8k%j)_-u>cRxgfOw6yb-A$~b0>wv2Q&gw*;Zi~65&Fcx`PGxR1lt`P02U---X)5c0q5MdVl-uN0 zsEf@z%w3HrQP#qAAv<&r>^AUfR0cxLJB?i0ontiBoiR5g-bPZ(3}4ikJIAY+vp?5G zC~;$Qy9bkwZrYs+vj;+fJA(c;T!01b&IAn~r>>rY5^W1rUfTT8=qxctbxs>9TeBz@ z6@ZRKA(lAm>g*4Bxp6Vsy%61B7t#nlpaQE~QE5;zYdG`{#i$lh4Xy2=BvcCzUE`j# z>@pS z1#8$^J|#S=jaB7TIz|af2$&m4^6Ua>rn-r<9)`48^JtuyrG~}QzFvH@BK*2)h<0aj z^+Ax88%HTzr3RX(XT8raq0kRq?@#J_Df;O4+Pq(BL4mG!@YbF;+N0+kj2NkpD1`|c zju8v}G7vKmo(tuT;f{N#snGLGs+iH#^GxcP(bV%|S>SA~d zhxufEW?J<-@I&_oaGALay$5gs&|5BmPu4in;A6@+Qc}JcQoe3~seCYdx2Ru%G0dTn zC88wFOGb}H}kWNYzGGM!f3RWJ?&&q z5T8;6480s~FMB%3o{oGJxC3KA3S!EtI$>Ubfdad03%ewxJypB zTlRzz#sOf2OBnYsPVZ&JLGnK4;Zv|^GIvM#emS9s?1_*)z4(-)!0IW7ACNr{%AVeQ z3f6+=NICqF>@momzI@6_VDyp0{bWyn*%QsDoCZb|3*$fVGyprpgBaT}GS)yW?EP!S5I!OFqEdX!cYy(!;KBXP@SP6ET=&*ZZrU6w~sPCSb4o9vBBG(=lAB^ z7akSn>I^vzysEEghPgVWag(y4B(c$37^=7DMKPqD1_Ras#@eu)dP2%+P#QNA zQazA#O-S_&sU|F^mLWANjoS&S)>|+(xFgkqv9O#PhE%UK7Ae7AV@YBScybk2YsjfV zHNZGSs#O|`iBbb7)i)v4crcz*qcrYuF>b7FLb{dl3K!$XnkJ-M89(q(7_TIx8t~NE zMCn$>j}p>fFs?LKp|T``S`vB_B@f1x#*-v;AjwRV?0F-}P>Dq}cGR$om4nh7{{iEr z|A6l@Dy-gK#2Q4Zz-fc=0H);z<7R_#j52KoFLEZ( zLSdVgw5-0RPB7>}|-P=Bz+>VLp33+jJBuDnzeQe21( zrJ(ZQi&ehTv+|Yhl^39d#-k(xa3v`MF?Q6m@<(r}yb+31#cF@RRr@N>+E?9Dd&uh~ zt9_-b_9xw{g4RFTvi63QDgh!pZQzJU0|%)U8@Nq|ls$)v4JjMhMiYsT=?Ar~GUqhW zfDoV$d8~2KW|G-KS36WnJ&Sb|)^`t;p(~Kwcx)4KH3sbKl^Zy+m`bBavOw>wb#-BM zLi^@OsZCg);n47#S(}uU`6z3ZH$g#C_rVP7l7VAw&22}Y0@sJicy5!x)f+f!Zt5dk zqY`_4%$C}V`ZGRY(>c+=p{_*+ZZl=s+?2(@p}99JugLY2vItz2fkO{zG;rGuwUlGK z0M@_@bc%zjZ>K__>Z|~!>X0Uf-T_Wf2;-|rsy)kshA5&eE>&mQ1P*Ng?Eqag0OPBe z@x^o<^~fovEUx-XSx|rU4hVG*I3vFHG}T0zgScBNkD60Ma+TE3ToGldXv)GWUvX>Y zAt{uC$`>2ZQZ<3bhC^jx&5=J601|u0%u*1~W+(nLX0~A&|o?p+1bO zVf`nN)Jb_s2{opXZL_Z=6clpOO(@Lni0I!QLJ?g;k?TfA zcT}g1cM=K?{!pdu&BIW$I4Iwy+sNW5lSL7xAt=@*3k*e`ve?|DFs??gg5a3KY-hFH z=u#MrMxF|@y;)&Mh;kc1XZA2{DRQw|)KWG@w~Hg6sc0#iik7lDidJN@0jKCpvTQI?dCCU8(6c8& zsAxcG1eHfB(iqnKq=c^KuWTtB>Vix*VAV}FM_bAUz0jjGu~CbL1mgkpDku&_L_)>b z5w)yjgBTc8!pKU-rKtb0k}3OGuM`E?%G1oq!bBC5F+1&H zWVzF>9)$jE-#nOQgd|eXTqn_ysdA*C6&QC&V@j!@Yf6`i-OLJNI52gXGNVJgIFW}F zBFM}(%p;8IW&^j8nAqrHQMrvu40kj~FJc@B(xAo0lBN;MZ7|_BDRH7kcGQKBG|cIw zkwhM@XdHEoB;01%Ot|n}gB7xEcQJ&~3fY@7Y*#joqEZc{u?jTZ#wuiBQzncdT#*u) z$y~}MNFx=h>^V|N8ETYV@vT*sMi94g%Du{aZmlxLb+F(zNV!+JqGgqjvLOm2!4PW$ z3{CD;KG3qtRr1UM9I@fK(yh@@<;s>-hK$e(s4`e$t#H&W1FC$qMU`nZ$J`Cge84p} zS9#1CxT+R)hFU-=i7!%6G(`%l$Vo|~nKWqbujEd)s61+oPJsU*1i2Hq*BzaJjgp5- zU3~yL&8M6dj+K;RK}sthbO&Y5S#$&?b%#y%l^vK~V0v=U`%p3N1(ae&C#2LHjvJ0C zQ!r|Iv-BjjvJ&fMAXKf=aqqtFdYs+uEx&nLMN`i*iA#S63I5BCf4?hE_Nj6 z01mEzwn=KDivUUg8refPw@sAzlp{1qt4T@%Ud^7_TizP!-0v zE=ceZ;x#PEw=iB)kO2I41qtfH__hTJ{zANtB?T15>k1MA3*$Q!Bxnlb+ZQCX65??N z)W}j>7sl%g610W!oeL6lh4GyV650sy!7Qn5VSI2wLOa}$#Nq7jRdhIuZ6p@oU3 zRIwO2Q^jP7)?z9jk*yG!sh1GE;7>~xSGY;+G{Ek9? z*e#WUsb+CqBWTNsk06ceKqY8c3GTb7#C4%>c&>IU4u(4yr`_`+ST#5c_5BM+_4g{S z_VYd*u&+SVKf&hI&a5sRt@YmfP{pKz(OMjmyPr8Psu_zd^X7)4L(xP!H`ku~Wi8VoTTJcDa-7m)IfR(gTI>OEI2@^< ztME=3aIjTFY$;EHMzUGFfyNSy6|gI?1)y(jT{hgOCYKl$_kwRjap5SR1H?h(D4&{G z;@}S_x5tx#3rCsI4d04yg4|w@jqB!3?N^b8ay;)Fr{Y*WI!Bk?iR>1qj;Jlv_!jC0 z?3>wUwmu;?CI`hCiYGz*8U=0E|7j?Wb<{TZ!z5U?RQn8PnbE0;xj5?~G=Vw|Y8iox z3BD27S;YlmO$Q~mdyP(Ig;0XNJ-R^C?%@KXGltX6{AtqoLZfq{r=BN4a&{Au^opsN z6-`!J1DfiHOLkS8h-=!dxL*U}N3>froc3j%oRBQLm@@)*KTHJ~&X`2q%pW05?bbwy zFE*mYlYFy4u0y{0#q--B2A2=9?@wF*)VDoF1a@#97!2v4BczHdAmrf;hN4pRsi|TD zBBTR^RPil%AuM;DXL$0#LT4#6iVVi-n5)Pyz=vlZ8@u%YNj9Kx?bhLuPV^7lUT735 z3rj9PqwyYYa31>Y@<(P^@5_)fw!)1X-iT}KCECx(8D((dz)|~IN+b3|O6;R=Lhv!) z%^HOpf*9j68qiF3eKfo&jeG`{V-4D^13L&Awc5{eaM3cPopx(mWY#DvmDdSXH2}Bv z3Wf)Ify{`9ktyc8nfnTq8x*Jxt}CSIQj?R#A*co&oFELmfzyFQQiww3=iEXluttPq7IusKP}-Q7 zn=^lcg=cZjEksUy4|!pVSl6OaBnM&7z5&hB31t{tal5D^gbnUpYCxLc1d%bELsI@` zm0wh&@~DWb7Nqt%m_eEINQv{bWEWGZsbzVCu7jkPNVo2r?ELu^E$#fG8l7hWX~GYg zid6ocTB=nQ@KL3-Jb|1I@G4k?j;N%ctUU?IB)i&MlNz;v^L& zI};ofvgACai)U+F2?;gF*f9bKjsSQvq~a<+AzIv4Cu<*p{U2l0&3qO0Alcq^n_8%F zzTe#55EJfFVH_25^loCpuS`kR0dv=>SzjjsxWnIQ-;SJ#$&315iB(=(?__Njv+fotXszzv?q#~z0mk2kEz?2Q;nO(Lgdl! zq^dx9)7V!Ynfg>)xjs$o3|=NplqbHPczuv2<8}AIdqmud!f?dg##X9-MBE?+@aaYD zZbPw54BtoDYQ{D^Upy){(E){&g1Gy>1;uVozDYZ<&se_&SP!h(j}d((PL)UAPVmE>HNHk`Y_CuDX$g z^g1PqQzdjQp>r!F+>MUIcH;^dLBfy(5)W>fWa^=)AU{N^V4jpp&CF7dNvW;ui7Uk3 zpj`bbO1ia`91BPs&_B`4a#C}-Nc|fW3N0&_w=lc2juhUQ)79g^Pb_O^RiorvFhFp6e zKUj)nFoW4ep05=hP$L{c)KFBo@);+01{2JnnTIe**z3_H7uCQV-O{Q&s}bxf>z{nS zg__K$%M9Z4slj&SK}Aum&1J^T3VY5LbKN@eRa`~L46+-~n#FT3V>J+j^t0wN<5`86 zk6W+##W`mzE171WMI&0NnQ7(X@{S?_utL%1AT!6yzJ+k=)=f-xG94dm#lQU2-O}vYtyU72W1=7UtiMG6s@q>PO&IHg;ESpewCIAZwZ$}@J;4bRwY0R2o zAXbYT(G(CAyCl*T<|<800AYBN#li4wC;5q2!4OSQv5sysitPJMW=_!qcbR~O-soe` z(x>m5fWUSsM%;<4G`PFxVuFgj{^|;KM@TOor%;eRejq}@ z;$Bx8E>3bG;tm$Fl|2b6q2eb9d0ZndYradFsfZ|j)EZu>c_{a4b+eAd5)HWlrt3 zSoKug19ByDt+d;U&6aQ}9S9nH1vpYip8?{=szjF4n3F8{T|XkZM?)yFxFQ=Yrv{iU zwf!hDon^;mowyLUv?{kWla3!5D#Yq>!B)l~+C>Znv@^Za#BKOdHK7(Oyj1b?ba>;t z^KspU_@0K#@qAp*=)P1_uC3WQtGi`2O)#m%Z<5R~|=~@SqU6KtXD2?5Fvr8;WtYS$S8S+V*%X)HBu*ZRw8Ol4R1H#~iJp zT9!sEV5F$@bSKw{Xe~t_b&ICn?KS|U3VrifIh@WC9Nm-~9bmWUjqZqBi++~MD212f z*HrO$UZEhpTJs8Jp_KKMvfnHoK?)zI!_Bod%j7iN0QYiyW)`=xwBR)>f{0}QAnzu12YQ!TC-Bh5MWVJ>=eXestsbc$GZc1qQFo-Ieg7( zhGx~6#Y9$8cRsmiIo$z-3`xvs|0_9T#Wycf=(`>SVy@sqvzrx&D77`jTKz0X(On#m zr;1OpVk7x^eT2Rn{{nwC;TuxL{tUklKQBrcw27E^TKfs*%~l52wQCpMq~`~+bruUU zxtbJ{?w~aBDg<`u4?Zr6pEb~>4D!VEKxV8nXfwJ>Iv*E{_VL<{=G{ysTt@T84sfG1 zaW|&NyP^;!DW19<&w;>}c9Jq=`tFKsO5@7eQwVFe6D4YOyfozHc*1Nk9Yq6fS=`)! zewHfekYj`}GL|2zT2mxv*hsO4%t*5k7i%ll;4L zN``5lYMT>)3*|SU-Y`uVP_i^qKl&|?7{f=mgOQ$k0R?(2jEfEqz1bO&e16j)q;44P!7!x;7HrNA&@hVF==$0EB zPY2Yd9 z(41VYGl=E_j?R`M>SqqiGM3^9v`i-t8w=CfT-$xBm4tbq)F(v07pOxt#_ZPSjYieY zV%H&%Q*BJ0HZP3yK-TtNP+fd~;rfE2T+((O({`zp>aIXf5?^Gh<)-s@x5&tJ-p@ih z@AxK3Oas0-IaRy|x@u9Of-(~mpavPwJt zbgwcS+Edw}{`e?VBc9YbU@H238@Hs2XJN(qO|><6bM2!iMtP*g_8<#~G!>_(G_6~{ zD+}nY2TAg5&~!5rY%Fz4ayK!5)esAEn;POx))24bhhNDIY4e_K*$}sw9gl{1nl;2t zG^~g5p@wkJ*rFl613p=vl@J$ABhONQVe>~ci)Uky?YZw^35~u!Y)Wl5J+id#$6Py2 z{PH<`qO+Ur_*kriSU;^^f{Ye33sl?SXRXjvNa!w@qLe0elAu+p>CjF*wvaV@0Q{CH z;5$kzdUDErL_Xd+ctGS z%CXgq!+?Xq1|RrEcbNm*&$Y4OSFGhis=L8lOC2N?h6p1`#O+$973(4rV~&U<@qtC8 zAN6))Bi12maST+@Z6Ff|H_=b8{u&Cfh6<)(`!rI7S~hTN^FLs%wSssGj_zV*u7##p zu0Fg7Ii+~3&e@mJ?HTLEr|YmIsU}|ozPTjjcocZHoIPqB`yuuVEPp9>IAUog$<>PI z@vFi1#PvyL-l!I*&Sq2Dm@=-L(1rT8p7toxN8x^=DpTqQV~Mm`QRQ?;t0q9FOo~CTo+qTgBM4A zRul$80rQaJ@Ue`7<2-_{s}?_urApM3_qBM`66jA^`pD^QKk;M4LmMe+m?e}YkucKJ zIit|GLMk@Kqu5@g$Qhv$IX_Dyscd^o1vy&FMmQ+k;b(bC^4+pGLMvNpOI@s6TfT+1 z#PN))iKR)uraVrCMo?6*CmlngYMdm-3ii1pB_lym%}dF`?eXjWJKj4O>qDoANq z-KnZmTqJ#Wsli5bdHDQJQ5}Uu>YyU@ym|;&$n@WJ5`LHFaX59+h(G4AC4ss+0N9!8 zT}Ryz+7ZH+K#*1j)#r&uK>DrjP|?RtWx zNwr{!YguBXBLP*M&@%Bdeloluu8*U~BbG>{Rnr*>QGAYN!Zhv{K0;`t$J2mn)>L4l zCsoK&iI3yKR+zo~%h_BqOhg(>5rSb`^G{ffG@*;ahlyFbh}rlqPTzTqUN{zbh-*u` z8gB}<+HDDHVc(k(wVn6n?_KCWUzLA(mJ(ljxX%)II1T9U;z$&f?CeVgi)HZRjR@}5 zN#k8HS2Pf>vHpEZp6I?Aox~VopEJ`gw4<}&B`Dm-*%)IZK4b=;Bj~gAGxT})Ao{M= zG9A4r*?BxYJyQjvX|YgHOqc_sG+auNs*0I2Y$%!64QOHJF|7-nK+E@+HLV_GnN6_DofRmsOB#y%xvi{5wh*k+ZN!ny9h!E zwp1JjLMae1<5HU~p+It|DIr)!*Ej;$WR}%|xT0w{F`A!_CckB>)AH<&ZTA_R;tP18 zmx+~DcKEC=3H`%jMIo4At%aOmLDFdx&(#pm0^L!S>^g6>&|=eE#!mhe&Y<t5Q$2Oz=Ruj!O4Oq;h0fr4dS=y1(;-8=gkDPcVK1eVyEG*@wbQ5-%QWO*{I z9dnC(D0hHW8?$>>V5}>c!JW^HD$8R@;DQ#_nNiq@!KU0gsJ%V^2J&DXyAcTxGw4WgR->|ktPHD;XJ+JVK*)Xk>2Y=7YqRsLaan|ynr`S6d_#H7L( zdE4d&2*(YVAGXeW*!sxB)(E_=C!jrCD(?sqBB6{bE?}yVq@Eg+s?MGc^@4_+cf@<* zDBW;OGS1zeINokJSXVJRhRcqQSYjn(y*gD$S7XhJ)v;I&AqutQp>JJ;@;4tbTcYp) zhq!~IeliC-DVya0SdK_2M)`hYlN- zcY-@-*z54=yw~=F6I%iuu^ouw_G7+bS?g8;Hq~0}t0$3>k*9xVD|$^Oj1gplBSJ^} zMLCVJU1gxDB9LF zKo4+7G0k$8HOXlR6m|%+$#mQXa0b0X0!FX1dK)eya`=vuKttpAU5$iYM-f0j1&K7X z^O)qrg$gMfE~Oz~?_|pX4=hKBg=o0NT8IoX5lPz~ojsp;qN^9=h~}9J1?oY|VcXY~ zqHAsvoG8-G08tI=?LJif=hdtQOaEy#iN-&!=F>CeYU&rUYDVEQ*R3_}ih<6vrkXo6 zsBo1vDgSjnWF|e8A~o#f+coUS9qOT|ahlw+c%A&OS~djD5tWQfGN3Irl%)Z+B`t7t zu@I>=7U4=GYE2D{JAEDv{9IOxny)}-n$^_1l#KyZ?FYdjv;Y>g+Al)EF$h?^A9=`8@Xk; zQ^(#zN?zwO*BC2f=}6ptn{H8!*+Y#nd8QkA>NKoDeI1b21Q`nGXG3l10 zaK*Nmb3n&G6|zFvi&E<>6^LFZUZYcI97kH035iwWTslI>#}gHFlHla3EXyPs)icrM zc2JunJ7s$oaiSK`ibX*)|H%Fy% z`=JmVw%5R zxja536fzY@vdHe4-R%jHhzzG|uVOzI*%PPP3FFLScNU5)On9aszK>AmcEX;ib{z&m z4ZL>SLKXDfg4>-Nx?G9{SGQEbkR}XbTh9JM8Rjl#tYFa2b+ih&Wnd*`MIuc(y1A8L zy?_@i@SsL(-lW2Hf8G~TXt4%#%lS~toWvUC#&XJ+_jPE6eL@n=H?QCr3FPiX%-V}4 zW}28%t}887d>@f|o^v#Eq{rf!B0R6M&#DzlY;#l!4wu&$OIWsnOUGf?92O%1+rUx} zN7EiFSA|!_kteL!S6dr zz6gi0rA7#koTEn3yLWPrU^V#0-duUwWn))3Qv(u5mE5X*&x>(>hUl zIOL-pSn8aJt3Cl+hgW)R4I{NnuA&b}TiLdTe%d9p&upD(6Cj0CryUE(# zq|JYW3@trY^8N};6srrGg3Bm~C&gT;uTU_vDM-iR)#ICjwB=Ymswp^!f`giZt10*Z zf;O?gb-2m;kjWZq6MeOL^yG~ROtfu6T}h~PEG_Z0k%IMLUJBAVbM>!HK{~gtKGqa` ziGt+_+Qi3f4IQ;F?ttGJo#5untD#r=VvcC-ix6j- z0OfGZ5G@#v_%0KG%y*fL|Eu3dBH!f+co`c~+WQA6DVHT#;C1}smdJOZvKWeEnMZt< z9A8b>(JUb-(zQl(ET;WI{R@0hC6ROSm#DT4qC5&~a70DS{v1Dx2t(l5Pfz-&7QIiX z%!=Yic5W!Veg^yjD7~rh`Vnvq{z%z&@ls4A&jjAZ`a>qbqGW+^^hl zdcfbjIKO3mkfZj(lw+Zfcn_us=yvSjVGivmIHL!VK&`)u)ws#!vUX8s>gdkC)Pxp2 z3%IYJy3nc#D;eB4NAty$TStN55w?u-<=Nyun*DFZ%?MibSTsap3nAZeNp(b8PK7%H z-PT?#quUaLW}$2aB`uwv{T<3fhXBz&)ET&5mijShf^N1!q#blvQ;D#v6{|l&C$wyA zj*wPc3d?FlNwZn&eG-#Yj1)tQJr`#k+z=T{Ett8x){~ibmONs{$1?8LB1iqxBAXF! zS7iHJitHm5sctS(XhnV2;EXwFz2Eb2%GMByOAaTY=hbu_JV{(W6`LdCdF-Ui0t~V2 zY3c^-&@`Q$!+!f4PLU=?52B8TPdNHghZCPUgUAulgDmcm!%rcyPc-Y`)^^Um)GJ*0 zWj`aSV>IhS);1nV3(rCmrK^v4OH~Yb+H;9OTTh9aR9;=4TkNl(pTEGc^J(Xkyx(-?H9p$O@D^<+lq_sB;?Am+^=0I3FiUIx`WQP^QM*oF%9InE$1pobYSOUm~_Ol(yI>!nZ7 zyA1^`A!PAcxP@pHE(s0VwO8dQs}qn}OHpS*bbvj4XbxRTwc}s1z=0*B-;WUpk>-(Rrd9cpN-{vF1o( z?0AbPh0_(K#zR)ZHQ|tUVx&}ylq&N@SjStLl?=lcQ9XpjAX= z`$y3&J#}JHO)UCG^F|u28q)BY&|ByRv_51T{5!$BWfW|?xEmG$4+Nla5%X#yhs8n{ zyv0ce`&}&q31<~>XnQ*!xtf-p>#&}}oee83-)!Z&H1S*5G>~~5uaE4^1!k%fE7bgA zux%DYSITQYEHI_00q@YRxa%v$RA~_?rPRF*PUAx9y9Ioz7)xtXDdFi4*hV^@Z)NWm z<0H%Q;)hSrg3WWqetQADNdlAwP}(Gb((1n#z`MX90r0mGz?>!l9Js&)@YL-D&<%AW zM7F|~Y7-5a++F~4SC9ZE3xUd#CLv&;ld?Ur?p7hZ_jpSo*lHp@R6zQM*J4F;V%I|a zR>VYUIt7fCVle`?oJt(=9o6QALwTsGw3oAnsY9_u^o}lkSt08wG zb|9VmNe}5pl-Y_SQK?vL@UcslRKhIu|GIV9A`xZ`w9knwY#m>qO~~8JT^156U1~cc z6x$1CdmKK&d3g`^6qp)LPPXlyoGj)b0*hNxLDx7pUJRc?()T<)eWF?VY`4ggiyD;~ zYl_N@zYi%h{_%X7@q($$So>L-@uIQJcTPY4JaXPhI6Z+UHV$I^k?|?nKr^zk#?zcfa8)i2J4G8Z@vXoyd{k&GY4V-TR3i=rNP7vk zJ+ak~gJ$!bI_a-Q$*@Cgz`*;3|9q5;)!cE66I=rv1~vCFP8#4?q%^=`=#s`Y40?vc zY@7?Mpuu9FP8#EYKtr4~zR`f^HpXdPV_a?EH9Td=&rtJoHA1b>0Q&Mq-4%SPN)v$6 zz*-DF?E-7*ISBXhhJNMi{|v#5(Er`wA6Uoc1Z?>Cm=FAK2min$uHl~se>Uv189;|O z11|;QdCOpahMu3R6Gnu%aYmDo=BbGX8-F(~!5ri^Gn0QfE$QYyEeVF2gm|b4eFM`^ zx`_}q4#PjYH-TXu_Yta+uuAen>K=Ho_lWa;>0(1H-CGC%wuHBx@NjQIW!cn(=*-qQ zv(@5vchjlvdbeo0DPdVb_tf{MF#@e||G6pM(MGyUVOb_e>73aibS1(SA>W3;nsk!e zR0-eA;iZze?)YjhN*R+Tp2avK^kr8-^q_=;Us#a-mPWJepRKZ-l>@dtp|&9^=WLC0 zwwenPJ29Rsn^QH8R+jC}L7j89&azq#3w{s_U0_W_@j`5*QfbMON<`0h9!I?t7aoc$ zOck=!Q;~CO;4ydun3p%JDLIhhcyj<&6@R&;(6J?jzJ<9BtfNK69hVd^gOV9W_r1tg z8T7m?7-?Qx(1iVV>kE%nMc^ejn~T27mK5l_I)1L+v+p+d+yBOrB5*f4^gmis{7v6& zGVydTNH~PmFm7YH);m{kvj~C#qG)$JC`XYcL{`@#s8YM}Q1c>)hOoWT5Juw_EzqQ7 zn89LNw;giXK-Ut@4`vWoO86Nn7(-f6;ukxvZKu@}ElC@sm1`xfT$5Kt3US1gck>s%aWFrs>A5tHo@fd)b)wsnX zxOo7=B;#it>4?M^DQc5e$V*>&X?)uO=ng}pmgz)OLk2eRbLrRlep55O`0FOUrOn-% zlxYnic&L?Ilipsfx>1{lVk~sE`7K3+5kfdWBh+0f&Pl(V#?!V2)`3T1R?a~ zXLNT*aH-XU&1%)tV>JH%)e08ncH1qITG4b1n=WWAQgcjvNv&wcMT$il_4ji@)(4mc zY|#f=c0^g*4aJha|MQKY4var+1YssfdqH5%HJ-S3rkb{@{ySS#cN$Ob&=tG6WJc=G z&kYtvgu59DCZ7Lz^9-_*#r8jG&HG%OQMcmfh6*Ek{?|E^ZP!0<%?Dkr$@DCepV5<_ z+g%vZN9GKK{_A^=e<3s41oc>R^moZDil5PkpBpKR7$|f0Ut>#dN>tUg3A(#!8jp+SoBoS(>j^Y2>IqX#g9k>K8%CVs|ner~KV zV$^Lo!%WY$SM1ir{}aO@Gk4q8ymk9{jBGW?WSFo{8|6MS;B6t-5dho&2X5FQ*FHZD zNB@J(jXUh{-}VULH@3%c2)~hyd061ZNtms>Z%|81ivJTPpBPszv7Zwy7TCHZkoIC| z0KoxADZKZvNp&rr*L59xAVT3JoLZqoyRlR{@DO$P(4hj^o~CmSSC3*yc-Jy;H#FlA z>*b{+{J=}t=#e)U?z}+xf9d8z({$zzM_B(K-<-p?9Qvu+y`R#y8=c7Dtc7+T(k%L9 z+B-Q$SN{Fd)4$XqI7nfPOSbxasfItvY!M$}7*1?S9FV;9Ma`FrT&(8zgiMVo!6#pv zqy&86t<}=gAp z2U|2UW>41ziRMk#R7(`trHvH!i*fh{3?J1fGIgnV+app+5rc=*O_EH!6d6j<-CfaM zh;DI~>mj1Zv9gFD1MJdhq%d}4EHxkj=@H)tWUtP$QTFOBFG*h89ux6DT}}wGjFJb91@5IL^*?P1ScB7;%FKNRHn^^eeKD^DKOQC|XZW)M@N%Th$YkLw;RnF1jlcj8Mshj6b_9PNNvbe z<5nfVK$RI=_c2|=&?8EhhBuk{1)<_mw6~!cXNL4@6@JP>xY-T93Wk%xH zG?9Di90h(svrjr*mh^bbI0;YmxHw`5Jd7*ps#!8)?PC*mEb#-kQ={mSy=1;CKT##N z#@!R`wzvS3HQc1lqq|pd-jJME;JEIPq5{=#B50o%n#M0siwiGdH!eY~+->ILHDU;E z;o?JQJir`}Utx?4Oz4AKiwThw){D>LDy~Ci!w-WB39;;Ztn7Zm!YJi+vEwm1Y;54; z@#tetqj(J$ckrp0Jwc_667cP2!~OVDHy1c~sX#INB+&@QFW2D#=HO7=HN~$oLL#`x z!N+(1zu0>p_^7HgZ+!kGnUH}y;Gj{XrV`uW#5Oun5+~RRWF|qFWMW7H0tsz#oJQ=1 zWG0D~1n?%9o5QGE|J2>us;_^Rw{>@EmlCuTGl7x-t`g$fC~S+C+8c+hK~oqYWq#l1 z+&hy=0BgH__qU(-T|P|iIp>~x&U2n~&U5~KpXacBD<;{6fn2GU%jk#`=9YvGDhN*2 z)QYq1uPFi=4PvF=!Ie+zJzlAF8d&V%DpI_BB{-c+0fa;&-fKW@CRC%T-mFw(I+d;p z=3Y?%*^Os?Hm){B%tOoTrvbsq&VKqMoJvc$rNtyww@M2P@|O^+PI9dWy;J&ly;(h$ zQ-G*$GccZXziz3?gEXQI>*Z#AyK0hoLkxUCbXBu;*ijA8 zcY-xqzmENqJ&-Le&9`6$-d}9yH?ATCmtF?U!V`VLrL(kni}gcxo#Z#>fUZOniZE6} zT0SI#*uwQ>yJCz^FC)a6dm{K5VW9+ih@>86f@zPC!fM3X{Czk*@-EojU=irC^Fv1k ziv=}tppHm-$Q#P&wY}ZYR06a7QZl*;u6N~jLIO9ig{?SOw3lWzUBwofQQZDwBN>xI zD=UEP&*uf#fouIlFVcyxWzJ}d_yZ2y9wQY

%I}EVL%Idg(0Y)7o$HeY?Wh3J&Noi5#-0bA$n+XgWt zi0_Z00CewZE~g~0aRn<~4Fy(lBvUFgv4#d#nkC&VRT%K>FCu*-4J*xHsnA0+vI2bz z$^-Z@Zed0=EXnb=0vA5wZwAUL^emdTD6oMw6yxqkI&-T)ily9bmMSc)VF`D``g#Uy z@NjpwRFT6PmU4HlRFTITmT`B!R8h!E(=V1WQg%oc$f6bYyb3DP{n*bKl}a#QSnLibZCA z$?_sxSDG!37^Nl28F+~rg@4f^c(W$F@MVXy#f7=6@mX>_TpUSOKFb!DXtSb}#}aKe zo>>cU@@}s%HFiata%26VDHo=~VDa(}f(E>e6XKN^QWV!RxS%<_DYP~P_Dd8!z-TU6 zyJ>(`_FqIeWa~1Jks) z8M-<{a;;>uY*BzWXX(FfAf?H>4CuOm^8Y?YRs-(nq-6bK?*{SMMzk#PYZeUrqc}w4 zbA?3o4MZ7?_`?i2lsT0_d9gv#N7tDF$ds=xB0*ND*Rv)ABTUVGB$3dXM}g2Yrn&vVp`FE}^jR zQrO~FOgi?$IC`X@D6<&?Zk*|H2MTL4>lb=(g+x5nao7Qf;vNAK#Szgto@p=51j=vW zQpy}N88n8My9suD#SmB~nM7)okHPUXYljrb`xN5lwFf&NMPLwjB?YuM=dY;jGAJON|-eHOz>IK7e+Lo~AYnbAl!_Y`#aL>kQGGnR`qO=|b;g zma8AAkavPsDB}=&0ipZJ^Id z2(cXHg%o8A*TP5_HRc2J(O#;C(NbX1^+z=0qn07wb4by(i#BBf^Azmdi8mhk%h2~i z3nG1~g)njOHkMvoYb@wKTJciQeWD`hK2-4%D>Yk7aa{y`BaWN!8T`uE4w%mKcqJ8I|&yVFdwp4T_>@ zTM=~cMB!99y6FU0+~|VBx9u0yL5tQ`!p?;IZKypxDBd$n6E9pOKP=w!26`NBK*`qk ziLF>)Rj>wZy5^AX*-1q!?j`2P3LP_W^+Ukuf}PtrKdvS6@ujf>B|nNEao`OMIfht_ zC=~+$vlXbx;oQz6fnZ%N+6578CxR0iGL5$!l7=M}>f$ow03k39&Mzwkh4y&j5xdV& zP0KEmVpM@_O2Cw!e+4G#1jizr7#cptJTo+IZo{k^v*uigNiQGM`shD ziySQmM4X3+Xmxut(CFT)DbQ!io8Ua~Kjt*!&U(rE0XE8k%8Ny-jUO zWpFbl2EmGGfhVhF1$b>g*|L-^{!D%=&E=o|h8hK?t8eQEAQiO=o{>WXorgTpb;ek` z>T1K9iEAnviAj9Q3Y(aK^kGus92T8#=h{KyLu6G_sgPdVzdC^bynSjTqEgWc9#h~- znbAcw?fDx2N-XFzD`n5e_`W%-QhpK+)dq`Sb#ZAxh3{iQ{!)8iuW5B2QFAJWBF4p^bAyB!_MPdi}LIq2CxPe7v1LpWiTD~HOHP@84_^7!BMEi>L$Z#7T9u&HG$n%6a>}-Uy{~r-nt|=G{CENJ zBr$!Ot~=715%*SWnb}@t@~2`Zfoa63t#@)8Eko>WWuB*c3K;7JHUWuAB6wb+Mpy56DGn!oNxt&iXmcru!BU~ixG-}gwoQc2--7Oq zt+{X=fr|?eh!0BC7WGJN!}5DjGon_x(4Ytrwm4G^WkQY&SHuJ<#a0CAHsld)%96kJ zD}1yt%XW&I6=Y+!zTYFi{c9fRB9np*CLmZ5A&NWP^I0iP;Pi{LrNuc&6Jw0DIF~Ip zcncnw7MLd={sl&dg&Bwrt2-q0nsUN=eY2rj-U_I8b+jo%zMc5yGN!pqfe#^6^!vi8 z%wdK^)Gy4D7Ur@3Nf6er&7&5RxYzWb-MjyP6ul5bw0wT_f{IL_6B`Bdl7L>o0RfaP zrXp4@L@xmDq9O-kfE1kFUa)Lesbv04SqHlXaWi}aS+bYK~oRHKPMuEpg;t0 z9gM4L#7<7RLIk#A*8LCGVd}xbGKA#rk9r?ka-k~v5J4tlUl^U`p%5)=$&Zc1NL|6{OZltiACc?gqupA2e%0yT$!oEyl zH&2A!g0Nf)v#DWq2)N~f^IM8BmAiKkVXK zV*e!wdPPkB9Zp}1GSkii+b2Dcp#WVz6N2*>1I7PL2+sd$pbH@uKEh&C>CYGK$`?W- zV&Xaubb);lKwTnS(?C@`=$msE*23}>_$6r`*wRMPfQoKanphuR-sY8x@+fTHL|8t; zZlkb*iLl!dmQP{!iLgS1-A-ZiC&KPPSRsXdwT=R%b-CWOzFGv{k+^GJ%@hD=qK@RG zu0KWl{?9`4O}b$#DV@pvdMEv z=`&S4T_An_9Py-xUqw8D0!2cpFpsPY#KfhvP$zo-6b@fN+XRRITk6;RY3SfzEFCU2 zoKEV4XiqAr@xOr@$t9*B{{_&&KYt4HCC)j3&2SnBTrnYX0UqS78*k#XkO@rrMUlCQ z*xs*DS_JhYoZqE!Kfw4zHOMDzG=}pQKfT~r!RK;|HeIb<&5e`M)}`uP7NOaEKTQb5t<{miNJ zpN*@J3HpmloJ)+1Ur`~&7s9arYG7v+H8yWn#r2>&4&yHzrr_%QATcFqY_4{-+EQBkWkLl{t_SO0g`xa=6#PYP)yaQ{Sd%cdq*Gda1tCMT!t=&F0=Z`5$yo3g!*{n}R)zk-hQZHf7~7U$ZS zk1J>{QGA5NYtF)6ye}vAItK?yK2yw>7j4ed>93^nDDLIp(aNC~|gKHY_nj)HfqnuB4=bM7ilo`%;q2n13zJMbt)YLbCGzcX4j;|}` z!X7)oPm_-Cp=8>cp?%G?90yXb8t|8W0zlPCAPRK>9XkM{9_ct*$AOs<2ebe}9#zxg zs87HlkzV39^5p73athWJD9&YyhfJPtFlcwu^$`9fe)E^dSFF6_42wBUK1=KipkSt) zY)xvTV|Vk$qe4*8NQdd(vTt7391NX!O8z@l21OEwu(H$K$+1#-ae|^U}?|vEG zv4w}>N-~XaKna6-^T;#sPghNO)a*NWY9Cy|ZP6wOrD_}qxp2F@mLwodVG<}72C)iP@OlTBjb7@wc%0_T zn-pqLLvtpD8r9IuNugYpBi-~#p_yu2b3C-!EPm*~_Vy^^8e^f8?mwH<3wn7JLVOcK z8a*MMwB3(@XAnqGt5=)nJfG4$m98FZp5zlZ@aDPU;?46NMjGd({yAuqPf)d%;FOp% z6-IhcMLQ{bIe0mMgRQ{es)8>t3-y{w?-i!skM}il3(UMI;_f+xXhz8YB^5t6_d!O!G7IUJN$KqvPy#K}^@yk|GJraX}PsiP21Yh4t;+&R5fw=!iQD1*gcZ6uCPdIkHlXJPS4p;8p}V#HVkk;v;DI(=lg;uQle(^eu}y zvwZoA6WQb-&$tH%^raqOL@63x-hw=0<-7>AoS#jrqto!E%J~+U|GCTgzv7W2Ac`~P z(&gkR{_RS>(UvTj0QNl=^W{W=Bwriz%!P>sz9XT)7YgRs;FDV$8+=BQ z10RMi9DEeuJ^DnmF<51ikKyj!=xyK_#u;_`(S>9<>>hA3lG!rV^mDUg?AnOeilqsE zEFwgEdeDi#nNgZ{(8L6j6_0O8EP_IF;+PeqSw<9PzC!13mD($hh=$7iThi+^dN*CL8SbWY55DWZvm>BQ)Le*mMwgkH5b7^|hSI6ibxHP>0`jbiqgF=C( zCRi1bEufh7hhz&-g~6(E*#LjNCiHPS-kRi7V@i3HJ6@Y`#2|YNQEOn8_#SL@Guy4(RsN6%4lmrA;FM5Gck< zc`FguY^s#qR0fv?9X$ouk~h(An2U_SUB>dmY0-I=^7XjVi)}E#WZOwVShRu50dk1F zdx`W9ly}Spt9vjp0wcDkAn(OUlF;!Vd^`u{!^~y`3ym8w!xB1%5m+N%57=O(`~fnz z_1cbj?Irn5IWRkdF%u{kj~x9q(LwG?8ldG55fNf7AD|al4jFFzCATJ7!>viqB`Yc} zBU_e^nEGqwIfQzE`iZTVC;Np;Ih)`%0o?F`ly1RWN(uTV;-35hr>XJR0EHK7gv|n< zIw2k4)F_>17(M}Ur;tjaAf5!-mGXBm^{D3QbmA@2DRhZ@9QM)1<0FUE!nT?L{_B_j z<2O`5?L+}{CKd47DFsYY3YZfwAaL`zE{*t`P_(C!X}oATP1nPq-mTChiIweTg{B-{ zwoEG9uTZvJP4hgSh+3|XpzfiTE4S$yB(Vl_ccoC{c!fgcqEOi=)NjZX{Zxes@q{N4 zKxm>iMVJu6^74k(iH628X21&3wLOF|+ldx+98f$ok?I=WNY;Vdypi~b?J&TGMv@lH zGj7DqLsDS7&_M?80XYpicLm#a5j^)}a5Ng&saOqzWf?~_upQ$wK5a$K?-Y8RV|u%% zJ|EW_1Ck=%vrR*oa#+o2HKBI*qk6=BxY%eMhT;B!>MHrZ-h6#ODNcC;-;@pDBM*xD z^D|>AAv5mVpC9!X0Lr)>n79+s<}rdkzK8V{j|#Em&&Rm1Qvt)VWH^y1r2t4AsGCiQ zI_}s72WScB%HKPoW;Eq%Dw>)Fw_K*!M$3pgw-La`y$$*Vz{?5`-3~5Lp-VHz8FBxxn!_EpUJ#5kQS96)HxKQkn5xgIRB@pT0cUHUKsUode)(5lpXA_S_yD zIGcBI&Sny47b~1y$T|CfNz=Si?6rVDV(YjrP{=f}^`r0Swi=mpJABWUK2Yo!Yq@0+PQpjvRnabcVRM;Wz zP*CxbX^^p#acJBU8*cnz%g`G6{b9o9-%33OVNgOdC~Lep-3hb$q1b%kZ8Rlo>beo zkqs~J*Q0}Iq$WckRlT$u8dl%H?Y7@AY3h@L(6@;!-@OgStAMr+7=xu2SlK&6N@_o1 zu2#Z`Mswvh0BS`f2WgC1MMF-sAzLm0yj8;e&Xt8>T=xxKvu_k?keWyCJPJ{SK~{d{ zIW(PB<5a>bd?&U#G~6Qp;@3$ZKvfmO1?yfA<3+LQu5!fdPbPgVCs};n@^|d%WO(kiX}*`H8D70PQ!T5DB2ySQX-|zZF>Z@y=-TDltmc7c~YdC#sJP zgQn$@9_$vQNr5DodYs@kVFlOafk&vwRQ8s<1l=G!jYHeP`!?VijkpymL-s!lZsY6f zpPA9y(4nYduu5&13DCI*@uvJ8edOrtN!@W_wHzA@7~e2v#qk>$dO^@s?3JPlP| zj4au#JQE7X_w{B|Vz?|;UKC3yo#G%RypxJDC?yB9^;CsK*ye@~V=Q^-cmjV9O-iT` zF2|ss)3lPUir{kU;KEV)P0|ekp^L|&Hp)Q8m1>Z8cA5W22a_U4h-dz_|Q%n#aI8 zxgH+@?+a-Lr9^%?%msRIV7+64^-Dn8MOc3;1xIS+e^7XzkC7_I`%I5~MeHNueLm+{ zzQX${5r3abydOoZLY4R6U~lMHa*X%?iU>S=;(Z}pc&G3_|6;t)r#1lIyT>rKA;reT zI>;A9lA&zXsJO=%To{3Z1u7!il+M{50lVKEN5z0`t=Ns&z|w5JcK28y1rrkcfd6u~ zFai$x@14&($?EyMi_msQQ$$%#grVt$29yy)1Lp&@iqxY`22`!@8Jd&F-{D349VM`a zX5Xq(V>vP!RS_F7m8P+VgWC*vw(-2l- zVr6Ckjmx0pYT&-~Sa1d!7%R&}Adpo^6oX@_McxlRVhDV*&+)ZbfuYwD{w4>s&l1}+ zlKdv0Vd5RMMV4b8iBD2|hlqm*gC!Pb?8j9Hs7a&vH3R-a@ezVh!!$I$Vnu;Dp$c3I^LR1;wLnUG((?gY5~}RT$~Q!JTE&!Ch>dDC6sVOHt@a!3IstU82KH zis+e`9%BR5_jb%_^zDi{O}-Zur?|IRwYIS(_AZ?p5al0d`24YG*@;L2to{-$nyw^i ztXcuZx=>yTfyPZiY)Ho%>^s!s72^@|PtnD(ZuRX1t(acGw)1ViXX0+`+H9Qg(3X~O z&4izy>y^g*AUx;`+%SXIbUEF?wZAW2GhrGqI999|IDNsr5i49jrj z`0*4A1h}CPsZ%WF_T31`jQSU2d-PUP{ZdR~zk^i++49Ep5UPvA(Rb9@aZM#IV<%lB zGQdr1jlH=TXLV9K;`0?6l#f=_O_uAbVw#$tdfBmm0R}HKruWbm*sU?30sYE;zDdV^ z4Z9zjf-OdtjFAq*X(X*|+@FgX zf4BMenYiusFm8MGXm76oVGc)8QO9B2_S%cvUVFu1($AZ|5XVd5KJh@5^@UBL-x%0I zW+-4w3k-?vQJnwAM;JG&cN^bF39sl+A}@`j(b;QJXv{5c{2tb0@+SOE?3P$K6a-Ao zGv%M5fkU2j8D_Xpz(%U$M2##=5U}`Zz6?=NN!C!e#dzv)*UX}_z#pcRm<+bW7CvGbqwmzRpXPyBuyI>{rG)}x1Y1&E-=TP+U1^hYLC{B^ujmS#1?pwj(rt|BfgW^6kEK}o& z+EvOT_W3bXr0+QXL~k9%-xtW~dz=0Y)1O256P?|FI>yoT3&-G7zN-1JZws!;L$Lo!A3fy9k`NWiPphog zf&Ua1y_MJzy_NWZ>wWN7u6q*0$zIb7GCT#>9L3+jJnS+SB01(f!Hm$Lb070m$UlOd zSiXD@yGLfuV?4I)h#Efy@u6Uc&xz_la&)#IKDAKKQ^NAwphe;KPWRm!jkf@P9PLu$ za6exNXK*70Y|8gIHJZSP&{LYe=}a1WCD!9-(ooRAzll3L5M@U58@BxgT@g6LGsIT^ zjOJbBm*E$l46#tX_5~^f=M%_!0)&XuGpXp}^elP+FEaZm6>j=C;z^K7>{k(Dxy*3vYN}^o9X^ z$DMCPZ`d1mQ^>|Mj;7fg&tx_w3orEz9oxeW;kxqouN(Sc5A{AJ4~j>V?WI{}R-9#F zOS00d?($Sr_*&O$wQHicqQt7&`Ch3w%eY3mfkF^9mn}0Qc8={z*pU*?pZD95MxJ=~ zyx(B|r1{IiyyoD_f5FZ$Rwm+uxQy`)ABjI~3(9w6>GmpLQoutNJHp%6Jc?qIG@>KV zJxJDYy2yYcYIagQzYY0e-_&RukWZrtS1}(zB-lN}ecu-O4zy`BtyMe@iXrKC(yrH@ zDkNiMbEE4rqU+M5>$2t9YD555s;V)}eFQEXu^qOZvPGkVu!gj15BrFnq{@|hkT-w3 zAMc~l4%*pR6qsDWo?%6u8OEX%OaDCI8ic5nnE>~cB9xTOEv6K z*m7YeV4pLp>35D%(Qspl7&-4xgK-W0TQ*aE6!*=+)J(OJe7BR&X+GsJc$JF$Tsli#FfeMzH{4+6}-&Mng*nr%lgu*Za ztz-WrHKS+>C=^+%dJVs5L8VFPsDT56VMPtp=kG=6$QKbnty{Tq5_P~dD#=!$k@T>Y zrNs9HUg9@i}g3!`J{eaL@WWk;5J?oNTgC|&Q zOvh+{H8v8V+G{`4n2O$~f7gDlaT-kJWZU0ql(D}ARFgthz0o&t0Clkebw%4UyYa*x zAkFDXRL=)9totwpVH7|iR=Uw8TtKryOB4PzJM1j9Ptwtqf4XRq)Cg~hv*F*arYZ<`2H7!n<_`pL(S6KEOQV)>oIgFejIf(Y%cx6Bi)13fd~d= zHF>n%pmTK13&=vV2R4k>NYlx=yiRF}6-vIG;{J`6IP=`mSbZ}Q2+GTKR|%W;h8ImP0csQ;^9aE`yGj3zS!R#s8i zd3b%+rn8{M+>{YCOp~0)mCE(c2;;QYK`ep=CFgOqAo5p{;v|e5cClt>f&}nA%Oi_; z4cApdk7K2mZp2Ee*DYHG3p==>AqnZB0XdCoA$W0NJ&W@#K1r*2z3fBB&whp}0^P_s zy>pL0_4J_^wtxrW6}Wr|r_ZxZ$PRZx*aDI0Y%|=p(dcZ8`b_6fFdOkQD4ui7<{Y(+ z+E4q9o!9UoCuw&%a*%E%&*^uhTPf|@x=FV5Hl4_Z)O|s70;ApZ@i6|*j?mw0#^~>@ zqx5(F3Hbp@#dDJcz1Ay*^JbUogSfpQORxRD-6sKgqz~s$-bcIgC%9C-SAvqi|AHP=EG~ z(}HQXhMe?WbhZIbFvN(*ex;?n@kTWouqCZGkd2XrMoVnwpFYWkY2d+gl->C5iZl|_f8Ls?`d#X@(_EM@~Mp(p2HYk@w4Zs#?w>>NHj@{jnYDc zbf2lJ!n17os^u%t45No)rGa2Xx>S_30g8=-lwyp#?<391)9ZPX z+hIN(90Z+j07N0a6_wivZvX>Oum|b3V0nU}P;$NjJ1dfVSaKhgs&H=kcIRRLooMbZ zEJPNdi`{|cwm(^HOHbWktIzkX@zJ^!fSUo2+;KDQ@CGicH*oLxmmte%Q=PRP|Bp0Fe=mc zJ7CTSTB#ye?Am)ZdU&ua7s6P|#bG9lCHFflnvL)_Kw~&xYABRS*Gi=xsdNc0xkPN5 zU|{O2uRp&GOT5H|4)V1fhDES+%C^rxvqJJ@OP(CblPj-*JmQ~B{(^6&)WD9;D%J#3 zG5%@{MV-+$BbhTi{cGI3-5-h=9AXr9v5akc@pl4t9H!w&Z~aYTRM?OWQ%m5lxu8AE zpXP}+Wk)NsL~kDKRv9ZL7f#)>Ci10WY|;!0bB#*dk?I;OiyAiO-yFD4Y_sGC?!j8k z{%OEae?GiYs!cDb%?wQIcV*u6GWvFHc0p}cAO#nw-wChp4e$aR4#414XToygIeau8 z{t^ZZsXe1ws>_pU_a2))$Y2^kHi(ub)n*`D@Zsz-PETUhDuYcu*3m|J1-_iTNrAO$ zLq?4)%HAz#&kJN?Gag5NLm$*@@4``U6uRB6JbOPaGaVzet5(pS9hgaxdL2W@r1o5? zJ%_Aw;=kKyA85S7V;#l`aGq=d><6#$0^KTHZG}Cyi2Y2nj-6q9tf3kl;pFLExgPlh zOobuF+%}{C3J_>rg@aIh{%;5dvn5wbaO#i|{C~RlBa_pfdoc>F$9Az3Y zxv}7o=0r}V?J%mKPw4o2Iv#Dvuzwb(co++k+{dM=qa*qF3O8IQcSEwffUOVQsC+(h z9VOQm(Fh&)z=gv!VaLps@~9}rP}q2SNc@dXJeUf4q@rBuTHBG4n~;ospc#{F zO8F3_Y@w97cPDw1;8l21!C!zU8igmv^uq}}k!sBw3C^$#&Ghsh%`vQ{RC=GGWOmQs ze2xFAu2m;E>p-NZYt?@c<9?j4GR_uNj?8i8GOwBgl#=tJ zWMnoT1#gjuURq{|C4M9BmXeKKs1H2NUC!TAW)SozLg92|_AzBvoR}Fc>0+6!x^!k} z2TEp_vxDjdc~~ppWQ?-IQClqkixuwec?pHXK7@uM<0*7@!lNW>5LcTu{mGEQ@wXix z(c5YVR#hCRSjg+DVz~CH=&kf^0b2)25ldiZ zG%$uY#Q1}^aYkSwIM*4`I>+a_9Adizd^nE&EP5Sa0IkjGOPrPZTNR@F@seLFDeSNq z9pC{tCRH5+omaz3D&_zfSRv^gu!h)_3X@!27Gu=qz$cY$LH-8pYS&39-e}1Zdh;5OJQ1uI7 z7ZRw-0-wMiP7!seqFDR=K4Ba#-dRw+LXRumJ{;?(UDQu6#|PM|0FHtBk%d)5wV)_; zHg(P*25n+T3BX!S%iWc(#8-kvj9@9%4vWDI_ z&N-w%fc_XXTp3T3sOV1y;y?pal{ndkj*HOo9r%^}PktpK|Ndm;3Ia?3l>QJ=-~z_< zIdZidXjA7c@%@ycu=PxT@>Pg9avP6Bf_^<*mtc?{Kh`ss&+b~;_;2Caa0xvIC&jbv_ex7#6iICNUDo*9;AWa42g}w0;v9cwlu&8U;glYc>?h@Y*VQ+t{CBzOvuhT1@H8)*_K}gs!0OG0Hd!?nE z?2+4%N1!(LRrq=(zZS|bakeAucq2C9DJsGq&@ckjq^OmU*;}Ef*!3;Rd5m`qu~)A& z-A)w5E4IBiQ`qr#;Ol zKg6_DJhnmXO$&un#CwiumRk?#&#>w>s9=5dYW;xyK=T5|+ec(wtgDK5TqAVQb@yIz zcLQoo6Tns_p8_Gu$V|$%%;$yREd}d%v%uWy1aqy?yH*#VK|IumeZTOl6UmPJJGF#M zwufl*>V6G+f`&H;t-R_>QyRo}%J=V-*2K`7Jn`1F%u^9Ex@Y zrtl1@ZkbR==eVT{mIaWpq7=~c<-jRQ5`C;u@;mwH}=7f(>5sC?S=*SaUgzZ zU)11{Fo$k0ln1WIcXy;wT*Ru)=W}VAT4P3ygA~lK@eLq$ogZTEB0j>GjU(^Djdm)& zOkPmDgfB|&oHN7>kA-uUdZk&-q@95(r`k(9MQqp~wA!K7>w}(Bt$6K+=!#&HL2BBwqMfztVCag;R)GDsy!72GaVI zuLRK}uVH?cUY zDe=T12QjDAl4r6QqFVa%YsWLCc4TzOzo2%IOk5sLt{tU5F07pihWm)&S5dwLU^(iH zxL#Jw8IR4M3mIQbaT7)6XE44v#`ykZI)@e8Mlt#lz?(UbTXA|)R*WUsoz?-#J!UV< zX-*e+)0Rqn{ZvY{wWHUvYOJR7AkIvBSGM&4qFXUGT0{CitO?Kq@Mab}fN7yqwxYE< z_-5Fc-96e2bJ3%S4tvCN-J{k)2}_77x!V|Z%8saetZQ0eRGD?t2pdjU2>d$b=$5-( z4n&K(N4qe~Awe>7hRV=xL>XR&D<O3yCn>El|O82M8Kf4hrCdrmBQr_z1l3vsG6VBsoPv8p*Krf`sAN%Cc2_#g&nxo*a4uY;OeBe;M76(#((|tiUrjy8zu}TJAG6nHKq;6fl#YayIUXGu zT`O$%xW&L9$T{Ecl2A)FBKAiTgPGCQ7}pqPJx5a zO^O`8m=G4*vo%TzfvcGNIPSag-%7b()AnUCa@Bh5WSR{AIsE(M)>7E|E;Y%&g@Otg zJH0>oT4Yi`K5{o@0bHl^ZEJ~vtvYV4GiytX+B%E2HiNizYER%7d|0d9hM%`fs~y4b6a1a-@LEDPST)%FR-{ei3ccM4r68oNX(oN_e`#FC-Yss*G>iSpNF+4o4bmbRqR!?X&;|3eBNU#%4T)>TT?hDz+CrN~cV z=ttFjd_AhBB)1xSkn&cnzt#O$zKIy$fyEY~5rBOQJAjE|m+6kE1Gk0X3J_zLMYQ!vkzm-Zx~hf#Y$YS1wBCd+^?fiZLLX*HdJewTT8p{bL%XD zWL9F7O3ZaD5)R6Uhc#qI`B5|!&Pbu7gPg5UvAEIy1u^ObpgOw9e}x!bfw3@puYbB2 zUFSD$ivB$WV_*gD6al*d#Nd0Rq)zB4o*F zU##zyT!nnDg85$2dAM*8syXk$?j8(z$kS1BwwVfWUoTX>yY6h#Xr)Is!Vga=_iRx- zOW*-tq(>g({*7huqqbe^m*F-GsePr??w59N$FM84`=s_#33?B%)rt4N(;% zS46v<(Qd;PUC#6NSBbhtL+Jj9jurW1OFEJr>+2fUd}arC0;@{q4@t z=2XnvgwESZfE4-dkro{tjU-x91e5~zCQ!r9!7V%3MQ9siwT0GNKXa{RWjWU2;1+@S zDXogwLycbM%C8BU@^PiWtba$Em^79Z&uwp*+rE|>I;ze&9yAn{mI^&aHfa5&{jIC_ zpB|iZAnG3XO2)wNXjavR7_FC#q5m~uc8nbdPDb9#d{i+d^1( zyT_rnrD$C(!akW5AkukK2~5O)`zYutL03ozMRYO*Na;9wXRiDk$oue2I@85jffCd( zhl>Y{N7@vU`7RXO&wfB{PrnC8zKzYSdM(O~Nu6~lSZEe@q+q%;bWGS$uC;~cxR%0) z-tS@UrF@2%FYG8b>sYO0=yza@tsgO1dmbWrnV|^AG$q4>n4aR5SF#kbGXH|;Ba|20 z%yS$N&*&Qs7zDO$YWGu%`452}DY(o1n&h4z7_dsw?)-@exVR@05vem1<5 zHxe$4Ky9VIA7_B_`XhWt5gh#ieHgwu_+1|DK+~73XEybd+ZwV*Ai*M3t=LV+MUg zEYeFUSZ4MwVC5@W4O&Bvb?_$Qko{2OX8S>WUy@I&Yg=#SU7i~Gsl>0Hv9FbVcYdNm z6Ow{eCO@FTCWG`WaX(Oqv?nEnjOw-4K}yh>nBW*G6Q=-xw#*FlSy2%Sgtg7nUYD@$;YZ&*|fi2J}lhd8)^g!yowAs<8QIR6NebrcChkE*y_5zGjS{QdU}TRfJRrtE z0Upd{j}ku=o^=^!#<>D^JORQlEFQ`hEl1f<4w@@`M18A#W#|5cHct&zqcqfKYzh5l zF(Cj_==MmV^C$RDJxs)0yksrJV3UCj;7C=soOgmpc_%19D+Z!wqCcVs@D8~!G2u_> z5TANLX}kx#B)(2X)nNWTH3f~5f;KUQZ9D}|TE{(VFQ~gnFW_=zK9_~pqZcfpzEk2? z0#ea~g^ur`{gb5mCp>NYsV6M@i+h5ph(3+?gav3?n3t5avXX{csbr1Rvf6&oznGP@ zDy^)^K^2W|658|;7e;+8U#>t`Sq8pSSBWIGTr0lb1+Hi@eFK09cT29dmNd)R_#bowg&CQVE6!Uw_GJ z)Fh;{QRvXns0Xon5s~^Yxd{#Z>o|=cd6>Sc^Wpph4yu^){O)37^deo53oNB0epVM$ z{k&2@@)JHL>x6)uGbQUG{Ips}%37KiojC>KVKrB$Y3ZY9tC>NhW zMW&fy%R|b*bylkUG~E(~>hl}wbH%1U z%0=}Rs?R+2nWH|l)MtkJw5U&$`ZU=48h2Uy_?#O(*uIbVQk3GmiUg<8ud$xSIxg6A z^sdj6>61GlM7yvfiH0@Q;-sOh6q0oEP==8PtO&bl7%s_=4aS~$^e4q zXFn)(+)q8~lFhmHri2zUoo?e(8uC1R1>Jf8fehH0Gk%^K(`AWC_0jEmlNww2Cu&Q( z?b6g7%1NMR15bj_nqablH@3AGG`4~|KVAiO zqyueoQ30>|z~h(bB3C6+y&qd(Di2q4sudoh-TOcNoQynRP2j=WjC?pT ziQD2Nb={|%){OUH>V0Y!V2s{+}M)KCY0Fa?yh zXV}kSVoOe3L477kcz6xm1+^HdE6H(fAhn>@AauGYMu}lQ-^sw<7=mm(qB$Tuzs8TP z10aRYjm)KJHQCZUsVX9sXN!>=h0X_Q#=9XMtM23I@s*X8^8d!ZKd@A++=6YEeFo!o zQ7B5|e>r(rqQ}TR8Hfql()kc?9>%T=Z9Gm_h7yH7{uAzp`DRVIMU13k<3ty>C}X{@ zEftfi^`zyZuQy;q4yCb~@$^AZ8a(|ahIPn%)Y2 zVhFt5i&7>+{@h}fXYdqE6DeTzT@IZBv;Pa-*h!0*pE934Idjxf2FmOgDxxhgF_tU; z`Z8XVQe7rEdp2Ik;#O-wGy|)oQJ8Z^{!7!fnWZ!}X zPzc0|5LOe?1`6ud`t{=eOx);t-3k^u{i#|3tPk51hx9|xkRQWAJ=ltfvxJ`NTjb;L z!;vc=frDDv3xEWmm0@ebDRge*O$Wqd8TWloq6M>~@G_LoUSbN^Sb0Xl@*F?*YmCj8 zTcPcSiqhjjg*=O+Y$PQAh@b%_&}%i~6aN?S3EkIQli6*W$?8yv>8QkLNhWw?I|4kq zrJy9U@mZB)*HT6oN&5#%+K2^P9`;g8V4A|qMW7LsFA_RmiBX=RoD?b)d>*o@kw1=xjtJ>ug|BihQQ%z5CH}UQBP`yP-Ri1xwsZ zpoW{12bMP}auSwxVYAXLu?t)ieau69y%C*1iAO+DNZ`|YZ5|o~UI-mu<_>M(>jh3I z4%f(kz@A*V1QXgMe-XM}jci8%y!yZ`tYir-+z%`J&m~Lv_A~bOisi>(PY3&bM6*e% z!{lkDva2JP$edq7#~YZ#&@5T#+(&bu5}YG!;IQ9*6oyLjZ3r!@5E7{B7@$;0g7=om z)rDT37}+@4n>yJ$ZL&8l?hV5*PxUR3K#i~;$0g1;;gEy)!^v!?vyPH?J45@7IVFB1+?Kx#fY)x6|v2147>~#GqD$qF{R~u^{LBH&n=HbC*RN##7D*e z0GbxxUd*ll3UA4d)@0J%L^297&j45ifTgA1d8 zaC1C_RE7h3=?l$7gr(0`X)`4he+63%XwT#@3-y&wa9 zt{7H_Ldn2400jF3n)rEe>9rCojSYrA&`H(MHUU(=pgP}QTu|-sf3={x*nc~~`?s;d z`}XSxKMGnr`T;0kNc>2IIWuacr)Uu&Jwh8m(q`&I`&?N@`C;la*Yvx1&v!10%Jpwa?!Cb+w?~nu zLj)J-6ps!;{sHFW>@ zT-cSvfyWM<`;)F^3C;{oh0K9FPlX&pCrKU^`+_e3e5o4O58~9Anf~@OlL@?90>oI? z6(jSI09=5Q16hn5{5OI+yF1b}eF}XM6(~|Q4w|%8V<78umTZ8R>=;TGzLpbBC*eFb z;A=jKk&O43BpK!P{{kd}P^sz!s4Q@snyi$40#74gC56LYfhopk3ZpnGiy|PJ^5Z2q z!KzNMx2*2H_CaAYsbK>jQ5CUQ^)^peffz#PTM?VeS#2r)mI zNSxl^f%hogkE5$m_a- z{uXszfxo55{&(mUP{Mr6df;L)fc(^TUD0x!5TO29^d(%{t}B|8yBBFox&-^Gx0~kK z+YSj2T?vsL&H)gUAS>wij&#D+ge|8+nSP@JbP7*LD8ZXlIEC938qr(d4ZW{NonQkF zcYV4|Lm%7;&9kcUIfKE)P!kB2YdJvTZRSVo=x70LPZ0&l^3=h1+%6mEN8(@EfY zAo*W`_RS4!hOKv>bEl)L>Q%4ge2qDGN?I}5z-I7=blHemkG6$Qz0Ka&EFc{>(kUYE zK;y{*_bYS+^$I)74hTIf-ADCN>p7uILaBWilzEds7}`p*&j+QyGya%Ppe8Ay%}98*fpC%gsee%QOiA$GBI7jtj-N`*zt z`2-F)gG=1IyiqL-#+Vxq0f}Qh=r3A?6MOe#(SB!FW&ri)+_)N#@a^J2bfgT@<5eC0 zy#5?yJm7F`U9TTgT^swIkJ0%D=1$J-l5?Zv>_Q0ELg-PiFy}VWy(P--kXF4Yt=h`o z8~P3C3NDUH-(L^zORJudf@FUOh71G7P3M+^S1mKJyMS}fP3JtwusMbGjl9LX=XS~c zT=&3@?yX(!SDE`cp(j=78MIeD)&?#3otp6V?SRoxD6872-`{PS*;TcZRdsopX=a#W ztcJmtRWEua_iHd0GGKLYg(?*baw^=xh9JNIMe* zc_C1)v^$>`I^HI(I6)+MLrty-%wScoKo@HB_22^IyqM#DQF3p$ySE4((-A1PZPj3& zQMDEJUxS5@LRr(f)ppoAus|Og`T(gmWlPR&)O2wG?%X2uq+5qN54T@d1XHRGhveLX zD$pNByvFx2(_n{&KG0S@BRxswE^rzHshirK;avX~=Q??b?Jad=x%F~<9y+GOlAO)x zu6m_wDHN(^uwPmSLub(pml}0wOe5dKFv{F7V#vDuM(0-E6`Zfa?y}k$439GBGb~7b z4M}N}ne!D1s_?+p)z#8X_UnEgjZQXFgwAW`8##z|-VyrPya{%qG4UP_z&4@@>Ph<1 zohK<^v{7dr)t|RVgooZm3$aE<4)ca$A}yIW;S|rAg@-o5vFY44Y_kXt4G{nL{ER$M zxcw9v!Qj%SF!^_`Ks@M!=|2&6RA}|*`BSGp_3G20K9kgEvieL>pGNhWsy?Tw&ouRE zQlHb+=M42J&{Kb244F%X&K7D3`)r4IQz1{EV*Rg^gM9*uPs1n_J1cZ9LX^%ULdORv z4=*IC<&$EP;s4hXh+%WA5Y(x|R$+&Bv3|5je;#IXK7Ex}+DTN}N!HKxo%_OHoD_rY z<8jbGPg1#gkxxQ4_J@v{)An)TQ=$>43N%?w_31;ef;}34#;HEN{|aHpEw<4)CxMQ) z8Gia41lWS8+Ze#uX3VUtsW-4s>V$`OQ!A;0`M)GA@@>ib(;QaMhM}D{XOLN*eC`2_ zcFwyt%lDsagYE!=)5(pr=7emP&gV8kQQ&fX)CUAI!~{MHF+->NkwN(g!Ra=*>7zlL z;Yt3{L{9N+=%v2V+_NtL6C%caQj2_7WnG`K+?wn^vC@9X7*<2 zeH|8iLeG*bb@;<{nD<56fuxQQygqP@waL&1x=y#D+#Bt#zgGLE)jHkEFu2cEo-}}K1JuKA?iLZ zbdroDB$&{#9aV*lgWGvNa4ib%;?A&sQF*yn{Hn%(TD*T;_qsBvP~HW%+<6D6@`_p= zd&{fEv}s(k0R~PYShgbPZxC_Fw+HsHM&Wm`jJ+GT;M&10QFo zBDA|ym;IAA1C-rr?WfzOd9~X`>MY@}0OWHyv^@PrR16RDM#Ww9X0~{K+J;p4ddZgp z$6h#KKbx!<1yXtT_4@D(plp-slkX0HTAxD1iOz9U$XKB3BJjd=(S0Jyjpyi4ASn>3 zvz@9ptSAUXs6elGgZdRvBi*tF9TwXz*c}*?s?Y+6@2o1~vY(c!(CQ*mU>rMDgV-`e zM4UJUY2#h!+4WdEC}dr`!0CGP3hS@!2it3ep6!ouy~TGhLoGFWQy<%j*SL_m`)P7? zWz1Ajz8+)u)2}Ka>@i9L;XgLtc)&aK`{0t>Y5nPyw()NR=~Y{7ducqLvJci zPybe##QmUA==7mcj(9N-N2xkQbRT=w2?dw%-;mm#ox7*9Pih-&hs4-M4T7BqmXR2^ zlQW?;&cFiBK$UwyPj_Vq?CA*x9s~m+B!WwDW%vXGFZZ&Yl&W{=cd-=PM)hxr`~C=c zyu!iu;?K?!IPKDSon4TnxaX6RgW&kkhu&0PZDL3_@^1)0vyL|r;n837mb0@Dq)>Z_ z6`0!mXXhTv`p+parFyXfPyg!__|uX1P@04S>qm|&#oITfc+`{s`o*JEFDTw0#51XC z@yb3s%Rg10r`6^o@x~RNl~B+WB?kznsuLtlQn@UFbQ0`U5fV>z;ZN#Q>L6=G=NQD3 zEOfpMWr`^hw?b(bP}|_ErkeJS`LK7Og(FUPFw&P!)( zYOe`4jsG?B9h+S0*}=;3glr9JtQF4X_C{Qq<^ zC0Bdd6FgyW0zG<#o)Q2TwycBXMjhR$Oh9Ej;SIqwW!fp{z{|(C#1#|4 zx@cx8bezM?i9JTU{X$RSo$Rrv$+aVIW)UFvm`K#axGs*Hc&USV|049X>+S|t{y_U( zLeFgq|1UjYU82bu6UHpHwT;w)3@^KUqOAJ2MiwJX*zpu0aG~x(vo}lDp)P2dA@tm-Ba#wXhdBUMSv))W3IJ+Vt=#!F17BYRb!W$1R1*@qZtruu&`BQU6vVf zNv5qs#|akLxmRc#f>z% zig=}&u*s_I-}CSBS!H_`zN7fDZ}A;X&l-$G$s%o+>6Y5?Wu5!mXMvzNaSCM@&@pi~ z0JWfZ*;)AszQ%%D=-v2qqC`rL+)`1O>2jW(g*x5AQ-g_qcJTBd*Q=u_wc*Q^G!_G( z(0!fCn^i`#0sUbe2N+Idk8J^^%A~GzEYcJqEOljZH%;!Pu3Wfd1?bQ4zh z`*2WDb##GvR%kzt1BLas3O!4o)j>pkF^F)S2?#wWvGo940echHo6bqwrvx)MZ^;pj6Q6E5!ZWQ5eWX@j>QnPR>hZTPXg+T zkk|d2X~j;fbL`PR(urWNSopBUpBdduk=P^jSL%3#7VKEH?d!;;od&GsxM_}ubq>38 zeEl2Ya_IKz+MwSIGoKLxN?qi0AYTVCNGt>vxnN%h-{rvG`&jf5zB2Fir{PpYtDC!- zFUfaPzPj~WNwIf?TJrpvEI7RL;`3-0f zi%Lm_pdB4UC4tuo<0MOJfpCcaj$DN@!;)(75!(Eaw?H~VscNFm>F(o4GVm(6`3clf zwHzU!4LbD`IAQ@;2eVfb%06h>x zGqt>a5_h=Jl@xJ|Syp=$p*AglN)TUkq7k23PM%oRu7C}gD$9kFD%c#x{0SzUU%|Y4 zDmcL?4*+a5xiiKIt*oxs-93>Y$acjA*Mtm$n(oDi`Fh=r2Wqhd75gSr8cr2M>V!{W zi0yDfCaLYtKPQtL4`92D@;E(tnu$ErrHT9@ri=>ccS5dB9L_`wc6Xru+AB!oF-I4e zhF-D=Uq~f6!ObM|Jo0fcF1VRwo<|;r8!>)?R=}R3F329?J+E(?7@8LPNRMM;m?1pS zk`mSj7bmg7;6eb}TVSieghOdyMsVS#sag)>^AQfe+D#ir2BBjs9@y>dcn(kY2n{pT zOqQZX#XbXrt#Vd|3F&6O0pPN9|9~6>j&)gZ`%(7~_~gMwFk1Elz5(E(9TaQ;d?fDq zRN_Hi=_&ds47*`~0vU#msmW1g@C?~zYV#!ym`>bG{lVcuL03V;Ah?;jfk){dp74W6 zKqawPM^u*4aU96-rt%yV;$X3xh89jA+zN>ZVNXrahaDc7S_cpEO1yMfU0y($uK|#K z-zfSUD4I6LYhWc%c)%`c{7G^P;BQzH#M^fChHPMJcx6xdQ%PnhVMR8rx6M*QR%lNT zpMFmq*1(WEZkWp=qqOOGcNtz;CSIlE6EiYB2g<^guntQv z6{GQ{!SLX_+_3Et7`8ph24L7W{cp*-t!mZQ46C*?VAa;tY_t|>eE6oV|_=*hluj!TMsBY_Ynf!z9fi^+|qjy;l2e z{3ty3emLQM^l!A<%V3&1@%`Hg?{8VB)!v5RdfMAj{~h>Ot)>tVNk>B17wMQAVHf*1 z4ew6jNb>{y2Jrg{e$U{y1;0l8YVmX6mxtfw_|3pCf;{Noz#Cf4A^e8%JBHs!_>JK= zj-LT>%=o3_cRhYN_~qeOh~EZ+GJP4t^iuw;ldh@Ou%z zzsK)8_;umej$bo=Yw`O!e#`JH!><^>Li}#Q?}zw48&CST!*K6C{(HXFtkFDc@HRAl z^ILwe=7_fLn}73l&HvZld51-Dy?gv1i(+3(B1RLiVAPm6y__j$73?J_sAwdBun0<7 zVNo=ifErsgVmHPp8bxD>Vk|*J6iZaBL`^iYVXsjVHTL*>XPI^Pm*363_j&Gr_sMx! z=6q((obsOYe$Sa1m_>np8P4?7xD*F!V8r4Q(-FF1NwKHIIYuLN+lXb@oe15vm?xrq zOG3Kcj!;nLnUL(PB_%dFIV}#MIhF)_S^_+K@r{Pe;xip+p(Ozd&p@A964D&@R8-S1 z!_4S1ijIwovu9+WnHGCi5|oi`iFKwWA+*vcAvPY(wj{(Qr)5A{>n#bR(vzGJTWd*h z+LMz}fh8fsZXb?*u|UDG$oN%c13&P>-n= z$TDs?nuVgHp<*eqNvW~vLo-lApXj*CS`6`tc14Dv=*T#SvvX3i)1Hog1bd|>IU$+? zUx^bPo02iKG8sA!If02XGvH9HGtr(77Tf~+9MREnX(=gb@lfk+m7GvXM=Q^Wj&(Sq zoueIaJSAgfT)OkEcxV_B5iv@EdO7Vj+rSQyk%Q3dP`k8LXL?$4f&-yft8`0+Bt|>z z@tv}ueW^q3sH1Oqvfb`LO}vkWq@_4w)9o)3p}kf5I+OdQj!H_6M}lv--Ptb{PLEG^ zWn_0alhRVn7LWAlVt4jRi_c89cXg%cfY973eKPIoqr>d!32D&U)Hr)cTBcDKblgZC zkrX%FwF4pD;E>GpbbG2ZBGKs1Zt)1IUVFpR(~RDS-6h7}@X;AgdrAcKV}}f=f!&Cq z?!FOjQ<%wNUi!~G&^x|=+YHpBQ{Ud5da_KVbzKhe|Kyk9-NuK&XVTJ9opz9uxd(rr zHRa+#{ah{IsurJ`b^WVULw+^t)UN)89{AJPexJAbCi+Z%+j)Ce4m}?Ad7Bh8toPXP z_wI*J2k(Oi9j3mPg}Aacb{VhaN4vdvIB*egrLrId?urV%7&;lP_F@>^D9`JB5FxbK zi@{k?u2*`aA``us0(N>a4IJ;q8Nd-<%m8=w;uK(;7xw_ByqEi`vu@~FNRmjpfWFpcjTfHFP4D|y*L&)&x=8l(OfSEQAHEI7(@*@y%+=o#e1>w z-v*IhJPi213g-&_KXLD099G%i?mk^;GF(u)!d#Q#`IRf=nhZBvTw%J&ekM;b*~Ax{ zA!FBPPun70Y&X4nBmeYa1C|6&x?~)5mwOUk@^7%a+~X#@%Plk6UG8p^-Q^aVT-C?~ zLY~RhDiO^!+27=BlTCcFao1-z`S<#inCz}kvB~cG6q)R<&qkBo^(i#jU4EX)FA6pz z?((zD`nm1lFxg%H|8)M~zntIoZ`$iF-)0_nmoJ$dWG0|YZf0`pzsV2k2U%FH4L$k! zSWu9)mWLrpm=&1}?Su3VYem8fd&4e=^_qtvy~A4WVKBMFdeCGz8D2N%uoin5URdj} zuJ$mzMa*H%^)S47)?v-|aG=4-9)>16tPviDCOfR59&T=MI}f)oIKaa#4YqhV*x-Bi z%JxBhTN!-K!>tY8=ixR67kLov{&bXznOB&xb$sbcKy3gEP89p~)t` z*tjwWa_h?qS8Wk0_?z_Z6IYnW!CtPg&}4Uhxh6yXU15sJZhg)+*{#o6CcE|7VX}L^ zNHp24*D)qT=eWXPlZ`uWMu;#O?pC-$Pm_%|M;pOra@|TqoXPIX)0QT~{|~xCQ&pHuEmYJ8UfX1>DUC5=gU@qlOg3zD;Jg6X8nz6A z&j;{%5%Q|oUc~qLdE$?ug=VlVuJs}wwyW-oc*}eB-SO=C3tx7}gNnB`u8do@mp1vB zGvdpBJ$Sgu&SSl8K^03jIo??P)%Twz*~+4x1z&#UxOu+&n0ZG! z*$?iWRVROKUgL|Ocdl)3R4X%QQs&6guDv2VURpIrR`{Z?e+}=o>T;C!eU$RilG%fv zN99*63o40NIbDqX;n_!nJ~|m3HTBV{p=;(ny!-n0<@=(}WT*Bl{d7Ulv?_gLb_Zud zd(okThs=9fPsj+Z#);1z#;=EDP`q;P?HLPF>rc2(b{%VHZ+s!L(KkQ*M#}28nAoLB zmxAwC-6ppD%}L4Y{Js+>-6X75+;Pn1ALnlW=_=Xz?AhViiS@S# zJMT&K@oa(LODGp(!a_2YZoWw`zm`TcIsGd^Cy|&skbmY zqUq5Vr~~Fko)vbkj=04+JT-^F%r1>ZOHx_`2!S!E7SyWV6}n>_T=0TgVo(UAdlI7#G1sa)Y@TE}l!|k~x$I z*Uiu?4XFU?26dP6r5n)A=pJ-`I)Tojx6}LRlk_$EF5Q9Y&J1FPF`3LeYyz7CIe)-T zV&}1o+0EQ{Tq$>)yTkp#`SNx6H+Y68d=GvIpUjWs$MZ}1)%+%YH-C}8!QbPNP*-Ro zv=%s_zYr}X3t2+G@RhJd*e#qBt_XL9KZPb@bFsash;NJiMZ1_LP84T}E5vWbGV!!n zA^J!`Qai~eg-OZMNNKV(N7^GDm(EMKq^fdVxry9L?jrY*qvTXMQ=TZ#l0TC-$UEdi z@&);kjBst-7{7rz+yVE($v6vth-cv0dCFMWnrtka#5&lW>@~K6eZW@d>Tv;FYpyd_$Q5zhxyJk#{Cd8KuO&1D>m&&y zz%Fl!yr_!f#1F;k;%>22{6YL#JTKlCpMVXjNwuX05-LH+m^(J(7Rq@=RFA5HR<6O0 zGS?3}PtBnRGv6^2*rpuehH%TFr>=5!`FEi=h6s{0R9Ye}l9$RWJK?y_McxCwf;sOpntY`e=QDzCqujpV05= zR!}<|i6EI^%Y3q#Y$xB7qvR^NO`tvHa4*DA4yrm;k7`NL6sCGoeW)lZjmo6*sRF8$ zIzpYI9#OUEc62W~f_{fir^nC>Vf3D$FVVMXKZa&B7{4Q!ubGp~P3Cu|8rzr^*>~At z>Z+rPN{se!Uzt1-oTEVD}5{3!$gvG+=!WyAaC=zxG`-Ee{8R4SfFV+=b5}S!3 zVmBDqnPQGORa^{X`%7`XSPXsKSb9wor4Xr)6eXoeW2N!Z3~80LRyr(QmmWzL`Bk~4 z{D#cS{p4hMnw&51luyeKWMAA8cg4~8J-h&Kzz6VkY*B&~Md_e~!5Gd`)++mztBS8m z)PZV|x?eq^-cVoFnnQ1?TBsJQy{|3R)@UW#5$$K_rvUveUDrG5;d-XNQ-7j2B#C4k z`GTMdgqp&FOr+kSKA`qeN2!z4ZxlykI-VX&uc8mo7wPIuGo~HGGX%6Ef{AAAjDvZP z`H;zFHZXgcL(CcGHuDGbglWh&V;Qi1N46U~l3m2EWjC_B*&o?6>;?7->(4djUgO$u z6ll~$ZV{KyZRYlJW!#To{c3!DK7en*x8(=%@AGr{Jid_M!SCmf@Yi@Bp_WizcvWaA z^bw|k-FFCO!Y$!}@P^n!%oZn!bHz`^<>F?sMBE2ja#gG)B}wUk6J@*pf**5)wfhpwW&SS7&SrNsBTersr$fFPpIeBD{6&$Uwy7x zv^rV?P1ba+tJX^!pbgd%wBcH&Hb$GREz~~OzS6$dinSfu0j&(Y>9lrHyQbaI?rBdn zq*v2xfnNpafqF~5ozCbIcviYTLC@9a>&x_fy+B{D7wfz9QvHa2TtB6s*RSfg^gr~c zdQDQFG$Cz>Ksu04q#Nl)`jCEPAc-Qe#7>e(3K;?3I2w9ChkQt;k{M(cnMXb$pOIx` zCD}^OgKyp?PYnNrY5lmdp{h}}sRoozg;2ezbZQhemdc@4f`4wLim9E{A?g@aPF1HH z(hM!rHo7w%4r6CBy^=1VH_%(?68bECpMFOBGXBgfOmn6^BQl{(Po^)7rJ+m;)12)C z^VvoIDIX{>LWuB82ohN_RD3Shmja~@Qa@>{R8t-&PnU1Y_vLE%CENsuVLKj&f5YAN zetNW?sAuVu^;!CAP@R2Xja#5RK_r;aL??sEaL}FwWCgSg+G6!V#w+NnQA=RY2GFBD zsOI6+;YeucT&m##-QrMrR}r9nGq z!@RJL-b^2(uY(@F0`0oR$gCfzayCDi|CPVX`wG=T{{w|!;i@=AS}J`Zl}csODe(Rr z{HZ!yE7E6?MPv;*NgfhJ!Sh9^LnCT4*tR+SI^CY0M1KUOtffooGWs<5qn%j@p0|ZT zHh6vsX?siIQk*nG`T%rgiBtgA+9&-C9^fN40A+boR>1=XgSL#5C&_csO`@6j4EhR+h4!V=6No+(Bd*83ki=DfHA%a+s8p zJI2TigXgHw?&?${DwtwnT=oX_N~9)HA5rsQG#-V1`i*)*H3bzTbT@iDjKu|XK3z!v zK;NP7(SOn$BQsr@0Za^&!z^W1Fl!kfwkq3*ZN;`{2eJLRW1#v^`98uX;j-{l@Dp2z zqBuev4~kw>>JJ*eRXQj6fnt9t|16J&RmOa^KFoRf`c}}^llob`lpG~fO10yFz>u-@`z*Re%xI`@p*DC`oPQac#W^I)!=sC}#dq+ik_4Ij>i z=jgEMOpT$IQx#MKGZj`!K5PhEm(LcOiv7X=s^S_j?(5^1@hkW>+#I*UZSh-}!2;Mt z#~r~k-EnW+7gkGy@Vj841Uw9<;&eO`kHPQbb!xF%s{X7(A-R=WvLEKZ$4q-699F&? zJu)e9ZtV^l{xx8A*Kw9>0@1 z0Au$i^?*X4ra`dk;pv`qKRT8kM!!!_qvwOxY=G7K0s1(MS}w*V_%trZPhmbpW$@il}|ihu1*y{OJI?H7$YWMbe3I{V)aAV5{jO^D5#Y?au^&KSeT$ zOcpZ*)TxXqXDS%PTG=2d)5gZY8abQIg^^zf-^*DJYh`0SM!{7}4CjD#SRSmGOJFTf z&Q)-TxAH+e#oPEWJ_c4}*?g{RJx~Jcv2wlwt~9JdkU$AGAxwx79748`E9Ak7tOV8t zJh2eg2W4V8TxlS<(x6;d8ZlC~lq=;)C7{L?5`3Ym z90Xou0}qOk9dfpuE9c3D;6G(@IrxtiJck0m3BxhifwMs?^Kc7Zl$8b~kQ9mwGm3=@ok2Ms z$EID|ZCl&5vU2x!%lqE$*0Qxh5X7EPdjOxJ)@sJFq$fcw=lA|x*E#b96Z_iVAHUb{ z`@N?Q*L6PE=lVQdpX+lyopYRhk5h;i1VN9>=M#h-Na<%`e}DQ<1Bx#i|N2G3D>3g} zwL_Qx&Q*nrDr-$kYpNfpDP3$@Sh{3MwbgWgxv9ps#8kP&lzrP=)8gu~^2rxoILfS& zF31steBC9&{O?!K6RwOBULPR{y}|{$(YmNhg+BsmH?CMgsJaBH5!ZHHBpv0WxZFBq zNq+Y01#qMw+<9>{(@PLc9G5Ck9sJaU-v~M(6Zrr3&!iLLhp3#a(+Pb;z%|fhYk8d& zHzzmY4+%uNhRIPPq?Al9E47xQC=nOa9qI{N=qB*92q~_~H5_sC7{Fb);&8oyE9hqt zN-Womqmvu)W zL71(Kz$3nG0UXLPJZlx>Ya#$_%kbLiCh#M?>r%NQCZdx9JaT}&0UXL%1mleBrerW+ zCE3=Z%J(({`TsDyv>Vv{Qj)&_c%=9HeiW8rc)v(x`Gr+TN`SWn=`jZK|6zDHUeE45 zmm%o_9x0xWH0a0h(r;uCoK2v#R#RTKiI?ZQf6G2nmPp~LN^tq z0FUhR+i*PCC3OlDa7F{lEkJq{>61g@UC#_XkAg%O@W{@W6Vbqr^a$MjZ|?t37ATTG zn=746d#2$%i_qknyn=U9> zMne4jcPcZgu4JVU>_8~2fMB}-^HlqMJ}0+FoRVWuz<%1}2&T)YPIDls$=^xcgY+Sb zz!+pGw}PtDfKIf3iMuA3*z^?ARF~8icW>uzy)bPfs#<4H`zu&)3H zYEpq()3bZKIf&o^$7Y zKKFgOoYYsisUX`*C*vU$ar0f;jCOL@|LF7i;pA{Cyi9`|o_Pg$oxWbRzTugz{N5R$ zC%7zvdnB~K1NJH>eZ~Mn4SR;c-2qVr?~6{Jei|mr!>DsR2u&nHx2l8|hY;d2bhbK{@i~|G z3)T0`j+|II=R1XUA3YqA^muv}dA!^$wVChjY~@Z0M57aF5CL#ZcTEf=sT$`<=*?4O%Z$Ux^r&h$&HvRxF;aIp}iZ(FBZamJM88+ zSjXof;J1LI_(>|>j9x9<%{x%6@B}Rpi>5b>hc(Fs)b6!~u*t&Py84o15; z6zwxYiyMqKITUSx(7ycjAf}T-(GpvL);=s+A))0yTo1VIXU5279{ z8-($`iZN2fxHSX=t;Fbj1T2T$JP(wK+#kV`8tuza@aq^0AnJB5DkXyLDyl>m}OCurqs4DSU0fIrdHJtu7l#=TZGD#6uDVtX!ETWOaD{aLs>_>@U zyE#;-*xeB7nR7lLco70s8ym`6#4R^+G(^^9Qhk_w7a+zF@&r-obq0_@w3FYe=GTln z5$qw*-O-%$bS?<>6$)2DB~PI`I$1MK)bT@heIVNq$l3$hx5wy@8ztb`VdN*k9EE%G}Lv$Jj(b;J3p#tX+1)Wr|d5D77 zs9^gL1%IXj*ANB2r-H5_3I<5rUMdJN#zu2I`utAe?ZE{ykup(1h&?u%S5QI95CxS~ zUFe&@u4y)36)7niC54`8yPwc7)&zpQCb*icgrtEjtE~Vt|AGq=@x)mFCK0SjvoBa~D7Hrbp+{Rj#}Dzl0VovEquKiD0h1|hPLj>rP1fitlW z&xGQH#-wIACPWrYh%A`U=m0@zWT4jl2~8;GXiP2~jtP+k6Cw*Hi#U_2;h9kU(wJ1 zf2$Ksa3GqXR=_zF4$mQ7TIY>i1|L&a+xcB~!JPyr4^6C8*pIHYq9nHq;7)L>1q(M;oz#$@hrOo%L)5Lqxu z;Y`wgf{EJEJwdkmYRxd35LqxGvS5-($wqTBl41H_PY@G%%`i-eESL~kFfmcG(QHOC z43o|vCgwH6Fd?#FLS(@to|28`1SG>Sc`b;^n@z(oA+lgXWWmJ9nZymxh%A^8Suhbe6a7yxQC*nkCYlR7hh`E8C`1-ah%A^4 zV1PlJ(2O-wo2X1^o})3DG#nEm3noMsO!_zzngB;)qV^Lx$XxBxFy5elESS&~9ZYC?J`9t}ASORNI*cYn7EFjNnAGuxuU8vhv>)Mf zt!55i?}xW>cms#q{qSuZzLdkQe)vWXU&P^6et12HmvDHQA6~}c^EiCIA5KRzkh6fp z3;pmk4$tH8d_O#a!z~=1?T6D=59p+Gc%~nI68;Q$3Wulp;dI0Vcp`@<`{8ti2DpjC z&3^b64yOPS6n8{BroMzveHw7;)6|&OI=~DZ7OTO^024S&ufYlc3+p%5Ou)k2+?ohj zm{(fk01J1b>6mQNG=V0YY>5LR*M!UX4gblG!FG76dD`F_cVVL^6$>Oi<_uCesy4=94cX+2)s=Od_;Fgh)mbOeS_u zh;5#VNaovmrj&`3F^7@K3neo*BAIQROi&yPmc|}RCN?6Oa!w{F>;;o?g_7Cxc_iCh z$;lYFQn6u5{SZoKRYWo$J;H1wa5DNZGU@FhCcZHu87C(b6pw?IvWAlB`z(@Dw{S8+ zAv~DO_E0i^jz}holL?CY!DLQ`lDR)3nVkmpPiYd)|#(uinXbM(F5*_Bw7( zMXDY?yupu(#HM`ixEju+DTAcCER>yoFW6ZIOLcK5S^}Ys8;o{sC|U}keN#7xX>ur9 z38B3;7%hyNlhC#R4Mu*s1^N2POy$tSn;p;y2<-4?(m%DsoBzC;2@!NOqaEHn1cG#U zQ;&L>Bm`k-hc~yV7z;u$$a|>OcR?yg;PB>?Plr6b`EfZDb=bq36{x-g))72sCNi&z zba?Xy2tr)#Ea!hX{Vi|?+MFZ`BpjtdSZjGD!XlSx=9M<%7JF`#41IWW{1ev234yBJ z9m@I++;Wj~A+p9T^zeppgghwKs7wf@63cIY`tZii1sP(db#xgNMk`>2KtE*X2eNxd z_@QqHvaUe3Es)(2$i5NCZVzN%31qhhvfBdL&4KKeK=#Q%c2gkh3}iP3vdw|)`arfJ zkhKT0b%AVsAiFe>wFa__0@2C~V4Y(b!53)L*PeJ#lDEC}D{M*%xaD4_!C6+ve`^l;kFh9PR0sK7Zy z!2k&C+&ly+Bh_#XQKOq`^bV>)=QqMT;Udu?kZB0$yq%Uo(2Zt+c$QEB^;^GQh32}Q z4MU(m$z&g*fS&o==^8|5qq&y~x`rsArwMoV4pHEug1#XNwo`%dZn&%)&6}yfI7ESy z3QR*3P^8&up@QJ%RO8AB7oK{h_{Yi+ZzwRsP879TYglliTTDMGIsi(WFYfz}vcnmM z$V*gml50^IG4eekwu}>_TM#2R)QDZoi7`Z8f>>kI-qK;rMP$K*$b!jM z&Scw9Fj37#5kX_};BZWcESL~kFxkwRZ21W$s=16onv58lNnk6I$bt!x1(PQ^lTAOt zMAd{Mm8Qw&>LJY)U_xZUgvf%4lQY?UBTG>3ry5>0R*nxNK9 z36ANIF#nCr!GA<^WXX^^1UL{)a3GrC&_D^!=#UJ5elESSvWOy&>IghoP*iG4UG zL>5elESMB5elESThRCi%lNp%GeR^7=!=n2X4Q36TX83ulr& zJQEu2H6}&FF(I;GLS(@toioWCo(atyG$wry4x|(~BJ({)Qi} zo?dL{@K^kB_4HyZhi~)4)zgd39KOX5S5GgV?xO#fw7_(|9Z`qpuHy&tZgUM%Hss~`Rb$6v(ZRetyu4lm*GGCzDhhtK2i`6`^9UKDUx zp$4PVi#!g?*I;ydVd1cB4MwLI=^U1+!RYiNg~QS`7@b}ua#*qov(f2=2{&|lVMa>2 z(-K-cy&#ylcGvgp^nz~K=>^pg*KP%r?+gV`buo>Ej}3Ktk#Zo?{+;|lxRV9%n04KrtfOxUr*vk}Rht6VW$@Z??qDTc21_5lUW}|ChYX$zao+u#mO{qGWIYsVW$@lMkLc( z#%xo^$<&9D2|K-*5RpthC$p53v4)WeJH0saZY0~>z{xD)WU9i*gq>bI5s}PS3z35pV`L3$z+F-2|K-*5|NC;$)s~KnPFtYPA|M~M^Y-AlS$!Z(!$7uonCB- zNan{W%peTy0AjC-ksX4e9YB1}n`0j42edU+0+!UCVQ-Jrg9hw5>;c3;rzUY7>49d) zYILZxgsC71akT@8G){jLq@YTuGgPIKyb@uNtQYV~PvRB_5R?pk0I?84ffpfAweI^u zSntOzO`-+Qp4dP^=m7-d$PXYiD$j;eQTVNDe$BWOcZbX?qPZYDND#igcy~0HX+ElB zr>~j15q`+74`k!fUsY&AAZrX{;{sVjAR8OV3W2OXkR2e4;RkL%1hRdB?012zJCHpY z$o2-Z#{=2!K=w!=+ZD*ZAIRyk7BMIBD92Hw}VrG|wXuEmT1I_;=Pfn)9fjV2FZrrfqnE z>aimXDT6kp$xXJ%Y>RnTW`L4uYcuC$TUAk0vg&rGLgl4lgNSzc`R_qTZdt?D2U1J z!!aSUU_xZUggOA2kn=}kVnVyXGstB$O-|l3q$YtqOCk#5d)M=+tjGz=4RKaI)S zp_%CY<|49SLS(^&x+j=W*JMm+H!iGAm?m&#jl;y@I1o*6Aex{?T^$^#n-9amzirui z_mGAP=s+~VfoOsQg$;0^kTDF0bWMlSp*aMcifDoZ(FBKH&VjJZ>S zG{J#rfT!DPbrHB1r7tl(sV+%lL<*cL#~u1L0-!pQ`Aaxj^&Er4G~ zB;%dSlnQeGU@~D_0JlaYvxSoh>My}$!nOeP5y>pzWP-X_FqyC|fPefWl5NIvGCR=6 zP@g?rmyKXT>lt)2T6YQium=0n9ZdINwD?dowy><@XipL~OtzlE?V!iz45LsO{@C2y zZ~>Jp!&)$fxK zixC%}J>9OeULakV2B~$Y+Z(ieRR3;4Xb`kpJ>3d^Oar@((n^i=eGfse-I`9f_%SUF zpP6haJ5bypK0A$)Wmghs+%+Ajo4_hstfL#50CX1X#1~JT{I&t;-Zr%eb-eqb-{F69 zJ?RrCMu#nye*s8pwaD|i3x{n=*s)M>AGr;FXEo!~A*>bYGeW5ag5XZWAJD{iK%|rT z_~OckO`W#Uj`HuAFQ83mBA);$965Wb^-)ir-R6D@weW$YCYLh1O|&mA%hBXD_;iT;w7OC5!^TlyU?lBHg>rvv2M&9h09)M?1sMMoDeSOvwso z#|VPKyuyyn2Q9+2^hX-FVAau`JU4n(sWOeSO+MRb<%TVkJ8hljY&=K6+E;f80#@xS zdzCD`u1_&WkCBUdUqfFO60rs;s~B~Ukt;u}ZL7`8)wYRbz& z$JfQ~9R+&%QdVFgOM2M%hA1XTC*zc#b#Ft%p7U9M-gMX+TjBJ@Jx!2XZKpxL?Ou?7 z_*FOH&_d1hRlypb~}ds(uOJ zm8gtv+i33$r(($Hv0f?fR%YNMRkp7+^j`t}4oz+)&mhlYpMkpXRwg|Ya1Nn(52NC9 zOv*0rQLa0_vBkzJo%N=gI1E{~5$=cKTr9e?_IE#oTPA9r&C@Z0T7`ZZ?;pXWz}r>f zRJE~=;W%V7l}JFZZXn;`J?4~7CM((IH29_wX$n#{dmy^c&`-!UjPX7mvl|H%NoZxt4(lw}&aaOdy1azu~ttnP*ANXZ-i1y#&zM{iE zX%g_}tHLod{rhhLd^B;qM(B{tNJ;VzDG@pPbx84$l71B(5*_`s%#|$D*lI%h8tI?v z!ocwtG(>!38yOX&!Gc!z^=zDYUKX)|4C(atacN@XI zc|<1`aPKDfF?MrNFw)uz=Upr+%{QCeyI47jSvzhf0yGVvX>>;i(;Us4 zL25JH+v@hCK@Nw_aZt?G~(``Cy{OLAK&lFIBw`bxkLJ;4~HYa-H0Jq&s zFn~BLwR0lPA)xCbd8C7fy96{=83hxhB}n7ojYgDZA|DIaGsyWY{Kam!2yPj3IH}Eo zZV7!)w^^+JLG-DoF`lorz6m@10lE=b4{&NHJm4|JYTT2XGBmlR@e|)_L1^^cWWkZm zA{d4F*)09(Jtmt$xhFp3o`hA#hR=+)%aqHNS@F&K(Ew)2_rx==0)1r^i3Q(-v2cJZ+nP=v`IvW~})P3ptg zi_Sahbk+!%*$I%`53?jR`BvpR3SlNJ!oWLT{CgBErl-h#3gMPQ^Qwudr^Q{_H!#`U zbf~xk#LOG&@l1z7ks3_JwB-P&8Y_Vm0xB{H`*cwAE+qUR|Z+8Z!2* zygSJ)=aQBqPv?%%TkmQ5(mFZSC+^ZumA`S9g5=DMQ?@?fl1z6JVgh85zv1#)h-aXT zKz_YT=<_l&b;17a`U_Gl8C|x1UB}dwy`sH@_~sl}3Jg$b!vSz)_$1uz3`BDlWx;XG zc>nA|)~cTchg6D=D|djp*!%`+P>h+v7#bY2d_b0OMb%Z~HGeeYON1f5Ox0(QMec6D z;M$oPD|>4%!$&&tsm==LZQ`yA;BQ~!^L!cSYQ83_)0xLX8rP~T(SzYbs-M42-|!3W zBidpUI207c_6sJ>^lo-47QOe^fNix{f75<}X{Ogv;lwycF6(69>l}$NbXGtF6Pr@t zJ%dycHxvLYA0qo*kTMffT}Pe|Q(^SWQ=aQk1V3BQt=NwAAC^88`j2_0fHYv!^`6U! z9?W-ZY*VLb|25!5!6TE~uk7{QOEPGFmZ|yK`)I}Yq=9Pji5BtI7Rfb3e6>evjTT?s z?}+>00`iKYUb!drK>xRrD@sP|Eifo^Rj+)RwU+@a6L~=!I6L&wQ*+u@VpY+mdgnN} z61-Dn-if;Jk6v&@wD05XysoHQ`qb21bOgGtE9$-K8^?^4=IE@{#w&XjpC-PFsK$3oV+*v}fs3q}C{uqRQ30OmDkf?pJIErxt&j&-i?| zIcDn6lqZ1+nU-CAtGFu~9NkqYgI+bKQ2#R6So6C=z~?w}c^!322IM;|EX?gflltDo zK)6BR%Iwi}~4{Z42Eb;@CqFYR)*S4o|Z~QsXQeE6;1L(8o zf{4eU3_hlr+x{v@Fp_^ohFmVk&{(4P^+S#&1Yw9?59A5>TZdF<{86<34n|Z8;wqXB zSRazhyOfzm)m6T-1O>A9J92t~h%KjH3~~nX?=$0Quv3cOm*dQCUn1PH9es3K>S6Ez z6hp`5*lD?Xz~{@7`;xk8$WzL@v`&h#?(B}qpy$>DLxXCtKFICek2wS9>8`>KodaIa zk5$+iHv1~K-jVY;W&m#cB${)tGFB)>pI69t#mO^`o@BE4U2)!TNoN+xW92>gzVLgP z`@Rp#o*T>I%wjZw3iKlV)Gb+-x-^+TXYx*-o@b?Xy1pNnLfZxgBUHmzJdl# zU)n_FPV7WdgcR-cG__WYZ4{8wH+())Y-&Y5c{*}=0AXq*~F^L)PIwkZ=Tk<<`!Q_T!N+k(*>n$?Hdl`*YrA`^ zMYP|Ed#y{|06Lx=03>w^fcb>Mwhp|u=mzB6Sn7Kun>!YWGwZ(gt|Nb8*4(fPo=PTS z+fcwms|xPpc$C@m9ZG;V3sVoR{@Z|u+RrCG=Hqx84m}3#(L)%{!&8f5l1H@9M9%XI z{88r{$#7;mSx!)@%ofKApL|X}-*SHZYY$XZRLBGU9(jMunWz@u_@pzU-2t)QgyjY2 z%pFwT?`b(3)pBNh(mr{=4PU4>WprRV(1AWDbwp(htiHP=hs6d=4B6fso2P=EyPVn~ z$0X-qOI3d%xsRNqmwHXo-W>Ua+l%kgfQBRc0-ubXA&=aR_N;){@a@V4n13e?pv3zk z6UMtno8#rndsuv|TWSHT5-g0%Fu_~|?GiC%PR7(VMV+?BBc&62>dHo}E)w}d0Be#M;dgB?P!RND1h7Q;!!c^Yf2IJ9MsOuV95b)_~M-F|pLfAp0lvhF@ z_o&GKfyO4}=Yo*YCffYGRgLE~w?_9YQR*Rb6-0(e*qBJhuExJ0GA(@EdvIzaw+D$l z7kpJIzQ>e-ui?}=L^JdYnM26fA@L;z6oQN$SzISl%u~#LN$yc8-UbJwI&X#63D!#* z5XAKpsH58PUh4k~^;nC1{xwq%&4xJ(T12$FA(wRa$NGn`g28;g4677_*whZFw$sqh zb{dlQ%WN9b+<_vp$$t48){r05DfWf_wTG3Cy@Kaeq@Ne@U2A06gm~Cyh0vEgQJ^18 z_c=`bsP4<5bzx8HJ8TcnL!aaaJ>RXd-nMXCAK+z(zge-KTVZ(klVb z@P^6MD)@A1mccWD;c@#{9o}YcAZ1&7T!-t;1#HngQNZ+kn!ws)G1jN(A@k%98$TC- zDK;GjTwPnMh&aa*?e_o?8~RwV^0#XmPxx-e_7!^0MW|l@Z!1(Dij{u6NL>2|Fl@vW z!MA$(*b3P9BHe+DJ2_z4cNOSo7t!=i+;(2K{}kNY2=|VAjkY6_JT0F@?E)hK>#pbf z4}Q+)SpBJ|bwIlqXrLBHvz~2mbmWa-9j8NjG1AvXB5}eI`vg*QG9&s>T-aRg8~Kd< zUd%_L{b{05s|WuCT(tVR338a_^XPO5ji1p!pMx%!ypA?;dQHvPOJJ%Xau~h2XeXc< zm6aGkRvB)iyu312+_q2O;?aX^0!W##d-AY!E=Jt&D8!LkZyY_}oY;J2uKZTaLDBvi zVDdrfpQ3!U<;U@<@5mpeejM|o?ax!O1G9V#NF=i}oq8~-j&1sKRc!mn$+;vNgfht= zN&UK*_pDdu zjp-8Y-=N_!DQMn}Ubai;!ni=~Cil&0>Rj15NMQ`S#t@EJ+?JTT{(oxtSKn{>>Dkyd}9$xr|a-YhX- zCh#(&52RzC;-<+Mqb&g5+#Z#p^)$~a%p#a>p3iAM@lY&IO-QdOm*)Wtc+4-*p>4ZR z`DS>%+1tY7W4-cOB9f`K!9xMK@XwlscAl>V-_!98yt852CVs$y{It{ z`p#cB5?{C`5)JP}(NqOy3~Q8zKw zm)dDRU|lNi+MOkxFg2XLM_jWW^`tX;eE1O^MH@@k}lC9NX4QCgL_De~6_>5ZkAd?j~u}FJO)P!5X@iW9ZdSn9Bi}cED+B=89dI*f! zFD&*~%pO%iPr!+=?hUQqGEDs^5O>u2e;KO2XPEkb#iU!U{~)X1h?Z!8PRuYKs17rU zb_p2=6vz>vSc$v`V;hErGG@#FVzz{?r;(9AfRkoIi4s_|%>8R}h-g^zLJ)@^G@Si~ zX#X>aHJrU(wEqaU1NS3{Q;huvM5sZwZA9DsRNKgyiK(`k!|Ka!tyf~ZhIC(ZCrH3u6af>764Ly2 z@&~kRiTeSM%KH+vu2zRos7^}LY0*9kn!W~q_sQx}qvLj;+((q$S8D|JBh;Y}h)uPi zL_Ni_Zj9##00~wM7_}LVfdGF-xG;Yr1s6JeC7e2>jvVSP7{(IiB3kP=cfz#m#>ji1 z5@xX&DgJ`06;3jt`&N8bjoIx^1|u5%$T2>Mx8So<y*x*>8#9PykEZzDEd0#i<+MBD(LwH;j^W!XCJb#&q}>w!{a!J8lXsv zfL$0PNkn-!hPm?3ndN?jbeA)H7H~;C!XY|oXjnD}?Zjo{cJf8e41B;pjYgz2i;5(V^c z=ZLQkuCN(!)nu}fwoAs#d3tS}xE}0r4yIDmA|t4M3t@MqlP(`Z5NLR)gX^#7^>tc(ayAIX>f?|K z^}DEkLxlRN2iRGmbARuQjE>c3JWovO zG&^_@xusL$!0R0^y9IyySM;P$;jzh6#sZD>Zg`dwY#yQ%xH^9rW zh7pgBFao1M!|16uFQEnPl2>9Wc2@ONnX3*Ln$wUj>G|rY=i}bfZ8^5Fhw&)UA>1?^ z&uRDp3#JXw*c*j8JpQSaI2}ECnJm?t)5b1e1X^iF^?O_-3`Fedq-vlcHqAmEU%ojF z4K^S461>@(zIA4p5Bj4CsMU45(TOvY_IPx#i#*pT{v-Q0MyYSS{6WiSBLIF2-Gj~t z=Toyga(qc$V)I`?9OO~}&L-k8SsJ{p`OknOETriQ@eEXF#l-Jj?B7{2onmtf`qolUl@&B{6lKE zg?M8N&AmSoQGrPw?b9z(_e0`C>B?r(-P z3ihU%Q3{c^Xx-R@qerxGT(eGoH@D|2%>ukHTB}G-EOXLD`>)_F+#Enp_r|gkY@pl) zIMd`vC(QUQvrsUn-5RG8bjUf9cW3wyRtH{v zCMbSKN5rE=?mEPRPzW=$HI~U_Q&gj)WE#@uvFhj>>U}y(dDkIwp0_cyJ5^_EdJ;^L z&%>HO8>}^eCfcfZKdI>y(+;+++V-(k6=E>`5-8I}s19qplHW00<#TePYx5uqq-wN$;M; zBYh$y%LmmsN{Ok#zBIv^9)W)2M9;$Zzu;KzGt$a4}u0|FY`$VO*K z!8ZSmSnS%az&K7`fd#n{R$62bUheBwO{O6^le#R;M%et6R48q7XyITmOV^9g6NqUh=_FylHY@4VV zG~;4Gv(08iAtbbS%j`Us+ad)ESn`xa@|0NwYgh8@Zg>x21QM8~-KiMM z=%0o*nP3ev9hnVn#MZ2={p*N1{2F^USE7GhG!-poHOMf_eQF8maR>5b%vng=N3!T; zfm}Pt#ySjN)V$dBiczyN#UT^)pb2KoC>SqzCg}`#_-Ev8Xu>?SVV=1DGIDWr+N5>@ z!ZRL*Vuar z__vaKlh0E7-iN`Co|+n&3qPn|y$`$-a136BDFlw%r$HUw73~jF_7Nk36m?(-6i4&- zc1Nyn-JQOMvl(L3Xf$ocUYi%>)2O^%mkQaKBYIYIefzsT>#@(Ix`SS{zlR{{pJO#0 z!O9I)SlsvExl&rUCBnc=(yfRia1OZuYbbTLI7mM?bySLc6v>;eB{xEwQImPbp_=B0 zQR0TNv=RfHBH(ur0&M-%pdX97GM*v-E${mNQ1Eju#Rj(B4li#PQswqsQaP1G=h{Aw zc0Ae*@3r7zHhVfON5dl-5+Uwx+!CgdTKD(Bgst+>tW3$BRfj3@qM&2DCJ8^sp`qCH+jdVCEm7 zFVoTQV}FHv*hb^bB>`P@Gj6!2{T?2rnaVo?{e}5k!zy2j^?Oe;S`cbuuKL*P*!#3y z(S2dc0ZYi*VuaXq3dZq{@VtWC{tq#(q`|gvya`#uyh|Gle5yh6 zduHK51L()&KI=uEalFg(&W8aMZCJntI!_vqlTIOAZbnt*c0Hb+Lfv{abY{|-jQye` z7E-}WGn2X~a@A7=q*&*nJtJylirAjzXz^~BI@h&c#TQI8@A?kwteZhWGfl&%I%}4f zO~JroP`|tgsQ!Lg2$zjY`R~+bBh@yMYP6RUX4@!$NLoCfC&Njez{D3z^+mCeEmO%g zI%1osvq#y}Gc6!f?(dOKup}qiV1k}1gV!J(`lNp#BzIapk|Dfdrfga5ivmOst z%JWMELO+>txZ#s=fI{5dQwXo>aiw-ryz`Xc(S;eFAHkHWGGEst($X^RNGw~R0nU7y zR_PEdjxQW~-U?rrcw?CJcJJ$PvAH}gP1JQ8W(K2=_R#80YSYu&hz~Jv`FcEAyZ7iJ zn1`(idvZO;7O`at1K7km+9x*g2^cERb#(4hWj%Vue%9)a)5yLDGy;yMXq{?70nHV4f z{SEh^KHfq%FX2XR5&!;?jQMo8dpxL1Z6@qlwx)J^-FO$|O7B+fIj>B3a6vfr1!2^S z73yp6>|@V)jZjIiLRreUVp7%y^isJ3W9`)@ICwrBJ{BLBIvnfO^Dk( z4}qZneVSG>8d|6j?~caOYh3JA7Vv|*Rmw>G=^f0iU#jm=uy#uSq(xwJw1%a zXpG{kQ5AADAG|LDEW9$)0hIyQYcg-9aff8Kj^Y(RfUxeDFg|gwm-Zs40JJWuc_i0^ z-a5g%bM!J5?*kZ3=_!OO;ZujL)!ftv-*npc(XOR^*c0o54Ol->0{sM=iD>phxZZqfhy4%% z_Kpu1=c+Jq#xZe3`{Tf8A{hZdMXm2Zy2Z*^M1%)uF024c?KgMfMddj1;j!4(9jj~2 zn2#=VBc2AO@}wS&f(FQvKy8jRUdDO%fcswV!Ea3ka_uOb7L4SMD0geF>`XlzxPkDz zzf_}9!3+2CRWJa1euVi!wizJ?^s!*D?!j}}_2@>TGeoB6h7!dCVctc&MRz*jZKNhO zBdn#X%^4x8eTF^N;HEr^d+<$VcI(ECyc>>?h#qn!rljS<%-FZ=G_CUv(8?el2QU)7 z6bRFw2zjRu7GRqLe}kRYjcGRGp^$M|^6nYyMmLYjvUl1}qZy;*u@ZZSPu}hAtH682 zv5?B>nDK)$>jxZTu>z=vA2>WarRg9%bQ^FDwQ{o-F;>=KlL+0p`B@YJzkv2H<`do2)2Y~3h-NC$8ao-^E>U!;2Wa~MG-yOl zLmk>(Nx1^yB&l!QS@}cha~;MF9qBP2dc3LW!5c}be^iffn&Hqt%GCHdJ(_@j>RwZ0 zBn_frI?&L{9YW4Ag4}%Vfi)U;)JNBtf6J}U*x~Q=MHVYM{#fq>%v;o5Rx=hTcc{fW ztA}t3n4?1rwl)DGRdz=M5%0gEejY%Z3FN{GxBxdh=;m*@xg9s#p2p49HjD%#s2&@) z^!GaSd#H*GyWUT=7z;47*#l_akI+`qNm_d7(dQ_PGtM$9fHPrVuCbn`a$~GhaC3*$ zmO$@IqrNnaF}9+^0;IPD@jj2~D0nBd^09=TVm0AeIodjud@-xXDrx`dg_!8Fb1_)! z*^T!adL=`U&m8=xL;v&@$hNqnTY95Om%m`HOE0EauaH;i<@@jz2KOU021&J7ayHr#XKXxc0>kB-9QyX>sMPx$^g^6s?;az{ zrAv?KV^&`cUgIG*p5?>mDoAR1jGVwS)c%HhJzt~L$#SD1CfSBwQAWz2&!ahcfnuQ< zF$LfPgc3mJQMda&c{OZPDE~-L&~{>sq=hwYCMN<+-wRRn3j94meA(S!X2yg5mkPSR zi_gmK_>?8Rx20F6XXKmBtGf}6*)#U=R+)q%M%>KOQGz zSwEee8Lh-;dC-pq`CFk444v#Kh*fUII@-Zz6US&J{n58u5U3$|oSSA6s7=%E0`If% zqylOI?@Nfe3Gf|iNH-mUf)YJjZITP(IxI#4tNz1nGas5Rg{D?ziBTywW*l7^E4$^R zcm=XgK96@Va`leFpRp$qr`~B;rDFopvtMAFO;dpJpeXM~gQ+dtGz^~ z`2(MyB8X+QEdSP#OTy+ktS`}NL7L+>!cB41|0xbu&&)U@N>4yKG)Oucdms@p#HR0W`?q$^Iyf*ab9zv?$F&8t&ue zi+Qk0TmIkJxQ0+@(adF|BrN0fo~3Ye7|DWDj%z?5AHfxM@|AmjK%8P*ZQdAy84#UE z%xXHYn&Penm=;jV=53rUwawR_m*93!fX!2&5vE{LZ?w(YaxThRuH4YT`lKz!vlgbn zesBBfR-NtI{pYN=C^*8go!YK*$6*1fOs1XJb--cMN_QV%@>jsMzVC!>X#(s{K;z4M z(ERt)-3zqtJGK9u?e8?BPhi5pnB-dU@Fwd)^eRLnLhT^b4m57l15n-j9%u11Z8E6x zS*LK=3b6Iu10*bOwlcnHX7?8Ijy*EOwYquxd+wr0p*Q~uA=15oirb%Kin^@r9K-vv zHU~(CO)RiYHoZ190*?se2@XfqNFAOW&e*eR6xw^n{@#o|tIx>TNxF*E#zX?FR!gop zw9wep108xNDK#VG8{2ni0la|!cpN?#L0u_dVGo^1UyP@I&c5f7U;=Iu+y!0vm{YlY zUA{T~;6G!|v3Zd4OWY8Niu8rUc=GNL=WXHko=`Ajmi zE9MK>62W`*c%@lSbw6DGO)&oD!1un3IX;QUP!S03G$wV~COGbnb7Ve2G1XC+p?Bop zq<2au^b+0&NX?jHGh`gB>7)2M&L!>DQ3m$l{*(_oC9qu?JAOnnJPn)EmY1D&$Heuy z_)D*@vAsGE?I2<7rVjiSc*%9K*s%j7-LWLjVO>N0Gt*HUN4B3Y(Rp2()PWCfU?N~; zvuzVx+zd|f;Lo0m1@{Ey%GA?IhsJ$93DM>XghXkN9z7^Qj~BYx9LEHIGlQETUnX@> zUrfLRAbvT`4@~G$W^52=E}JTQ`u9VROkGclCu%w(gb7g@^9?6WI+Xbi0ZdxQeTbo^ z7c&t#;j!scfn)o`k@=Wo<_}8s510X60&?jz3sTZ?dUcvY3PHdqjV3`zq@eEr=$TON z_p!gnjbc5jM#>Hg*7$7d@2@~-F!C|El|72f9#hx)Ga{9vfF_`LbJyr7bQV%(uX6g=2&dC8MK~DxHWTNPbMGY?}^dY0`^!?Qdjf-gI~~hr}}ONzqsa>gI;n8 zG>|^#JYIJ&ESsUM{Ndm!SRoFmz4E!3R`#6<=}SErL;g5M&$eAY&jlkgo@H<+tPc-( z=%C$+{{E(>H^s3k?6j$4jsx4e=#RgWzmmO;_!ndG*b$ym^sR3BD$Y8x@hw3x(uw;$ z;u{}<`zbo5cnm6Y3+(vyp^7-$@Y4#82Qm;O1P8pgUB&1f(I5ft=EXlyvSejUzw z4tgE43>b-Gm))r7%}HI7dqj&nibi1e4FaWb4WSthej0N~j$5nDXSb+jnW{IVKV&z> z$uyOo37L}yS_bfnI|8Ncf{q;KG<>GEpw)@RM(na<{Rfl;vm^F$>U8*0RoohowBSVG zd!plg6EqOZynjbJ7e>Li1mcuD1c&Chj6=1_N*=bXZSnX%3Epi{Mj?NR z-c}T+x}4%0ow~hPR=V)L8Q;V@Z0R|X+SRl{P1mdGHZ}c0O?%aJubQ^0sXmI+=~nNL zsOd>HeP2yoYTBiyZ>#BdYTBo!MwQ-n_5KYtb*kxRH8rSsv1+LT6a)H(xdnV{b9Q19ofX_}f^)HGX7tJHLnnx?2}nVM#*X`z}Xt7)E^rmN{vHJzuX z1!`KNrui(@-g8f;ci(3lWqi|cK`g%Fp}^VOUFg_{`fc6v!T$2&n18omJgl-V!v_?T_KrJ9HQn+dV163YB_E>O6G5`TD@U_w z3)={2k-J&i*Z;L=CW~$IAq~00nelOrKI7}|HaVkb`JG|hF>-aoTCI2``fD8a z4-j(-U-+(FM)&e~@gDq8 zWbCiG#+o31jGdr$i2aAzm>0|l-�M^)q(Y_Bb7n_)-sh?xW$sdAkFFX&OSkP;)6h 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 diff --git a/payloads/PS2_EMU/SearchOffset/main.c b/payloads/PS2_EMU/SearchOffset/main.c deleted file mode 100644 index 16efd32b..00000000 --- a/payloads/PS2_EMU/SearchOffset/main.c +++ /dev/null @@ -1,711 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include - -#define SWAP16(x) ((((u16)(x))>>8) | ((x) << 8)) - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -u64 reverse64(u64 x) { - - x = (x & 0x00000000FFFFFFFFULL) << 32 | (x & 0xFFFFFFFF00000000ULL) >> 32; - x = (x & 0x0000FFFF0000FFFFULL) << 16 | (x & 0xFFFF0000FFFF0000ULL) >> 16; - x = (x & 0x00FF00FF00FF00FFULL) << 8 | (x & 0xFF00FF00FF00FF00ULL) >> 8 ; - return x; -} - -int main() -{ - char ELF[64]; - char str[255]; - FILE *elf; - FILE *sym; - - printf("Searching offsets...\n"); - - DIR *d; - struct dirent* ent = NULL; - - sym = fopen("symbols.h", "w"); - - fputs("#ifndef __PS2EMU_SYMBOLS_H_S__\n", sym); - fputs("#define __PS2EMU_SYMBOLS_H_S__\n\n", sym); - -// ps2_emu - - fputs("#ifdef PS2HWEMU\n\n", sym); - - fputs("\t#define DATA_TOC_OFFSET -0x7358\n", sym); - fputs("\t#define DATA_SUBTOC_OFFSET 0x20\n", sym); - fputs("\t#define LPAR_SUBTOC_OFFSET 0x18\n", sym); - fputs("\t#define FILESZ_TOC_OFFSET -0x63E0\n", sym); - - fputs("\n", sym); - - d = opendir("ps2emu"); - if(d== NULL) { - printf("Directory ps2emu not found\n"); - return 0; - } - while ((ent = readdir(d)) != NULL) { - if(strcmp(ent->d_name, ".") == 0) continue; - if(strcmp(ent->d_name, "..") == 0) continue; - - sprintf(ELF, "ps2emu/%s/ps2_emu.elf", ent->d_name); - - elf=fopen(ELF, "rb"); - if(elf==NULL) { - printf("Error : cannot open the %s\n", ELF); - return 0; - } - - fseek (elf , 0 , SEEK_END); - u32 elf_size = ftell (elf); - fseek(elf, 0, SEEK_SET); - - char *elf_data = (char *) malloc(elf_size); - if(elf_data == NULL) { - printf("Error : cannot malloc %s", ELF); - free(elf_data); - fclose(elf); - return 0; - } - - fread(elf_data, elf_size, 1, elf); - fclose(elf); - - sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); - - u64 DISC_SIZE_OFFSET=0; - u64 DISC_TYPE_OFFSET=0; - - u64 TOC=0; - - u64 cdvd_send_atapi_command_symbol=0; - - u64 ufs_open_symbol=0; - u64 ufs_close_symbol=0; - u64 ufs_read_symbol=0; - u64 ufs_write_symbol=0; - u64 ufs_fstat_symbol=0; - - u64 zeroalloc_symbol=0; - u64 malloc_symbol=0; - u64 free_symbol=0; - - u64 memcpy_symbol=0; - u64 memset_symbol=0; - u64 strcpy_symbol=0; - u64 strcat_symbol=0; - u64 strlen_symbol=0; - - u64 vuart_read_symbol=0; - u64 vuart_write_symbol=0; - - u64 ps2_disc_auth_symbol=0; - u64 ps2_disc_auth_caller_symbol=0; - - u64 overwritten_symbol=0; - - u8 DISC_SIZE_OFFSET_FLAG[0x10] = {0xE8, 0xFD, 0x00, 0x20, 0x83, 0xA7, 0x00, 0x00, 0x39, 0x5D, 0x00, 0x01, 0x91, 0x56, 0x00, 0x00}; - u8 DISC_TYPE_OFFSET_FLAG[0x10] = {0x38, 0x00, 0x00, 0x2B, 0x9B, 0x81, 0x00, 0x93, 0x7B, 0xEB, 0x46, 0x02, 0x9A, 0xE1, 0x00, 0x94}; - - u8 cdvd_send_atapi_command_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x51, 0x7D, 0x68, 0x02, 0xA6, 0xFB, 0x61, 0x00, 0x88, 0x7C, 0x9B, 0x23, 0x78}; - - u8 ufs_open_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x31, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x01, 0x00, 0x90, 0x7C, 0x98, 0x23, 0x78}; - u8 ufs_close_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x6B, 0x1B, 0x78}; - u8 ufs_read_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x08, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0x7C, 0x8A, 0x23, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x6B, 0x1B, 0x78}; //+8 - u8 ufs_write_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x01, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0x7C, 0x8A, 0x23, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x6B, 0x1B, 0x78}; //+8 - u8 ufs_fstat_symbol_FLAG[0x10] = {0x7C, 0x88, 0x23, 0x78, 0xE9, 0x22, 0x9C, 0x18, 0x7C, 0x6A, 0x1B, 0x78, 0x38, 0x80, 0x00, 0x40}; - - u8 zeroalloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xA1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0xA0, 0x7C, 0x7D, 0x1B, 0x78, 0x4B, 0xFF, 0xFF, 0x01, 0x7C, 0x7C, 0x1B, 0x78}; - u8 malloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x7F, 0x1B, 0x78, 0xE9, 0x22, 0xCD, 0x40, 0xE8, 0x09, 0x00, 0x00, 0x2F, 0xA0, 0x00, 0x00}; - u8 free_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x91, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x48, 0x00, 0x1B, 0xD5}; - - u8 memcpy_symbol_FLAG[0x10] = {0x7F, 0xA3, 0x20, 0x00, 0x7C, 0x8A, 0x23, 0x78, 0x4D, 0x9E, 0x00, 0x20, 0x7C, 0x24, 0x18, 0x40}; - u8 memset_symbol_FLAG[0x10] = {0x2B, 0xA5, 0x00, 0x07, 0x78, 0x84, 0x06, 0x20, 0x7C, 0x69, 0x1B, 0x78, 0x7C, 0xC3, 0x2A, 0x14}; - u8 strcpy_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x04, 0x00, 0x00, 0x38, 0x84, 0x00, 0x01, 0x2F, 0xA0, 0x00, 0x00}; - u8 strcat_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x03, 0x00, 0x00, 0x48, 0x00, 0x00, 0x08, 0x8C, 0x09, 0x00, 0x01}; - u8 strlen_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x88, 0x09, 0x00, 0x00, 0x48, 0x00, 0x00, 0x08, 0x8C, 0x03, 0x00, 0x01}; - - u8 vuart_read_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x01, 0x80, 0x03, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x83, 0x23, 0x78}; //+8 - u8 vuart_write_symbol_FLAG[0x20] = {0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x83, 0x23, 0x78}; //+8 - - u8 ps2_disc_auth_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFE, 0xE1, 0x7C, 0xE8, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0xE8, 0x7C, 0x79, 0x1B, 0x78}; - u8 ps2_disc_auth_caller_symbol_FLAG[0x10] = {0x38, 0xC0, 0xFF, 0xFF, 0x7C, 0xE8, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x81, 0x78, 0xC5, 0x00, 0x20}; - - u8 overwritten_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xE8, 0x62, 0x8D, 0x68, 0xF8, 0x21, 0xFE, 0xE1, 0xFA, 0xA1, 0x00, 0xC8}; - - u64 n, i; - - for(n=0; n < elf_size ; n++) { - - u64 value = 0; - - memcpy(&value, &elf_data[n], 8); - value = reverse64(value); - - if(TOC==0) - if( 0 < value && value < elf_size) { - for(i=0; i<=30; i++) { - if(!memcmp((char *) &elf_data[n], (char *) &elf_data[n+0x18*i], 8)) - { - if(i==30) TOC = value; - } else break; - } - } - - if(DISC_SIZE_OFFSET==0) - if(!memcmp((char *) &elf_data[n], (char *) DISC_SIZE_OFFSET_FLAG, 0x10)) { - DISC_SIZE_OFFSET = n - 0x10000; - } - if(DISC_TYPE_OFFSET==0) - if(!memcmp((char *) &elf_data[n], (char *) DISC_TYPE_OFFSET_FLAG, 0x10)) { - DISC_TYPE_OFFSET = n - 0x10000; - } - if(cdvd_send_atapi_command_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_atapi_command_symbol_FLAG, 0x10)) { - cdvd_send_atapi_command_symbol = n - 0x10000; - } - if(ufs_open_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { - ufs_open_symbol = n - 0x10000; - } - if(ufs_close_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x10)) { - ufs_close_symbol = n - 0x10000; - } - if(ufs_read_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x20)) { - ufs_read_symbol = n + 8 - 0x10000; - } - if(ufs_write_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { - ufs_write_symbol = n + 8 - 0x10000; - } - if(ufs_fstat_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x10)) { - ufs_fstat_symbol = n - 0x10000; - } - if(zeroalloc_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) zeroalloc_symbol_FLAG, 0x20)) { - zeroalloc_symbol = n - 0x10000; - } - if(malloc_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) malloc_symbol_FLAG, 0x20)) { - malloc_symbol = n - 0x10000; - } - if(free_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) free_symbol_FLAG, 0x10)) { - free_symbol = n - 0x10000; - } - if(memcpy_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x10)) { - memcpy_symbol = n - 0x10000; - } - if(memset_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x10)) { - memset_symbol = n - 0x10000; - } - if(strcpy_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { - strcpy_symbol = n - 0x10000; - } - if(strcat_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { - strcat_symbol = n - 0x10000; - } - if(strlen_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { - strlen_symbol = n - 0x10000; - } - if(vuart_read_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) vuart_read_symbol_FLAG, 0x20)) { - vuart_read_symbol = n + 8 - 0x10000; - } - if(vuart_write_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) vuart_write_symbol_FLAG, 0x20)) { - vuart_write_symbol = n + 8 - 0x10000; - } - if(ps2_disc_auth_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_symbol_FLAG, 0x10)) { - ps2_disc_auth_symbol = n - 0x10000; - } - if(ps2_disc_auth_caller_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_caller_symbol_FLAG, 0x10)) { - ps2_disc_auth_caller_symbol = n - 0x10000; - } - if(overwritten_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) overwritten_symbol_FLAG, 0x10)) { - overwritten_symbol = n - 0x10000; - } - - if(TOC) - if(DISC_SIZE_OFFSET) - if(DISC_TYPE_OFFSET) - if(cdvd_send_atapi_command_symbol) - if(ufs_open_symbol) - if(ufs_close_symbol) - if(ufs_read_symbol) - if(ufs_write_symbol) - if(ufs_fstat_symbol) - if(zeroalloc_symbol) - if(malloc_symbol) - if(free_symbol) - if(memcpy_symbol) - if(memset_symbol) - if(strcpy_symbol) - if(strcat_symbol) - if(strlen_symbol) - if(vuart_read_symbol) - if(vuart_write_symbol) - if(ps2_disc_auth_symbol) - if(ps2_disc_auth_caller_symbol) - if(overwritten_symbol) - break; - - } - - sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); - sprintf(str, "\t\t#define DISC_SIZE_OFFSET 0x%llX\n", DISC_SIZE_OFFSET); fputs(str, sym); - sprintf(str, "\t\t#define DISC_TYPE_OFFSET 0x%llX\n", DISC_TYPE_OFFSET); fputs(str, sym); - sprintf(str, "\t\t#define cdvd_send_atapi_command_symbol 0x%llX\n", cdvd_send_atapi_command_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define zeroalloc_symbol 0x%llX\n", zeroalloc_symbol); fputs(str, sym); - sprintf(str, "\t\t#define malloc_symbol 0x%llX\n", malloc_symbol); fputs(str, sym); - sprintf(str, "\t\t#define free_symbol 0x%llX\n", free_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); - sprintf(str, "\t\t#define vuart_read_symbol 0x%llX\n", vuart_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define vuart_write_symbol 0x%llX\n", vuart_write_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ps2_disc_auth_symbol 0x%llX\n", ps2_disc_auth_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ps2_disc_auth_caller_symbol 0x%llX\n", ps2_disc_auth_caller_symbol); fputs(str, sym); - sprintf(str, "\t\t#define overwritten_symbol 0x%llX\n", overwritten_symbol); fputs(str, sym); - - fputs("\t\t#define stage1_addr overwritten_symbol\n", sym); - fputs("\t\t#define stage2_addr 0x021f0000\n", sym); - - fputs("\t#endif /* FIRMWARE */\n\n", sym); - - free(elf_data); - } - closedir(d); - - fputs("#endif /* PS2HWEMU */\n\n", sym); - -// ps2_gxemu - - fputs("#ifdef PS2GXEMU\n\n", sym); - fputs("\t#define DATA_TOC_OFFSET -0x5B00\n", sym); - fputs("\t#define LPAR_TOC_OFFSET -0x5BC8\n", sym); - fputs("\t#define FILESZ_TOC_OFFSET -0xE68\n\n", sym); - - d = opendir("ps2emu"); - if(d== NULL) { - printf("Directory ps2emu not found\n"); - return 0; - } - while ((ent = readdir(d)) != NULL) { - if(strcmp(ent->d_name, ".") == 0) continue; - if(strcmp(ent->d_name, "..") == 0) continue; - - sprintf(ELF, "ps2emu/%s/ps2_gxemu.elf", ent->d_name); - - elf=fopen(ELF, "rb"); - if(elf==NULL) { - printf("Error : cannot open the %s\n", ELF); - return 0; - } - - fseek (elf , 0 , SEEK_END); - u32 elf_size = ftell (elf); - fseek(elf, 0, SEEK_SET); - - char *elf_data = (char *) malloc(elf_size); - if(elf_data == NULL) { - printf("Error : cannot malloc %s", ELF); - free(elf_data); - fclose(elf); - return 0; - } - - fread(elf_data, elf_size, 1, elf); - fclose(elf); - - sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); - - u64 TOC=0; - u64 cdvd_read_symbol=0; - u64 cdvd_send_atapi_command_symbol=0; - u64 cdvd_send_device_command_symbol=0; - u64 ufs_open_symbol=0; - u64 ufs_close_symbol=0; - u64 ufs_read_symbol=0; - u64 ufs_write_symbol=0; - u64 ufs_fstat_symbol=0; - u64 zeroalloc_symbol=0; - u64 malloc_symbol=0; - u64 free_symbol=0; - u64 memcpy_symbol=0; - u64 memset_symbol=0; - u64 strcpy_symbol=0; - u64 strcat_symbol=0; - u64 strlen_symbol=0; - u64 vuart_read_symbol=0; - u64 vuart_write_symbol=0; - u64 ps2_disc_auth_symbol=0; - u64 ps2_disc_auth_caller_symbol=0; - u64 overwritten_symbol=0; - u64 stage2_addr=0; - - u8 cdvd_read_symbol_FLAG[0x10] = {0x2B, 0x84, 0xFF, 0xFF, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x71, 0xFB, 0xA1, 0x00, 0x78}; - u8 cdvd_send_atapi_command_symbol_FLAG[0x20] = {0x2C, 0x23, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x81, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0xBF, 0x2B, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x41, 0xC2, 0x01, 0x6C, 0xE9, 0x62, 0xA4, 0xA8}; - u8 cdvd_send_device_command_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x64, 0x1B, 0x78}; - u8 ufs_open_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x41, 0xFA, 0xC1, 0x00, 0x70, 0x7C, 0x96, 0x23, 0x78}; - u8 ufs_close_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x7F, 0x1B, 0x78, 0xFB, 0xC1, 0x00, 0x70, 0xF8, 0x01, 0x00, 0x90, 0x7D, 0x60, 0x00, 0xA6, 0x79, 0x60, 0x80, 0x42}; - u8 ufs_read_symbol_FLAG[0x10] = {0x7D, 0x20, 0x01, 0x64, 0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6}; // +8 - u8 ufs_write_symbol_FLAG[0x20] = {0x38, 0x21, 0x00, 0x90, 0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0x7C, 0xDC, 0x33, 0x78, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0xBD, 0x2B, 0x78}; // +8 - u8 ufs_fstat_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xC1, 0x00, 0x70, 0x7C, 0x7E, 0x1B, 0x78, 0xFB, 0xE1, 0x00, 0x78, 0x7C, 0x9F, 0x23, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7D, 0x60, 0x00, 0xA6}; - u8 zeroalloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xA1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0xA0, 0x7C, 0x7D, 0x1B, 0x78, 0x4B, 0xFF, 0xFF, 0x89, 0x7C, 0x7C, 0x1B, 0x78}; - u8 malloc_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xE1, 0x00, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x7C, 0x7F, 0x1B, 0x78, 0xE9, 0x62, 0xE0, 0xB0, 0xE8, 0x0B, 0x00, 0x00, 0x2F, 0xA0, 0x00, 0x00}; - u8 free_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x91, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x48, 0x00, 0x32, 0x51}; - u8 memcpy_symbol_FLAG[0x20] = {0x2C, 0x25, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x82, 0x00, 0x0C, 0x2F, 0xA3, 0x00, 0x00, 0x41, 0xDE, 0x00, 0x48, 0x38, 0x05, 0xFF, 0xFF}; - u8 memset_symbol_FLAG[0x20] = {0x2C, 0x25, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x82, 0x00, 0x0C, 0x2F, 0xA3, 0x00, 0x00, 0x41, 0xDE, 0x00, 0x40, 0x38, 0x05, 0xFF, 0xFF}; - u8 strcpy_symbol_FLAG[0x10] = {0x88, 0x04, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0xA0, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x18}; - u8 strcat_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x10}; - u8 strlen_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x39, 0x20, 0x00, 0x00, 0x39, 0x63, 0x00, 0x01, 0x2F, 0x80, 0x00, 0x00}; - u8 vuart_read_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x81, 0xFB, 0xE1, 0x00, 0x78, 0x39, 0x60, 0x00, 0xA2}; - u8 vuart_write_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x71, 0xFB, 0xA1, 0x00, 0x78, 0x7C, 0x7D, 0x1B, 0x78}; - u8 ps2_disc_auth_symbol_FLAG[0x10] = {0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xA1, 0x00, 0x98, 0xEB, 0xA2, 0xA6, 0x28}; - u8 ps2_disc_auth_caller_symbol_FLAG[0x10] = {0x7C, 0x69, 0x18, 0xF8, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0x7D, 0x2B, 0xFE, 0x70}; - u8 overwritten_symbol_FLAG[0x20] = {0xF8, 0x21, 0xFF, 0x81, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0xC1, 0x00, 0x70, 0x7C, 0x7E, 0x1B, 0x78, 0xF8, 0x01, 0x00, 0x90, 0x80, 0x03, 0x00, 0x04, 0xFB, 0xE1, 0x00, 0x78, 0x2F, 0x80, 0x00, 0x00}; - - memcpy(&TOC, &elf_data[0x101C0], 8); - TOC = reverse64(TOC); - - memcpy(&stage2_addr, &elf_data[0x68], 8); - stage2_addr = reverse64(stage2_addr); - - u64 n; - - for(n=0; n < elf_size ; n++) { - - if(cdvd_read_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) cdvd_read_symbol_FLAG, 0x10)) { - cdvd_read_symbol = n - 0x10000; - } - if(cdvd_send_atapi_command_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_atapi_command_symbol_FLAG, 0x20)) { - cdvd_send_atapi_command_symbol = n - 0x10000; - } - if(cdvd_send_device_command_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) cdvd_send_device_command_symbol_FLAG, 0x10)) { - cdvd_send_device_command_symbol = n - 0x10000; - } - if(ufs_open_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { - ufs_open_symbol = n - 0x10000; - } - if(ufs_close_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x20)) { - ufs_close_symbol = n - 0x10000; - } - if(ufs_read_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x10)) { - ufs_read_symbol = n + 8 - 0x10000; - } - if(ufs_write_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { - ufs_write_symbol = n + 8 - 0x10000; - } - if(ufs_fstat_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x20)) { - ufs_fstat_symbol = n - 0x10000; - } - if(zeroalloc_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) zeroalloc_symbol_FLAG, 0x20)) { - zeroalloc_symbol = n - 0x10000; - } - if(malloc_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) malloc_symbol_FLAG, 0x20)) { - malloc_symbol = n - 0x10000; - } - if(free_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) free_symbol_FLAG, 0x10)) { - free_symbol = n - 0x10000; - } - if(memcpy_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x20)) { - memcpy_symbol = n - 0x10000; - } - if(memset_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x20)) { - memset_symbol = n - 0x10000; - } - if(strcpy_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { - strcpy_symbol = n - 0x10000; - } - if(strcat_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { - strcat_symbol = n - 0x10000; - } - if(strlen_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { - strlen_symbol = n - 0x10000; - } - if(vuart_read_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) vuart_read_symbol_FLAG, 0x10)) { - vuart_read_symbol = n - 0x10000; - } - if(vuart_write_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) vuart_write_symbol_FLAG, 0x10)) { - vuart_write_symbol = n - 0x10000; - } - if(ps2_disc_auth_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_symbol_FLAG, 0x10)) { - ps2_disc_auth_symbol = n - 0x10000; - } - if(ps2_disc_auth_caller_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) ps2_disc_auth_caller_symbol_FLAG, 0x10)) { - ps2_disc_auth_caller_symbol = n - 0x10000; - } - if(overwritten_symbol==0) - if(!memcmp((char *) &elf_data[n], (char *) overwritten_symbol_FLAG, 0x20)) { - overwritten_symbol = n - 0x10000; - } - - if(cdvd_read_symbol) - if(cdvd_send_atapi_command_symbol) - if(cdvd_send_device_command_symbol) - if(ufs_open_symbol) - if(ufs_close_symbol) - if(ufs_read_symbol) - if(ufs_write_symbol) - if(ufs_fstat_symbol) - if(zeroalloc_symbol) - if(malloc_symbol) - if(free_symbol) - if(memcpy_symbol) - if(memset_symbol) - if(strcpy_symbol) - if(strcat_symbol) - if(strlen_symbol) - if(vuart_read_symbol) - if(vuart_write_symbol) - if(ps2_disc_auth_symbol) - if(ps2_disc_auth_caller_symbol) - if(overwritten_symbol) - break; - - } - - sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); - sprintf(str, "\t\t#define cdvd_read_symbol 0x%llX\n", cdvd_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define cdvd_send_atapi_command_symbol 0x%llX\n", cdvd_send_atapi_command_symbol); fputs(str, sym); - sprintf(str, "\t\t#define cdvd_send_device_command_symbol 0x%llX\n", cdvd_send_device_command_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define zeroalloc_symbol 0x%llX\n", zeroalloc_symbol); fputs(str, sym); - sprintf(str, "\t\t#define malloc_symbol 0x%llX\n", malloc_symbol); fputs(str, sym); - sprintf(str, "\t\t#define free_symbol 0x%llX\n", free_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); - sprintf(str, "\t\t#define vuart_read_symbol 0x%llX\n", vuart_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define vuart_write_symbol 0x%llX\n", vuart_write_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ps2_disc_auth_symbol 0x%llX\n", ps2_disc_auth_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ps2_disc_auth_caller_symbol 0x%llX\n", ps2_disc_auth_caller_symbol); fputs(str, sym); - sprintf(str, "\t\t#define overwritten_symbol 0x%llX\n", overwritten_symbol); fputs(str, sym); - fputs("\t\t#define stage1_addr overwritten_symbol\n", sym); - sprintf(str, "\t\t#define stage2_addr 0x%llX\n", stage2_addr); fputs(str, sym); - - fputs("\t#endif /* FIRMWARE */\n\n", sym); - - } - closedir(d); - - fputs("#endif /* PS2GXEMU */\n\n", sym); - -//ps2netemu - fputs("#ifdef PS2NETEMU\n\n", sym); - - fputs("\t#define EXTENDED_DATA (0x821000+0x2953478)\n\n", sym); - - d = opendir("ps2emu"); - if(d== NULL) { - printf("Directory ps2emu not found\n"); - return 0; - } - while ((ent = readdir(d)) != NULL) { - if(strcmp(ent->d_name, ".") == 0) continue; - if(strcmp(ent->d_name, "..") == 0) continue; - - sprintf(ELF, "ps2emu/%s/ps2_netemu.elf", ent->d_name); - - elf=fopen(ELF, "rb"); - if(elf==NULL) { - printf("Error : cannot open the %s\n", ELF); - return 0; - } - - fseek (elf , 0 , SEEK_END); - u32 elf_size = ftell (elf); - fseek(elf, 0, SEEK_SET); - - char *elf_data = (char *) malloc(elf_size); - if(elf_data == NULL) { - printf("Error : cannot malloc %s", ELF); - free(elf_data); - fclose(elf); - return 0; - } - - fread(elf_data, elf_size, 1, elf); - fclose(elf); - - sprintf(str, "\t#ifdef FIRMWARE_%s\n", ent->d_name); fputs(str, sym); - - u64 TOC=0; - u64 cdvd_read_symbol=0; - u64 ufs_open_symbol=0; - u64 ufs_close_symbol=0; - u64 ufs_read_symbol=0; - u64 ufs_write_symbol=0; - u64 ufs_fstat_symbol=0; - u64 memcpy_symbol=0; - u64 memset_symbol=0; - u64 strcpy_symbol=0; - u64 strcat_symbol=0; - u64 strlen_symbol=0; - - u8 cdvd_read_symbol_FLAG[0x10] = {0x2F, 0x86, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFE, 0xF1, 0xF9, 0xC1, 0x00, 0x80}; - - u8 ufs_open_symbol_FLAG[0x10] = {0x7D, 0x80, 0x00, 0x26, 0xF8, 0x21, 0xFF, 0x31, 0xFB, 0x01, 0x00, 0x90, 0xFB, 0x41, 0x00, 0xA0}; - u8 ufs_close_symbol_FLAG[0x20] = {0x38, 0x60, 0xFF, 0xFB, 0x4B, 0xFF, 0xFF, 0x30, 0xF8, 0x21, 0xFF, 0x71, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x81, 0x00, 0x70, 0xFB, 0xC1, 0x00, 0x80, 0xFB, 0xE1, 0x00, 0x88, 0x7C, 0x7E, 0x1B, 0x78}; //+8 - u8 ufs_read_symbol_FLAG[0x20] = {0x4E, 0x80, 0x00, 0x20, 0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0x78, 0xFB, 0x41, 0x00, 0x80, 0xFB, 0x61, 0x00, 0x88, 0xFB, 0x81, 0x00, 0x90, 0xFB, 0xC1, 0x00, 0xA0}; //+4 - u8 ufs_write_symbol_FLAG[0x20] = {0x4B, 0xFF, 0xFE, 0xAC, 0xF8, 0x21, 0xFF, 0x51, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x21, 0x00, 0x78, 0xFB, 0x41, 0x00, 0x80, 0xFB, 0x61, 0x00, 0x88, 0xFB, 0x81, 0x00, 0x90, 0xFB, 0xC1, 0x00, 0xA0}; //+4 - u8 ufs_fstat_symbol_FLAG[0x20] = {0x4B, 0xFF, 0xFF, 0x28, 0xF8, 0x21, 0xFF, 0x61, 0x7C, 0x08, 0x02, 0xA6, 0xFB, 0x61, 0x00, 0x78, 0xFB, 0x81, 0x00, 0x80, 0xFB, 0xC1, 0x00, 0x90, 0xFB, 0xE1, 0x00, 0x98, 0x7C, 0x9C, 0x23, 0x78}; //+4 - - u8 memcpy_symbol_FLAG[0x20] = {0x2F, 0x85, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x9E, 0x00, 0x2C, 0x2F, 0xA3, 0x00, 0x00, 0x78, 0xA5, 0x00, 0x20, 0x7C, 0x69, 0x1B, 0x78}; - u8 memset_symbol_FLAG[0x20] = {0x2F, 0x85, 0x00, 0x00, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x21, 0xFF, 0x91, 0xF8, 0x01, 0x00, 0x80, 0x41, 0x9E, 0x00, 0x28, 0x2F, 0xA3, 0x00, 0x00, 0x78, 0xA5, 0x00, 0x20, 0x7C, 0x69, 0x1B, 0x78}; - - u8 strcpy_symbol_FLAG[0x10] = {0x88, 0x04, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x1C}; - u8 strcat_symbol_FLAG[0x10] = {0x88, 0x03, 0x00, 0x00, 0x7C, 0x69, 0x1B, 0x78, 0x2F, 0x80, 0x00, 0x00, 0x41, 0x9E, 0x00, 0x14}; - u8 strlen_symbol_FLAG[0x10] = {0x7C, 0x69, 0x1B, 0x78, 0x38, 0x60, 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x2F, 0x80, 0x00, 0x00}; - - memcpy(&TOC, &elf_data[0x13008], 8); - TOC = reverse64(TOC); - - u64 n; - - for(n=0; n < elf_size ; n++) { - - if(cdvd_read_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) cdvd_read_symbol_FLAG, 0x10)) { - cdvd_read_symbol = n - 0x10000; - } - if(ufs_open_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_open_symbol_FLAG, 0x10)) { - ufs_open_symbol = n - 0x10000; - } - if(ufs_close_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_close_symbol_FLAG, 0x20)) { - ufs_close_symbol = n + 8 - 0x10000; - } - if(ufs_read_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_read_symbol_FLAG, 0x20)) { - ufs_read_symbol = n + 4 - 0x10000; - } - if(ufs_write_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_write_symbol_FLAG, 0x20)) { - ufs_write_symbol = n + 4 - 0x10000; - } - if(ufs_fstat_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) ufs_fstat_symbol_FLAG, 0x20)) { - ufs_fstat_symbol = n + 4 - 0x10000; - } - if(memcpy_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) memcpy_symbol_FLAG, 0x20)) { - memcpy_symbol = n - 0x10000; - } - if(memset_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) memset_symbol_FLAG, 0x20)) { - memset_symbol = n - 0x10000; - } - if(strcpy_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) strcpy_symbol_FLAG, 0x10)) { - strcpy_symbol = n - 0x10000; - } - if(strcat_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) strcat_symbol_FLAG, 0x10)) { - strcat_symbol = n - 0x10000; - } - if(strlen_symbol == 0) - if(!memcmp((char *) &elf_data[n], (char *) strlen_symbol_FLAG, 0x10)) { - strlen_symbol = n - 0x10000; - } - - if(cdvd_read_symbol) - if(ufs_open_symbol) - if(ufs_close_symbol) - if(ufs_read_symbol) - if(ufs_write_symbol) - if(ufs_fstat_symbol) - if(memcpy_symbol) - if(memset_symbol) - if(strcpy_symbol) - if(strcat_symbol) - if(strlen_symbol) - break; - - - } - - sprintf(str, "\t\t#define TOC 0x%llX\n", TOC); fputs(str, sym); - sprintf(str, "\t\t#define cdvd_read_symbol 0x%llX\n", cdvd_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_open_symbol 0x%llX\n", ufs_open_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_close_symbol 0x%llX\n", ufs_close_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_read_symbol 0x%llX\n", ufs_read_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_write_symbol 0x%llX\n", ufs_write_symbol); fputs(str, sym); - sprintf(str, "\t\t#define ufs_fstat_symbol 0x%llX\n", ufs_fstat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memcpy_symbol 0x%llX\n", memcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define memset_symbol 0x%llX\n", memset_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcpy_symbol 0x%llX\n", strcpy_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strcat_symbol 0x%llX\n", strcat_symbol); fputs(str, sym); - sprintf(str, "\t\t#define strlen_symbol 0x%llX\n", strlen_symbol); fputs(str, sym); - fputs("\t\t#define decrypt_symbol cdvd_read_symbol\n", sym); - fputs("\t#endif /* FIRMWARE */\n\n", sym); - - free(elf_data); - } - closedir(d); - - fputs("#endif /* PS2NETEMU */\n\n", sym); - - fputs("\n#endif /* __PS2EMU_SYMBOLS_H_S__ */\n", sym); - fclose(sym); - - printf("Done !\n"); - - return 0; -} \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/device.h b/payloads/PS2_EMU/lv1/include/lv1/device.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/device.h rename to payloads/PS2_EMU/lv1/include/lv1/device.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/dispmgr.h b/payloads/PS2_EMU/lv1/include/lv1/dispmgr.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/dispmgr.h rename to payloads/PS2_EMU/lv1/include/lv1/dispmgr.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/gelic.h b/payloads/PS2_EMU/lv1/include/lv1/gelic.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/gelic.h rename to payloads/PS2_EMU/lv1/include/lv1/gelic.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/gelic_wireless.h b/payloads/PS2_EMU/lv1/include/lv1/gelic_wireless.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/gelic_wireless.h rename to payloads/PS2_EMU/lv1/include/lv1/gelic_wireless.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/inttypes.h b/payloads/PS2_EMU/lv1/include/lv1/inttypes.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/inttypes.h rename to payloads/PS2_EMU/lv1/include/lv1/inttypes.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/lv1.h b/payloads/PS2_EMU/lv1/include/lv1/lv1.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/lv1.h rename to payloads/PS2_EMU/lv1/include/lv1/lv1.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/lv1call.h b/payloads/PS2_EMU/lv1/include/lv1/lv1call.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/lv1call.h rename to payloads/PS2_EMU/lv1/include/lv1/lv1call.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/mm.h b/payloads/PS2_EMU/lv1/include/lv1/mm.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/mm.h rename to payloads/PS2_EMU/lv1/include/lv1/mm.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/patch.h b/payloads/PS2_EMU/lv1/include/lv1/patch.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/patch.h rename to payloads/PS2_EMU/lv1/include/lv1/patch.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/ss.h b/payloads/PS2_EMU/lv1/include/lv1/ss.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/ss.h rename to payloads/PS2_EMU/lv1/include/lv1/ss.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/stor.h b/payloads/PS2_EMU/lv1/include/lv1/stor.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/stor.h rename to payloads/PS2_EMU/lv1/include/lv1/stor.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/vas.h b/payloads/PS2_EMU/lv1/include/lv1/vas.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/vas.h rename to payloads/PS2_EMU/lv1/include/lv1/vas.h diff --git a/payloads/PS2_EMU/SRC/lv1/include/lv1/vuart.h b/payloads/PS2_EMU/lv1/include/lv1/vuart.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/include/lv1/vuart.h rename to payloads/PS2_EMU/lv1/include/lv1/vuart.h diff --git a/payloads/PS2_EMU/SRC/lv1/src/assembly.h b/payloads/PS2_EMU/lv1/src/assembly.h similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/assembly.h rename to payloads/PS2_EMU/lv1/src/assembly.h diff --git a/payloads/PS2_EMU/SRC/lv1/src/device.c b/payloads/PS2_EMU/lv1/src/device.c similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/device.c rename to payloads/PS2_EMU/lv1/src/device.c diff --git a/payloads/PS2_EMU/SRC/lv1/src/hvcall.S b/payloads/PS2_EMU/lv1/src/hvcall.S similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/hvcall.S rename to payloads/PS2_EMU/lv1/src/hvcall.S diff --git a/payloads/PS2_EMU/SRC/lv1/src/mm.c b/payloads/PS2_EMU/lv1/src/mm.c similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/mm.c rename to payloads/PS2_EMU/lv1/src/mm.c diff --git a/payloads/PS2_EMU/SRC/lv1/src/stor.c b/payloads/PS2_EMU/lv1/src/stor.c similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/stor.c rename to payloads/PS2_EMU/lv1/src/stor.c diff --git a/payloads/PS2_EMU/SRC/lv1/src/vas.c b/payloads/PS2_EMU/lv1/src/vas.c similarity index 100% rename from payloads/PS2_EMU/SRC/lv1/src/vas.c rename to payloads/PS2_EMU/lv1/src/vas.c diff --git a/payloads/PS2_EMU/SRC/make_all.bat b/payloads/PS2_EMU/make_all.bat similarity index 74% rename from payloads/PS2_EMU/SRC/make_all.bat rename to payloads/PS2_EMU/make_all.bat index ab011589..a9f8acb3 100644 --- a/payloads/PS2_EMU/SRC/make_all.bat +++ b/payloads/PS2_EMU/make_all.bat @@ -26,10 +26,10 @@ make -f Makefile all cd ../.. -mkdir ..\BIN -move /y .\ps2emu_stage1_file\*.bin ..\BIN -move /y .\ps2emu_stage2\hwemu\*.bin ..\BIN -move /y .\ps2emu_stage2\gxemu\*.bin ..\BIN -move /y .\ps2emu_stage2\netemu\*.bin ..\BIN +mkdir BIN +move /y .\ps2emu_stage1_file\*.bin BIN +move /y .\ps2emu_stage2\hwemu\*.bin BIN +move /y .\ps2emu_stage2\gxemu\*.bin BIN +move /y .\ps2emu_stage2\netemu\*.bin BIN pause \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/cdvd.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/cdvd.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/cdvd.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/cdvd.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/io.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/io.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/io.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/io.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/libc.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/libc.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/libc.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/libc.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/macros.h.S b/payloads/PS2_EMU/ps2emu/include/ps2emu/macros.h.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/macros.h.S rename to payloads/PS2_EMU/ps2emu/include/ps2emu/macros.h.S diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/memory.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/memory.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/memory.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/memory.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/patch.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/patch.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/patch.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/patch.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/ps2emu.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/ps2emu.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/ps2emu.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/ps2emu.h diff --git a/payloads/PS2_EMU/ps2emu/include/ps2emu/symbols.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/symbols.h new file mode 100644 index 00000000..ba8a81b4 --- /dev/null +++ b/payloads/PS2_EMU/ps2emu/include/ps2emu/symbols.h @@ -0,0 +1,2898 @@ +#ifndef __PS2EMU_SYMBOLS_H_S__ +#define __PS2EMU_SYMBOLS_H_S__ + +#ifdef PS2HWEMU + + #define DATA_TOC_OFFSET -0x7358 + #define DATA_SUBTOC_OFFSET 0x20 + #define LPAR_SUBTOC_OFFSET 0x18 + #define FILESZ_TOC_OFFSET -0x63E0 + + #ifdef FIRMWARE_421C + #define TOC 0x4EAE30 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_421D + #define TOC 0x4EAE30 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425C + #define TOC 0x4EAE30 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425D + #define TOC 0x4EAE30 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430C + #define TOC 0x4EB750 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430D + #define TOC 0x4EB750 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431C + #define TOC 0x4EB750 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431D + #define TOC 0x4EB750 + #define DISC_SIZE_OFFSET 0x255A0 + #define DISC_TYPE_OFFSET 0x2519C + #define cdvd_send_atapi_command_symbol 0x21FC4 + #define ufs_open_symbol 0x4DF34 + #define ufs_close_symbol 0x4E6C0 + #define ufs_read_symbol 0x4DA04 + #define ufs_write_symbol 0x4DAF8 + #define ufs_fstat_symbol 0x4E9C4 + #define zeroalloc_symbol 0xFDE70 + #define malloc_symbol 0xFDD88 + #define free_symbol 0xFDEC8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E338 + #define vuart_write_symbol 0x1E288 + #define ps2_disc_auth_symbol 0x2053C + #define ps2_disc_auth_caller_symbol 0x51184 + #define overwritten_symbol 0x23BF8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440C + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440D + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441C + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441D + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446C + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446D + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF60 + #define malloc_symbol 0xFDE78 + #define free_symbol 0xFDFB8 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450C + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF6C + #define malloc_symbol 0xFDE84 + #define free_symbol 0xFDFC4 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450D + #define TOC 0x4EB840 + #define DISC_SIZE_OFFSET 0x25694 + #define DISC_TYPE_OFFSET 0x25290 + #define cdvd_send_atapi_command_symbol 0x220B8 + #define ufs_open_symbol 0x4E028 + #define ufs_close_symbol 0x4E7B4 + #define ufs_read_symbol 0x4DAF8 + #define ufs_write_symbol 0x4DBEC + #define ufs_fstat_symbol 0x4EAB8 + #define zeroalloc_symbol 0xFDF6C + #define malloc_symbol 0xFDE84 + #define free_symbol 0xFDFC4 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x20630 + #define ps2_disc_auth_caller_symbol 0x51278 + #define overwritten_symbol 0x23CEC + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_466C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_482C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_483C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484C + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484D + #define TOC 0x4EB8C0 + #define DISC_SIZE_OFFSET 0x25714 + #define DISC_TYPE_OFFSET 0x25310 + #define cdvd_send_atapi_command_symbol 0x22138 + #define ufs_open_symbol 0x4E0A8 + #define ufs_close_symbol 0x4E834 + #define ufs_read_symbol 0x4DB78 + #define ufs_write_symbol 0x4DC6C + #define ufs_fstat_symbol 0x4EB38 + #define zeroalloc_symbol 0xFDFEC + #define malloc_symbol 0xFDF04 + #define free_symbol 0xFE044 + #define memcpy_symbol 0xDFAC + #define memset_symbol 0xD488 + #define strcpy_symbol 0xED04 + #define strcat_symbol 0xEED0 + #define strlen_symbol 0xECD8 + #define vuart_read_symbol 0x1E42C + #define vuart_write_symbol 0x1E37C + #define ps2_disc_auth_symbol 0x206B0 + #define ps2_disc_auth_caller_symbol 0x512F8 + #define overwritten_symbol 0x23D6C + #define stage1_addr overwritten_symbol + #define stage2_addr 0x021f0000 + #endif /* FIRMWARE */ + +#endif /* PS2HWEMU */ + +#ifdef PS2GXEMU + + #define DATA_TOC_OFFSET -0x5B00 + #define LPAR_TOC_OFFSET -0x5BC8 + #define FILESZ_TOC_OFFSET -0xE68 + + #ifdef FIRMWARE_421C + #define TOC 0x677AA8 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8028 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_421D + #define TOC 0x677AA8 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8028 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425C + #define TOC 0x677AA8 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8028 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425D + #define TOC 0x677AA8 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8028 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430C + #define TOC 0x678448 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8A28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430D + #define TOC 0x678448 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8A28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431C + #define TOC 0x678448 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8A28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431D + #define TOC 0x678448 + #define cdvd_read_symbol 0x8E364 + #define cdvd_send_atapi_command_symbol 0x8D938 + #define cdvd_send_device_command_symbol 0x8D84C + #define ufs_open_symbol 0x24EA70 + #define ufs_close_symbol 0x24F218 + #define ufs_read_symbol 0x24E780 + #define ufs_write_symbol 0x24E8F8 + #define ufs_fstat_symbol 0x24E5C0 + #define zeroalloc_symbol 0x1E47AC + #define malloc_symbol 0x1E474C + #define free_symbol 0x1E47F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x8FFB4 + #define ps2_disc_auth_caller_symbol 0x24F81C + #define overwritten_symbol 0x8C990 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8A28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E46C + #define cdvd_send_atapi_command_symbol 0x8DA40 + #define cdvd_send_device_command_symbol 0x8D954 + #define ufs_open_symbol 0x24EB70 + #define ufs_close_symbol 0x24F318 + #define ufs_read_symbol 0x24E880 + #define ufs_write_symbol 0x24E9F8 + #define ufs_fstat_symbol 0x24E6C0 + #define zeroalloc_symbol 0x1E48AC + #define malloc_symbol 0x1E484C + #define free_symbol 0x1E48F8 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900BC + #define ps2_disc_auth_caller_symbol 0x24F91C + #define overwritten_symbol 0x8CA98 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BB8C28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_466C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_482C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_483C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484C + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484D + #define TOC 0x678548 + #define cdvd_read_symbol 0x8E4AC + #define cdvd_send_atapi_command_symbol 0x8DA80 + #define cdvd_send_device_command_symbol 0x8D994 + #define ufs_open_symbol 0x24EBB0 + #define ufs_close_symbol 0x24F358 + #define ufs_read_symbol 0x24E8C0 + #define ufs_write_symbol 0x24EA38 + #define ufs_fstat_symbol 0x24E700 + #define zeroalloc_symbol 0x1E48EC + #define malloc_symbol 0x1E488C + #define free_symbol 0x1E4938 + #define memcpy_symbol 0x514BC + #define memset_symbol 0x51528 + #define strcpy_symbol 0x51600 + #define strcat_symbol 0x51634 + #define strlen_symbol 0x515C8 + #define vuart_read_symbol 0x49544 + #define vuart_write_symbol 0x494A4 + #define ps2_disc_auth_symbol 0x900FC + #define ps2_disc_auth_caller_symbol 0x24F95C + #define overwritten_symbol 0x8CAD8 + #define stage1_addr overwritten_symbol + #define stage2_addr 0x2BBAB28 + #endif /* FIRMWARE */ + +#endif /* PS2GXEMU */ + +#ifdef PS2NETEMU + + #define EXTENDED_DATA (0x821000+0x2953478) + + #ifdef FIRMWARE_421C + #define TOC 0x7DA500 + #define cdvd_read_symbol 0x12E9BC + #define ufs_open_symbol 0x1E3E64 + #define ufs_close_symbol 0x1E3D18 + #define ufs_read_symbol 0x1E47D4 + #define ufs_write_symbol 0x1E4660 + #define ufs_fstat_symbol 0x1E3968 + #define memcpy_symbol 0x111050 + #define memset_symbol 0x110FFC + #define strcpy_symbol 0x110E9C + #define strcat_symbol 0x110ED4 + #define strlen_symbol 0x110E64 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_421D + #define TOC 0x7DA500 + #define cdvd_read_symbol 0x12E9BC + #define ufs_open_symbol 0x1E3E64 + #define ufs_close_symbol 0x1E3D18 + #define ufs_read_symbol 0x1E47D4 + #define ufs_write_symbol 0x1E4660 + #define ufs_fstat_symbol 0x1E3968 + #define memcpy_symbol 0x111050 + #define memset_symbol 0x110FFC + #define strcpy_symbol 0x110E9C + #define strcat_symbol 0x110ED4 + #define strlen_symbol 0x110E64 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425C + #define TOC 0x7DA500 + #define cdvd_read_symbol 0x12E9BC + #define ufs_open_symbol 0x1E3E64 + #define ufs_close_symbol 0x1E3D18 + #define ufs_read_symbol 0x1E47D4 + #define ufs_write_symbol 0x1E4660 + #define ufs_fstat_symbol 0x1E3968 + #define memcpy_symbol 0x111050 + #define memset_symbol 0x110FFC + #define strcpy_symbol 0x110E9C + #define strcat_symbol 0x110ED4 + #define strlen_symbol 0x110E64 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_425D + #define TOC 0x7DA500 + #define cdvd_read_symbol 0x12E9BC + #define ufs_open_symbol 0x1E3E64 + #define ufs_close_symbol 0x1E3D18 + #define ufs_read_symbol 0x1E47D4 + #define ufs_write_symbol 0x1E4660 + #define ufs_fstat_symbol 0x1E3968 + #define memcpy_symbol 0x111050 + #define memset_symbol 0x110FFC + #define strcpy_symbol 0x110E9C + #define strcat_symbol 0x110ED4 + #define strlen_symbol 0x110E64 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430C + #define TOC 0x74F680 + #define cdvd_read_symbol 0x12EB2C + #define ufs_open_symbol 0x1E3FE4 + #define ufs_close_symbol 0x1E3E98 + #define ufs_read_symbol 0x1E4954 + #define ufs_write_symbol 0x1E47E0 + #define ufs_fstat_symbol 0x1E3AE8 + #define memcpy_symbol 0x111190 + #define memset_symbol 0x11113C + #define strcpy_symbol 0x110FDC + #define strcat_symbol 0x111014 + #define strlen_symbol 0x110FA4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_430D + #define TOC 0x74F680 + #define cdvd_read_symbol 0x12EB2C + #define ufs_open_symbol 0x1E3FE4 + #define ufs_close_symbol 0x1E3E98 + #define ufs_read_symbol 0x1E4954 + #define ufs_write_symbol 0x1E47E0 + #define ufs_fstat_symbol 0x1E3AE8 + #define memcpy_symbol 0x111190 + #define memset_symbol 0x11113C + #define strcpy_symbol 0x110FDC + #define strcat_symbol 0x111014 + #define strlen_symbol 0x110FA4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431C + #define TOC 0x74F680 + #define cdvd_read_symbol 0x12EB2C + #define ufs_open_symbol 0x1E3FE4 + #define ufs_close_symbol 0x1E3E98 + #define ufs_read_symbol 0x1E4954 + #define ufs_write_symbol 0x1E47E0 + #define ufs_fstat_symbol 0x1E3AE8 + #define memcpy_symbol 0x111190 + #define memset_symbol 0x11113C + #define strcpy_symbol 0x110FDC + #define strcat_symbol 0x111014 + #define strlen_symbol 0x110FA4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_431D + #define TOC 0x74F680 + #define cdvd_read_symbol 0x12EB2C + #define ufs_open_symbol 0x1E3FE4 + #define ufs_close_symbol 0x1E3E98 + #define ufs_read_symbol 0x1E4954 + #define ufs_write_symbol 0x1E47E0 + #define ufs_fstat_symbol 0x1E3AE8 + #define memcpy_symbol 0x111190 + #define memset_symbol 0x11113C + #define strcpy_symbol 0x110FDC + #define strcat_symbol 0x111014 + #define strlen_symbol 0x110FA4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440C + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1331DC + #define ufs_open_symbol 0x1E8664 + #define ufs_close_symbol 0x1E8518 + #define ufs_read_symbol 0x1E8FD4 + #define ufs_write_symbol 0x1E8E60 + #define ufs_fstat_symbol 0x1E8168 + #define memcpy_symbol 0x115290 + #define memset_symbol 0x11523C + #define strcpy_symbol 0x1150DC + #define strcat_symbol 0x115114 + #define strlen_symbol 0x1150A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_440D + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1331DC + #define ufs_open_symbol 0x1E8664 + #define ufs_close_symbol 0x1E8518 + #define ufs_read_symbol 0x1E8FD4 + #define ufs_write_symbol 0x1E8E60 + #define ufs_fstat_symbol 0x1E8168 + #define memcpy_symbol 0x115290 + #define memset_symbol 0x11523C + #define strcpy_symbol 0x1150DC + #define strcat_symbol 0x115114 + #define strlen_symbol 0x1150A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441C + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1331DC + #define ufs_open_symbol 0x1E8664 + #define ufs_close_symbol 0x1E8518 + #define ufs_read_symbol 0x1E8FD4 + #define ufs_write_symbol 0x1E8E60 + #define ufs_fstat_symbol 0x1E8168 + #define memcpy_symbol 0x115290 + #define memset_symbol 0x11523C + #define strcpy_symbol 0x1150DC + #define strcat_symbol 0x115114 + #define strlen_symbol 0x1150A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_441D + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1331DC + #define ufs_open_symbol 0x1E8664 + #define ufs_close_symbol 0x1E8518 + #define ufs_read_symbol 0x1E8FD4 + #define ufs_write_symbol 0x1E8E60 + #define ufs_fstat_symbol 0x1E8168 + #define memcpy_symbol 0x115290 + #define memset_symbol 0x11523C + #define strcpy_symbol 0x1150DC + #define strcat_symbol 0x115114 + #define strlen_symbol 0x1150A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446C + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1332F4 + #define ufs_open_symbol 0x1E87A4 + #define ufs_close_symbol 0x1E8658 + #define ufs_read_symbol 0x1E9114 + #define ufs_write_symbol 0x1E8FA0 + #define ufs_fstat_symbol 0x1E82A8 + #define memcpy_symbol 0x115310 + #define memset_symbol 0x1152BC + #define strcpy_symbol 0x11515C + #define strcat_symbol 0x115194 + #define strlen_symbol 0x115124 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_446D + #define TOC 0x74FC80 + #define cdvd_read_symbol 0x1332F4 + #define ufs_open_symbol 0x1E87A4 + #define ufs_close_symbol 0x1E8658 + #define ufs_read_symbol 0x1E9114 + #define ufs_write_symbol 0x1E8FA0 + #define ufs_fstat_symbol 0x1E82A8 + #define memcpy_symbol 0x115310 + #define memset_symbol 0x1152BC + #define strcpy_symbol 0x11515C + #define strcat_symbol 0x115194 + #define strlen_symbol 0x115124 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450C + #define TOC 0x751180 + #define cdvd_read_symbol 0x1368BC + #define ufs_open_symbol 0x1EBD5C + #define ufs_close_symbol 0x1EBC10 + #define ufs_read_symbol 0x1EC6CC + #define ufs_write_symbol 0x1EC558 + #define ufs_fstat_symbol 0x1EB860 + #define memcpy_symbol 0x1183D0 + #define memset_symbol 0x11837C + #define strcpy_symbol 0x11821C + #define strcat_symbol 0x118254 + #define strlen_symbol 0x1181E4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_450D + #define TOC 0x751180 + #define cdvd_read_symbol 0x1368BC + #define ufs_open_symbol 0x1EBD5C + #define ufs_close_symbol 0x1EBC10 + #define ufs_read_symbol 0x1EC6CC + #define ufs_write_symbol 0x1EC558 + #define ufs_fstat_symbol 0x1EB860 + #define memcpy_symbol 0x1183D0 + #define memset_symbol 0x11837C + #define strcpy_symbol 0x11821C + #define strcat_symbol 0x118254 + #define strlen_symbol 0x1181E4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1374FC + #define ufs_open_symbol 0x1EC99C + #define ufs_close_symbol 0x1EC850 + #define ufs_read_symbol 0x1ED30C + #define ufs_write_symbol 0x1ED198 + #define ufs_fstat_symbol 0x1EC4A0 + #define memcpy_symbol 0x1188D0 + #define memset_symbol 0x11887C + #define strcpy_symbol 0x11871C + #define strcat_symbol 0x118754 + #define strlen_symbol 0x1186E4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_453D + #define TOC 0x751280 + #define cdvd_read_symbol 0x1374FC + #define ufs_open_symbol 0x1EC99C + #define ufs_close_symbol 0x1EC850 + #define ufs_read_symbol 0x1ED30C + #define ufs_write_symbol 0x1ED198 + #define ufs_fstat_symbol 0x1EC4A0 + #define memcpy_symbol 0x1188D0 + #define memset_symbol 0x11887C + #define strcpy_symbol 0x11871C + #define strcat_symbol 0x118754 + #define strlen_symbol 0x1186E4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455C + #define TOC 0x751280 + #define cdvd_read_symbol 0x13757C + #define ufs_open_symbol 0x1ECA1C + #define ufs_close_symbol 0x1EC8D0 + #define ufs_read_symbol 0x1ED38C + #define ufs_write_symbol 0x1ED218 + #define ufs_fstat_symbol 0x1EC520 + #define memcpy_symbol 0x118950 + #define memset_symbol 0x1188FC + #define strcpy_symbol 0x11879C + #define strcat_symbol 0x1187D4 + #define strlen_symbol 0x118764 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_455D + #define TOC 0x751280 + #define cdvd_read_symbol 0x13757C + #define ufs_open_symbol 0x1ECA1C + #define ufs_close_symbol 0x1EC8D0 + #define ufs_read_symbol 0x1ED38C + #define ufs_write_symbol 0x1ED218 + #define ufs_fstat_symbol 0x1EC520 + #define memcpy_symbol 0x118950 + #define memset_symbol 0x1188FC + #define strcpy_symbol 0x11879C + #define strcat_symbol 0x1187D4 + #define strlen_symbol 0x118764 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_460D + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_465D + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_466C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_470D + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_475D + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476C + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_476D + #define TOC 0x751280 + #define cdvd_read_symbol 0x137744 + #define ufs_open_symbol 0x1ECBDC + #define ufs_close_symbol 0x1ECA90 + #define ufs_read_symbol 0x1ED54C + #define ufs_write_symbol 0x1ED3D8 + #define ufs_fstat_symbol 0x1EC6E0 + #define memcpy_symbol 0x118A10 + #define memset_symbol 0x1189BC + #define strcpy_symbol 0x11885C + #define strcat_symbol 0x118894 + #define strlen_symbol 0x118824 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_478D + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_480D + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_481D + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_482C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_483C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484C + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + + #ifdef FIRMWARE_484D + #define TOC 0x751280 + #define cdvd_read_symbol 0x1377C4 + #define ufs_open_symbol 0x1ECC5C + #define ufs_close_symbol 0x1ECB10 + #define ufs_read_symbol 0x1ED5CC + #define ufs_write_symbol 0x1ED458 + #define ufs_fstat_symbol 0x1EC760 + #define memcpy_symbol 0x118A90 + #define memset_symbol 0x118A3C + #define strcpy_symbol 0x1188DC + #define strcat_symbol 0x118914 + #define strlen_symbol 0x1188A4 + #define decrypt_symbol cdvd_read_symbol + #endif /* FIRMWARE */ + +#endif /* PS2NETEMU */ + + +#endif /* __PS2EMU_SYMBOLS_H_S__ */ diff --git a/payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/vuart.h b/payloads/PS2_EMU/ps2emu/include/ps2emu/vuart.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/include/ps2emu/vuart.h rename to payloads/PS2_EMU/ps2emu/include/ps2emu/vuart.h diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/io.S b/payloads/PS2_EMU/ps2emu/src/io.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/io.S rename to payloads/PS2_EMU/ps2emu/src/io.S diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/libc.S b/payloads/PS2_EMU/ps2emu/src/libc.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/libc.S rename to payloads/PS2_EMU/ps2emu/src/libc.S diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/libc_c.c b/payloads/PS2_EMU/ps2emu/src/libc_c.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/libc_c.c rename to payloads/PS2_EMU/ps2emu/src/libc_c.c diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/memory.S b/payloads/PS2_EMU/ps2emu/src/memory.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/memory.S rename to payloads/PS2_EMU/ps2emu/src/memory.S diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/patch.S b/payloads/PS2_EMU/ps2emu/src/patch.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/patch.S rename to payloads/PS2_EMU/ps2emu/src/patch.S diff --git a/payloads/PS2_EMU/SRC/ps2emu/src/vuart.S b/payloads/PS2_EMU/ps2emu/src/vuart.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu/src/vuart.S rename to payloads/PS2_EMU/ps2emu/src/vuart.S diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/Makefile b/payloads/PS2_EMU/ps2emu_stage1_file/Makefile similarity index 89% rename from payloads/PS2_EMU/SRC/ps2emu_stage1_file/Makefile rename to payloads/PS2_EMU/ps2emu_stage1_file/Makefile index fdee81dc..6a018ce2 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/Makefile +++ b/payloads/PS2_EMU/ps2emu_stage1_file/Makefile @@ -1,4 +1,4 @@ -PAYLOADS := 421 430 431 440 441 446 450 453 455 460 465 466 470 475 476 478 480 481 482 483 +include ../../FIRMWARES CC := ppu-gcc STRIP := ppu-strip @@ -22,9 +22,9 @@ define do_payload @rm -f *.elf *.o endef -all: $(PAYLOADS) +all: $(PS2_PAYLOADS) -$(PAYLOADS): +$(PS2_PAYLOADS): $(do_payload) clean: diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/icache.S b/payloads/PS2_EMU/ps2emu_stage1_file/icache.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage1_file/icache.S rename to payloads/PS2_EMU/ps2emu_stage1_file/icache.S diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/ldscript.ld b/payloads/PS2_EMU/ps2emu_stage1_file/ldscript.ld similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage1_file/ldscript.ld rename to payloads/PS2_EMU/ps2emu_stage1_file/ldscript.ld diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/make_bin.bat b/payloads/PS2_EMU/ps2emu_stage1_file/make_bin.bat similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage1_file/make_bin.bat rename to payloads/PS2_EMU/ps2emu_stage1_file/make_bin.bat diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage1_file/start.S b/payloads/PS2_EMU/ps2emu_stage1_file/start.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage1_file/start.S rename to payloads/PS2_EMU/ps2emu_stage1_file/start.S diff --git a/payloads/PS2_EMU/ps2emu_stage2/Makefile.common b/payloads/PS2_EMU/ps2emu_stage2/Makefile.common new file mode 100644 index 00000000..15929737 --- /dev/null +++ b/payloads/PS2_EMU/ps2emu_stage2/Makefile.common @@ -0,0 +1,17 @@ +include ../../../FIRMWARES + +PS3DEV2:=$(PS3SDK)/ps3dev2 + +CC := $(PS3DEV2)/ppu/bin/ppu-gcc +STRIP := $(PS3DEV2)/ppu/bin/ppu-strip +OBJCOPY := $(PS3DEV2)/ppu/bin/ppu-objcopy + +CFLAGS = -ffunction-sections -fdata-sections -Os -m64 -fno-builtin -fno-exceptions \ + -Wall -Wno-strict-aliasing $(foreach dir,$(INCLUDE),-I$(dir)) \ + -DPS2EMU +CFLAGS += --std=gnu99 +LDFLAGS= -T ldscript.ld -nostartfiles -nostdlib -nodefaultlibs -Wl,-static -Wl,-s -L. $(foreach dir,$(LIBSDIR),-L$(dir)) $(LIBS) \ + -Wl,--gc-sections -Wl,-Map= + +INCLUDE = ../common ../../ps2emu/include ../../lv1/include +INCLUDE += $(PS3DEV2)/ppu/ppu/include \ No newline at end of file diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/common/common.c b/payloads/PS2_EMU/ps2emu_stage2/common/common.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/common/common.c rename to payloads/PS2_EMU/ps2emu_stage2/common/common.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/common/common.h b/payloads/PS2_EMU/ps2emu_stage2/common/common.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/common/common.h rename to payloads/PS2_EMU/ps2emu_stage2/common/common.h diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/common/scsi.h b/payloads/PS2_EMU/ps2emu_stage2/common/scsi.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/common/scsi.h rename to payloads/PS2_EMU/ps2emu_stage2/common/scsi.h diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/Clean.bat b/payloads/PS2_EMU/ps2emu_stage2/gxemu/Clean.bat similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/Clean.bat rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/Clean.bat diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/Makefile b/payloads/PS2_EMU/ps2emu_stage2/gxemu/Makefile similarity index 58% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/Makefile rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/Makefile index 59e0381d..bf503f41 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/Makefile +++ b/payloads/PS2_EMU/ps2emu_stage2/gxemu/Makefile @@ -1,16 +1,8 @@ -PAYLOADS := 421 430 431 440 441 446 450 453 455 460 465 466 470 475 476 478 480 481 482 483 +include ../Makefile.common -CC := ppu-gcc -STRIP := ppu-strip -OBJCOPY := ppu-objcopy -CFLAGS = -ffunction-sections -fdata-sections -Os -m64 -fno-builtin -fno-exceptions \ - -Os -Wall -Wno-strict-aliasing $(foreach dir,$(INCLUDE),-I$(dir)) \ - -DPS2EMU -DPS2GXEMU -ffreestanding -CFLAGS += --std=gnu99 -LDFLAGS = -nostartfiles -nostdlib -nodefaultlibs -Wl,-static -Wl,-s -L. $(foreach dir,$(LIBSDIR),-L$(dir)) $(LIBS) \ - -Wl,--gc-sections -Wl,-Map= -INCLUDE = ../common ../../ps2emu/include ../../lv1/include ../../debug/include -INCLUDE += $(PS3DEV)/ppu/ppu/include +PS3DEV2:=$(PS3SDK)/ps3dev2 + +CFLAGS += -DPS2GXEMU define do_payload $(CC) $(CFLAGS) -DFIRMWARE_$@ -c -o start.o start.S @@ -22,16 +14,16 @@ define do_payload $(CC) $(CFLAGS) -DFIRMWARE_$@ -c -o ../../ps2emu/src/io.o ../../ps2emu/src/io.S $(CC) $(CFLAGS) -DFIRMWARE_$@ -c -o ../../ps2emu/src/vuart.o ../../ps2emu/src/vuart.S $(CC) $(CFLAGS) -DFIRMWARE_$@ -c -o ../../ps2emu/src/patch.o ../../ps2emu/src/patch.S - $(CC) -T ldscript_$@.ld $(LDFLAGS)ps2gxemu_stage2_$@.map -o ps2gxemu_stage2_$@.elf start.o crt0.o main.o \ + $(CC) -T ldscript.ld $(LDFLAGS)ps2gxemu_stage2_$@.map -o ps2gxemu_stage2_$@.elf start.o crt0.o main.o \ ../../ps2emu/src/libc.o ../../ps2emu/src/libc_c.o ../../ps2emu/src/memory.o ../../ps2emu/src/io.o \ ../../ps2emu/src/vuart.o ../../ps2emu/src/patch.o $(OBJCOPY) -O binary ps2gxemu_stage2_$@.elf ps2gxemu_stage2_$@.bin @rm -f *.o ../../ps2emu/src/*.o ../../lv1/src/*.o ../../debug/src/*.o endef -all: $(PAYLOADS) +all: $(PS2_PAYLOADS) -$(PAYLOADS): +$(PS2_PAYLOADS): $(do_payload) clean: diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/crt0.c b/payloads/PS2_EMU/ps2emu_stage2/gxemu/crt0.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/crt0.c rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/crt0.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_421.ld b/payloads/PS2_EMU/ps2emu_stage2/gxemu/ldscript.ld similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/ldscript_421.ld rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/ldscript.ld diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/main.c b/payloads/PS2_EMU/ps2emu_stage2/gxemu/main.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/main.c rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/main.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/make_netemu.bat b/payloads/PS2_EMU/ps2emu_stage2/gxemu/make_bin.bat similarity index 86% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/make_netemu.bat rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/make_bin.bat index 167e5f06..d0aa34c4 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/make_netemu.bat +++ b/payloads/PS2_EMU/ps2emu_stage2/gxemu/make_bin.bat @@ -4,7 +4,7 @@ cls set PS3SDK=/c/PSDK3v2 set PS3DEV=/c/PSDK3v2/ps3dev2 set WIN_PS3SDK=C:/PSDK3v2 -set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin;%SCETOOL%; +set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin; make -f Makefile all diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/read!!.txt b/payloads/PS2_EMU/ps2emu_stage2/gxemu/read!!.txt similarity index 57% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/read!!.txt rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/read!!.txt index 25fadbeb..2b5085cb 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/read!!.txt +++ b/payloads/PS2_EMU/ps2emu_stage2/gxemu/read!!.txt @@ -5,3 +5,8 @@ Examples: 0x2BB8A24 -> 0x0BADCAFE00000004 0x2BB8A28 -> 0x0BADCAFE00000008 0x2BB8A2C -> 0x0BADCAFE0000000C + + +TODO : +For now every firmware have the same alignement... but it might be better to use +4 ldscript, and to add in makefile, ' if firmware=XXX then $LDSCRIPT=ldscript_X ' diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/restore.h b/payloads/PS2_EMU/ps2emu_stage2/gxemu/restore.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/restore.h rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/restore.h diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/start.S b/payloads/PS2_EMU/ps2emu_stage2/gxemu/start.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/start.S rename to payloads/PS2_EMU/ps2emu_stage2/gxemu/start.S diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/Clean.bat b/payloads/PS2_EMU/ps2emu_stage2/hwemu/Clean.bat similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/Clean.bat rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/Clean.bat diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/Makefile b/payloads/PS2_EMU/ps2emu_stage2/hwemu/Makefile similarity index 62% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/Makefile rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/Makefile index 715fcac8..cd1f406e 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/Makefile +++ b/payloads/PS2_EMU/ps2emu_stage2/hwemu/Makefile @@ -1,15 +1,8 @@ -PAYLOADS := 421 430 431 440 441 446 450 453 455 460 465 466 470 475 476 478 480 481 482 483 +include ../Makefile.common -CC := ppu-gcc -OBJCOPY := ppu-objcopy -CFLAGS = -ffunction-sections -fdata-sections -Os -m64 -fno-builtin -fno-exceptions \ - -Os -Wall -Wno-strict-aliasing $(foreach dir,$(INCLUDE),-I$(dir)) \ - -DPS2EMU -DPS2HWEMU -ffreestanding -CFLAGS += --std=gnu99 -LDFLAGS = -T ldscript.ld -nostartfiles -nostdlib -nodefaultlibs -Wl,-static -Wl,-s -L. $(foreach dir,$(LIBSDIR),-L$(dir)) $(LIBS) \ - -Wl,--gc-sections -Wl,-Map= -INCLUDE = ../common ../../ps2emu/include ../../lv1/include ../../debug/include -INCLUDE += $(PS3DEV)/ppu/ppu/include +PS3DEV2:=$(PS3SDK)/ps3dev2 + +CFLAGS += -DPS2HWEMU define do_payload $(CC) $(CFLAGS) -DFIRMWARE_$@ -c -o start.o start.S @@ -26,9 +19,9 @@ define do_payload @rm -f *.elf *.map *.o ../../ps2emu/src/*.o ../../lv1/src/*.o ../../debug/src/*.o endef -all: $(PAYLOADS) +all: $(PS2_PAYLOADS) -$(PAYLOADS): +$(PS2_PAYLOADS): $(do_payload) clean: diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/crt0.c b/payloads/PS2_EMU/ps2emu_stage2/hwemu/crt0.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/crt0.c rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/crt0.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/ldscript.ld b/payloads/PS2_EMU/ps2emu_stage2/hwemu/ldscript.ld similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/ldscript.ld rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/ldscript.ld diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/main.c b/payloads/PS2_EMU/ps2emu_stage2/hwemu/main.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/main.c rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/main.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/make_bin.bat b/payloads/PS2_EMU/ps2emu_stage2/hwemu/make_bin.bat similarity index 74% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/make_bin.bat rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/make_bin.bat index 27f5c469..d0aa34c4 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/gxemu/make_bin.bat +++ b/payloads/PS2_EMU/ps2emu_stage2/hwemu/make_bin.bat @@ -4,9 +4,7 @@ cls set PS3SDK=/c/PSDK3v2 set PS3DEV=/c/PSDK3v2/ps3dev2 set WIN_PS3SDK=C:/PSDK3v2 -set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin;%SCETOOL%; -set SCETOOL=C:\PSDK3v2\ps3dev2\bin - +set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin; make -f Makefile all diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/read!!.txt b/payloads/PS2_EMU/ps2emu_stage2/hwemu/read!!.txt similarity index 57% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/read!!.txt rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/read!!.txt index 25fadbeb..2b5085cb 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/read!!.txt +++ b/payloads/PS2_EMU/ps2emu_stage2/hwemu/read!!.txt @@ -5,3 +5,8 @@ Examples: 0x2BB8A24 -> 0x0BADCAFE00000004 0x2BB8A28 -> 0x0BADCAFE00000008 0x2BB8A2C -> 0x0BADCAFE0000000C + + +TODO : +For now every firmware have the same alignement... but it might be better to use +4 ldscript, and to add in makefile, ' if firmware=XXX then $LDSCRIPT=ldscript_X ' diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/restore.h b/payloads/PS2_EMU/ps2emu_stage2/hwemu/restore.h similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/restore.h rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/restore.h diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/start.S b/payloads/PS2_EMU/ps2emu_stage2/hwemu/start.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/start.S rename to payloads/PS2_EMU/ps2emu_stage2/hwemu/start.S diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/Clean.bat b/payloads/PS2_EMU/ps2emu_stage2/netemu/Clean.bat similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/Clean.bat rename to payloads/PS2_EMU/ps2emu_stage2/netemu/Clean.bat diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/Makefile b/payloads/PS2_EMU/ps2emu_stage2/netemu/Makefile similarity index 64% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/Makefile rename to payloads/PS2_EMU/ps2emu_stage2/netemu/Makefile index 5dfcf21a..05abad98 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/Makefile +++ b/payloads/PS2_EMU/ps2emu_stage2/netemu/Makefile @@ -1,16 +1,8 @@ -PAYLOADS := 421 430 431 440 441 446 450 453 455 460 465 466 470 475 476 478 480 481 482 483 +include ../Makefile.common -CC := ppu-gcc -OBJCOPY := ppu-objcopy -CFLAGS = -ffunction-sections -fdata-sections -Os -m64 -fno-builtin -fno-exceptions \ - -Wall -Wno-strict-aliasing $(foreach dir,$(INCLUDE),-I$(dir)) \ - -DPS2EMU -DPS2NETEMU -CFLAGS += --std=gnu99 -LDFLAGS= -T ldscript.ld -nostartfiles -nostdlib -nodefaultlibs -Wl,-static -Wl,-s -L. $(foreach dir,$(LIBSDIR),-L$(dir)) $(LIBS) \ - -Wl,--gc-sections -Wl,-Map= +PS3DEV2:=$(PS3SDK)/ps3dev2 -INCLUDE = ../common ../../ps2emu/include ../../lv1/include -INCLUDE += $(PS3DEV)/ppu/ppu/include +CFLAGS += -DPS2NETEMU define do_payload @rm -f *.o ../../ps2emu/src/*.o ../../lv1/src/*.o @@ -27,9 +19,9 @@ define do_payload @rm -f *.o ../../ps2emu/src/*.o ../../lv1/src/*.o endef -all: $(PAYLOADS) +all: $(PS2_PAYLOADS) -$(PAYLOADS): +$(PS2_PAYLOADS): $(do_payload) clean: diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/ldscript.ld b/payloads/PS2_EMU/ps2emu_stage2/netemu/ldscript.ld similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/ldscript.ld rename to payloads/PS2_EMU/ps2emu_stage2/netemu/ldscript.ld diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/main.c b/payloads/PS2_EMU/ps2emu_stage2/netemu/main.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/main.c rename to payloads/PS2_EMU/ps2emu_stage2/netemu/main.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/make_bin.bat b/payloads/PS2_EMU/ps2emu_stage2/netemu/make_bin.bat similarity index 74% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/make_bin.bat rename to payloads/PS2_EMU/ps2emu_stage2/netemu/make_bin.bat index 27f5c469..d0aa34c4 100644 --- a/payloads/PS2_EMU/SRC/ps2emu_stage2/hwemu/make_bin.bat +++ b/payloads/PS2_EMU/ps2emu_stage2/netemu/make_bin.bat @@ -4,9 +4,7 @@ cls set PS3SDK=/c/PSDK3v2 set PS3DEV=/c/PSDK3v2/ps3dev2 set WIN_PS3SDK=C:/PSDK3v2 -set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin;%SCETOOL%; -set SCETOOL=C:\PSDK3v2\ps3dev2\bin - +set PATH=%WIN_PS3SDK%/mingw/msys/1.0/bin;%WIN_PS3SDK%/mingw/bin;%PS3DEV%/ppu/bin; make -f Makefile all diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/printf.c b/payloads/PS2_EMU/ps2emu_stage2/netemu/printf.c similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/printf.c rename to payloads/PS2_EMU/ps2emu_stage2/netemu/printf.c diff --git a/payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/start.S b/payloads/PS2_EMU/ps2emu_stage2/netemu/start.S similarity index 100% rename from payloads/PS2_EMU/SRC/ps2emu_stage2/netemu/start.S rename to payloads/PS2_EMU/ps2emu_stage2/netemu/start.S diff --git a/payloads/SKY/Makefile b/payloads/SKY/Makefile index 2629e6d4..5bc0b85d 100644 --- a/payloads/SKY/Makefile +++ b/payloads/SKY/Makefile @@ -1,9 +1,7 @@ PPU_CC = ppu-gcc PPU_OBJCOPY = ppu-objcopy -PAYLOADS := 421C 421D 430C 430D 431C 440C 441C 441D 446C 446D 450C 450D 453C 453D 455C 455D 460C \ - 465C 465D 470C 470D 475C 475D 476C 476D 478C 478D 480C 480D 481C 481D 482C 482D 483C \ - 484C 484D +include ../FIRMWARES define do_payload $(PPU_CC) -c payload_sky.S -o payload_sky_$@.o -DCFW_$@ diff --git a/payloads/rawseciso/Makefile b/payloads/rawseciso/Makefile index 8cd1d5b1..d4ec3059 100644 --- a/payloads/rawseciso/Makefile +++ b/payloads/rawseciso/Makefile @@ -27,13 +27,19 @@ endif CLEANFILES = $(PRX_DIR)/$(PPU_SPRX_TARGET) +SCETOOL_FLAGS := --sce-type=SELF --compress-data=TRUE --key-revision=0004 --self-auth-id=1070000052000001 +SCETOOL_FLAGS += --self-vendor-id=01000002 --self-type=APP --self-app-version=0003004000000000 +SCETOOL_FLAGS += --self-ctrl-flags=4000000000000000000000000000000000000000000000000000000000000000 +SCETOOL_FLAGS += --self-cap-flags=00000000000000000000000000000000000000000000007B0000000100020000 + all: $(MAKE) $(PPU_OBJS_DEPENDS) $(PPU_PRX_STRIP) --strip-debug --strip-section-header $(PPU_PRX_TARGET) - $(MAKE_FSELF) $(PPU_PRX_TARGET) $(PPU_SPRX_TARGET) - + scetool $(SCETOOL_FLAGS) --encrypt $(PPU_PRX_TARGET) $(PPU_SPRX_TARGET) + include $(CELL_MK_DIR)/sdk.target.mk - +clean: + rm -f objs *.prx *.sym *.sprx diff --git a/pkgfiles/USRDIR/GUI/List/PlayStation/colorset.ini b/pkgfiles/USRDIR/GUI/List/PlayStation/colorset.ini new file mode 100644 index 00000000..3cb93c22 --- /dev/null +++ b/pkgfiles/USRDIR/GUI/List/PlayStation/colorset.ini @@ -0,0 +1,6 @@ +[PlayStation - Corporative] +COLOR_1=FFFFFFD0 +COLOR_2=D0D000D0 +COLOR_3=3030FFD0 +COLOR_4=FF0000D0 +COLOR_SIDEBAR=000000D0 diff --git a/pkgfiles/USRDIR/GUI/XMB/Replica Zero/colorset.ini b/pkgfiles/USRDIR/GUI/XMB/Replica Zero/colorset.ini index ed3c4f36..2e3dd891 100644 --- a/pkgfiles/USRDIR/GUI/XMB/Replica Zero/colorset.ini +++ b/pkgfiles/USRDIR/GUI/XMB/Replica Zero/colorset.ini @@ -1,48 +1,34 @@ -[Replica Zero WBGR Soft] -COLOR_1=FFFFFF9B -COLOR_2=9B9BFF9B -COLOR_3=00FF009B -COLOR_4=FF00009B -WAVES_COLOR=FFFFFF20 - -[Replica Zero Chilly] -COLOR_1=A5FF50FF +[Replica Zero - Absolute] +COLOR_1=C4C4C4FF COLOR_2=FFFFFFFF -COLOR_3=FF6900FF -COLOR_4=FFFF3CFF -WAVES_COLOR=FF501452 +COLOR_3=FFFFFFFF +COLOR_4=FF3333FF +WAVES_COLOR=FFFFFF19 + +[Replica Zero - Channelized] +COLOR_1=FFFFFFD0 +COLOR_2=8080FFFF +COLOR_3=50FF50FF +COLOR_4=FF3333D0 +WAVES_COLOR=BFDFFF33 -[Replica Zero Aloe] -COLOR_1=D7FFB4FF -COLOR_2=46FF14CD -COLOR_3=46A537CD +[Replica Zero - Photosynthetic] +COLOR_1=90FF90FF +COLOR_2=00B500FF +COLOR_3=65FF00FF COLOR_4=FF0000CD -WAVES_COLOR=00FF0039 +WAVES_COLOR=00FF0040 -[Replica Zero Bubblegum] -COLOR_1=FF82D2FF -COLOR_2=FFFFFFFF -COLOR_3=BE69E6FF +[Replica Zero - Chillies] +COLOR_1=FFBC00FF +COLOR_2=BCFFBCFF +COLOR_3=DF4E00FF +COLOR_4=FFFF1CFF +WAVES_COLOR=FF5E0049 + +[Replica Zero - Bubblegum] +COLOR_1=FF97E8FF +COLOR_2=FFE0FFFF +COLOR_3=A752C0FF COLOR_4=A046DCFF WAVES_COLOR=F04BBE70 - -[Replica Zero Rocky] -COLOR_1=ADADADCD -COLOR_2=FFFFFFCD -COLOR_3=A0A0ACD -COLOR_4=7D7D7DCD -WAVES_COLOR=96969670 - -[Replica Zero WBGR Hard] -COLOR_1=FFFFFFFF -COLOR_2=9B9BFFFF -COLOR_3=00FF00FF -COLOR_4=FF0000FF -WAVES_COLOR=FFFFFF20 - -[Replica Zero WBGR Medium] -COLOR_1=FFFFFFCD -COLOR_2=9B9BFFCD -COLOR_3=00FF00CD -COLOR_4=FF0000CD -WAVES_COLOR=FFFFFF20 diff --git a/pkgfiles/USRDIR/GUI/colorset.ini b/pkgfiles/USRDIR/GUI/colorset.ini index 097a40f2..c60d7b76 100644 --- a/pkgfiles/USRDIR/GUI/colorset.ini +++ b/pkgfiles/USRDIR/GUI/colorset.ini @@ -11,6 +11,12 @@ COLOR_2=646464FF COLOR_3=EBEBEBEB COLOR_4=EBEBEBEB WAVES_COLOR=64646420 +COLOR_NOTIF=555555FF +COLOR_BOXHEAD=959595FF +COLOR_BOXBODY=555555FF +COLOR_SIDEBAR=FFFFFF60 +COLOR_BGS=FFFFFFFF +COLOR_BG=FFFFFFFF [Black] COLOR_1=101010FF diff --git a/pkgfiles/USRDIR/GUI/common/ALL.PNG b/pkgfiles/USRDIR/GUI/common/ALL.PNG index 6839600a5d613c240d983b7cb1abe8bad8941212..3f9018274ae66f48a2a1fe64b5ed863bcabc6e84 100644 GIT binary patch literal 1888 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CHECKBOX_FALSE.PNG b/pkgfiles/USRDIR/GUI/common/CHECKBOX_FALSE.PNG new file mode 100644 index 0000000000000000000000000000000000000000..25d315621331c46b97ffca6749ed06c095a4f8b5 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hUec)B=-RNPAX^Z&m+vnqo^L&O4;oy!cESOmD|96h1o+vT_5^!%ob28N`h1p*8# w0!P_MC6rCfC(WJ7z{D|aro_ooMu!GQhPEgk1${FqKcM{#p00i_>zopr0P$Wv+W-In literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CHECKBOX_TRUE.PNG b/pkgfiles/USRDIR/GUI/common/CHECKBOX_TRUE.PNG new file mode 100644 index 0000000000000000000000000000000000000000..a32e2936de687e7cf8b789e11a33ac367a0e1c45 GIT binary patch literal 566 zcmV-60?GY}P)z@;j(q!3lK=n!AY({UO#lFTB>(_`g8%^e{{R4h=>PzA zFaQARU;qF*m;eA5Z<1fdMgRZ-tVu*cRCwBA{Qv(y10?_;fLNe3xu!4z1P}|H#mFd4 ztS;gE!i8@X-jsmY00G2As+Ds0_oD>MFJy7db_@?lm z?;GELhS$K@x&g!&z*<0n0U&_j27nYZJ!M+R@s;Dhz*m7^Vpqh<tQnXIRLP3^M>AfKUuz$Y9W7{>=QI>nqoPfo}p3TfYD`-3Q_`K)i)vHiI35 zDo8EN0Du5OH2{RKGE^{p1}c6F#E*gaDi9xGxWdrE-~m^IWB@<_F+!8_e|SQYU|?oA z#c&81(h3ZpfWh^Ip@$)jVJ^cPhQAD`VfPf2{s009GabADD!j;02Xw(Mh9wM+3_%RD z&^03ifB?dD0g(Xa0)PO58$fPm0tg^jW@02aI|Bq50OTFXM`La$^#A|>07*qoM6N<$ Eg0BnU#{d8T literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CIRCLE.PNG b/pkgfiles/USRDIR/GUI/common/CIRCLE.PNG index a9f2504a9dfa4ea7d073290fb05bf42097612452..76363a1876499053db635fd8713007b069bfc9cc 100644 GIT binary patch literal 2146 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 Ag8%>k diff --git a/pkgfiles/USRDIR/GUI/common/CLOSE.PNG b/pkgfiles/USRDIR/GUI/common/CLOSE.PNG new file mode 100644 index 0000000000000000000000000000000000000000..de8563b20bb1a5b9a1d7fd2f5e1dc37541fecf3c GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hVh@N{tuskoK&=l_3uW>p4-h8YV=WJQFzAG~5@;z(mK7BCme^pFkF_26fAU@&ah z!*I0szv2QuPafIpj#o_%9bsVNh-I{MHZW;6a9~K>%sN{!!W6`OSfsT{(E`jgeDG2K zjKG{(juJrAKeT*{m&p-f5O6rsVs`HaBZmT;lC$)3MFvKfkdTMQED8-BS9>lCG%zT+ z8izSEFmYFeY+6q=Kl=B3;A!ycIMkXGHr5A+ein~g10R6z=>FVdQ&MBb@0JqRt Apa1{> literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CROSS.PNG b/pkgfiles/USRDIR/GUI/common/CROSS.PNG index 8c6c6d66f49447c5ce4437fb270e97349b7084ab..2f3299cd4c2dca17efae441e3f0a2ae2003b63a5 100644 GIT binary patch literal 2085 zcmW+%dsNc-692*v5fl)`i>PQn)6~Kg(n_+`A7-m|)7)N*+oqsKX5D<2)hO%YnocxmV%Gf6-jD!uXRj(k&k6pQ#U11FYO;QpL6ESoSFHYdE`Wd2NTWg z%m4ty(2$`0Mua~L4r|n@85s*kz$b-7rUGD2`79_P!8~|#+zp(t(_0JKp zA^XDs$k+gYNCJR<&4^O~oM8em%>!UZF#tA+h0z^f0$_SOG>CKX+}jw#+FAg_5?SIz z))aCba)K<7?vW7mrX50LLAaiX#lh6|9$Asy@2701U150qrBa#L(cRtJu2S7ow6?a+ z&S*5ZdwP1-F0C5Q8rrfK{U&-!8llP=n=TfTZfHC1j{w$aihEzDM{aIu;PiAx6B^xG zqSNUDVe?3Cu`S|5p?E{~_6&%@z}1P~oH}(1eleqIzQ{hQX?9q7uy5UWre|=6^8gz6 z5Rx?up4NWI9Uh}3nAmN?*Gg}qTsnGsF!l5x?>3g7pFQ`EMB>mTF#Q$rdVXPH^3uEZ zoPXts->*lqPYVVZaxTOx@?)E9j^*>`CAs2@M0|=Xfl!!z8BL)$ za~)h+)fMQqkhZ$I zV*WGiPmt^c6`WDHq2O3*RU&!l5XUCe)#Z5?-+sy}F5On{i~ibOPM81e3i=KZ`;Or9?f5cn zw1Q^6Wp1uJ42yL|t0x7<^jus`W#yz6NFuD_SnjkngI+bevh2ouKW@D%8S_{>S+3~r zwy1A(q|Fczb6fc*p)wM50CN`2#R!?79nbL_J{@{ zKC&gP^E|dRJAzkRj$(G9W6o2U&9)*=uRKY|bylMi73KQ*iGA?0pRaXLkW1mALk&yF zSqMY+?%H5y=Q<>p-kM!rT!$rNJHBvF6=)Jn-N=}LQ?A#vI32%6f7NN4Z zp;IcH+Ijp}W(V7FX}(a~hp{urKQ;G`Cv!bVtgWq^lRxS{C;mhEzJpaW}ZGj;soZ{?rDupC8CXY#Uqoi5@h={ihCx7d9XlS0a>>i z42Ej>Clnf|1H25T^nO%N{xySm~mb9RwaGwG;Svht0s|0M&l{yCkl zE1nt;7?8k9;i`d{=95k8IxPa3{ikv(@n+w2ploG4i5^3>dh+BQ0gX;k`zX+9WDE6N zBH=-JKX6#K{1y@SwV5%u|K&Cq(s!TRX{hG{O^(K?P>>z z@!uBV+6P+Pb_9s&vo`UI$AVOyxNzwtNfh}~wVBwHa8*$xc@0(6WMHZ?H!#f@3x!tH zLgPJY#(r)?PFh-=={+6N(A_R7bB)ORAGJ{{tHO3q)cEf99cBGyMcL}&q$O5P{q2ox z7+Gr(3IlA&Qs`#BR}?*#Y_t9N@R;OA zu~)QX_O0Rq^)XS_Y)iV^KF6+QgTC!+5r{!I^ba*(MC~Q7{YMfA`kqL(`V71=k^4`K zToW(Tk2pbj^NE@vCY`+>TkY4_NOlqrMggsCaYmy$|51l>A6YXsE}!Sp{KC|~L*<86 zsS)#LU8ued~JN`Aar+l JP<0?L^Z!MJk8l70 literal 3395 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 Z_y71ZrIt+Y6zKo}002ovPDHLkV1himazX$A diff --git a/pkgfiles/USRDIR/GUI/common/CURSOR.PNG b/pkgfiles/USRDIR/GUI/common/CURSOR.PNG new file mode 100644 index 0000000000000000000000000000000000000000..2ffc74cb5a3123d568102d7ba7a929991b9f3ec7 GIT binary patch literal 382 zcmV-^0fGLBP)2ojP^uQXvJwQV1dFN=dkEPw6Hoh`!nB zqVO=amYUPM{APH6W`MsG86J?~N*0sz-u0{)WO(plhf0QTGhs43P*u&0moPK-VJ5r^ ze~s5c5z#nKw&PVOB08VXbvm8uTkm}{_Mwj^lZlQ-BW<^%Z`fY|q-lyYO(7x>5jf`{ zA}E!Lcn+_t{*vT=Le4oj=MV%1JU(1i0n`B?@53cZ5{q&aL`inP(VS2FzKn>+x>%+^+$$;^gixHlYr?gv2u0OncFjmdC_44;wV cWBf;b0kM29wZ~p^5dZ)H07*qoM6N<$f_~7WqyPW_ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CURSOR_D1.PNG b/pkgfiles/USRDIR/GUI/common/CURSOR_D1.PNG new file mode 100644 index 0000000000000000000000000000000000000000..1d9554dab8d296b3edc037da8eb998488a4c5180 GIT binary patch literal 393 zcmV;40e1e0P)b;@5FB&XQIIm#@rpF?2b>}mRhp#E2l4_wKyCW`01A4O$nhgAESm^fvV#Q3ObTqt zwtNv-Om(+AH@CMt2h?#q9$5(lK|nNPzF3}9Br6=FyouwO&dSwjkfe~xD#tp8VHf~V zPoM}kCc-deMVBNU$JLd8hU2&tQdv!fXd$GscDvnm2R54xD>dE@LaL;Av5+cl;&h6I z+3nA=!}?B3GQ0iXT-CnhYP&Vj&=K?H7yvs>r0lSM1%SZ!dH`T*l+wWWdZ*Lr@?I9s zn*exg$WODw`n~mZ3Qr2DQX$pw8l6fbR;zEA-TrJacmRM80QYTtGbvY+|1CSqGUoHL zZedPKNM-N$``e2qNm3CNQVsJLO4%P)}_&IuAHG zz3oq@UrrI~#*NcL%LqkqA;=w%tYMaX)+Hir~r63+5S8Na7|%5%}T-A_+Jb200000NkvXX Hu0mjfrZ~D) literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CURSOR_H.PNG b/pkgfiles/USRDIR/GUI/common/CURSOR_H.PNG new file mode 100644 index 0000000000000000000000000000000000000000..a11ec670a2470184eb7da33fae05f073e0318596 GIT binary patch literal 251 zcmVP000XJ1^@s6iuWe-0002ONkl-}~dZ-PdC>5(8mYtX7V`f<3 zA8}kE9akvF6{_Pqbw9EdaMC$DuHcRcC&_`|LQQ~~dm&|6avblUppgXttd8l{7qck< zU_69s{v6L=M71`&aXV2l9~p|0ykZExn=0E*%QPX?i> z^kUFXvUKA&0o%!-JJDKm6z$qCzYp>e_}M@CR<12)mR8Z=yAJ>W002ovPDHLkV1ip* BW6uBp literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/CURSOR_V.PNG b/pkgfiles/USRDIR/GUI/common/CURSOR_V.PNG new file mode 100644 index 0000000000000000000000000000000000000000..9d2bb9d41d7400bfd6bb67531e0504d9e436c363 GIT binary patch literal 259 zcmV+e0sQ`nP)X1^@s6=d#qc0002WNklq_3uJwdQZ7YM>d=>);CmWoLK)3SX3Fta;9 zFh!mSBTs~hC&FkDn3{3)t~ z1IOs})<(SBOJz(BBC3C|1Qmd|GXPqrY>Z*8(_zu-1xKg5PcIA(r*+`f5ZC|!002ov JPDHLkV1m$FX@LL$ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DISC.PNG b/pkgfiles/USRDIR/GUI/common/DISC.PNG new file mode 100644 index 0000000000000000000000000000000000000000..18ffed1a750e5019de54b85870c2ca20250b4da6 GIT binary patch literal 3657 zcmX9>3pi9;|6Y4;#tddE27|G6aS2gG7n(gOq>CZdbW&zWNl~Gbq1a>G>Kqy6lfy|v zQLZ5=T^J!#@zEhUrE(dfB%yIF|LyJ%mg0HD6j zb&Ds~BMXg8!p;T9PJh5U)l;tfLjj;JS!fW*_*(~iNI1&b$pN73(z#iWE7(2k=jyo= zfQS_Upke@~=dpeWfHT$reC7kNAsqnilb3xOoUs?xY}>-|3V-W6H$Ts=b0q<&-qj>h z6Xh`z<51q>mBvv04z7|7M?wBpvb+xe6I(F#l?%)Vm=?#QK8Z;NT1d zwlp?2UT$P$MD&C$EG%lt1a87y^sLfy9XRwj{QL0h!hPRLd}@A$y(u~P2HkvLG_`^L z5#Rf<{dZFYcx)t^;>*lvwB$>V9z810&(Dv~$;n}wn3!lUS+WGbhBR&PIr`KNbhIXV zo;y1E?PJY*?5bm^?bgZRuB!2ot5!a%@c+3E^*(BMg8;Op7)VrnZKzc0r_s?=jAYUB!m z8-nMCjB)Ga`MK#OM0~^i0%=Wu>e^`FUM9UqzDCMbF{q^`pcCzEY-zDFwX?G$q}Tk* z$?EU!27a*Nu#neO=c~WIL%?brfG5U4DwA&p6sP%BveCXqnsxkG^ePOqId5lX8k7Y5 zlWJ}fuXrK@(bWENJx*smm0djx5 zDa_BBSANx7XN~CS(C5#7`|u?6b9=sx=WP>4Ns+0UALi*K;tMQ2tZePSCXD2Y; zmanPF+_rtY%A41(^sT|e=;&76jr5Isy}TYgfAL~v%wp~jS7sOB7)n=-P9AWr*)Xj43P!e zFQlvgA>^5{`Ht(Q|C<%Eq+E{^OsX;%ObC~HYI`361p1Ooo81@4TC;q4J?*fy#Za9C z&3u?d1yw|au>t{Ay7em4(4e+^fYv1l;K-R)>qMPvY;4-J0>~S&(Q2^`b9}tq4BE?e zdS@~W*Pt7YbxuGSFrzy6?%lgp85tR?nye)pxiG2}r&t4Ztiw-33T^52$0E0|S3j^N zJUkhWc48vXqbx~6Z=6XDt%yd08QWO)>rR#n(fcww>G z;ku$mt+dMA(#q-%$$W<-GEBUFsIQR4i9)qLz%|g50CLg^Ye0sLZ>}og@cGhJ);Dzo z@84yoPN@1516J}0(~GLC31m3EC7ko)W=Tm2K2}mG-l3a+Okh$`ND@_P-N1O zl2Dw#XR3B)MCzf>-BA}`j)W5MNLy49|3%{FR-YjC;s$QXbKRGpb2er$N03Qv`5i>Sk?13! z3@Jp8@U1S=7`=ma9ql?#aVsLZO*QAH$AW(UUD@@i<+|885E(~%&yI9WR~~;;61h8X z$2LMoTaLVLsM|x2(j^+!PRIC->o|vfH-U19drVHQkQh|i=I!lC_aSu{%} zsqYTx6}M&&KS9c_V?gg!cB}j&_TJ6C;TG#}F7e^yvzDvS5v;hb+R9pwI8EBFJq~m} zl=-Oy9QtNTpO5W*)4Hgu@ZJ5BH3<%m&Xz4Vv@gOnn|E)*BVcupu2#;FgvFd)LTBH& z+Aov+q-G+Rn1%a*bVXEl!n(Cze06>g4c$$kd=Yr8>>nD+kKGjQnxvWdfkK?tk`o0a z6yS*9!7AL|-RzXi+wDz}^5U1>-Fy@NT1~aoO7SH&N?CSPn!dxye?p9S*eYOAY5&shJD$noolx5w4tJ3kRtp3?mTMKEmQJFzzXkkj?v%AZzIoL$_tJj~ zv?&L}zH2M?Nhh2nOcccAqE}^hGxKlm_^|OCoHaU_;(mibWs5*0VwJWBM)|#*#Tedq z=a3_D=EtUrVLzhDh1ly?{!LmKs4HQ(V`^prHsQZNx#fQSSH#5N zD}!|7PTY#XTeyt-cT;=~8Gpgbx&+!u=x6w%_F+*zkqq+yTClm*tvOky@%%Jz-r(Uc zQf@tKWm$4F?ZEwDM~&1?aYYOmO_yv~ep2dKeoJOoyG)_A-^t8eYH}W%JXe7wx1X9M z_x>qN-sBA%P4}Y@3$E`g{_UQ&aCEVdeBAmdQE`)YU<*<21aVsRwqp517N(OLXie*) z3~J=$$oVs0I*MPG3M_bT2&+-AsEqce`Ms0O}gu1QD{(`0U1clYkd7!$Imgj!G zS}#E6F5#3mxRgFUY)!(AMHqEXs{1TFd|%W>39*rXMRHwQ{Iin>B{prbL3mz?fd`kDuZo0yx>JKPm0s*%aq#eT<&kVU`MaSIHwS#`L*Q4{;;sH2Yr2g2JNq3pHU6U zczTaQ5cZR^ckZ@7`Qh>7Q$0`d`%1jm)0)3bO4n*X_orgsy8IX=mANGwf_@XOID+jm zgeHcPLZN&v)p2o$>PMJP8U&sBTCs|~==sm?S2tX&Hb1(zPg?ftde>7e7&W!bD>qnY$|1+*#GomvBWTrjha7(zrav}3_$1=Tz{4|N zR^bXOO{9#Kn$ae2`s529uf3p@Go)Lg+?5WMPY^1C7!?~buOuWSEUGYe*}s4PW-l)< zS8s1`Tm@Z~mwR!k9w>TvNF0CDr~2G9u5&QrELIrW(pLxgFEwmWQ{KWt*4uTnl+6F$ zaQ;ETz=O-sCO>hd0YS>sXPUxx0lTtvnf&=u+gi@_lpfx#i*& IoB1*S2kp)+<^TWy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DISC_DATA.PNG b/pkgfiles/USRDIR/GUI/common/DISC_DATA.PNG new file mode 100644 index 0000000000000000000000000000000000000000..0168762e6fd4a8fe0c4209a9e8d16f3f0a9b7664 GIT binary patch literal 3743 zcmW+(d033y`#;Y-v(>CAty4WpX=N&+-j-+5sxVTiw=mUU5F&cpp+Jgco-#BbxQ<^WK6Jn8qkJmnmT^!8s3K!OPX zSSkRMb4uS2zyUS@UwHsH<^!O$CwKEBPXOriecU+#ajzq$=jL1+y@>#7YGOZxP*5p< zo#LE0E`!XMAoje72>%E^|0MMMA?hM(kx~3%zx4CMDCVd&(-j{10S(6^@4qS(6Qa}K zVKU ztk3J7v;oNd6zHsr*@ly!NJp#2co9fUxVBDD6~iG=Od_*QY$Os1)`i;LfZ&*v`}b#} zR=uM$Q4NB$X4jizLizw~J1B|Q)+#c~TyP6IOH&0*B7qq2z3IH`p%J0^M~%8mFV5U#Dt@xy3O*<(C>livXK<~W*QFhD&T&_O%jyH2cMn)D zmwzOnTgi95L==Zr5r&~+gaoXZsCE;P2w=8J6!D|kqD5Dhly*W)bRj|dxvj`Vc)Szr zKc=(q1JMpXw>s+mqP}=0W|GLHsZxVuu`MbBBn%(1hqr6^WN@PLoWuC`YboW%V&mup zgAJJY3NcB$$WibhQ*8xeBWhNHOQWz3@-WuhhC>aym9sc9a=~AEd36zA*pbYWSsFJ} z?b|PIBkbTq!6TWU618a$Wji?LkgnjD(EP#a{F8u*;$dE625lNmW#Fvk&7b1KY`n^P zj4wH+eLBc*Z|qn=T48k*4Bn;s>C`-Z`qXf^i@-#imZo#E=?9ZqSfM4E*Q^jCGQb%( zyQ{11xtk}vg})spCwzQ_E^tkXh49Sxw!E3CpB^X)zaW%cMJ>qoi;TP&na^@G4Oonj z@O}(gqe44>T1R}H+YOWGCwoVYQShM^H}LZMe{e>R8V?M8^c}DD2a6qY@0QC;>Aq8v zzMS{BiSfF1Jog(G!m$m!APE$dqb2E50__)PbsjfxJ=`~;*6E0)rRbf1s(p&cnLfJI z44{?SXN^QVNg|erSRHz~*VYihBt&W9vYipa!YI+GVM6XgjVF??N9W}jN9Ko$oEaCw zi@lz1k_q9}`k#M~5BfH3WuPFOFRb4A>K3rRhx2p%+Uc~m?Ac16{+#0JXSuekCZSQM z8Z3jLVKspM?1sKR!);CPmhFIWWMcxLksj4M)^s+$0v8tE?Dd`UexbWciQtgO4NXo` zum!lq>76&M7zcQ!`f1VH=AiDp*L4eOF0M4|ZY-3_ioMp1C}`}leZb)fX!G&9LqRa^ zE$RPGSsv)>>|6s|Z)tuZ;auK(AlaLS><7Mg(K}cdyFE2RJ(P3QvfAj3K2n8EESIzF zw6wJ1vXzf-C8#`4Zu(Zs$}XO(tZvHM{sj!L7q3KnlYfYh&&MSMsK`!cc&J(tkTVKd z<Ni=+ceM7RY(8;?>Q~ z_v#PLC2J}2y9L7b|FyJSr5-a`F4p^o?(X^c5tm5p=;Hix+V`zdkkot3+x+X}JA1ls zCnY6GGn5!O5t63HeC8{FN0fm{^;F}-xryH9oC0O(x*Wdd2NH%}omsN^23+teK0bbJ zbaZqnJUK0%#|k3ys`Tz3$Z|T8_Kg@k2~hzdHa3>qKCbCaN3dX#+Y>^TgHKCUX9x1n z#*(owH#axb;D&bvM-mlW(LladFk$v$K98-!Zo zrg@oINLzuqEtUW!dBg#bm*rAZPT#Dqwb`5=ILgR>YYIn>5UpHc8+Epi9kd>=$9__Y z({I9CPb9_v1=dF&sy+y$S1|?cILZaz-=);P%?jE z-^o7jwil_=PAB4R<|c_yz;lpJ5BGY}c_C6&DwT^!puDL)yytTdo11?bYLKPmNz!wQ z-wl!w`slqq6t25OUK*-ns^mmj2zrF;@5Ru-9iOC(^_U925+AXRZzK4EQ5~5prLP_g z3x#65AI%;u{NdUpKP2t|0ly6SLdVqqDU(msmlgjWmNHmeiBW;@0k&ws^{X>j2;YQ#{e9;j>@~_ zS!8fEWQwl&8)=3{ZS7oLUCkOA9$eB=^faT4nT*0=!wk;W5=Lf8v*Xmn0!PEobS81@ zU$vVdT-N8RMy?l@=PFOFP;?P>z^JpVvFG2M)du2WDBqPdll3kv8 z9CT(qJJ&MJ1i@5<`b!@s=@o6_StF``v##OQAlGGqs7@M%rvv}LOB7e}x=?fjPMPQc zD;d$(cAV}TdmBCWIRMiR*f&Q?Um^MWn_~584#3ipzLvc9wzjr)TcZ;a6CJQXu`c(= z2JR`c-4PXB08jm*!cLZEL41HK=W-qk9=ZYrQD+`Xn zE~rupHHBKyApgEtUG&@V<#HyIDFFr0wdXuzC*+tVklXCj15Fvn&861@l_1fv(av1E zeMeO_b36Uq*qN2rF(NjA)2vX;i@7!E=93u~;O|Mv0yx9q9E-CkSoM)YTysS zt}N^f16JeDuE?JyVzTcU^qf@xcW(T@l+i{;@cW-%+9q7R#<;XD_N0nm(lxi};lurI zz2*0wbt%#f5-c7pM`0?ao}8R~TDA{BY0ucCAfG&xrq%b5@FtFBW9cG)LQb-iDumf< z86##k_IFB1nzsS|g>9aEMj3c#f~hZd{Zgo`Q9j`rEWaz||1ud`ef2|Vaw>~l>rdUE z(x=M2>2?Q3Fg6Y`H&^Lk_v4m%liLWncVA{|9NTm~VtuO1`m`G)O*JW*pb|^KW%(sK^>1k=lzl&C^=$v14 zPI>*R7&^5&O8j_F=c<^bbXvWEQB5*@V-|m7_)r*aY1or3*wsnOh#%8YsW@jLQEu+O z{^lG*>snKzN|OU)FD|61x`wsrbysNE|3bE@^o8)nzd6+&`t0$WA4V3TKrPIqhW8-F zT3XSQUGD~;%ieR@z3gU^Wg<$K_3Su%2$T@ z}l29+Ee1{JeIOZaZFO6qz5ynTItgQapkZF0`DJj1%wva}ua2poBX zW{Ukkod2SerLsA9nI8s>c3ib$Grz+W_2uFZ49TZ$5&k%bqgLLP@b+agYw?%+jg5`x z)q9sKcW$p7Yb~(bB6NPdOKSfwz2v)X!V9mj7VF$54K_O822P~D-yR+wYWIV65zPDb zveU)Iv)cLdqJ(jJhmRVW5o`S+f3I!Mq5=0KUpN54WbfHFiR0gNc@6h*+Inw0JvX&j zTS}_!cs9okM&(=CX6Nrbe*8H0L@xsa7X(jQkLlR83cJEpnMFN?D@?Xko0Xi{SUOG+ ze0DHYOxpELK?qiMYx|Cu6(KrSR#x%SsSWD)Bi+~R61pU&?KTydtPmAy8ydQv@xKG( znSpoOAWDk{58>lrIKcbXI@^{bCceU&wvFKVf9mS$THOEda`LkCq!r=#V~_Z9k-gkb z{O$saubCtc;meuhE=Zz_f)G`~+qJ4P&5XykjDRjJ zMF0?d)($w*ow@tmJNmagC-J4<$~Ize=??=ES*+HO$U>yR`b{D`KRsny*-Qc-k2UT$ I+;}Pf2UV#w8UO$Q literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DISC_PS1.PNG b/pkgfiles/USRDIR/GUI/common/DISC_PS1.PNG new file mode 100644 index 0000000000000000000000000000000000000000..981af1e9f299474c5940acc4765136009b59966a GIT binary patch literal 3852 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 Ee+GGT0ssI2 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DISC_PS2.PNG b/pkgfiles/USRDIR/GUI/common/DISC_PS2.PNG new file mode 100644 index 0000000000000000000000000000000000000000..0b0e80102087d7df0930c21e37e951178bb76a6f GIT binary patch literal 4929 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%0DYOORSt~a_)5_RGV9A%waP%$? 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DISC_PSP.PNG b/pkgfiles/USRDIR/GUI/common/DISC_PSP.PNG new file mode 100644 index 0000000000000000000000000000000000000000..6c2bb25420e18ecb52d1a7e9fed400275eeeb446 GIT binary patch literal 4111 zcmW+(dpuP6`~RGC=4Q+=E-`N7q-d;(5fPztQp%;8T%xiyZmp!k>f#b-3`@JkXl-k| z=(Hu5)K1!@iy8(^w4v`Lm5Q38n}k#@`Axq+KA-1x&g-1d>v^8f^Ss~hXTNCm3O3W6 z2>@XGuUr0(8C#Ef2mbiuwAcJ6bPjglUlr`Wqj&hZMk5&L?{|JqgUJ)Q=&d()vE2fm!2>=SSXu#e0k@dkE5gWpbJ757nfe8)8-qoduP6RD+fAG zm=V0FFJDLJ@w*#Gf`Wor3gbq_-Me=I%atbH>pcANqr}+|r&b5Z}Dzg+qv=q8)`H0_Oz68DZ%?Tyja;bH}BRAPv6jk#zt zxo>83L;9s)9G`v2G8<4hx1pr3BXLpW%UiZ{=Z50x+92DL`kSapPiZZNs*{7fx$d%J zgj!;bWs16qa*FscLT56rr;Wbi2^W@b+q$)3c8eYXZ0rG1_Q2TGbP4SM1j%m9Sy4zJ zAT$CB%#^Q)dUf(>U;;{3Ff=KM){DvJ=4M3|6q=NyA*h-PZ4GSP8Xq5N+s)G+6HBc@bynTXgiq0p3}!@7d}s{f02moKHr=A}h$m z^E&Cr;=jTV6U@aCf|&NvFKuu%sO3exiwQxL=w+{rah5 zt^t^_lUc9Ld9=N~eVoiz8_0$v@{sAn=u~qH3oE6j)A^*a#F8WQCQWQuOR}c8k$kCI z(nb+4vxhH!Sdf`TVW7vLq>s;+uMyw)mFCem+^_6|^}EfLe`tzh=npT{d*wQ>Kt>CBA1gq{%-xw$lWl7a~A*;fv%)nFh_-PXtP{%y^0(< zLe!zlN4#qP5_U-2=4gzeRaaP>Z)Q<1n-MReIi1$J$$#l{un45@&Hb~-6>pXs$D)GFpN2jfCX z-=@-biyMyU-piaA+bU{c?%3Yn)~<4`yS^siby3+WnYaEZUvN_z&GY^`Cq}%G;mE}& z@Pl^Z#?pQ7dYtuAXS5+`5$yNC#q!}k%EImV_6*TQqXte>SX;=&Z3laYp)R>1j|$E= znO?Di+pdxXe1C&tr3SR^As=g95JXfrP-M6w5p=T>A~`Sc%oO=)-CuP?XW8m>B+fzP z&xT3AS(Qhqmt3$IIyt4={#kA(OxarW)Q9LoirTCW#JcK`Q6@`x#W zLgQe3C~2tIV~_YJ*z#o&&l_HB819>2y2Xh_c%84VX6`uGc(qma1|LCLi3w7~%C!(A z^bqNXRb~0?zsYORtEjOHR1WQ{ub&_77?UWr2Q_yatSl|-n#K?cC%^=x*Bfdu(LH(` zr0Kb}?$MllH%HXTsYASTX9rnXsR9^^^Pc8;gsF^aB%&I zGGD*1i!a+u8f+*`w8nt*?1L|yA>Z4S(>iJr8|pR;n5YlP5Y<>%SV+ vv$rWI<2 z9;I}k>xpy~t96B=5%wPDfcp&WviXOe3&_w;0_3<5Ut7$%OM5$SEUY)cE1PdUcuKEB z%~DfS`9E0V6WBvqC`ZY}GUu<1O&c?Z=F;0}icl4mMcGzr1t5w(5DQv}L)QF%v!*Ag z*1K)${ws{^lZ;#}E;eX;CPB|Sh-I6$xxCqtV1V2H2%Y`#ulGSD|Rj8PkOP1^&pSB zU(z~U<&#ZM)fbE>U(vNI>`nC>@+BS_lOu5GVbBiTN`1cnS(|I-xn{*~RudCTSaVqt zJeSXrS!`1ATDy~%@`CUo6^|8}Kk$Jpqb}FupR~CpOhL&E^NlD0 z8+oALzu8!zSGN#BKNDX1O{(KAk?X<6Kg|!H>zdZmw4i6iB2gx>1P;EHI@l1js}yt2 zKh{!EbvO!w13Xj>>$!k|nk23g1;e001TXZ&jAp4RB+OD@^tHB}ZP(JImIP!+6d9Ol zX(*+2Mqd|XzSuM9&u-X7JHkF=2Ryi%G}#q&F%Ge+t8sf+9ZijjFycPOm@H|VT?Cj~ zF~Y^bY&uvJkL?3vSIat^ZEK$C1x%2;-P8FYFvg=CG$JPEk%pF%DuU9OFfYEtkO%(%YO|xHMraG!xtzCM5@xSr&mKF?d^>;B%`7XgUk~_{ zVNB3sSvjp|eiTqEb8{)ZF7h&K#+(XFb2}uJ_4Y|lFhjMs)LW~ca*aW@cs)>WYJKHD zR>-J%tHTV77(qOk>QT=nB%!rhCaGkr&aQ)|O7oM?i^{cs=|J z4uPY7`CFj9_FAaruLl~DXsb>wr=;ZM$vlI%^{q4+!gQ^nGJ`rvMh*3sfA+IoOiL>8 zvYXj6KJl;F5#B0G5sA7dh))F$hFR1e6~Dp1NviVo%9R(jg7U^YlnOY%Ncv{7=l>kR zFX!(y&|eyu;5NWrwz}szxA(Nu;%^fV*Ft$aR2`4aj&7)1Q&_!rZ%+Qotr>f~eg1GV zd3GvE`Cz@}Pw2ZA=X3Lj2>GRJ_)8E!Mo~-Qa#(|5dQoGEIS1Jzj7k*w&rW(L@6(5< zmxwA;l!h?*BJ$?GNfQAra9lO6uv;n%C!-ur$ew^&Be%l@TU$Zhb{47829XSjWuDhm z?)FXKSt_@HJ%aMr;bpWaSxl5~B-)WPVlTKPf$1fhV;z^#JLK_b7`=(AW04p zpvfGdD{_|Vm84?M(qpsavko+`KB#2!6P24($N4=X_w#tT*3+S3v?x@`OzrHMd&AB} zi-i3Ny@ac@4c1Ia|9hb_v6&Yb9GI2azExiCmKc&ec+lO});4F_P}`x6?hNQ?4Tz(1 z>|7m!;#YC(B{>dBT_JF7J`O>FY%;URa;7yDaWG(v&-)sXucq`P1XB zz~r$M5RR}tgs!fx^1`6m|5+)fwaQrq4V#6p1DF2RLeY`hrtpcFjqc0ZVwvZ;t@k_e zaQeux+S&z~0qh6$u>6%|au!O+kUqy7-zyFa2_qAz8zsK+#|n?Z#i9iK#0koB4uAY3 zyPHT@D87_Qx6@LZ3X&IfD&|(Es~?2upnj))o(RX4oyUJMEK>TsO{!A4n0Y}E+Sqn6d2hh-A10zh8D9ToLc5=2!>2<$a zxvqxZYy=z6I1vxy4T5+mAzJqtVOw+$#@cIc>VGxE6c3Cv<70mxO8C2AUj`k$5Ww-EANFL`V-?|_ImBLoJIFD}o z*?s5JDOz2mJL2ub9{kww<()R@zyEAM;km1gQ)*))Dbu5EVcUu@!rY%sgage~=iEgs zE$0@{cAfP%+R9a|R*fQY~TA53hX_m_)_COm}hO$UJ5toSvbtBN%-h~euE z0Ou_LfR_XSE1<&u1c0+-02pTjfKwp==tkrned!4RTE}*H(D%iD4wQi)wV8ncAR-aD z2|@#EJ3l9WxYsv?*Yp1euUDjs$FuTTEQjF2!k!epMqY|;

Bil`AegWO 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 H8$0oT*-eus literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DOCK_LEFT.PNG b/pkgfiles/USRDIR/GUI/common/DOCK_LEFT.PNG new file mode 100644 index 0000000000000000000000000000000000000000..74f719e5ff9a9c58533ee9f4430daad95ce5fe7a GIT binary patch literal 251 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hS|db&7gTe~DWM4f D9#T8g literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DOCK_RIGHT.PNG b/pkgfiles/USRDIR/GUI/common/DOCK_RIGHT.PNG new file mode 100644 index 0000000000000000000000000000000000000000..d4a530a61d5ad4f95843f670d2bf8408e7b028fd GIT binary patch literal 251 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hS|db&7?2s5{WBsxm9^rkbi z2prX8;85t|C5{kNx@_ZT*}#ybIAJ0OQv(AtgVz@hHBZK=i-49hc)I$ztaD0e0sz19 BI(`5E literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/DOWN.PNG b/pkgfiles/USRDIR/GUI/common/DOWN.PNG index ba0dc3fef3e1130316b55d5d9e02d1bb7dc18c8f..752de0ca5ef0197cc59e42a369a6a00872ff7fc1 100644 GIT binary patch literal 358 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?3oVGw3ym^DWND9DoT z=EaktaVzQ1|Nr)f9he#zl9D767z7-c-!U{WNENU%uv}=cW>9EgyTi!9X!3xM zfnxza6HBwv$NJn2KDCHp`m>^e2O-tDnm{r-UW|#lKr9 delta 668 zcmV;N0%QH=0;UBsiBL{Q4GJ0x0000DNk~Le0000y0000y2nGNE06P5HasU7T24YJ` zL;(K){{a7>y{D6rAs2rFMoC0LRA}Dq*iCB_K^%bbXSDRvqJ6WN(+0HkB0^C_>cvyh()3`P#H4RpwAt*|!%QGq)LNX`Y~}yJ z9I`CC`^zMg-GC%Xk|arzBuSDaNs=T`b>-csyn)eY?BjNbg@ZT#p1v0`s}OlKfOkLirwW-6F{_wfuzu#;!t z8+rirn^AlX+>d9bRV>&W9+$GP3Vdq9mo>f1kwG}#14F>mS>Sz1%lbYj6j z9NeZR8XRDf`0RqW9Xw%MeiLn7p1uQW{S?_889T(4_08h-FT+P4t5ohh zM}i(63V^G>Xo}?1Q%QV0yaSxH2rmM2z@;j(q!3lK=n!AY({UO#lFTB>(_`g8%^e{{R4h=>PzA zFaQARU;qF*m;eA5Z<1fdMgRZ;7D+@wRCwBA{Qv(y10?_;fSB+}dU<(CnwpwQ;!^_< zKsXJEjg4jI<>j5p$jCTFNJt2$I)DJeDFM`Ms3ZQ@&{*_~;g>I83~{Lg2q2sWu(Gmx zS?GS_akBi*2XuuaE_DC_#DYuW-@kw6>RLZI{wn=t;N#;n!=(-&fWQWLdV2Qp^Ybfm zb90Mua&o>0iM@OGPFY6vBRkL}kZV*_RaI92<(a;I{VMe2$&(j9e*Aa>jKK}o1&cyhhk%8eW!;@P-4X)pOss8KNKL$272G%Jv z7~ag7!>|mb7a)Kbpy_}Wh_iwC^or#iZ~p%i{tv;tK+N?2+gFDFPoFUSZ*64&x$YVe z7lQPF^a2DB*Z>#?0(Br>dHW{IxBq{c{{Q{W@c-KvhW{_0GyLDYk>LkWZVM1=A?pDM zAe2}D3fu%n-roo*I>MQZvo@~XeWl3K>4*m zye8U_;pM?@#{cRv4EKS2HDo;i0fZg~(So&(wK(7*-ZHXmJv7g1)6uYv3o zWIX@@gl<4O5FY{JAY^fIttMwGm?g0000cXd_SZ3F-L5wv5w-BxiNqpoXct)Y~9wrOAUyZKKk1*H_El-t>C_Ny0w{eG`U zqY)caDfOvszUJ8D@rd1Scbm`WX&Zomb~KX+As~c67>3U`iXuc&ggB0oBngrvL7Ju* z3Y9uGj0LEol}&laZM%0Bav@-)=WZDKQ)lUstQu9}+@40W_1D zAgBad>*p96Tx*T0s*vY7ilTrJ;%%{5{O&A4GYOrPf-nte8dYlzDJ2ev1In_*<#NH} z@pxY@mnTk&kOF8X7eY8`rT|Terqe0nI7U@fkW!+mDwJjU#xW4uOz3*4M5c62-()g* z0?hLqo6QED0C2%*AD1;Z=2M_B^ao(`ggKUGPRCFnoh0De9OWEX4xBdt+uFB*pNRnWLQZ1C`HP0%|rhFx{|RX7mPNR<|wzILawFZvbX+j$%#{N;&5fFA2EdHlww% z(@TQ3qQi}M8MHG1TJ^YzIm33@xH=^^fNKPNngD hbPxpIAN`Y?`CknpFFYI-fSCXQ002ovPDHLkV1iKLAm0E0 literal 149 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`F`h1tAr`0KPTI)Z5WwN`^VxgW z)f;abN}5GE^i)ONsE}oplSw?G#-M4QlJ?kuQDHrc!tVvH9xJnMPGc)MkuqC((UHk> x?>P4B?6G>pZ^6j0K?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx-l>?UGj8s45_%4^ymM7`@`gF=H_4bY+s z9sCRp3{oE%83Y`Z?SR@dj<5qAiBEA7qhL=@&y6Q7jWfz;{P=7vu-{djg_o6qML>B* zLdua>H*KrG-C;k;f7OsV;7HSk?(S}-Z4QjTUh6tA9At8Mcw=L7!ufx{zw`Gv=7fcX zvFYipQ?fi1iE`;f(Tat>js7gPoJhfc=n8~ z`|(M=X0`)C+8RRp>;7_mv+3aV=6wP5PXglyNfD(Nlid5|_VO>Xw6v6*F>@w+t%5@J zzxVg|e_+_Kb!+I6Ks^JXL%Hv1G0jSG&}3{$WHh+JsKMYM*S=F;o`FLlg5g8cDTWeH zK0dyJH-~weQu`N9V0Fl2-6{KoJ*TdD*^liEj4nY__{z>te(cu3a44Eh#=h>)zkYf9 zwj5rDB5RK1&(dpnKmmPUh=oI;DV2ePKa`=^exDII#JNB+@ob=Q_h$q}#A$HoYl0;u z!Epc#$O|3%%%GT94wg&>$A<_=av#{_`Ai_m>0tfAU`deS9$t*jiESMr=1eRC2aO*5 z{{Eh)rl#h>!e+$a1Lsd8do_1288rc)I$ztaD0e0sshr B9O3`~ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/FOLDER.PNG b/pkgfiles/USRDIR/GUI/common/FOLDER.PNG index b59f77b394439dac8e3cc20786b92cfc156cf9e8..1acea4223b6622c3d7dc3b2bdb6c484b23d7e319 100644 GIT binary patch literal 1609 zcmV-P2DbT$P)-(f(lJ;%g_%@goOw&?#oMXPNl$f$#f&A3*uy zT(voVA@60Msf!Mt*NEK2Z9EaL{^3@hc8{we);p7?OYIjUA#W0W|tRM zo-XbNK)&;*gDJsou(1E5*xRsn;UxWGWMS`pbo+bAI(rG-4->*19`b|k^+DGX)0=p_ zjy5BMYfk|`xhDYbhP$_%7!qn0?|+!QGsmS1FEg86V`B97hP%{v>w#?yIF4`Gnlaw&V$m4RH*~vwvXJ2-X>Ml8CobGG z0I=R6%aHkbyZSV zHQjEHZr&kkjWh<5lgk#9x>L%#X26^~XA1ZXEMRUlO+##IEH}{191Eu00dmY9XAIz+!Qy(OmT~N z3j)hWoN7SEFm7QpJ3sa-MPEdziVZVgxjic|nvHd4oQkEwT=VwQ|&ae_;4cOEd)#J)T3 zhFHX{LELf6a97L>H2rTLFcZuy6*O?&gls?JS=bc=IIZa-t~F?l6LIUMl$f@6zhyvA znyX_P5riO%IGz4&6TSZkw-vWk#1r*y6=pT26U=6b87v)BZPO6jbLw<{9Ha3nc{hCS z{NI20-EVyLvB90Weh&bxpy{F>@mPVDSko}s+@!9G1XB#BX&Fdh%_`g~+zLEyl6P!* zI5&LaiEn@D^DThRj#}@^fIH@fYXog@t#B=g&4A07t}+>~lL=%Pg5e&)Bc?Th2Ga`H zihS-6g9Bejuq_yYrrpMNk+Gev7{k3u35J~ef zR4t6hWp5jR2FQTAHK*-hAP-`V>P(wrh&Q+z;!UC&X_*TM0Ynm5ORd?wA;kd#N*+=? zXGQF81F%)N+`9W69#~x2U%L5`=`_QoakNfGYa5iK_^pos8BTf_xs@WEwMpdET15t- zEMvFTzu(rXTL5t@qPGCZ+*fJ|-JjKU|F2~;FHqkKxmy>J`;f2~vH^q)-;%MFu5BV* z9*ueB>^hwsX`=RkZd;-NrmYlyXAFS@hrYRLmVK{o_MB83N?M*>#^dI1XHKvEZgj0V zI-B&*G}RL3E2w-3I!k1oAtHu|vC@B&&+h#TqZ?uU_s<If;|SeH)Yc`FTI|$%mF#Ru&%>&mSx62OsU^5oAKB zn(4_CXMg_OpU%E`>dhis_gIQ;l`Z2iP<{!lmi1H49FdF>aUUVZ7OUjVWvA7AS5|2X~)2~Km2pH_>$00000NkvXX Hu0mjf?_maA literal 513 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/HOST_ROOT.PNG b/pkgfiles/USRDIR/GUI/common/HOST_ROOT.PNG new file mode 100644 index 0000000000000000000000000000000000000000..f59ac43255c46986ea4ba9e5bd480c5bbff851a9 GIT binary patch literal 2117 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 K`gv+>`hNiES^pUT diff --git a/pkgfiles/USRDIR/GUI/common/L1.PNG b/pkgfiles/USRDIR/GUI/common/L1.PNG index 719870944de516e99d12814d342bafbbb2b7af5b..5415c6f922449793ca9485aed35b1888379ded1d 100644 GIT binary patch literal 1452 zcmXw3c~Db#5dOU+yaY%fqDZ*p1?5npCIKBI19^#{(4q!vX;5rput9sGwv~dA7b2IS z26Qk%P_(sDR77bzI0HEfkuV4Zr52SI4;+P})`KGu^7@!*|JeOzc4lXGzuoUEm2BC> zaPxBm05B30;!+4i=7RUO+GQ- zk&%$H8GxJ+05A;zcAUUb0KVY@FeV3Jy$%4MuPSAhjR3d=C&r1kW#3mga9r4qk}#l9 zu;hS=l3xN0_+?Q6#fC)#1cQel07X6Y05oLdvbB-SW|Vg&VA8V$M_Py;`r=t4m$2%AzCCUS&ALD|46H+KdgT zE&6jasDeWes2QgZ)uach#~NjAIfAf=$T=@78$gu(p!wG`KWUn@Hf3mP>J~Oz1h3k% zs_E%1gv#X?Fq9^nmr|jh~I93)l0cJG`xrYEiH0U^R?@wK$96U^>re_!5yaV zp0{&jzg&X)D|Y2Vq$U(j1O><<7iz**+p5*K?PG>x_d?gm(_8J)e?5CJ)Ea-oDDXP! zdSTn17ZdIE`^iB?sC}Tq&yl-D}QEjdVx>8B%T+)$TE-xD#l(Guu+SKOW zj;4&h{Q9RxUul}&H=j=)l?ho+#|+scS*x+z?O&s#3MnlY)%3-)SU3wqf9G-?)JqF}7Aot*dv{4vQ{>Y#6A|rqcjo%)Fy$OM zLo2|s*i6Or>$lYQi>qaXDG^=A0{5v_Qxv(TdBs z{Dz82ubTC|d3Ui=-Yqlakdvo8&wKpn6jthuDjX_)b5&+Ee+rRkJ$;LE!x!^dDEhtz}f#I6>6)>SJ^|IfDaw>ScbU-rjIgPI?D=RY(cal@Y z{7B8HyH6v3s5RH~`Hs+Rzv<&u8q+a2niTAu@(d2c2!UP04)hGGhH;0zr;Ea|u%vYt z0$b|UrrfC@-k?+;*|8BOy9ca=B{60<&d0-sSrc=~X^7_#a$L~s?EO{B89b<3>+6e6 zau3Z-GPZd*z;YKFqKyeS|M>Q-J}qtKpj6n9OtZ0IAJ29DBA*LM#w#aYdUmzUf%2R zy=$yr5{w;A?c$Kciu*|%&Ij0s^=ob0AYI|Z5_#Mef5|jTZ+I~{sP^{YzLVaQn)^Fo zhIdv%lS!*jqKB*t%vYZS{1{sq$@S(5+& literal 1769 zcmbVNX;2eq7!CpjL=x?pl`TF^VFfIE0BsJ$(~`9Om=i5-U_oi9%CGP>Wy!2~Q-*<+`|DYpW1{@LxCHsjUi3 zgh7HosDk2@VzeHSo0h?7?%r=mr-*vP*rt@BMG?htAaR@=R3JVaCKmmIm&haxF45DK zM)l+p>0~06Mk3M3WEOfRQCwNh96Fb`%<(QPi-w{pbY~*l1+4^^LT6K0ESf8gLt*ns zJThq+>!VO1B83=Swkt#JE@3I}#WFmVpa_AKfe;k4+yO!vUhkuC70nZCoETNyx99o+(*74UF@Gt3^y33 zN$uQ|vtlJtdnFS4!b=pRuNXaDjg-l67V?wlatgX5i$1-(DqKIGbSH32iA(SYL#&$~U3&Ymlc9++XDC0gn?aVClcYjN$9esdqbw950gyICD(G898i z9gH$OJ+uEVjlaf!+}So;L|cDNLOvVnA)He$UbG0;#xJZsk#-|b$t;Ai-&%?=TkYxJu}Hz|(;5~FJEx0+FU%TfpC;Y9j{t=NPiO1Gxr)K4W9^cfVX3yG zpkXYk_Ug2fwb}CciDymv6~9*pw+x@WegEL+04B%VAS)}&u4M4L^dF4R6c%c8A^2LwImm zMr*{n?6A<#ZX*+4ea9hbUsBeHn{DsVd|hHt&!9!?gUW&JUW|RWYwK(R_%`@lUtz`Y znUue^T5Z^HPh@qcw!Z$eQD&E6YV%2A;k6(846auuPXySb!|4Lj_uw%Fx+{`j|d`p=Zs1s>WUoGD%B2DA6)ud?R$pU&%? zHmV-io;GLtg$Y9~ag&XjHcc!pWZ%@_w$cpWl0TE(ZJ)hJIrTl;qJ3iZz4pwe$7`=< dj&9KV0K-0ft3B7r<`dn|$A>H6l(WMR`~z;(z1RQ% diff --git a/pkgfiles/USRDIR/GUI/common/L2.PNG b/pkgfiles/USRDIR/GUI/common/L2.PNG index 2af234ab06d2f836b8fb993812e6b742e1b49d47..c8ac8a7cd51d500f51ec1b7043bf719752b8569d 100644 GIT binary patch literal 2049 zcmWkve>l^78~%KU?K`$HQw@hrmh?6?qeWt0wpbmURbIbNh1Aenh&M^HuT5)0lUE2u z<(x}#{OG6BXZyLsU2Y3U}crN|x&VPMVM2mI> z0Fbr@08|dZl1|T403720@IDfNEhPY~N+^iv@CATye7n#)DD}mDjZVjJLvSeAFWm29 z;A~>y^0f1j6wwgQ>STrh2fqcuPM*6x*Tqe(D=>dus!31R%*@P?*lae*zsH}{FFW)`y)J;Ad<*M5SQ;}Vj{e3R7GL;lAaOFqoYPg55$bV9sdgsI==k=S+{%G#i?S1 z0>R9DgOWRQ{x(^svv@9zHq@`n_c3InuC+8M=+z37O$DnZt$skFc_3 zQf4 zGTJbAa6RjDU(lMF>JPES_bb$3Yk{{p%7G1bd!*fFOzCuzD6Hy*ZPPfmLBJB92vdm; z;1%SOWOuL8%Mr+&qu&s>pe(Tke$cz7f%|J$(?Vw151+ao-f6B$s0X;UO;VjU33nt0 zOu%AC5JnQ?SO4OZY+`ROvSCdjNoGQZ(8|ZYojRk&#usRl$|n(OnZT0nG{bxYa7v@v z4t~y*?Cx*;B36_dQ$^{38mYXK9Gi3|*2@SB`Y98J9Lp=qz<@ z0&vxI>||l&nKOW5Rn&_DCd#w}|NNwu>aaNIu!TJfN58VNj6UrmQs!_EkKADtxLwp{ z9`v5Daugz7s%$ul(>EYVUH*&QcK6a(`sJ;sD9(TKS;7+Ri?k^wN^1Z!9ctr7`AOwm z4&8c^lls7Y_4O$9E3Um_^EH*78J}MpWm-AQMC=Z-=2KQ;ebi`2c1=v`$4MgRWFx1iZ0O18*xUBR`PPH6 zu!f+(q(Ye4!9jqtojH|drS)FXN_(r8!WH)2x-*@gr{-m2OF1E=dw;x?v$irbmfn*M zHm_Rsa(8F;EI-K=Kzd;m%ZFv8WOtwz<)WR27R@KVQUrT;*s?x=4t7tjWue75J@Asd z%KRmVS8lqA#zf7GsIFFMyn^Ku%geG*>&Ax2L9jCyxk_Yr!2x@a<)2PpB=L$Qq~iL0 zF`iy8=+Y5(a=0&7cA4CMpRMO$1S7$hqlOX-J%H~{-v;rKKOYU za}|qUVHo}fHIqm!dZxW5gba3A0=>mqg(l3W7zh~4?R#B94ew8aXcyEfLQ|>HCLd%@ zd;0qjOWg9WSQ^E~v&HQFEIDpHs2QCeNO0bo_7|z#L>rxr3$+3;Q@B&ZC|z--gY8yl zcRzpZ)$(J~^P;y{s{&*Lq@xM@%`)M(PJhoPMjZQ6{$yqM+Xq&7+~G zqw~=1797dac3(U`ZaWcAjiM?#IZ`ha$P`$FaJ5DSr;0p4xSca*>=1kZNhhc;ZONvG zL(6_Q2C)mYa0_%?3#>#j&N%YPP+JytPD5h$6KulGIkyN{-mr33!zjI&w@zm~(!v_hQr3a!xb zQ&qR2;}}0S845pdx1?q4NEZljjtkT8eo%zekKl&Sj6}$1@G$1Pq6&c4O0P$%V4bqO z_U@MUO8MrU7OppMoWGg{U8|;v%6)$)OV88lK1)hdQ&fL*eO9yf=egiD5AOloF<-4z zH$TB8tXiN|3ifK3b=}7CMJ+XwelOC)0+}Qv->piGkpi)vj}nh+KGfZ1=7+vds2t+& zQ)gVfl{Ta~%_QhI;8Oee^YV1@_gH^3Zt&3G4S1JUWIl?)ZNcyH&=S`6N;&mD!+A=s zO@V!7k#lR###j;ZMc%K~EJcsJ@iT3`mk{1;eZaj_3ZQo7^JBPe#InkUCa$%IAJi9V zTA9rq4TPK4w&Qwa%6;bcuHCY3JTEwQUOq=={+3kv;vP0SqSG!9*Igql>`{bkR!Qvi zA$&dA=Iose*OXM%TCHDSX4=Q|tlVpiSf57k2ScGNIW1kplwcm7N8#Zql=*>L_Th@K z!O%aTODRhW^^9p1!!yzL&=li9PLw`f^z2D7*W1~}yo{RjN+()m^xssAd4a$T$u;<& cCjsVw{coN*c)YgD)W2)6eOsWg&L>j#f0&76!vFvP literal 2063 zcmbVNc~ld39*0Jef|SZ7MIVeoQO?XvAeTfo7X>j918PVq5|SZAl1xknIed%at{f_? zrA0|-?7^-Fg0NPeToo#dJfJNb4h1R}YzeZ6fYnwGbtejT|M2yXoi{VT-|su$&*yu; zDTo%l?_lR)XJuvO5E;Q0;%lhov9-b9jKx7MzPyL=L|6=(jHOGoh!snQCLutiN+L&u zh(wlopaa1XgcL=r2ov#lFr=s|NMg|m%1~)=G)@+lp^->a5e!H|A8qft!yu8;)6;{}$w8=APJ-xkx`hLV196Q&U8Wk7WCW^p-pdSJ zL?_iMG?)Ta0~SU}5}JlFiMXe)LQrY={MW>4-BP0Pl#wzd8WI!)l2j^7TrahCm=O8h zjW=rRVly=eNr>psG_4e`N3!=a7|-1w8?q?k-Y|A*6?jo3N-io*Qz2?BlFKCGUxH)` z8G{FMs5A+EEEE<)@ zC9}h!a2Q&~Myhp~L@h;@?J97)OIYe3Vi_DQBEe8?EQ%_ZJ0Lm*#ZX-essT7L6krQq zB2}m@0$)pkUd78rw2Fg>EL@AKfR`C&DBj=!$fLl)TowgnFGUX0$ZR$nCPR1>5E&#c zVP*eM)=0QBBujhzPrEFO@E){mUpGH~cs)Ld8lM?0J{+Dp|I1cZE0~d7R&2)5gED4> zH_N4c-?ncravgX5%Wwj6+$SsZ&$`q1zTG8#R_XJk{V~=7 zJa^?9AIEha{daB<2!wOCmHmm}sSX*j+!Vnu3QSjL_#_g^Wwnj3i{0ogn_i0df^==7 zy`9~cpYPWsgX`-&y}YcS6%KpAa80(0d2H;WO>jbsO)7a})r@2O7n}PUxCH~(2?L+l zPogWHp4e4WF+_Mbr`!E7XR7#++pQxZi4LN{mg?$ix^;l2Gg;F7kja=Gj?jRneJ00WD9= z=G^~GPR^NqQq7tVK3G>j{P6yGTN_U-7SGq*ZEIV3Ex>7w(P)f~iE$2WY-;*@RaKzj z?Add@y)o|?`vv}b`C9{{n&?A^7Rs(%xdLZ5*VdN!`1sskTnt70?Nz3q*g=Iaa{l&s zbTlVCJba_1O(+sY9BeeAvpuTvZO%0vY{KW~&u>0gbbIn2Cetp1(O7sOv9PdE_D@ld zT8_nSzpaR59e(_+*_^CqvIGJFZHp{3Q@=eb>f*I)RB=Ll{HNNj$iCA~alZ`*l+h`B z>#kq_UKcHw%Q4)ibL)M}Vt?>$>@BW%VIng<9rv7P3!&9d{D)RF3-tIba{PB6Le+1Uf)4?iraj1dZpub=t8FWY^c^`-v#hs7)W+q-6Fz`efuva<52 zsi_AV@$ACx)nO^b!NI|gPU_p-y7P~X8CpMMs&@o^RB#$tTU}K(8(RHNLGUJf!rbF4-1?0}&9f;jejguxYqiz0F287bKBwREi;m<8 KxR=?9NB;|kr$wm% diff --git a/pkgfiles/USRDIR/GUI/common/L3.PNG b/pkgfiles/USRDIR/GUI/common/L3.PNG index 58c47be3c79bcbc343322591ff86d0b353e83003..cb9f81ceeade32c0e2ac3a2deaaf99e21f22f19f 100644 GIT binary patch literal 1725 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 P0000?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hUm_H=O!skoK&=l_3uW>p4-h8Y_;jf{-Em_KqU)G-}Z*k)q3m4WdHLlL798&j!5 z9ruy{7Y#goxMOV{7!r*WOhXPcDws7tVh-3?`r;KM6US^u`2}676OO1XNSc4~Dl?0K za+Lzp-(T{tOx==>Ffw&?Haal~IB4iK+;rkl*v+KSpi#!?!0^!cfr7wn=Z}stT?|Yd zwrmp~%SP+`Y5&2nkX@nS!_Edtc4<}y76Ci)oc3EfjH$_`Ks|vn+zgB^g*rfS<)t?z b6%H^=*4rr;{DfN?=q(0MS3j3^P6?0v z(btiIVPjv-@4(4GzCyA`kS_y6l_~>6Lo)-z&;LOBB?CjL0RzLU1O^7H84L{K`IF+0 zx&hVZdb&7PQl2 vU=cXVMjXLibxKJTsFZu=NeMm%CLV_RUu>%V=ic-JEoSg^^>bP0l+XkKcOX1Y literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/MINIMIZE.PNG b/pkgfiles/USRDIR/GUI/common/MINIMIZE.PNG new file mode 100644 index 0000000000000000000000000000000000000000..0757e06f49a96e79df36653f1133f070486dfadd GIT binary patch literal 262 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/NET.PNG b/pkgfiles/USRDIR/GUI/common/NET.PNG new file mode 100644 index 0000000000000000000000000000000000000000..6eab07727bb982fea9811a6afefe40c803906373 GIT binary patch literal 6428 zcmXY02{=^U|3CNM+02+F#?BZDBUAQ$yQ59ECZR#g5b_o!qSsRHjL6b5MbgG7+Ng#^ zS_i4AsCj$KJ0z(jr44PQ`cJ>-f1l^x^W6J9_uTV6=X*Zi&*yWC_#um^WJ59lfV$X! zeyF-d|C}U(`g-QCO#|viBgH>54FHPvpA!Oyj_9i&;@0wlc>px*&iS#lRDI80;~yFf zK$ZmnSRMeAzt!y<0MhLMcq;_JqXGcEjr&%2E(Ab--{Seau)q6ar+@$U?eHf6=q7Bg zZ(#6OGToDrhQ42eL~7LTZL?+nqSyY0$F{J4Ee>2HGB;&og2Xr%$44D2*q3E8<%;m| z$CV`|fyI0FETM32-RE2OpS9(*G5h zyaUEDW^$OPDqz&Ud-VPLv$0fMV`Jk7u~>Wp-9wQzHagfjIyz#BlC50sshHodAD9;8 z{{AI;b0hb+!}PD8ho9fxV_G$EBR6;I&A%tJX)Le5g`+)ZzhMEs^N_sR)_{$j(gEx} z6BZU01|Dv1LxBMSSt75y_wV1A-@0`RXaYMUT@w38MMVW)6J)Xqc$L2=C#*WYeSBuH z?dKFeA@Am@>p7W&bczAexMUfYjS_m-EG6LWnoJfd|KNuMmHSE85ab`+tssku> zMG6b>K=H5Lo(^t7j6jGbG6+R&Fl=ps+1nk)kXKKyZ251uv3uyVXU}pOh74Z?6=2}l zEbx5}m&He11Aa&?4X&mW+M2o%h`|x3oJ}V zHd)5R#H7@Bcu@ly*?YwMW^;N_Xr{S2oRIr-N{6{#^FgI|ww8&>d+=HA%I95GPx@22 zIxs;7c7d*#K%IYMte?Osn#AO=H5-ZZ^WKRLe*5}9nvYIjNqc?2>+apVtJpu>m0cTe z68^**N*xEKR~=*lhmp;vG!$$6{QL&>#hJ!s^}OA1r?N!PmIh3=5Ckq|m=_+F)zG;L zOJFi($oZ@h_n|fIb(Sch8-J&R9LP?9%ct-tJq@Yj=L*T2kV73f^{1}zzQT23vM8yc zCEGWxr#|w;#fuj=wQP8rg>(95V_ylA*s;sN`D@p%t=qQkSLo8EOR4<&ynQx`RQ^6( zreOuMt$|kGnDJ57a6IkT^yGo%^#c2q%a^mc7WDRT?9cI_w9CJ;DK~JsxK7xv}l1VcB`p#~|U^{d?1 z?zETB=gmYkg!hX=$w$(*tmz8>^{JB4(-(bKCk*$uP2yRzS||N0Ic-rzX^He7reWl! zuLB=<9`$|fe?ujRvr5{;(A%WdGT@n5OfvI2#k}TnV0G&a9HW{kCu(*l@GFTH?)*mL zD{uZoVyC6uou57#?*zf>6q;+-Iv^VUD!^oqAgWJ7rGi6hmoHz!@n>QPhkla6W@3*zqN=0{ zxYc0ftD?A=Y?~ue%tGP^L2Cs9uJ@LXl`tL>*VC*MeGu{RC@XPp!bOMD)sv^E=-Tda^y2PLqGv|n3 zD1xh8A`0%Wjf#pYlJ?=_Xo@tH9{q9P+7DPl-=K~4Bm0nlq$r`4+VcUlQf?COZO*a2Zt*Vj0EI2vzcd`Oh;nlD+Ii>@kj((F#4^8rxcbQKI}i z^6Tqi>fFVd(U;xs{m`$?yc2jJ&4&o^!J!#3*^lBmN54}V{M zvGJ|FTieg(o`?+6?QL&nY>3BQa$7#Tp0y?;X5ZKewKh`qzL zB5}I@-pVEMXx-Q913Un2XMrPfzYhF}zX_is_A_P%NGpgJ2eCUBs_W|3JMy3A2o0*= zy?bX&3#yzeA3Bc@)M0OxhUN8FLzxU+foy;k#Ok4Jj}fefBV=u%R*F*TEn3%0sXyd$ za3iSeT`6yFOBL3Q`EZu*-@o5`d~7U|TsH�Jm!BlcwY+8W&|}{|Fcw!(qVh0URrz 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/PS1_DISC.PNG b/pkgfiles/USRDIR/GUI/common/PS1_DISC.PNG deleted file mode 100644 index 720f521614c32dc0bb6229c7875acf84479b0ba8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17818 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 diff --git a/pkgfiles/USRDIR/GUI/common/PS2_DISC.PNG b/pkgfiles/USRDIR/GUI/common/PS2_DISC.PNG deleted file mode 100644 index 37dfff0a51f4efb3eca21c674ab06900b8eb49c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12099 zcmV-JFTBu+P)hvrS$~rU=nCJVLnl!X|9UmTXA2A8f!szi zc}@qi4pmX$V+@*)86YS%#&nakwos%*0|niHg9(qT6en(oxAOY#`Q+CzG{=& z64Z3Xo0cfo#Z&4EPMjkaM;2fLftUfJAUT+z%n&8@MC$5Ia;=UOY;?rz2dYKS<>T#s zf3UH))B9k5_u$?Az5f02D0{!ivkejH1CYz^nA6fn5)jO$lh*3%oo@H_D=Q0cEUk85 zYc-nd;AB-bUCIk;Wn)tt_Bkbjg%W`X3WBPF2v8M>x=MMV^4>%Mg8*Z|1TX<03u3@> zDohP$(r(dR(9zNr*8}DIMKOAGuy=5Ob7S}Iy{&^E?C2^P}yt?@2)wQKhH(Kp`s_AuCm_=WhwpUIS%t62_R23=$QH6>kivH=Jk%;gZ zRbU|k5rc_AWMCPviG^W?O~~5>8M7anB;Rp<_+f8v?}s0Lu=CxmjlKWT?;U*K75N4L ze{o%Ne)QY}f{5yAt#R+l@|7=KyRrO*g)57nA=K8hu~~KAw4o+t2CD)h3L$|CAW%RL zn-9Q*6FmN$C+mqvuN5drsgyR1)LJkZB&mh5>=UcGHU7Y)*=Cma-rIb%{oM!eZGCHZ zd-o5s@$fwW*|~Jg1<`X12ukaX)*CCUSAP1|ooioicRQac^4iVOkd{QbPGANBDhjUx zXvG&wec%*NJO&iUkpfU5fD{CVu?DFzNRkw3YP?N#nAGw;_~H9oJDcBm?}v|mZ)c097{H&niS>Cmr?{w%YWeL zKl9PtfY8Gai$cjTBe4dFO_A2D)>0a$X}$*<+~3~b{?0pZKlm@3kG6g<&qnXzITIzO z)%e-VZbL=JCf8S1*8bw_pML2VZr!={e|q2kV!vl^=Z?DsV-*7NK{tqWR3tnr55Z9| z#I}U*6wZ6(MFC$pDhf@!ByG~hO1rag>(<@HS2~N0^*lo|9%nl$GJH0zKAD~iKoC)* z)mi+~y;tx4;wx{w^jE>%FCXlgds)s4N^Bt@6@|`Y%$Y>H zG=Bok%^_$m4l(ZohzZOD6-DkGocAQcHKy7^z1hBY^H%px+De!D``Lb;Wt+Gp_xPm% zf|wT;m#+TYr{8?#mzGx7{`}51znW#dL}ZxGq7@!`$SE$lKtO;2ERgU0+&hUhfa{V$>f!z$LiEpE)3`P1o0M-2C}ZzxncC7qq{$w}qQtY@LaN z0imUsn1g*kc3^&y5%tvB&p%mY#I}Hf??Q6JHL`f9J2zS-Z$3bD11&CGLR5*JBRhR#!oIVzZ1 zfq_iq! z7Y$s2D2S0m40cI}5h6{iyfQ75RmN;vxY-^+xw+UVY=< z-{~x^{h7@Te_LT{OeV}2%rME$qF5@RG{ZCIJ#@CVqv8gk9Z^K+lw2YX_oDI~05RSU z?*&=m2x=^A((Ep^ueKMG&d$cgg5tsek=9yYc_0^2_$JPF1MGPO>S&& z^gi&e*qrn2W}*uLgiY$N-+B4o-@1D3`k&u;DECBcjg6WAM(3ei&I5{*++j0{3o_xk zQd$vFUx?|vN(fn;5gD;W0V-CUL&}%6&f~iS|K&kQH>CZeMrB$Wzen6!RIq@hm zPtYV)Nn2|-8VkLH(O}T)y#?UhJeubTh@{n7{<+sb^U5zA^pZCR16^Qat7Mh4DRO5x z&ht4ZD8myIGjs?66EIYYWgv~>0|5wnuGy?v%isz zhxc(#iM{6rh_u%E=~v%)`Ii*!Ke4~-SJ)(U$Q^x_BU%fmnZSzK2K&V01Xp#XES7;R z6C6&ZDo`nzL5ZZ&2Qe{8RRGZd4yxKrP!DL;2?Xa9&U+#xNt&ds?vkx8sA!I!z=8aM*Gqr4oNDw3a{t(c1i>dwU%WvHNx&A@#2YJ@}=2_nIOdNtZxqkKftzYOa zU;VQi8^sO7sUhNXkk?N+a7tYQ=k)v|2Um`z;D3lFr*aS(#8f(@V#JfefD0g{en1i& zQX*mYi!T9CzNn%EOMI>b{lbZcJE}<=?X*U4qy63e?*pgL(L4)>u=U2m&tAK^_La>I ze?z^oU=F6!MH69u#yC^qgX35aJ^5b(NEB=V*x+dt0K^J5VeqN+ND4Ig7DOPvY`;cp zRV&dDK|x+aY)``XC>745%^Zz#SYuM!Pj240edAAWJ=*zp|6udqshU z>%R!Sb`WlD{l%UifN(GZpi49diT@a^Q z4zPGYT=~6}3Z+LSR-{rYrvfumB&zVDWKEJ-%Sodtqn)k2AE=(ri+M^8LA7Rk@hjb> z<ofLOqkYep3a^1cLxD$3|(xvI_1fB3dOg0A zkA2M~2HszarWa_|N1w>RX1oyr#uLZ@1`0I{=AZ+rR~Q3GQa-G7E=eI37*xV%8o5Et z`zRd{l^LqDEj>^LM##Zbs~_yw@7}m`?N1%-?R``H=&jjaXhNp|1l8-!#Xr&PbU*Xp z1GmH+BAC;QXPzmY`(uyZkPdxDh8}Y}lTj!~g)&+Z<>2~|g0H1X2`!b$QdfZJVV5-! zED_P!UyT599)dL{7u?io|%E}`tL9b9? z!VTu_&eB31X9bATM!%olxpwR7mk;)K|9_G359hhnynwK2t^4_AyZh;fANWP(q+DZp z$#fDR7!$j5T250;P?@O1qG2#&oM9Ro%zzgHjKU;TscYGP5E+sL`Nx_lt;C20yG8&h`?;XU{IC45_40+4Plrb9{-i(|Phc=v7&2A;sK@|j!Z5{g zVh|Aw3{*W_;oy4;GKzY861VVPA&wwU;fr8WIv4Z^M$jW%A(f&T+i>fht^lDyAFxRRW*gQ!R9x(= zJx>4(NEwoO40i=eiuzK}8@vaKOhB%5IOQ5Zk^{~Ipa>L9l4&l0Q~@U*mJ_?b&#PBf z7eBkZ`RFEe{Prx@&k6`;(|E03Yrnj?EiGbO$?NAuU?>!146L z7;SsFLXb2<${R%CieN@c0r;$pT1G3vKk;@KLV4jqL+&mvwq8kV&DZkr_=mGRbw)sN zr`~A4k$bzAWj;-7e0hF{Cz68LB1sZ3_?&@o3=u)SMYiYRGY?L}3=t(r7R*dv1TGQd z7SDkjqY{*+=Y@>1u(lQk z;Tb<$VUYI#*aAdl61@_IL-NGkVM`KN`;SkEbWKsZ33}ccqk?4}!qzqqJc$cH{l*Oc(OCVCfIl)+| z<_dGQ(Q4iv9PC@1P`2nqK&W!J-fY~?MzrX?GBH5U1&1IcX#y37e@+SsGb|hg@*J>G zMKFb-Y_b6_rH$s@{sDIgvir2_X5bKZB}p4MdqZieFx1m?!5>VLfXH4tV>nC%CJQI- zxiG(o1kMq9eYBUa)Nk%0Spu>%0)mq@nTWF~8p%THDMZ^Y%E&THkM>$HwfU(e` zxO6cl0E`j_BQ#b`ZH+j+rjq^mY1f9EmB> z89iAa7)V=v>wVznI9Phf|7xkXRJ#orXst6S(S;HHqW`+XeO)uoKirKg~d|= zq2Oj(OIBS*E%jm70C$|H`P|x!dcFk>w*i zo*6LPXKZWyO-DZqWd!IDI06b{9jl5MP+^Ftv{tuW!=@4PJf2J^iHsJATF!Zk zpg`bKEes-{IAse|L0rJvoql58{Rfs0{@D}GDv10RwD+66{Xcp)t!J*8{;|JS6b>%W z<`*7Scb(AU$l~LS*C`Otq@IL$1)G?EF~t=qtPG1lFdP^D0L%&>7XH{IwH;$^OY-A2 z%clT>K*UXJOj86#5f`mqA|Qm$u+yjqQxA#x$^U%}7!DC3e>)%j=pQ+>K4@7*m!H&;XbKh%n&H!H}>vij2cGyF>C0 zkk$+vYtkgK^^6(EiH+kqgaX8r3Xo`78||_kQh`p<2J#>pgK79predBfWHmha?Y!9h z`_P-Md7mB23q>%*nQKfKNM?q$kt2k)9o{RL!vHgfG=n(Uk;{btOEDth`>-%5=nw%w zp^{w%h?F?BNYa{3%oQRWd3;oqVpcqvj$3a}J{71I!sACvp#%di&1htst*v z7aM_pfM0B&AY>pqk}Thlo1H;b(=yBk`HO+=?o$7$;^J16WJM=J?d! zrvM_XH&U(EA|G+-UNlYPFt%T+H59XxLe)am!fWz*RePJry*KOCqP0Kez3GH^j~rqi z@+Bx3%?6{<Bxh%}+XpZ3!DOV;%M$xK(O zx#@iK=T%KK;AVbmQ0@S00c#a$3e+2fcAJr=aloQ-NoBP;t+s9odPAUSNd!=EwX%FV z*k~=49AUaRS^yjYAj^`}IHdeO#aVVdAV{IA8Ij}!jw>2w?vP_|JLOxQ2EkGNq$=)N zei!2xp+e34vsASUFU_>@+21D0zhyZ4y{BEFpjPg?|IkbN8ECy~^E?zlp`|iOmAK&2 zW@A=Z%P=NXms6d*voTZ^58+rR`-qb(nx3&wtF0?FfGuzgK-D8jNZ6tf?=%0DjG|)! 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%0A}8<8x!PX+8# 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 L9nmx^pX7f5e(J*5 literal 4951 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 Gj{gAFlohoA diff --git a/pkgfiles/USRDIR/GUI/common/R2.PNG b/pkgfiles/USRDIR/GUI/common/R2.PNG index 40109f2eb4e031015ab9b38eae49f7b00808d1bf..8c1b7aa108a4f94c3bfaed688406401126c11785 100644 GIT binary patch literal 2138 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 L;>)?|#ZUh~ZpxQr literal 2260 zcmbVOX;c$g7N%8fT0|B%1eX{FXoA6J?mtLgZgIeJfx4-2$Bv34CM*CxSg#DXKkq7Z_=0**#P z5LlL+(2U@SsWGTXtQ89anNm#Q37d61bqW=Z#>rOcRIoG-(GsGNXjI82zWnVXk$}qB z#4xG=5U6~S81&n%YGmEkAdz%yoYY%JT;)Spsbk^<3PcMNbc%SThN)u{Kkzc~xmipi z5gAkt5q>cq@<)I&m=ETOdU-Ey}iB79AvTwuHm6cR%&6Lhf?D* z$p9f5sTx&jQA|lNGs00=qLxj>J^dJhLM0G|@I z!=N)DFD@VClfg->zfz-xl~QEVE{fZoz>@zG%k)(vuohE`Ff4wu1B5Y{7SqIFDuVAi z8sTdJEJc-O!E$qfKE?|nYIF-C zOcK6kh5sC%OwjN?&Dt?|fU{`sGMA@w=R>K%b2fHm7mwJr`we`VoksBa`a+*$>KxCs zcSrx2KDHCGa|!zr;xyVMJgn_&TW%DbFon6b+>c9oXV5$sg@q1>^@<8KW$(V}>guY? zJ37tQ5GZ~sq|j(thwEBfbEUhSotzHFQTNG-x1o^Ckv$s^(V+|WZv&o?443*ZQ&Agx zmwnrb;SL1r^|Qj)2l1ntoyy?zn<{GlaeHfW^3DyXr{@P)&e+Xui@){Y!nt#GCev)O z`#g8@?6=2=;}lSqx^0{ISV;fP62_B6z5cu7dKX^KH{8Gs`uX$cU48f4K1uIb*1EKt za;|<~Zfsj)_ZybO`joWsvkqgt#+cBjAhls_BPo};a%}?{K2#YfzQ1ep=FRLhpuyzf z-_-Oo z&l(#o^E*2wtuYkZ@XZ@HBK7+52V3s;q!?cN_Nr1-*&>nXoTT@~i&=Nt+hGK;OwY(b zS1(z-_(tp&46_Xg2snD`)J&tv^t>Zy@7}a#Sz2A)>axV>uTosy+{XQDS#38m+A=dU zbNBBbf`50IJJ%9L(cIizi^0J`I|m2u%WiGS$&-ef8rlZGl8A%^Fcn=0;1Oj!92gkb zHx^3n=__NTjgD@MQ7Yw~Jv}{Xn<~aD3xZA<9zBXY&^4$}Sd*HXTKVg*SI79XuV1;c zWloRJ1Os>Ff-75Noh})kBjSgij3{?%cR@7!6>YB$JIQc_Aw$A?;t!J^R6OCuwU_kllDISRFj zi5w1RXT+b^uM3<`J>tGuUiD*P;bQToO>+H-pMEmNWG9dq2jXI5OTJ%FpO=?s=jZtj7aVMVzCOY-+J650rt&(gnJadWy2^Po%PT4_#naZ=3`+ksyd!z=&6}Ermw)%B zyKWSV`^Yf3W2rl4y4qR&igr5Q`1o(nvX;zqg-aVWf{uF;)@Pp5E(Z~d+Y&E249xa!mJrA7 z7PyjsuC9hw*@dZWiyE!Cm*LuJh0}JAE;%c!H`ZUAGSfol>((-|wB&d5e}+FV2rB1B Gru_$7L#L7e diff --git a/pkgfiles/USRDIR/GUI/common/R3.PNG b/pkgfiles/USRDIR/GUI/common/R3.PNG index a23f8c488691b2912460b83f3190d0bd7953b9eb..86103c06c5cd3a6ed4c20548b46e788153e45400 100644 GIT binary patch literal 1824 zcmWkveK?fq8h_^No$)osXXA4QaoLu7eHKUaNr*BmXNPU`j^;wR))10Iy<@^GXBkYB zWS1?QO0`lcQaCs}$Jk?(MY}>$sk5!m@)_s#$Nl`S>%O1+zJAwp{qEoMt>AE=fv%-4 z0KgzP$Ug!@=5|mZ>^zZ^vxI?;Bq;g>0D30dfdkbwbSz0s;2z=vaJw{jJ-l+e<5*C{ zApmk50YGH{tZrfW7Jy6`fOiN0zEuG1NUezNJpcft3ijtlX8#^1W>R6in+eT>f86OR z-63+5ZMr3!>JY54?PNH-yd3pY+nY1vH5$#G*RNjP6D1_WBaB*sD#4Xq#JG?9qs;KX<8QiHcsPH$~=B((`Wn|z+3=@QIx z*){o?TS0hBI0fkWh_^QFQgd@N*VorKkjh|f;8nW;o^s{lfBO0k#zaIcXz!;^m~yHS zsJNuWLl_hDuRQYQ)aPxzbALYb$kxh+THD&(6O)qM{qok7FFK_J7bUFPQzvDgR)lD{rBkn8LmHe+Dcamv zMaZGGEE|`s`KbWNz`&rX+A%~00~5P3qq-U3gIAANT)1EX-CZVgfV7!jSyWVH29JJ1 zubJDPg~_O=4f}KrMqo0HY8-a(V4Nf)LoDn#y`R8fFbK{?8ChBRc?J=L^nLIHi~rWL z4aR4^EiH**H#eN-{aC9>ic=_KTOjdKA&Tb!M@$DV z%NXpP$gKlmzcTgR=}IaGLV>d_*IcPoqI^<4G>s@uM@2R3%P0F0%o;I6+fG zLqqpVtDRXN-bFzok?4V~*ivk(fS#=~m?($3LRk7OP0Vm8qV&7Xtjr8v)?Zjy(C6`Z zh*w?q$&)9^8Xa9-cWkfV_M8v8j$9e+qLjWXmHr7)m;%!cobGN=$lK{M!!1VU3#{=? z{yO;N;Ts}JTAD~Aks!i*NoKN^7H@t~5QQ!qk`BrGpsE~UG-&J@f1LM_BHoLMPtV@N z5we%mt0#c(Fm#&1R zt%=8ylaqH|W#TE!>~MY0P)lKs4Z(?KkrCMG5^$2J<_J{<(ddy7`=?D)bo%}<^td`n zqjH_RL}#MNxxq7ajUBx;C zavY7)0NmLlR-0sVr-9y{o-APYH$0z1jCGYCCFCbg+gl%b#N!vpWCZbQX5BnXbAC_9 z*)bSTi*{Y%tn<;WvxZ^kv3-@whj)8#>D9>7ENE{(m8wJq=di5AFUhR4K5t? zCQ_JjmOteh8ynAZp?qT_wM0>%&V)ksr;jP<&N$iiR3zGtGPI==d)btU3Mu=*a8Epl z50?bwj}!R=Nou?NA-`XA0ABuW)nQytjR}EM%7ic$dTzy>?~H}tppL%cz^*BVDXA_I ze~m1P0~~N$G379gClBu`#ENb-Cv)t+n`pgOn#&RF;Q*tTK)`DYD13EayXfbQd0@}J z$-Pazrlk6^3S@O~8_x#cJ=*r>OgS8WoXqS5sx@wv|MeaA*lz}c0}lJ& I;vxC}2l+Yc9RL6T literal 2897 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 Zid=5r8{Lwk=*-ohTxYr)?K&ke`A?gZ*qQ(U diff --git a/pkgfiles/USRDIR/GUI/common/RIGHT.PNG b/pkgfiles/USRDIR/GUI/common/RIGHT.PNG index c4cd3413f4c07095ed6574046a211a0de90f1cca..f7499d45a7e48aee2c89c86a66ab2af624a241aa 100644 GIT binary patch literal 361 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?3oVGw3ym^DWND9DoT z=EaktaVzQ1|Nr)f9he#zl9D767z7-c-!U{WNENU%uv}=cW>9EgyTi!9X!3xM zfnxz)b`+K5bea9N}CNTo7Ud~9aE5HtBWB4Cf#FTjV Ro(a&a44$rjF6*2UngF=&V2J<# delta 555 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 Y@y=c7-**23qOgIR^A4wS2Y%vz0437bcK`qY literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/GUI/common/SELECT.PNG b/pkgfiles/USRDIR/GUI/common/SELECT.PNG index 779560b7ade3491ba0672c52c3d255fd61f75b67..843cfc36b5321af8c6bbaf92a937a9cc39f430b6 100644 GIT binary patch literal 745 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?3oVGw3ym^DWND9DoT z=|4aG%`~CGiF)}hdIu5Nq zK0P5N49d*H7o6X`$>FiNGl$2CsfI@;M`vFQsCaKq+j|98bg K=d#Wzp$P!}DJ5?J delta 1021 zcmVy{D6rAs2rGq)9|URA}DqnN4eCMHGggQ}-s_NjjgCgk&?3F(HF1brBFj zK`=}G34$wKD);^J3F@lf`ijzSS#_l#vxBYRe&T(-&->u1V zZd(uB&82(s^jqhgs%nTtB9TZW5{X12kw^r&{9>#!pP1>Jz-xcN5-<)V1#mGS1M0x9 zz)q)Cd;XuoW0hOWs``$ZeW1BVjUXN$bp7Z$e6Lx>zrCP0K&beQJk2|f}Hh`2T=2GBYRsE(^D!p-c z{VtoEn@mnkQZAQp;tG?l0p5E$?GAf;du(lOQLEQb)h|WlyH2Zikb;bWeGo!eSy)(L zb#0Y$xlFZMr`>MjvkX-o(B59Y{+lKVqooql(^D)iF0y~Rw#xSQHa>*+6Oo6&K?bnbCrHWxM%AaUYoG#ebf zIHK8ZqCtQAzZ~F-QNO`L-la7oGy;ugqrW=OEYfrHi(aostJTDNpLgYAO{7zE1FYLU zoh;`^YkGNxWts1%TWn6!woBvmLc(T7&~Sbk6nD=oGSK5f!e*8?DH{S|WT3}Y;h@8l zaJY%E4N1cGe@ytsH9Snhc8ze*tF63{7^o`7HDiCtf(=Ivi(mt`!~>dE82G`$1uUGE z=D+Q<@+GZ9v82U7PqvoVHLal#=1lmSu@o4BmWA|vE*+>y5i!hqXEkiY(WS2n_xk5y z6nKiroT-kO_aF`mowI-$W_of&toI*M1dnlFU|m(`z4s(ZT6keI&97?n7mt9aCpR8F z;Cp}IJu{p4{TddL!re)qE@J~VCFJQE@FU0$K;pBu`K^;7P*Q$z(e5EBpKZYFb#J4Cz?(3gnn2@ rz;B&atx6;ki9{liNF)-8L~g)8(-KkHEqp9c00000NkvXXu0mjf)eqk@ diff --git a/pkgfiles/USRDIR/GUI/common/SQUARE.PNG b/pkgfiles/USRDIR/GUI/common/SQUARE.PNG index 96e892882f3fb877bec0b8fce40a1698a7536457..9993319b61a6345ea1d282d54e81e9e151cdf99d 100644 GIT binary patch literal 1804 zcmWkvdsLFy7C-QzAOh-zG1RCJGfgqYv6_5;7$w#V}NYb94jxDn)&zuO~Y=X zX+!GGM>CU6-ptIEbsc3;%O#}M?W(mh%}n!AO8FM$;vf6`*4pdrv-fZB-`eK_e{Tqx zXio$HkVARgeI|rgjbLs%6H`;CO<qAxOH^aZaHZI-yFyVMJT{j45R27Z zo0ymghAkrnDm!EgmFf*SIItiVi%^HYijR+n|D5b^O85D>zlpJYGkpCy{29W5Jb)$K zhRU0wAJpm<1MjJEX7+9twOK_Nr#77qcYiI{yT!}T&p~iqE@!ky-9V4Miz;!g(AiR4Jy@9AO`&J)eNOj|>hT z9T*nSIA0@do~W+YS?o&2nVL}1=ELqyf2~pp3@e5OEod>WEJH6c=_@PC zmXF~;lH4Cuat7i0=8Wa&dHs9*GffStEHM4(ykWuHI@8QI>&c&Y?$lWw!@u-k0|J~v z0BwS>up^ZX4;O6FRzyRch_CoZ=S7qpPZ+v9p#6A_`8 z_r8+O80YoW>&k_BRok04X$Ha^;u2Yu7d|%}ol`+q2&Fi|}xi zz#e(rK8o=PLxOEI=GkLiWkJ#kJ)<;`%XKRF;fMNpBniS%&g~~pFX~jAVdP~K&=pch;fWu4_1ChN@ zY~(K(*N7I3Bo!TURK^I@6i}ox7z}riTR#B|E(x%ubgVY9Dttvoh1>b6E^7;_v^G*f zK~lvQG_KsApm6-0fGi2)Pn-y?|q%&p=r&Ff=rulZ|WLkQ@6`OiU5x z71~JuiTN1APH!JZgXx8E z=8C~+=Y%)qeAcZ^FUQ(&V^Q`WkcdOTvU}d|&b?a&7U%&^aGG*MhQIl0aWLLsR-9P7USdD#o~|j?&z%gTx3f%yu&F@G&46o znRn=c#|)=rl4KGEF09^&R!rsR>xCPukKiS^O8&y-eHw8~L)>n`Lu_a-N!|T?sd#Cw zrdhsKYg$7OcjAbNlz@PeZj;Jvga3FY92le)o=~#v4%3Iv3B3Q6ZD!+Eetx`081(z6 z{^llJtjAW;%+24X94Bz?zN|l3!C~|I z%YvG>VK#fpw{^Yy&31Knd;`NZ8O>=6JQ9ob)ro&-{mb8>t#!=j8se;lrsrY;sW#W* z?X+x$fy_U-d}{yf=OYf;|Bj?sBPo8)j~;c~AWB`$@JXh>})wv&W?c?u#6ztm7*sl;&d2fk$ktYY;k(D z?>J&uC+s1?DBa@B(R{y~zP?u}I$d=q!aTI=u~F@=i3efS5viN>sv!Uu-}&i3k`KL1 mzWj=+)78X=a(ZqptOl-9ze4-Ci}j|T3xw|6%e@mUlKmfD9R#)j literal 2287 zcmV z3XwJihd@yxivUJxieo+;z_G_(dv-nR>$%g1U7MNN@$P!@tlcBshrRdiocq7$-gD16 z_uOT~L`E{b64(Z80qzIZ0U6*PAXVyS17pDFKtFH^_z*bbeaNiwvtMvFijJHd_IqD+YAp6GkEJ3 zR|f{@{iv49@>*%^pB9S1W>*NasdU|?z_xOoQ;IqJUPR@EW7QjX_y&U*8@Z+fVZy!8J z_ttG}?A(BD+e}Q@jE;^nKAvS_B2PY_XL`DT;|QcI0#+0S!_d*R1g2@y+-$O9#Y$RQ zT4-)gkxHfL>$}X^vuF6rv14-$?YF?soSaoyFu+DK-3+_~JRWZA?(XK`!Go;t=wNtw zgrT7!Zr&PVd~_5$KY>#a6r7@jT`7^S8vv}RDypIsC2S-x5;`ffnH4Q9tXbVgTU#5g zt*f}w-_NmQ$2fQHT+|Rx0Z%wN%erg8Ml$`Sl9t>YZhQXu=h(4h2ZMuyT)%dWo40N; zo}FOAwkbFTq;%_2EQ+F%FcLJUQmk0n%$n7!S$p4oWHK2}pFYiNue~1ixAVYWCue<8 zH{g=-@K4}De|=}?*E#gvLnw;Mz`y|4uMaXhI!ZpDuN!0~@TO_f($d1(wHeym+mX`c z$k8M8^?efV-U~cd$!Jll?AgBp+x_)hy1MxO4}QqN)f;?#;UfJ5R~fM^CJPSI^YCCn zi}XASQ&UXXHpA8^!^0z}n$Es``>`yG!NEcQ@YVp`+VZBO(_+${7hr99)2qPKf&IF9 z3kMDyp!a+)pZ@n#z8Jbqq2Sk$GM@rbrBz)N4E0f6}g^Md>(IfpoD6Wu*f*_O0gh3w;C@mwI zZUgoQG@zm*s%hg;^TrcfW0B~^y=N=24Jk5-s_5bB{YEm~=H#rQ83{k@*Vv|MqU&n) z%@dyGxHjoL`RKYj>vQ`A`>cOSKjm*Vo6OqA5+(6CN*#R6CNuo6rvNlxbP>OVU1~UQ z<#b4y#B@g2!N)XB7ztEuGm`0*TFE(>H8G8Zfubrks>=px>N@x+s)CU)a0-s!jNYz= zUB85ppk@zGijcyH%cQE0Pr^v}0RwE&fKC1yUDK=R!AhKCl6akbidX`4zgBXm0!yLh zal4`+c)kS>l8=v6?wWk!8m{{Q^=6t`ud*K`SE5ulT^ zhKywTIB>xKC%wu(79oS+KVSP@OcHi08X`3;=i^S!8uCjRinoOUz(Ut6DlfT6!FV}8 zWi^A10AMF)oidW?_XB%b2-HMkKIhz`Qv}%eot$;53~-5F0NxD%hB^20qTM9UG10TB zQ9=5p|3}pQ@Y}!>fx7ubG8c)YE5iXhfOnjn6}T>qLh+N52Q}|=d5JCMu@V+4O1LED zr-46*<3ouW&gR9Sf)Kdn2FWu{&U&LP&K326X)$?8Ti*0#;GtP-$McY$hoY)6r?1Sf zOhtqJgOjsfio#YYi{}KzEZKHHXwUOdRdvZM;|Q>)fJ1YoEmccQTLrvFC|IuoimtO* zuw6h35oK{*pqQ98GS`1=Nj+=>jsp*rEe}O)xb~K=jFRdM*gZ2A)m&6{w51R1DoHwI zc(_Pc#uw=b0j&VG2iRQ=Y{fksQep*ddDBs##UBpx@9Sk!;<1cno(Bt9r03ze)3_x* z5%hcDdrr=>Yr(SM3F5O$eF5xcx3cd$4*V##1o05)HNY#B(g><9qZ)&PZtX#YKLI~& z$P<7N@ZG?#2&Fs4NT-3HJ2~sUdOxsG&vCHg7eFvSaj3&i{s?|%(7Io2v3j8Xsq002ov JPDHLkV1ki%Sq%UH diff --git a/pkgfiles/USRDIR/GUI/common/START.PNG b/pkgfiles/USRDIR/GUI/common/START.PNG index f8028625ecc8a36902a1a702011279a8af4b1491..00643b00287778943ed5e3169c383a6ee466c98b 100644 GIT binary patch literal 1215 zcmV;w1VHz@;j(q!3lK=n!AY({UO#lFTB>(_`g8%^e{{R4h=>PzA zFaQARU;qF*m;eA5Z<1fdMgRZ=HAzH4RCwBA{Qv(y!$1On0AgYoU;q$61MUET02*)y z00hv0I{+Yn7@?RMh*_cZKOp`K#DAb{nx;~K0Ac}InpIe7#U~^_o12GQjh~n6E)&E5 zO&{L9*;rFna26>4o0g6N2q2K}IWtQeuf6;5S%H_Ahe1SGkbxgab8@gVu(Pv0{r~sR zrtjZAZ!gYCKY-+zztnOJKmdUpz!Q^E`uW4>uMDhg>)$_s$P$I0hhqKn~!INGbUA@yj=`12}*dvI8w=Wnp1pWo2Pt zV`T+8hLwSXosEHulLPEHpo2cJFf#7{`t{TL?VH!{+O>V_C#Ylokm?wK00KK8JUJik z0A^+uAZBJ@Vq#=q0n#8g$RRKXfgA^M3?~C8C(tqM>|a@!84vyX@ooLdqlb4aSvdC% zQpo%xKK3k!s!4MMM#ce1cnSV6T~4f$H1ZryW1Y3-F%0n8?d8*i5nDU zz_NvbkB8epTvTYThNiY6Kmf5&t3*R~%s+4p|3wjJfYMAr2l4T60UgE2@DC^k5I`){ zE?Oa>@gHm&CSo00G286`zAFg8C9+>3@i&&~(7T z#&(s3`TzFsUp}vzIvOzh31(Xeesh*vk{Vy9U^C4!2e>-2lc)EV+swGbd z6+{35#DbDgpln$7Lh&64{(}TBs6YbwloeECva$bQXJ$GC^wj#t_iyjmxn=z;B%cy2 ziU9%$9s)4KLD>m}(GwBKNuaucofR0o?5v;JS(x|#|Mz?St!w9Z9^SX>11aS{G5`o5 z7I12TTJ-ntU$laT0i1w9sh5M5^(`wa(=K4qx@GISW!qjndqS1!7$AT^4gkg*%L8CE zD*XHV2bgjhp(Plw*5hD(0jzd6{rmG{$GmBsduY)h0SF+F1AhPg^(|glP+<1ofB)5h zW%&bEX2wl_fB)FBU~=zqS~tl60%*V+r2qlMIM7`)fB+isegQxL4Y&gU0%*V;01!X} d?f`%Q0{}pJz*#A}rI!Ez002ovPDHLkV1h@O2n_%L literal 2160 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 delta 496 zcmaFB^qbkZGr-TCmrII^fq{Y7)59eQNZWug2OE&I`g5}gNU*u|g0wvl$9@pqnQ0~xJn#Q4&b$Lar+l|hxG1~jyV@72 zm~9%1IuzEtIKN0jOO1;=TEno1ZQ6aAWmWP8i_eumJ6_mk*qkc;RX0IYL&A3rQ}vX; zxvPWENF-^uUGS^88Sl@(W9w#BHFb&GXEsf1{%Gf3Z^y7TyW&=D%Wj4RDH|_0yIF7G znxL5$dD4;L&UecKhKQ4nYiBIoDO|H|qF4cALJ3!vqDg$uy6qFMoiW(t7IlE3h4BNI zNzOCVb_JPjdnIQyarWeg@;h8*Ghtxpn=s5ozFJI4!61#qzy~MOVVW}^*}td;_>0Zf*&%K9|LFI1cM>ME zAHP^E=X2a{KdauIgu4xoU+iHwe)~PYLAyMn{6SvEo#eYsk6*k9HkqZorn*4=mS&jd i(kVe+sKl%3-xwoX`x?K0U%na`dkmhgelF{r5}E)Z6x*r* diff --git a/pkgfiles/USRDIR/GUI/common/USB.PNG b/pkgfiles/USRDIR/GUI/common/USB.PNG new file mode 100644 index 0000000000000000000000000000000000000000..ed38d7003325dd858d670e2efbdb4d287a95b1ba GIT binary patch literal 2962 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 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/setting/scan_dir.txt b/pkgfiles/USRDIR/setting/scan_dir.txt index 08725248..0f53d852 100644 --- a/pkgfiles/USRDIR/setting/scan_dir.txt +++ b/pkgfiles/USRDIR/setting/scan_dir.txt @@ -1,8 +1,6 @@ -GAMES PS3ISO PS2ISO PSXISO PSPISO -video -data +GAMES GAMEZ diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCCS_400.01.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCCS_400.01.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_508.85.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_508.85.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.02.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.02.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.03.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.03.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.04.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.04.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.05.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_511.05.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_517.19.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCES_517.19.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..d3d07d9db36e2c59e32f53bb3bc612dca5f5105c GIT binary patch literal 36 lcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCPS_550.35.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SCPS_550.35.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_501.96.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_501.96.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..3e694ad0e11caf89836301f2c1f43b7f1e8ced98 GIT binary patch literal 32 ccmcCzU|?`oWMJR|(u_ddAg=|cflM#}03W;ocK`qY literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_503.71.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_503.71.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..1cfb2417d52db5027e43a8f34267f82ddab5b7b7 GIT binary patch literal 36 icmcCzU|>kKWnka}(u_b11OhXRjTp9M3-Um?3=9A~Qv);r literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_510.44.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_510.44.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..c5a3a0e28c83c392f35f059eeef81383b1418d57 GIT binary patch literal 80 zcmcCzU|?`_U|`?^(yTzdqg91Lg16zAm@}iz86ca1!Qlx5gX0<&H8qBY=?%w0;u1hM UOngU*DnrWjrhWznCXiwV0C*)3=Kufz literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_514.45.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_514.45.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..688dd940b46a35b75ce05a0409ee7d4a489a083e GIT binary patch literal 24 acmcCzU|{I9Wnka~(g7DlfFy$ehyVa1vjSEC literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_519.58.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_519.58.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..d3de21c28db64d76a390dcbeacbba6f47ac7e293 GIT binary patch literal 32 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

9-t@R*z~zykRjj%!`h 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 NtFqhP>VFlQm@B0j=qdmJ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_529.68.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_529.68.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..c5a3a0e28c83c392f35f059eeef81383b1418d57 GIT binary patch literal 80 zcmcCzU|?`_U|`?^(yTzdqg91Lg16zAm@}iz86ca1!Qlx5gX0<&H8qBY=?%w0;u1hM UOngU*DnrWjrhWznCXiwV0C*)3=Kufz literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_537.46.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_537.46.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..4b68d30a9719c77996918be20f92e71be69340ca GIT binary patch literal 48 bcmcCzU|{I9Wnka{(opaZO6#EU1wecNTtfpy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.48.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.48.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..4b68d30a9719c77996918be20f92e71be69340ca GIT binary patch literal 48 bcmcCzU|{I9Wnka{(opaZO6#EU1wecNTtfpy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.49.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.49.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..4b68d30a9719c77996918be20f92e71be69340ca GIT binary patch literal 48 bcmcCzU|{I9Wnka{(opaZO6#EU1wecNTtfpy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.50.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.50.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..4b68d30a9719c77996918be20f92e71be69340ca GIT binary patch literal 48 bcmcCzU|{I9Wnka{(opaZO6#EU1wecNTtfpy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.51.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_543.51.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..4b68d30a9719c77996918be20f92e71be69340ca GIT binary patch literal 48 bcmcCzU|{I9Wnka{(opaZO6#EU1wecNTtfpy literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.44.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.44.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..8fc1c8ce2ceabb310b06dfe6e02082e2ccda3af1 GIT binary patch literal 516 zcmYk(u}i~16bA6G2I|E+WGFR5k$?dMa!_ch9U>gn;c#-Zh=ZGPb95}YI5>2yQ~d)n zI5>3a?CPkSWB&_%FYWLJF7No=aUYL&3gGG-2&L}HdcRIE`CA?yqfuxT!nfEfo~H57 z!5a`5HDGsLq&A8vzlSjRD&OVzwbL!d8)xt@@)BID5&+_KRkUyonxJgwMQ% zyY`SwGd0JtIWZ4-GR^FyL3&AsZXn&1`IzjZ@2hg)t6Q?<#8;YAlGVLQ&I6ldUP#U( z*?7M0Z9?W?3Y&$4XR-kIZOxdH>038*SIx*49aGQaYiZ#&b2IqWMzAeQ4;xx%M`&&K NSr}nQ_A>VR`v(k{G|&J5 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.58.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLES_546.58.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..66499cb2afcb52bbe03c8682ddb6c7c491bd6e60 GIT binary patch literal 44 rcmcCzU|_IhWnka}(o8_ya$20>|Nj(|4?sKt$o}^~+2jup1Em-M?Bxxk literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPM_666.75.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPM_666.75.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9c07a948b1b4091aa6f0630da4ec728a2127c44d GIT binary patch literal 24 ccmcCzU|{I9WnfSP(h*B#8NRHO1+o|z05H@90{{R3 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPS_258.42.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLPS_258.42.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..b565a7314cf0f5beb58c457121aa6ee7f183f869 GIT binary patch literal 32 fcmZQzU|_HX;&2xR27VyTz#s!61Q-}(K{NvZ83F+@ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_201.67.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_201.67.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..598b69396ca9158651352fe68347fca183b61cc5 GIT binary patch literal 44 rcmcCzU|)K(hPSL85r&YF%SR%BliO3 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.69.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.69.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..f6cbd163e03a1583b1e7b465413025c189d296db GIT binary patch literal 28 ccmcCzU|@~ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.97.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_204.97.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..80b361d8be5c2ea15051f0296c245aa0c5e96117 GIT binary patch literal 80 zcmcCzU|?`_U|`?^(yTzdqE&@Kg16zAm@}iz9w3{6!Qlx5gX5Yns%i`k(;JS1#5vT| V;NmM%R2fpHH}x|xFo6^^005JI5taY| literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.80.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.80.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..0a5b370566e204da4cfdb7b0ba1938d645b793ae GIT binary patch literal 49152 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

9-t@R*z~zykRjj%!`h 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 NtFqhP>VFlQm@B0j=qdmJ literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.85.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_206.85.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..9f851218acb45a53079e86f5ee787019c727562c GIT binary patch literal 32 fcmcCzU|9=JE#Lf literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_208.31.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_208.31.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..94d0da91b04acdea4d79051e1be785a89a677b3e GIT binary patch literal 24 bcmcCzU|^W&#K7PIq#1$ugC`S^WMBXQBq0Ko literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.65.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.65.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..01d497da4e3418ff07f9d024dc5a0ed35c3c4ff2 GIT binary patch literal 52 jcmcCzU|{I9Wnka{(m>Gg9|%A+1A{{_8vn8gPyhq~Q9KO3 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.93.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_209.93.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..914ce879e2e6a349be1549abd9651f95cf1bbd3f GIT binary patch literal 80 zcmcb>z`$DKz`*c;fq}zm(*y=?1_lO3AYRVKz%YY}fk6bw_F`cA@8R0P;Qc^yzxOMT QJ>IV*dXU*Ld7x4T00=S`M*si- literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_210.37.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_210.37.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..f1dd8408757ad813b4b39e3c8e28670e66f6fa68 GIT binary patch literal 80 zcmcCzU|_IhWnkb2(#$}d$;7}=0i;=gSb%|n-4%!#cz78qfNGG%c8l^d{6G@}YGD8X D!#D*J literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_211.96.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_211.96.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..23398b4b88720ecacb02353ffbdd0b583ad5f07f GIT binary patch literal 20 VcmcCzU|{I9Wnj<;(u_b10ss>?0W<&r literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.08.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.08.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..01d497da4e3418ff07f9d024dc5a0ed35c3c4ff2 GIT binary patch literal 52 jcmcCzU|{I9Wnka{(m>Gg9|%A+1A{{_8vn8gPyhq~Q9KO3 literal 0 HcmV?d00001 diff --git a/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.40.CONFIG b/pkgfiles/USRDIR/sys/CONFIG/CUSTOM/SLUS_212.40.CONFIG new file mode 100644 index 0000000000000000000000000000000000000000..0bf8aa17b9ba2dfd071ab8126bd2a12169f51a2d GIT binary patch literal 34 kcmcCzU|{I9Wnf?g(k#C?fdO(pMCRW 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 C%Jbg< diff --git a/pkgfiles/USRDIR/sys/ws.zip b/pkgfiles/USRDIR/sys/ws.zip index eebb818d1fddedc62fbd47b039a9537ee333e21e..f2e2aa07a8d99395a69b256f5b70eabcf58e3041 100644 GIT binary patch literal 1359556 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 EO99HpD_i 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�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