struc PSP ; Program Segment Prefix pspInt20 dw ? ; Int 20h instruction pspNextParagraph dw ? ; Segment addr of next paragraph db ? ; Reserved pspDispatcher db 5 dup (?) ; Far call to DOS pspTerminateVector dd ? ; Int 22h addr pspControlCVector dd ? ; Int 23h addr pspCritErrorVector dd ? ; Int 24h addr dw 11 dup (?) ; Reserved pspEnvironment dw ? ; Segment addr of environment dw 23 dup (?) ; Reserved pspFCB_1 db 16 dup (?) ; Default FCB #1 pspFCB_2 db 16 dup (?) ; Default FCB #2 dd ? ; Reserved pspCommandTail db 128 dup (?) ; Command tail (also default DTA) ends ; = 256d = 100h bytes
; The Program Segment Prefix is a control structure that ; DOS builds for each program. PSP occupies the first 256 ; (100h) bytes of the memory allocated to the program.
; pspNextParagraph (offset 0002h in PSP) ; Segment address of 1st paragraph after ; program's memory allocation block.
; pspEnvironment (offset 002Ch in PSP) ; Segment address of program's environment block
; pspCommandTail (offset 0080h in PSP) ; Program's command-line arguments ; Format: byte length of arguments, arguments, CR character ; (db 9," /s a.fil",0dh)