| |
DJ Space
Registered: Apr 2023 Posts: 18 |
Reducing the size of a SID file
Hey everyone! Sorry if this has been answered already but I can't find anything anywhere. Is there any way to reduce the size of a SID file made in Goattracker? |
|
| |
TheRyk
Registered: Mar 2009 Posts: 2244 |
<Post edited by TheRyk on 23/3-2024 15:16>
In GoatTracker the settings are normally per default set in a way that unused patterns/.INSes etc. are not compiled to prevent inflating the used RAM unnecissarily.
Further optimization of the .SID file is possible, however if you can
- handle SIDdecompiler V0.8 and know enough assembler code to
- rework the .asm output by deleting anything that is clearly superfluous
- dump the result, e.g. in VICE
- make a .SID file again out of the dumped .PRG, e.g. via SID-Edit V4.02+
With GT normally there's not enormously much RAM gain of that process but maybe half a page +/- some bytes. |
| |
tlr
Registered: Sep 2003 Posts: 1790 |
Quote: Hey everyone! Sorry if this has been answered already but I can't find anything anywhere. Is there any way to reduce the size of a SID file made in Goattracker?
Automated tools I haven't seen. Goattracker already tries to optimize the player and data quite a bit on export. But manually you could probably shave some bytes from the result.
What kind of reduction are you trying to achieve? |
| |
iAN CooG
Registered: May 2002 Posts: 3193 |
As they already said, GoatTracker is already using optimally all the bytes allocated by its code and data and at best you can only shave few bytes even if you're using siddecompiler with the option to detect unused code and data.
There are other trackers that leave many unused areas but GT is already optimizing the output. |
| |
DJ Space
Registered: Apr 2023 Posts: 18 |
Thank you everyone for the responses. I believe Goattracker already achieve a small size file. The only reason I was wondering if the file can get even smaller is because I am having trouble with an animated project in lvllvl.com tool. I made a 40frame loop and when I export it with a specific SID file I want (it's 6,9KB), it messes up the last frame. It's fine when I export it with no music. The only thing to get it working properly is if:
1) I reduce the size of the SID (tried some smaller SID files)
2) or export it in monochrome
3) or reduce the frames of the animation.
I guess I 'll have to go with the third option. |
| |
Walt
Registered: May 2004 Posts: 47 |
If the music overwrites the gfx/anim data, how about changing the start address of the SID? Most tunes start at $1000, how about $900 instead? |
| |
Flex
Registered: Feb 2002 Posts: 111 |
Try to split your patterns to 32 or even 16 (if using 64) with SNGSPLI2.EXE that's included in the Goattracker files.
This has helped me a lot when in need to make a .sid file shorter. |
| |
DJ Space
Registered: Apr 2023 Posts: 18 |
Thank you for the suggestions. Changing the address messes the animation even more or music is muted haha! Spliting it into more patterns reduces the size by around 30 bytes which is not too much to be used for this project. I just reduced the frames by half for now. |
| |
tlr
Registered: Sep 2003 Posts: 1790 |
If you really want to fit more frames into ram it makes more sense optimizing the animation data than the song data. There is much more animation data, so any small percentage gain there will yield a bigger savings in total. |