Add disassembler
diff --git a/main.c b/main.c
new file mode 100644
index 0000000..8e6ec52
--- /dev/null
+++ b/main.c
@@ -0,0 +1,50 @@
+#include "cpu.h"
+
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+int main(int argc, char **argv)
+{
+ printf("6502 Emulator\n");
+
+ uint8_t disflag = 0,
+ runflag = 0,
+ helpflag = 0;
+
+ char c;
+
+ while ((c = getopt(argc, argv, "drh")) != -1)
+ {
+ switch (c)
+ {
+ case 'd':
+ disflag = 1;
+ break;
+ case 'r':
+ runflag = 1;
+ break;
+ case 'h':
+ case '?':
+ helpflag = 1;
+ break;
+ }
+ }
+
+ if (helpflag)
+ {
+ printf("-r to run, -d to disassemble");
+ return 0;
+ }
+
+ cpu_t cpu = new_cpu();
+ fread(cpu.mem, 0xFFFF, 1, stdin);
+
+ if (disflag)
+ {
+ disas(&cpu);
+ }
+
+ free_cpu(&cpu);
+}