diff --git a/src/conio/ciolib.c b/src/conio/ciolib.c
index 184209279a69a817f97970a590999c0faddb3f43..64fd41ad459abbd6cb3752bffa8db0b0ec5686c1 100644
--- a/src/conio/ciolib.c
+++ b/src/conio/ciolib.c
@@ -1671,7 +1671,7 @@ CIOLIBEXPORT struct ciolib_screen * ciolib_savescreen(void)
 	}
 
 	if (vmode != -1) {
-		ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].charwidth * vparams[vmode].cols - 1, vparams[vmode].charheight * vparams[vmode].rows - 1, TRUE);
+		ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].xres - 1, vparams[vmode].yres - 1, FALSE);
 	}
 	ciolib_vmem_gettext(1, 1, ret->text_info.screenwidth, ret->text_info.screenheight, ret->vmem);
 	ret->fg_colour = ciolib_fg;