Glad you like it
There is one problem with it however, it's very processor intensive and that problem lies with CheckSprToSpr() (which should be named CheckFishToFish(), oh well).
For each updating fish, it checks the distances to all the others, and tries to keep some distance away, so when the constant MAXSPR is set to 50, that's 50 x 49 checks (2450). Set MAXSPR to 100 and there should be a noticable slowdown (9900 checks), on my system it just about makes 30 fps in fullscreen exclusive mode.
Programming anything is an art, and you can't rush art.
Unless your name is Bob Ross, then you can do it in thirty minutes.