Im Thread Bitte melde dich an, um diesen Link zu sehen. wurde von Krill Bitte melde dich an, um diesen Link zu sehen. als gute Alternative genannt.
Diesen habe ich mir mal angesehen und ein zwei Verständnis Fragen dazu. Mein Ziel ist es Daten nachzuladen um sie dann an die entsprechende Stelle extrahieren zu lassen.
Im Code zu Dali steht folgendes:
; ***************************************************************************
; ***************************************************************************
;
; Data usage is 8 bytes of zero-page.
;
zx0_srcptr = $F8 ; 1 word.
zx0_dstptr = $FA ; 1 word.
zx0_length = $FC ; 1 word.
zx0_offset = $FE ; 1 word.
; ***************************************************************************
; ***************************************************************************
;
; zx0_unpack - Decompress data stored in Einar Saukas's ZX0 format.
;
; Args: zx0_srcptr = ptr to compessed data
; Args: zx0_dstptr = ptr to output buffer
; Uses: lots!
;
zx0_unpack: ldy #$FF ; Initialize default offset.
sty <zx0_offset+0
sty <zx0_offset+1
iny ; Initialize source index.
Alles anzeigen
Verstehe ich das richtig, in die Zeropage $F8 und $F9 setze ich die Position des gepackten Bereiches im Speicher, in $FA $FB setze ich wohin er entpacken soll, in $FC $FD wie lange die entpackte Datei ist.
Beispiel, ich habe Daten für den Screen gepackt an $3000 liegen welche an $0800 entpackt werden sollen, die Länge ist $400 (1kb)
lda #$00 ;Quelle
sta $F8
lda #$30
sta $F9
lda #$00 ;Ziel
sta $FA
lda #$0
sta $FB
lda #$00 ;Länge
sta $FC
lda #$04
sta $FD
jsr zx0_unpack ;Starte entpacken
Alles anzeigen
Jetzt haben wir ja noch den Offset, ist es mit dem möglich, eine gepackte Datei aus Screen und ColorRam Bereich zusammen zu packen und dann den ColorRam Bereich separat zu entpacken in dem ich den Offset mit $FE = 00 und $FF = 04 setze?`sprich , dass er nach dem Screen erst anfängt?