Print.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package downadow.makexm2c_tools.main;
  2. public class Print {
  3. public static void main(String[] args) {
  4. if(args.length == 0) {
  5. System.out.println("Использование: java downadow.makexm2c_tools.main.Print [-a|--address АДРЕС] [-r|--user-register П._РЕГИСТР] СТРОКА");
  6. System.exit(0);
  7. }
  8. int address = 0;
  9. String ureg = "UR0";
  10. char[] chars = {'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!'};
  11. for(int i = 0; i < args.length; i++) {
  12. if(args[i].equals("-a") || args[i].equals("--address"))
  13. address = Integer.parseInt(args[i + 1]);
  14. else if(args[i].equals("-r") || args[i].equals("--user-register"))
  15. ureg = args[i + 1];
  16. else chars = args[i].toCharArray();
  17. }
  18. System.out.print(";;; \"");
  19. for(int i = 0; i < chars.length; i++) {
  20. if(chars[i] == '\\' || chars[i] == '"')
  21. System.out.print("\\");
  22. System.out.print(chars[i]);
  23. }
  24. System.out.print("\", generated by downadow.makexm2c_tools.main.Print\n");
  25. for(int i = 0; i < chars.length; i++) {
  26. System.out.print("mov2 " + ureg + ", ");
  27. for(int ii = ("" + (int)chars[i]).length(); ii < 7; ii++)
  28. System.out.print("0");
  29. System.out.print((int)chars[i] + "\n");
  30. System.out.print("vsv " + ureg + ", ");
  31. for(int ii = ("" + (i + address)).length(); ii < 4; ii++)
  32. System.out.print("0");
  33. System.out.print((i + address) + "\n");
  34. }
  35. System.out.println("updd");
  36. System.out.println(";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;");
  37. }
  38. }