Subversion Repositories Kolibri OS

Rev

Rev 7693 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. (*
  2.     BSD 2-Clause License
  3.  
  4.     Copyright (c) 2018-2019, Anton Krotov
  5.     All rights reserved.
  6. *)
  7.  
  8. MODULE CONSOLE;
  9.  
  10. IMPORT UTILS, STRINGS;
  11.  
  12.  
  13. PROCEDURE String* (s: ARRAY OF CHAR);
  14. VAR
  15.     i: INTEGER;
  16.  
  17. BEGIN
  18.     i := 0;
  19.     WHILE (i < LEN(s)) & (s[i] # 0X) DO
  20.         UTILS.OutChar(s[i]);
  21.         INC(i)
  22.     END
  23. END String;
  24.  
  25.  
  26. PROCEDURE Int* (x: INTEGER);
  27. VAR
  28.     s: ARRAY 24 OF CHAR;
  29.  
  30. BEGIN
  31.     STRINGS.IntToStr(x, s);
  32.     String(s)
  33. END Int;
  34.  
  35.  
  36. PROCEDURE Hex* (x, n: INTEGER);
  37. VAR
  38.     s: ARRAY 24 OF CHAR;
  39.  
  40. BEGIN
  41.     STRINGS.IntToHex(x, s, n);
  42.     String(s)
  43. END Hex;
  44.  
  45.  
  46. PROCEDURE Int2* (x: INTEGER);
  47. BEGIN
  48.     IF x < 10 THEN
  49.         String("0")
  50.     END;
  51.     Int(x)
  52. END Int2;
  53.  
  54.  
  55. PROCEDURE Ln*;
  56. BEGIN
  57.     String(UTILS.eol)
  58. END Ln;
  59.  
  60.  
  61. PROCEDURE StringLn* (s: ARRAY OF CHAR);
  62. BEGIN
  63.     String(s);
  64.     Ln
  65. END StringLn;
  66.  
  67.  
  68. PROCEDURE IntLn* (x: INTEGER);
  69. BEGIN
  70.     Int(x);
  71.     Ln
  72. END IntLn;
  73.  
  74.  
  75. PROCEDURE Int2Ln* (x: INTEGER);
  76. BEGIN
  77.     Int2(x);
  78.     Ln
  79. END Int2Ln;
  80.  
  81.  
  82. END CONSOLE.
  83.