751:
manufacturers of multitasking environments, EMS emulators, and DOS extenders to ensure that an extended VCPI specification could fully utilize the 80386's virtualization and protection features. In
February 1990, the parties involved in the above activities agreed to form the DPMI Committee and formulate an industry-wide standard for protected-mode DOS applications. The Committee released the first public DPMI Specification, Version 0.9 in May 1990.
799:, a more general solution to running protected-mode, DOS-extended and real-mode applications simultaneously. At first, DPMI seemed like a competitor to XVCPI, and there were threats of lawsuits and chaos in the DOS-extender field. When Microsoft turned over control of DPMI to an industry committee with open membership, XVCPI supporters joined the committee, making DPMI a de facto industry standard. DPMI version 0.9 appeared in Windows 3.0
663:. Consequently, DPMI, Version 0.9, the first public version, released by the DPMI Committee in May 1990, defines only the low-level or building-block functions Naturally, the higher level or DOS extender interface of Windows 3.0 still exists, but it has receded into the twilight zone of undocumented functionality. Undocumented, but hardly unusable
654:
market would fragment into two mutually exclusive directions
Microsoft turned control of the DPMI specification over to an industry committee with open membership, and the backers of the XVCPI effort decided to join forces behind the DPMI. Microsoft agreed to delete the portions of the DPMI that
187:
2.0 and later. VCPI was only supported in
Windows 3.0 real mode, some programs could run in Windows 3.x standard mode. Standard mode (286 mode) Windows 3.1 (but not 3.0) itself was VCPI compliant (it was a VCPI client). Earlier Windows/386 2.1 was not compatible with DOS extenders at all.
750:
The initial DPMI prototype was developed by
Microsoft for Windows version 3.0, with input from Lotus Corporation and Rational Systems, as part of a general effort to enhance Windows' performance by allowing the Windows kernel to run in extended memory. In parallel, Intel was working with
242:, Viewport International and others to address some of the shortcomings of VCPI and better exploit the memory management and multitasking capabilities of the 386 processor. It was used by a small number of products including operating systems like
431:
Many MS-DOS-based applications use the
Virtual Control Program Interface (VCPI) specification These programs do not work with Microsoft Windows version 3.0 in 386 enhanced mode. They work in Windows in real mode and may work in standard
171:) and does allow 80386 protected-mode DOS extenders to coexist with 80386 EMS expanded memory emulators. It was eclipsed by DPMI, most notably because it was not supported for DOS programs run in Windows 3.0's native
210:
for the processor.) Because the virtual 8086 mode isolates programs from the hardware, it is not possible for a program to switch to protected mode without some support from the control program.
254:
specification in May 1990, which addressed similar problems, but was compatible with the implementation of
Microsoft Windows 3.0 to be released the same year. In February 1991, the
198:
VCPI also had a comparatively limited scope in that it allowed a protected mode DOS program to run only when the program was started from DOS already running inside a
580:
Wurthmann, Gerold; Wopperer, Bernhard; Wiesböck, Johann (1991). "Die DPMI-Spezifikation – Eine Einführung" [An introduction to the DPMI specification].
589:
819:
693:
791:. The VCPI committee was working on an upgrade to VCPI that would have been called XVCPI (X for Extended) when Microsoft released beta copies of
787:
By 1990, the VCPI standard had been adopted by virtually all DOS-based programs that were specific to 386 and 486 CPUs-except programs from
724:
DOS Protected Mode
Interface (DPMI) Specification - Version 1.0 - Application Program Interface (API) for Protected Mode DOS Applications
634:
The creators of the VCPI were well aware of its limitations and were already hard at work on a second generation specification called
700:
83:
722:
582:
Vorträge und
Begleittexte zum 2. Entwicklerforum der Design & Elektronik zum Thema: PC-Architektur, 17. September 1991, MĂĽnchen
883:
457:
These programs use the VCPI to access extended memory that conflicts with
Windows in protected mode (standard and enhanced).
764:
231:
796:
647:
267:
251:
116:
586:
Presentations and supplemental material for the second developer forum on PC architecture on 17 September 1991, Munich
273:
544:
854:
519:
494:
469:
444:
227:
132:
65:
482:
an MS-DOS-based application that uses extended memory probably will fail to run in the standard-mode MS-DOS box.
255:
180:
250:. Since February 1990 these efforts ultimately succumbed to the (parallel) development and publication of the
878:
140:
69:
811:
888:
548:
523:
498:
473:
448:
426:
203:
136:
239:
247:
100:
61:
258:(MDOS), an initiative formed in July 1990, issued a statement regarding their support of DPMI.
850:
696:
612:
199:
148:
243:
235:
152:
73:
765:"Breaking the 1M/640K Barrier - Accessing and using extended memory from DOS applications"
681:
156:
735:
218:
Between 1989 and
February 1990 an alternative specification was proposed under the name
119:(DPMI) shortly after being introduced, due in large part to VCPI's inability to work in
660:
172:
108:
844:
872:
685:
651:
655:
crossed into DOS extender territory - specifically, direct support of the DOS and
792:
643:
617:
594:(NB. The forum was organized by the German magazine Design & Elektronik and
422:
120:
532:
Standard mode Windows 3.1 is VCPI-compliant; standard mode Windows 3.0 is not.
189:
788:
639:
112:
183:
0, which defeated the purpose of x86 protection. It also did not work with
684:; Schulman, Andrew; Baker, M. Steven; Nelson, Ross P.; Davis, Stephen R.;
656:
613:"Power Programming - An Introduction to the DOS Protected Mode Interface"
552:
527:
502:
477:
452:
144:
575:
573:
571:
569:
567:
565:
314:, but has a different set of function numbers. XVCPI install check:
168:
111:, granting access to many features of the processor not available in
731:
595:
192:
184:
164:
160:
507:
It is possible to run some VCPI applications in standard mode.
104:
734:. pp. 4–5. Intel order code 240977-001. Archived from
520:"KB81476: MS-DOS Customers Who Want Windows 3.1 EMM386.EXE"
445:"KB64478: Mathematica 387 and Mathlab 386 with Windows 3.0"
818:. Nelson Publishing / Gale, Cengage Learning. 1990-11-01.
675:
673:
671:
690:
Extending DOS: A Programmer's Guide to Protected-Mode DOS
588:] (book) (in German) (1 ed.). Munich, Germany:
642:
barged onto the scene with the beta-test versions of
495:"KB86018: Windows 3.1 Has Limited Support for VCPI"
368:
320:
294:
79:
57:
39:
31:
23:
650:. For a few months it appeared that the fledgling
470:"KB82298: Windows 3.1 Standard Mode and the VCPI"
202:task. (This was typically accomplished through a
716:
714:
712:
846:Virtual Control Program Interface: Version 1.0
812:"NetWorld 90 - NetWorld: Multi-Vendor Answers"
606:
604:
590:Markt & Technik Verlag Aktiengesellschaft
8:
545:"KB101780: VCPI Not Supported in Windows NT"
293:NB. Like VCPI, the XVCPI API sits on top of
18:
423:"KB81493: Using VCPI Programs with Windows"
99:) is a specification published in 1989 by
17:
131:Developed since 1987 in cooperation with
694:Addison-Wesley Publishing Company, Inc.
414:
362:Another known function is defined as:
286:
795:Included in Windows 3 is the DPMI, or
557:VCPI is not supported in Windows NT.
226:) by a number of companies including
7:
179:) and because VCPI runs programs in
763:Brothers, Hardin (November 1992).
84:Application programming interfaces
14:
778:(11): 16–21, 20. 0-74820-08559-11
721:The DPMI Committee (1991-03-12).
93:Virtual Control Program Interface
19:Virtual Control Program Interface
822:from the original on 2018-08-20
1:
195:did not support VCPI either.
797:DOS Protected Mode Interface
268:DOS Protected Mode Interface
228:Intel's Software Focus Group
117:DOS Protected Mode Interface
399:=number of free 4 KB pages.
274:DOS Protected Mode Services
45:; 35 years ago
905:
855:Quarterdeck Office Systems
611:Duncan, Ray (1991-02-12).
133:Quarterdeck Office Systems
66:Quarterdeck Office Systems
155:, VCPI is provided by an
256:Multiuser DOS Federation
208:virtual control program
141:Lotus Development Corp.
115:. It was supplanted by
70:Lotus Development Corp.
884:DOS memory management
549:Microsoft Corporation
524:Microsoft Corporation
499:Microsoft Corporation
474:Microsoft Corporation
449:Microsoft Corporation
427:Microsoft Corporation
159:manager in DOS (e.g.
72:, Quadram, Qualitas,
135:and with support by
816:Communications News
240:Interactive Systems
123:'s protected mode.
68:, A.I. Architects,
20:
692:. 2 (2 ed.).
351:=00h (installed);
248:Concurrent DOS 386
107:program to run in
91:In computing, the
851:Phar Lap Software
625:(3): 367–371, 369
200:virtual 8086 mode
177:386 enhanced mode
101:Phar Lap Software
89:
88:
62:Phar Lap Software
896:
865:
863:
862:
831:
830:
828:
827:
808:
802:
801:
784:
783:
769:
760:
754:
753:
747:
746:
740:
729:
718:
707:
706:
682:Petzold, Charles
677:
666:
665:
631:
630:
608:
599:
593:
577:
560:
559:
551:. Archived from
541:
535:
534:
526:. Archived from
516:
510:
509:
501:. Archived from
491:
485:
484:
476:. Archived from
466:
460:
459:
451:. Archived from
441:
435:
434:
419:
402:
398:
390:
389:
386:
383:
380:
377:
374:
371:
358:
354:
350:
342:
341:
338:
335:
332:
329:
326:
323:
313:
312:
309:
306:
303:
300:
297:
291:
244:Interactive Unix
236:Digital Research
153:Rational Systems
74:Rational Systems
53:
51:
46:
21:
904:
903:
899:
898:
897:
895:
894:
893:
869:
868:
860:
858:
843:
840:
838:Further reading
835:
834:
825:
823:
810:
809:
805:
781:
779:
767:
762:
761:
757:
744:
742:
738:
727:
720:
719:
710:
703:
679:
678:
669:
628:
626:
610:
609:
602:
579:
578:
563:
555:on 2012-10-26.
543:
542:
538:
530:on 2012-10-26.
518:
517:
513:
505:on 2012-10-26.
493:
492:
488:
480:on 2013-03-09.
468:
467:
463:
455:on 2012-10-26.
443:
442:
438:
421:
420:
416:
411:
406:
405:
396:
387:
384:
381:
378:
375:
372:
369:
356:
355:=main-version,
352:
348:
339:
336:
333:
330:
327:
324:
321:
310:
307:
304:
301:
298:
295:
292:
288:
283:
264:
216:
206:operating as a
157:expanded memory
137:A.I. Architects
129:
49:
47:
44:
12:
11:
5:
902:
900:
892:
891:
886:
881:
879:DOS technology
871:
870:
867:
866:
839:
836:
833:
832:
803:
755:
708:
701:
667:
661:protected mode
659:interrupts in
638:(XVCPI), when
600:
592:. p. 223.
561:
536:
511:
486:
461:
436:
413:
412:
410:
407:
404:
403:
401:
400:
394:
391:
366:
361:
360:
346:
343:
318:
285:
284:
282:
279:
278:
277:
271:
263:
260:
215:
212:
204:memory manager
173:protected mode
128:
125:
109:protected mode
103:that allows a
87:
86:
81:
77:
76:
59:
55:
54:
41:
37:
36:
33:
29:
28:
25:
13:
10:
9:
6:
4:
3:
2:
901:
890:
889:DOS extenders
887:
885:
882:
880:
877:
876:
874:
856:
852:
848:
847:
842:
841:
837:
821:
817:
813:
807:
804:
800:
798:
794:
790:
777:
773:
772:ComputerCraft
766:
759:
756:
752:
741:on 2013-05-31
737:
733:
726:
725:
717:
715:
713:
709:
704:
702:0-201-56798-9
698:
695:
691:
687:
686:Moote, Robert
683:
680:Duncan, Ray;
676:
674:
672:
668:
664:
662:
658:
653:
649:
645:
641:
637:
636:Extended VCPI
624:
620:
619:
614:
607:
605:
601:
597:
591:
587:
583:
576:
574:
572:
570:
568:
566:
562:
558:
554:
550:
546:
540:
537:
533:
529:
525:
521:
515:
512:
508:
504:
500:
496:
490:
487:
483:
479:
475:
471:
465:
462:
458:
454:
450:
446:
440:
437:
433:
428:
424:
418:
415:
408:
395:
392:
367:
364:
363:
359:=sub-version.
347:
344:
319:
316:
315:
290:
287:
280:
275:
272:
269:
266:
265:
261:
259:
257:
253:
249:
245:
241:
237:
233:
229:
225:
221:
220:Extended VCPI
214:Extended VCPI
213:
211:
209:
205:
201:
196:
194:
191:
186:
182:
178:
174:
170:
166:
162:
158:
154:
150:
146:
142:
138:
134:
126:
124:
122:
118:
114:
110:
106:
102:
98:
94:
85:
82:
78:
75:
71:
67:
63:
60:
56:
42:
38:
34:
30:
26:
22:
16:
859:. Retrieved
857:. 1989-06-12
845:
824:. Retrieved
815:
806:
786:
780:. Retrieved
775:
771:
758:
749:
743:. Retrieved
736:the original
723:
689:
652:DOS extender
635:
633:
627:. Retrieved
622:
616:
585:
581:
556:
553:the original
539:
531:
528:the original
514:
506:
503:the original
489:
481:
478:the original
464:
456:
453:the original
439:
430:
417:
289:
223:
219:
217:
207:
197:
176:
130:
96:
92:
90:
58:Organization
40:Year started
24:Abbreviation
15:
793:Windows 3.0
644:Windows 3.0
618:PC Magazine
121:Windows 3.0
873:Categories
861:2016-05-21
826:2014-09-10
782:2016-05-21
745:2013-05-24
629:2016-05-21
409:References
190:Windows NT
789:Microsoft
640:Microsoft
113:real mode
35:Published
820:Archived
688:(1992).
657:ROM BIOS
646:and its
262:See also
175:(called
167:, later
149:Qualitas
127:Overview
849:. 1.0.
730:. 1.0.
193:DOS box
145:Quadram
48: (
699:
393:Return
345:Return
276:(DPMS)
270:(DPMI)
169:EMM386
80:Domain
32:Status
768:(PDF)
739:(PDF)
732:Intel
728:(PDF)
596:Intel
584:[
432:mode.
376:DE43h
365:Input
328:DE40h
317:Input
281:Notes
232:Lotus
224:XVCPI
697:ISBN
648:DPMI
252:DPMI
246:and
185:OS/2
181:Ring
165:QEMM
161:CEMM
151:and
97:VCPI
50:1989
43:1989
27:VCPI
385:67h
382:INT
337:67h
334:INT
311:DEh
299:67h
296:INT
105:DOS
875::
853:,
814:.
785:.
774:.
770:.
748:.
711:^
670:^
632:.
623:10
621:.
615:.
603:^
598:.)
564:^
547:.
522:.
497:.
472:.
447:.
429:.
425:.
397:DX
370:AX
357:BL
353:BH
349:AH
322:AX
305:AH
238:,
234:,
230:,
163:,
147:,
143:,
139:,
64:,
864:.
829:.
776:2
705:.
388:;
379:;
373:=
340:;
331:;
325:=
308:=
302:,
222:(
95:(
52:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.