]> pd.if.org Git - mmurtl/commitdiff
autocommit for file dated 1995-01-02 10:39:10
authorRichard Burgess <>
Mon, 2 Jan 1995 10:39:10 +0000 (10:39 +0000)
committerNathan Wagner <nw@hydaspes.if.org>
Mon, 17 Oct 2016 14:03:47 +0000 (14:03 +0000)
ossource/mjob.h [new file with mode: 0644]

diff --git a/ossource/mjob.h b/ossource/mjob.h
new file mode 100644 (file)
index 0000000..9b48699
--- /dev/null
@@ -0,0 +1,85 @@
+/* MJob.h    MMURTL Job Management prototypes ****/\r
+\r
+/* MMURTL Operating System Source Code\r
+   Copyright 1991,1992,1993, Richard A. Burgess\r
+   ALL RIGHTS RESERVED\r
+   Version x0.8\r
+*/\r
+\r
+\r
+#define ErcBadJobNum   70      /* Bad job number was specified in OS call */\r
+#define ErcInvalidJCB  71      /* Specified an unassigned JCB */\r
+#define ErcBadRunFile  74      /* Run file you specified is NOT a run file */\r
+#define ErcBadJobParam 76      /* Bad length in parameter to JCB call */\r
+\r
+struct JCBRec {\r
+       long                    JobNum;\r
+       char                    sbJobName[14];          /* 13 bytes. First byte is length */\r
+       char                    *pJcbPD;                        /* Linear add of Job's PD (0=unused) */\r
+\r
+       char                    *pJcbCode;                      /* User Address of code segment */\r
+       unsigned long   sJcbCode;                       /* Size of user code segment */\r
+       char                    *pJcbData;                      /* User Adresss of data segment */\r
+       unsigned long   sJcbData;                       /* Size of user data segment */\r
+       char                    *pJcbStack;                     /* User Addrees of first stack */\r
+       unsigned long   sJcbStack;                      /* Size of user first stack */\r
+\r
+       char                    sbUserName[30];         /* User Name for Job - LString */\r
+       char                    sbPath[70];                     /* path name (prefix) - LString */\r
+       char                    JcbExitRF[80];          /* Exit Run file (if any) - LString */\r
+       char                    JcbCmdLine[80];         /* Command Line string - LString */\r
+       char                    JcbSysIn[50];           /* Standard input  - LString */\r
+       char                    JcbSysOut[50];          /* Standard output - LString */\r
+\r
+       long                    ExitError;                      /* Error Set by ExitJob */\r
+       char                    *pVidMem;                       /* pointer to crnt video buffer */\r
+       char                    *pVirtVid;                      /* Virtual Video Buffer Address */\r
+       long                    CrntX;                          /* Current cursor position */\r
+       long                    CrntY;\r
+       long                    nCols;                          /* Virtual Screen Size */\r
+       long                    nLines;\r
+       long                    VidMode;                        /* 0 = 80x25 VGA color text */\r
+       long                    NormVid;                        /* 7 = WhiteOnBlack */\r
+\r
+       char                    fCursOn;                        /* FLAG 1 = Cursor is visible */\r
+       char                    fCursType;                      /* FLAG (0=UL, 1 = Block) */\r
+       unsigned char   ScrlCnt;                        /* Count since last pause  */\r
+       char                    fVidPause;                      /* Full screen pause (Text mode) */\r
+       long                    NextJCB;                        /* OS Uses to allocate JCBs */\r
+       char JcbRsvd1[512-22-24-360-36-8]       /* Padded to 512 */\r
+       };\r
+\r
+extern far long GetpJCB(long dJobNum, char *pJCBRet);\r
+extern far long GetJobNum(long *pJobNumRet);\r
+extern far long LoadNewJob(char *pFileName, long cbFileName, long *pJobNumRet);\r
+extern far long Chain(char *pFileName, long cbFileName, long dExitError);\r
+extern far void ExitJob(long dError);\r
+extern far void KillJob(long JubNum);\r
+\r
+extern far long SetUserName(char *pUser, long dcbUser);\r
+extern far long GetUserName(char *pUserRet, long *pdcbUserRet);\r
+\r
+extern far long SetCmdLine(char *pCmd, long dcbCmd);\r
+extern far long GetCmdLine(char *pCmdRet, long *pdcbCmdRet);\r
+\r
+extern far long SetPath(char *pPath, long dcbPath);\r
+extern far long GetPath(long JobNum, char *pPathRet, long *pdcbPathRet);\r
+\r
+extern far long SetExitJob(char *pRunFile, long dcbRunFile);\r
+extern far long GetExitJob(char *pRunRet, long *pdcbRunRet);\r
+\r
+extern far long SetSysIn(char *pFile, long dcbFile);\r
+extern far long GetSysIn(char *pFileRet, long *pdcbFileRet);\r
+\r
+extern far long SetSysOut(char *pFile, long dcbFile);\r
+extern far long GetSysOut(char *pFileRet, long *pdcbFileRet);\r
+\r
+extern far long SetJobName(char *pName, long dcbName);\r
+\r
+extern far long RegisterSvc(char *pName, unsigned long Exch);\r
+\r
+extern far long UnRegisterSvc(char *pName);\r
+\r
+extern far long GetSystemDisk(unsigned char *pDiskRet);\r
+\r
+/****** End of Job.h *******/\r