X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=mjc2wsl.git;a=blobdiff_plain;f=src%2Fmjc2wsl.java;h=dde880ee299a30f46f72d80ff559af68b94629c0;hp=97e61ac50c8c94143cb4fa135e324b6d0382637f;hb=102044c2e6ad75c7ccd28cc9a11082b819534a7a;hpb=dc0bf39019b6d79c81a03d706b735af046950f92 diff --git a/src/mjc2wsl.java b/src/mjc2wsl.java index 97e61ac..dde880e 100644 --- a/src/mjc2wsl.java +++ b/src/mjc2wsl.java @@ -28,7 +28,7 @@ import java.util.*; * @author Doni Pracner, http://perun.dmi.rs/pracner http://quemaster.com */ public class mjc2wsl{ - public static String versionN = "0.1.6"; + public static String versionN = "0.1.7"; private TransMessages messages = new TransMessages(); @@ -196,13 +196,13 @@ public class mjc2wsl{ ret.append(createAsciiString()); - ret.append("\nBEGIN "); - ret.append("\nVAR < \n\t"); - ret.append("mjvm_locals := ARRAY(1,0), "); - ret.append("\n\tmjvm_statics := ARRAY("+numWords+",0), "); - ret.append("\n\tmjvm_arrays := < >, "); - ret.append("\n\tmjvm_objects := < >, "); - ret.append("\n mjvm_estack := < >, mjvm_mstack := < > > : "); + ret.append("\nBEGIN"); + ret.append("\nVAR <\n\t"); + ret.append("mjvm_locals := ARRAY(1,0),"); + ret.append("\n\tmjvm_statics := ARRAY("+numWords+",0),"); + ret.append("\n\tmjvm_arrays := < >,"); + ret.append("\n\tmjvm_objects := < >,"); + ret.append("\n\tmjvm_estack := < >, mjvm_mstack := < > > :"); return ret.toString(); } @@ -216,7 +216,7 @@ public class mjc2wsl{ } public String createStandardEnd(){ - StringBuilder ret = new StringBuilder("SKIP\nENDVAR"); + StringBuilder ret = new StringBuilder("SKIP\nENDVAR\n"); ret.append("\nWHERE\n"); ret.append("\nFUNCT CHR(num) ==:\n"); @@ -232,7 +232,7 @@ public class mjc2wsl{ ret.append("\nPROC Print_MJ_CHAR(val, format VAR)==\n"); ret.append(createComment("print spacing", C_SPEC)); ret.append("\n\tIF val=10 OR val=13 THEN\n"); - ret.append("\t\tPRINT(\"\");"); + ret.append("\t\tPRINT(\"\");\n"); ret.append("\tELSE\n"); ret.append("\t\tIF format>1 THEN\n\t\t\tFOR i:=2 TO "); ret.append("format STEP 1 DO PRINFLUSH(\" \") OD\n"); @@ -240,7 +240,7 @@ public class mjc2wsl{ ret.append("\tFI\n"); ret.append("END\n"); - ret.append("\nEND\n"); + ret.append("\nEND"); return ret.toString(); } @@ -392,9 +392,9 @@ public class mjc2wsl{ prl("SKIP;\n ACTIONS a" + (14 + mainAdr) + " :"); int op = get(); while (op >= 0) { + prl(" a" + counter + " =="); if (originalInComments) prl(createComment(describeOpCode(op), C_OC)); - prl(" a" + counter + " == "); if (genPrintForEachAddress) { prl("PRINT(\"a" + counter + "\");"); if (genPauseAfterEachAddress) @@ -703,7 +703,7 @@ public class mjc2wsl{ prl("CALL a" + counter + "\n END"); } prl("SKIP\n END\nENDACTIONS;\n"); - prl(createStandardEnd()); + pr(createStandardEnd()); } public void convertFile(File f) {