home *** CD-ROM | disk | FTP | other *** search
- ; Delete lines containing "ENDS" and "END" above.
-
- EXEPacket IOPacket <> ; Requires packet space
-
- Start PROC NEAR ; Execute DDD installation
- MOV SP,OFFSET StackTop ; Shorten stack
- PUSH ES ; Save PSP segment
- MOV AH,049H ; Release environment
- MOV ES,ES:0002CH
- INT 021H
- PUSH CS ; DS = CS
- POP DS
- ASSUME DS:CSEG
- POP AX ; ES:0081 = Command string
- MOV EXEPacket.IO_COUNT+2,AX ; Put address in packet
- MOV EXEPacket.IO_COUNT,00081H
- SUB AL,AL ; 0 = Initialize DDD
- MOV EXEPacket.IO_CMD,AL ; Put command in packet
- MOV BX,OFFSET EXEPacket ; ES:BX = packet address
- PUSH CS
- POP ES
- ASSUME ES:CSEG
- PUSH CS ; FAR return
- CALL StratA ; Perform strategy
- PUSH CS ; FAR return
- CALL IntrA ; Perform interrupt
- MOV DX,EXEPacket.IO_ADDRESS ; Get ending address
- ADD DX,0010FH ; Add PSP and round up
- MOV CL,4 ; Convert to paragraphs
- SHR DX,CL
- MOV AX,03100H ; DOS stay resident function
- INT 021H
-
- DW 080H DUP (?)
- StackTop DW 0
- Start ENDP
- CSEG ENDS
- END Start