# $Id: gdi.spec,v 1.3 1993/07/04 04:04:21 root Exp root $
#
name	gdi
id	3
length	490

1   pascal SetBkColor(word long) SetBkColor(1 2)
2   pascal SetBkMode(word word) SetBkMode(1 2)
3   pascal SetMapMode(word word) SetMapMode(1 2)
4   pascal SetROP2(word word) SetROP2(1 2)
5   pascal SetRelAbs(word word) SetRelAbs(1 2)
6   pascal SetPolyFillMode(word word) SetPolyFillMode(1 2)
7   pascal SetStretchBltMode(word word) SetStretchBltMode(1 2)
8   pascal SetTextCharacterExtra(word s_word) SetTextCharacterExtra(1 2)
9   pascal SetTextColor(word long) SetTextColor(1 2)
10  pascal SetTextJustification(word s_word s_word) SetTextJustification(1 2 3)
11  pascal SetWindowOrg(word s_word s_word) SetWindowOrg(1 2 3)
12  pascal SetWindowExt(word s_word s_word) SetWindowExt(1 2 3)
13  pascal SetViewportOrg(word s_word s_word) SetViewportOrg(1 2 3)
14  pascal SetViewportExt(word s_word s_word) SetViewportExt(1 2 3)
15  pascal OffsetWindowOrg(word s_word s_word) OffsetWindowOrg(1 2 3)
16  pascal ScaleWindowExt(word s_word s_word s_word s_word)
	   ScaleWindowExt(1 2 3 4 5)
17  pascal OffsetViewportOrg(word s_word s_word) OffsetViewportOrg(1 2 3)
18  pascal ScaleViewportExt(word s_word s_word s_word s_word)
	   ScaleViewportExt(1 2 3 4 5)
19  pascal LineTo(word s_word s_word) LineTo(1 2 3)
20  pascal MoveTo(word s_word s_word) MoveTo(1 2 3)
21  pascal ExcludeClipRect(word s_word s_word s_word s_word)
	   ExcludeClipRect(1 2 3 4 5)
22  pascal IntersectClipRect(word s_word s_word s_word s_word)
	   IntersectClipRect(1 2 3 4 5)
23  pascal Arc(word s_word s_word s_word s_word s_word s_word s_word s_word)
	   Arc(1 2 3 4 5 6 7 8 9)
24  pascal Ellipse(word s_word s_word s_word s_word) Ellipse(1 2 3 4 5)
25  pascal FloodFill(word word word long) FloodFill(1 2 3 4)
26  pascal Pie(word s_word s_word s_word s_word s_word s_word s_word s_word)
	   Pie(1 2 3 4 5 6 7 8 9)
27  pascal Rectangle(word s_word s_word s_word s_word) Rectangle(1 2 3 4 5)
28  pascal RoundRect(word s_word s_word s_word s_word s_word s_word)
	   RoundRect(1 2 3 4 5 6 7)
29  pascal PatBlt(word s_word s_word s_word s_word long) PatBlt(1 2 3 4 5 6)
30  pascal SaveDC(word) SaveDC(1)
31  pascal SetPixel(word s_word s_word long) SetPixel(1 2 3 4)
32  pascal OffsetClipRgn(word s_word s_word) OffsetClipRgn(1 2 3)
33  pascal TextOut(word s_word s_word ptr word) TextOut(1 2 3 4 5)
34  pascal BitBlt( word s_word s_word s_word s_word word s_word s_word long)
	   BitBlt(1 2 3 4 5 6 7 8 9)
35  pascal StretchBlt( word s_word s_word s_word s_word word s_word s_word s_word s_word long)
           StretchBlt(1 2 3 4 5 6 7 8 9 10 11)
36  pascal Polygon (word ptr word) Polygon (1 2 3)
37  pascal Polyline (word ptr word) Polyline (1 2 3)
39  pascal RestoreDC(word s_word) RestoreDC(1 2)
40  pascal FillRgn(word word word) FillRgn(1 2 3)
43  pascal PaintRgn(word word) PaintRgn(1 2)
44  pascal SelectClipRgn(word word) SelectClipRgn(1 2)
45  pascal SelectObject(word word) SelectObject(1 2)
47  pascal CombineRgn(word word word word) CombineRgn(1 2 3 4)
48  pascal CreateBitmap(word word word word ptr) CreateBitmap(1 2 3 4 5)
49  pascal CreateBitmapIndirect(ptr) CreateBitmapIndirect(1)
50  pascal CreateBrushIndirect(ptr) CreateBrushIndirect(1)
51  pascal CreateCompatibleBitmap(word word word) CreateCompatibleBitmap(1 2 3)
52  pascal CreateCompatibleDC(word) CreateCompatibleDC(1)
53  pascal CreateDC(ptr ptr ptr ptr) CreateDC(1 2 3 4)
54  pascal CreateEllipticRgn(s_word s_word s_word s_word)
	   CreateEllipticRgn(1 2 3 4)
55  pascal CreateEllipticRgnIndirect(ptr) CreateEllipticRgnIndirect(1)
56  pascal CreateFont(s_word s_word s_word s_word s_word word word word 
	              word word word word word ptr)
	   CreateFont(1 2 3 4 5 6 7 8 9 10 11 12 13 14)
57  pascal CreateFontIndirect(ptr) CreateFontIndirect(1)
58  pascal CreateHatchBrush(word long) CreateHatchBrush(1 2)
60  pascal CreatePatternBrush(word) CreatePatternBrush(1)
61  pascal CreatePen(s_word s_word long) CreatePen(1 2 3)
62  pascal CreatePenIndirect(ptr) CreatePenIndirect(1)
63  pascal CreatePolygonRgn(ptr word word) CreatePolygonRgn(1 2 3)
64  pascal CreateRectRgn(s_word s_word s_word s_word) CreateRectRgn(1 2 3 4)
65  pascal CreateRectRgnIndirect(ptr) CreateRectRgnIndirect(1)
66  pascal CreateSolidBrush(long) CreateSolidBrush(1)
67  pascal DPtoLP(word ptr s_word) DPtoLP(1 2 3)
68  pascal DeleteDC(word) DeleteDC(1)
69  pascal DeleteObject(word) DeleteObject(1)
72  pascal EqualRgn(word word) EqualRgn(1 2)
73  pascal ExcludeVisRect(word s_word s_word s_word s_word)
	   ExcludeVisRect(1 2 3 4 5)
74  pascal GetBitmapBits(word long ptr) GetBitmapBits(1 2 3)
75  pascal GetBkColor(word) GetBkColor(1)
76  pascal GetBkMode(word) GetBkMode(1)
77  pascal GetClipBox(word ptr) GetClipBox(1 2)
78  pascal GetCurrentPosition(word) GetCurrentPosition(1)
79  pascal GetDCOrg(word) GetDCOrg(1)
80  pascal GetDeviceCaps(word s_word) GetDeviceCaps(1 2)
81  pascal GetMapMode(word) GetMapMode(1)
82  pascal GetObject(word word ptr) GetObject(1 2 3)
83  pascal GetPixel(word s_word s_word) GetPixel(1 2 3)
84  pascal GetPolyFillMode(word) GetPolyFillMode(1)
85  pascal GetROP2(word) GetROP2(1)
86  pascal GetRelAbs(word) GetRelAbs(1)
87  pascal GetStockObject(word) GetStockObject(1)
88  pascal GetStretchBltMode(word) GetStretchBltMode(1)
89  pascal GetTextCharacterExtra(word) GetTextCharacterExtra(1)
90  pascal GetTextColor(word) GetTextColor(1)
91  pascal GetTextExtent(word ptr s_word) GetTextExtent(1 2 3)
93  pascal GetTextMetrics(word ptr) GetTextMetrics(1 2)
94  pascal GetViewportExt(word) GetViewportExt(1)
95  pascal GetViewportOrg(word) GetViewportOrg(1)
96  pascal GetWindowExt(word) GetWindowExt(1)
97  pascal GetWindowOrg(word) GetWindowOrg(1)
98  pascal IntersectVisRect(word s_word s_word s_word s_word)
	   IntersectVisRect(1 2 3 4 5)
99  pascal LPtoDP(word ptr s_word) LPtoDP(1 2 3)
100 pascal LineDDA(s_word s_word s_word s_word ptr long)
	   LineDDA(1 2 3 4 5 6)
101 pascal OffsetRgn(word s_word s_word) OffsetRgn(1 2 3)
102 pascal OffsetVisRgn(word s_word s_word) OffsetVisRgn(1 2 3)
103 pascal PtVisible(word s_word s_word) PtVisible(1 2 3)
104 pascal RectVisibleOld(word ptr) RectVisible(1 2)
105 pascal SelectVisRgn(word word) SelectVisRgn(1 2)
106 pascal SetBitmapBits(word long ptr) SetBitmapBits(1 2 3)
117 pascal SetDCOrg(word s_word s_word) SetDCOrg(1 2 3)
128 pascal MulDiv(s_word s_word s_word) MulDiv(1 2 3)
129 pascal SaveVisRgn(word) SaveVisRgn(1)
130 pascal RestoreVisRgn(word) RestoreVisRgn(1)
131 pascal InquireVisRgn(word) InquireVisRgn(1)
134 pascal GetRgnBox(word ptr) GetRgnBox(1 2)
148 pascal SetBrushOrg(word s_word s_word) SetBrushOrg(1 2 3)
149 pascal GetBrushOrg(word) GetBrushOrg(1)
150 pascal UnrealizeObject(word) UnrealizeObject(1)
153 pascal CreateIC(ptr ptr ptr ptr) CreateIC(1 2 3 4)
154 pascal GetNearestColor(word long) GetNearestColor(1 2)
161 pascal PtInRegion(word s_word s_word) PtInRegion(1 2 3)
162 pascal GetBitmapDimension(word) GetBitmapDimension(1)
163 pascal SetBitmapDimension(word s_word s_word) SetBitmapDimension(1 2 3)
172 pascal SetRectRgn(word s_word s_word s_word s_word) SetRectRgn(1 2 3 4 5)
173 pascal GetClipRgn(word) GetClipRgn(1)
179 pascal GetDCState(word) GetDCState(1)
180 pascal SetDCState(word word) SetDCState(1 2)
181 pascal RectInRegionOld(word ptr) RectInRegion(1 2)
250 pascal Copy(ptr ptr word) Copy(1 2 3)
345 pascal GetTextAlign(word) GetTextAlign(1)
346 pascal SetTextAlign(word word) SetTextAlign(1 2)
348 pascal Chord(word s_word s_word s_word s_word s_word s_word s_word s_word)
	   Chord(1 2 3 4 5 6 7 8 9)
349 pascal SetMapperFlags(word word) SetMapperFlags(1 2)
350 pascal GetCharWidth(word word word ptr) GetCharWidth(1 2 3 4)
360 pascal CreatePalette(ptr) CreatePalette(1)
361 pascal GDISelectPalette(word word) GDISelectPalette(1 2)
362 pascal GDIRealizePalette(word) GDIRealizePalette(1)
363 pascal GetPaletteEntries(word word word ptr) GetPaletteEntries(1 2 3 4)
364 pascal SetPaletteEntries(word word word ptr) SetPaletteEntries(1 2 3 4)
365 pascal RealizeDefaultPalette(word) RealizeDefaultPalette(1)
370 pascal GetNearestPaletteIndex(word long) GetNearestPaletteIndex(1 2)
375 pascal GetSystemPaletteEntries(word word word ptr)
	   GetSystemPaletteEntries(1 2 3 4)
411 pascal GetCurLogFont(word) GetCurLogFont(1)
440 pascal SetDIBits(word word word word ptr ptr word) SetDIBits(1 2 3 4 5 6 7)
441 pascal GetDIBits(word word word word ptr ptr word) GetDIBits(1 2 3 4 5 6 7)
442 pascal CreateDIBitmap(word ptr long ptr ptr word)
	   CreateDIBitmap(1 2 3 4 5 6)
443 pascal SetDIBitsToDevice(word s_word s_word word word word word word word ptr ptr word)
	   SetDIBitsToDevice(1 2 3 4 5 6 7 8 9 10 11 12)
444 pascal CreateRoundRectRgn(s_word s_word s_word s_word s_word s_word)
	   CreateRoundRectRgn(1 2 3 4 5 6)
445 pascal CreateDIBPatternBrush(word word) CreateDIBPatternBrush(1 2)
451 pascal CreatePolyPolygonRgn(ptr ptr word word)
	   CreatePolyPolygonRgn(1 2 3 4)
465 pascal RectVisible(word ptr) RectVisible(1 2)
466 pascal RectInRegion(word ptr) RectInRegion(1 2)
468 pascal GetBitmapDimensionEx(word ptr) GetBitmapDimensionEx(1 2)
469 pascal GetBrushOrgEx(word ptr) GetBrushOrgEx(1 2)
470 pascal GetCurrentPositionEx(word ptr) GetCurrentPositionEx(1 2)
471 pascal GetTextExtentPoint(word ptr s_word ptr) GetTextExtentPoint(1 2 3 4)
472 pascal GetViewportExtEx(word ptr) GetViewportExtEx(1 2)
473 pascal GetViewportOrgEx(word ptr) GetViewportOrgEx(1 2)
474 pascal GetWindowExtEx(word ptr) GetWindowExtEx(1 2)
475 pascal GetWindowOrgEx(word ptr) GetWindowOrgEx(1 2)
476 pascal OffsetViewportOrgEx(word s_word s_word ptr)
	   OffsetViewportOrgEx(1 2 3 4)
477 pascal OffsetWindowOrgEx(word s_word s_word ptr) OffsetWindowOrgEx(1 2 3 4)
478 pascal SetBitmapDimensionEx(word s_word s_word ptr)
	   SetBitmapDimensionEx(1 2 3 4)
479 pascal SetViewportExtEx(word s_word s_word ptr) SetViewportExtEx(1 2 3 4)
480 pascal SetViewportOrgEx(word s_word s_word ptr) SetViewportOrgEx(1 2 3 4)
481 pascal SetWindowExtEx(word s_word s_word ptr) SetWindowExtEx(1 2 3 4)
482 pascal SetWindowOrgEx(word s_word s_word ptr) SetWindowOrgEx(1 2 3 4)
483 pascal MoveToEx(word s_word s_word ptr) MoveToEx(1 2 3 4)
484 pascal ScaleViewportExtEx(word s_word s_word s_word s_word ptr)
	   ScaleViewportExtEx(1 2 3 4 5 6)
485 pascal ScaleWindowExtEx(word s_word s_word s_word s_word ptr)
	   ScaleWindowExtEx(1 2 3 4 5 6)
