mirror of
https://github.com/emmanuel-marty/lzsa.git
synced 2025-02-16 17:30:44 +00:00
More asm fixes
This commit is contained in:
parent
aa122d1e05
commit
693618f100
@ -5,7 +5,7 @@
|
|||||||
;
|
;
|
||||||
; NMOS 6502 decompressor for data stored in Emmanuel Marty's LZSA1 format.
|
; NMOS 6502 decompressor for data stored in Emmanuel Marty's LZSA1 format.
|
||||||
;
|
;
|
||||||
; This code is written for the PCEAS/NECASM assembler in HuC & MagicKit.
|
; This code is written for the ACME assembler.
|
||||||
;
|
;
|
||||||
; Optional code is presented for one minor 6502 optimization that breaks
|
; Optional code is presented for one minor 6502 optimization that breaks
|
||||||
; compatibility with the current LZSA1 format standard.
|
; compatibility with the current LZSA1 format standard.
|
||||||
|
@ -197,7 +197,7 @@ DECOMPRESS_LZSA2_FAST:
|
|||||||
lzsa2_unpack: ldy #0 ; Initialize source index.
|
lzsa2_unpack: ldy #0 ; Initialize source index.
|
||||||
sty <lzsa_nibflg ; Initialize nibble buffer.
|
sty <lzsa_nibflg ; Initialize nibble buffer.
|
||||||
|
|
||||||
!if !(LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) {
|
!if (LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) = 0 {
|
||||||
|
|
||||||
beq .cp_length ; always taken
|
beq .cp_length ; always taken
|
||||||
.incsrc1:
|
.incsrc1:
|
||||||
@ -232,10 +232,10 @@ lzsa2_unpack: ldy #0 ; Initialize source index.
|
|||||||
lda (lzsa_srcptr),y
|
lda (lzsa_srcptr),y
|
||||||
inc <lzsa_srcptr + 0
|
inc <lzsa_srcptr + 0
|
||||||
beq .incsrc1
|
beq .incsrc1
|
||||||
.resume_src1:
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.resume_src1:
|
||||||
sta <lzsa_cmdbuf ; Preserve this for later.
|
sta <lzsa_cmdbuf ; Preserve this for later.
|
||||||
and #$18 ; Extract literal length.
|
and #$18 ; Extract literal length.
|
||||||
beq .lz_offset ; Skip directly to match?
|
beq .lz_offset ; Skip directly to match?
|
||||||
@ -491,7 +491,7 @@ lzsa2_unpack: ldy #0 ; Initialize source index.
|
|||||||
|
|
||||||
jmp .cp_length ; Loop around to the beginning.
|
jmp .cp_length ; Loop around to the beginning.
|
||||||
|
|
||||||
!if !(LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) {
|
!if (LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) = 0 {
|
||||||
|
|
||||||
.incsrc3:
|
.incsrc3:
|
||||||
inc <lzsa_srcptr + 1
|
inc <lzsa_srcptr + 1
|
||||||
@ -628,7 +628,7 @@ lzsa2_new_nibble:
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
!if !(LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) {
|
!if (LZSA_FROM_BANK | LZSA_NO_INLINE | LZSA_USE_FFFF) = 0 {
|
||||||
|
|
||||||
.incsrc4:
|
.incsrc4:
|
||||||
inc <lzsa_srcptr + 1
|
inc <lzsa_srcptr + 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user