diff --git a/LEEME.txt b/LEEME.txt index 6e190da..33487fb 100644 --- a/LEEME.txt +++ b/LEEME.txt @@ -1,5 +1,5 @@ -PS5 DIRECTO 1.19 -================ +PS5 DIRECTO 1.19.1 +================== (English: see README_EN.txt) Pega los enlaces (o arrastra archivos de tu PC) y la herramienta hace todo sola: @@ -175,6 +175,16 @@ de quien es la culpa cuando va lento. Tambien hay uno solo PC -> PS5 en Ajustes. +NOVEDADES 1.19.1 +- Arreglado: la cola dejaba de actualizarse sola (desde la 1.18.3), así que + "Quitar" parecía no hacer nada y luego decía "no existe". +- El explorador vuelve a listar la carpeta abierta cuando termina una subida + a esa carpeta. +- Arreglado "Descargar al PC" con juegos: ftpsrv descifraba al vuelo los + eboot.bin/.prx/.sprx y la descarga salía incompleta. Ahora se transfieren + tal cual están (también mejora comparar tamaños al reanudar carpetas). + Gracias a RichyMX por encontrarlo y proponer el arreglo. + NOVEDADES 1.19 - Explorador de archivos renovado: menú de clic derecho, atajos de teclado, ruta por tramos, unidades y accesos a la izquierda, "Mover a…" / "Copiar diff --git a/README_EN.txt b/README_EN.txt index cbdb830..f04c798 100644 --- a/README_EN.txt +++ b/README_EN.txt @@ -1,4 +1,4 @@ -PS5 DIRECTO 1.19 — USER GUIDE (English) +PS5 DIRECTO 1.19.1 — USER GUIDE (English) ========================================= Paste links (or drag files from your PC) and the tool does the rest: @@ -227,6 +227,13 @@ Settings and queue are stored in %USERPROFILE%\.ps5directo WHAT'S NEW ---------- +1.19.1 - Fixed: the queue stopped updating by itself (since 1.18.3), so + "Remove" seemed to do nothing and then said "no existe". The file + browser now relists the open folder when an upload to it finishes. + Fixed "Download to PC" for games: ftpsrv decrypted eboot.bin/.prx/ + .sprx on the fly, so downloads came out incomplete. Files are now + transferred exactly as stored (this also makes size comparisons + when resuming folders correct). Thanks to RichyMX for finding it. 1.19 - Renewed file browser: right-click menu, keyboard shortcuts, clickable path, drives and places on the left, "Move to…" / "Copy to…" with recent destinations, a choice when pasting over existing diff --git a/app.py b/app.py index 29fd336..c98a32d 100644 --- a/app.py +++ b/app.py @@ -22,7 +22,7 @@ HERE = os.path.dirname(os.path.abspath(__file__)) sys.path.insert(0, HERE) import engine as E # noqa: E402 -VERSION = "1.19.0" +VERSION = "1.19.1" # Repositorio de GitHub donde se publican las versiones (usuario/nombre). Si lo rellenas, # todas las copias buscan actualizaciones ahi sin tener que configurar nada. DEFAULT_REPO = "jstrdev/ps5directo" diff --git a/engine.py b/engine.py index e3a220e..08ef773 100644 --- a/engine.py +++ b/engine.py @@ -967,6 +967,21 @@ def clean_host(text): return t.strip(".").strip("[]"), port +def raw_mode(f): + """ftpsrv (ps5-payload-dev) descifra al vuelo los SELF (eboot.bin, .prx, .sprx): al bajarlos + llega el ELF de dentro, con otro tamano, y los listados tambien dan ese tamano. Su comando + SELF lo activa/desactiva en cada conexion: lo dejamos apagado para ver los archivos tal + cual estan. Los servidores que no lo conocen responden con error y no pasa nada. + (Gracias a RichyMX por encontrarlo.)""" + try: + r = f.sendcmd("SELF") + if "enabled" in r.lower(): + r = f.sendcmd("SELF") + return "disabled" in r.lower() + except ftplib.all_errors: + return False + + class Ftp: def __init__(self, cfg): self.host = clean_host(cfg["ps5_ip"])[0] @@ -987,6 +1002,7 @@ class Ftp: f.login(self.user, self.pw) f.set_pasv(True) f.voidcmd("TYPE I") + raw_mode(f) try: f.sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) except Exception: diff --git a/index.html b/index.html new file mode 100644 index 0000000..134d75f --- /dev/null +++ b/index.html @@ -0,0 +1,1603 @@ + + +
+ + +| + | Nombre | +Tamaño | + + ++ |
|---|
Atajos: doble clic abre · clic derecho para el menú · Supr borra · F2 renombra · Ctrl+C / Ctrl+X / Ctrl+V · Ctrl+A selecciona todo · Retroceso sube
+Mira qué ocupa sitio en la consola, con nombres y tamaños, para decidir qué borrar. Avisa de juegos repetidos (por ejemplo la carpeta y su versión convertida), envíos a medias y restos. Necesita BFpilot.
+| Nombre | Tamaño |
|---|
Historial de transferencias terminadas o con error (las últimas 500).
+| Fecha | Nombre | Resultado | Tamaño | Duración | Destino |
|---|