Index: emu/lcd.c
===================================================================
--- emu/lcd.c	(revision 9b204fae11bd78a07255cdd4b3dd11b68770155f)
+++ emu/lcd.c	(revision a2b296e578fac4820601c722f9616fc24f8ef3d4)
@@ -24,6 +24,6 @@
 int32_t lcd_verbose = 0;
 
-#define WIN_W (1615 * 2 / 3)
-#define WIN_H (304 * 2 / 3)
+#define WIN_W (1615 / 2)
+#define WIN_H (304 / 2)
 
 #define GFX_BGR 0x00000000
Index: emu/ser.c
===================================================================
--- emu/ser.c	(revision 9b204fae11bd78a07255cdd4b3dd11b68770155f)
+++ emu/ser.c	(revision a2b296e578fac4820601c722f9616fc24f8ef3d4)
@@ -24,9 +24,15 @@
 int32_t ser_verbose = 0;
 
-#define WIN_W (1520 * 2 / 3)
-#define WIN_H (950 * 2 / 3)
+#define WIN_W (1520 / 2)
+#define WIN_H (950 / 2)
 
 #define BEL_CYC 10000
 #define MOU_CYC 10000
+
+#if defined EMU_WIN
+#define MOU_DIV 64
+#else
+#define MOU_DIV 4
+#endif
 
 #define CON_W 80
@@ -335,6 +341,6 @@
 		mou_dx, mou_dy, mou_l ? 'l' : '-', mou_r ? 'r' : '-');
 
-	int32_t dx = mou_dx;
-	int32_t dy = mou_dy;
+	int32_t dx = mou_dx / MOU_DIV;
+	int32_t dy = mou_dy / MOU_DIV;
 
 	if (dx < -128) {
