1 package edu.berkeley.fleet.interpreter;
2 import edu.berkeley.fleet.api.*;
6 import edu.berkeley.fleet.api.Instruction;
7 import edu.berkeley.fleet.api.BenkoBox;
8 import edu.berkeley.fleet.*;
9 import edu.berkeley.fleet.interpreter.*;
12 static boolean debugMemory = true;
13 static boolean dump_fabric = false;
14 static boolean dump_code = false;
16 public static void main(String[] s) throws Exception {
17 for(int i=0; i<s.length; i++) {
18 if (s[i].startsWith("--color=")) {
19 String val = s[i].substring(s[i].indexOf('=')+1);
20 if (val.equals("on")) {
21 Log.ansi_color = true;
23 } else if (val.equals("off")) {
24 Log.ansi_color = false;
27 } else if (s[i].startsWith("--dump-fabric")) {
30 } else if (s[i].startsWith("--dump-code")) {
34 } else if (s[i].startsWith("--memory=")) {
35 String val = s[i].substring(s[i].indexOf('=')+1);
36 if (val.equals("hide")) {
39 } else if (val.equals("show")) {
44 System.out.println("Fleeterpreter usage:");
45 System.out.println("");
46 System.out.println(" --dump-fabric");
47 System.out.println(" --dump-code");
48 System.out.println(" --color={on|off}");
49 System.out.println(" --inboxes={configured|unconfigured}");
50 System.out.println(" --memory={hide|show}");
53 new Main().go(new InputStreamReader(System.in));
56 public void go(Reader r) throws Exception {
57 Interpreter fleet = new Interpreter();
58 ByteArrayOutputStream baos = new ByteArrayOutputStream();
59 ArrayList<Instruction> arr = new ArrayList<Instruction>();
60 edu.berkeley.fleet.assembler.Main.assemble(fleet, r, arr);
61 fleet.instructions = (Instruction[])arr.toArray(new Instruction[0]);
64 fleet.dumpFabric(false);
66 } else if (dump_code) {
70 if (debugMemory) { fleet.dumpMem(); }
72 if (debugMemory) { fleet.dumpMem(); }