diff --git a/as/main.c b/as/main.c
index 8c2b577..9c409d7 100644
--- a/as/main.c
+++ b/as/main.c
@@ -11,7 +11,7 @@
 {
 	char c;
 	FILE *in = stdin,
-		*out = stdout;
+		*out = NULL;
 
 	while ((c = getopt(argc, argv, "i:o:")) != -1)
 	{
@@ -32,6 +32,12 @@
 		}
 	}
 
+	if (!out)
+	{
+		fprintf(stderr, "-o flag is now mandatory\n");
+		return 1;
+	}
+
 	fseek(in, 0, SEEK_END);
 	ssize_t len = ftell(in);
 	fseek(in, 0, SEEK_SET);
@@ -40,22 +46,7 @@
 	fread(text, len, 1, in);
 	text[len] = 0;
 
-	FILE *temp = tmpfile();
-
-	map_t *macros = new_map();
-	uint32_t processed = preproc(text, temp, macros, 0);
-	free_map_items(macros);
-
-	fseek(temp, 0, SEEK_END);
-	ssize_t temp_len = ftell(in);
-	fseek(temp, 0, SEEK_SET);
-
-	char *processed_text = malloc(len + 1);
-	fread(processed_text, len, 1, in);
-	text[temp_len] = 0;
-	
-	uint32_t built = assemble(processed_text, out);
+	uint32_t built = assemble(text, out);
 
 	free(text);
-	free(processed_text);
 }
