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.

619 lines
18 KiB

  1. ;/* *************************************************************************
  2. ;** INTEL Corporation Proprietary Information
  3. ;**
  4. ;** This listing is supplied under the terms of a license
  5. ;** agreement with INTEL Corporation and may not be copied
  6. ;** nor disclosed except in accordance with the terms of
  7. ;** that agreement.
  8. ;**
  9. ;** Copyright (c) 1995 Intel Corporation.
  10. ;** All Rights Reserved.
  11. ;**
  12. ;** *************************************************************************
  13. ;*/
  14. ;////////////////////////////////////////////////////////////////////////////
  15. ;//
  16. ;// $Header: S:\h26x\src\dec\locals.inv 1.1 27 Dec 1995 14:36:24 RMCKENZX $
  17. ;// $Log: S:\h26x\src\dec\locals.inv $
  18. ;//
  19. ;// Rev 1.1 27 Dec 1995 14:36:24 RMCKENZX
  20. ;// Added copyright notice
  21. ;//
  22. ;////////////////////////////////////////////////////////////////////////////
  23. include memmodel.inc
  24. IFDEF WIN32
  25. LDal macro address
  26. mov al,BYTE PTR address[esp]
  27. endm
  28. LDbl macro address
  29. mov bl,BYTE PTR address[esp]
  30. endm
  31. LDcl macro address
  32. mov cl,BYTE PTR address[esp]
  33. endm
  34. LDdl macro address
  35. mov dl,BYTE PTR address[esp]
  36. endm
  37. LDah macro address
  38. mov ah,BYTE PTR address[esp]
  39. endm
  40. LDbh macro address
  41. mov bh,BYTE PTR address[esp]
  42. endm
  43. LDch macro address
  44. mov ch,BYTE PTR address[esp]
  45. endm
  46. LDdh macro address
  47. mov dh,BYTE PTR address[esp]
  48. endm
  49. Leax macro address
  50. mov eax,DWORD PTR address[esp]
  51. endm
  52. Lebx macro address
  53. mov ebx,DWORD PTR address[esp]
  54. endm
  55. Lecx macro address
  56. mov ecx,DWORD PTR address[esp]
  57. endm
  58. Ledx macro address
  59. mov edx,DWORD PTR address[esp]
  60. endm
  61. Lesi macro address
  62. mov esi,DWORD PTR address[esp]
  63. endm
  64. Ledi macro address
  65. mov edi,DWORD PTR address[esp]
  66. endm
  67. Lebp macro address
  68. mov ebp,DWORD PTR address[esp]
  69. endm
  70. LZeax macro address
  71. movzx eax,BYTE PTR address[esp]
  72. endm
  73. LZebx macro address
  74. movzx ebx,BYTE PTR address[esp]
  75. endm
  76. LZecx macro address
  77. movzx ecx,BYTE PTR address[esp]
  78. endm
  79. LZedx macro address
  80. movzx edx,BYTE PTR address[esp]
  81. endm
  82. LZesi macro address
  83. movzx esi,BYTE PTR address[esp]
  84. endm
  85. LZedi macro address
  86. movzx edi,BYTE PTR address[esp]
  87. endm
  88. LZebp macro address
  89. movzx ebp,BYTE PTR address[esp]
  90. endm
  91. STal macro address
  92. mov BYTE PTR address[esp],al
  93. endm
  94. STbl macro address
  95. mov BYTE PTR address[esp],bl
  96. endm
  97. STcl macro address
  98. mov BYTE PTR address[esp],cl
  99. endm
  100. STdl macro address
  101. mov BYTE PTR address[esp],dl
  102. endm
  103. STah macro address
  104. mov BYTE PTR address[esp],ah
  105. endm
  106. STbh macro address
  107. mov BYTE PTR address[esp],bh
  108. endm
  109. STch macro address
  110. mov BYTE PTR address[esp],ch
  111. endm
  112. STdh macro address
  113. mov BYTE PTR address[esp],dh
  114. endm
  115. Seax macro address
  116. mov DWORD PTR address[esp],eax
  117. endm
  118. Sebx macro address
  119. mov DWORD PTR address[esp],ebx
  120. endm
  121. Secx macro address
  122. mov DWORD PTR address[esp],ecx
  123. endm
  124. Sedx macro address
  125. mov DWORD PTR address[esp],edx
  126. endm
  127. Sesi macro address
  128. mov DWORD PTR address[esp],esi
  129. endm
  130. Sedi macro address
  131. mov DWORD PTR address[esp],edi
  132. endm
  133. Sebp macro address
  134. mov DWORD PTR address[esp],ebp
  135. endm
  136. ADDeax macro address
  137. add eax,DWORD PTR address[esp]
  138. endm
  139. ADDebx macro address
  140. add ebx,DWORD PTR address[esp]
  141. endm
  142. ADDecx macro address
  143. add ecx,DWORD PTR address[esp]
  144. endm
  145. ADDedx macro address
  146. add edx,DWORD PTR address[esp]
  147. endm
  148. ADDesi macro address
  149. add esi,DWORD PTR address[esp]
  150. endm
  151. ADDedi macro address
  152. add edi,DWORD PTR address[esp]
  153. endm
  154. ADDebp macro address
  155. add ebp,DWORD PTR address[esp]
  156. endm
  157. SUBeax macro address
  158. sub eax,DWORD PTR address[esp]
  159. endm
  160. SUBebx macro address
  161. sub ebx,DWORD PTR address[esp]
  162. endm
  163. SUBecx macro address
  164. sub ecx,DWORD PTR address[esp]
  165. endm
  166. SUBedx macro address
  167. sub edx,DWORD PTR address[esp]
  168. endm
  169. SUBesi macro address
  170. sub esi,DWORD PTR address[esp]
  171. endm
  172. SUBedi macro address
  173. sub edi,DWORD PTR address[esp]
  174. endm
  175. SUBebp macro address
  176. sub ebp,DWORD PTR address[esp]
  177. endm
  178. CMPeax macro address
  179. cmp eax,DWORD PTR address[esp]
  180. endm
  181. CMPebx macro address
  182. cmp ebx,DWORD PTR address[esp]
  183. endm
  184. CMPecx macro address
  185. cmp ecx,DWORD PTR address[esp]
  186. endm
  187. CMPedx macro address
  188. cmp edx,DWORD PTR address[esp]
  189. endm
  190. CMPesi macro address
  191. cmp esi,DWORD PTR address[esp]
  192. endm
  193. CMPedi macro address
  194. cmp edi,DWORD PTR address[esp]
  195. endm
  196. CMPebp macro address
  197. cmp ebp,DWORD PTR address[esp]
  198. endm
  199. ADDC2M macro address,constant
  200. add DWORD PTR address[esp],constant
  201. endm
  202. ELSE
  203. LDal macro address
  204. DB 0A0H ; opcode: move memory to accumulator (al)
  205. DD address ; source
  206. endm
  207. LDbl macro address
  208. DB 08AH ; opcode: move memory to register
  209. DB 01DH ; destination: bl
  210. DD address ; source
  211. endm
  212. LDcl macro address
  213. DB 08AH ; opcode: move memory to register
  214. DB 00DH ; destination: cl
  215. DD address ; source
  216. endm
  217. LDdl macro address
  218. DB 08AH ; opcode: move memory to register
  219. DB 015H ; destination: dl
  220. DD address ; source
  221. endm
  222. LDah macro address
  223. DB 08AH ; opcode: move memory to register
  224. DB 025H ; destination: ah
  225. DD address ; source
  226. endm
  227. LDbh macro address
  228. DB 08AH ; opcode: move memory to register
  229. DB 03DH ; destination: bh
  230. DD address ; source
  231. endm
  232. LDch macro address
  233. DB 08AH ; opcode: move memory to register
  234. DB 02DH ; destination: ch
  235. DD address ; source
  236. endm
  237. LDdh macro address
  238. DB 08AH ; opcode: move memory to register
  239. DB 035H ; destination: dh
  240. DD address ; source
  241. endm
  242. Leax macro address
  243. DB 0A1H ; opcode: move memory to accumulator (eax)
  244. DD address ; source
  245. endm
  246. Lebx macro address
  247. DB 08BH ; opcode: move memory to register
  248. DB 01DH ; destination: ebx
  249. DD address ; source
  250. endm
  251. Lecx macro address
  252. DB 08BH ; opcode: move memory to register
  253. DB 00DH ; destination: ecx
  254. DD address ; source
  255. endm
  256. Ledx macro address
  257. DB 08BH ; opcode: move memory to register
  258. DB 015H ; destination: edx
  259. DD address ; source
  260. endm
  261. Lesi macro address
  262. DB 08BH ; opcode: move memory to register
  263. DB 035H ; destination: esi
  264. DD address ; source
  265. endm
  266. Ledi macro address
  267. DB 08BH ; opcode: move memory to register
  268. DB 03DH ; destination: edi
  269. DD address ; source
  270. endm
  271. Lebp macro address
  272. DB 08BH ; opcode: move memory to register
  273. DB 02DH ; destination: ebp
  274. DD address ; source
  275. endm
  276. LZeax macro address
  277. DB 00FH ; opcode prefix
  278. DB 0B6H ; opcode: move memory to register
  279. DB 005H ; destination: eax
  280. DD address ; source
  281. endm
  282. LZebx macro address
  283. DB 00FH ; opcode prefix
  284. DB 0B6H ; opcode: move memory to register
  285. DB 01DH ; destination: ebx
  286. DD address ; source
  287. endm
  288. LZecx macro address
  289. DB 00FH ; opcode prefix
  290. DB 0B6H ; opcode: move memory to register
  291. DB 00DH ; destination: ecx
  292. DD address ; source
  293. endm
  294. LZedx macro address
  295. DB 00FH ; opcode prefix
  296. DB 0B6H ; opcode: move memory to register
  297. DB 015H ; destination: edx
  298. DD address ; source
  299. endm
  300. LZesi macro address
  301. DB 00FH ; opcode prefix
  302. DB 0B6H ; opcode: move memory to register
  303. DB 035H ; destination: esi
  304. DD address ; source
  305. endm
  306. LZedi macro address
  307. DB 00FH ; opcode prefix
  308. DB 0B6H ; opcode: move memory to register
  309. DB 03DH ; destination: edi
  310. DD address ; source
  311. endm
  312. LZebp macro address
  313. DB 00FH ; opcode prefix
  314. DB 0B6H ; opcode: move memory to register
  315. DB 02DH ; destination: ebp
  316. DD address ; source
  317. endm
  318. STal macro address
  319. DB 0A2H ; opcode: move accumulator (al) to memory
  320. DD address ; destination
  321. endm
  322. STbl macro address
  323. DB 088H ; opcode: move register to memory
  324. DB 01DH ; source: bl
  325. DD address ; destination
  326. endm
  327. STcl macro address
  328. DB 088H ; opcode: move register to memory
  329. DB 00DH ; source: cl
  330. DD address ; destination
  331. endm
  332. STdl macro address
  333. DB 088H ; opcode: move register to memory
  334. DB 015H ; source: dl
  335. DD address ; destination
  336. endm
  337. STah macro address
  338. DB 088H ; opcode: move register to memory
  339. DB 025H ; source: ah
  340. DD address ; destination
  341. endm
  342. STbh macro address
  343. DB 088H ; opcode: move register to memory
  344. DB 03DH ; source: bh
  345. DD address ; destination
  346. endm
  347. STch macro address
  348. DB 088H ; opcode: move register to memory
  349. DB 02DH ; source: ch
  350. DD address ; destination
  351. endm
  352. STdh macro address
  353. DB 088H ; opcode: move register to memory
  354. DB 035H ; source: dh
  355. DD address ; destination
  356. endm
  357. Seax macro address
  358. DB 0A3H ; opcode: move accumulator (eax) to memory
  359. DD address ; destination
  360. endm
  361. Sebx macro address
  362. DB 089H ; opcode: move register to memory
  363. DB 01DH ; source: ebx
  364. DD address ; destination
  365. endm
  366. Secx macro address
  367. DB 089H ; opcode: move register to memory
  368. DB 00DH ; source: ecx
  369. DD address ; destination
  370. endm
  371. Sedx macro address
  372. DB 089H ; opcode: move register to memory
  373. DB 015H ; source: edx
  374. DD address ; destination
  375. endm
  376. Sesi macro address
  377. DB 089H ; opcode: move register to memory
  378. DB 035H ; source: esi
  379. DD address ; destination
  380. endm
  381. Sedi macro address
  382. DB 089H ; opcode: move register to memory
  383. DB 03DH ; source: edi
  384. DD address ; destination
  385. endm
  386. Sebp macro address
  387. DB 089H ; opcode: move register to memory
  388. DB 02DH ; source: ebp
  389. DD address ; destination
  390. endm
  391. ADDeax macro address
  392. DB 003H ; opcode: add memory to register
  393. DB 005H ; destination: eax
  394. DD address ; source
  395. endm
  396. ADDebx macro address
  397. DB 003H ; opcode: add memory to register
  398. DB 01DH ; destination: ebx
  399. DD address ; source
  400. endm
  401. ADDecx macro address
  402. DB 003H ; opcode: add memory to register
  403. DB 00DH ; destination: ecx
  404. DD address ; source
  405. endm
  406. ADDedx macro address
  407. DB 003H ; opcode: add memory to register
  408. DB 015H ; destination: edx
  409. DD address ; source
  410. endm
  411. ADDesi macro address
  412. DB 003H ; opcode: add memory to register
  413. DB 035H ; destination: esi
  414. DD address ; source
  415. endm
  416. ADDedi macro address
  417. DB 003H ; opcode: add memory to register
  418. DB 03DH ; destination: edi
  419. DD address ; source
  420. endm
  421. ADDebp macro address
  422. DB 003H ; opcode: add memory to register
  423. DB 02DH ; destination: ebp
  424. DD address ; source
  425. endm
  426. SUBeax macro address
  427. DB 02BH ; opcode: subtract memory from register
  428. DB 005H ; source: eax
  429. DD address ; destination
  430. endm
  431. SUBebx macro address
  432. DB 02BH ; opcode: subtract memory from register
  433. DB 01DH ; destination: ebx
  434. DD address ; source
  435. endm
  436. SUBecx macro address
  437. DB 02BH ; opcode: subtract memory from register
  438. DB 00DH ; destination: ecx
  439. DD address ; source
  440. endm
  441. SUBedx macro address
  442. DB 02BH ; opcode: subtract memory from register
  443. DB 015H ; destination: edx
  444. DD address ; source
  445. endm
  446. SUBesi macro address
  447. DB 02BH ; opcode: subtract memory from register
  448. DB 035H ; destination: esi
  449. DD address ; source
  450. endm
  451. SUBedi macro address
  452. DB 02BH ; opcode: subtract memory from register
  453. DB 03DH ; destination: edi
  454. DD address ; source
  455. endm
  456. SUBebp macro address
  457. DB 02BH ; opcode: subtract memory from register
  458. DB 02DH ; destination: ebp
  459. DD address ; source
  460. endm
  461. CMPeax macro address
  462. DB 03BH ; opcode: compare register with memory
  463. DB 005H ; source: eax
  464. DD address ; source
  465. endm
  466. CMPebx macro address
  467. DB 03BH ; opcode: compare register with memory
  468. DB 01DH ; source: ebx
  469. DD address ; source
  470. endm
  471. CMPecx macro address
  472. DB 03BH ; opcode: compare register with memory
  473. DB 00DH ; source: ecx
  474. DD address ; source
  475. endm
  476. CMPedx macro address
  477. DB 03BH ; opcode: compare register with memory
  478. DB 015H ; source: edx
  479. DD address ; source
  480. endm
  481. CMPesi macro address
  482. DB 03BH ; opcode: compare register with memory
  483. DB 035H ; source: esi
  484. DD address ; source
  485. endm
  486. CMPedi macro address
  487. DB 03BH ; opcode: compare register with memory
  488. DB 03DH ; source: edi
  489. DD address ; source
  490. endm
  491. CMPebp macro address
  492. DB 03BH ; opcode: compare register with memory
  493. DB 02DH ; source: ebp
  494. DD address ; source
  495. endm
  496. ADDC2M macro address,constant
  497. add ds:DWORD PTR address,constant
  498. endm
  499. ENDIF