22 September 2010, 18:27 | #1 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
ProTracker Module Compression
Hi Guys
Sorry if this is in the wrong place. I'm looking to put together an old school A500 music disk. Track loaded using only 512k. My question is whats the best way to compress a protracker module under these restrictions? I know there was a lossy sample compression routine used on the Suburban Base music disks, but not really interested in loosing quality. I was thinking of writting a little routine which would change the samples so the first byte is like a key frame and then its only the differences between each byte. Chuck that through Imploder and see what happends? Any thoughts? Cheers |
22 September 2010, 18:38 | #2 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
If they have to be compressed while playing, The Player and maybe Noisepacker are two options. If they only have to fit on the disk, crunch them with anything you like. Others can give you tips on those 'make executable music' programs, and you can crunch them with Powerpacker or something and just run them as commands. (A bit trickier if OS is not on.)
Crunching notedata as per above gives a healthy gain, but if the songs have a lot of sampledata, you can try misc. things, like the deltaconversion you mentioned. Anything that will gain more than a few percent is likely to take a long time decrunching on the 68000. I'm sure you would get much smaller modules by forcing the musicians to optimize the samples by hand with the usual methods. You could always go with multiple disks... ? Last edited by Photon; 22 September 2010 at 18:48. |
22 September 2010, 19:07 | #3 |
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
|
I would go with The Player 6.1. Its converter tool can do delta conversion on the samples as you mentioned, and it removes redundant space in the pattern data to reduce file size as well.
For additional file compression you could try CrunchMania, which is probably the best file compressor for the classic Amigas. It can do in-place decompression, the decompressor is small in size and the M68K source code is available as well. Photon, being the the mild mannered, modest and humble person he is, forgot to mention he has recently optimized the P61 replayer as well. P61 has been the de facto standard way of replaying PT modules on the Amiga for many years, and with his updates to it I honestly don't see any reason for using any of the alternatives. |
22 September 2010, 19:20 | #4 |
gone
Join Date: Apr 2007
Location: completely gone
Posts: 1,596
|
I agree with Leffmann - after Photon's updates The Player is the one to use for module compression / playback really.
Personally I prefer using ProRunner2.0 as my module player but that's just a personal preference - although it can compress (and play back compressed) ProTracker modules it's not as good at compressing them as The Player is. As regards then also compressing the data on disk I'd personally go with StoneCracker for the crunch / decrunch. I'm sure you don't need any help with the routines h0ffman but if you like you're more than welcome to have my trackloader code - it has the ultra quick StoneCracker decrunch code already integrated. |
22 September 2010, 19:35 | #5 |
Registered User
Join Date: Dec 2002
Location: California
Posts: 964
|
I used to use CrunchMania. I had an executable that would run in the background and transparently decrunch any CrunchMania data files that were accessed without any user or programmer effort. I wonder what that was called?
EDIT: rtdd - RunTime Data Decruncher. Last edited by ant512; 22 September 2010 at 19:41. |
23 September 2010, 12:26 | #6 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
Cheers for the tips guys, looks like The Player 6.1 is the way forward, managed to get my largest module for this music disk down to 465k playable size.
Although that leaves me with about 45k to get the loader and menu in!! JEEEZZ this is gonna be a squeeze! @PMC - Any help on this would be greatly appreciated mate, I haven't done any 68000 for over 15 years!! and to be fair, when I did cracking I used to nick other peoples loaders. So guys, what do you reckon I can squeeze in 45k? |
23 September 2010, 13:04 | #7 | |
gone
Join Date: Apr 2007
Location: completely gone
Posts: 1,596
|
Quote:
Although to get it down that small I had a fair bit of help from StingRay and others to be fair. So, that still leaves you over 44Kb for your music selector. A nice elegant selector should be do-able in that space I would've thought... |
|
23 September 2010, 14:33 | #8 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,863
|
|
24 September 2010, 03:51 | #9 |
Banned
Join Date: Dec 2008
Location: Germany
Posts: 68
|
All most Module-Packer running How? -->
Protracker - Module - Example - Assembling: THE HEAD NAME "My Lame Module" -> TYPE : CHAR : BYTE TRACKS "12" -> TYPE : CHAR : BYTE PATTERNS "40" -> TYPE : CHAR : BYTE SAMPLE NR "31" -> TYPE : CHAR : BYTE etc. THE SAMPLES 1 - 31 in RAW -> converted THE HEAD BYTES to BITS -> 8 BITS = 1 BYTES -> its Smale its Fast ______________ Shorter Head, but not Samples are packed. |
24 September 2010, 12:43 | #10 |
Registered User
Join Date: Aug 2008
Location: Salisbury
Posts: 744
|
Managed to do a bit more optimisation in protracker on the samples. The file size as P61 is now 394,214 bytes, now leaving 130,074 bytes (or there abouts!)
|
24 September 2010, 19:29 | #11 |
Registered User
Join Date: May 2006
Location: Paris/France
Age: 52
Posts: 526
|
[rant almost off topic]
Please don't use The Player as it destroys the protracker header. If size matters more than speed, you can always remember that His Master Noise contained more than 100 protracker (~13 Mb) on two disks, and there was _no_ The Player at that time. [/rant] Now, flame me while I go hiding Sylvain |
24 September 2010, 19:36 | #12 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,863
|
What does that matter in a music disk? If you want the original modules you can always ask the musician anyway.
Not Protracker but Noisetracker songs. And Mahoney & Kaktus actually coded their own tracker/play routine for it so it doesn't differ much from any other custom player such as P61. |
24 September 2010, 19:57 | #13 |
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
|
The reason they could fit so much music into HMN was because all songs used a common set of samples.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
How can translate David Whittaker module to protracker | Thyphoon | request.Modules | 35 | 30 January 2021 10:55 |
Best Compression Methods For... | Lonewolf10 | Coders. General | 16 | 16 June 2013 17:31 |
Compression Suggestions | h0ffman | Coders. General | 2 | 31 December 2010 12:19 |
Data compression History | DH | Nostalgia & memories | 21 | 23 October 2008 13:18 |
|
|