Yo programé un compresor de juegos y su descompresor (BINPAK le puse). Tenía sólo un algoritmo muy simple para eliminación de bloques de caracteres repetidos, muy usual en juegos con pantallas predibujadas. La gracia era que los binarios comprimidos podían ser descomprimidos en memoria y partir inmediatamente después de cargar. Era muy útil para grabar juegos en cassette y acelerar la carga, pues no chocaba con el loader de turno, menos cuando usaba mi SITRE. Para mejorarlo, pensé en la identificación de patrones completos repetidos, pero ahí ya me manié... bajo ciertas condiciones no iba a lograr el objetivo de cargar, desempaquetar y correr usando poca memoria (no requería la RAM extra de un 130XE).
No he usado otros compresores, pero si piden direcciones de memoria es precisamente porque no quieren chocar con el loader, y esos parámetros son exclusivos de cada loader, usualmente páginas 6 o 7 en adelante (o sea, a partir de $600=1536 o $700=1792, más por lo bytes que ocupe el loader), y tal vez el límite superior de la memoria en la máquina de destino (ej, un 800XL con 64K, 48K al momento de la carga, o un 600XL con 16K). Pero si el compresor consulta sobre datos específicos del binario a comprimir, entonces no sabe qué está haciendo.
++V
El negocio de mi señora: Fotografía de Matrimonios ¡Sorry por el SPAM!