diff --git a/board_enable.c b/board_enable.c
index e53a410..1282b08 100644
--- a/board_enable.c
+++ b/board_enable.c
@@ -701,7 +701,7 @@
 		board = board_match_pci_card_ids();
 
 	if (board) {
-		printf("Found board \"%s\": enabling flash write... ",
+		printf("Found board \"%s\", enabling flash write... ",
 			board->name);
 
 		ret = board->enable(board->name);
diff --git a/chipset_enable.c b/chipset_enable.c
index 1ab9a24..0e45f6e 100644
--- a/chipset_enable.c
+++ b/chipset_enable.c
@@ -154,7 +154,7 @@
 	 */
 	old = pci_read_byte(dev, bios_cntl);
 
-	printf_debug("BIOS Lock Enable: %sabled, ",
+	printf_debug("\nBIOS Lock Enable: %sabled, ",
 		     (old & (1 << 1)) ? "en" : "dis");
 	printf_debug("BIOS Write Enable: %sabled, ",
 		     (old & (1 << 0)) ? "en" : "dis");
diff --git a/flashrom.c b/flashrom.c
index e366f94..e97f196 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -151,8 +151,9 @@
 		flash->virtual_memory = bios;
 
 		if (flash->probe(flash) == 1) {
-			printf("%s found at physical address 0x%lx.\n",
-			       flash->name, flash_baseaddr);
+			printf("Found chip \"%s %s\" (%d KB) at physical address 0x%lx.\n",
+			       flash->vendor, flash->name, flash->total_size,
+			       flash_baseaddr);
 			return flash;
 		}
 		munmap((void *)bios, size);
@@ -360,7 +361,7 @@
 	}
 
 	if (read_it && write_it) {
-		printf("-r and -w are mutually exclusive\n");
+		printf("Error: -r and -w are mutually exclusive.\n");
 		usage(argv[0]);
 	}
 
@@ -432,7 +433,6 @@
 
 	flash = flashes[0];
 
-	printf("Flash part is %s (%d KB).\n", flash->name, flash->total_size);
 	if (TEST_OK_MASK != (flash->tested & TEST_OK_MASK)) {
 		printf("===\n");
 		if (flash->tested & TEST_BAD_MASK) {
@@ -480,7 +480,7 @@
 	buf = (uint8_t *) calloc(size, sizeof(char));
 
 	if (erase_it) {
-		printf("Erasing flash chip\n");
+		printf("Erasing flash chip.\n");
 		if (!flash->erase) {
 			fprintf(stderr, "Error: flashrom has no erase function for this flash chip.\n");
 			return 1;
@@ -517,7 +517,7 @@
 			exit(1);
 		}
 		if (image_stat.st_size != flash->total_size * 1024) {
-			fprintf(stderr, "Error: Image size doesnt match\n");
+			fprintf(stderr, "Error: Image size doesn't match\n");
 			exit(1);
 		}
 
