Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

645 lines
19 KiB

  1. TITLE GDI.ASM
  2. PAGE ,132
  3. ;
  4. ; WOW v1.0
  5. ;
  6. ; Copyright (c) 1991, Microsoft Corporation
  7. ;
  8. ; GDI.ASM
  9. ; Thunks in 16-bit space to route Windows API calls to WOW32
  10. ;
  11. ; History:
  12. ; 25-Jan-1991 Jeff Parsons (jeffpar)
  13. ; Created.
  14. ;
  15. ; Some applications require that USER have a heap. This means
  16. ; we must always have: LIBINIT equ 1
  17. LIBINIT equ 1
  18. .286p
  19. .xlist
  20. include wow.inc
  21. include wowgdi.inc
  22. include cmacros.inc
  23. include metacons.inc
  24. .list
  25. __acrtused = 0
  26. public __acrtused ;satisfy external C ref.
  27. externFP WOW16Call
  28. ifdef LIBINIT
  29. externFP LocalInit
  30. endif
  31. createSeg _TEXT,CODE,WORD,PUBLIC,CODE
  32. createSeg _DATA,DATA,WORD,PUBLIC,DATA,DGROUP
  33. defgrp DGROUP,DATA
  34. sBegin DATA
  35. Reserved db 16 dup (0) ;reserved for Windows //!!!!! what is this
  36. GDI_Identifier db 'GDI16 Data Segment'
  37. STOCK_END EQU STOCK_MAX+1
  38. Stocks dw STOCK_END dup (0) ; Stock Object Handles
  39. public FTRAPPING0
  40. FTRAPPING0 dw 0
  41. sEnd DATA
  42. ;
  43. ; GP fault exception handler table definition
  44. ;
  45. createSeg _GPFIX0,GPFIX0,WORD,PUBLIC,CODE,IGROUP ; GP fault trapping
  46. sBegin GPFIX0
  47. __GP label word
  48. public __GP
  49. sEnd GPFIX0
  50. sBegin CODE
  51. assumes CS,CODE
  52. assumes DS,DATA
  53. assumes ES,NOTHING
  54. externFP GetStockObject
  55. cProc GDI16,<PUBLIC,FAR,PASCAL,NODATA,ATOMIC>
  56. cBegin <nogen>
  57. IFDEF LIBINIT
  58. ; push params and call user initialisation code
  59. push di ;hModule
  60. ; if we have a local heap declared then initialize it
  61. jcxz no_heap
  62. push 0 ;segment
  63. push 0 ;start
  64. push cx ;length
  65. call LocalInit
  66. no_heap:
  67. ;
  68. ; I didn't put a call to LibMain here, because I didn't think we
  69. ; had anything to do.
  70. ;
  71. pop di
  72. mov ax,1
  73. ELSE
  74. mov ax,1
  75. ENDIF
  76. push ax
  77. push di
  78. push si
  79. xor si,si
  80. xor di,di
  81. my_loop:
  82. push si
  83. call GetStockObject
  84. mov ds:[di + offset Stocks],ax
  85. add di,2
  86. inc si
  87. cmp si,STOCK_MAX ; Stock Objects have an index range of 0 -> STOCK_MAX
  88. jna my_loop
  89. pop si
  90. pop di
  91. pop ax
  92. ret
  93. cEnd <nogen>
  94. assume DS:nothing
  95. cProc WEP,<PUBLIC,FAR,PASCAL,NODATA,NOWIN,ATOMIC>
  96. parmW iExit ;DLL exit code
  97. cBegin
  98. mov ax,1 ;always indicate success
  99. cEnd
  100. assume DS:nothing
  101. ;*--------------------------------------------------------------------------*
  102. ;*
  103. ;* CheckStockObject()
  104. ;*
  105. ;* Checks to see if the stock object is already fetched.
  106. ;*
  107. ;*--------------------------------------------------------------------------*
  108. cProc CheckStockObject, <PUBLIC, NEAR>
  109. parmW nIndex
  110. parmD lpReturn ; Callers Return Address
  111. ;parmW wBP ; Thunk saved BP
  112. ;parmW wDS ; Thunk saved DS
  113. cBegin
  114. mov bx,nIndex
  115. cmp bx,STOCK_MAX
  116. ja @f
  117. push ds
  118. mov ax,seg Stocks
  119. mov ds,ax
  120. shl bx,1
  121. mov ax,ds:[bx+offset Stocks]
  122. pop ds
  123. or ax,ax
  124. jz @f
  125. pop bp
  126. add sp,2 ; skip thunk IP
  127. ; mov sp,bp
  128. ; pop bp
  129. ; lea sp,-2[bp]
  130. ; pop ds
  131. ; pop bp
  132. ; dec bp
  133. retf 2 ; 2 bytes to pop
  134. @@:
  135. mov sp,bp ; Do cEnd without Ret count (leave parameters there)
  136. pop bp
  137. ret
  138. cEnd <nogen>
  139. externFP GlobalHandle
  140. cProc IGetMetafileBits, <PUBLIC, FAR>
  141. parmW hmf
  142. cBegin
  143. ; return (GlobalHandle(hMF) & 0xffff) ? hMF : FALSE;
  144. push hmf
  145. call GlobalHandle
  146. cmp ax, 0
  147. je @f
  148. mov ax, hmf
  149. @@:
  150. cEnd
  151. cProc ISetMetafileBits, <PUBLIC, FAR>
  152. parmW hmf
  153. cBegin
  154. ; return (hBits)
  155. mov ax, hmf
  156. cEnd
  157. externFP GlobalReAlloc
  158. cProc ISetMetafileBitsBetter, <PUBLIC, FAR>
  159. parmW hmf
  160. cBegin
  161. ; return (GlobalReAlloc(hBits, 0L, GMEM_MODIFY | GMEM_SHAREALL));
  162. push hmf
  163. push 0
  164. push 0
  165. push 2080h ;; GMEM_MODIFY or GMEM_SHAREALL
  166. call GlobalReAlloc
  167. cEnd
  168. GDIThunk CLOSEMETAFILE
  169. GDIThunk COPYMETAFILE
  170. GDIThunk CREATEMETAFILE
  171. GDIThunk DELETEMETAFILE
  172. GDIThunk GETMETAFILE
  173. ; GDIThunk GETMETAFILEBITS
  174. GDIThunk ENUMMETAFILE
  175. DGDIThunk ISVALIDMETAFILE, 0
  176. GDIThunk PLAYMETAFILE
  177. GDIThunk PLAYMETAFILERECORD
  178. ; GDIThunk SETMETAFILEBITS
  179. FUN_WOWADDFONTRESOURCE EQU FUN_ADDFONTRESOURCE
  180. DGDIThunk WOWADDFONTRESOURCE %(size ADDFONTRESOURCE16)
  181. GDIThunk ANIMATEPALETTE
  182. GDIThunk ARC
  183. GDIThunk BITBLT
  184. ; DGDIThunk BRUTE
  185. GDIThunk CHORD
  186. DGDIThunk CLOSEJOB
  187. GDIThunk COMBINERGN
  188. GDIThunk COMPATIBLEBITMAP,6
  189. DGDIThunk COPY,10
  190. GDIThunk CREATEBITMAP
  191. GDIThunk CREATEBITMAPINDIRECT
  192. GDIThunk CREATEBRUSHINDIRECT
  193. GDIThunk CREATECOMPATIBLEBITMAP
  194. GDIThunk CREATECOMPATIBLEDC
  195. GDIThunk CREATEDC
  196. GDIThunk CREATEDIBITMAP
  197. FUN_WOWCREATEDIBPATTERNBRUSH EQU FUN_CREATEDIBPATTERNBRUSH
  198. DGDIThunk WOWCREATEDIBPATTERNBRUSH, %(size CREATEDIBPATTERNBRUSH16)
  199. GDIThunk CREATEDISCARDABLEBITMAP
  200. DGDIThunk CREATEELLIPTICRGN
  201. GDIThunk CREATEELLIPTICRGNINDIRECT
  202. GDIThunk CREATEFONT
  203. GDIThunk CREATEFONTINDIRECT
  204. GDIThunk CREATEHATCHBRUSH
  205. GDIThunk CREATEIC
  206. GDIThunk CREATEPALETTE
  207. GDIThunk CREATEPATTERNBRUSH
  208. GDIThunk CREATEPEN
  209. GDIThunk CREATEPENINDIRECT
  210. GDIThunk CREATEPOLYGONRGN
  211. GDIThunk CREATEPOLYPOLYGONRGN
  212. ;;; DGDIThunk CREATEPQ,2
  213. GDIThunk CREATEREALBITMAP,14
  214. GDIThunk CREATEREALBITMAPINDIRECT,6
  215. DGDIThunk CREATERECTRGN
  216. GDIThunk CREATERECTRGNINDIRECT
  217. DGDIThunk CREATEROUNDRECTRGN
  218. DGDIThunk CREATESOLIDBRUSH
  219. DGDIThunk CREATEUSERBITMAP
  220. DGDIThunk CREATEUSERDISCARDABLEBITMAP,6
  221. DGDIThunk DEATH,2
  222. GDIThunk DELETEDC
  223. DGDIThunk DELETEJOB,4
  224. GDIThunk DELETEOBJECT
  225. ;;; DGDIThunk DELETEPQ,2
  226. DGDIThunk DEVICECOLORMATCH,8
  227. GDIThunk DEVICEMODE
  228. DGDIThunk DMBITBLT
  229. DGDIThunk DMCOLORINFO,12
  230. DGDIThunk DMENUMDFONTS,16
  231. DGDIThunk DMENUMOBJ,14
  232. DGDIThunk DMOUTPUT,28
  233. DGDIThunk DMPIXEL,16
  234. DGDIThunk DMREALIZEOBJECT,18
  235. DGDIThunk DMSCANLR,14
  236. DGDIThunk DMSTRBLT,30
  237. DGDIThunk DMTRANSPOSE,10
  238. GDIThunk DPTOLP
  239. GDIThunk DPXLATE,8
  240. GDIThunk ELLIPSE
  241. DGDIThunk ENDSPOOLPAGE,2
  242. GDIThunk ENUMCALLBACK,14
  243. GDIThunk ENUMFONTS
  244. GDIThunk ENUMOBJECTS
  245. GDIThunk EQUALRGN
  246. GDIThunk ESCAPE
  247. GDIThunk EXCLUDECLIPRECT
  248. DGDIThunk EXCLUDEVISRECT,10
  249. GDIThunk EXTDEVICEMODE
  250. GDIThunk EXTFLOODFILL
  251. ;;; DGDIThunk EXTRACTPQ,2
  252. GDIThunk EXTTEXTOUT
  253. DGDIThunk FASTWINDOWFRAME,14
  254. GDIThunk FILLRGN
  255. DGDIThunk FINALGDIINIT,2
  256. GDIThunk FLOODFILL
  257. GDIThunk FRAMERGN
  258. DGDIThunk GDIINIT2,4
  259. DGDIThunk GDIMOVEBITMAP,2
  260. DGDIThunk GDIREALIZEPALETTE,2
  261. DGDIThunk GDISELECTPALETTE,6
  262. GDIThunk GETASPECTRATIOFILTER
  263. GDIThunk GETBITMAPBITS
  264. GDIThunk GETBITMAPDIMENSION
  265. DGDIThunk GETBKCOLOR
  266. DGDIThunk GETBKMODE
  267. DGDIThunk GETBRUSHORG
  268. GDIThunk GETCHARWIDTH
  269. GDIThunk GETCLIPBOX
  270. DGDIThunk GETCLIPRGN
  271. DGDIThunk GETCURLOGFONT,2
  272. GDIThunk GETCURRENTOBJECT
  273. DGDIThunk GETCURRENTPOSITION
  274. DGDIThunk GETDCORG
  275. DGDIThunk GETDCSTATE,2
  276. GDIThunk GETDEVICECAPS
  277. GDIThunk GETDIBITS
  278. GDIThunk GETENVIRONMENT
  279. DGDIThunk GETMAPMODE
  280. GDIThunk GETNEARESTCOLOR
  281. GDIThunk GETNEARESTPALETTEINDEX
  282. GDIThunk GETOBJECT
  283. GDIThunk GETPALETTEENTRIES
  284. DGDIThunk GETPHYSICALFONTHANDLE,2
  285. GDIThunk GETPIXEL
  286. DGDIThunk GETPOLYFILLMODE
  287. DGDIThunk GETRELABS
  288. DGDIThunk GETREGIONDATA
  289. GDIThunk GETRGNBOX
  290. DGDIThunk GETROP2
  291. DGDIThunk GETSPOOLJOB,6
  292. PGDIThunk GETSTOCKOBJECT,CheckStockObject
  293. DGDIThunk GETSTRETCHBLTMODE
  294. GDIThunk GETSYSTEMPALETTEENTRIES
  295. GDIThunk GETSYSTEMPALETTEUSE
  296. DGDIThunk GETTEXTALIGN
  297. GDIThunk GETTEXTCHARACTEREXTRA
  298. DGDIThunk GETTEXTCOLOR
  299. GDIThunk GETTEXTEXTENT
  300. GDIThunk GETTEXTFACE
  301. GDIThunk GETTEXTMETRICS
  302. DGDIThunk GETVIEWPORTEXT
  303. DGDIThunk GETVIEWPORTORG
  304. DGDIThunk GETWINDOWEXT
  305. DGDIThunk GETWINDOWORG
  306. GDIThunk GSV,2
  307. DGDIThunk INQUIREVISRGN
  308. ;;; DGDIThunk INSERTPQ,6
  309. GDIThunk INTERNALCREATEDC,16
  310. GDIThunk INTERSECTCLIPRECT
  311. DGDIThunk INTERSECTVISRECT,10
  312. GDIThunk INVERTRGN
  313. DGDIThunk ISDCCURRENTPALETTE,2
  314. DGDIThunk ISDCDIRTY,6
  315. GDIThunk LINEDDA
  316. GDIThunk LINETO
  317. GDIThunk LPTODP
  318. GDIThunk LVBUNION,10
  319. GDIThunk MFDRAWTEXT,14
  320. ;;; DGDIThunk MINPQ,2
  321. GDIThunk MOVETO
  322. ; DGDIThunk MULDIV ; thunk locally
  323. GDIThunk OFFSETCLIPRGN
  324. GDIThunk OFFSETORG,6
  325. GDIThunk OFFSETRGN
  326. GDIThunk OFFSETVIEWPORTORG
  327. DGDIThunk OFFSETVISRGN,6
  328. GDIThunk OFFSETWINDOWORG
  329. DGDIThunk OPENJOB,10
  330. GDIThunk PAINTRGN
  331. GDIThunk PATBLT
  332. GDIThunk PIE
  333. GDIThunk PIXTOLINE,16
  334. GDIThunk POLYGON
  335. GDIThunk POLYLINE
  336. GDIThunk POLYPOLYGON
  337. GDIThunk POLYPOLYLINEWOW ; New for ACAD guys.
  338. GDIThunk PTINREGION
  339. GDIThunk PTVISIBLE
  340. DGDIThunk QUERYJOB,4
  341. GDIThunk RCOS,4
  342. DGDIThunk REALIZEDEFAULTPALETTE,2
  343. GDIThunk RECTANGLE
  344. GDIThunk RECTINREGION
  345. GDIThunk RECTSTUFF,10
  346. GDIThunk RECTVISIBLE
  347. FUN_WOWREMOVEFONTRESOURCE EQU FUN_REMOVEFONTRESOURCE
  348. DGDIThunk WOWREMOVEFONTRESOURCE %(size REMOVEFONTRESOURCE16)
  349. GDIThunk RESIZEPALETTE
  350. GDIThunk RESTOREDC
  351. DGDIThunk RESTOREVISRGN,2
  352. DGDIThunk RESURRECTION,14
  353. GDIThunk ROUNDRECT
  354. GDIThunk RSIN,4
  355. GDIThunk SAVEDC
  356. DGDIThunk SAVEVISRGN,2
  357. GDIThunk SCALEEXT,10
  358. GDIThunk SCALEVIEWPORTEXT
  359. GDIThunk SCALEWINDOWEXT
  360. DGDIThunk SCANLR,12
  361. GDIThunk SELECTCLIPRGN
  362. GDIThunk SELECTOBJECT
  363. DGDIThunk SELECTVISRGN,4
  364. GDIThunk SETBITMAPBITS
  365. GDIThunk SETBITMAPDIMENSION
  366. GDIThunk SETBKCOLOR
  367. GDIThunk SETBKMODE
  368. GDIThunk SETBRUSHORG
  369. DGDIThunk SETDCORG,6
  370. DGDIThunk SETDCSTATE,4
  371. DGDIThunk SETDCSTATUS,8
  372. GDIThunk SETDIBITS
  373. GDIThunk SETDIBITSTODEVICE
  374. GDIThunk SETENVIRONMENT
  375. GDIThunk SETMAPMODE
  376. GDIThunk SETMAPPERFLAGS
  377. GDIThunk SETPALETTEENTRIES
  378. GDIThunk SETPIXEL
  379. GDIThunk SETPOLYFILLMODE
  380. GDIThunk SETRECTRGN
  381. DGDIThunk SETRELABS
  382. GDIThunk SETROP2
  383. GDIThunk SETSTRETCHBLTMODE
  384. GDIThunk SETSYSTEMPALETTEUSE
  385. GDIThunk SETTEXTALIGN
  386. GDIThunk SETTEXTCHARACTEREXTRA
  387. GDIThunk SETTEXTCOLOR
  388. GDIThunk SETTEXTJUSTIFICATION
  389. GDIThunk SETVIEWPORTEXT
  390. GDIThunk SETVIEWPORTORG
  391. GDIThunk SETWINDOWEXT
  392. GDIThunk SETWINDOWORG
  393. GDIThunk SETWINVIEWEXT,6
  394. DGDIThunk SHRINKGDIHEAP, 0
  395. ;;; DGDIThunk SIZEPQ,4
  396. DGDIThunk STARTSPOOLPAGE,2
  397. GDIThunk STRETCHBLT
  398. GDIThunk STRETCHDIBITS
  399. GDIThunk STUFFINREGION,6
  400. GDIThunk STUFFVISIBLE,6
  401. GDIThunk TEXTOUT
  402. GDIThunk UNREALIZEOBJECT
  403. GDIThunk UPDATECOLORS
  404. GDIThunk WORDSET,4
  405. DGDIThunk WRITEDIALOG,8
  406. DGDIThunk WRITESPOOL,8
  407. ; New Win 3.1 thunks
  408. DGDIThunk BITMAPBITS,10 ;Internal
  409. DGDIThunk SETDCHOOK,10 ;Internal
  410. DGDIThunk GETDCHOOK,6 ;Internal
  411. DGDIThunk SETHOOKFLAGS,4 ;Internal
  412. DGDIThunk SETBOUNDSRECT
  413. DGDIThunk GETBOUNDSRECT
  414. DGDIThunk SELECTBITMAP,4 ;Internal
  415. ; GDIThunk SETMETAFILEBITSBETTER ;New for 3.1
  416. DGDIThunk DMEXTTEXTOUT,40
  417. DGDIThunk DMGETCHARWIDTH,24
  418. DGDIThunk DMSTRETCHBLT,40
  419. DGDIThunk DMDIBBITS,26
  420. DGDIThunk DMSTRETCHDIBITS,50
  421. DGDIThunk DMSETDIBTODEV,32
  422. DGDIThunk DELETESPOOLPAGE,2 ; new for 3.1
  423. DGDIThunk SPOOLFILE ; new for 3.1
  424. DGDIThunk ENGINEENUMERATEFONT,12 ;Internal
  425. DGDIThunk ENGINEDELETEFONT,4 ;Internal
  426. DGDIThunk ENGINEREALIZEFONT,12 ;Internal
  427. DGDIThunk ENGINEGETCHARWIDTH,12 ;Internal
  428. DGDIThunk ENGINESETFONTCONTEXT,6 ;Internal
  429. DGDIThunk ENGINEGETGLYPHBMP,22 ;Internal
  430. DGDIThunk ENGINEMAKEFONTDIR,10 ;Internal
  431. GDIThunk GETCHARABCWIDTHS
  432. GDIThunk GETOUTLINETEXTMETRICS
  433. GDIThunk GETGLYPHOUTLINE
  434. GDIThunk CREATESCALABLEFONTRESOURCE
  435. GDIThunk GETFONTDATA
  436. DGDIThunk CONVERTOUTLINEFONTFILE,12 ;internal
  437. DGDIThunk GETRASTERIZERCAPS
  438. DGDIThunk ENGINEEXTTEXTOUT,42 ;internal
  439. GDIThunk ENUMFONTFAMILIES
  440. GDIThunk GETKERNINGPAIRS
  441. GDIThunk RESETDC
  442. GDIThunk STARTDOC
  443. GDIThunk ENDDOC
  444. GDIThunk STARTPAGE
  445. GDIThunk ENDPAGE
  446. GDIThunk SETABORTPROC
  447. GDIThunk ABORTDOC
  448. DGDIThunk GDISEEGDIDO,8 ;Internal
  449. DGDIThunk GDITASKTERMINATION,2 ;Internal
  450. DGDIThunk SETOBJECTOWNER,4 ;Internal
  451. DGDIThunk ISGDIOBJECT
  452. DGDIThunk MAKEOBJECTPRIVATE,4 ;Internal
  453. DGDIThunk FIXUPBOGUSPUBLISHERMETAFILE,6 ;Internal
  454. DGDIThunk RECTVISIBLE_EHH,6
  455. DGDIThunk RECTINREGION_EHH,6
  456. DGDIThunk UNICODETOANSI,8 ;Internal
  457. GDIThunk GETBITMAPDIMENSIONEX
  458. DGDIThunk GETBRUSHORGEX
  459. DGDIThunk GETCURRENTPOSITIONEX
  460. GDIThunk GETTEXTEXTENTPOINT
  461. DGDIThunk GETVIEWPORTEXTEX
  462. DGDIThunk GETVIEWPORTORGEX
  463. DGDIThunk GETWINDOWEXTEX
  464. DGDIThunk GETWINDOWORGEX
  465. GDIThunk OFFSETVIEWPORTORGEX
  466. GDIThunk OFFSETWINDOWORGEX
  467. GDIThunk SETBITMAPDIMENSIONEX
  468. GDIThunk SETVIEWPORTEXTEX
  469. GDIThunk SETVIEWPORTORGEX
  470. GDIThunk SETWINDOWEXTEX
  471. GDIThunk SETWINDOWORGEX
  472. GDIThunk MOVETOEX
  473. GDIThunk SCALEVIEWPORTEXTEX
  474. GDIThunk SCALEWINDOWEXTEX
  475. GDIThunk GETASPECTRATIOFILTEREX
  476. DGDITHUNK CREATEDIBSECTION ; new for chicago
  477. DGDITHUNK GETDIBCOLORTABLE ; new for chicago
  478. DGDITHUNK SETDIBCOLORTABLE ; new for chicago
  479. ;
  480. ; New for NT 5.0 Win95 compatibility
  481. ;
  482. DGDIThunk ABORTPATH
  483. DGDIThunk ABORTPRINTER
  484. DGDIThunk ADDLPKTOGDI
  485. DGDIThunk BEGINPATH
  486. DGDIThunk BUILDINVERSETABLEDIB
  487. DGDIThunk CLOSEENHMETAFILE
  488. DGDIThunk CLOSEFIGURE
  489. DGDIThunk CLOSEPRINTER
  490. DGDIThunk COPYENHMETAFILE
  491. DGDIThunk CREATEENHMETAFILE
  492. DGDIThunk CREATEHALFTONEPALETTE
  493. DGDIThunk DELETEENHMETAFILE
  494. DGDIThunk DRVGETPRINTERDATA
  495. DGDIThunk DRVSETPRINTERDATA
  496. DGDIThunk ENDDOCPRINTER
  497. DGDIThunk ENDPAGEPRINTER
  498. DGDIThunk ENDPATH
  499. DGDIThunk ENGINEGETCHARWIDTHEX
  500. DGDIThunk ENGINEGETCHARWIDTHSTR
  501. DGDIThunk ENGINEGETGLYPHBMPEXT
  502. DGDIThunk ENGINEREALIZEFONTEXT
  503. DGDIThunk ENUMFONTFAMILIESEX
  504. DGDIThunk EXTCREATEREGION
  505. DGDIThunk EXTCREATEPEN
  506. DGDIThunk EXTSELECTCLIPRGN
  507. DGDIThunk FILLPATH
  508. DGDIThunk FLATTENPATH
  509. DGDIThunk GDICOMMENT
  510. DGDIThunk GDIPARAMETERSINFO
  511. DGDIThunk GDISIGNALPROC32
  512. DGDIThunk GETARCDIRECTION
  513. DGDIThunk GETCHARACTERPLACEMENT
  514. DGDIThunk GETENHMETAFILE
  515. DGDIThunk GETENHMETAFILEBITS
  516. DGDIThunk GETENHMETAFILEDESCRIPTION
  517. DGDIThunk GETENHMETAFILEHEADER
  518. DGDIThunk GETENHMETAFILEPALETTEENTRIES
  519. DGDIThunk GETFONTLANGUAGEINFO
  520. DGDIThunk GETMITERLIMIT
  521. DGDIThunk GETPATH
  522. DGDIThunk GETRANDOMRGN
  523. DGDIThunk GETREALDRIVERINFO
  524. DGDIThunk GETTEXTCHARSET
  525. DGDIThunk GETTEXTEXTENTEX
  526. DGDIThunk GETTTGLYPHINDEXMAP
  527. DGDIThunk ICMCHECKCOLORSINGAMUT
  528. DGDIThunk ICMCREATETRANSFORM
  529. DGDIThunk ICMDELETETRANSFORM
  530. DGDIThunk ICMTRANSLATERGB
  531. DGDIThunk ICMTRANSLATERGBS
  532. DGDIThunk OPENPRINTERA
  533. DGDIThunk PATHTOREGION
  534. DGDIThunk PLAYENHMETAFILERECORD
  535. DGDIThunk POLYBEZIER
  536. DGDIThunk POLYBEZIERTO
  537. DGDIThunk SELECTCLIPPATH
  538. DGDIThunk SETARCDIRECTION
  539. DGDIThunk SETENHMETAFILEBITS
  540. DGDIThunk SETMAGICCOLORS
  541. DGDIThunk SETMETARGN
  542. DGDIThunk SETMITERLIMIT
  543. DGDIThunk SETSOLIDBRUSH
  544. DGDIThunk STARTDOCPRINTERA
  545. DGDIThunk STARTPAGEPRINTER
  546. DGDIThunk STROKEANDFILLPATH
  547. DGDIThunk STROKEPATH
  548. DGDIThunk SYSDELETEOBJECT
  549. DGDIThunk WIDENPATH
  550. DGDIThunk WRITEPRINTER
  551. ;
  552. ; Queryabort
  553. ;
  554. cProc QUERYABORT,<PUBLIC,FAR,PASCAL,NODATA,WIN>
  555. parmw hdc
  556. parmw res
  557. cBegin
  558. ; Not Supported
  559. mov ax,1
  560. cEnd
  561. ifdef FE_SB
  562. FUN_IGETFONTASSOCSTATUS EQU FUN_GETFONTASSOCSTATUS
  563. DGDIThunk IGETFONTASSOCSTATUS %(size GETFONTASSOCSTATUS16)
  564. endif ;FE_SB
  565. cProc GdiFreeResources,<PUBLIC,FAR,PASCAL,NODATA,WIN>
  566. ParmD cbBaseline
  567. cBegin
  568. mov ax,90 ; % free
  569. cEnd
  570. sEnd CODE
  571. end GDI16