CORESIG.DEF 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. (* Release 3.10 *)
  2. (*-------------------------------------------------------------------------*
  3. * *
  4. * CORESIG.DEF - Modula-2 interface to CORESIG.A *
  5. * *
  6. * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
  7. * All Rights Reserved *
  8. * *
  9. *--------------------------------------------------------------------------*)
  10. DEFINITION MODULE CoreSig;
  11. (*# save *)
  12. (*# call(o_a_size=>off, o_a_copy=>off, c_conv=>on, result_optional=>on) *)
  13. (*# module(implementation=>off, init_code=>off) *)
  14. (*# name(prefix=>c) *)
  15. PROCEDURE _DisableBreakCheck;
  16. PROCEDURE _EnableBreakCheck;
  17. PROCEDURE _GetInProgramFlag;
  18. PROCEDURE _SetInProgramFlag;
  19. TYPE
  20. SigProcType = PROCEDURE(INTEGER): INTEGER;
  21. PROCEDURE signal(sig: INTEGER; Handler: SigProcType): SigProcType;
  22. PROCEDURE raise(sig: INTEGER): INTEGER;
  23. TYPE
  24. TenByteReal = ARRAY [0..9] OF SHORTCARD;
  25. JmpBufType = RECORD
  26. j_sp, j_ss, j_flag, j_cs, j_ip, j_bp, j_di, j_es, j_si, j_ds: CARDINAL;
  27. st1, st2: TenByteReal;
  28. END;
  29. jmp_buf = ARRAY [0..0] OF JmpBufType;
  30. (*# save *)
  31. (*# call(reg_saved=>(ax,bx,cx,dx,ds,es,si,di,st0,st1,st2,st3,st4,st5,st6)) *)
  32. PROCEDURE longjmp(VAR _env: jmp_buf; _val: INTEGER);
  33. (*# call(reg_saved=>(ds,es,si,di,st1,st2), set_jmp=>on) *)
  34. PROCEDURE _setjmp(VAR env: jmp_buf): INTEGER;
  35. (*# restore *)
  36. PROCEDURE _chain_intr(Int: FarADDRESS);
  37. TYPE
  38. ErrnoPtr = POINTER TO INTEGER;
  39. PROCEDURE _errno__(): ErrnoPtr;
  40. PROCEDURE _ioerr(Code: INTEGER): INTEGER;
  41. PROCEDURE _seterrno(Code: INTEGER): INTEGER;
  42. (*# save *)
  43. (*# call(near_call=>off, reg_param=>(), c_conv=>on, reg_saved => (ds, si, di,st1,st2,st2,st3,st4,st5,st6)) *)
  44. PROCEDURE _FatalError(ErrPos: LONGCARD; Code: CARDINAL);
  45. PROCEDURE _FatalErrorPos(): LONGCARD;
  46. (*# restore *)
  47. (*# save, call(near_call=>off, reg_param=>(), reg_saved=>(ax,bx,cx,dx,ds,si,di,st1,st2), c_conv=>off),
  48. name(prefix=>modula) *)
  49. TYPE
  50. CnsHandlerType = PROCEDURE(CARDINAL, CARDINAL, CARDINAL): BOOLEAN;
  51. VAR
  52. CnsHandler: CnsHandlerType;
  53. (*# restore *)
  54. VAR
  55. errno: INTEGER;
  56. END CoreSig.
  57.