An off-by-one error fixed. I hope.
Also, I experimented with an item seeker code. It will indicate how long you'll have to wait for some item, with the frame count shown as the number, and the color that indicates the item. There is one more number, with an inverted white, that indicates how "out of sync" the two timers are.
I've also recolored the items. Red(s) and orange(L) are the energy drops. Blue(s) and cyan(L) are the weapon drops. White is the extra life.
It is difficult to work with an RNG predictor where there are three factors in its output: Frames passed, lag frames, and whether an RNG call was made recently. The more fancy I try to make it, the more I realize there are factors out of control I can't readily predict.
I can probably add controls to the item seeker so that you can specify a specific "out of syncness" of the timers, but that generally assumes you can get things to lag appropriately. I can try a lag tracker, a good pair up with TAS Editor, but now we assume things will lag exactly how they do when you change the timing of your shots. Then, of course, there are other factors that may use the RNG, and a call will adjust the RNG output for the next 16 frames.
I'm questioning the validity of that "second column" that I threw in there in v1, since it seems a different RNG call is made that adjusts it differently when an enemy needs to think or something. It's still here in v2, though.