Author Topic: Sierra's Internal SCI Tools  (Read 35887 times)

0 Members and 2 Guests are viewing this topic.

Offline robbo007

Re: Sierra's Internal SCI Tools
« Reply #30 on: October 26, 2025, 06:14:36 PM »
It's either the fact you're using absolute paths where the example uses relative, or it's because you're using backslashes where the example uses forward slashes. Take your pick.

For the former, either specify it like ./view instead of C:\Studio\testcomp\INPUT\view, or as just view etc.

I've tried every combination. I don't think the issue comes from the paths being mal formed. Could it be certain versions of makevols.exe only work with SCI0 resources?
Regards,

Offline lskovlun

Re: Sierra's Internal SCI Tools
« Reply #31 on: October 26, 2025, 06:46:36 PM »
It looks like you're not specifying the section to "execute" on your command line. Again, from LSL3:
Code: [Select]
makevols LL3%1 -F..\floppy.src -st >> ..\%1.err
The idea was that you would specify either 360 or 720 on the command line and MAKEVOLS would execute either section LL3360 or LL3720 (MAKEVOLS is not case sensitive, as I have just confirmed by inspection of resource.txt). I don't know what MAKEVOLS does in the absence of that first argument, but selecting the first one would be a good guess. And if that is your setpaths section, that would lead to an empty output file (and hence a divide-by-zero exception).

Offline lskovlun

Re: Sierra's Internal SCI Tools
« Reply #32 on: October 26, 2025, 06:57:09 PM »
Could it be certain versions of makevols.exe only work with SCI0 resources?
Regards,
I don't think so. After all, makevols is agnostic of the types of resources that the interpreter uses. As we've seen, the programmer specifies that in resource.txt. On the other hand, the interpreter might well barf at the resulting files (because SCI0 and SCI01 are different in that respect). How did the conversion to SCI01 go?

EDIT: This is not true of SCI1, where you have the preprocessing steps that improve the compression ratio. And possibly not in SCI11 either.
« Last Edit: October 26, 2025, 08:36:04 PM by lskovlun »

Offline robbo007

Re: Sierra's Internal SCI Tools
« Reply #33 on: October 28, 2025, 06:58:42 AM »
Amazing thanks lskovlun :)

30% compression, from 7MB to 5MB.

Volume.000 is 5130409 bytes long.
Volume.001 is 5061709 bytes long.
Bytes read: 7204754
Bytes written: 5061709
Compression: 30%

If I then compress on top with Winrar I get the entire game to 4MB. But if I just use Winrar I get down to 3mb. So in the end I won't use makevols just Winrar. I'll have to use a new installer to unzip to hard disk. I'm still on my 10x 360kb floppy disk limit. But still need to add sfx and music. Ouch!

Here is my resource.txt that works: using the syntax: makevols ll4 -f resource.txt

Code: [Select]
;**
;** Resource list for both 360K and 720K floppy-based games.
;**
;** LSL4:  Never Say Nontoonyt
;**        Copyright 2025
;** by Robbbo
;**
;** Last Update: October 28, 2025
;**

(setpaths
        resource        view            0x80   ./view/view
        resource        pic             0x81    ./pic/pic
        resource        script  0x82    ./script/script
        resource        text            0x83    ./text/text
        resource        sound           0x84    ./sound/sound
        resource        vocab           0x86    ./script/vocab/vocab
        resource        font            0x87   ./font/font
        resource        cursor  0x88   ./cursor/cursor
        resource        patch           0x89   ./patch/patch
)
(ll4
volumes 1
setpaths
volume1

)
(volume1
; Cursors
cursor 768
cursor 992
cursor 997
cursor 999

; Fonts
font 000
font 001
font 004
font 007
font 009
font 100
font 200
font 300
font 600
font 601
font 603
font 999

; Patches
patch 001
patch 002
patch 003
patch 004
patch 007
patch 101

; Pictures
pic 001
pic 002
pic 003
pic 004
pic 005
pic 006
pic 007
pic 008
pic 009
pic 010
pic 011
pic 012
pic 013
pic 014
pic 015
pic 016
pic 017
pic 018
pic 019
pic 020
pic 021
pic 022
pic 023
pic 024
pic 025
pic 026
pic 027
pic 028
pic 029
pic 030
pic 031
pic 032
pic 033
pic 034
pic 035
pic 036
pic 037
pic 038
pic 039
pic 040
pic 041
pic 042
pic 043
pic 044
pic 045
pic 046
pic 047
pic 048
pic 050
pic 051
pic 052
pic 053
pic 055
pic 056
pic 057
pic 058
pic 059
pic 060
pic 061
pic 062
pic 063
pic 064
pic 065
pic 072
pic 073
pic 079
pic 080
pic 083
pic 089
pic 090
pic 091
pic 092
pic 093
pic 094
pic 095
pic 096
pic 097
pic 098
pic 099
pic 100
pic 101
pic 102
pic 103
pic 104
pic 105
pic 106
pic 107
pic 108
pic 109
pic 110
pic 111
pic 120
pic 121
pic 122
pic 123
pic 124
pic 140
pic 377
pic 500
pic 501
pic 502
pic 503
pic 505
pic 506
pic 507
pic 509
pic 510
pic 511
pic 512
pic 514
pic 515
pic 516
pic 517
pic 518
pic 520
pic 521
pic 522
pic 523
pic 524
pic 525
pic 650
pic 653
pic 654
pic 655
pic 656
pic 658
pic 800

; Scripts
script 000
script 001
script 002
script 003
script 004
script 005
script 006
script 007
script 008
script 009
script 010
script 011
script 012
script 013
script 014
script 015
script 016
script 017
script 018
script 019
script 020
script 021
script 022
script 023
script 024
script 025
script 026
script 027
script 028
script 029
script 030
script 031
script 032
script 033
script 034
script 035
script 036
script 037
script 038
script 039
script 040
script 041
script 042
script 043
script 044
script 045
script 046
script 047
script 048
script 050
script 051
script 052
script 053
script 055
script 056
script 057
script 058
script 059
script 060
script 061
script 062
script 063
script 064
script 065
script 072
script 073
script 079
script 080
script 083
script 089
script 090
script 091
script 092
script 093
script 094
script 095
script 096
script 097
script 098
script 100
script 101
script 102
script 103
script 104
script 105
script 106
script 107
script 108
script 109
script 110
script 111
script 120
script 121
script 122
script 123
script 124
script 265
script 290
script 300
script 301
script 302
script 303
script 304
script 305
script 306
script 500
script 501
script 503
script 505
script 506
script 507
script 508
script 509
script 510
script 511
script 512
script 514
script 515
script 516
script 517
script 518
script 521
script 522
script 523
script 524
script 525
script 526
script 600
script 650
script 651
script 652
script 653
script 654
script 655
script 656
script 797
script 799
script 800
script 809
script 810
script 811
script 969
script 970
script 971
script 972
script 973
script 974
script 975
script 976
script 977
script 978
script 979
script 980
script 981
script 982
script 983
script 984
script 985
script 986
script 987
script 988
script 989
script 990
script 991
script 992
script 993
script 994
script 995
script 996
script 997
script 998
script 999

; Sounds
sound 001
sound 002
sound 004
sound 005
sound 007
sound 010
sound 021
sound 022
sound 023
sound 024
sound 025
sound 026
sound 033
sound 100
sound 101
sound 107
sound 110
sound 120
sound 140
sound 141
sound 206
sound 207
sound 253
sound 261
sound 265
sound 299
sound 323
sound 330
sound 335
sound 340
sound 341
sound 395
sound 399
sound 431
sound 435
sound 452
sound 500
sound 540
sound 560
sound 599
sound 799
sound 800
sound 801
sound 802
sound 899
sound 900

; Text
text 000
text 001
text 002
text 003
text 004
text 005
text 006
text 007
text 008
text 009
text 010
text 011
text 012
text 013
text 014
text 015
text 016
text 017
text 020
text 021
text 022
text 023
text 024
text 025
text 026
text 027
text 028
text 029
text 030
text 032
text 033
text 034
text 035
text 039
text 040
text 055
text 057
text 058
text 070
text 071
text 094
text 100
text 102
text 104
text 105
text 107
text 108
text 120
text 124
text 140
text 141
text 142
text 143
text 144
text 145
text 146
text 147
text 148
text 149
text 150
text 151
text 152
text 153
text 154
text 155
text 156
text 157
text 158
text 159
text 160
text 161
text 162
text 163
text 164
text 165
text 166
text 265
text 290
text 301
text 306
text 341
text 503
text 506
text 507
text 509
text 510
text 512
text 514
text 515
text 516
text 517
text 518
text 522
text 523
text 525
text 655
text 656
text 797
text 809
text 976

; Views
view 000
view 001
view 003
view 004
view 005
view 006
view 007
view 008
view 009
view 010
view 011
view 012
view 013
view 017
view 018
view 020
view 021
view 023
view 024
view 026
view 027
view 028
view 029
view 030
view 031
view 032
view 033
view 034
view 035
view 036
view 037
view 038
view 039
view 040
view 041
view 042
view 043
view 044
view 045
view 046
view 047
view 048
view 050
view 051
view 052
view 053
view 055
view 056
view 057
view 058
view 072
view 073
view 079
view 080
view 083
view 090
view 091
view 092
view 093
view 094
view 095
view 096
view 097
view 098
view 100
view 101
view 102
view 103
view 104
view 105
view 106
view 107
view 108
view 109
view 110
view 111
view 112
view 120
view 121
view 122
view 123
view 124
view 125
view 126
view 140
view 200
view 201
view 202
view 203
view 204
view 205
view 206
view 207
view 208
view 209
view 210
view 211
view 212
view 213
view 214
view 215
view 216
view 217
view 218
view 219
view 220
view 221
view 222
view 223
view 224
view 225
view 226
view 227
view 228
view 229
view 230
view 231
view 232
view 233
view 234
view 235
view 240
view 290
view 315
view 502
view 503
view 504
view 505
view 506
view 508
view 509
view 510
view 511
view 512
view 513
view 514
view 515
view 516
view 517
view 518
view 519
view 520
view 522
view 523
view 524
view 525
view 526
view 527
view 528
view 529
view 530
view 531
view 532
view 533
view 534
view 536
view 538
view 539
view 540
view 541
view 542
view 543
view 544
view 545
view 546
view 547
view 548
view 549
view 550
view 551
view 552
view 553
view 554
view 600
view 601
view 602
view 603
view 604
view 605
view 606
view 607
view 608
view 609
view 610
view 611
view 612
view 613
view 614
view 615
view 616
view 617
view 618
view 650
view 651
view 652
view 653
view 654
view 655
view 656
view 705
view 706
view 707
view 708
view 710
view 712
view 714
view 715
view 716
view 717
view 718
view 719
view 720
view 721
view 722
view 723
view 725
view 726
view 727
view 728
view 729
view 730
view 731
view 732
view 733
view 734
view 901
view 914
view 915
view 916
view 917
view 918
view 950
view 994
view 995
view 996
view 997
view 998

; Vocabulary
vocab 000
vocab 900
vocab 901
vocab 994
vocab 995
vocab 996
vocab 997
vocab 998
vocab 999
)
« Last Edit: October 30, 2025, 11:15:56 AM by robbo007 »

Offline lskovlun

Re: Sierra's Internal SCI Tools
« Reply #34 on: November 01, 2025, 12:56:08 AM »
I would assume that something with a Burrows-Wheeler Transform stage would be good for SCI0 pics. I tried bzip2, but it somehow was worse than expected.

Offline robbo007

Re: Sierra's Internal SCI Tools
« Reply #35 on: November 04, 2025, 04:33:04 PM »
The best compression is 7zip hands down. The trouble is the fork/hack for MSDOS requires DOS extended mode. I don't want to do "an Ultima 7" type thing here (Voodoo memory). I feel the pain of the 1980's programmers and the limitations they had to deal with. I'll work it out when I get to the golden version. Beta by Christmas is my milestone right now and god that seems far.. hahahaha

Offline Charles

Re: Sierra's Internal SCI Tools
« Reply #36 on: November 05, 2025, 09:20:46 AM »
I'm not an expert on compression, but I know the biggest gain from 7zip is the file format and not the compression algorithm.  Both 7z and zip are largely based on the LZ77 compression algorithm, but the reason 7zip often gives much better results is because it's a solid-archive format.

That means it treats all the files as a single entry, whereas zip compresses each file individually. There's ups and downs to each approach. The place where 7z really shines is when you're compressing several similar files together.

Like for example, rom hacks. You could 7z up 100 different Super Mario World rom hacks together and because the variation between each file is pretty minimal, you'd get a file that's not much larger than compressing a single rom with zip.

The downside is if you want to add a file to an existing archive, you need to decompress then re-compress the whole thing. Plus, I assume, if there's a data corruption issue, the entire archive is compromised instead of just a single file.

Offline Kawa

Re: Sierra's Internal SCI Tools
« Reply #37 on: November 05, 2025, 09:59:14 AM »
I take it you meant pre-patched SMW hacks. Assuming the recurring non-varying parts are things like engine code and such, and that the patches don't move any of that (which IPS is notoriously bad for and would require the patches to contain copyrighted data, unlike BPS), a plain ZIP file with one (1) original smw.sfc file and 100 .ips files could give a 7z file with 100 pre-patched SMW roms a run for its money. Probably not overtake it, but it'd be a lot closer of a race.

The bigger issue with compression, especially SCI stuff, is that things like Views already have their own compression (RLE on views for example) and already-compressed data generally tends not to double-stuff all that well. I'm sure there's some techniques that work better in certain combinations, but a zip file, or even 7zip, may not compress all that much if most of the effort goes into stuff like graphics.

That's why zipping a PNG file doesn't do all that much: PNG files already use zip deflate internally. I just tested it myself. Crunching a PNG (just throwing more CPU at the task) reduced my test pic from 53.3 KB to 29.5 KB, half of it by just throwing out the unused alpha. Zipping that saved me all of fifty bytes. All the overhead of compressing away the PNG header reduced it by 200 bytes, but the zip file itself almost undid it all.

Cos one big problem besides solid versus plain compression is that the archive itself requires file headers to specify which file goes where in the archive, its name, checksum, all that jazz. No matter what the exact format is, general-use archives need to know this. The simplest I can think of, .tar, takes 512 bytes per file to describe them and doesn't even include any compression (hence .tar.gz, combining it with a zip-like that takes almost no header at all). Now imagine an SCI resource file. It has its own directory, files have no names or path structures so all it needs is a type, a number, what compression it uses, a size, and for the older versions a volume index. That's all the per-file header overhead it needs. Zip files would be huge if you couldn't get away with like... six or seven files for the whole game -- if those resources were separate files, the zip archive would waste so much space on file headers. Twice, even, considering the central directory at the end of the file!

Offline lskovlun

Re: Sierra's Internal SCI Tools
« Reply #38 on: November 05, 2025, 11:36:56 AM »
Yes, obviously the BWT algorithm I was talking about would have to be a performed by the interpreter. A new addition to the resource volume format.


SMF 2.0.19 | SMF © 2021, Simple Machines
Simple Audio Video Embedder

Page created in 0.027 seconds with 16 queries.