Pointers
The LISEG for each process is imbedded in the PTDA at ptda_infoseg.
InfoSegLDT
┌────────────────┬──────┬──────┬────┬────────────────────────────────────────┐│Field Name │Offset│Length│Type│Description │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_CurProcID │+0 │2 │W │Current process ID │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_ParProcID │+2 │2 │W │Process ID of parent │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_CurThrdPri │+4 │2 │W │Current thread priority │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_CurThrdID │+6 │2 │W │Current thread ID │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_CurScrnGrp │+8 │2 │W │Screengroup │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_ProcStatus │+a │1 │B │Process status bits │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_fillbyte1 │+b │1 │B │filler byte │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_Fgnd │+c │2 │W │Current process is in foreground │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_ProcType │+e │1 │B │Current process type │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_fillbyte2 │+f │1 │B │filler byte │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_AX │+10 │2 │W │@@V1 Environment selector │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_BX │+12 │2 │W │@@V1 Offset of command line start │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_CX │+14 │2 │W │@@V1 Length of Data Segment │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_DX │+16 │2 │W │@@V1 STACKSIZE from the .EXE file │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_SI │+18 │2 │W │@@V1 HEAPSIZE from the .EXE file │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_DI │+1a │2 │W │@@V1 Module handle of the application │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_DS │+1c │2 │W │@@V1 Data Segment Handle of application │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_PackSel │+1e │2 │W │First tiled selector in this EXE │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_PackShrSel │+20 │2 │W │First selector above shared arena │ ├────────────────┼──────┼──────┼────┼────────────────────────────────────────┤ │LIS_PackPckSel │+22 │2 │W │First selector above packed arena │ └────────────────┴──────┴──────┴────┴────────────────────────────────────────┘
LIS_ProcStatus flag definitions:
┌─────────────┬────────┬──────────────────────────────┐ │Name │Bit Mask│Description │ ├─────────────┼────────┼──────────────────────────────┤ │PS_XITLST │0x01 │Doing ExitList Processing │ ├─────────────┼────────┼──────────────────────────────┤ │PS_XITTH1 │0x02 │Exiting thread 1 │ ├─────────────┼────────┼──────────────────────────────┤ │PS_XITALL │0x04 │The whole process is exiting │ ├─────────────┼────────┼──────────────────────────────┤ │PS_SYNCPARENT│0x10 │Parent cares about termination│ ├─────────────┼────────┼──────────────────────────────┤ │PS_WAITPARENT│0x20 │Parent did an exec-and-wait │ ├─────────────┼────────┼──────────────────────────────┤ │PS_DYING │0x40 │Process is dying │ ├─────────────┼────────┼──────────────────────────────┤ │PS_EMBRYO │0x80 │Process in embryonic state │ └─────────────┴────────┴──────────────────────────────┘
LIS_ProcType flag definitions:
┌───────────────┬────────┬─────────────────────────┐ │Name │Value │Description │ ├───────────────┼────────┼─────────────────────────┤ │LIS_PT_FULLSCRN│0 │Full screen app. │ ├───────────────┼────────┼─────────────────────────┤ │LIS_PT_REALMODE│1 │Real mode process │ ├───────────────┼────────┼─────────────────────────┤ │PT_VDM │1 │VDM │ ├───────────────┼────────┼─────────────────────────┤ │LIS_PT_VIOWIN │2 │VIO windowable app. │ ├───────────────┼────────┼─────────────────────────┤ │LIS_PT_PRESMGR │3 │Presentation Manager app.│ ├───────────────┼────────┼─────────────────────────┤ │LIS_PT_DETACHED│4 │Detached app. │ └───────────────┴────────┴─────────────────────────┘