Index: emu/ser.c
===================================================================
--- emu/ser.c	(revision 657abdf2383c581e5829ac55cf8ebc768bdff0fe)
+++ emu/ser.c	(revision 8c8a883108eee5b9b5949fb76240a042d8fed60a)
@@ -60,5 +60,5 @@
 };
 
-static uint8_t mem[CON_H][CON_W + 1];
+static uint8_t mem[CON_H][CON_W];
 
 static SDL_Window *win;
@@ -81,5 +81,5 @@
 static void scroll(void)
 {
-	memmove(mem, mem + 1, (CON_H - 1) * (CON_W + 1));
+	memmove(mem, mem + 1, (CON_H - 1) * CON_W);
 	memset(mem + (CON_H - 1), ' ', CON_W);
 }
@@ -256,4 +256,5 @@
 	for (int32_t y = 0; y < CON_H; ++y) {
 		char line[CON_W + 1];
+		line[CON_W] = 0;
 
 		if (SDL_LockMutex(cpu_mutex) < 0) {
@@ -261,5 +262,5 @@
 		}
 
-		memcpy(line, mem[y], CON_W + 1);
+		memcpy(line, mem[y], CON_W);
 
 		if (SDL_UnlockMutex(cpu_mutex) < 0) {
@@ -515,6 +516,4 @@
 			mem[y][x] = ' ';
 		}
-
-		mem[y][CON_W] = 0;
 	}
 }
