cursos:ensamblador:compresion_rle

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
cursos:ensamblador:compresion_rle [19-01-2024 08:30] – [Programa de ejemplo de descompresión] sromerocursos:ensamblador:compresion_rle [19-01-2024 12:35] (actual) – [Programa de ejemplo de descompresión] sromero
Línea 363: Línea 363:
 rle_dec_compressed:               ; bucle para descompresión rle_dec_compressed:               ; bucle para descompresión
     push bc     push bc
-    and 63                        ; cogemos el numero de repeticiones+    and %00111111                 ; cogemos el numero de repeticiones
     ld b, a                       ; lo salvamos en B     ld b, a                       ; lo salvamos en B
     inc hl                        ; y leemos otro byte (dato a repetir)     inc hl                        ; y leemos otro byte (dato a repetir)
Línea 567: Línea 567:
  
 \\  \\ 
-  * **Método INCBIN**: Incluyendo el binario directamente en Pasmo con la directiva ''INCBIN'' asociándole una etiqueta para poder hacer referencia a él:\\ <code>+  * **Método INCBIN**: Incluyendo el binario directamente en Pasmo con la directiva ''INCBIN'' asociándole una etiqueta para poder hacer referencia a él:\\ \\ <code>
 Datos_Comprimidos: Datos_Comprimidos:
    INCBIN "fichero.rle"    INCBIN "fichero.rle"
Línea 573: Línea 573:
 \\  \\ 
  
-  * **Método BIN2CODE**: Convirtiendo los datos binarios a "texto" con una utilidad como BIN2C o BIN2CODE (las tenéis disponibles como descargas en la sección de ficheros). Estas utilidades para PC (Linux, MAC, DOS/Windows) toman un fichero binario y lo convierten a datos listos para incluir en nuestros programas:\\ <code>+  * **Método BIN2CODE**: Convirtiendo los datos binarios a "texto" con una utilidad como BIN2C o BIN2CODE (las tenéis disponibles como descargas en la sección de ficheros). Estas utilidades para PC (Linux, MAC, DOS/Windows) toman un fichero binario y lo convierten a datos listos para incluir en nuestros programas:\\ \\ <code>
 [sromero@compiler:~rlezx]$ bin2code sokoban.rle datos.asm a [sromero@compiler:~rlezx]$ bin2code sokoban.rle datos.asm a
 BIN2CODE v1.0             By NoP of Compiler SoftWare BIN2CODE v1.0             By NoP of Compiler SoftWare
Línea 618: Línea 618:
 Wait_For_Keys_Pressed:         ; Bucle para esperar pulsación de tecla Wait_For_Keys_Pressed:         ; Bucle para esperar pulsación de tecla
     xor a     xor a
-    in a, (254+    in a, ($fe
-    or 224+    or %11100000
     inc a     inc a
     jr z, Wait_For_Keys_Pressed     jr z, Wait_For_Keys_Pressed
Línea 707: Línea 707:
 RLE_Comprimir: RLE_Comprimir:
 rle_byte_1: rle_byte_1:
-          ld e, (IX+$00)                 ; leer byte+          ld e, (ix+$00)                 ; leer byte
           inc ix                         ; incrementar posicion           inc ix                         ; incrementar posicion
           dec bc                         ; descontar contador           dec bc                         ; descontar contador
Línea 752: Línea 752:
           ret z                          ; /           ret z                          ; /
           dec bc                         ; descontar contador           dec bc                         ; descontar contador
-          ld a, (IX+$00)                 ; leer byte+          ld a, (ix+$00)                 ; leer byte
           inc ix                         ; incrementar posicion           inc ix                         ; incrementar posicion
           ret           ret
Línea 888: Línea 888:
 \\  \\ 
 **[ [[.:indice|⬉]] | [[.:gfx5_mapeados|⬅]] | [[.:avanzadas1|➡]] ]** **[ [[.:indice|⬉]] | [[.:gfx5_mapeados|⬅]] | [[.:avanzadas1|➡]] ]**
 +
  • cursos/ensamblador/compresion_rle.1705653027.txt.gz
  • Última modificación: 19-01-2024 08:30
  • por sromero