X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=mjc2wsl.git;a=blobdiff_plain;f=src%2Fmjc2wsl.java;h=c8da105e4bff4a081b92d20fd690f4a16f6fbc64;hp=05a8a32fab2ee297acf28a8f17d53d57c682886d;hb=16b6eee0dce46948aca7f014514d5cfc76b4774e;hpb=349aa12e360d3b0f056f20b7b1207e24d3aea2a4 diff --git a/src/mjc2wsl.java b/src/mjc2wsl.java index 05a8a32..c8da105 100644 --- a/src/mjc2wsl.java +++ b/src/mjc2wsl.java @@ -406,16 +406,13 @@ public class mjc2wsl{ } case call: { - prl(cmdToMStack(counter+2)); prl("CALL a" + (counter + get2()) + ";"); break; } case return_: { - prl("IF EMPTY?(mjvm_mstack) THEN CALL Z ELSE"); + prl("IF EMPTY?(mjvm_mstack) THEN CALL Z FI"); //else we let things return - prl(cmdFromMStack("tempa")); - prl("SKIP FI"); prl("END b"+counter+" =="); break; } @@ -435,18 +432,24 @@ public class mjc2wsl{ } // read, print - case bread: - case read: { + case read:{ //TODO make it a char for read + message("char is read like a number", M_WAR); + prl(createComment("char is read like a number",C_SPEC)); + } + case bread: { prl("tempa := @String_To_Num(@Read_Line(Standard_Input_Port));"); prl(cmdToEStack("tempa")); break; } // the prints - case bprint: - case print: { + case print:{ // TODO need to make it a char on print + message("chars will be printed as number codes", M_WAR); + prl(createComment("char will be printed as a number code",C_SPEC)); + } + case bprint: { // TODO printing numbers needs different lengths of spacing prl(getTopTwo()); pr(createComment("print spacing",C_SPEC));