1 ; MMURTL Operating System Source Code
\r
2 ; Copyright 1991,1992,1993,1994 Richard A. Burgess
\r
3 ; ALL RIGHTS RESERVED Version 1.0
\r
5 ;DO NOT INCLUDE DATA OR CODE IN THIS MODULE. ONLY EQUATES/MACROS
\r
7 ; Job Control Block (all tasks are associated with a JOB)
\r
8 ; The JOB NUMBER is how the job is identifed by many OS functions.
\r
9 ; Each JCB is assigned a number when the it is initialized.
\r
10 ; Job 1 is always reserved for the OS Monitor and 2 for the debugger.
\r
11 ; (even though the debugger isn't really a job...)
\r
13 ; The JCB keeps job related information such as the current path
\r
14 ; of the job, Linear address of it's PD, virtual video info, Cmd line
\r
15 ; when executed, Job path, etc...
\r
17 nJCBs EQU 32 ;max Job Contol Blocks (excluding 2 static JCBs)
\r
20 ; Offsets into the structure
\r
21 JobNum EQU 0 ;DD 0 ;
\r
22 sbJobName EQU 4 ;DB 14 DUP (0h) ; 13 bytes w/1 length
\r
23 JcbPD EQU 18 ;DD 0 ; Linear add of Job's PD
\r
24 pJcbCode EQU 22 ;DD 0 ;User Address of code segment
\r
25 sJcbCode EQU 26 ;DD 0 ;Size of user code segment
\r
26 pJcbData EQU 30 ;DD 0 ;User Adresss of data segment
\r
27 sJcbData EQU 34 ;DD 0 ;Size of user data segment
\r
28 pJcbStack EQU 38 ;DD 0 ;User Addrees of first stack
\r
29 sJcbStack EQU 42 ;DD 0 ;Size of user first stack
\r
30 JcbUserName EQU 46 ;DB 30 DUP (0h) ; User Name for Job - LString
\r
31 JcbPath EQU 76 ;DB 70 DUP (0h) ; path name (prefix) - LString
\r
32 JcbExitRF EQU 146 ;DB 80 DUP (0h) ; Exit Run file (if any) - LString
\r
33 JcbCmdLine EQU 226 ;DB 80 DUP (0h) ; Command Line string - LString
\r
34 JcbSysIn EQU 306 ;DB 50 DUP (0h) ; Standard input (KBD)
\r
35 JcbSysOut EQU 356 ;DB 50 DUP (0h) ; Standard output (VID)
\r
36 ExitError EQU 406 ;DD 0 ;Error passed by ExitJob
\r
37 pVidMem EQU 410 ;DD 0 ;pointer to crnt video (real or virtual)
\r
38 pVirtVid EQU 414 ;DD 0 ;Virtual Video Buffer Address
\r
39 CrntX EQU 418 ;DD 0 ;Current cursor position
\r
41 nCols EQU 426 ;DD 80 ;Screen size
\r
42 nLines EQU 430 ;DD 25
\r
43 VidMode EQU 434 ;DD 0 ;0 = 80x25 VGA color text
\r
44 NormAttr EQU 438 ;DD 07 ;Normal Video Attr
\r
45 fCursOn EQU 442 ;DB 0 ;Is cursor visible on this screen
\r
46 fCursType EQU 443 ;DB 0 ;Cursor type (0=UL, 1 = Block)
\r
47 ScrlCnt EQU 444 ;DB 0 ;Count since last pause (or Kbd)
\r
48 fVidPause EQU 445 ;DB 0 ;Full screen pause (Text mode)
\r
49 NextJCB EQU 446 ;DD 0 ;
\r
51 ;============ ENd of Module ======================
\r