Skip to content

Commit 8859f7d

Browse files
committed
update docs
1 parent dd452d7 commit 8859f7d

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

changelog

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,3 +128,4 @@ v1.1
128128
- decomp: ~20% faster than with v0.7
129129
- pack ratio: ~5,5% smaller than bitnax
130130
- add --prefix-from to dali
131+
- add --prefix-file to dali

readme.txt

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,11 @@ Input file is a raw binary without load-address, the load-address needed is take
3737
--to [$num]
3838
With those two flags the file can be cut into desired slices that are then fed to the packer. This way the file can easily split up into a portion that gies up until $d000 and a portion that gies from $d000-$ffff (remember, no loading under i/o possible)
3939

40-
--use-prefix
41-
Use preceeding data of file as dictionary. This requires, that the data referenced here is also in memory at the same location when depacking.
40+
--prefix-from [$num]
41+
Use preceeding data of file as dictionary. This requires, that the data referenced here is also in memory at the same location when depacking. You can specify from which address on the dictionary should be used.
42+
43+
--prefix-file [filename]
44+
Same as above, but by handing over a file that contains the preceeding dictionary data.
4245

4346
--relocate-packed [$num]
4447
Relocate packed data to desired address [$num]. The resulting file can't de decompressed inplace anymore after that, as it requires an end-marker then.
@@ -267,9 +270,20 @@ This will result in two files that can be loaded/depacked in one go by link_load
267270
Basically the load_next_double call is loading the first part and decrunching it on the fly, then loading the next part raw, switching off the IO, depacking that and turning on IO again.
268271

269272
Other interesting options are:
270-
--use-prefix
273+
--prefix-from [addr]
274+
--prefix-file [filename]
275+
276+
If you split a file and load both parts one after another, you can add this switch to the second part. It will then be packed with using the already loaded data as dictionary from the given address on, what will result in smaller files. Alternatively you can also give a file taht is prepended and used as dictionary.
271277

272-
If you split a file and load both parts one after another, you can add this switch to the second part. It will then be packed with using the already loaded data as dictionary, what will result in smaller files.
278+
Example:
279+
dali -o demopart1.prg --from 0x2000 --to 0x8000 demopart.prg
280+
dali -o demopart2.prg --prefix-from 0x2000 --from 0x8000 --to 0xd000 demopart.prg
281+
dali -o demopart3.prg --prefix-from 0x2000 --from 0xd000 --to 0xffff demopart.prg
282+
283+
This will split up demopart.prg into three chunks that can be loaded one after another as soon as the memory is free. Part2 can already refer to data from part1 and part3 can refer to data from part2 and part1. If there's code inbetween that changes while loading, just choose another memory range for the dict:
284+
dali -o demopart1.prg --from 0x2000 --to 0x8000 demopart.prg
285+
dali -o demopart2.prg --prefix-from 0x2000 --from 0x8000 --to 0xd000 demopart.prg #code from $2000-$4000 is changed while loading demopart3
286+
dali -o demopart3.prg --prefix-from 0x4000 --from 0xd000 --to 0xffff demopart.prg
273287

274288
NMI-gaps
275289
--------

0 commit comments

Comments
 (0)