Ok, I figured out the problem, and unfortunately there isn't a one-size-fits-all solution. It has to do with the way X/Y coordinates are handled in ISF shaders. I guess it's up to you guys to tell me what you prefer. It's a bit of a technical explanation so bear with me.
In most of the original ISF shaders that were created by Vidvox, X/Y coordinates are treated as pixels. So, the shader expects parameters that look like (1280, 720) for example. I've treated this as the standard, and underneath the hood, Magic supports things this way. It scales the values up so that when you enter a value like .5 or 1 for a module parameter, it actually gets multiplied internally by the image size. Thus, for an image width of 1280, .5 becomes 640, 1 becomes 1280, etc. Scaling the values allows Magic to retain its convention of having most parameters be in the [0, 1] range, which works best with audio/MIDI linking and with modifiers. Also, and perhaps more importantly, it's resolution-independent, so (.5, .5) will always be the same point in space regardless of the image size.
But in the ISF shaders posted above (and not created by Vidvox), X/Y coordinates are treated as points in 3D space. The shader expects them to be in a range of [0, 1] or [-1, 1] or something like that. The problem is that there's no way for Magic to know *not* to scale the values, so it does, and they become way out of range. I would have actually preferred it if Vidvox's shaders worked this way, but they didn't.
I could solve the problem by removing Magic's internal scaling, but then most X/Y ISF module parameters would have to be specified in image dimensions, so you'd have to enter large values (640 or 360 or whatever). This would make audio/MIDI linking and modifiers more complicated to use, and it's inconsistent with the way all non-ISF Magic modules work. Also, it would break everyone's current projects which use ISF shaders.
Another way to solve the problem would be to make *very* minor edits to the shaders to accept image-scaled values, but that's up to every individual author and not something under my control. Unfortunately, the ISF standard doesn't seem to specify how this should be handled when writing/converting shaders.
A third solution would be for me to add a custom ISF parameter (only supported by Magic) that allows you to mark a shader as scaled or not scaled, but then you'd have to know to do that, which would require analyzing the shader to see how it works.
I hope that all makes sense. So, let me know what you think.