¿Qué es el formato de archivo BPS?
.bps es un formato de parche delta binario utilizado en la comunidad de retro gaming para distribuir hacks de ROM y traducciones de fans sin distribuir datos de ROM protegidos por derechos de autor. El formato fue creado por byuu (Near), autor del emulador de SNES bsnes, alrededor de 2012, y su especificación fue liberada al dominio público.
Un archivo .bps comienza con el encabezado ASCII de cuatro bytes BPS1 en el desplazamiento cero -el 1 es el número de versión del formato- seguido de enteros de longitud variable que codifican el tamaño del archivo de origen, el tamaño del archivo de destino y un bloque de metadatos opcional (texto UTF-8). El cuerpo del parche utiliza cuatro tipos de comandos: SourceRead (copiar bytes sin cambios desde el origen), TargetRead (escribir nuevos bytes), SourceCopy (copiar desde un desplazamiento de origen arbitrario) y TargetCopy (copiar desde la salida ya escrita). El archivo termina con tres sumas de comprobación CRC32 (4 bytes cada una, little-endian): una para la ROM de origen, otra para la ROM de salida esperada y otra que cubre el propio archivo de parche. Un parcheador se negará a aplicarlo si la suma de comprobación de origen no coincide, evitando una salida corrupta.
BPS sucedió al antiguo formato IPS al eliminar su límite de tamaño de archivo de 16 MB y añadir verificación de integridad integrada. Se utiliza ampliamente para hacks de ROM de SNES, GBA y NDS.
Las herramientas comunes incluyen flips (Floating IPS, Windows/Linux), MultiPatch (macOS), UniPatcher (Android) y parcheadores basados en navegador como RomPatcher.js.
Seguridad y protección
RIESGO: MEDIUMLos archivos BPS en sí mismos son solo datos de parche y no pueden ejecutar código; requieren una herramienta de parcheo independiente y una ROM. El riesgo proviene de descargar herramientas de parcheo de fuentes no oficiales (algunas incluyen adware) y de la legalidad de la distribución de ROM en su jurisdicción. Los parcheadores recomendados (Floating IPS, RomPatcher.js) son herramientas limpias de código abierto.
Detalles del formato
en pocas palabras- Archivo de copia de seguridad de Microsoft Works - Entradas antiguas en algunos sitios de información de archivos afirman que .bps = copia de seguridad de documentos de Microsoft Works; se trata de una identificación errónea - no hay evidencia de que esta asociación sea real o se utilice ampliamente.
Programas que abren archivos BPS
Detalles técnicos
especificación profunda| Bytes mágicos | `42 50 53 31` (`BPS1`) en el desplazamiento 0 - `1` denota la versión del formato |
| Orden de bytes | Little-endian (enteros de longitud variable y sumas de comprobación CRC32) |
| Contenedor | Formato binario lineal personalizado (sin contenedor estándar) |
| Codificación | Binario |
| Codificación de enteros | Enteros sin signo de longitud variable (7 bits por byte, MSB como indicador de continuación) |
| Comandos de parche | SourceRead, TargetRead, SourceCopy, TargetCopy |
| Esquema de suma de comprobación | Tres sumas de comprobación CRC32 (ROM de origen, ROM de destino, archivo de parche) - 4 bytes cada una, little-endian |
| Validación de origen | El parcheador se detiene si el CRC32 de origen no coincide con la suma de comprobación integrada - evita la aplicación en la ROM incorrecta |
| Tamaño de archivo típico | De unos pocos KB a varios MB (proporcional al tamaño de la diferencia de la ROM) |
| Especificación | Dominio público (publicado por byuu/Near, hacia 2012); versión única BPS1 |
| Plataformas de destino | SNES, GBA, NDS y otros objetivos de hacks de ROM retro |
| Formatos predecesores | IPS (sin sumas de comprobación, límite de tamaño de 16 MB), UPS |
| Lanzado | circa 2012 (byuu/beat tool) |
| Última versión | BPS1 (single version in spec) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | github.com |
Conversiones de BPS
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos BPS.