diff --git a/src/hardware/hw_draw.c b/src/hardware/hw_draw.c
index 0e10c6473f666727f7f7c98f14bd977d9f72d222..072380e6ba12ffce42f463e6b41258031ef99b7e 100644
--- a/src/hardware/hw_draw.c
+++ b/src/hardware/hw_draw.c
@@ -509,12 +509,12 @@ void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength)
 	if (color & 0xFF00) // Do COLORMAP fade.
 	{
 		Surf.FlatColor.rgba = UINT2RGBA(0x01010160);
-		Surf.FlatColor.s.alpha = 0xFF - (strength*8);
+		Surf.FlatColor.s.alpha = (strength*8);
 	}
 	else // Do TRANSMAP** fade.
 	{
 		Surf.FlatColor.rgba = pLocalPalette[color].rgba;
-		Surf.FlatColor.s.alpha = (UINT8)((float)(10-strength)*25.5f);
+		Surf.FlatColor.s.alpha = (UINT8)(strength*25.5f);
 	}
 	HWD.pfnDrawPolygon(&Surf, v, 4, PF_NoTexture|PF_Modulated|PF_Translucent|PF_NoDepthTest);
 }