Source code of Windows XP (NT5)
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.

731 lines
21 KiB

  1. /*************************************************
  2. * abcw2.h *
  3. * *
  4. * Copyright (C) 1995-1999 Microsoft Inc. *
  5. * *
  6. *************************************************/
  7. extern CHAR SKLayoutS[NumsSK];
  8. extern CHAR SKLayout[NumsSK][48*2];
  9. extern CHAR PcKb[48*2],SdaKb[48*2];
  10. extern CHAR SPcKb[48*2],SSdaKb[48*2];
  11. extern LPIMEL lpImeL;
  12. extern IMEG sImeG ;
  13. #define WM_NEW_DEF_CODE 1993+0x400 //1993.4.19
  14. #define WM_NEW_DEF_RESTORE 1993+0x401 //1993.4.19
  15. HIMC ghIMC = 0;
  16. LPINPUTCONTEXT glpIMC;
  17. LPPRIVCONTEXT glpIMCP;
  18. int wait_flag , waitzl_flag; //waitzl 6
  19. int TypeOfOutMsg;
  20. int biaodian_len;
  21. BYTE I_U_Flag=0; //produce the "i, u" input
  22. struct INPUT_TISHI prompt[1];
  23. struct INPT_BF in={40,0,{0}};
  24. struct W_SLBL wp;
  25. struct ATTR msx_area[120];
  26. struct INDEX ndx;
  27. struct INDEX kzk_ndx;
  28. struct TBF FAR *cisu;
  29. struct PD_TAB pindu;
  30. struct FMT now={10,53,27};
  31. struct T_REM tmmr;
  32. int form[] ={10,/*9*/8,5,/*4*/4,3,2,2,1,1,1}; //form[0] not used
  33. BYTE spbx_tab[((87-15)*94+15)/16*16+16]={0};
  34. BYTE logging_stack[0x400]={0};
  35. WORD logging_stack_size=sizeof logging_stack;
  36. /*******************************************
  37. display result area DATA
  38. **********************************************/
  39. unsigned char space_char[]={0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20};
  40. BYTE out_svw[400];
  41. unsigned char group_counter[]="0.";
  42. /*********************************************
  43. input area DATA
  44. **********************************************/
  45. int input_cur;
  46. int new_no;
  47. int jlxw_mode;
  48. int jiyi_mode;
  49. /******************************************************
  50. result area DATA
  51. *******************************************************/
  52. int result_area_pointer;
  53. BYTE result_area[40];
  54. BYTE out_result_area[40];
  55. WORD out_bfb[40];
  56. int out_pointer;
  57. int now_cs;
  58. int now_cs_dot;
  59. /********************************************
  60. biaodian table
  61. *********************************************/
  62. //unsigned char biaodian_table[]="~`!@?():<>,.;_\x22\x27"; //Note \0x22 will be 0 x 2 2
  63. //unsigned char cc_biaodian[]="����������������������������������������";
  64. unsigned char biaodian_table[]="@&$^\\!@?():<>,.;_\x22\x27"; //Note \0x22 will be 0 x 2 2
  65. unsigned char cc_biaodian[]="����������������������������������������������";
  66. int biaodian_pos;
  67. WORD biaodian_value;
  68. BYTE yinhao_flag=0;
  69. /*******************************************
  70. control variabe
  71. ********************************************/
  72. //BYTE int_asc_mode=0; // int or half character switch
  73. extern BYTE step_mode;
  74. //BYTE cp_ajust_flag;
  75. BYTE bdd_flag; // the function of punctuation switch
  76. //BYTE cbx_flag =0; // for written-stroke input flag
  77. // =0 NO writen-stroke input module
  78. // =1 the method with STD_MODE
  79. // =2 ............... SDA_MODE
  80. BOOL IfTopMost; // top window flag
  81. BYTE word_back_flag;
  82. BYTE msg_type;
  83. /*****************************************
  84. temp memory area
  85. ******************************************/
  86. BYTE temp_rem_area[512];
  87. BYTE rem_area[512];
  88. /**************************************
  89. display buffer parameter
  90. ***************************************/
  91. BYTE out_length;
  92. BYTE last_out_length;
  93. BYTE cap_mode;
  94. /******************************************
  95. user_definition parameter
  96. *******************************************/
  97. WORD mulu_record_length=10;
  98. WORD data_record_length=32;
  99. WORD mulu_true_length=56;
  100. WORD data_start=0x1000;
  101. WORD mulu_max_length=0x1000;
  102. BYTE user_word_max_length=32;
  103. OFSTRUCT reopen;
  104. HWND active_win_keep;
  105. BYTE d_yinhao_flag=0,book_name=0,book_name_sub=0;
  106. /*******************************************************************
  107. This part of defination is cut from the beginning of ABCW.c
  108. ********************************************************************/
  109. BYTE SdaPromptOpen=0,DefNewNow=0; //cock
  110. FARPROC _hh1,_hh2;
  111. HANDLE hInst;
  112. HANDLE cisu_hd;
  113. HCURSOR hCursor; //1993.2
  114. FARPROC FAR *hh1,*hh2;
  115. FARPROC lpFunc,lpFunc2;
  116. HANDLE mdl;
  117. BYTE opt_flag;
  118. BYTE kb_buffer[35];
  119. int OldCaps;
  120. BYTE in_buffer[1]; /* buffer for input */
  121. int n,end_flg,CharHi,CharWi;
  122. HFONT hFont;
  123. HFONT hOldFont;
  124. HFONT hSFont=0;
  125. HPEN hPen;
  126. BYTE V_Flag=0; // V input flag
  127. OFSTRUCT ofstruct;
  128. HDC hDC;
  129. HDC hMemoryDC;
  130. HBITMAP cur_h;
  131. int count2;
  132. int pass_word=0;
  133. HWND NowFocus,OptFocus; //keep the user's focus
  134. BOOL cur_flag=0,op_flag;
  135. WORD old_curx=CUR_START_X,cur_hibit=1,cur_start_ps=0,cur_start_count=0;
  136. HWND hWnd,act_focus;
  137. int input_count=0;
  138. int kb_mode=CIN_STD,kb_flag = 0xffff;
  139. int local_focus=0;
  140. int timer_counter=0;
  141. int msg_count=0;
  142. BYTE msg_bf[50];
  143. TimerCounter=2;
  144. KeyBoardState=0;
  145. SdaInst = 0;
  146. HWND Return;
  147. HWND act_win;
  148. HANDLE Hdopt; //for dynamic call .dll proc
  149. unsigned char jiyi[]="{����}";
  150. WORD sda_trans[5]={9,9,9,9,0};
  151. HWND hInputWnd;
  152. HWND hABCWnd;
  153. char ExeCmdLine[]="abcwin 0";
  154. BYTE UpdateFlag=0; //1993.3 increase the user.rem
  155. char jiyi_wenjian_cuo[]="�ģ��û������ļ�������!";
  156. BYTE InputBuffer[43];
  157. WORD SoftKeyNum=0;
  158. TCHAR tmmr_rem[MAX_PATH];
  159. TCHAR user_lib[MAX_PATH];
  160. HANDLE hAccTable;
  161. HANDLE hImeL;
  162. LPIMEL lpImeL;
  163. int MoveFlag = 0;
  164. POINT pot;
  165. HWND hSetOp =0,NewWordWin=0;
  166. char *szMsgStr[] = { "0","0"}; // messages shown on diff sections
  167. BYTE Sd_Open_flag=0; //flag for display the keyboard
  168. BYTE kb_mode_save=0; //1993.4.19
  169. /******************************************************************
  170. This part of defination is cut from ABCWM.c
  171. *******************************************************************/
  172. char TMMR_OPEN_WRONG[]= "�����ļ��򿪴�";
  173. /******************************************************************
  174. This part of defination is cut before DIAMAN.c
  175. *******************************************************************/
  176. BYTE cpjy,bxsr,qj,bdzh;
  177. /******************************************************************
  178. This part of defination is cut before OKRETURN.c
  179. *******************************************************************/
  180. OFSTRUCT ofs;
  181. struct SLBL sb;
  182. struct N_SLBL neg;
  183. BYTE slbl_tab[]="ZH00\1"
  184. "SH00\2"
  185. "CH00\3"
  186. "ING0\4"
  187. "AI00\5"
  188. "AN00\6"
  189. "ANG0\7"
  190. "AO00\x8"
  191. "EI00\x9"
  192. "EN00\xa"
  193. "ENG0\xb"
  194. "IA00\xc"
  195. "IAN0\xd"
  196. "IANG\xe"
  197. "IAO0\xf"
  198. "IE00\x10"
  199. "IN00\x11"
  200. "IU00\x12"
  201. "ONG0\x13"
  202. "OU00\x14"
  203. "UA00\x15"
  204. "UAI0\x16"
  205. "UAN0\x17"
  206. "UE00\x18"
  207. "UN00\x19"
  208. "UENG\x1a" //SC4K6c?*DBASE={<I5D1AH
  209. "UI00\x1b"
  210. "UO00\x1c"
  211. "UANG\x1d"
  212. "ER00\x1e"
  213. "IONG\x1f"
  214. "VE00\x18"
  215. "UEN0\x19"
  216. "VEN0\x19"
  217. "UEI0\x1b"
  218. "IOU0\x12";
  219. OFSTRUCT openbuf;
  220. OFSTRUCT openbuf_kzk,open_user,open_tmmr;
  221. BYTE buffer[30];
  222. BYTE cmp_head,cmp_state,cmp_bx,by_cchar_flag;
  223. WORD cmp_yj,cmp_cisu;
  224. // about search lib
  225. LONG r_addr;
  226. WORD out_svw_cnt,msx_area_cnt;
  227. WORD search_start,search_end,kzk_search_start,kzk_search_end;
  228. WORD item_length,kzk_item_length,last_item_name,item_addr,slib_addr;
  229. BYTE word_lib_state;
  230. WORD lib_w[0xa00];
  231. WORD kzk_lib_w[0x400];
  232. BYTE auto_mode,word_source,xs_flag,sfx_attr,jiyi_pindu,system_info;
  233. BYTE stack1_move_counter;
  234. WORD extb_ps;
  235. /******************************************************************
  236. This part of defination is cut before READ_A_PAGE.c
  237. *******************************************************************/
  238. char *std_dct="winabc.cwd";
  239. char *user_dct="user.rem";
  240. BYTE last_flag;
  241. LONG last_start_ps;
  242. WORD last_size;
  243. /******************************************************************
  244. This part of defination is cut before REM_PD1.c
  245. *******************************************************************/
  246. BYTE stack1_move_counter;
  247. //................................................................
  248. // function tables definition
  249. //
  250. char fk_tab[]="0��1һ2��3��4��5��6��7��8��9��SʮB��Qǧ"
  251. "\0��\1Ҽ\2��\3��\4��\5��\6½\7��\x8��\x9��sʰb��qǪ"
  252. "G��"
  253. "W��"
  254. "Z��"
  255. "N��"
  256. "Y��"
  257. "R��"
  258. "J��"
  259. "D��"
  260. ""
  261. "K��"
  262. "M��"
  263. "F��"
  264. "L��"
  265. "T��"
  266. "E��"
  267. "O��"
  268. ""
  269. "P��"
  270. "C��"
  271. ""
  272. "A��"
  273. "I��"
  274. "X��"
  275. "+��"
  276. "-��"
  277. "*��"
  278. "/��";
  279. WORD sfx_table[]={
  280. //�� DA- 1
  281. 0x102, 0x80CC, //0x80C4,
  282. // �� DE- 1
  283. 0x202, 0x80E6, //0x80DE,
  284. // �� BA- 1
  285. 0x202, 0x2048,
  286. // �� BAI- 1
  287. 0x102, 0x2056,
  288. // �� BAN- 1
  289. 0x202, 0x205F,
  290. // �� BAN- 1
  291. 0x102, 0x206A,
  292. // �� BAO- 1
  293. 0x202, 0x2085,
  294. // �� BEN- 1
  295. 0x102, 0x209B,
  296. // �� BIAN- 1
  297. 0x202, 0x20BC,
  298. // �� BIAO- 1
  299. 0x202, 0x20CA,
  300. // �� BU- 1
  301. 0x102, 0x8058, //0x8054,
  302. // �� BU- 1
  303. 0x202, 0x20FA,
  304. // �� C,ANG- 1
  305. 0x102, 0x8088, //0x8080,
  306. // �� C,ANG- 1
  307. 0x202, 0x808E, //0x8086,
  308. // �� C,AO- 1
  309. 0x102, 0x2145,
  310. // �� C,E- 1
  311. 0x202, 0x8098, //0x8090,
  312. // 3� C,U- 1
  313. 0x202, 0x218F,
  314. // �� C,U- 1
  315. 0x202, 0x219D,
  316. // �� C,UN- 1
  317. 0x102, 0x21B6,
  318. // �� CONG- 1
  319. 0x202, 0x21CB,
  320. // �� CUN- 1
  321. 0x202, 0x21DC,
  322. // �� DAI- 1
  323. 0x202, 0x21EF,
  324. // �� DAN- 1
  325. 0x102, 0x80D6, //0x80CE,
  326. // �� DANG- 1
  327. 0x202, 0x2208,
  328. // �� DAO- 1
  329. 0x202, 0x2212,
  330. // �� DI- 1
  331. 0x102, 0x2222,
  332. // �� DI- 1
  333. 0x102, 0x80F4, //0x80EC,
  334. // �� DI- 1
  335. 0x202, 0x80F8, //0x80F0,
  336. // �� DIAN- 1
  337. 0x202, 0x2238,
  338. // �� DIAN- 1
  339. 0x102, 0x223C,
  340. // ���� DIAN-ZI- 1
  341. 0x104, 0x223C, 0x2EA4,
  342. // �� DIAO- 1
  343. 0x202, 0x2249,
  344. // �, DU- 1
  345. 0x202, 0x8116, //0x810E,
  346. // �� DUAN- 1
  347. 0x102, 0x227F,
  348. // �� DUI- 1
  349. 0x202, 0x2286,
  350. // �� DUO- 11
  351. 0x302, 0x2293,
  352. // �� E- 1
  353. 0x202, 0x22A1,
  354. // �� FA- 1
  355. 0x202, 0x22B9,
  356. // �� FANG- 1
  357. 0x102, 0x22D1,
  358. // �� FEI- 1
  359. 0x102, 0x22D8,
  360. // �� FEI- 1
  361. 0x202, 0x22E2,
  362. // �� FEN- 1
  363. 0x202, 0x22EC,
  364. // �� FENG- 1
  365. 0x202, 0x22F8,
  366. // �� FU- 1
  367. 0x102, 0x2320,
  368. // �� GAI- 1
  369. 0x102, 0x2332,
  370. // �� GAN- 1
  371. 0x202, 0x233F,
  372. // �� GAO- 1
  373. 0x102, 0x234E,
  374. // �� GE- 1
  375. 0x102, 0x2366,
  376. // �� GENG- 1
  377. 0x102, 0x236B,
  378. // �� GONG- 1
  379. 0x202, 0x2371,
  380. // �� GONG- 1
  381. 0x102, 0x237F,
  382. // �� GU- 1
  383. 0x102, 0x2392,
  384. // �� GUAN- 1
  385. 0x202, 0x23A8,
  386. // �� GUO- 1
  387. 0x202, 0x23C7,
  388. // �� ,AO- 1
  389. 0x102, 0x23EE,
  390. // �� ,EI- 1
  391. 0x102, 0x2405,
  392. // �� ,EN- 1
  393. 0x102, 0x2407,
  394. // �� ,ONG- 1
  395. 0x102, 0x819E, //0x8194,
  396. // �� ,OU- 1
  397. 0x202, 0x241E,
  398. // ;� ,U- 1
  399. 0x202, 0x2430,
  400. // �� ,UA- 1
  401. 0x202, 0x2438,
  402. // �� ,UAI- 1
  403. 0x102, 0x243E,
  404. // �� ,UI- 1
  405. 0x202, 0x81B0, //0x81A6,
  406. // �� ,UO- 1
  407. 0x202, 0x247E,
  408. // �� JI- 1
  409. 0x202, 0x2483,
  410. // �� JIA- 1
  411. 0x202, 0x81CC, //0x81C2,
  412. // �� JIAN- 1
  413. 0x202, 0x24E5,
  414. // �� JIANG- 1
  415. 0x202, 0x24F6,
  416. // �� JIE- 1
  417. 0x202, 0x252C,
  418. // �� JIN- 1
  419. 0x202, 0x2535,
  420. // �� JIU- 1
  421. 0x102, 0x256C,
  422. // �� JU- 1
  423. 0x202, 0x2579,
  424. // �� JUN- 1
  425. 0x202, 0x259F,
  426. // �� KE- 1
  427. 0x202, 0x25C4,
  428. // �� KE- 1
  429. 0x202, 0x25C6,
  430. // �� KE- 1
  431. 0x202, 0x25C7,
  432. // �� KE- 1
  433. 0x102, 0x25CA,
  434. // �� KE- 1
  435. 0x202, 0x25CF,
  436. // �� KOU- 1
  437. 0x202, 0x25DB,
  438. // �� LAO- 1
  439. 0x102, 0x262E,
  440. // �� LE- 1
  441. 0x202, 0x827A, //0x826C,
  442. // �� LEI- 1
  443. 0x202, 0x263F,
  444. // �� LI- 1
  445. 0x202, 0x264E,
  446. // �� LI- 1
  447. 0x202, 0x2663,
  448. // ���� LI-LUN- 1
  449. 0x204, 0x264C, 0x26F6,
  450. // �� LIANG- 1
  451. 0x202, 0x267C,
  452. // �� LIN- 1
  453. 0x202, 0x2693,
  454. // �� LUN- 1
  455. 0x202, 0x26F6,
  456. // �� LV- 1
  457. 0x202, 0x828E, //0x8280,
  458. // ÿ MEI- 1
  459. 0x102, 0x2738,
  460. // �� MEN- 1
  461. 0x202, 0x2740,
  462. // �� MI- 1
  463. 0x202, 0x274D,
  464. // �� MIAN- 1
  465. 0x102, 0x2757,
  466. // �� MIAN- 1
  467. 0x202, 0x275F,
  468. // ij MOU- 1
  469. 0x102, 0x278A,
  470. // �� NAN- 1
  471. 0x102, 0x27A7,
  472. // �� NAO- 1
  473. 0x102, 0x27AD,
  474. // �� NEI- 11
  475. 0x302, 0x27B1,
  476. // �� NIAN- 1
  477. 0x202, 0x27C1,
  478. // Ů NV- 1
  479. 0x102, 0x27E3,
  480. // �� PAI- 1
  481. 0x202, 0x8320, //0x8312,
  482. // �� PANG- 1
  483. 0x202, 0x2809,
  484. // Ƥ PI- 1
  485. 0x202, 0x2837,
  486. // Ƭ PIAN- 1
  487. 0x202, 0x283F,
  488. // Ʒ PIN- 1
  489. 0x202, 0x284A,
  490. // ,� QAUN- 1
  491. 0x102, 0x28FA,
  492. // �� QI- 1
  493. 0x102, 0x8354, //0x8346,
  494. // �� QI- 1
  495. 0x202, 0x288A,
  496. // ǰ QIAN- 1
  497. 0x202, 0x28A1,
  498. // �� QU- 1
  499. 0x202, 0x8388, //0x837A,
  500. // ,� QUAN- 1
  501. 0x202, 0x28F7,
  502. // ,� QUN- 1
  503. 0x202, 0x2909,
  504. // ,� REN- 1
  505. 0x202, 0x291A,
  506. // ,� RI- 1
  507. 0x202, 0x2924,
  508. // �� S,ANG- 11
  509. 0x302, 0x297C,
  510. // �� S,E- 1
  511. 0x202, 0x2994,
  512. // �� S,ENG- 1
  513. 0x202, 0x29A6,
  514. // ʡ S,ENG- 1
  515. 0x202, 0x83BE, //0x83B0,
  516. // �� S,I- 1
  517. 0x202, 0x83E2, //0x83D4,
  518. // �� S,I- 1
  519. 0x202, 0x29DD,
  520. // �� S,OU- 1
  521. 0x202, 0x29E1,
  522. // �� S,OU- 1
  523. 0x102, 0x29E7,
  524. // �� S,U- 1
  525. 0x202, 0x29F4,
  526. // ˫ S,UANG- 1
  527. 0x102, 0x2A14,
  528. // ˮ S,UI- 1
  529. 0x202, 0x2A17,
  530. // ˾ SI- 1
  531. 0x202, 0x2A27,
  532. // ˼�� SI-XIANG- 1
  533. 0x204, 0x8404, 0x2BCC, //0x83F8, 0x2BCC,
  534. // �� SUO- 1
  535. 0x202, 0x2A62,
  536. // ̨ TAI- 1
  537. 0x202, 0x2A6F,
  538. // �� TI- 1
  539. 0x202, 0x2AAC,
  540. // �� TIAO- 1
  541. 0x202, 0x2ABC,
  542. // �� TIE- 1
  543. 0x102, 0x2AC1,
  544. // ͷ TOU- 1
  545. 0x202, 0x2ADC,
  546. // �� WAI- 11
  547. 0x302, 0x2B07,
  548. // Ϊ WEI- 1
  549. 0x202, 0x2B2D,
  550. // �� WU- 1
  551. 0x102, 0x8450, //0x8444,
  552. // �� WU- 1
  553. 0x202, 0x2B72,
  554. // ϵ XI- 1
  555. 0x202, 0x8458, //0x844C,
  556. // �� XIA- 11
  557. 0x302, 0x2BA3,
  558. // �� XIAN- 1
  559. 0x202, 0x2BB9,
  560. // �� XIANG- 1
  561. 0x202, 0x2BC8,
  562. // ��Ŀ XIANG-MU- 1
  563. 0x204, 0x2BCF, 0x2796,
  564. // С XIAO- 1
  565. 0x102, 0x2BE0,
  566. // �� XIN- 1
  567. 0x102, 0x2C01,
  568. // �� XIN- 1
  569. 0x202, 0x2C03,
  570. // �� XING- 1
  571. 0x202, 0x2C13,
  572. // �� XING- 1
  573. 0x202, 0x2C0C,
  574. // ���� XING-Z,I- 1
  575. 0x204, 0x2C13, 0x2E3D,
  576. // ѧ XUE- 1
  577. 0x202, 0x2C44,
  578. // ѧ˵ XUE-S,UO- 1
  579. 0x204, 0x2C44, 0x83FE, //0x83F2,
  580. // �� YAN- 1
  581. 0x202, 0x2C78,
  582. // �� YANG- 1
  583. 0x102, 0x2C90,
  584. // ҵ YE- 1
  585. 0x202, 0x2CB0,
  586. // �� YI- 1
  587. 0x202, 0x2CC2,
  588. // �� YOU- 1
  589. 0x102, 0x2D29,
  590. // �� YU- 1
  591. 0x202, 0x2D33,
  592. // ԭ YUAN- 1
  593. 0x102, 0x2D64,
  594. // Ա YUAN- 1
  595. 0x202, 0x84C0, //0x84B4,
  596. // Ժ YUAN- 1
  597. 0x202, 0x2D71,
  598. // �˶� YUN-DONG- 1
  599. 0x204, 0x2D82, 0x2262,
  600. // �� ZI- 1
  601. 0x202, 0x2EA4,
  602. // �� ZAI- 1
  603. 0x102, 0x2D90,
  604. // �� ZAI- 1
  605. 0x102, 0x2D91,
  606. // վ Z,AN- 1
  607. 0x202, 0x2DD3,
  608. // �� Z,ANG- 1
  609. 0x202, 0x808A, //0x8082,
  610. // �� Z,E- 1
  611. 0x202, 0x2DF4,
  612. // �� Z,E- 1
  613. 0x202, 0x8532, //0x8526,
  614. // �� Z,EN- 1
  615. 0x102, 0x2DFB,
  616. // �� Z,EN- 1
  617. 0x202, 0x2E07,
  618. // �� Z,ENG- 1
  619. 0x102, 0x2E12,
  620. // �� Z,I- 1
  621. 0x202, 0x2E39,
  622. // �� Z,ONG- 11
  623. 0x302, 0x2E43,
  624. // �� Z,U- 1
  625. 0x102, 0x2E6A,
  626. // ס Z,U- 1
  627. 0x202, 0x2E72,
  628. // ���� Z,U-YI- 1
  629. 0x204, 0x2E6A, 0x2CE0,
  630. // רҵ Z,UAN-YE- 1
  631. 0x204, 0x2E79, 0x2CB0,
  632. // ״ Z,UANG- 1
  633. 0x202, 0x2E85,
  634. // ׼ Z,UN- 1
  635. 0x102, 0x2E8D,
  636. // �� ZONG- 1
  637. 0x102, 0x2EAD,
  638. // �� ZU- 1
  639. 0x202, 0x2EBA,
  640. // �� ZUI- 1
  641. 0x102, 0x2EBF,
  642. // �� ZUO- 1
  643. 0x102, 0x2EC8};
  644. WORD sfx_table_size=sizeof sfx_table;
  645. int FAR PASCAL sda_proc(WORD, LPWORD, BYTE, HIMC);
  646. int FAR PASCAL tran_data(int, HIMC, BYTE);