sysio.mod 778 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. IMPLEMENTATION MODULE SysIO;
  2. (* Thin wrapper over the C shim's external procedures. *)
  3. PROCEDURE m2write(VAR s : ARRAY OF CHAR);
  4. EXTERNAL;
  5. PROCEDURE m2writeln;
  6. EXTERNAL;
  7. PROCEDURE m2writeint(n : INTEGER);
  8. EXTERNAL;
  9. PROCEDURE m2writechar(c : CHAR);
  10. EXTERNAL;
  11. PROCEDURE m2readchar() : CHAR;
  12. EXTERNAL;
  13. PROCEDURE m2readint() : INTEGER;
  14. EXTERNAL;
  15. PROCEDURE Write(VAR s : ARRAY OF CHAR);
  16. BEGIN
  17. m2write(s)
  18. END Write;
  19. PROCEDURE WriteLn;
  20. BEGIN
  21. m2writeln
  22. END WriteLn;
  23. PROCEDURE WriteInt(n : INTEGER);
  24. BEGIN
  25. m2writeint(n)
  26. END WriteInt;
  27. PROCEDURE WriteChar(c : CHAR);
  28. BEGIN
  29. m2writechar(c)
  30. END WriteChar;
  31. PROCEDURE ReadChar() : CHAR;
  32. BEGIN
  33. RETURN m2readchar()
  34. END ReadChar;
  35. PROCEDURE ReadInt() : INTEGER;
  36. BEGIN
  37. RETURN m2readint()
  38. END ReadInt;
  39. END SysIO.