Opened 10 years ago

Closed 10 years ago

Last modified 11 months ago

#9031 closed patch

Tinsel: MP3/OGG/FLAG support incl. compression utility

Reported by: m-kiewitz Owned by: DrMcCoy
Priority: normal Component: Engine: Tinsel
Keywords: Cc:
Game:

Description

Hi there,

I just got done. Now DW2 also works. Please note that I developed this under Win32 Visual C++ Express 8.0. I tried to stay as close to the original sourcecode formatting as possible. Please also note that I just started the game and listened to the first few dialogs. They work, but I don't know (of course) if every sample in the game works.

Please give credit to M. Kiewitz / Jimi if you include it.

Regards
M. Kiewitz

Ticket imported from: #2815426. Ticket imported from: patches/1136.

Attachments (2)

compress_tinsel.cpp (13.0 KB ) - added by m-kiewitz 10 years ago.
new compress utility for tinsel smp/idx files
scummvm-engine-tinsel.patch (5.9 KB ) - added by m-kiewitz 10 years ago.
tinsel engine patch now unified format

Download all attachments as: .zip

Change History (10)

comment:1 by jvprat, 10 years ago

Owner: set to DrMcCoy

comment:2 by DrMcCoy, 10 years ago

Some notes:

1) Please use MKID_BE() around ' 3PM', etc.
2) The first character of local variable names should be lower case. I.e "someVar" instead of "SomeVar"
3) The whole thing with copying the first 5000 bytes to keep the detection happy feels totally hackish. I can't work anyway, since the MD5 is always checked in combination with the file size. Moreover, it's unnecassary. For Tinsel, ScummVM only checks that the .smp file exists, not the size or MD5 (except for a Russian version, but that can be changed).

comment:3 by m-kiewitz, 10 years ago

1) I tried using MKID_BE(), but it doesn't write "MP3 " into the file but 0051BE18
2) variable names changed in compress_tinsel
3) removed 5000bytes copy

As soon as MKID_BE() problem get resolved, I will upload new patch/C++ file.

Regards

comment:4 by DrMcCoy, 10 years ago

You sure you're using MKID_BE() correctly? It's MKID_BE('MP3 '), no MKID_BE("MP3 "), i.e. /not/ a string literal.

comment:5 by m-kiewitz, 10 years ago

Of course, sorry I'm currently sick and I'm not 100% there. Fixed it, will upload new patch

by m-kiewitz, 10 years ago

Attachment: compress_tinsel.cpp added

new compress utility for tinsel smp/idx files

by m-kiewitz, 10 years ago

Attachment: scummvm-engine-tinsel.patch added

tinsel engine patch now unified format

comment:6 by DrMcCoy, 10 years ago

Status: newclosed

comment:7 by DrMcCoy, 10 years ago

Okay, commited it (after fixing a tiny flaw you overlooked that made it not recognize the compressed format :P).
Thanks! :)

comment:8 by digitall, 11 months ago

Component: Engine: Tinsel
Note: See TracTickets for help on using tickets.