This sounds like a terrific little program. Good luck on it!
Here's some pointers on how you might want to write it.
Use a array to hold the most recent motor positions and time. Then use an index into the array so that it can behave like a "circular buffer". Say for example, if the array has 50 entries, then it would be indexed by 0 to 49. Every time you write a new entry to the array, you increment an index value to store the item you want. If the new index value is 50 (or higher) then it has "wrapped around" and you set the index to 0.
VU has accurate posted the amount of memory available. This is not all available to user programs. Some of it is used by internal variables, stacks and buffers. The amount of memory available to user programs is found from the following entries in the file "limitDefinitionsViaDefines.h" as
From above, there is room for 100 user defined variables (each variable is 16 bits).
You probably want to store the power setttings for two motors. You could define two arrays for this. Or you could pack both motor settings in a single 16-bit word since the value for each motor only ranges from -128 to +127. Here pseudo code to do this