I changed some "modern" shader codes so they can run on old OpenGL 2.x.
All included 24 shaders works with GLSL compiler define #version 120
For example in OpenGL 2.x GLSL #version 120 there are no binary nor shift operators and no matrix inverse() function !
// not implemented must be replaced
if ((i & 12)>>1) do_something;
// not implemented must be replaced by a software solution
mat4 result = inverse(camera_matrix);
https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/inverse.xhtml
and I changed many other texture stuff they are not implemented or different from older version.
download: shadertoy.zip
On Windows you can compile shadertoy.bas and drag shader *.glsl code over the executable.

Om Linux you can uncomment a hard coded shader filename in the souce code.

Or use it as command in a windows console or linux terminal:
>shadertoy shader.glsl
some examles of the 24 included shaders:






