Space-efficient key changes

General discussion about tracking, help and support.
User avatar
Posts: 104
Joined: Thu Jul 28, 2016 2:19 pm

Space-efficient key changes

Postby beachbum811 » Sat Dec 17, 2016 8:38 pm

I don't think anyone cares about saving space, but...
Here's another proof-of-concept.
(987 Bytes) Downloaded 73 times

Now I just have to figure out how to
numbered_repeat_sign.jpg (16 KiB) Viewed 1457 times

with Bxx commands...
Hello World!
Behold as I run facefirst into the endless abyss of hate that is the internet!
I do Musescore and Scratch with the same username!

OH and I also use beta 0.5 so...

User avatar
Posts: 534
Joined: Sun Apr 24, 2016 2:25 am

Re: Space-efficient key changes

Postby Teuthida » Sun Dec 18, 2016 3:22 am

As great as it would be, I don't think there's any way to do this with Bxx. The only method is to copy the entire rest of the part, but replacing the repeated 1 part with the 2 part. Sorry...
A squid with a higher post count than the NES can handle.

I'm on YouTube!

Posts: 373
Joined: Mon Apr 20, 2015 6:41 pm

Re: Space-efficient bar changes

Postby Shywolf » Sun Dec 18, 2016 5:05 am

Can't do it with Bxx, but you can with carefully-ordered patterns.

patternorder.png (831 Bytes) Viewed 1449 times

Put your "part 0", part 1, and part 2 (referring to your image) in separate patterns, and order them in the frame editor like that^. Pattern 0 is used twice, resulting in space saved from not storing a fourth pattern.

User avatar
Posts: 475
Joined: Thu Apr 23, 2015 7:39 pm
Location: Hong Kong SAR

Re: Space-efficient key changes

Postby HertzDevil » Sun Dec 18, 2016 6:07 am

FamiTracker abstracts away track synchronization using frames, so you cannot find loop commands that are available in some sound engines and MML compilers.

Old versions of FamiTracker did have a track-local loop effect though, but the commands were automatically emitted by the NSF exporter, and inaccessible from the tracker. It is called ft_cmd_expand in the assembly source and can be found in the Vegavox II NSF.
refactoring 0cc-famitracker