SVC API

Supervisor calls API aimed to call host services from MVM.

Functions

Function	Name	INT 21h equivalent	Description
0	SVC_DUPHANDLE	AH=45h	Duplicate handle (params and result same as in INT 21H AH=45H)
1	SVC_ERROREXIT	—	Terminate MVM with error message (top of stack - far pointer to message ASCIIZ)
2	SVC_EXIT	AH=4Ch	Terminate MVM and return code to parent process from AX
3	SVC_CLOSE	AH=3Eh	Close file handle (interface not investigated yet)
4	SVC_RESETDISK	AH=0Dh	Reset disk buffers
5	SVC_GETPSP	AH=62h	Get current PSP (interface not investigated yet)
6	SVC_SELECTDRIVE	AH=0Eh	Select default drive (params and result same as in INT 21H AH=0EH)
7	SVC_SETDTA	AH=1Ah	Set DTA from DS:DX (params and result same as in INT 21H AH=1AH)
8	SVC_GETVERSION	AH=30h	Get version (interface not investigated yet)
9	SVC_WRITE	AH=40h	Write file handle (interface not investigated yet)
10	SVC_SETDATE	AH=2Bh	Set system date (params and result same as in INT 21H AH=2BH)
11	SVC_SETTIME	AH=2Dh	Set system time (params and result same as in INT 21H AH=2DH)
12	SVC_GETDATE	AH=2Ah	Get system date (result same as in INT 21H AH=2AH)
13	SVC_GETTIME	AH=2Ch	Get system time (result same as in INT 21H AH=2CH)
14	SVC_READ	AH=3Fh	Read file handle (interface not investigated yet)
15	SVC_CHGFILEPTR	AH=42h	Set file handle position (interface not investigated yet)
16	SVC_RMDIR	AH=3Ah	Delete directory (params and result same as in INT 21H AH=3AH)
17	SVC_MKDIR	AH=39h	Create directory (interface not investigated yet)
18	SVC_QCURDIR	AH=47h	Get current directory (params and result same as in INT 21H AH=47H)
19	SVC_CHDIR	AH=3Bh	Change directory (params and result same as in INT 21H AH=3BH)
20	SVC_GETSETFILETIME	AH=57h	Get/Set file time (interface not investigated yet)
21	SVC_COMMITFILE	AH=68h	Commit file (interface not investigated yet)
22	SVC_FINDFIRSTFCB	AH=11h	Find first file using FCB (interface not investigated yet)
23	SVC_FINDNEXTFCB	AH=12h	Find next file using FCB (interface not investigated yet)
24
25	SVC_FINDFIRST	AH=4Eh	Find first file (interface not investigated yet)
26
27
28	SVC_OPEN	AH=3Dh	Open file (interface not investigated yet)
29	SVC_DELETEFCB	AH=13h	Delete file using FCB (DS:DX → unopened FCB, ES → environment segment)
30	SVC_RENAMEFCB	AH=17h	Rename file using FCB (params and result same as in INT 21H AH=17H)
31	SVC_DELETE	AH=41h	Delete file (interface not investigated yet)
32	SVC_MOVE	AH=56h	Rename file (interface not investigated yet)
33
34
35
36
37	SVC_OPENFCB	AH=0Fh	Open file using FCB (interface not investigated yet)
38
39	SVC_CLOSEFCB	AH=10h	Close file using FCB (interface not investigated yet)
40
41
42
43
44	SVC_SETVERIFY	AH=2Eh	Set VERIFY flag from AL
45	SVC_FINDNEXT	AH=4Fh	Find next file (interface not investigated yet)
46	SVC_CREATE	AH=3Ch	Create new file (interface not investigated yet)
47	SVC_CREATETEMP	AH=5Ah	Create temp file (interface not investigated yet)
48
49	SVC_PARSEFILENAME	AH=29h	Parse filename to FCB (params and result same as in INT 21H AH=29H) – creates an unopened FCB from an ASCIIZ string
50
51
52
53
54
55
56
57
58
59
60
61	SVC_ABSDISKREAD	INT 25h	Absolute disk read (interface not investigated yet; corresponds to INT 25h)
62	SVC_ABSDISKWRITE	INT 26h	Absolute disk write (interface not investigated yet; corresponds to INT 26h)
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85

Structures

FCB

XFCB

FILETIME

FILEDATE

SVC API
Supervisor calls	0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
Structures	FCB XFCB FILETIME FILEDATE