name	gdi
type	win16
heap	65488  # 65536 - 16 (instance data) - 32 (stock objects)
file	gdi.exe

1   pascal   SetBkColor(word long) SetBkColor16
2   pascal16 SetBkMode(word word) SetBkMode16
3   pascal16 SetMapMode(word word) SetMapMode16
4   pascal16 SetROP2(word word) SetROP216
5   pascal16 SetRelAbs(word word) SetRelAbs16
6   pascal16 SetPolyFillMode(word word) SetPolyFillMode16
7   pascal16 SetStretchBltMode(word word) SetStretchBltMode16
8   pascal16 SetTextCharacterExtra(word s_word) SetTextCharacterExtra16
9   pascal   SetTextColor(word long) SetTextColor16
10  pascal16 SetTextJustification(word s_word s_word) SetTextJustification16
11  pascal SetWindowOrg(word s_word s_word) SetWindowOrg16
12  pascal SetWindowExt(word s_word s_word) SetWindowExt16
13  pascal SetViewportOrg(word s_word s_word) SetViewportOrg16
14  pascal SetViewportExt(word s_word s_word) SetViewportExt16
15  pascal OffsetWindowOrg(word s_word s_word) OffsetWindowOrg16
16  pascal ScaleWindowExt(word s_word s_word s_word s_word) ScaleWindowExt16
17  pascal OffsetViewportOrg(word s_word s_word) OffsetViewportOrg16
18  pascal ScaleViewportExt(word s_word s_word s_word s_word) ScaleViewportExt16
19  pascal16 LineTo(word s_word s_word) LineTo16
20  pascal   MoveTo(word s_word s_word) MoveTo16
21  pascal16 ExcludeClipRect(word s_word s_word s_word s_word) ExcludeClipRect16
22  pascal16 IntersectClipRect(word s_word s_word s_word s_word) IntersectClipRect16
23  pascal16 Arc(word s_word s_word s_word s_word s_word s_word s_word s_word)
             Arc16
24  pascal16 Ellipse(word s_word s_word s_word s_word) Ellipse16
25  pascal16 FloodFill(word s_word s_word long) FloodFill16
26  pascal16 Pie(word s_word s_word s_word s_word s_word s_word s_word s_word)
             Pie16
27  pascal16 Rectangle(word s_word s_word s_word s_word) Rectangle16
28  pascal16 RoundRect(word s_word s_word s_word s_word s_word s_word)
             RoundRect16
29  pascal16 PatBlt(word s_word s_word s_word s_word long) PatBlt16
30  pascal16 SaveDC(word) SaveDC16
31  pascal   SetPixel(word s_word s_word long) SetPixel16
32  pascal16 OffsetClipRgn(word s_word s_word) OffsetClipRgn16
33  pascal16 TextOut(word s_word s_word str word) TextOut16
34  pascal16 BitBlt( word s_word s_word s_word s_word word s_word s_word long)
             BitBlt16
35  pascal16 StretchBlt(word s_word s_word s_word s_word word s_word s_word
                        s_word s_word long) StretchBlt16
36  pascal16 Polygon (word ptr word) Polygon16
37  pascal16 Polyline (word ptr word) Polyline16
38  pascal Escape(word word word segptr segptr) Escape16
39  pascal16 RestoreDC(word s_word) RestoreDC16
40  pascal16 FillRgn(word word word) FillRgn16
41  pascal16 FrameRgn(word word word word word) FrameRgn16
42  pascal16 InvertRgn(word word) InvertRgn16
43  pascal16 PaintRgn(word word) PaintRgn16
44  pascal16 SelectClipRgn(word word) SelectClipRgn16
45  pascal16 SelectObject(word word) SelectObject16
#46  pascal __GP?
47  pascal16 CombineRgn(word word word s_word) CombineRgn16
48  pascal16 CreateBitmap(word word word word ptr) CreateBitmap16
49  pascal16 CreateBitmapIndirect(ptr) CreateBitmapIndirect16
50  pascal16 CreateBrushIndirect(ptr) CreateBrushIndirect16
51  pascal16 CreateCompatibleBitmap(word word word) CreateCompatibleBitmap16
52  pascal16 CreateCompatibleDC(word) CreateCompatibleDC16
53  pascal16 CreateDC(ptr ptr ptr ptr) CreateDC16
54  pascal16 CreateEllipticRgn(s_word s_word s_word s_word) CreateEllipticRgn16
55  pascal16 CreateEllipticRgnIndirect(ptr) CreateEllipticRgnIndirect16
56  pascal16 CreateFont(s_word s_word s_word s_word s_word word word word
                        word word word word word str) CreateFont16
57  pascal16 CreateFontIndirect(ptr) CreateFontIndirect16
58  pascal16 CreateHatchBrush(word long) CreateHatchBrush16
60  pascal16 CreatePatternBrush(word) CreatePatternBrush16
61  pascal16 CreatePen(s_word s_word long) CreatePen16
62  pascal16 CreatePenIndirect(ptr) CreatePenIndirect16
63  pascal16 CreatePolygonRgn(ptr word word) CreatePolygonRgn16
64  pascal16 CreateRectRgn(s_word s_word s_word s_word) CreateRectRgn16
65  pascal16 CreateRectRgnIndirect(ptr) CreateRectRgnIndirect16
66  pascal16 CreateSolidBrush(long) CreateSolidBrush16
67  pascal16 DPtoLP(word ptr s_word) DPtoLP16
68  pascal16 DeleteDC(word) DeleteDC16
69  pascal16 DeleteObject(word) DeleteObject16
70  pascal16 EnumFonts(word str segptr long) THUNK_EnumFonts16
71  pascal16 EnumObjects(word word segptr long) THUNK_EnumObjects16
72  pascal16 EqualRgn(word word) EqualRgn16
73  pascal16 ExcludeVisRect(word s_word s_word s_word s_word) ExcludeVisRect16
74  pascal GetBitmapBits(word long ptr) GetBitmapBits16
75  pascal   GetBkColor(word) GetBkColor16
76  pascal16 GetBkMode(word) GetBkMode16
77  pascal16 GetClipBox(word ptr) GetClipBox16
78  pascal   GetCurrentPosition(word) GetCurrentPosition16
79  pascal   GetDCOrg(word) GetDCOrg16
80  pascal16 GetDeviceCaps(word s_word) GetDeviceCaps16
81  pascal16 GetMapMode(word) GetMapMode16
82  pascal16 GetObject(word s_word ptr) GetObject16
83  pascal   GetPixel(word s_word s_word) GetPixel16
84  pascal16 GetPolyFillMode(word) GetPolyFillMode16
85  pascal16 GetROP2(word) GetROP216
86  pascal16 GetRelAbs(word) GetRelAbs16
87  pascal16 GetStockObject(word) GetStockObject16
88  pascal16 GetStretchBltMode(word) GetStretchBltMode16
89  pascal16 GetTextCharacterExtra(word) GetTextCharacterExtra16
90  pascal   GetTextColor(word) GetTextColor16
91  pascal   GetTextExtent(word ptr s_word) GetTextExtent16
92  pascal16 GetTextFace(word s_word ptr) GetTextFace16
93  pascal16 GetTextMetrics(word ptr) GetTextMetrics16
94  pascal   GetViewportExt(word) GetViewportExt16
95  pascal   GetViewportOrg(word) GetViewportOrg16
96  pascal   GetWindowExt(word) GetWindowExt16
97  pascal   GetWindowOrg(word) GetWindowOrg16
98  pascal16 IntersectVisRect(word s_word s_word s_word s_word)
             IntersectVisRect16
99  pascal16 LPtoDP(word ptr s_word) LPtoDP16
100 pascal16 LineDDA(s_word s_word s_word s_word segptr long) THUNK_LineDDA16
101 pascal16 OffsetRgn(word s_word s_word) OffsetRgn16
102 pascal16 OffsetVisRgn(word s_word s_word) OffsetVisRgn16
103 pascal16 PtVisible(word s_word s_word) PtVisible16
104 pascal16 RectVisibleOld(word ptr) RectVisible16 # also named RECTVISIBLE
105 pascal16 SelectVisRgn(word word) SelectVisRgn16
106 pascal SetBitmapBits(word long ptr) SetBitmapBits16
117 pascal SetDCOrg(word s_word s_word) SetDCOrg16
119 pascal16 AddFontResource(str) AddFontResource16
121 pascal16 Death(word) Death16
122 pascal16 Resurrection(word word word word word word word) Resurrection16
123 pascal16 PlayMetaFile(word word) PlayMetaFile16
124 pascal16 GetMetaFile(str) GetMetaFile16
125 pascal16 CreateMetaFile(str) CreateMetaFile16
126 pascal16 CloseMetaFile(word) CloseMetaFile16
127 pascal16 DeleteMetaFile(word) DeleteMetaFile16
128 pascal16 MulDiv(s_word s_word s_word) MulDiv16
129 pascal16 SaveVisRgn(word) SaveVisRgn16
130 pascal16 RestoreVisRgn(word) RestoreVisRgn16
131 pascal16 InquireVisRgn(word) InquireVisRgn16
132 pascal16 SetEnvironment(str str word) SetEnvironment16
133 pascal16 GetEnvironment(str str word) GetEnvironment16
134 pascal16 GetRgnBox(word ptr) GetRgnBox16
#135 pascal ScanLr
136 pascal16 RemoveFontResource(segptr) RemoveFontResource16
148 pascal SetBrushOrg(word s_word s_word) SetBrushOrg16
149 pascal GetBrushOrg(word) GetBrushOrg16
150 pascal16 UnrealizeObject(word) UnrealizeObject16
151 pascal16 CopyMetaFile(word str) CopyMetaFile16
153 pascal16 CreateIC(str str str ptr) CreateIC16
154 pascal   GetNearestColor(word long) GetNearestColor16
155 pascal16 QueryAbort(word word) QueryAbort16
156 pascal16 CreateDiscardableBitmap(word word word) CreateDiscardableBitmap16
158 pascal16 EnumCallback(ptr ptr word long) WineEnumDFontCallback
159 pascal16 GetMetaFileBits(word) GetMetaFileBits16
160 pascal16 SetMetaFileBits(word) SetMetaFileBits16
161 pascal16 PtInRegion(word s_word s_word) PtInRegion16
162 pascal   GetBitmapDimension(word) GetBitmapDimension16
163 pascal   SetBitmapDimension(word s_word s_word) SetBitmapDimension16
169 stub IsDCDirty
170 stub SetDCStatus
172 pascal16 SetRectRgn(word s_word s_word s_word s_word) SetRectRgn16
173 pascal16 GetClipRgn(word) GetClipRgn16
175 pascal16 EnumMetaFile(word word segptr long) THUNK_EnumMetaFile16
176 pascal16 PlayMetaFileRecord(word ptr ptr word) PlayMetaFileRecord16
179 pascal16 GetDCState(word) GetDCState16
180 pascal16 SetDCState(word word) SetDCState16
181 pascal16 RectInRegionOld(word ptr) RectInRegion16 # also named RECTINREGION
188 stub GetTextExtentEx
190 pascal16 SetDCHook(word segptr long) SetDCHook
191 pascal   GetDCHook(word ptr) GetDCHook
192 pascal16 SetHookFlags(word word) SetHookFlags16
193 pascal16 SetBoundsRect(word ptr word) SetBoundsRect16
194 pascal16 GetBoundsRect(word ptr word) GetBoundsRect16
195 stub SelectBitmap
196 pascal16 SetMetaFileBitsBetter(word) SetMetaFileBitsBetter16
201 stub DMBITBLT
202 stub DMCOLORINFO
206 pascal16 dmEnumDFonts(ptr str ptr ptr) dmEnumDFonts16
207 stub DMENUMOBJ
208 stub DMOUTPUT
209 stub DMPIXEL
210 pascal16 dmRealizeObject(ptr word ptr ptr segptr) dmRealizeObject16
211 stub DMSTRBLT
212 stub DMSCANLR
213 stub BRUTE
214 stub DMEXTTEXTOUT
215 stub DMGETCHARWIDTH
216 stub DMSTRETCHBLT
217 stub DMDIBBITS
218 stub DMSTRETCHDIBITS
219 stub DMSETDIBTODEV
220 stub DMTRANSPOSE
230 pascal16 CreatePQ(word) CreatePQ16
231 pascal16 MinPQ(word) MinPQ16
232 pascal16 ExtractPQ(word) ExtractPQ16
233 pascal16 InsertPQ(word word word) InsertPQ16
234 pascal16 SizePQ(word word) SizePQ16
235 pascal16 DeletePQ(word) DeletePQ16
240 pascal16 OpenJob(ptr ptr word) OpenJob16
241 pascal16 WriteSpool(word ptr word) WriteSpool16
242 pascal16 WriteDialog(word ptr word) WriteDialog16
243 pascal16 CloseJob(word) CloseJob16
244 pascal16 DeleteJob(word word) DeleteJob16
245 pascal GetSpoolJob(word ptr) GetSpoolJob16
246 pascal16 StartSpoolPage(word) StartSpoolPage16
247 pascal16 EndSpoolPage(word) EndSpoolPage16
248 stub QueryJob
250 pascal16 Copy(ptr ptr word) Copy16
253 stub DeleteSpoolPage
254 stub SpoolFile
267 stub StartDocPrintEra
268 stub StartPagePrinter
269 stub WritePrinter
270 stub EndPagePrinter
271 stub AbortPrinter
272 stub EndDocPrinter
274 stub ClosePrinter
280 stub GetRealDriverInfo
281 pascal DrvSetPrinterData(ptr ptr long ptr long) DrvSetPrinterData16
282 pascal DrvGetPrinterData(ptr ptr ptr ptr long ptr) DrvGetPrinterData16
299 stub ENGINEGETCHARWIDTHEX
300 pascal EngineEnumerateFont(ptr segptr long) EngineEnumerateFont16
301 pascal16 EngineDeleteFont(ptr) EngineDeleteFont16
302 pascal EngineRealizeFont(ptr ptr ptr) EngineRealizeFont16
303 pascal16 EngineGetCharWidth(ptr word word ptr) EngineGetCharWidth16
304 stub ENGINESETFONTCONTEXT
305 stub ENGINEGETGLYPHBMP
306 stub ENGINEMAKEFONTDIR
307 pascal16 GetCharABCWidths(word word word ptr) GetCharABCWidths16
308 pascal16 GetOutlineTextMetrics(word word ptr) GetOutlineTextMetrics16
309 pascal   GetGlyphOutline(word word word ptr long ptr ptr) GetGlyphOutline16
310 pascal16 CreateScalableFontResource(word str str str) CreateScalableFontResource16
311 pascal GetFontData(word long long ptr long) GetFontData16
312 stub ConvertOutLineFontFile
313 pascal16 GetRasterizerCaps(ptr word) GetRasterizerCaps16
314 stub EngineExtTextOut
315 pascal EngineRealizeFontExt(long long long long) EngineRealizeFontExt16
316 stub EngineGetCharWidthStr
317 stub EngineGetGlyphBmpExt
330 pascal16 EnumFontFamilies(word str segptr long) THUNK_EnumFontFamilies16
332 pascal16 GetKerningPairs(word word ptr) GetKerningPairs16
345 pascal16 GetTextAlign(word) GetTextAlign16
346 pascal16 SetTextAlign(word word) SetTextAlign16
348 pascal16 Chord(word s_word s_word s_word s_word s_word s_word
                   s_word s_word) Chord16
349 pascal SetMapperFlags(word long) SetMapperFlags16
350 pascal16 GetCharWidth(word word word ptr) GetCharWidth16
351 pascal16 ExtTextOut(word s_word s_word word ptr str word ptr) ExtTextOut16
352 stub GetPhysicalFontHandle
353 stub GetAspectRatioFilter
354 stub ShrinkGDIHeap
355 stub FTrapping0
360 pascal16 CreatePalette(ptr) CreatePalette16
361 pascal16 GDISelectPalette(word word word) GDISelectPalette16
362 pascal16 GDIRealizePalette(word) GDIRealizePalette16
363 pascal16 GetPaletteEntries(word word word ptr) GetPaletteEntries16
364 pascal16 SetPaletteEntries(word word word ptr) SetPaletteEntries16
365 pascal16 RealizeDefaultPalette(word) RealizeDefaultPalette16
366 pascal16 UpdateColors(word) UpdateColors16
367 pascal16 AnimatePalette(word word word ptr) AnimatePalette16
368 pascal16 ResizePalette(word word) ResizePalette16
370 pascal16 GetNearestPaletteIndex(word long) GetNearestPaletteIndex16
372 pascal16 ExtFloodFill(word s_word s_word long word) ExtFloodFill16
373 pascal16 SetSystemPaletteUse(word word) SetSystemPaletteUse16
374 pascal16 GetSystemPaletteUse(word) GetSystemPaletteUse16
375 pascal16 GetSystemPaletteEntries(word word word ptr) GetSystemPaletteEntries16
376 pascal16 ResetDC(word ptr) ResetDC16
377 pascal16 StartDoc(word ptr) StartDoc16
378 pascal16 EndDoc(word) EndDoc16
379 pascal16 StartPage(word) StartPage16
380 pascal16 EndPage(word) EndPage16
381 pascal16 SetAbortProc(word segptr) SetAbortProc16
382 pascal16 AbortDoc(word) AbortDoc16
400 pascal16 FastWindowFrame(word ptr s_word s_word long) FastWindowFrame16
401 stub GDIMOVEBITMAP
403 stub GDIINIT2
404 stub GetTTGlyphIndexMap
405 pascal16 FinalGdiInit(word) FinalGdiInit16
407 pascal16 CreateUserBitmap(word word word word ptr) CreateUserBitmap16
409 pascal16 CreateUserDiscardableBitmap(word word word) CreateUserDiscardableBitmap16
410 pascal16 IsValidMetaFile (word) IsValidMetaFile16
411 pascal16 GetCurLogFont(word) GetCurLogFont16
412 pascal16 IsDCCurrentPalette(word) IsDCCurrentPalette16
439 pascal16 StretchDIBits (word s_word s_word s_word s_word s_word s_word
                            s_word s_word ptr ptr word long) StretchDIBits16
440 pascal16 SetDIBits(word word word word ptr ptr word) SetDIBits16
441 pascal16 GetDIBits(word word word word ptr ptr word) GetDIBits16
442 pascal16 CreateDIBitmap(word ptr long ptr ptr word) CreateDIBitmap16
443 pascal16 SetDIBitsToDevice(word s_word s_word s_word s_word s_word s_word
                               word word ptr ptr word) SetDIBitsToDevice16
444 pascal16 CreateRoundRectRgn(s_word s_word s_word s_word s_word s_word)
             CreateRoundRectRgn16
445 pascal16 CreateDIBPatternBrush(word word) CreateDIBPatternBrush16
449 stub DEVICECOLORMATCH
450 pascal16 PolyPolygon(word ptr ptr word) PolyPolygon16
451 pascal16 CreatePolyPolygonRgn(ptr ptr word word) CreatePolyPolygonRgn16
452 pascal   GdiSeeGdiDo(word word word word) GdiSeeGdiDo16
460 stub GDITASKTERMINATION
461 pascal16 SetObjectOwner(word word) SetObjectOwner16
462 pascal16 IsGDIObject(word) IsGDIObject16
463 pascal16 MakeObjectPrivate(word word) MakeObjectPrivate16
464 stub FIXUPBOGUSPUBLISHERMETAFILE
465 pascal16 RectVisible(word ptr) RectVisible16 # RECTVISIBLE_EHH ??
466 pascal16 RectInRegion(word ptr) RectInRegion16 # RECTINREGION_EHH ??
467 stub UNICODETOANSI
468 pascal16 GetBitmapDimensionEx(word ptr) GetBitmapDimensionEx16
469 pascal16 GetBrushOrgEx(word ptr) GetBrushOrgEx16
470 pascal16 GetCurrentPositionEx(word ptr) GetCurrentPositionEx16
471 pascal16 GetTextExtentPoint(word ptr s_word ptr) GetTextExtentPoint16
472 pascal16 GetViewportExtEx(word ptr) GetViewportExtEx16
473 pascal16 GetViewportOrgEx(word ptr) GetViewportOrgEx16
474 pascal16 GetWindowExtEx(word ptr) GetWindowExtEx16
475 pascal16 GetWindowOrgEx(word ptr) GetWindowOrgEx16
476 pascal16 OffsetViewportOrgEx(word s_word s_word ptr) OffsetViewportOrgEx16
477 pascal16 OffsetWindowOrgEx(word s_word s_word ptr) OffsetWindowOrgEx16
478 pascal16 SetBitmapDimensionEx(word s_word s_word ptr) SetBitmapDimensionEx16
479 pascal16 SetViewportExtEx(word s_word s_word ptr) SetViewportExtEx16
480 pascal16 SetViewportOrgEx(word s_word s_word ptr) SetViewportOrgEx16
481 pascal16 SetWindowExtEx(word s_word s_word ptr) SetWindowExtEx16
482 pascal16 SetWindowOrgEx(word s_word s_word ptr) SetWindowOrgEx16
483 pascal16 MoveToEx(word s_word s_word ptr) MoveToEx16
484 pascal16 ScaleViewportExtEx(word s_word s_word s_word s_word ptr)
             ScaleViewportExtEx16
485 pascal16 ScaleWindowExtEx(word s_word s_word s_word s_word ptr)
             ScaleWindowExtEx16
486 pascal16 GetAspectRatioFilterEx(word ptr) GetAspectRatioFilterEx16
489 pascal16 CreateDIBSection(word ptr word ptr long long) CreateDIBSection16
490 stub CloseEnhMetafile
#490 stub POLYLINEWOW # conflicts with CloseEnhMetaFile !!
491 stub CopyEnhMetafile
492 stub CreateEnhMetafile
493 stub DeleteEnhMetafile
495 stub GDIComment
496 stub GetEnhMetafile
497 stub GetEnhMetafileBits
498 stub GetEnhMetafileDescription
499 stub GetEnhMetafileHeader
501 stub GetEnhMetafilePaletteEntries
502 pascal16 PolyBezier(word ptr word) PolyBezier16
503 pascal16 PolyBezierTo(word ptr word) PolyBezierTo16
504 stub PlayEnhMetafileRecord
505 stub SetEnhMetafileBits
506 stub SetMetaRgn
508 pascal16 ExtSelectClipRgn(word word word) ExtSelectClipRgn16
511 pascal16 AbortPath(word) AbortPath16
512 pascal16 BeginPath(word) BeginPath16
513 pascal16 CloseFigure(word) CloseFigure16
514 pascal16 EndPath(word) EndPath16
515 pascal16 FillPath(word) FillPath16
516 pascal16 FlattenPath(word) FlattenPath16
517 pascal16 GetPath(word ptr ptr word) GetPath16
518 pascal16 PathToRegion(word) PathToRegion16
519 pascal16 SelectClipPath(word word) SelectClipPath16
520 pascal16 StrokeAndFillPath(word) StrokeAndFillPath16
521 pascal16 StrokePath(word) StrokePath16
522 pascal16 WidenPath(word) WidenPath16
523 stub ExtCreatePen
524 pascal16 GetArcDirection(word) GetArcDirection16
525 pascal16 SetArcDirection(word word) SetArcDirection16
526 stub GetMiterLimit
527 stub SetMiterLimit
528 stub GDIParametersInfo
529 pascal16 CreateHalftonePalette(word) CreateHalftonePalette16
# Hebrew version API's
530 pascal16 RawTextOut() RawTextOut16
531 pascal16 RawExtTextOut() RawExtTextOut16
532 pascal16 RawGetTextExtent(word str word) RawGetTextExtent16
536 pascal16 BiDiLayout() BiDiLayout16
538 pascal16 BiDiCreateTabString() BiDiCreateTabString16
540 pascal16 BiDiGlyphOut() BiDiGlyphOut16
543 pascal16 BiDiGetStringExtent() BiDiGetStringExtent16
555 pascal16 BiDiDeleteString() BiDiDeleteString16
556 pascal16 BiDiSetDefaults() BiDiSetDefaults16
558 pascal16 BiDiGetDefaults() BiDiGetDefaults16
560 pascal16 BiDiShape() BiDiShape16
561 pascal16 BiDiFontComplement() BiDiFontComplement16
564 pascal16 BiDiSetKashida() BiDiSetKashida16
565 pascal16 BiDiKExtTextOut() BiDiKExtTextOut16
566 pascal16 BiDiShapeEx() BiDiShapeEx16
569 pascal16 BiDiCreateStringEx() BiDiCreateStringEx16
571 pascal16 GetTextExtentRtoL() GetTextExtentRtoL16
572 pascal16 GetHDCCharSet() GetHDCCharSet16
573 pascal16 BiDiLayoutEx() BiDiLayoutEx16
602 pascal16 SetDIBColorTable(word word word ptr) SetDIBColorTable16
603 pascal16 GetDIBColorTable(word word word ptr) GetDIBColorTable16
604 pascal16 SetSolidBrush(word long) SetSolidBrush16
605 pascal16 SysDeleteObject(word) DeleteObject16    # ???
606 pascal16 SetMagicColors(word long word) SetMagicColors16
607 pascal GetRegionData(word long ptr) GetRegionData16
608 stub ExtCreateRegion
609 pascal16 GdiFreeResources(long) GdiFreeResources16
610 pascal16 GdiSignalProc32(long long long word) GdiSignalProc
611 stub GetRandomRgn
612 pascal16 GetTextCharset(word) GetTextCharset16
613 pascal16 EnumFontFamiliesEx(word ptr segptr long long) THUNK_EnumFontFamiliesEx16
614 stub AddLpkToGDI
615 stub GetCharacterPlacement
616 pascal GetFontLanguageInfo(word) GetFontLanguageInfo16
650 stub BuildInverseTableDIB
701 stub GDITHKCONNECTIONDATALS
702 stub FT_GDIFTHKTHKCONNECTIONDATA
703 stub FDTHKCONNECTIONDATASL
704 stub ICMTHKCONNECTIONDATASL
820 stub ICMCreateTransform
821 stub ICMDeleteTransform
822 stub ICMTranslateRGB
823 stub ICMTranslateRGBs
824 stub ICMCheckCOlorsInGamut
1000 pascal16 SetLayout(word long) SetLayout16
1001 stub GetLayout
