diff -r 3529180185ec src/gl/scene/gl_skydome.cpp
--- a/src/gl/scene/gl_skydome.cpp	Fri Mar 20 12:13:04 2015 +0100
+++ b/src/gl/scene/gl_skydome.cpp	Fri Mar 20 12:29:45 2015 +0100
@@ -247,7 +247,7 @@
 static void RenderDome(FTextureID texno, FMaterial * tex, float x_offset, float y_offset, bool mirror, int CM_Index)
 {
 	int texh = 0;
-	bool texscale = false;
+	/* bool texscale = false; */ // [EP] Code adjusted for GZDoom fad3a5410
 
 	// 57 worls units roughly represent one sky texel for the glTranslate call.
 	const float skyoffsetfactor = 57;
@@ -261,8 +261,17 @@
 
 		gl.Rotatef(-180.0f+x_offset, 0.f, 1.f, 0.f);
 		yAdd = y_offset/texh;
+		float yscale = 1.f; // [EP] Code adjusted for GZDoom fad3a5410
 
-		if (texh < 200)
+		// [EP] Zandronum version of GZDoom fad3a5410
+		if (texh < 128)
+		{
+			// smaller sky textures must be tiled. We restrict it to 128 sky pixels, though
+			gl.Translatef(0.f, -1250.f, 0.f);
+			gl.Scalef(1.f, 128/230.f, 1.f);
+			yscale = 128 / texh;	// intentionally left as integer.
+		}
+		else if (texh < 200)
 		{
 			gl.Translatef(0.f, -1250.f, 0.f);
 			gl.Scalef(1.f, texh/230.f, 1.f);
@@ -276,13 +285,14 @@
 		{
 			gl.Translatef(0.f, (-40 + tex->tex->SkyOffset + skyoffset)*skyoffsetfactor, 0.f);
 			gl.Scalef(1.f, 1.2f * 1.17f, 1.f);
-			gl.MatrixMode(GL_TEXTURE);
-			gl.PushMatrix();
-			gl.LoadIdentity();
-			gl.Scalef(1.f, 240.f / texh, 1.f);
-			gl.MatrixMode(GL_MODELVIEW);
-			texscale = true;
+			yscale = 240.f / texh;	// [EP] Code adjusted for GZDoom fad3a5410
 		}
+		// [EP] Code adjusted for GZDoom fad3a5410
+		gl.MatrixMode(GL_TEXTURE);
+		gl.PushMatrix();
+		gl.LoadIdentity();
+		gl.Scalef(1.f, yscale, 1.f);
+		gl.MatrixMode(GL_MODELVIEW);
 	}
 
 	if (tex && !secondlayer) 
@@ -327,13 +337,14 @@
 	}
 
 	RenderSkyHemisphere(SKYHEMI_LOWER, mirror);
-	if (texscale)
+	if (/*texscale*/ tex) // [EP] Code adjusted for GZDoom fad3a5410
 	{
 		gl.MatrixMode(GL_TEXTURE);
 		gl.PopMatrix();
 		gl.MatrixMode(GL_MODELVIEW);
+		gl.PopMatrix(); // [EP] Code adjusted for GZDoom fad3a5410
 	}
-	if (tex) gl.PopMatrix();
+	/*if (tex) gl.PopMatrix();*/ // [EP] Code adjusted for GZDoom fad3a5410
 
 }
 
