]>
wirehaze git hosting - MS-DOS.git/blob - v4.0/src/DOS/DUP.ASM
1 ; SCCSID = @(#)dup.asm 1.1 85/04/10
2 ; SCCSID = @(#)dup.asm 1.1 85/04/10
3 TITLE DOS_DUP
- Internal SFT
DUP (for network SFTs
)
5 ; Low level DUP routine for use by EXEC when creating a new process. Exports
6 ; the DUP to the server machine and increments the SFT ref count
10 ; Modification history:
12 ; Created: ARR 30 March 1983
16 ; get the appropriate segment definitions
21 CODE SEGMENT BYTE PUBLIC 'CODE'
22 ASSUME
SS:DOSGROUP
,CS:DOSGROUP
32 BREAK <DOS_DUP
-- DUP SFT across network
>
35 ; [THISSFT] set to the SFT for the file being DUPed
36 ; (a non net SFT is OK, in this case the ref
37 ; count is simply incremented)
39 ; Signal to the devices that alogical open is occurring
43 ; SFT ref_count is incremented
44 ; Registers modified: None.
46 ; This routine is called from $CREATE_PROCESS_DATA_BLOCK at DOSINIT
47 ; time with SS NOT DOSGROUP. There will be no Network handles at
50 procedure DOS_DUP
,NEAR
51 ASSUME
ES:NOTHING
,SS:NOTHING
55 Assert ISSFT
,<ES,DI>,"DOSDup"
60 Assert ISSFT
,<ES,DI>,"DOSDup/DoInc"
61 INC ES:[DI.sf_ref_count
] ; Clears carry (if this ever wraps
62 ; we're in big trouble anyway)