home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / games / volume1 / sidtool / patch2 < prev    next >
Internet Message Format  |  1987-05-22  |  32KB

  1. Path: seismo!husc6!mit-eddie!uw-beaver!tektronix!tekgen!tekred!games-request
  2. From: games-request@tekred.TEK.COM
  3. Newsgroups: comp.sources.games
  4. Subject: v01i024:  sidtool - pacman game for Suns, Patch2
  5. Message-ID: <1236@tekred.TEK.COM>
  6. Date: 22 May 87 18:37:53 GMT
  7. Sender: billr@tekred.TEK.COM
  8. Lines: 984
  9. Approved: billr@tekred.TEK.COM
  10.  
  11. Submitted by: Rich Burridge <munnari!sunk.oz!richb@seismo.css.gov>
  12. Comp.sources.games: Volume 1, Issue 24
  13. Archive-name: sidtool/Patch2
  14.  
  15.  
  16.     [Before you flood my mailbox asking about Patch1, please
  17.      remember that the version posted to comp.sources.games
  18.      already had Patch1 applied before it was posted.  -br]
  19.  
  20. This is official patch #2 for sidtool. This patch does the following:
  21.  
  22.   +Bumps the patchlevel to 2.
  23.   +Correctly resizes function key string array values in sid_stuff.c
  24.   +Now uses perror for error conditions and exits with a positive number.
  25.   +Fcloses the help file each time (was a problem in demomode).
  26.   +Include code for the joystick interface.
  27.   +Uses the default font if screen.r.14 is not available.
  28.   +Finally fixes the function key reset problem (hopefully).
  29.   +Tries to smooth out the speed of the game.
  30.   +Move autoplay score to player 1's score position.
  31.   +Displays direction icon at top of maze.
  32.  
  33. To use the mouse as a joystick, simply move the mouse in the
  34. direction you want to go. The right hand button of the mouse can
  35. also be used to stop and start the game (^S / ^Q).
  36.  
  37. It an attempt to smooth out the speed this might means some adjusting on
  38. other machines besides the 3/50, on which sidtool was tested.
  39.  
  40.     Rich.
  41.  
  42. Rich Burridge,            JANET richb%sunk.oz@uk.ac.ucl.cs
  43. ACSnet  richb@sunk.oz     UUCP {seismo,hplabs,ukc}!munnari!sunk.oz!richb
  44. PHONE: +61 3 811 9927     ARPAnet richb%sunk.oz@seismo.css.gov
  45. MAIL: Sun Microsystems, 123 Camberwell Rd, Hawthorn, VICTORIA 3122, AUST
  46.  
  47.  
  48. ------CUT HERE------CUT HERE------CUT HERE------
  49. *** patchlevel.h.old    Thu May 21 06:45:45 1987
  50. --- patchlevel.h    Thu May 21 06:48:05 1987
  51. ***************
  52. *** 1 ****
  53. ! #define  PATCHLEVEL  1
  54. --- 1 ----
  55. ! #define  PATCHLEVEL  2
  56. *** Makefile.old    Thu May 21 08:55:48 1987
  57. --- Makefile    Thu May 21 13:01:57 1987
  58. ***************
  59. *** 14,19 ****
  60. --- 14,21 ----
  61.   OBJS            = sid_blt.o sid_main.o sid_stuff.o sid_sun.o
  62.   SRCS            = sid_blt.c sid_main.c sid_stuff.c sid_sun.c
  63.   HDRS            = bltstuff.h sidtool.h
  64. + ICONS        = up_arrow.icon down_arrow.icon left_arrow.icon right_arrow.icon \
  65. +           sidtool.icon
  66.   LIBS            = -lsuntool -lsunwindow -lpixrect
  67.   
  68.   all:            sidtool
  69. ***************
  70. *** 49,54 ****
  71.           cc $(LDFLAGS) -o sidtool $(OBJS) $(LIBS)
  72.   
  73.   sid_blt.o:      sid_blt.c $(HDRS)
  74. ! sid_main.o:     sid_main.c $(HDRS)
  75.   sid_stuff.o:    sid_stuff.c $(HDRS)
  76.   sid_sun.o:      sid_sun.c $(HDRS)
  77. --- 51,56 ----
  78.           cc $(LDFLAGS) -o sidtool $(OBJS) $(LIBS)
  79.   
  80.   sid_blt.o:      sid_blt.c $(HDRS)
  81. ! sid_main.o:     sid_main.c $(HDRS) $(ICONS)
  82.   sid_stuff.o:    sid_stuff.c $(HDRS)
  83.   sid_sun.o:      sid_sun.c $(HDRS)
  84. *** sid_blt.c.old    Thu May 21 06:46:08 1987
  85. --- sid_blt.c    Thu May 21 13:15:31 1987
  86. ***************
  87. *** 4,9 ****
  88. --- 4,10 ----
  89.    *  Various routines that do "rasterop" type graphics used by sidtool.
  90.    *
  91.    *  Written by Rich Burridge - SUN Microsystems Australia (Melbourne).
  92. +  *  Joystick interface and various bug fixes by Dan Heller
  93.    *
  94.    *  Version 2.1.  -  April 1987.
  95.    *
  96. ***************
  97. *** 211,217 ****
  98.           drawbox(x,y) ;
  99.         else if (maze[x][y] == 'x') walls[x+2][y] = 1 ;   /* Borders. */
  100.    
  101. !   PPAUSE(pausetime*30) ;
  102.     BLT_SCRN(XBASE-(SQUARE/2)-2,YBASE-(SQUARE/2)-2,
  103.                     SQUARE*(XSIZE+1)+6,SQUARE*(YSIZE+1)+6,RINV) ;
  104.     fixexits() ;
  105. --- 212,218 ----
  106.           drawbox(x,y) ;
  107.         else if (maze[x][y] == 'x') walls[x+2][y] = 1 ;   /* Borders. */
  108.    
  109. !   PPAUSE(pausetime*10) ;
  110.     BLT_SCRN(XBASE-(SQUARE/2)-2,YBASE-(SQUARE/2)-2,
  111.                     SQUARE*(XSIZE+1)+6,SQUARE*(YSIZE+1)+6,RINV) ;
  112.     fixexits() ;
  113. ***************
  114. *** 220,231 ****
  115.       for (x = 1; x <= XSIZE; x++)
  116.         if (dots[player][x+1][y] == SMALLDOT)
  117.           {
  118. !           PPAUSE(pausetime*5) ;
  119.             drawdot(x,y,SMALLDOT) ;
  120.           }
  121.         else if (dots[player][x+1][y] == BIGDOT)
  122.           {
  123. !           PPAUSE(pausetime*5) ;
  124.             drawdot(x,y,BIGDOT) ;
  125.           }
  126.   
  127. --- 221,232 ----
  128.       for (x = 1; x <= XSIZE; x++)
  129.         if (dots[player][x+1][y] == SMALLDOT)
  130.           {
  131. !           PPAUSE(pausetime) ;
  132.             drawdot(x,y,SMALLDOT) ;
  133.           }
  134.         else if (dots[player][x+1][y] == BIGDOT)
  135.           {
  136. !           PPAUSE(pausetime) ;
  137.             drawdot(x,y,BIGDOT) ;
  138.           }
  139.   
  140. ***************
  141. *** 242,248 ****
  142.   
  143.     for (x = 1; x <= numcir[player]; x++)
  144.       {
  145. !       PPAUSE(pausetime*30) ;
  146.         BLT_MEM_TO_SCRN(30+(x-1)*60,20,50,50,RXOR,circles[RIGHT][0],0,0) ;
  147.       }
  148.   
  149. --- 243,249 ----
  150.   
  151.     for (x = 1; x <= numcir[player]; x++)
  152.       {
  153. !       PPAUSE(pausetime*10) ;
  154.         BLT_MEM_TO_SCRN(30+(x-1)*60,20,50,50,RXOR,circles[RIGHT][0],0,0) ;
  155.       }
  156.   
  157. ***************
  158. *** 272,278 ****
  159.     clear_screen() ;
  160.     dohelp() ;
  161.     WRITELN(5,860,"Type DEL to begin") ;
  162. !   for (i = 0; i < 100; i++) LONGPAUSE() ;
  163.   
  164.     newbugs(0) ;
  165.     UNTRANSPT(130,350,dotx,doty) ;
  166. --- 273,279 ----
  167.     clear_screen() ;
  168.     dohelp() ;
  169.     WRITELN(5,860,"Type DEL to begin") ;
  170. !   for (i = 0; i < 6; i++) LONGPAUSE() ;
  171.   
  172.     newbugs(0) ;
  173.     UNTRANSPT(130,350,dotx,doty) ;
  174. ***************
  175. *** 301,306 ****
  176. --- 302,308 ----
  177.   {
  178.     int g ;
  179.   
  180. +   PPAUSE(pausetime) ;
  181.     if (movei % 8) cirx-- ;
  182.     drawcir(circles[LEFT][inc],cirx,ciry) ;
  183.     if (movei % 4 == 0) inc = (inc + 1) % 4 ;
  184. ***************
  185. *** 336,342 ****
  186.   {
  187.     int g,i ;
  188.   
  189. !    PPAUSE(8*movex) ;
  190.      if (movei % 26) cirx++ ;
  191.      drawcir(circles[RIGHT][inc],cirx,ciry) ;
  192.      if (movei % 4 == 0) inc = (inc + 1) % 4 ;
  193. --- 338,344 ----
  194.   {
  195.     int g,i ;
  196.   
  197. !    PPAUSE(pausetime * movex / 2) ;
  198.      if (movei % 26) cirx++ ;
  199.      drawcir(circles[RIGHT][inc],cirx,ciry) ;
  200.      if (movei % 4 == 0) inc = (inc + 1) % 4 ;
  201. ***************
  202. *** 351,357 ****
  203.                bugs[g].eyesonly = 1 ;
  204.                SPRINTF(buffer,"%1d",movej) ;
  205.                WRITELN(bugs[g].scrx-20,440,buffer) ;
  206. !              for (i = 0; i < 60; i++) LONGPAUSE() ;
  207.                SPRINTF(buffer,"%1d",movej) ;
  208.                WRITELN(bugs[g].scrx-20,440,buffer) ;
  209.                movej *= 2 ;
  210. --- 353,359 ----
  211.                bugs[g].eyesonly = 1 ;
  212.                SPRINTF(buffer,"%1d",movej) ;
  213.                WRITELN(bugs[g].scrx-20,440,buffer) ;
  214. !              LONGPAUSE() ;
  215.                SPRINTF(buffer,"%1d",movej) ;
  216.                WRITELN(bugs[g].scrx-20,440,buffer) ;
  217.                movej *= 2 ;
  218. ***************
  219. *** 362,368 ****
  220.     if (++movei > 665)
  221.       {
  222.         SCHRFUNC(RRPL) ;
  223. !       for (i = 0; i < 100; i++) LONGPAUSE() ;
  224.         credits = 0 ;
  225.         progstate = INITGAME ;
  226.       }
  227. --- 364,370 ----
  228.     if (++movei > 665)
  229.       {
  230.         SCHRFUNC(RRPL) ;
  231. !       LONGPAUSE() ;
  232.         credits = 0 ;
  233.         progstate = INITGAME ;
  234.       }
  235. ***************
  236. *** 387,402 ****
  237.   
  238.         BLT_MEM_TO_SCRN(x,y,45,45,RRPL,bugpics[g][0],0,0) ;
  239.         BLT_MEM_TO_SCRN(x,y,45,21,RXOR,eyes[g],0,0) ;
  240. !       for (i = 0; i < 40; i++) LONGPAUSE() ;
  241.         SPRINTF(buffer,"- %s",names[g]) ;
  242.         WRITELN(x+60,y+25,buffer) ;
  243. !       for (i = 0; i < 40; i++) LONGPAUSE() ;
  244.       }
  245.   
  246.     if ((fn = fopen(h_name,"r")) == NULL)
  247.       {
  248. !       FPRINTF(stderr,"\nsidtool: can't open %s\n",h_name) ;
  249. !       exit(-1) ;
  250.       }
  251.     x = 105 ;
  252.     y = 465 ;
  253. --- 389,404 ----
  254.   
  255.         BLT_MEM_TO_SCRN(x,y,45,45,RRPL,bugpics[g][0],0,0) ;
  256.         BLT_MEM_TO_SCRN(x,y,45,21,RXOR,eyes[g],0,0) ;
  257. !       LONGPAUSE() ;
  258.         SPRINTF(buffer,"- %s",names[g]) ;
  259.         WRITELN(x+60,y+25,buffer) ;
  260. !       LONGPAUSE() ;
  261.       }
  262.   
  263.     if ((fn = fopen(h_name,"r")) == NULL)
  264.       {
  265. !       perror(h_name) ;
  266. !       exit(1) ;
  267.       }
  268.     x = 105 ;
  269.     y = 465 ;
  270. ***************
  271. *** 406,411 ****
  272. --- 408,414 ----
  273.         WRITELN(x,i*15+y,line) ;
  274.         i++ ;
  275.       }
  276. +   FCLOSE(fn) ;
  277.     if (!autoplay) make_control_panel() ;
  278.     if (!autoplay) display_settings() ;
  279.   }
  280. ***************
  281. *** 498,503 ****
  282. --- 501,507 ----
  283.               }
  284.           }    
  285.       }    
  286. +   draw_joystick(curdir) ;
  287.     if (checkcollision(cirmx,cirmy,&g)) handlecollision(&bugs[g]) ;
  288.   }
  289.   
  290. ***************
  291. *** 553,559 ****
  292.         oldcy = posy ;
  293.         PPAUSE(pausetime*70) ;
  294.       } 
  295. !   for (i = 0; i < 80; i++) LONGPAUSE() ;
  296.   }
  297.   
  298.   
  299. --- 557,563 ----
  300.         oldcy = posy ;
  301.         PPAUSE(pausetime*70) ;
  302.       } 
  303. !   LONGPAUSE() ;
  304.   }
  305.   
  306.   
  307. ***************
  308. *** 567,573 ****
  309.   {
  310.     int x,y,t ;
  311.   
  312. !   PPAUSE(pausetime*30) ;
  313.     for (y = 1; y <= YSIZE; y++)
  314.       if (maze[0][y] == ' ')
  315.         {
  316. --- 571,577 ----
  317.   {
  318.     int x,y,t ;
  319.   
  320. !   PPAUSE(pausetime*10) ;
  321.     for (y = 1; y <= YSIZE; y++)
  322.       if (maze[0][y] == ' ')
  323.         {
  324. ***************
  325. *** 584,590 ****
  326.           BLT_SCRN(3,t-2-SQUARE/2,XBASE-(SQUARE/2)-5,SQUARE*2+6,RINV) ;
  327.         }
  328.   
  329. !   PPAUSE(pausetime*30) ;
  330.     for (y = 1; y <= YSIZE; y++)
  331.       if (maze[XSIZE+1][y] == ' ')
  332.         {
  333. --- 588,594 ----
  334.           BLT_SCRN(3,t-2-SQUARE/2,XBASE-(SQUARE/2)-5,SQUARE*2+6,RINV) ;
  335.         }
  336.   
  337. !   PPAUSE(pausetime*10) ;
  338.     for (y = 1; y <= YSIZE; y++)
  339.       if (maze[XSIZE+1][y] == ' ')
  340.         {
  341. ***************
  342. *** 635,642 ****
  343.   
  344.     if ((fd = open(a_name,0)) == -1)
  345.       {
  346. !       FPRINTF(stderr,"sidtool: unable to open %s.\n",a_name) ;
  347. !       exit(-1) ;
  348.       }
  349.   
  350.     for (i = UR; i <= LU; i++) corner[i] = load_picture(fd) ;
  351. --- 639,646 ----
  352.   
  353.     if ((fd = open(a_name,0)) == -1)
  354.       {
  355. !       perror(a_name) ;
  356. !       exit(1) ;
  357.       }
  358.   
  359.     for (i = UR; i <= LU; i++) corner[i] = load_picture(fd) ;
  360. ***************
  361. *** 661,668 ****
  362.   
  363.     if ((fn = fopen(m_name,"r")) == NULL)
  364.       {
  365. !       FPRINTF(stderr,"\nsidtool: can't open %s\n",m_name) ;
  366. !       exit(-1) ;
  367.       }
  368.   
  369.     for (y = 0; y <= YSIZE+1; y++)
  370. --- 665,672 ----
  371.   
  372.     if ((fn = fopen(m_name,"r")) == NULL)
  373.       {
  374. !       perror(m_name) ;
  375. !       exit(1) ;
  376.       }
  377.   
  378.     for (y = 0; y <= YSIZE+1; y++)
  379. ***************
  380. *** 749,755 ****
  381.     for (i = 1; i <= 20; i++)
  382.       {
  383.         BLT_MEM_TO_SCRN(oldcx-GOFFSET+5,oldcy-GOFFSET+5,45,45,RXOR,curcircle,0,0) ;
  384. !       for (j = 0; j < 10; j++) LONGPAUSE() ;
  385.       }
  386.     LONGPAUSE() ;
  387.     if (fruitmaze[player] < 8) fruitmaze[player]++ ;
  388. --- 753,759 ----
  389.     for (i = 1; i <= 20; i++)
  390.       {
  391.         BLT_MEM_TO_SCRN(oldcx-GOFFSET+5,oldcy-GOFFSET+5,45,45,RXOR,curcircle,0,0) ;
  392. !       PPAUSE(pausetime*100) ;
  393.       }
  394.     LONGPAUSE() ;
  395.     if (fruitmaze[player] < 8) fruitmaze[player]++ ;
  396. ***************
  397. *** 799,805 ****
  398.           for (i = 1; i < 7; i++)
  399.             {
  400.               BLT_MEM_TO_SCRN(oldcx-GOFFSET+5,oldcy-GOFFSET+5,45,45,RXOR,curcircle,0,0) ;
  401. !             for (i = 0; i < 10; i++) LONGPAUSE() ;
  402.             }
  403.           numcir[player]++ ;
  404.           BLT_MEM_TO_SCRN(30+(numcir[player]-1)*60,20,50,50,RXOR,circles[RIGHT][0],0,0) ;
  405. --- 803,809 ----
  406.           for (i = 1; i < 7; i++)
  407.             {
  408.               BLT_MEM_TO_SCRN(oldcx-GOFFSET+5,oldcy-GOFFSET+5,45,45,RXOR,curcircle,0,0) ;
  409. !             PPAUSE(pausetime*100) ;
  410.             }
  411.           numcir[player]++ ;
  412.           BLT_MEM_TO_SCRN(30+(numcir[player]-1)*60,20,50,50,RXOR,circles[RIGHT][0],0,0) ;
  413. *** sid_main.c.old    Thu May 21 06:46:19 1987
  414. --- sid_main.c    Thu May 21 13:42:31 1987
  415. ***************
  416. *** 4,9 ****
  417. --- 4,10 ----
  418.    *  Sid Tool - the Sun Interactive Debugger program.
  419.    *
  420.    *  Written by Rich Burridge - Sun Microsystems Australia (Melbourne).
  421. +  *  Joystick interface and various bug fixes by Dan Heller.
  422.    *
  423.    *  Version 2.1.  -  April 1987.
  424.    *
  425. ***************
  426. *** 35,40 ****
  427. --- 36,66 ----
  428.   Notify_value main_loop() ;
  429.   void event_proc() ;
  430.   
  431. + int ms_x, ms_y ;
  432. + /* Joystick (really, arrow) symbols */
  433. + short left_arrow_dat[] = {
  434. + #include "left_arrow.icon"
  435. + } ;
  436. + mpr_static(joystick_left,64,64,1,left_arrow_dat) ;
  437. + short right_arrow_dat[] = {
  438. + #include "right_arrow.icon"
  439. + } ;
  440. + mpr_static(joystick_right,64,64,1,right_arrow_dat) ;
  441. + short up_arrow_dat[] = {
  442. + #include "up_arrow.icon"
  443. + } ;
  444. + mpr_static(joystick_up,64,64,1,up_arrow_dat) ;
  445. + short down_arrow_dat[] = {
  446. + #include "down_arrow.icon"
  447. + } ;
  448. + mpr_static(joystick_down,64,64,1,down_arrow_dat) ;
  449.   short sid_image[] = {
  450.   #include "sidtool.icon"
  451.   } ;
  452. ***************
  453. *** 140,146 ****
  454.     int last ;
  455.   
  456.     last = 'r' ;
  457. !   PPAUSE(pausetime*20) ;
  458.     walls[mx+2][my] = 1 ;
  459.     if (maze[mx][my] == 's') drawcorner(mx,my,UR) ;
  460.     else if (maze[mx][my] == 'S') ddrawline(mx,my,'r') ;
  461. --- 166,172 ----
  462.     int last ;
  463.   
  464.     last = 'r' ;
  465. !   PPAUSE(pausetime*10) ;
  466.     walls[mx+2][my] = 1 ;
  467.     if (maze[mx][my] == 's') drawcorner(mx,my,UR) ;
  468.     else if (maze[mx][my] == 'S') ddrawline(mx,my,'r') ;
  469. ***************
  470. *** 153,159 ****
  471.      mx++ ;
  472.      for (;;)
  473.        {
  474. !        PPAUSE(2*pausetime) ;
  475.          walls[mx+2][my] = 1 ;
  476.          switch (maze[mx][my])
  477.            {
  478. --- 179,185 ----
  479.      mx++ ;
  480.      for (;;)
  481.        {
  482. !        PPAUSE(pausetime) ;
  483.          walls[mx+2][my] = 1 ;
  484.          switch (maze[mx][my])
  485.            {
  486. ***************
  487. *** 192,197 ****
  488. --- 218,234 ----
  489.   }
  490.   
  491.   
  492. + draw_joystick(dir)
  493. + {
  494. +   pw_rop(canvas_pixwin(canvas), 375, 110, 44, 44, PIX_SRC,
  495. +         (dir == UP)    ? &joystick_up    :
  496. +         (dir == DOWN)  ? &joystick_down  :
  497. +         (dir == RIGHT) ? &joystick_right :
  498. +                          &joystick_left, 0, 0) ;
  499. + }
  500.   setdots(player)
  501.   int player ;
  502.  
  503. ***************
  504. *** 346,351 ****
  505. --- 383,390 ----
  506.     pausetime = -skilllevel * 20 + (speed * 100) ;
  507.     circatchup = -skilllevel * 4 + 46 ;
  508.     highplayer = -1 ;
  509. +   ms_x = (int) window_get(canvas,WIN_WIDTH) / 2 ;
  510. +   ms_y = (int) window_get(canvas,WIN_HEIGHT) / 2 ;
  511.     for (j = 1; j < MAXNUMPLAYERS; j++)
  512.       {
  513.         numdots[j] = 0 ;
  514. ***************
  515. *** 395,401 ****
  516.     int i,j ;
  517.   
  518.     on = 1 ;
  519. !   if (!autoplay)
  520.       for (i = 1; i <= 16; i++)
  521.         {
  522.           showplayerscore(player) ;
  523. --- 434,441 ----
  524.     int i,j ;
  525.   
  526.     on = 1 ;
  527. !   if (autoplay) LONGPAUSE()
  528. !   else
  529.       for (i = 1; i <= 16; i++)
  530.         {
  531.           showplayerscore(player) ;
  532. ***************
  533. *** 646,652 ****
  534.     get_options(argc,argv) ;          /* Get command line options. */
  535.     function_keys(KEY_SET) ;          /* Set direction arrow function keys. */
  536.   
  537. !   if ((pf = pf_open("/usr/lib/fonts/fixedwidthfonts/screen.r.14")) == NULL)
  538.       {
  539.         FPRINTF("Can't open screen.r.14 font.\n") ;
  540.         function_keys(KEY_RESET) ;
  541. --- 686,693 ----
  542.     get_options(argc,argv) ;          /* Get command line options. */
  543.     function_keys(KEY_SET) ;          /* Set direction arrow function keys. */
  544.   
  545. !   if (!(pf = pf_open("/usr/lib/fonts/fixedwidthfonts/screen.r.14")) &&
  546. !       !(pf = pf_default()))
  547.       {
  548.         FPRINTF("Can't open screen.r.14 font.\n") ;
  549.         function_keys(KEY_RESET) ;
  550. ***************
  551. *** 670,678 ****
  552.                            WIN_EVENT_PROC, event_proc,
  553.                            0) ;
  554.   
  555. !   window_set(canvas, WIN_CONSUME_KBD_EVENTS, WIN_ASCII_EVENTS, 0) ;
  556. !   window_set(canvas, WIN_CONSUME_KBD_EVENTS, WIN_LEFT_KEYS, 0) ;
  557. !   window_set(canvas,WIN_IGNORE_PICK_EVENT,LOC_MOVE,0) ;
  558.   
  559.     pw = canvas_pixwin(canvas) ;
  560.   
  561. --- 711,726 ----
  562.                            WIN_EVENT_PROC, event_proc,
  563.                            0) ;
  564.   
  565. !   window_set(canvas, WIN_CONSUME_PICK_EVENTS, WIN_MOUSE_BUTTONS,
  566. !                                               WIN_UP_EVENTS,
  567. !                                               0,
  568. !                      WIN_CONSUME_KBD_EVENTS, WIN_ASCII_EVENTS,
  569. !                                              KEY_RIGHT(8),
  570. !                                              KEY_RIGHT(10),
  571. !                                              KEY_RIGHT(12),
  572. !                                              KEY_RIGHT(14),
  573. !                                              WIN_UP_EVENTS,
  574. !                                              0) ;
  575.   
  576.     pw = canvas_pixwin(canvas) ;
  577.   
  578. ***************
  579. *** 716,722 ****
  580.     int x,y ;     /* Position of mouse when button pressed. */
  581.     int i ;
  582.   
  583. !   if (event_is_ascii(event))
  584.       {
  585.         c = event_id(event) ;
  586.         if (progstate == NEXTLINE) return ;
  587. --- 764,771 ----
  588.     int x,y ;     /* Position of mouse when button pressed. */
  589.     int i ;
  590.   
  591. !   if (event_is_ascii(event) ||
  592. !       !autoplay && (event->ie_code == MS_RIGHT || event->ie_code == LOC_MOVE))
  593.       {
  594.         c = event_id(event) ;
  595.         if (progstate == NEXTLINE) return ;
  596. ***************
  597. *** 727,744 ****
  598.             progstate = DELHIT ;
  599.             return ;
  600.           }
  601. !       else if (c == CTRLS)
  602.           {
  603.             savedstate = progstate ;
  604.             progstate = CTRLSHIT ;
  605.             return ;
  606.           }
  607. !       else if (c == CTRLQ)
  608.           {
  609.             progstate = savedstate ;
  610.             return ;
  611.           }
  612. !       else if (!autoplay) sc = c ;
  613.       }
  614.     else if (event_is_down(event) && event_is_button(event))
  615.       {
  616. --- 776,817 ----
  617.             progstate = DELHIT ;
  618.             return ;
  619.           }
  620. !       else if (c == CTRLS || progstate != CTRLSHIT &&
  621. !                event_is_down(event) && c == MS_RIGHT)
  622.           {
  623.             savedstate = progstate ;
  624.             progstate = CTRLSHIT ;
  625.             return ;
  626.           }
  627. !       else if (c == CTRLQ || progstate == CTRLSHIT &&
  628. !                event_is_down(event) && c == MS_RIGHT)
  629.           {
  630.             progstate = savedstate ;
  631.             return ;
  632.           }
  633. !       else if (!autoplay && progstate != CTRLSHIT)
  634. !         {
  635. !           if (c == LOC_MOVE)
  636. !             {
  637. !               x = event_x(event) - ms_x ;
  638. !               y = event_y(event) - ms_y ;
  639. !               if (abs(x) <= 4 && abs(y) <= 4)    /* Move at least 4 pixels */
  640. !                 return ;
  641. !               if (abs(x) > abs(y))
  642. !                 if (x > 0) c = 'r' ;
  643. !                 else c = 'l' ;
  644. !               else
  645. !                 if (y > 0) c = 'd' ;
  646. !                 else c = 'u' ;
  647. ! /* Return the mouse to the middle of the playing board */
  648. !               if (progstate == MAKEPLAY && !autoplay &&
  649. !                  (event_x(event) != ms_x || event_y(event) != ms_y))
  650. !                 window_set(canvas, WIN_MOUSE_XY, ms_x, ms_y, 0) ;
  651. !             }
  652. !           sc = c ;
  653. !         }
  654.       }
  655.     else if (event_is_down(event) && event_is_button(event))
  656.       {
  657. *** sid_stuff.c.old    Thu May 21 06:46:46 1987
  658. --- sid_stuff.c    Thu May 21 12:24:39 1987
  659. ***************
  660. *** 4,9 ****
  661. --- 4,10 ----
  662.    *  Various functions and procedures used by Sid Tool.
  663.    *
  664.    *  Written by Rich Burridge - SUN Microsystems Australia (Melbourne).
  665. +  *  Joystick interface and various bug fixes by Dan Heller.
  666.    *
  667.    *  Version 2.1.  -  April 1987.
  668.    *
  669. ***************
  670. *** 36,43 ****
  671.   extern BOOLEAN autoplay,changed,demomode,gamestate,remove ;
  672.   
  673.   extern char a_name[MAXLINE],buffer[MAXLINE],h_name[MAXLINE] ;
  674. ! extern char m_name[MAXLINE], new_key_vals[9][MAXLINE] ;
  675. ! extern char old_key_vals[9][MAXLINE],s_name[MAXLINE],titlestring[MAXLINE] ;
  676.   
  677.   extern int blueblink,blueincblink,button,c,cirx,ciry,credits ;
  678.   extern int curbluetime[MAXNUMPLAYERS+1],curdir,dotx,doty ;
  679. --- 37,44 ----
  680.   extern BOOLEAN autoplay,changed,demomode,gamestate,remove ;
  681.   
  682.   extern char a_name[MAXLINE],buffer[MAXLINE],h_name[MAXLINE] ;
  683. ! extern char m_name[MAXLINE], new_key_vals[4][MAXLINE] ;
  684. ! extern char old_key_vals[4][MAXLINE],s_name[MAXLINE],titlestring[MAXLINE] ;
  685.   
  686.   extern int blueblink,blueincblink,button,c,cirx,ciry,credits ;
  687.   extern int curbluetime[MAXNUMPLAYERS+1],curdir,dotx,doty ;
  688. ***************
  689. *** 98,104 ****
  690.     clear_screen() ;
  691.     SPRINTF(buffer,"Player %1d",player) ;
  692.     write_bold(348,500,buffer) ;
  693. !   for (i = 0; i < 100; i++) LONGPAUSE() ;
  694.     drawmaze() ;
  695.     blinkpause() ;
  696.     if (!startgame)
  697. --- 99,105 ----
  698.     clear_screen() ;
  699.     SPRINTF(buffer,"Player %1d",player) ;
  700.     write_bold(348,500,buffer) ;
  701. !   LONGPAUSE() ;
  702.     drawmaze() ;
  703.     blinkpause() ;
  704.     if (!startgame)
  705. ***************
  706. *** 162,168 ****
  707.     SCHRFUNC(RXOR) ;
  708.     SPRINTF(buffer,"%1d0",inc) ;
  709.     WRITELN(x,g->scry+10,buffer) ;
  710. !   for (i = 0; i < 10; i++) LONGPAUSE() ;
  711.     SPRINTF(buffer,"%1d0",inc) ;
  712.     WRITELN(x,g->scry+10,buffer) ;
  713.     SCHRFUNC(RRPL) ;
  714. --- 163,169 ----
  715.     SCHRFUNC(RXOR) ;
  716.     SPRINTF(buffer,"%1d0",inc) ;
  717.     WRITELN(x,g->scry+10,buffer) ;
  718. !   LONGPAUSE() ;
  719.     SPRINTF(buffer,"%1d0",inc) ;
  720.     WRITELN(x,g->scry+10,buffer) ;
  721.     SCHRFUNC(RRPL) ;
  722. ***************
  723. *** 183,189 ****
  724.     SCHRFUNC(RXOR) ;
  725.     SPRINTF(buffer,"%1d0",inc) ;
  726.     WRITELN(fruitx+10,fruity+10,buffer) ;
  727. !   for (i = 0; i < 10; i++) LONGPAUSE() ;
  728.     SPRINTF(buffer,"%1d0",inc) ;
  729.     WRITELN(fruitx+10,fruity+10,buffer) ;
  730.     SCHRFUNC(RRPL) ;
  731. --- 184,190 ----
  732.     SCHRFUNC(RXOR) ;
  733.     SPRINTF(buffer,"%1d0",inc) ;
  734.     WRITELN(fruitx+10,fruity+10,buffer) ;
  735. !   LONGPAUSE() ;
  736.     SPRINTF(buffer,"%1d0",inc) ;
  737.     WRITELN(fruitx+10,fruity+10,buffer) ;
  738.     SCHRFUNC(RRPL) ;
  739. ***************
  740. *** 442,448 ****
  741.           {
  742.             SCHRFUNC(RXOR) ;
  743.             WRITELN(339,YBASE+SQUARE*16,"GAME OVER!") ;
  744. !           for (i = 0; i < 80; i++) LONGPAUSE() ;
  745.             WRITELN(339,YBASE+SQUARE*16,"GAME OVER!") ;
  746.             SCHRFUNC(RRPL) ;
  747.             if (numplayers == 1)
  748. --- 443,449 ----
  749.           {
  750.             SCHRFUNC(RXOR) ;
  751.             WRITELN(339,YBASE+SQUARE*16,"GAME OVER!") ;
  752. !           LONGPAUSE() ;
  753.             WRITELN(339,YBASE+SQUARE*16,"GAME OVER!") ;
  754.             SCHRFUNC(RRPL) ;
  755.             if (numplayers == 1)
  756. ***************
  757. *** 451,457 ****
  758.                 longjmp(exception,val) ;
  759.               }
  760.           }
  761. !       else for (i = 0; i < 50; i++) LONGPAUSE() ;
  762.         changeplayers(0) ;
  763.       }
  764.   }
  765. --- 452,458 ----
  766.                 longjmp(exception,val) ;
  767.               }
  768.           }
  769. !       else LONGPAUSE() ;
  770.         changeplayers(0) ;
  771.       }
  772.   }
  773. ***************
  774. *** 538,552 ****
  775.   
  776.     if ((fd = open("/dev/kbd",0,0)) < 0)
  777.       {
  778. !       FPRINTF(stderr,"sidtool: can't open /dev/kbd\n") ;
  779.         exit(1) ;
  780.       }
  781. !   for (i = 0; i < 4; i++)       /* Set up function keys R7-R15, saving old values. */
  782. !     {
  783.         if (state == KEY_SET)
  784.           {
  785.             get_key(fd,key_stations[i],old_key_vals[i],STRING + 1 + i) ;
  786. !           set_key(fd,key_stations[i],new_key_vals[i],STRING + 5 + i) ;
  787.           }
  788.         else set_key(fd,key_stations[i],old_key_vals[i],STRING + 1 + i) ;
  789.       }
  790. --- 539,553 ----
  791.   
  792.     if ((fd = open("/dev/kbd",0,0)) < 0)
  793.       {
  794. !       perror("/dev/kbd") ;
  795.         exit(1) ;
  796.       }
  797. !   for (i = 0; i < 4; i++)        /* Set up function keys R8, R10, R12 and R14. */
  798. !     {                            /* Saving old values. */
  799.         if (state == KEY_SET)
  800.           {
  801.             get_key(fd,key_stations[i],old_key_vals[i],STRING + 1 + i) ;
  802. !           set_key(fd,key_stations[i],new_key_vals[i],STRING + 1 + i) ;
  803.           }
  804.         else set_key(fd,key_stations[i],old_key_vals[i],STRING + 1 + i) ;
  805.       }
  806. *** sidtool.h.old    Thu May 21 06:45:55 1987
  807. --- sidtool.h    Thu May 21 12:07:38 1987
  808. ***************
  809. *** 63,70 ****
  810.   /* Wait for len tics. */
  811.   #define  PPAUSE(len) { int ppi ; for (ppi = 0; ppi < len; ppi++) ; }
  812.   
  813. ! /* Wait for a while and check keyboard for commands. */
  814. ! #define  LONGPAUSE() { int loi ; for (loi = 0; loi < (1000*speed); loi++) ; }
  815.   
  816.   /* Returns the reverse direction of the parameter (left goes to right, etc.) */
  817.   #define  REVERSEDIR(dir) ((dir + 2) % 4)
  818. --- 63,70 ----
  819.   /* Wait for len tics. */
  820.   #define  PPAUSE(len) { int ppi ; for (ppi = 0; ppi < len; ppi++) ; }
  821.   
  822. ! /* Wait for a longer while. */
  823. ! #define  LONGPAUSE() { int loi ; for (loi = 0; loi < (2000*speed); loi++) ; }
  824.   
  825.   /* Returns the reverse direction of the parameter (left goes to right, etc.) */
  826.   #define  REVERSEDIR(dir) ((dir + 2) % 4)
  827. *** /dev/null    Thu May 21 15:00:00 1987
  828. --- down_arrow.icon    Thu May 21 12:51:55 1987
  829. ***************
  830. *** 0 ****
  831. --- 1,34 ----
  832. + /* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
  833. +  */
  834. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  835. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  836. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  837. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  838. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  839. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  840. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  841. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  842. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  843. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  844. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  845. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  846. +     0xC0FF,0xFFFF,0xF030,0x0000,0xC07F,0xFFFF,0xE030,0x0000,
  847. +     0xC03F,0xFFFF,0xC030,0x0000,0xC01F,0xFFFF,0x8030,0x0000,
  848. +     0xC00F,0xFFFF,0x0030,0x0000,0xC007,0xFFFE,0x0030,0x0000,
  849. +     0xC003,0xFFFC,0x0030,0x0000,0xC001,0xFFF8,0x0030,0x0000,
  850. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0x7FE0,0x0030,0x0000,
  851. +     0xC000,0x3FC0,0x0030,0x0000,0xC000,0x1F80,0x0030,0x0000,
  852. +     0xC000,0x0F00,0x0030,0x0000,0xC000,0x0600,0x0030,0x0000,
  853. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  854. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  855. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  856. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  857. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  858. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  859. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  860. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  861. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  862. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  863. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  864. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  865. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
  866. *** /dev/null    Thu May 21 15:00:00 1987
  867. --- left_arrow.icon    Thu May 21 12:55:23 1987
  868. ***************
  869. *** 0 ****
  870. --- 1,34 ----
  871. + /* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
  872. +  */
  873. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  874. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  875. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  876. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  877. +     0xC000,0x1000,0x0030,0x0000,0xC000,0x3000,0x0030,0x0000,
  878. +     0xC000,0x7000,0x0030,0x0000,0xC000,0xF000,0x0030,0x0000,
  879. +     0xC001,0xF000,0x0030,0x0000,0xC003,0xF000,0x0030,0x0000,
  880. +     0xC007,0xF000,0x0030,0x0000,0xC00F,0xF000,0x0030,0x0000,
  881. +     0xC01F,0xFFFF,0xFF30,0x0000,0xC03F,0xFFFF,0xFF30,0x0000,
  882. +     0xC07F,0xFFFF,0xFF30,0x0000,0xC0FF,0xFFFF,0xFF30,0x0000,
  883. +     0xC1FF,0xFFFF,0xFF30,0x0000,0xC3FF,0xFFFF,0xFF30,0x0000,
  884. +     0xC3FF,0xFFFF,0xFF30,0x0000,0xC1FF,0xFFFF,0xFF30,0x0000,
  885. +     0xC0FF,0xFFFF,0xFF30,0x0000,0xC07F,0xFFFF,0xFF30,0x0000,
  886. +     0xC03F,0xFFFF,0xFF30,0x0000,0xC01F,0xFFFF,0xFF30,0x0000,
  887. +     0xC00F,0xF000,0x0030,0x0000,0xC007,0xF000,0x0030,0x0000,
  888. +     0xC003,0xF000,0x0030,0x0000,0xC001,0xF000,0x0030,0x0000,
  889. +     0xC000,0xF000,0x0030,0x0000,0xC000,0x7000,0x0030,0x0000,
  890. +     0xC000,0x3000,0x0030,0x0000,0xC000,0x1000,0x0030,0x0000,
  891. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  892. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  893. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  894. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  895. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  896. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  897. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  898. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  899. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  900. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  901. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  902. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  903. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  904. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
  905. *** /dev/null    Thu May 21 15:00:00 1987
  906. --- right_arrow.icon    Thu May 21 12:57:48 1987
  907. ***************
  908. *** 0 ****
  909. --- 1,34 ----
  910. + /* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
  911. +  */
  912. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  913. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  914. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  915. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  916. +     0xC000,0x0080,0x0030,0x0000,0xC000,0x00C0,0x0030,0x0000,
  917. +     0xC000,0x00E0,0x0030,0x0000,0xC000,0x00F0,0x0030,0x0000,
  918. +     0xC000,0x00F8,0x0030,0x0000,0xC000,0x00FC,0x0030,0x0000,
  919. +     0xC000,0x00FE,0x0030,0x0000,0xC000,0x00FF,0x0030,0x0000,
  920. +     0xCFFF,0xFFFF,0x8030,0x0000,0xCFFF,0xFFFF,0xC030,0x0000,
  921. +     0xCFFF,0xFFFF,0xE030,0x0000,0xCFFF,0xFFFF,0xF030,0x0000,
  922. +     0xCFFF,0xFFFF,0xF830,0x0000,0xCFFF,0xFFFF,0xFC30,0x0000,
  923. +     0xCFFF,0xFFFF,0xFC30,0x0000,0xCFFF,0xFFFF,0xF830,0x0000,
  924. +     0xCFFF,0xFFFF,0xF030,0x0000,0xCFFF,0xFFFF,0xE030,0x0000,
  925. +     0xCFFF,0xFFFF,0xC030,0x0000,0xCFFF,0xFFFF,0x8030,0x0000,
  926. +     0xC000,0x00FF,0x0030,0x0000,0xC000,0x00FE,0x0030,0x0000,
  927. +     0xC000,0x00FC,0x0030,0x0000,0xC000,0x00F8,0x0030,0x0000,
  928. +     0xC000,0x00F0,0x0030,0x0000,0xC000,0x00E0,0x0030,0x0000,
  929. +     0xC000,0x00C0,0x0030,0x0000,0xC000,0x0080,0x0030,0x0000,
  930. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  931. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  932. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  933. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  934. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  935. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  936. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  937. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  938. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  939. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  940. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  941. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  942. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  943. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
  944. *** /dev/null    Thu May 21 15:00:00 1987
  945. --- up_arrow.icon    Thu May 21 13:00:16 1987
  946. ***************
  947. *** 0 ****
  948. --- 1,34 ----
  949. + /* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
  950. +  */
  951. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  952. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  953. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  954. +     0xC000,0x0600,0x0030,0x0000,0xC000,0x0F00,0x0030,0x0000,
  955. +     0xC000,0x1F80,0x0030,0x0000,0xC000,0x3FC0,0x0030,0x0000,
  956. +     0xC000,0x7FE0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  957. +     0xC001,0xFFF8,0x0030,0x0000,0xC003,0xFFFC,0x0030,0x0000,
  958. +     0xC007,0xFFFE,0x0030,0x0000,0xC00F,0xFFFF,0x0030,0x0000,
  959. +     0xC01F,0xFFFF,0x8030,0x0000,0xC03F,0xFFFF,0xC030,0x0000,
  960. +     0xC07F,0xFFFF,0xE030,0x0000,0xC0FF,0xFFFF,0xF030,0x0000,
  961. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  962. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  963. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  964. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  965. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  966. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  967. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  968. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  969. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  970. +     0xC000,0xFFF0,0x0030,0x0000,0xC000,0xFFF0,0x0030,0x0000,
  971. +     0xC000,0x0000,0x0030,0x0000,0xC000,0x0000,0x0030,0x0000,
  972. +     0xFFFF,0xFFFF,0xFFF0,0x0000,0xFFFF,0xFFFF,0xFFF0,0x0000,
  973. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  974. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  975. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  976. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  977. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  978. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  979. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  980. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  981. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  982. +     0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
  983.