If you're using the extender, macros will be fast - that's one of the benefits of using the extender.
My first comment would be that that's a HECK of a lot of steps to hold the remote pointing properly throughout. If you have the patience and discipline to do that, good for you!
OK, on to your specific problems:
(1) Macro too fast:
Use the Pause protocol to generate a gap between each signal you send. I would suggest you make a simple macro of four or five steps, create a Pause keymove of intermediate duration - say 7F - and insert that keymove in between each of your macro functions. Tweak the duration of the Pause until you get the shortest possible delay that still allows your signals to be received and acted upon;
(2) 15-step macro limit:
With the extender, you really have NO limit on the number of steps in a macro, as you can NEST macros, so all you need is one macro on a physical button, and then have it invoke other macros on non-physical buttons until you get the number of steps you need.
In your case, let's say that you want this sequence executed upon a press of the L1 button.
First: Create a pause signal (duration determined per the above) on the shifted L1 button.
Second: Create a macro on L1 that goes
Code: Select all
Tivo Menu
s-L1
Ch-
s-L1
up
s-L1
up
s-L1
Left (or select)
s-L1
ch+
s-L1
s-L2
Next: create a follow-on macro (invoked by the last step of the previous one) on s-L2
Code: Select all
down
s-L1
down
s-L1
left
s-L1
ch-
s-L1
left
s-L1
ch+
s-L1
s-L3
Finally a third macro on s-L3 will complete the sequence
Code: Select all
left
s-L1
ch+
s-L1
down
s-L1
left
s-L1
now playing
s-L1
play
You never exceed 15 steps in the macro buffer, and you have your delays inserted (but I expect it will take forever to run!)
Good Luck!
Edit: If you're unfamiliar with the Pause protocol, just go to RM or KM and select your remote and create an upgrade using the "Pause" protocol.