home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / games / volume13 / x4war2 / part01 / bgbitmap.c next >
C/C++ Source or Header  |  1992-08-03  |  15KB  |  357 lines

  1. #include <X11/Xlib.h>
  2. #include <X11/Xutil.h>
  3. #include <X11/Xos.h>
  4. #include <X11/Xatom.h>
  5.  
  6. #include <stdio.h>
  7.  
  8. #include "war.h"
  9.  
  10. Display *display;
  11. int screen_num;
  12. GC gc, undraw_gc;
  13. Pixmap pixmap;
  14.  
  15.  
  16. void main(argc, argv)
  17. int argc;
  18. char **argv;
  19. {
  20.     XFontStruct *font_info;
  21.     XGCValues values;
  22.  
  23.     if ((display = XOpenDisplay(NULL)) == NULL) {
  24.         fprintf(stderr, "cannot open display\n");
  25.         exit(-1);
  26.     }
  27.     screen_num = DefaultScreen(display);
  28.  
  29.     pixmap = XCreatePixmap(display, RootWindow(display, screen_num),
  30.         DIMENSION, DIMENSION, 1);
  31.  
  32.     font_info = XLoadQueryFont(display, "9x15bold");
  33.  
  34.     values.arc_mode = ArcChord;
  35.  
  36.     values.foreground = 0;
  37.     values.background = 1;
  38.     undraw_gc = XCreateGC(display, pixmap, GCForeground | GCBackground |
  39.         GCArcMode, &values);
  40.  
  41.     values.foreground = 1;
  42.     values.background = 0;
  43.  
  44.     values.font = font_info->fid;
  45.     gc = XCreateGC(display, pixmap, GCForeground|GCBackground|GCFont,
  46.         &values);
  47.  
  48.     printf("'war_background.xbm' file will be created at ./bitmaps\n");
  49.     printf("please wait a second...\n");
  50.     draw();
  51.  
  52.     XWriteBitmapFile(display, "war_background", pixmap,
  53.             DIMENSION, DIMENSION, -1, -1);
  54.     system("mv ./war_background ./bitmaps/war_background.xbm");
  55.  
  56.     printf("completed!\n");
  57.  
  58.     XUnloadFont(display, font_info->fid);
  59.     XFreeGC(display, gc);
  60.     XFreeGC(display, undraw_gc);
  61.     XCloseDisplay(display);
  62.     exit(0);
  63. }
  64.  
  65.  
  66.  
  67. draw()
  68. {
  69.     static unsigned char dash_list[] = {10, 10};
  70.     int i, j;
  71.  
  72.     XFillRectangle(display, pixmap, undraw_gc, 0, 0, DIMENSION, DIMENSION);
  73.  
  74.     XDrawString(display, pixmap, gc, 110, 575, "DEATH ANGEL", 11);
  75.     XDrawString(display, pixmap, gc, 695, 628, "NEW GAME", 8);
  76.     XDrawString(display, pixmap, gc, 695, 668, "START WAR", 9);
  77.     XDrawString(display, pixmap, gc, 695, 708, "REDEPLOY", 8);
  78.     XDrawString(display, pixmap, gc, 695, 748, "PEACE", 5);
  79.     XDrawString(display, pixmap, gc, 695, 788, "SURRENDER", 9);
  80.     XDrawString(display, pixmap, gc, 695, 828, "QUIT", 4);
  81.  
  82.     XSetLineAttributes(display, gc, 5, LineOnOffDash, CapButt, JoinMiter);
  83.     XSetDashes(display, gc, 0, dash_list, 2);
  84.  
  85.     XDrawLine(display, pixmap, gc, P3, P1+50, P3, P6-50);
  86.     XDrawLine(display, pixmap, gc, P4, P1+50, P4, P6-50);
  87.     XDrawLine(display, pixmap, gc, P1+50, P3, P6-50, P3);
  88.     XDrawLine(display, pixmap, gc, P1+50, P4, P6-50, P4);
  89.  
  90.     XDrawLine(display, pixmap, gc, P3, P1+50, P4, P1+50);
  91.     XDrawLine(display, pixmap, gc, P3, P2, P4, P2);
  92.     XDrawLine(display, pixmap, gc, P3, P5, P4, P5);
  93.     XDrawLine(display, pixmap, gc, P3, P6-50, P4, P6-50);
  94.  
  95.     XDrawLine(display, pixmap, gc, P1+50, P3, P1+50, P4);
  96.     XDrawLine(display, pixmap, gc, P2, P3, P2, P4);
  97.     XDrawLine(display, pixmap, gc, P5, P3, P5, P4);
  98.     XDrawLine(display, pixmap, gc, P6-50, P3, P6-50, P4);
  99.  
  100.     XDrawLine(display, pixmap, gc, P2, P3+100, P5, P3+100);
  101.     XDrawLine(display, pixmap, gc, P3+100, P2, P3+100, P5);
  102.  
  103.     XDrawArc(display, pixmap, gc, P2-50, P2-50, 100, 100, 0, -90*64);
  104.     XDrawArc(display, pixmap, gc, P4, P2-50, 100, 100, 180*64, 90*64);
  105.     XDrawArc(display, pixmap, gc, P2-50, P4, 100, 100, 0, 90*64);
  106.     XDrawArc(display, pixmap, gc, P4, P4, 100, 100, 90*64, 90*64);
  107.  
  108.     XSetLineAttributes(display, gc, 1, LineSolid, CapButt, JoinRound);
  109.  
  110.     XDrawArc(display, pixmap, gc, P2-52, P2-52, 104, 104, 0, -90*64);
  111.     XDrawArc(display, pixmap, gc, P2-48, P2-48,  96,  96, 0, -90*64);
  112.     XDrawArc(display, pixmap, gc, P4-2, P2-52, 104, 104, 180*64, 90*64);
  113.     XDrawArc(display, pixmap, gc, P4+2, P2-48,  96,  96, 180*64, 90*64);
  114.     XDrawArc(display, pixmap, gc, P2-52, P4-2, 104, 104, 0, 90*64);
  115.     XDrawArc(display, pixmap, gc, P2-48, P4+2,  96,  96, 0, 90*64);
  116.     XDrawArc(display, pixmap, gc, P4-2, P4-2, 104, 104, 90*64, 90*64);
  117.     XDrawArc(display, pixmap, gc, P4+2, P4+2,  96,  96, 90*64, 90*64);
  118.  
  119.     XDrawLine(display, pixmap, gc, P3-2, P1+50, P3-2, P6-50);
  120.     XDrawLine(display, pixmap, gc, P3+2, P1+50, P3+2, P6-50);
  121.     XDrawLine(display, pixmap, gc, P4-2, P1+50, P4-2, P6-50);
  122.     XDrawLine(display, pixmap, gc, P4+2, P1+50, P4+2, P6-50);
  123.     XDrawLine(display, pixmap, gc, P1+50, P3-2, P6-50, P3-2);
  124.     XDrawLine(display, pixmap, gc, P1+50, P3+2, P6-50, P3+2);
  125.     XDrawLine(display, pixmap, gc, P1+50, P4-2, P6-50, P4-2);
  126.     XDrawLine(display, pixmap, gc, P1+50, P4+2, P6-50, P4+2);
  127.  
  128.     XDrawLine(display, pixmap, gc, P3, P1+48, P4, P1+48);
  129.     XDrawLine(display, pixmap, gc, P3, P1+52, P4, P1+52);
  130.     XDrawLine(display, pixmap, gc, P3, P2-2, P4, P2-2);
  131.     XDrawLine(display, pixmap, gc, P3, P2+2, P4, P2+2);
  132.     XDrawLine(display, pixmap, gc, P3, P5-2, P4, P5-2);
  133.     XDrawLine(display, pixmap, gc, P3, P5+2, P4, P5+2);
  134.     XDrawLine(display, pixmap, gc, P3, P6-52, P4, P6-52);
  135.     XDrawLine(display, pixmap, gc, P3, P6-48, P4, P6-48);
  136.  
  137.     XDrawLine(display, pixmap, gc, P1+48, P3, P1+48, P4);
  138.     XDrawLine(display, pixmap, gc, P1+52, P3, P1+52, P4);
  139.     XDrawLine(display, pixmap, gc, P2-2, P3, P2-2, P4);
  140.     XDrawLine(display, pixmap, gc, P2+2, P3, P2+2, P4);
  141.     XDrawLine(display, pixmap, gc, P5-2, P3, P5-2, P4);
  142.     XDrawLine(display, pixmap, gc, P5+2, P3, P5+2, P4);
  143.     XDrawLine(display, pixmap, gc, P6-48, P3, P6-48, P4);
  144.     XDrawLine(display, pixmap, gc, P6-52, P3, P6-52, P4);
  145.  
  146.     XDrawLine(display, pixmap, gc, P2, P3+98, P5, P3+98);
  147.     XDrawLine(display, pixmap, gc, P2, P3+102, P5, P3+102);
  148.     XDrawLine(display, pixmap, gc, P3+98, P2, P3+98, P5);
  149.     XDrawLine(display, pixmap, gc, P3+102, P2, P3+102, P5);
  150.  
  151.     for (i=RIP_Y+50; i<RIP_Y+RIP_DIMENSION; i += 50)
  152.     XDrawLine(display, pixmap, gc, P1, i, P1+RIP_DIMENSION, i);
  153.     for (i=P1+50; i<P1+RIP_DIMENSION; i += 50)
  154.     XDrawLine(display, pixmap, gc, i, RIP_Y, i, RIP_Y+RIP_DIMENSION);
  155.  
  156.     for (i=P3+50; i<P4; i += 50)
  157.     XDrawLine(display, pixmap, gc, i, P5, i, P6);
  158.     for (i=P5+50; i<P6-50; i += 50)
  159.     XDrawLine(display, pixmap, gc, P3, i, P4, i);
  160.     XDrawLine(display, pixmap, gc, P3, P5, P4, P6-50);
  161.     XDrawLine(display, pixmap, gc, P3, P5+100, P3+100, P6-50);
  162.     XDrawLine(display, pixmap, gc, P3+100, P5, P4, P5+100);
  163.     XDrawLine(display, pixmap, gc, P3, P6-50, P4, P5);
  164.     XDrawLine(display, pixmap, gc, P3, P5+100, P3+100, P5);
  165.     XDrawLine(display, pixmap, gc, P3+100, P6-50, P4, P5+100);
  166.  
  167.     for (i=P3+50; i<P4; i += 50)
  168.     XDrawLine(display, pixmap, gc, i, P1, i, P2);
  169.     for (i=P1+100; i<P2; i += 50)
  170.     XDrawLine(display, pixmap, gc, P3, i, P4, i);
  171.     XDrawLine(display, pixmap, gc, P3, P1+50, P4, P2);
  172.     XDrawLine(display, pixmap, gc, P3, P2-100, P3+100, P2);
  173.     XDrawLine(display, pixmap, gc, P3+100, P1+50, P4, P2-100);
  174.     XDrawLine(display, pixmap, gc, P3, P2-100, P3+100, P1+50);
  175.     XDrawLine(display, pixmap, gc, P3, P2, P4, P1+50);
  176.     XDrawLine(display, pixmap, gc, P3+100, P2, P4, P2-100);
  177.  
  178.     for (i=P3+50; i<P4; i += 50)
  179.     XDrawLine(display, pixmap, gc, P1, i, P2, i);
  180.     for (i=P1+100; i<P2; i += 50)
  181.     XDrawLine(display, pixmap, gc, i, P3, i, P4);
  182.     XDrawLine(display, pixmap, gc, P1+50, P3+100, P2-100, P4);
  183.     XDrawLine(display, pixmap, gc, P1+50, P3, P2, P4);
  184.     XDrawLine(display, pixmap, gc, P2-100, P3, P2, P3+100);
  185.     XDrawLine(display, pixmap, gc, P1+50, P3+100, P2-100, P3);
  186.     XDrawLine(display, pixmap, gc, P2, P3, P1+50, P4);
  187.     XDrawLine(display, pixmap, gc, P2-100, P4, P2, P3+100);
  188.  
  189.     for (i=P3+50; i<P4; i += 50)
  190.     XDrawLine(display, pixmap, gc, P5, i, P6, i);
  191.     for (i=P5+50; i<P6-50; i += 50)
  192.     XDrawLine(display, pixmap, gc, i, P3, i, P4);
  193.     XDrawLine(display, pixmap, gc, P5, P3+100, P5+100, P4);
  194.     XDrawLine(display, pixmap, gc, P5, P3, P6-50, P4);
  195.     XDrawLine(display, pixmap, gc, P5+100, P3, P6-50, P3+100);
  196.     XDrawLine(display, pixmap, gc, P5, P3+100, P5+100, P3);
  197.     XDrawLine(display, pixmap, gc, P5, P4, P6-50, P3);
  198.     XDrawLine(display, pixmap, gc, P5+100, P4, P6-50, P3+100);
  199.  
  200.     XSetLineAttributes(display, gc, 3, LineSolid, CapButt, JoinRound);
  201.  
  202.     XDrawRectangle(display, pixmap, gc, TALK_L_X,TALK_Y,TALK_WIDTH,TALK_HEIGHT);
  203.     XDrawRectangle(display, pixmap, gc, TALK_L_X, TALK_Y+90,
  204.         TALK_WIDTH, TALK_HEIGHT);
  205.     XDrawRectangle(display, pixmap, gc, TALK_R_X,TALK_Y,TALK_WIDTH,TALK_HEIGHT);
  206.     XDrawRectangle(display, pixmap, gc, TALK_R_X, TALK_Y+90,
  207.         TALK_WIDTH, TALK_HEIGHT);
  208.  
  209.     XDrawRectangle(display, pixmap, gc, P1, P1, 66, 66);
  210.     XDrawRectangle(display, pixmap, gc, MSG_BOX_X, MSG_BOX_Y,
  211.         MSG_WIDTH, MSG_HEIGHT);
  212.  
  213.     XDrawLine(display, pixmap, gc, P3-1, P1-1, P3-1, P1+50);
  214.     XDrawLine(display, pixmap, gc, P4+1, P1-1, P4+1, P1+50);
  215.     XDrawLine(display, pixmap, gc, P3-1, P1-1, P4+1, P1-1);
  216.  
  217.     XDrawLine(display, pixmap, gc, P3-1, P6-50, P3-1, P6+1);
  218.     XDrawLine(display, pixmap, gc, P4+1, P6-50, P4+1, P6+1);
  219.     XDrawLine(display, pixmap, gc, P3-1, P6+1, P4+1, P6+1);
  220.  
  221.     XDrawLine(display, pixmap, gc, P6-50, P3-1, P6+1, P3-1);
  222.     XDrawLine(display, pixmap, gc, P6-50, P4+1, P6+1, P4+1);
  223.     XDrawLine(display, pixmap, gc, P6+1, P3-1, P6+1, P4+1);
  224.  
  225.     XDrawLine(display, pixmap, gc, P1-1, P3-1, P1+50, P3-1);
  226.     XDrawLine(display, pixmap, gc, P1-1, P4+1, P1+50, P4+1);
  227.     XDrawLine(display, pixmap, gc, P1-1, P3-1, P1-1, P4+1);
  228.  
  229.     XDrawRectangle(display, pixmap, gc, P1, RIP_Y, 
  230.     RIP_DIMENSION-1,RIP_DIMENSION-1);
  231.  
  232.     for (i=NEW_Y; i<=NEW_Y+BUTTON_DIS*5; i += BUTTON_DIS)
  233.     XDrawRectangle(display, pixmap, gc, BUTTON_X, i,
  234.         BUTTON_WIDTH, BUTTON_HEIGHT);
  235.  
  236.     XSetLineAttributes(display, gc, 2, LineSolid, CapButt, JoinRound);
  237.  
  238.     XFillArc(display, pixmap, undraw_gc, P3+30, P1+80, 40, 40, 0, 360*64);
  239.     XDrawArc(display, pixmap, gc, P3+30, P1+80, 40, 40, 0, 360*64);
  240.     XFillArc(display, pixmap, undraw_gc, P4-70, P1+80, 40, 40, 0, 360*64);
  241.     XDrawArc(display, pixmap, gc, P4-70, P1+80, 40, 40, 0, 360*64);
  242.     XFillArc(display, pixmap, undraw_gc, P3+80, P2-120, 40, 40, 0, 360*64);
  243.     XDrawArc(display, pixmap, gc, P3+80, P2-120, 40, 40, 0, 360*64);
  244.     XFillArc(display, pixmap, undraw_gc, P3+30, P2-70, 40, 40, 0, 360*64);
  245.     XDrawArc(display, pixmap, gc, P3+30, P2-70, 40, 40, 0, 360*64);
  246.     XFillArc(display, pixmap, undraw_gc, P4-70, P2-70, 40, 40, 0, 360*64);
  247.     XDrawArc(display, pixmap, gc, P4-70, P2-70, 40, 40, 0, 360*64);
  248.  
  249.     XFillArc(display, pixmap, undraw_gc, P5+30, P3+30, 40, 40, 0, 360*64);
  250.     XDrawArc(display, pixmap, gc, P5+30, P3+30, 40, 40, 0, 360*64);
  251.     XFillArc(display, pixmap, undraw_gc, P5+30, P4-70, 40, 40, 0, 360*64);
  252.     XDrawArc(display, pixmap, gc, P5+30, P4-70, 40, 40, 0, 360*64);
  253.     XFillArc(display, pixmap, undraw_gc, P5+80, P3+80, 40, 40, 0, 360*64);
  254.     XDrawArc(display, pixmap, gc, P5+80, P3+80, 40, 40, 0, 360*64);
  255.     XFillArc(display, pixmap, undraw_gc, P6-120, P3+30, 40, 40, 0, 360*64);
  256.     XDrawArc(display, pixmap, gc, P6-120, P3+30, 40, 40, 0, 360*64);
  257.     XFillArc(display, pixmap, undraw_gc, P6-120, P4-70, 40, 40, 0, 360*64);
  258.     XDrawArc(display, pixmap, gc, P6-120, P4-70, 40, 40, 0, 360*64);
  259.  
  260.     XFillArc(display, pixmap, undraw_gc, P1+80, P3+30, 40, 40, 0, 360*64);
  261.     XDrawArc(display, pixmap, gc, P1+80, P3+30, 40, 40, 0, 360*64);
  262.     XFillArc(display, pixmap, undraw_gc, P1+80, P4-70, 40, 40, 0, 360*64);
  263.     XDrawArc(display, pixmap, gc, P1+80, P4-70, 40, 40, 0, 360*64);
  264.     XFillArc(display, pixmap, undraw_gc, P1+130, P3+80, 40, 40, 0, 360*64);
  265.     XDrawArc(display, pixmap, gc, P1+130, P3+80, 40, 40, 0, 360*64);
  266.     XFillArc(display, pixmap, undraw_gc, P2-70, P3+30, 40, 40, 0, 360*64);
  267.     XDrawArc(display, pixmap, gc, P2-70, P3+30, 40, 40, 0, 360*64);
  268.     XFillArc(display, pixmap, undraw_gc, P2-70, P4-70, 40, 40, 0, 360*64);
  269.     XDrawArc(display, pixmap, gc, P2-70, P4-70, 40, 40, 0, 360*64);
  270.  
  271.     XFillArc(display, pixmap, undraw_gc, P3+30, P5+30, 40, 40, 0, 360*64);
  272.     XDrawArc(display, pixmap, gc, P3+30, P5+30, 40, 40, 0, 360*64);
  273.     XFillArc(display, pixmap, undraw_gc, P3+30, P6-120, 40, 40, 0, 360*64);
  274.     XDrawArc(display, pixmap, gc, P3+30, P6-120, 40, 40, 0, 360*64);
  275.     XFillArc(display, pixmap, undraw_gc, P3+80, P5+80, 40, 40, 0, 360*64);
  276.     XDrawArc(display, pixmap, gc, P3+80, P5+80, 40, 40, 0, 360*64);
  277.     XFillArc(display, pixmap, undraw_gc, P4-70, P5+30, 40, 40, 0, 360*64);
  278.     XDrawArc(display, pixmap, gc, P4-70, P5+30, 40, 40, 0, 360*64);
  279.     XFillArc(display, pixmap, undraw_gc, P4-70, P6-120, 40, 40, 0, 360*64);
  280.     XDrawArc(display, pixmap, gc, P4-70, P6-120, 40, 40, 0, 360*64);
  281.  
  282.     for (i=P3-15; i<P4; i += 100)
  283.       for (j=P3-15; j<P4; j += 100) {
  284.     XFillRectangle(display, pixmap, undraw_gc, i, j, 30, 30);
  285.     XDrawRectangle(display, pixmap, gc, i, j, 29, 29);
  286.     }
  287.  
  288.     for (i=P3-20; i<P4; i += 50)
  289.       for (j=P5-10; j<P6; j += 50)
  290.     if (i==P3+30 && j==P5+40 || i==P4-70 && j==P5+40 ||
  291.         i==P3+80 && j==P5+90 ||
  292.         i==P3+30 && j==P6-110 || i==P4-70 && j==P6-110 )
  293.         ;
  294.     else {
  295.         XFillRectangle(display, pixmap, undraw_gc, i, j, 40, 20);
  296.         XDrawRectangle(display, pixmap, gc, i, j, 40, 20);
  297.     }
  298.  
  299.     for (i=P3-20; i<P4; i += 50)
  300.       for (j=P1-10; j<P2; j += 50)
  301.     if (i==P3+30 && j==P1+90 || i==P4-70 && j==P1+90 ||
  302.         i==P3+80 && j==P2-110 ||
  303.         i==P3+30 && j==P2-60 || i==P4-70 && j==P2-60 )
  304.         ;
  305.     else {
  306.         XFillRectangle(display, pixmap, undraw_gc, i, j, 40, 20);
  307.         XDrawRectangle(display, pixmap, gc, i, j, 40, 20);
  308.     }
  309.  
  310.     for (i=P1-10; i<P2; i += 50)
  311.       for (j=P3-20; j<P4; j += 50)
  312.     if (i==P1+90 && j==P3+30 || i==P2-60 && j==P3+30 ||
  313.         i==P2-110 && j==P3+80 ||
  314.         i==P1+90 && j==P4-70 || i==P2-60 && j==P4-70)
  315.         ;
  316.     else {
  317.         XFillRectangle(display, pixmap, undraw_gc, i, j, 20, 40);
  318.         XDrawRectangle(display, pixmap, gc, i, j, 20, 40);
  319.     }
  320.  
  321.     for (i=P5-10; i<P6; i += 50)
  322.       for (j=P3-20; j<P4; j += 50)
  323.     if (i==P5+40 && j==P3+30 || i==P6-110 && j==P3+30 ||
  324.         i==P5+90 && j==P3+80 ||
  325.         i==P5+40 && j==P4-70 || i==P6-110 && j==P4-70)
  326.         ;
  327.     else {
  328.         XFillRectangle(display, pixmap, undraw_gc, i, j, 20, 40);
  329.         XDrawRectangle(display, pixmap, gc, i, j, 20, 40);
  330.     }
  331.  
  332.     XFillArc(display, pixmap, undraw_gc, P3+35, P1-14, 30, 30, 210*64, 120*64);
  333.     XDrawArc(display, pixmap, gc, P3+35, P1-14, 30, 30, 215*64, 110*64);
  334.     XFillArc(display, pixmap, undraw_gc, P4-65, P1-14, 30, 30, 210*64, 120*64);
  335.     XDrawArc(display, pixmap, gc, P4-65, P1-14, 30, 30, 215*64, 110*64);
  336.  
  337.     XFillArc(display, pixmap, undraw_gc, P3+35, P6-16, 30, 30, 30*64, 120*64);
  338.     XDrawArc(display, pixmap, gc, P3+35, P6-16, 30, 30, 35*64, 110*64);
  339.     XFillArc(display, pixmap, undraw_gc, P4-65, P6-16, 30, 30, 30*64, 120*64);
  340.     XDrawArc(display, pixmap, gc, P4-65, P6-16, 30, 30, 35*64, 110*64);
  341.  
  342.     XFillArc(display, pixmap, undraw_gc, P1-14, P3+35, 30, 30, 60*64, -120*64);
  343.     XDrawArc(display, pixmap, gc, P1-14, P3+35, 30, 30, 55*64, -110*64);
  344.     XFillArc(display, pixmap, undraw_gc, P1-14, P4-65, 30, 30, 60*64, -120*64);
  345.     XDrawArc(display, pixmap, gc, P1-14, P4-65, 30, 30, 55*64, -110*64);
  346.  
  347.     XFillArc(display, pixmap, undraw_gc, P6-16, P3+35, 30, 30, 120*64, 120*64);
  348.     XDrawArc(display, pixmap, gc, P6-16, P3+35, 30, 30, 125*64, 110*64);
  349.     XFillArc(display, pixmap, undraw_gc, P6-16, P4-65, 30, 30, 120*64, 120*64);
  350.     XDrawArc(display, pixmap, gc, P6-16, P4-65, 30, 30, 125*64, 110*64);
  351. }
  352.  
  353.  
  354.  
  355.  
  356.  
  357.