Print.java 1.9 KB

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