mathematics – Getting battle turn order

I’m trying to emulate the Conditional Battle System from Final Fantasy X.

I have it working so that units turns are based on their speed like so;

Each game tick:
    unitTimer += unitSpeed;
    if (unitTimer >= 1000) 
        <player turn>
        unitTimer -= 1000;

All this works fine. For those familiar with the battle system, each move you do adds a cooldown modifier (standard attacks are quick, specials are slow) and I figured I’d just subtract a value from the unitTimer after they’ve decided their move.

However my issue is I want to show a list of upcoming turns like so;
enter image description here

I can’t get my head round how to implement this. How would I figure out or simulate this, not knowing what the player would select? And what about instances where some units take 2 turns before the slower units take their next?

Has anyone done something similar and could give me a direction which to look at?