├── eboot.bin ├── resources ├── back.png └── EMU.lua ├── sce_sys ├── icon0.png ├── param.sfo └── livearea │ └── contents │ ├── bg.png │ ├── startup.png │ └── template.xml ├── git ├── updater │ ├── param.sfo │ ├── update.png │ └── script.lua ├── shared.lua ├── thread_net.lua └── updater.lua ├── script.lua └── README.md /eboot.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/eboot.bin -------------------------------------------------------------------------------- /resources/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/resources/back.png -------------------------------------------------------------------------------- /sce_sys/icon0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/sce_sys/icon0.png -------------------------------------------------------------------------------- /sce_sys/param.sfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/sce_sys/param.sfo -------------------------------------------------------------------------------- /git/updater/param.sfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/git/updater/param.sfo -------------------------------------------------------------------------------- /git/updater/update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/git/updater/update.png -------------------------------------------------------------------------------- /sce_sys/livearea/contents/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/sce_sys/livearea/contents/bg.png -------------------------------------------------------------------------------- /sce_sys/livearea/contents/startup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/theheroGAC/PSP-EMULATORS-INSTALLER/HEAD/sce_sys/livearea/contents/startup.png -------------------------------------------------------------------------------- /git/shared.lua: -------------------------------------------------------------------------------- 1 | -- Constants 2 | 3 | APP_REPO = "theheroGAC" 4 | APP_PROJECT = "PSP Emulators Installer" 5 | 6 | APP_VERSION_MAJOR = 0x01 -- major.minor 7 | APP_VERSION_MINOR = 0x00 8 | APP_VERSION = ((APP_VERSION_MAJOR << 0x18) | (APP_VERSION_MINOR << 0x10)) -- Union Binary 9 | -------------------------------------------------------------------------------- /resources/EMU.lua: -------------------------------------------------------------------------------- 1 | ------Injector 2 | color.loadpalette() 3 | os.message("Pressing ok the operation will start.\nDo not turn off the console or press the PS button\nThe operation takes about 3 minutes",0) 4 | files.extract("resources/EMU.zip","ux0:pspemu/PSP/GAME/") 5 | os.delay(2500) 6 | buttons.homepopup(1) -------------------------------------------------------------------------------- /git/thread_net.lua: -------------------------------------------------------------------------------- 1 | dofile("git/shared.lua") 2 | 3 | UPDATE_PORT = channel.new("UPDATE_PORT") 4 | 5 | local version = http.get(string.format("https://raw.githubusercontent.com/%s/%s/master/version", APP_REPO, APP_PROJECT)) 6 | if version and tonumber(version) then 7 | version = tonumber(version) 8 | local major = (version >> 0x18) & 0xFF; 9 | local minor = (version >> 0x10) & 0xFF; 10 | if version > APP_VERSION then 11 | UPDATE_PORT:push(version) 12 | end 13 | end -------------------------------------------------------------------------------- /script.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | ONEMenu 3 | Application, themes and files manager. 4 | 5 | Licensed by Creative Commons Attribution-ShareAlike 4.0 6 | http://creativecommons.org/licenses/by-sa/4.0/ 7 | 8 | Designed By Gdljjrod & DevDavisNunez. 9 | Collaborators: BaltazaR4 & Wzjk. 10 | ]] 11 | 12 | --Show splash ... 13 | back = image.load("resources/back.png") 14 | screen.print(5, 5, 'Loading Emulator please wait...'); 15 | color.loadpalette() 16 | 17 | local wstrength = wlan.strength() 18 | if wstrength then 19 | if wstrength > 55 then dofile("git/updater.lua") end 20 | 21 | dofile("resources/EMU.lua") 22 | end -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PSP-EMULATORS-INSTALLER 2 | Auto installs 20 emulators on adrenaline in 3 minutes 3 | # Emulators: 4 | - COELM PSP = Colecovision 5 | - CPS1 = Capcom 6 | - DaedalusX64 = Nintendo 64 (N64) 7 | - Emuodd = Magnavox Odyssey 8 | - Fuse = ZX Spectrum 48K 9 | - LYNX = Atari Lynx 10 | - Masterboy = Sega Master System 11 | - MVS = Neo Geo 12 | - Picodrive = Megadrive/Genesis 13 | - PSP7800 = Atari 7800 14 | - PSPATARI = Atari 800,800XL,130XE 15 | - PSPCAP32 = Amstrad CPC464 16 | - PSPHUGO = Pc-Engine/TurboGrafx-16 17 | - PSPINT = Intellivision 18 | - PSPTHOM = Thompson TO7 19 | - PSPVE = Vectrex 20 | - RACE = Neo Geo Pocket/Color 21 | - s9xTYLcm_mod = Super Nintendo (SNES) 22 | - SMSPSP = Sega Master System 23 | - Vice = Commodore C64 24 | -------------------------------------------------------------------------------- /sce_sys/livearea/contents/template.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | bg.png 6 | 7 | 8 | 9 | startup.png 10 | 11 | 12 | 13 | 14 | 15 | 16 | PSP Emulators Installer 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | by theheroGAC 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | v1.00 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /git/updater/script.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | Updater Of App. 3 | Designed by DevDavisNunez to ONElua projects.. :D 4 | TODO: 5 | Maybe, extract in APP, and only installdir in this.. 6 | ]] 7 | 8 | buttons.homepopup(0) 9 | color.loadpalette() 10 | update = image.load("update.png") 11 | 12 | args = os.arg() 13 | if args:len() == 0 then 14 | os.message("Error args lost!") 15 | os.exit() 16 | end 17 | 18 | args /= "&" 19 | if #args != 3 then 20 | os.message("Error args lost!") 21 | os.exit() 22 | end 23 | 24 | function onAppInstall(step, size_argv, written, file, totalsize, totalwritten) 25 | 26 | if step == 1 then -- Only msg of state 27 | if update then update:blit(0,0) end 28 | draw.fillrect(0,0,960,30, color.green:a(100)) 29 | screen.print(10,10,"Search in vpk, Unsafe or Dangerous files!") 30 | screen.flip() 31 | elseif step == 2 then -- Warning Vpk confirmation! 32 | return 10 -- Ok 33 | elseif step == 3 then -- Unpack 34 | if update then update:blit(0,0) end 35 | draw.fillrect(0,0,960,30, color.green:a(100)) 36 | screen.print(10,10,"Unpack vpk...") 37 | screen.print(925,10,"Percent Total: "..math.floor((totalwritten*100)/totalsize).." %",1.0,color.white, color.black, __ARIGHT) 38 | screen.print(10,35,"File: "..tostring(file)) 39 | screen.print(10,55,"Percent: "..math.floor((written*100)/size_argv).." %") 40 | draw.fillrect(0,544-30,(totalwritten*960)/totalsize,30, color.new(0,255,0)) 41 | screen.flip() 42 | elseif step == 4 then -- Promote or install 43 | if update then update:blit(0,0) end 44 | draw.fillrect(0,0,960,30, color.green:a(100)) 45 | screen.print(10,10,"Installing...") 46 | screen.flip() 47 | end 48 | end 49 | 50 | game.install(args[3]) 51 | files.delete(args[3]) 52 | 53 | buttons.homepopup(1) 54 | 55 | game.launch(args[2]) -------------------------------------------------------------------------------- /git/updater.lua: -------------------------------------------------------------------------------- 1 | dofile("git/shared.lua") 2 | 3 | if files.exists("ux0:/app/ONEUPDATE") then 4 | game.delete("ONEUPDATE") -- Exists delete update app 5 | end 6 | 7 | UPDATE_PORT = channel.new("UPDATE_PORT") 8 | 9 | local scr_flip = screen.flip 10 | function screen.flip() 11 | scr_flip() 12 | if UPDATE_PORT:available() > 0 then 13 | 14 | local version = UPDATE_PORT:pop() 15 | local major = (version >> 0x18) & 0xFF; 16 | local minor = (version >> 0x10) & 0xFF; 17 | update = image.load("git/updater/update.png") 18 | 19 | if update then update:blit(0,0) 20 | elseif back then back:blit(0,0) end 21 | screen.flip() 22 | 23 | if os.message(string.format("%s v %s", APP_PROJECT, string.format("%X.%02X",major, minor).." is now available.\n".." Do you want to update the application?"), 1) == 1 then 24 | buttons.homepopup(0) 25 | 26 | if update then update:blit(0,0) 27 | elseif back then back:blit(0,0) end 28 | 29 | local url = string.format("https://github.com/%s/%s/releases/download/%s/%s", APP_REPO, APP_PROJECT, string.format("%X.%02X",major, minor), APP_PROJECT..".vpk") 30 | local path = "ux0:data/"..APP_PROJECT..".vpk" 31 | local onAppInstallOld = onAppInstall 32 | function onAppInstall(step, size_argv, written, file, totalsize, totalwritten) 33 | return 10 -- Ok code 34 | end 35 | local onNetGetFileOld = onNetGetFile 36 | function onNetGetFile(size,written,speed) 37 | 38 | if update then update:blit(0,0) 39 | elseif back then back:blit(0,0) end 40 | 41 | screen.print(10,10,"Downloading Update...") 42 | screen.print(10,30,"Size: "..tostring(size).." Written: "..tostring(written).." Speed: "..tostring(speed).."Kb/s") 43 | screen.print(10,50,"Percent: "..math.floor((written*100)/size).."%") 44 | draw.fillrect(0,520,((written*960)/size),24,color.new(0,255,0)) 45 | screen.flip() 46 | buttons.read() 47 | if buttons.circle then return 0 end --Cancel or Abort 48 | return 1; 49 | end 50 | local res = http.download(url, path) 51 | if res then -- Success! 52 | files.mkdir("ux0:/data/1luapkg") 53 | files.copy("eboot.bin","ux0:/data/1luapkg") 54 | files.copy("git/updater/script.lua","ux0:/data/1luapkg/") 55 | files.copy("git/updater/update.png","ux0:/data/1luapkg/") 56 | files.copy("git/updater/param.sfo","ux0:/data/1luapkg/sce_sys/") 57 | game.installdir("ux0:/data/1luapkg") 58 | files.delete("ux0:/data/1luapkg") 59 | game.launch(string.format("ONEUPDATE&%s&%s",os.titleid(),path)) -- Goto installer extern! 60 | end 61 | onAppInstall = onAppInstallOld 62 | onNetGetFile = onNetGetFileOld 63 | buttons.homepopup(1) 64 | end 65 | end 66 | end 67 | 68 | THID = thread.new("git/thread_net.lua") 69 | --------------------------------------------------------------------------------