TMs ...
I am sorry if I am a noon but when you use a TM on a Pokemon it gives it a new move out of the total move pool except for the current move. So if you get a bad move after 1 TM and use another TM, does the game draw from the move pool minus the initial move and the current move or does it simply just do the same thing ( just deduct the current move from the move pool)?
Answers
It gives you a random move that's left from the pool, not including the one you're on currently.
For example if you had moves A, B, and C, and were currently on A, then the TM would give you either B or C. If you got B, but wanted C, then another TM would get you either A or C, etc. etc.
It's entirely possibly to dump 10+ TMs trying to get the right move.
This only really applies to Charge TMs though. In the vast majority of cases, Pokemon only have a choice of two fast moves so a Fast TM will just provide the other one reliably.
Yep. The game seems to check first how many available moves there are before checking what the current move is. Zapdos has only one available fast move, so you can't use fast TMs on it. Doesn't matter if it has a fast move that is different than that one currently available move. It still sees Zapdos as ineligible for fast TMs.