home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume21 / xvig / part04 < prev    next >
Encoding:
Text File  |  1993-11-23  |  54.4 KB  |  1,341 lines

  1. Newsgroups: comp.sources.x
  2. From: demaree@imec.be (Antoon Demaree)
  3. Subject: v21i051:  xvig - XviG Graphics Library, Part04/10
  4. Message-ID: <1993Nov23.172748.17090@sparky.sterling.com>
  5. X-Md4-Signature: fc5560ac0ae710b83921678f5c54e48b
  6. Sender: chris@sparky.sterling.com (Chris Olson)
  7. Organization: Sterling Software
  8. Date: Tue, 23 Nov 1993 17:27:48 GMT
  9. Approved: chris@sterling.com
  10.  
  11. Submitted-by: demaree@imec.be (Antoon Demaree)
  12. Posting-number: Volume 21, Issue 51
  13. Archive-name: xvig/part04
  14. Environment: X11
  15.  
  16. #! /bin/sh
  17. # This is a shell archive.  Remove anything before this line, then feed it
  18. # into a shell via "sh file" or similar.  To overwrite existing files,
  19. # type "sh file -c".
  20. # Contents:  version_1.1/src/cursor.c version_1.1/src/pattern.h
  21. #   version_1.1/src/ptext.c
  22. # Wrapped by chris@sparky on Tue Nov 23 11:17:57 1993
  23. PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin:$PATH ; export PATH
  24. echo If this archive is complete, you will see the following message:
  25. echo '          "shar: End of archive 4 (of 10)."'
  26. if test -f 'version_1.1/src/cursor.c' -a "${1}" != "-c" ; then 
  27.   echo shar: Will not clobber existing file \"'version_1.1/src/cursor.c'\"
  28. else
  29.   echo shar: Extracting \"'version_1.1/src/cursor.c'\" \(7337 characters\)
  30.   sed "s/^X//" >'version_1.1/src/cursor.c' <<'END_OF_FILE'
  31. X/* File>>> cursor.c
  32. X--
  33. X-- %M% -- version %I% (IMEC)            last updated: %E%
  34. X--
  35. X-- Copyright (c) 1993
  36. X-- IMEC vzw
  37. X-- Kapeldreef 75
  38. X-- B-3001 LEUVEN
  39. X-- BELGIUM
  40. X--
  41. X-- Author   : A. Demaree
  42. X--
  43. X-- Date     : February 1, 1993
  44. X--
  45. X-- Function :
  46. X--
  47. X-- Comment  :
  48. X--
  49. X-- Review   :
  50. X--
  51. X*/
  52. X
  53. X
  54. X/*------------------------------------------------------------------------------
  55. X-- Global include files
  56. X------------------------------------------------------------------------------*/
  57. X
  58. X#include <stdlib.h>
  59. X#include <stdio.h>
  60. X#include <string.h>
  61. X#include <X11/Xlib.h>
  62. X#include <X11/Xutil.h>
  63. X
  64. X/*------------------------------------------------------------------------------
  65. X-- Local include files
  66. X------------------------------------------------------------------------------*/
  67. X
  68. X#include "xviglocal.h"
  69. X
  70. X/*------------------------------------------------------------------------------
  71. X-- Static variable declarations
  72. X------------------------------------------------------------------------------*/
  73. X
  74. Xstatic CurItem cursor_item = (CurItem) NULL;
  75. Xstatic Window save_window;
  76. Xstatic Pixmap save_pixmap;
  77. X
  78. X/*------------------------------------------------------------------------------
  79. X-- Local function declarations
  80. X------------------------------------------------------------------------------*/
  81. X
  82. X
  83. X/*------------------------------------------------------------------------------
  84. X--
  85. X--
  86. X--
  87. X------------------------------------------------------------------------------*/
  88. X
  89. Xvoid XviG_OpenCursor(unsigned int width,
  90. X                     unsigned int height,
  91. X                     int hot_x,
  92. X                     int hot_y)
  93. X{
  94. X  GC gc;
  95. X  Pixmap cursor_pixmap;
  96. X  unsigned int loc_width, loc_height;
  97. X
  98. X  /*
  99. X  -- If there is a cursor pixmap currently active, free it
  100. X  */
  101. X
  102. X  if (cursor_item)
  103. X    XFreePixmap(XviG_display, cursor_item->pixmap);
  104. X
  105. X  /*
  106. X  -- Use the default graphical context to clear the cursor pixmap
  107. X  */
  108. X
  109. X  gc = DefaultGC(XviG_display, XviG_screen_nr);
  110. X
  111. X  XSetFunction(XviG_display, gc, GXclear);
  112. X  XSetFillStyle(XviG_display, gc, FillSolid);
  113. X
  114. X  /*
  115. X  -- Create the cursor pixmap and clear it
  116. X  -- (maximum size can be twice the screen size)
  117. X  */
  118. X
  119. X  loc_width  = (width == 0)
  120. X               ? 1 : MIN(width, 2*DisplayWidth(XviG_display, XviG_screen_nr));
  121. X  loc_height = (height == 0)
  122. X               ? 1 : MIN(height, 2*DisplayHeight(XviG_display, XviG_screen_nr));
  123. X
  124. X  cursor_pixmap = XCreatePixmap(XviG_display, XviG_dummy_window,
  125. X                                loc_width, loc_height,
  126. X                                DefaultDepth(XviG_display, XviG_screen_nr));
  127. X  XFillRectangle(XviG_display, cursor_pixmap, gc, 0, 0, loc_width, loc_height);
  128. X
  129. X  /*
  130. X  -- Update the cursor list
  131. X  */
  132. X
  133. X  if (cursor_item)
  134. X  {
  135. X    cursor_item->pixmap = cursor_pixmap;
  136. X    cursor_item->width = loc_width;
  137. X    cursor_item->height = loc_height;
  138. X    cursor_item->hot_x = hot_x;
  139. X    cursor_item->hot_y = hot_y;
  140. X  }
  141. X  else
  142. X    cursor_item = New_CurItem(cursor_pixmap,
  143. X                              loc_width, loc_height, hot_x, hot_y);
  144. X
  145. X  /*
  146. X  -- Set the current window and pixmap to draw to
  147. X  */
  148. X
  149. X  save_window = XviG_window;
  150. X  save_pixmap = XviG_pixmap;
  151. X
  152. X  XviG_window = XviG_dummy_window;
  153. X  XviG_pixmap = cursor_pixmap;
  154. X
  155. X  XviG_cursor_mode = True;
  156. X}
  157. X
  158. X/*------------------------------------------------------------------------------
  159. X--
  160. X--
  161. X--
  162. X------------------------------------------------------------------------------*/
  163. X
  164. Xlong XviG_CloseCursor(void)
  165. X{
  166. X  long cursor;
  167. X
  168. X  if (cursor_item == (CurItem) NULL)
  169. X    return 0L;
  170. X
  171. X  cursor = (long) cursor_item;
  172. X  cursor_item = (CurItem) NULL;
  173. X
  174. X  /*
  175. X  -- Reset the current window and pixmap to draw to
  176. X  */
  177. X
  178. X  XviG_window = save_window;
  179. X  XviG_pixmap = save_pixmap;
  180. X
  181. X  XviG_cursor_mode = False;
  182. X
  183. X  /*
  184. X  -- Return the cursor identifier
  185. X  */
  186. X
  187. X  return cursor;
  188. X}
  189. X
  190. X/*------------------------------------------------------------------------------
  191. X--
  192. X--
  193. X--
  194. X------------------------------------------------------------------------------*/
  195. X
  196. Xvoid XviG_DeleteCursor(long cursor)
  197. X{
  198. X  if (cursor)
  199. X  {
  200. X    XFreePixmap(XviG_display, ((CurItem) cursor)->pixmap);
  201. X    Delete_CurItem((CurItem) cursor);
  202. X  }
  203. X}
  204. X
  205. X/*------------------------------------------------------------------------------
  206. X--
  207. X--
  208. X--
  209. X------------------------------------------------------------------------------*/
  210. X
  211. Xvoid XviG_SetCursor(long cursor)
  212. X{
  213. X  XviG_event.xclient.message_type = XviG_MESSAGE_CURSOR;
  214. X  XviG_event.xclient.format = 32;
  215. X  XviG_event.type = ClientMessage;
  216. X
  217. X  if (cursor == XviG_CURSOR_ARROW)
  218. X    XviG_event.xclient.data.l[0] = DATA_CURSOR_ARROW;
  219. X  else
  220. X  if (cursor == XviG_CURSOR_XHAIR)
  221. X  {
  222. X    XviG_event.xclient.data.l[0] = DATA_CURSOR_XHAIR;
  223. X    XviG_event.xclient.data.l[1] = (long) XviG_xhair_color;
  224. X  }
  225. X  else
  226. X  {
  227. X    XviG_event.xclient.data.l[0] = (long) ((CurItem) cursor)->pixmap;
  228. X        /* Let's hope that the pixmap id never has the same value as the one */
  229. X        /* that I have choosen for DATA_CURSOR_ARROW and DATA_CURSOR_XHAIR.  */
  230. X    XviG_event.xclient.data.l[1] = (long) ((CurItem) cursor)->width;
  231. X    XviG_event.xclient.data.l[2] = (long) ((CurItem) cursor)->height;
  232. X    XviG_event.xclient.data.l[3] = (long) ((CurItem) cursor)->hot_x;
  233. X    XviG_event.xclient.data.l[4] = (long) ((CurItem) cursor)->hot_y;
  234. X  }
  235. X
  236. X  if (!XSendEvent(XviG_display, XviG_window, False, NoEventMask, &XviG_event))
  237. X    fprintf(stderr, "ERROR : Cannot send ClientMessage 'cursor'.\n");
  238. X}
  239. X
  240. X/*------------------------------------------------------------------------------
  241. X--
  242. X--
  243. X--
  244. X------------------------------------------------------------------------------*/
  245. X
  246. Xint XviG_GetCursor(int type,
  247. X                   int *x_pos,
  248. X                   int *y_pos)
  249. X{
  250. X  int character;
  251. X  char tmpstr[8];
  252. X
  253. X  /*
  254. X  -- First send the ClientMessage to set the event type to receive
  255. X  */
  256. X
  257. X  switch (type)
  258. X  {
  259. X    case XviG_KEY:
  260. X        XviG_event.xclient.message_type = XviG_MESSAGE_KEY;
  261. X        break;
  262. X    case XviG_BUTTON:
  263. X        XviG_event.xclient.message_type = XviG_MESSAGE_BUTTON;
  264. X        break;
  265. X    case XviG_KEY_BUTTON:
  266. X        XviG_event.xclient.message_type = XviG_MESSAGE_KEY_BUTTON;
  267. X        break;
  268. X  }
  269. X  XviG_event.xclient.format = 8;
  270. X  XviG_event.type = ClientMessage;
  271. X
  272. X  if (!XSendEvent(XviG_display, XviG_window, False, NoEventMask, &XviG_event))
  273. X  {
  274. X    fprintf(stderr, "ERROR : Cannot send ClientMessage 'key_button'.\n");
  275. X    return 0;
  276. X  }
  277. X
  278. X  /*
  279. X  -- The event loop
  280. X  */
  281. X
  282. X  while (1)
  283. X  {
  284. X    XNextEvent(XviG_display, &XviG_event);
  285. X
  286. X    if (XviG_event.type == ButtonPress)
  287. X    {
  288. X      *x_pos = XviG_event.xbutton.x;
  289. X      *y_pos = XviG_event.xbutton.y;
  290. X
  291. X      switch (XviG_event.xbutton.button)
  292. X      {
  293. X        case Button1: character = XviG_BUTTON1; break;
  294. X        case Button2: character = XviG_BUTTON2; break;
  295. X        case Button3: character = XviG_BUTTON3; break;
  296. X        case Button4: character = XviG_BUTTON4; break;
  297. X        case Button5: character = XviG_BUTTON5; break;
  298. X        default: character = 0;
  299. X      }
  300. X
  301. X      break;
  302. X    }
  303. X    else
  304. X    if (XviG_event.type == KeyPress)
  305. X    {
  306. X      *x_pos = XviG_event.xkey.x;
  307. X      *y_pos = XviG_event.xkey.y;
  308. X
  309. X      if (XLookupString(&XviG_event.xkey, tmpstr, 8,
  310. X                        (KeySym *) NULL, (XComposeStatus *) NULL) == 1)
  311. X        character = tmpstr[0];
  312. X      else
  313. X        character = 0;
  314. X
  315. X      break;
  316. X    }
  317. X    /*
  318. X    else
  319. X      printf("WARNING : Other event received .....\n");
  320. X    */
  321. X  }
  322. X
  323. X  return character;
  324. X}
  325. END_OF_FILE
  326.   if test 7337 -ne `wc -c <'version_1.1/src/cursor.c'`; then
  327.     echo shar: \"'version_1.1/src/cursor.c'\" unpacked with wrong size!
  328.   fi
  329.   # end of 'version_1.1/src/cursor.c'
  330. fi
  331. if test -f 'version_1.1/src/pattern.h' -a "${1}" != "-c" ; then 
  332.   echo shar: Will not clobber existing file \"'version_1.1/src/pattern.h'\"
  333. else
  334.   echo shar: Extracting \"'version_1.1/src/pattern.h'\" \(38091 characters\)
  335.   sed "s/^X//" >'version_1.1/src/pattern.h' <<'END_OF_FILE'
  336. X/* File>>> pattern.h
  337. X--
  338. X-- %M% -- version %I% (IMEC)            last updated: %E%
  339. X--
  340. X-- Copyright (c) 1993
  341. X-- IMEC vzw
  342. X-- Kapeldreef 75
  343. X-- B-3001 LEUVEN
  344. X-- BELGIUM
  345. X--
  346. X-- Author   : A. Demaree
  347. X--
  348. X-- Date     : February 1, 1993
  349. X--
  350. X-- Function : Definition of the 42 fillpatterns and 8 linestyles.
  351. X--
  352. X-- Comment  :
  353. X--
  354. X-- Review   :
  355. X--
  356. X*/
  357. X
  358. X
  359. X#ifndef __PATTERN_H
  360. X#define __PATTERN_H
  361. X
  362. X
  363. X/*
  364. X-- The fillpatterns ....
  365. X*/
  366. X
  367. X
  368. X#define fill00_width 32
  369. X#define fill00_height 32
  370. Xstatic unsigned char fill00_bits[] = { /* This solid fillpattern is obsolete */
  371. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  372. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  373. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  374. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  375. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  376. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  377. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  378. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  379. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  380. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  381. X 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
  382. X
  383. X
  384. X#define fill01_width 32
  385. X#define fill01_height 32
  386. Xstatic unsigned char fill01_bits[] = {
  387. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00,
  388. X 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa,
  389. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00,
  390. X 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa,
  391. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00,
  392. X 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa,
  393. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00,
  394. X 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa,
  395. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00,
  396. X 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa,
  397. X 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa };
  398. X
  399. X
  400. X#define fill02_width 32
  401. X#define fill02_height 32
  402. Xstatic unsigned char fill02_bits[] = {
  403. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55,
  404. X 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00,
  405. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55,
  406. X 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00,
  407. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55,
  408. X 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00,
  409. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55,
  410. X 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00,
  411. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55,
  412. X 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00,
  413. X 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00 };
  414. X
  415. X
  416. X#define fill03_width 32
  417. X#define fill03_height 32
  418. Xstatic unsigned char fill03_bits[] = {
  419. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88,
  420. X 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11,
  421. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22,
  422. X 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44,
  423. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88,
  424. X 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11,
  425. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22,
  426. X 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44,
  427. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88,
  428. X 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11,
  429. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44 };
  430. X
  431. X
  432. X#define fill04_width 32
  433. X#define fill04_height 32
  434. Xstatic unsigned char fill04_bits[] = {
  435. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22,
  436. X 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44,
  437. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88,
  438. X 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11,
  439. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22,
  440. X 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44,
  441. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88,
  442. X 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11,
  443. X 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22,
  444. X 0x11, 0x11, 0x11, 0x11, 0x88, 0x88, 0x88, 0x88, 0x44, 0x44, 0x44, 0x44,
  445. X 0x22, 0x22, 0x22, 0x22, 0x11, 0x11, 0x11, 0x11 };
  446. X
  447. X
  448. X#define fill05_width 32
  449. X#define fill05_height 32
  450. Xstatic unsigned char fill05_bits[] = {
  451. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88,
  452. X 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44,
  453. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
  454. X 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11,
  455. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88,
  456. X 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44,
  457. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
  458. X 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11,
  459. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88,
  460. X 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44,
  461. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11 };
  462. X
  463. X
  464. X#define fill06_width 32
  465. X#define fill06_height 32
  466. Xstatic unsigned char fill06_bits[] = {
  467. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
  468. X 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11,
  469. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88,
  470. X 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44,
  471. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
  472. X 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11,
  473. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88,
  474. X 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44,
  475. X 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
  476. X 0x44, 0x44, 0x44, 0x44, 0x88, 0x88, 0x88, 0x88, 0x11, 0x11, 0x11, 0x11,
  477. X 0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x44 };
  478. X
  479. X
  480. X#define fill07_width 32
  481. X#define fill07_height 32
  482. Xstatic unsigned char fill07_bits[] = {
  483. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  484. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  485. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  486. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  487. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  488. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  489. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  490. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  491. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  492. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
  493. X 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa };
  494. X
  495. X
  496. X#define fill08_width 32
  497. X#define fill08_height 32
  498. Xstatic unsigned char fill08_bits[] = {
  499. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  500. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  501. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  502. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  503. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  504. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  505. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  506. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  507. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  508. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
  509. X 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55 };
  510. X
  511. X
  512. X#define fill09_width 32
  513. X#define fill09_height 32
  514. Xstatic unsigned char fill09_bits[] = {
  515. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  516. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  517. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  518. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  519. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  520. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  521. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  522. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  523. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  524. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  525. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 };
  526. X
  527. X
  528. X#define fill10_width 32
  529. X#define fill10_height 32
  530. Xstatic unsigned char fill10_bits[] = {
  531. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  532. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  533. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  534. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  535. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  536. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  537. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  538. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  539. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  540. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  541. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff };
  542. X
  543. X
  544. X#define fill11_width 32
  545. X#define fill11_height 32
  546. Xstatic unsigned char fill11_bits[] = {
  547. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44,
  548. X 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa,
  549. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11,
  550. X 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa,
  551. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44,
  552. X 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa,
  553. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11,
  554. X 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa,
  555. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44,
  556. X 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa,
  557. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa };
  558. X
  559. X
  560. X#define fill12_width 32
  561. X#define fill12_height 32
  562. Xstatic unsigned char fill12_bits[] = {
  563. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11,
  564. X 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa,
  565. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44,
  566. X 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa,
  567. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11,
  568. X 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa,
  569. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44,
  570. X 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa,
  571. X 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11,
  572. X 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa,
  573. X 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa };
  574. X
  575. X
  576. X#define fill13_width 32
  577. X#define fill13_height 32
  578. Xstatic unsigned char fill13_bits[] = {
  579. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99,
  580. X 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99,
  581. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
  582. X 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66,
  583. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99,
  584. X 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99,
  585. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
  586. X 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66,
  587. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99,
  588. X 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99,
  589. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66 };
  590. X
  591. X
  592. X#define fill14_width 32
  593. X#define fill14_height 32
  594. Xstatic unsigned char fill14_bits[] = {
  595. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
  596. X 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66,
  597. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99,
  598. X 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99,
  599. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
  600. X 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66,
  601. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99,
  602. X 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99,
  603. X 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
  604. X 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x66, 0x66, 0x66, 0x66,
  605. X 0x66, 0x66, 0x66, 0x66, 0x99, 0x99, 0x99, 0x99 };
  606. X
  607. X
  608. X#define fill15_width 32
  609. X#define fill15_height 32
  610. Xstatic unsigned char fill15_bits[] = {
  611. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff,
  612. X 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55,
  613. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff,
  614. X 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55,
  615. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff,
  616. X 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55,
  617. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff,
  618. X 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55,
  619. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff,
  620. X 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55,
  621. X 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55 };
  622. X
  623. X
  624. X#define fill16_width 32
  625. X#define fill16_height 32
  626. Xstatic unsigned char fill16_bits[] = {
  627. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa,
  628. X 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff,
  629. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa,
  630. X 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff,
  631. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa,
  632. X 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff,
  633. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa,
  634. X 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff,
  635. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa,
  636. X 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff,
  637. X 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff };
  638. X
  639. X
  640. X#define fill17_width 32
  641. X#define fill17_height 32
  642. Xstatic unsigned char fill17_bits[] = {
  643. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00,
  644. X 0x00, 0x00, 0x05, 0x00, 0xf8, 0x81, 0x08, 0x00, 0x08, 0x81, 0x08, 0x00,
  645. X 0x08, 0x41, 0x10, 0x00, 0x08, 0x41, 0x10, 0x00, 0x08, 0x21, 0x20, 0x00,
  646. X 0xf8, 0xe1, 0x38, 0x00, 0x90, 0x80, 0x08, 0x00, 0x90, 0x80, 0x08, 0x00,
  647. X 0x90, 0xfe, 0xf8, 0x03, 0x90, 0x82, 0x08, 0x02, 0x90, 0x82, 0x08, 0x02,
  648. X 0x90, 0xf2, 0x78, 0x02, 0x90, 0x92, 0xc8, 0x07, 0xfc, 0xf3, 0x7f, 0x04,
  649. X 0x04, 0x12, 0x40, 0x04, 0x04, 0x12, 0x40, 0x04, 0xfc, 0xf3, 0xff, 0x07,
  650. X 0x90, 0x92, 0x48, 0x02, 0x90, 0x92, 0x48, 0x02, 0x90, 0x92, 0x4f, 0x02,
  651. X 0x90, 0x92, 0x48, 0x02, 0x90, 0xff, 0x78, 0x1e, 0x10, 0x80, 0x48, 0x12,
  652. X 0x10, 0x80, 0x48, 0x12, 0xf0, 0xff, 0x7f, 0x1e, 0x00, 0x12, 0x40, 0x02,
  653. X 0x00, 0x1e, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00 };
  654. X
  655. X
  656. X#define fill18_width 32
  657. X#define fill18_height 32
  658. Xstatic unsigned char fill18_bits[] = {
  659. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  660. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  661. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  662. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  663. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  664. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  665. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  666. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  667. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  668. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
  669. X 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01 };
  670. X
  671. X
  672. X#define fill19_width 32
  673. X#define fill19_height 32
  674. Xstatic unsigned char fill19_bits[] = {
  675. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  676. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  677. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
  678. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  679. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  680. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  681. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  682. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  683. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  684. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  685. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
  686. X
  687. X
  688. X#define fill20_width 32
  689. X#define fill20_height 32
  690. Xstatic unsigned char fill20_bits[] = {
  691. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  692. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  693. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  694. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  695. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  696. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  697. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  698. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  699. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  700. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  701. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00 };
  702. X
  703. X
  704. X#define fill21_width 32
  705. X#define fill21_height 32
  706. Xstatic unsigned char fill21_bits[] = {
  707. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  708. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  709. X 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  710. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  711. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  712. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  713. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  714. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
  715. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  716. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  717. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
  718. X
  719. X
  720. X#define fill22_width 32
  721. X#define fill22_height 32
  722. Xstatic unsigned char fill22_bits[] = {
  723. X 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x00,
  724. X 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, 0x10, 0x00, 0x20, 0x00, 0x20, 0x00,
  725. X 0x40, 0x00, 0x40, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x01, 0x00, 0x01,
  726. X 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x00, 0x08, 0x00, 0x08,
  727. X 0x00, 0x10, 0x00, 0x10, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40,
  728. X 0x00, 0x80, 0x00, 0x80, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00,
  729. X 0x04, 0x00, 0x04, 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, 0x10, 0x00,
  730. X 0x20, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x80, 0x00, 0x80, 0x00,
  731. X 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04,
  732. X 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, 0x10, 0x00, 0x20, 0x00, 0x20,
  733. X 0x00, 0x40, 0x00, 0x40, 0x00, 0x80, 0x00, 0x80 };
  734. X
  735. X
  736. X#define fill23_width 32
  737. X#define fill23_height 32
  738. Xstatic unsigned char fill23_bits[] = {
  739. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x40, 0x00, 0x20, 0x00, 0x20,
  740. X 0x00, 0x10, 0x00, 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x04,
  741. X 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x80, 0x00, 0x80, 0x00,
  742. X 0x40, 0x00, 0x40, 0x00, 0x20, 0x00, 0x20, 0x00, 0x10, 0x00, 0x10, 0x00,
  743. X 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x00,
  744. X 0x01, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x40,
  745. X 0x00, 0x20, 0x00, 0x20, 0x00, 0x10, 0x00, 0x10, 0x00, 0x08, 0x00, 0x08,
  746. X 0x00, 0x04, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01,
  747. X 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x40, 0x00, 0x20, 0x00, 0x20, 0x00,
  748. X 0x10, 0x00, 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x04, 0x00,
  749. X 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00 };
  750. X
  751. X
  752. X#define fill24_width 32
  753. X#define fill24_height 32
  754. Xstatic unsigned char fill24_bits[] = {
  755. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  756. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  757. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  758. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  759. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  760. X 0x00, 0x80, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0x00, 0x80, 0x00, 0x80,
  761. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  762. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  763. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  764. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  765. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80 };
  766. X
  767. X
  768. X#define fill25_width 32
  769. X#define fill25_height 32
  770. Xstatic unsigned char fill25_bits[] = {
  771. X 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44, 0x00, 0x38, 0x00, 0x38, 0x00,
  772. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44,
  773. X 0x00, 0x28, 0x00, 0x28, 0x00, 0x10, 0x00, 0x10, 0x00, 0x28, 0x00, 0x28,
  774. X 0x00, 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82, 0x00, 0x00, 0x00, 0x00,
  775. X 0x38, 0x00, 0x38, 0x00, 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82, 0x00,
  776. X 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44, 0x00,
  777. X 0x38, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x82,
  778. X 0x00, 0x44, 0x00, 0x44, 0x00, 0x28, 0x00, 0x28, 0x00, 0x10, 0x00, 0x10,
  779. X 0x00, 0x28, 0x00, 0x28, 0x00, 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82,
  780. X 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x38, 0x00, 0x44, 0x00, 0x44, 0x00,
  781. X 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x82, 0x00 };
  782. X
  783. X
  784. X#define fill26_width 32
  785. X#define fill26_height 32
  786. Xstatic unsigned char fill26_bits[] = {
  787. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  788. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  789. X 0x00, 0x80, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x80, 0x00,
  790. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  791. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  792. X 0xff, 0xff, 0xff, 0xff, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  793. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80,
  794. X 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff,
  795. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  796. X 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00,
  797. X 0x80, 0x00, 0x80, 0x00, 0xff, 0xff, 0xff, 0xff };
  798. X
  799. X
  800. X#define fill27_width 32
  801. X#define fill27_height 32
  802. Xstatic unsigned char fill27_bits[] = {
  803. X 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x40, 0x02, 0x00, 0x00, 0x00, 0x00,
  804. X 0x10, 0x08, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x04, 0x20, 0x04, 0x20,
  805. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00,
  806. X 0x40, 0x02, 0x40, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08,
  807. X 0x00, 0x00, 0x00, 0x00, 0x04, 0x20, 0x04, 0x20, 0x00, 0x00, 0x00, 0x00,
  808. X 0x10, 0x08, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x40, 0x02,
  809. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00,
  810. X 0x04, 0x20, 0x04, 0x20, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08,
  811. X 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x40, 0x02, 0x00, 0x00, 0x00, 0x00,
  812. X 0x10, 0x08, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x04, 0x20, 0x04, 0x20,
  813. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08 };
  814. X
  815. X
  816. X#define fill28_width 32
  817. X#define fill28_height 32
  818. Xstatic unsigned char fill28_bits[] = {
  819. X 0x81, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00,
  820. X 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
  821. X 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80,
  822. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
  823. X 0x00, 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x40,
  824. X 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00,
  825. X 0x20, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00,
  826. X 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
  827. X 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x04,
  828. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
  829. X 0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00 };
  830. X
  831. X
  832. X#define fill29_width 32
  833. X#define fill29_height 32
  834. Xstatic unsigned char fill29_bits[] = {
  835. X 0x10, 0x08, 0x10, 0x08, 0x20, 0x10, 0x20, 0x10, 0x40, 0x20, 0x40, 0x20,
  836. X 0x80, 0x40, 0x80, 0x40, 0x01, 0x81, 0x01, 0x81, 0x80, 0x40, 0x80, 0x40,
  837. X 0x40, 0x20, 0x40, 0x20, 0x20, 0x10, 0x20, 0x10, 0x10, 0x08, 0x10, 0x08,
  838. X 0x20, 0x10, 0x20, 0x10, 0x40, 0x20, 0x40, 0x20, 0x80, 0x40, 0x80, 0x40,
  839. X 0x01, 0x81, 0x01, 0x81, 0x80, 0x40, 0x80, 0x40, 0x40, 0x20, 0x40, 0x20,
  840. X 0x20, 0x10, 0x20, 0x10, 0x10, 0x08, 0x10, 0x08, 0x20, 0x10, 0x20, 0x10,
  841. X 0x40, 0x20, 0x40, 0x20, 0x80, 0x40, 0x80, 0x40, 0x01, 0x81, 0x01, 0x81,
  842. X 0x80, 0x40, 0x80, 0x40, 0x40, 0x20, 0x40, 0x20, 0x20, 0x10, 0x20, 0x10,
  843. X 0x10, 0x08, 0x10, 0x08, 0x20, 0x10, 0x20, 0x10, 0x40, 0x20, 0x40, 0x20,
  844. X 0x80, 0x40, 0x80, 0x40, 0x01, 0x81, 0x01, 0x81, 0x80, 0x40, 0x80, 0x40,
  845. X 0x40, 0x20, 0x40, 0x20, 0x20, 0x10, 0x20, 0x10 };
  846. X
  847. X
  848. X#define fill30_width 32
  849. X#define fill30_height 32
  850. Xstatic unsigned char fill30_bits[] = {
  851. X 0x10, 0x10, 0x10, 0x10, 0x28, 0x00, 0x28, 0x00, 0x44, 0x00, 0x44, 0x00,
  852. X 0x82, 0x00, 0x82, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x82, 0x00, 0x82,
  853. X 0x00, 0x44, 0x00, 0x44, 0x10, 0x28, 0x10, 0x28, 0x28, 0x10, 0x28, 0x10,
  854. X 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82, 0x00, 0x01, 0x01, 0x01, 0x01,
  855. X 0x00, 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44, 0x00, 0x28, 0x00, 0x28,
  856. X 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x28, 0x00, 0x28, 0x00,
  857. X 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82, 0x00, 0x01, 0x01, 0x01, 0x01,
  858. X 0x00, 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44, 0x10, 0x28, 0x10, 0x28,
  859. X 0x28, 0x10, 0x28, 0x10, 0x44, 0x00, 0x44, 0x00, 0x82, 0x00, 0x82, 0x00,
  860. X 0x01, 0x01, 0x01, 0x01, 0x00, 0x82, 0x00, 0x82, 0x00, 0x44, 0x00, 0x44,
  861. X 0x00, 0x28, 0x00, 0x28, 0x10, 0x10, 0x10, 0x10 };
  862. X
  863. X
  864. X#define fill31_width 32
  865. X#define fill31_height 32
  866. Xstatic unsigned char fill31_bits[] = {
  867. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10,
  868. X 0x38, 0x38, 0x38, 0x38, 0x7c, 0x7c, 0x7c, 0x7c, 0x38, 0x38, 0x38, 0x38,
  869. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  870. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x38, 0x38, 0x38, 0x38,
  871. X 0x7c, 0x7c, 0x7c, 0x7c, 0x38, 0x38, 0x38, 0x38, 0x10, 0x10, 0x10, 0x10,
  872. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  873. X 0x10, 0x10, 0x10, 0x10, 0x38, 0x38, 0x38, 0x38, 0x7c, 0x7c, 0x7c, 0x7c,
  874. X 0x38, 0x38, 0x38, 0x38, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
  875. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10,
  876. X 0x38, 0x38, 0x38, 0x38, 0x7c, 0x7c, 0x7c, 0x7c, 0x38, 0x38, 0x38, 0x38,
  877. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00 };
  878. X
  879. X
  880. X#define fill32_width 32
  881. X#define fill32_height 32
  882. Xstatic unsigned char fill32_bits[] = {
  883. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10,
  884. X 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28,
  885. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  886. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x28, 0x28, 0x28, 0x28,
  887. X 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10,
  888. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  889. X 0x10, 0x10, 0x10, 0x10, 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44,
  890. X 0x28, 0x28, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
  891. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10,
  892. X 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28,
  893. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00 };
  894. X
  895. X
  896. X#define fill33_width 32
  897. X#define fill33_height 32
  898. Xstatic unsigned char fill33_bits[] = {
  899. X 0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x7e, 0x7e, 0x42, 0x42, 0x42, 0x42,
  900. X 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
  901. X 0x7e, 0x7e, 0x7e, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  902. X 0x7e, 0x7e, 0x7e, 0x7e, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
  903. X 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x7e, 0x7e, 0x7e, 0x7e,
  904. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x7e, 0x7e,
  905. X 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
  906. X 0x42, 0x42, 0x42, 0x42, 0x7e, 0x7e, 0x7e, 0x7e, 0x00, 0x00, 0x00, 0x00,
  907. X 0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x7e, 0x7e, 0x42, 0x42, 0x42, 0x42,
  908. X 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
  909. X 0x7e, 0x7e, 0x7e, 0x7e, 0x00, 0x00, 0x00, 0x00 };
  910. X
  911. X
  912. X#define fill34_width 32
  913. X#define fill34_height 32
  914. Xstatic unsigned char fill34_bits[] = {
  915. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  916. X 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x80, 0x01, 0xc0, 0x03, 0xc0, 0x03,
  917. X 0xe0, 0x07, 0xe0, 0x07, 0xf0, 0x0f, 0xf0, 0x0f, 0xf0, 0x0f, 0xf0, 0x0f,
  918. X 0xe0, 0x07, 0xe0, 0x07, 0xc0, 0x03, 0xc0, 0x03, 0x80, 0x01, 0x80, 0x01,
  919. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  920. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  921. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x80, 0x01,
  922. X 0xc0, 0x03, 0xc0, 0x03, 0xe0, 0x07, 0xe0, 0x07, 0xf0, 0x0f, 0xf0, 0x0f,
  923. X 0xf0, 0x0f, 0xf0, 0x0f, 0xe0, 0x07, 0xe0, 0x07, 0xc0, 0x03, 0xc0, 0x03,
  924. X 0x80, 0x01, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  925. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
  926. X
  927. X
  928. X#define fill35_width 32
  929. X#define fill35_height 32
  930. Xstatic unsigned char fill35_bits[] = {
  931. X 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  932. X 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x00, 0x00,
  933. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08,
  934. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  935. X 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  936. X 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00,
  937. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0x22,
  938. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  939. X 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  940. X 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x00, 0x00,
  941. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
  942. X
  943. X
  944. X#define fill36_width 32
  945. X#define fill36_height 32
  946. Xstatic unsigned char fill36_bits[] = {
  947. X 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44,
  948. X 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00,
  949. X 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11,
  950. X 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00,
  951. X 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44,
  952. X 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00,
  953. X 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11,
  954. X 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00,
  955. X 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44,
  956. X 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00,
  957. X 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00 };
  958. X
  959. X
  960. X#define fill37_width 32
  961. X#define fill37_height 32
  962. Xstatic unsigned char fill37_bits[] = {
  963. X 0x02, 0x80, 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x20, 0x08, 0x20,
  964. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x40, 0x04, 0x40, 0x04,
  965. X 0x80, 0x02, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x80, 0x02,
  966. X 0x40, 0x04, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10,
  967. X 0x08, 0x20, 0x08, 0x20, 0x00, 0x00, 0x00, 0x00, 0x02, 0x80, 0x02, 0x80,
  968. X 0x01, 0x00, 0x01, 0x00, 0x02, 0x80, 0x02, 0x80, 0x00, 0x00, 0x00, 0x00,
  969. X 0x08, 0x20, 0x08, 0x20, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
  970. X 0x40, 0x04, 0x40, 0x04, 0x80, 0x02, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,
  971. X 0x80, 0x02, 0x80, 0x02, 0x40, 0x04, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00,
  972. X 0x10, 0x10, 0x10, 0x10, 0x08, 0x20, 0x08, 0x20, 0x00, 0x00, 0x00, 0x00,
  973. X 0x02, 0x80, 0x02, 0x80, 0x01, 0x00, 0x01, 0x00 };
  974. X
  975. X
  976. X#define fill38_width 32
  977. X#define fill38_height 32
  978. Xstatic unsigned char fill38_bits[] = {
  979. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  980. X 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10,
  981. X 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00,
  982. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44,
  983. X 0x28, 0x28, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10, 0x28, 0x28, 0x28, 0x28,
  984. X 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  985. X 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28,
  986. X 0x10, 0x10, 0x10, 0x10, 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44,
  987. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  988. X 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10,
  989. X 0x28, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44 };
  990. X
  991. X
  992. X#define fill39_width 32
  993. X#define fill39_height 32
  994. Xstatic unsigned char fill39_bits[] = {
  995. X 0x00, 0x80, 0x00, 0x80, 0x01, 0x40, 0x01, 0x40, 0x02, 0x20, 0x02, 0x20,
  996. X 0x04, 0x10, 0x04, 0x10, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00,
  997. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  998. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  999. X 0x08, 0x08, 0x08, 0x08, 0x04, 0x10, 0x04, 0x10, 0x02, 0x20, 0x02, 0x20,
  1000. X 0x01, 0x40, 0x01, 0x40, 0x00, 0x80, 0x00, 0x80, 0x01, 0x40, 0x01, 0x40,
  1001. X 0x02, 0x20, 0x02, 0x20, 0x04, 0x10, 0x04, 0x10, 0x08, 0x08, 0x08, 0x08,
  1002. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1003. X 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1004. X 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x04, 0x10, 0x04, 0x10,
  1005. X 0x02, 0x20, 0x02, 0x20, 0x01, 0x40, 0x01, 0x40 };
  1006. X
  1007. X
  1008. X#define fill40_width 32
  1009. X#define fill40_height 32
  1010. Xstatic unsigned char fill40_bits[] = {
  1011. X 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04, 0x00, 0x10, 0x00, 0x10, 0x00,
  1012. X 0x40, 0x00, 0x40, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04,
  1013. X 0x00, 0x10, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40, 0x01, 0x00, 0x01, 0x00,
  1014. X 0x04, 0x00, 0x04, 0x00, 0x10, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00,
  1015. X 0x00, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04, 0x00, 0x10, 0x00, 0x10,
  1016. X 0x00, 0x40, 0x00, 0x40, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04, 0x00,
  1017. X 0x10, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x01, 0x00, 0x01,
  1018. X 0x00, 0x04, 0x00, 0x04, 0x00, 0x10, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40,
  1019. X 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04, 0x00, 0x10, 0x00, 0x10, 0x00,
  1020. X 0x40, 0x00, 0x40, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04,
  1021. X 0x00, 0x10, 0x00, 0x10, 0x00, 0x40, 0x00, 0x40 };
  1022. X
  1023. X
  1024. X#define fill41_width 32
  1025. X#define fill41_height 32
  1026. Xstatic unsigned char fill41_bits[] = {
  1027. X 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x40, 0x40,
  1028. X 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00,
  1029. X 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08,
  1030. X 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00,
  1031. X 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
  1032. X 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00,
  1033. X 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x20, 0x20,
  1034. X 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
  1035. X 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04,
  1036. X 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,
  1037. X 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00 };
  1038. X
  1039. X
  1040. Xstatic Pixmap fillpattern[XviG_NR_OF_FILLPATTERNS];
  1041. X
  1042. X
  1043. X
  1044. X/*
  1045. X-- The linestyles ....
  1046. X--
  1047. X--       line 0 :    ----
  1048. X--       line 1 :    --..
  1049. X--       line 2 :    --------..--..
  1050. X--       line 3 :    ------..
  1051. X--       line 4 :    ------------....
  1052. X--       line 5 :    --..--..--..------------..--..--..------------..
  1053. X--       line 6 :    ------------------......------......
  1054. X--       line 7 :    ------......
  1055. X*/
  1056. X
  1057. X
  1058. Xstatic char linestyle[XviG_NR_OF_LINESTYLES][14] =
  1059. X                 { { 4 },                /* This solid linestyle is obsolete */
  1060. X                   { 2, 2 },
  1061. X                   { 8, 2, 2, 2 },
  1062. X                   { 6, 2 },
  1063. X                   { 12, 4 },
  1064. X                   { 2, 2, 2, 2, 2, 2, 12, 2, 2, 2, 2, 2, 12, 2 },
  1065. X                   { 18, 6, 6, 6 },
  1066. X                   { 6, 6 } };
  1067. X
  1068. Xstatic int linestyle_length[XviG_NR_OF_LINESTYLES] =
  1069. X                 { 1,
  1070. X                   2,
  1071. X                   4,
  1072. X                   2,
  1073. X                   2,
  1074. X                   14,
  1075. X                   4,
  1076. X                   2 };
  1077. X
  1078. X
  1079. X#endif  /* __PATTERN_H */
  1080. END_OF_FILE
  1081.   if test 38091 -ne `wc -c <'version_1.1/src/pattern.h'`; then
  1082.     echo shar: \"'version_1.1/src/pattern.h'\" unpacked with wrong size!
  1083.   fi
  1084.   # end of 'version_1.1/src/pattern.h'
  1085. fi
  1086. if test -f 'version_1.1/src/ptext.c' -a "${1}" != "-c" ; then 
  1087.   echo shar: Will not clobber existing file \"'version_1.1/src/ptext.c'\"
  1088. else
  1089.   echo shar: Extracting \"'version_1.1/src/ptext.c'\" \(5777 characters\)
  1090.   sed "s/^X//" >'version_1.1/src/ptext.c' <<'END_OF_FILE'
  1091. X/* File>>> ptext.c
  1092. X--
  1093. X-- %M% -- version %I% (IMEC)            last updated: %E%
  1094. X--
  1095. X-- Copyright (c) 1993
  1096. X-- IMEC vzw
  1097. X-- Kapeldreef 75
  1098. X-- B-3001 LEUVEN
  1099. X-- BELGIUM
  1100. X--
  1101. X-- Author   : A. Demaree
  1102. X--
  1103. X-- Date     : June 23, 1993
  1104. X--
  1105. X-- Function : Routine to draw text by means of polylines.
  1106. X--
  1107. X-- Comment  :
  1108. X--
  1109. X-- Review   :
  1110. X--
  1111. X*/
  1112. X
  1113. X
  1114. X/*------------------------------------------------------------------------------
  1115. X-- Global include files
  1116. X------------------------------------------------------------------------------*/
  1117. X
  1118. X#include <stdlib.h>
  1119. X#include <stdio.h>
  1120. X#include <string.h>
  1121. X#include <math.h>
  1122. X#include <X11/Xlib.h>
  1123. X
  1124. X/*------------------------------------------------------------------------------
  1125. X-- Local include files
  1126. X------------------------------------------------------------------------------*/
  1127. X
  1128. X#include "xviglocal.h"
  1129. X#include "charcodes.h"
  1130. X
  1131. X/*------------------------------------------------------------------------------
  1132. X-- Some macro definitions
  1133. X------------------------------------------------------------------------------*/
  1134. X
  1135. X#define PI  ((double)3.14159265358979323846)
  1136. X#define ROUND(x)  ((int)floor((x) + 0.5))
  1137. X
  1138. X/*------------------------------------------------------------------------------
  1139. X-- Static variable declarations
  1140. X------------------------------------------------------------------------------*/
  1141. X
  1142. Xstatic double t_text[3][2];
  1143. Xstatic XPoint points[16];
  1144. X
  1145. X/*------------------------------------------------------------------------------
  1146. X-- Local function declarations
  1147. X------------------------------------------------------------------------------*/
  1148. X
  1149. Xstatic void get_charmatrix(int x_offset, int y_offset,
  1150. X                           unsigned int width, unsigned int height,
  1151. X                           int rotation);
  1152. Xstatic void transchar(int x, int y,
  1153. X                      int *xt, int *yt);
  1154. Xstatic void drawchar(int c, int offset);
  1155. X
  1156. X/*------------------------------------------------------------------------------
  1157. X--
  1158. X--
  1159. X--
  1160. X------------------------------------------------------------------------------*/
  1161. X
  1162. Xvoid XviG_PolyText(char *contents,
  1163. X                   int x,
  1164. X                   int y,
  1165. X                   unsigned int width,
  1166. X                   unsigned int height,
  1167. X                   int rotation)
  1168. X{
  1169. X  int len, newx, newy, offset, i;
  1170. X
  1171. X  if ((len = (int) strlen(contents)) == 0)
  1172. X    return;
  1173. X
  1174. X  rotation %= 360;
  1175. X  if (rotation < 0)
  1176. X    rotation += 360;
  1177. X
  1178. X  get_charmatrix(x, y, width, height, rotation);
  1179. X
  1180. X  if ((rotation > 90) && (rotation <= 270))
  1181. X  {
  1182. X    transchar(7*len, 4, &newx, &newy);
  1183. X    t_text[0][0] = newx * 1.0;
  1184. X    t_text[0][1] = newy * 1.0;
  1185. X    t_text[1][0] = -t_text[1][0];
  1186. X    t_text[1][1] = -t_text[1][1];
  1187. X    t_text[2][0] = -t_text[2][0];
  1188. X    t_text[2][1] = -t_text[2][1];
  1189. X  }
  1190. X
  1191. X  XSetLineAttributes(XviG_display, XviG_gc,
  1192. X                     XviG_save_linewidth, XviG_save_linestyle,
  1193. X                     CapRound, JoinRound);
  1194. X
  1195. X  for (i = 0, offset = 0; i < len; i++, offset += 7)
  1196. X    drawchar(contents[i], offset);
  1197. X
  1198. X  XSetLineAttributes(XviG_display, XviG_gc,
  1199. X                     XviG_save_linewidth, XviG_save_linestyle,
  1200. X                     CapButt, JoinMiter);
  1201. X}
  1202. X
  1203. X/*------------------------------------------------------------------------------
  1204. X--
  1205. X--
  1206. X--
  1207. X------------------------------------------------------------------------------*/
  1208. X
  1209. Xstatic void get_charmatrix(int x_offset, int y_offset,
  1210. X                           unsigned int width, unsigned int height,
  1211. X                           int rotation)
  1212. X{
  1213. X  double rcos,rsin;
  1214. X
  1215. X  if (rotation == 0)
  1216. X  {
  1217. X    rcos = 1.0;
  1218. X    rsin = 0.0;
  1219. X  }
  1220. X  else
  1221. X  if (rotation == 90)
  1222. X  {
  1223. X    rcos = 0.0;
  1224. X    rsin = 1.0;
  1225. X  }
  1226. X  else
  1227. X  if (rotation == 180)
  1228. X  {
  1229. X    rcos = -1.0;
  1230. X    rsin = 0.0;
  1231. X  }
  1232. X  else
  1233. X  if (rotation == 270)
  1234. X  {
  1235. X    rcos = 0.0;
  1236. X    rsin = -1.0;
  1237. X  }
  1238. X  else
  1239. X  {
  1240. X    rcos = cos((rotation*PI)/180.0);
  1241. X    rsin = sin((rotation*PI)/180.0);
  1242. X  }
  1243. X
  1244. X  t_text[0][0] = x_offset * 1.0;
  1245. X  t_text[0][1] = y_offset * 1.0;
  1246. X  t_text[1][0] =  rcos * (width/7.0);
  1247. X  t_text[1][1] =  rsin * (width/7.0);
  1248. X  t_text[2][0] = -rsin * (height/8.0);
  1249. X  t_text[2][1] =  rcos * (height/8.0);
  1250. X}
  1251. X
  1252. X/*------------------------------------------------------------------------------
  1253. X--
  1254. X--
  1255. X--
  1256. X------------------------------------------------------------------------------*/
  1257. X
  1258. Xstatic void transchar(int x, int y,
  1259. X                      int *xt, int *yt)
  1260. X{
  1261. X  *xt = ROUND(t_text[0][0] + t_text[1][0]*x + t_text[2][0]*y);
  1262. X  *yt = ROUND(t_text[0][1] - t_text[1][1]*x - t_text[2][1]*y);
  1263. X}
  1264. X
  1265. X/*------------------------------------------------------------------------------
  1266. X--
  1267. X--
  1268. X--
  1269. X------------------------------------------------------------------------------*/
  1270. X
  1271. Xstatic void drawchar(int c, int offset)
  1272. X{
  1273. X  int npolys, npoints, charpos, polypos, pointpos, xt, yt;
  1274. X
  1275. X  charpos = charpointer[((c < 32) || (c > 126)) ? 0 : c - 32];
  1276. X
  1277. X  for (npolys = 0, polypos = charpos + 1;
  1278. X       npolys < charcode[charpos];
  1279. X       npolys++, polypos = pointpos)
  1280. X  {
  1281. X    for (npoints = 0, pointpos = polypos + 1;
  1282. X         npoints < charcode[polypos];
  1283. X         npoints++, pointpos += 2)
  1284. X    {
  1285. X      transchar(charcode[pointpos]+offset, charcode[pointpos+1], &xt, &yt);
  1286. X
  1287. X      points[npoints].x = xt;
  1288. X      points[npoints].y = yt;
  1289. X    }
  1290. X
  1291. X    if (charcode[polypos] == 2)
  1292. X    {
  1293. X      XDrawLine(XviG_display, XviG_window, XviG_gc,
  1294. X                (int) points[0].x, (int) points[0].y,
  1295. X                (int) points[1].x, (int) points[1].y);
  1296. X      XDrawLine(XviG_display, XviG_pixmap, XviG_gc,
  1297. X                (int) points[0].x, (int) points[0].y,
  1298. X                (int) points[1].x, (int) points[1].y);
  1299. X    }
  1300. X    else
  1301. X    {
  1302. X      XDrawLines(XviG_display, XviG_window, XviG_gc,
  1303. X                 points, charcode[polypos], CoordModeOrigin);
  1304. X      XDrawLines(XviG_display, XviG_pixmap, XviG_gc,
  1305. X                 points, charcode[polypos], CoordModeOrigin);
  1306. X    }
  1307. X  }
  1308. X}
  1309. END_OF_FILE
  1310.   if test 5777 -ne `wc -c <'version_1.1/src/ptext.c'`; then
  1311.     echo shar: \"'version_1.1/src/ptext.c'\" unpacked with wrong size!
  1312.   fi
  1313.   # end of 'version_1.1/src/ptext.c'
  1314. fi
  1315. echo shar: End of archive 4 \(of 10\).
  1316. cp /dev/null ark4isdone
  1317. MISSING=""
  1318. for I in 1 2 3 4 5 6 7 8 9 10 ; do
  1319.     if test ! -f ark${I}isdone ; then
  1320.     MISSING="${MISSING} ${I}"
  1321.     fi
  1322. done
  1323. if test "${MISSING}" = "" ; then
  1324.     echo You have unpacked all 10 archives.
  1325.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1326.     echo "Merging xvig.ps parts... "
  1327.     cat version_1.1/man/xvig.ps.? > version_1.1/man/xvig.ps
  1328.     rm version_1.1/man/xvig.ps.?
  1329.     echo "Done."
  1330. else
  1331.     echo You still must unpack the following archives:
  1332.     echo "        " ${MISSING}
  1333. fi
  1334. exit 0
  1335. exit 0 # Just in case...
  1336. -- 
  1337.   // chris@Sterling.COM           | Send comp.sources.x submissions to:
  1338. \X/  Amiga - The only way to fly! |    sources-x@sterling.com
  1339.  "It's intuitively obvious to the |
  1340.   most casual observer..."        | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
  1341.