Protector 3

Cómo pasar juegos a diferentes archivos, herramientas, software.
Poliyo
Keeper of The Forum
Keeper of The Forum
Mensajes: 909
Registrado: Jue 12 May , 2016 10:07 pm
Ubicación: Valencia

Protector 3

Mensajepor Poliyo » Mié 04 Abr , 2018 8:46 pm

Bueno, después de un tiempo trabajando en él estoy contento de subir una nueva versión de protector.
Programa para proteger cargadores Basic.
Con respecto a mis versiones viejas decir que esta vez lo he hecho todo en Basic (la idea me la dio un programa francés, que la verdad, ni vi que opciones incluía ni nada, igual es mas de lo mismo).
Incluye dos formas de proteger:
-Desde la primera linea del programa a la que decidas
-Desde una linea hasta otra
Cada una de las opciones usa formas distintas de protección.
Incluye una tercera opción de protección manual en la que vas eligiendo manualmente los valores a cambiar y una ultima opción que es para investigar los valores de cabecera de linea de un cargador. Esta última opción viene por duplicado, una en el programa principal (en Basic) y otra externa que es Basic compilado con Typhon (y anda que no me mareó pues desconocía que el Typhon no admitía el comando HEX$ y en su lugar usaba un comando propio que me hizo recomponer todo el código y visualizar de forma diferente a la del Basic).

También se incluye un fichero Basic leeme con la documentación.
Protector 3 Definitivo 2.DSK
(190.25 KiB) Descargado 56 veces
Si lo probáis, encontráis algún error o mejora comentarlo, estoy abierto a cualquier tipo de sugerencia.
Yo por de pronto he recordado la función PRINT USING que creo me liberará de unos incómodos y largos IFs, pero la verdad, después de estar mas de 25 años sin programar en Amstrad para mi ha sido todo un reto.

Espero que os guste y pueda ser útil.

Avatar de Usuario
MiguelSky
Lord of Short Time
Lord of Short Time
Mensajes: 6971
Registrado: Sab 08 Oct , 2005 2:02 am
Contactar:

Re: Protector 3

Mensajepor MiguelSky » Mié 04 Abr , 2018 11:02 pm

=D> =D> =D>

Poliyo
Keeper of The Forum
Keeper of The Forum
Mensajes: 909
Registrado: Jue 12 May , 2016 10:07 pm
Ubicación: Valencia

Re: Protector 3

Mensajepor Poliyo » Mar 28 Ene , 2020 6:55 pm

Bueno, me enfrenté hace poco a un programa protegido en Basic, así que voy ha hacer una pequeña guía de como desprotegerlo usando este programa.
El programa en cuestión es el
Brian Clough's Football Fortunes
Cuando haces in CAT/DIR solo ver un fichero, el cargador, el resto están en modo oculto, esto no es un problema, cualquier monitor de disco, incluso el CP/M, puede ser usado para hacerlos visibles.
Cuando cargas el cargador y haces un LIST solo ves las primeras seis líneas, todas REM, así que, primero ya sabemos que el cargador no está protegido con la opción ,P cuando se graba (la puedes eliminar fácilmente con el programa REMPRO de ODDJOB) y que debe haber mucho mas de lo que parece.
La sospecha es que la sexta línea tenga una longitud superior a lo que le toca, por lo que no permite ver el resto del listado.
Manos a la obra. Por un lado tenemos el juego, por otro la aplicación protector3, una puede estar en A y la otra en B, por ejemplo, o bien alternamos discos.
Sino tenemos en memoria el cargador lo cargamos con LOAD
Una vez en memoria pasamos o cambiamos el disco que tenga el protector3 y hacemos
RUN "VER
Veremos una serie de datos de las líneas del programa y como sospechamos, si vemos la longitud de la línea 6 esta es completamente ilógica.
Si vemos los valores de sus direcciones de tamaño
&0201 y &0202
Veremos que la primera tiene un valor de 6, algo hasta cierto punto lógico, pero la segunda dirección (el byte alto) tiene una valor irreal.
Lo vamos a poner a 0 a ver
POKE &202,0
Y hacemos un LIST
Voila, tenemos ya todo el listado.

En breve espero mandarle el juego traducido a Miguel para que lo cuelgue en la Web

Avatar de Usuario
Artaburu
Trasteador
Trasteador
Mensajes: 8420
Registrado: Vie 07 Oct , 2005 6:18 pm
Ubicación: En tu pantalla

Re: Protector 3

Mensajepor Artaburu » Mar 28 Ene , 2020 7:25 pm

Muy interesante, así que a un programa BASIC le cambias la longitud de la línea modificando el byte que la indica, el LIST sale truncado. :-k
Lo que se discurría en el pasado para evitar pirateos :mrgreen:
Salu2,
Arta

Poliyo
Keeper of The Forum
Keeper of The Forum
Mensajes: 909
Registrado: Jue 12 May , 2016 10:07 pm
Ubicación: Valencia

Re: Protector 3

Mensajepor Poliyo » Mar 28 Ene , 2020 8:47 pm

Si.
Se las ingeniaban que no veas.
A mi había dos que me gustaban, una por su sencillez.
Si las primeras líneas de un programa basic tienen como número 0 (cero) no aparecen en el listado, eso sí, con un simple renum se desprotege.
La otra, mi favorita, era ocultar una o varias líneas intermedias, por ejemplo, iba de 10 en 10 los números de línea, añadía la línea 35 que era la que había que proteger y a la línea 30 le daba como longitud la suya más la de la línea 35.
Viola, veías perfectamente todo el programa menos la 35.
No obstante hay una forma que solo he visto una vez y tengo traspapelado (quería investigar aunque imagino por donde van los tiros) y era un cargador basic que al hacer load, cargaba, pero cuando haces list te da un "unknown command" o algo así


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro


La Comunidad Española
ESP Soft, juegos para tu CPC Foro de Amstrad CPC Todos los juegos para CPC en un CD Web dedicada al Amstrad CPC (utilidades) Información útil para el CPC (talleres) Selección de juegos de Amstrad CPC Mundo CPC Pree Play then any Key CPC Basic