OSDN Git Service

wwww
[proj16/16.git] / 16 / v2 / source / verge / ENGINE / SINCOS.H
1 /*\r
2 Copyright (C) 1998 BJ Eirich (aka vecna)\r
3 This program is free software; you can redistribute it and/or\r
4 modify it under the terms of the GNU General Public License\r
5 as published by the Free Software Foundation; either version 2\r
6 of the License, or (at your option) any later version.\r
7 This program is distributed in the hope that it will be useful,\r
8 but WITHOUT ANY WARRANTY; without even the implied warranty of\r
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\r
10 See the GNU General Public Lic\r
11 See the GNU General Public License for more details.\r
12 You should have received a copy of the GNU General Public License\r
13 along with this program; if not, write to the Free Software\r
14 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.\r
15 */\r
16 \r
17 int sintbl[]=\r
18 {\r
19   0,\r
20   1143,\r
21   2287,\r
22   3429,\r
23   4571,\r
24   5711,\r
25   6850,\r
26   7986,\r
27   9120,\r
28   10251,\r
29   11380,\r
30   12504,\r
31   13625,\r
32   14742,\r
33   15854,\r
34   16961,\r
35   18063,\r
36   19160,\r
37   20251,\r
38   21336,\r
39   22414,\r
40   23485,\r
41   24549,\r
42   25606,\r
43   26655,\r
44   27696,\r
45   28728,\r
46   29752,\r
47   30766,\r
48   31771,\r
49   32767,\r
50   33752,\r
51   34728,\r
52   35692,\r
53   36646,\r
54   37589,\r
55   38520,\r
56   39439,\r
57   40347,\r
58   41242,\r
59   42125,\r
60   42994,\r
61   43851,\r
62   44694,\r
63   45524,\r
64   46340,\r
65   47141,\r
66   47929,\r
67   48701,\r
68   49459,\r
69   50202,\r
70   50930,\r
71   51642,\r
72   52338,\r
73   53018,\r
74   53683,\r
75   54330,\r
76   54962,\r
77   55576,\r
78   56174,\r
79   56754,\r
80   57318,\r
81   57863,\r
82   58392,\r
83   58902,\r
84   59394,\r
85   59869,\r
86   60325,\r
87   60762,\r
88   61182,\r
89   61582,\r
90   61964,\r
91   62327,\r
92   62671,\r
93   62996,\r
94   63301,\r
95   63588,\r
96   63855,\r
97   64102,\r
98   64330,\r
99   64539,\r
100   64728,\r
101   64897,\r
102   65046,\r
103   65175,\r
104   65285,\r
105   65375,\r
106   65445,\r
107   65495,\r
108   65525,\r
109   65534,\r
110   65525,\r
111   65495,\r
112   65445,\r
113   65375,\r
114   65285,\r
115   65176,\r
116   65046,\r
117   64897,\r
118   64728,\r
119   64539,\r
120   64330,\r
121   64102,\r
122   63855,\r
123   63588,\r
124   63301,\r
125   62996,\r
126   62671,\r
127   62327,\r
128   61964,\r
129   61582,\r
130   61182,\r
131   60763,\r
132   60325,\r
133   59869,\r
134   59394,\r
135   58902,\r
136   58392,\r
137   57864,\r
138   57318,\r
139   56755,\r
140   56174,\r
141   55576,\r
142   54962,\r
143   54331,\r
144   53683,\r
145   53019,\r
146   52338,\r
147   51642,\r
148   50930,\r
149   50202,\r
150   49459,\r
151   48702,\r
152   47929,\r
153   47142,\r
154   46340,\r
155   45524,\r
156   44694,\r
157   43851,\r
158   42994,\r
159   42125,\r
160   41242,\r
161   40347,\r
162   39440,\r
163   38520,\r
164   37589,\r
165   36646,\r
166   35693,\r
167   34728,\r
168   33753,\r
169   32767,\r
170   31772,\r
171   30766,\r
172   29752,\r
173   28728,\r
174   27696,\r
175   26655,\r
176   25606,\r
177   24549,\r
178   23485,\r
179   22414,\r
180   21336,\r
181   20251,\r
182   19160,\r
183   18064,\r
184   16961,\r
185   15854,\r
186   14742,\r
187   13625,\r
188   12504,\r
189   11380,\r
190   10252,\r
191   9120,\r
192   7986,\r
193   6850,\r
194   5711,\r
195   4571,\r
196   3430,\r
197   2287,\r
198   1143,\r
199   0,\r
200   -1143,\r
201   -2286,\r
202   -3429,\r
203   -4571,\r
204   -5711,\r
205   -6850,\r
206   -7986,\r
207   -9120,\r
208   -10251,\r
209   -11379,\r
210   -12504,\r
211   -13625,\r
212   -14741,\r
213   -15854,\r
214   -16961,\r
215   -18063,\r
216   -19160,\r
217   -20251,\r
218   -21335,\r
219   -22414,\r
220   -23485,\r
221   -24549,\r
222   -25606,\r
223   -26655,\r
224   -27696,\r
225   -28728,\r
226   -29752,\r
227   -30766,\r
228   -31771,\r
229   -32767,\r
230   -33752,\r
231   -34728,\r
232   -35692,\r
233   -36646,\r
234   -37589,\r
235   -38520,\r
236   -39439,\r
237   -40347,\r
238   -41242,\r
239   -42124,\r
240   -42994,\r
241   -43851,\r
242   -44694,\r
243   -45524,\r
244   -46340,\r
245   -47141,\r
246   -47929,\r
247   -48701,\r
248   -49459,\r
249   -50202,\r
250   -50930,\r
251   -51642,\r
252   -52338,\r
253   -53018,\r
254   -53682,\r
255   -54330,\r
256   -54962,\r
257   -55576,\r
258   -56174,\r
259   -56754,\r
260   -57318,\r
261   -57863,\r
262   -58392,\r
263   -58902,\r
264   -59394,\r
265   -59869,\r
266   -60325,\r
267   -60762,\r
268   -61182,\r
269   -61582,\r
270   -61964,\r
271   -62327,\r
272   -62671,\r
273   -62996,\r
274   -63301,\r
275   -63588,\r
276   -63855,\r
277   -64102,\r
278   -64330,\r
279   -64539,\r
280   -64728,\r
281   -64897,\r
282   -65046,\r
283   -65175,\r
284   -65285,\r
285   -65375,\r
286   -65445,\r
287   -65495,\r
288   -65525,\r
289   -65534,\r
290   -65525,\r
291   -65495,\r
292   -65445,\r
293   -65375,\r
294   -65285,\r
295   -65176,\r
296   -65046,\r
297   -64897,\r
298   -64728,\r
299   -64539,\r
300   -64330,\r
301   -64102,\r
302   -63855,\r
303   -63588,\r
304   -63302,\r
305   -62996,\r
306   -62671,\r
307   -62327,\r
308   -61964,\r
309   -61582,\r
310   -61182,\r
311   -60763,\r
312   -60325,\r
313   -59869,\r
314   -59395,\r
315   -58902,\r
316   -58392,\r
317   -57864,\r
318   -57318,\r
319   -56755,\r
320   -56174,\r
321   -55576,\r
322   -54962,\r
323   -54331,\r
324   -53683,\r
325   -53019,\r
326   -52338,\r
327   -51642,\r
328   -50930,\r
329   -50202,\r
330   -49460,\r
331   -48702,\r
332   -47929,\r
333   -47142,\r
334   -46340,\r
335   -45524,\r
336   -44694,\r
337   -43851,\r
338   -42995,\r
339   -42125,\r
340   -41242,\r
341   -40347,\r
342   -39440,\r
343   -38520,\r
344   -37589,\r
345   -36646,\r
346   -35693,\r
347   -34728,\r
348   -33753,\r
349   -32767,\r
350   -31772,\r
351   -30767,\r
352   -29752,\r
353   -28728,\r
354   -27696,\r
355   -26655,\r
356   -25606,\r
357   -24550,\r
358   -23485,\r
359   -22414,\r
360   -21336,\r
361   -20251,\r
362   -19160,\r
363   -18064,\r
364   -16962,\r
365   -15854,\r
366   -14742,\r
367   -13625,\r
368   -12504,\r
369   -11380,\r
370   -10252,\r
371   -9121,\r
372   -7987,\r
373   -6850,\r
374   -5712,\r
375   -4571,\r
376   -3430,\r
377   -2287,\r
378   -1144,\r
379 };\r
380 \r
381 int costbl[]={\r
382   65535,\r
383   65525,\r
384   65495,\r
385   65445,\r
386   65375,\r
387   65285,\r
388   65175,\r
389   65046,\r
390   64897,\r
391   64728,\r
392   64539,\r
393   64330,\r
394   64102,\r
395   63855,\r
396   63588,\r
397   63301,\r
398   62996,\r
399   62671,\r
400   62327,\r
401   61964,\r
402   61582,\r
403   61182,\r
404   60763,\r
405   60325,\r
406   59869,\r
407   59394,\r
408   58902,\r
409   58392,\r
410   57863,\r
411   57318,\r
412   56754,\r
413   56174,\r
414   55576,\r
415   54962,\r
416   54330,\r
417   53683,\r
418   53018,\r
419   52338,\r
420   51642,\r
421   50930,\r
422   50202,\r
423   49459,\r
424   48702,\r
425   47929,\r
426   47141,\r
427   46340,\r
428   45524,\r
429   44694,\r
430   43851,\r
431   42994,\r
432   42125,\r
433   41242,\r
434   40347,\r
435   39439,\r
436   38520,\r
437   37589,\r
438   36646,\r
439   35692,\r
440   34728,\r
441   33753,\r
442   32767,\r
443   31772,\r
444   30766,\r
445   29752,\r
446   28728,\r
447   27696,\r
448   26655,\r
449   25606,\r
450   24549,\r
451   23485,\r
452   22414,\r
453   21336,\r
454   20251,\r
455   19160,\r
456   18063,\r
457   16961,\r
458   15854,\r
459   14742,\r
460   13625,\r
461   12504,\r
462   11380,\r
463   10252,\r
464   9120,\r
465   7986,\r
466   6850,\r
467   5711,\r
468   4571,\r
469   3429,\r
470   2287,\r
471   1143,\r
472   0,\r
473   -1143,\r
474   -2287,\r
475   -3429,\r
476   -4571,\r
477   -5711,\r
478   -6850,\r
479   -7986,\r
480   -9120,\r
481   -10251,\r
482   -11379,\r
483   -12504,\r
484   -13625,\r
485   -14742,\r
486   -15854,\r
487   -16961,\r
488   -18063,\r
489   -19160,\r
490   -20251,\r
491   -21336,\r
492   -22414,\r
493   -23485,\r
494   -24549,\r
495   -25606,\r
496   -26655,\r
497   -27696,\r
498   -28728,\r
499   -29752,\r
500   -30766,\r
501   -31771,\r
502   -32767,\r
503   -33752,\r
504   -34728,\r
505   -35692,\r
506   -36646,\r
507   -37589,\r
508   -38520,\r
509   -39439,\r
510   -40347,\r
511   -41242,\r
512   -42124,\r
513   -42994,\r
514   -43851,\r
515   -44694,\r
516   -45524,\r
517   -46340,\r
518   -47141,\r
519   -47929,\r
520   -48701,\r
521   -49459,\r
522   -50202,\r
523   -50930,\r
524   -51642,\r
525   -52338,\r
526   -53018,\r
527   -53683,\r
528   -54330,\r
529   -54962,\r
530   -55576,\r
531   -56174,\r
532   -56754,\r
533   -57318,\r
534   -57863,\r
535   -58392,\r
536   -58902,\r
537   -59394,\r
538   -59869,\r
539   -60325,\r
540   -60762,\r
541   -61182,\r
542   -61582,\r
543   -61964,\r
544   -62327,\r
545   -62671,\r
546   -62996,\r
547   -63301,\r
548   -63588,\r
549   -63855,\r
550   -64102,\r
551   -64330,\r
552   -64539,\r
553   -64728,\r
554   -64897,\r
555   -65046,\r
556   -65175,\r
557   -65285,\r
558   -65375,\r
559   -65445,\r
560   -65495,\r
561   -65525,\r
562   -65534,\r
563   -65525,\r
564   -65495,\r
565   -65445,\r
566   -65375,\r
567   -65285,\r
568   -65176,\r
569   -65046,\r
570   -64897,\r
571   -64728,\r
572   -64539,\r
573   -64330,\r
574   -64102,\r
575   -63855,\r
576   -63588,\r
577   -63301,\r
578   -62996,\r
579   -62671,\r
580   -62327,\r
581   -61964,\r
582   -61582,\r
583   -61182,\r
584   -60763,\r
585   -60325,\r
586   -59869,\r
587   -59394,\r
588   -58902,\r
589   -58392,\r
590   -57864,\r
591   -57318,\r
592   -56755,\r
593   -56174,\r
594   -55576,\r
595   -54962,\r
596   -54331,\r
597   -53683,\r
598   -53019,\r
599   -52338,\r
600   -51642,\r
601   -50930,\r
602   -50202,\r
603   -49460,\r
604   -48702,\r
605   -47929,\r
606   -47142,\r
607   -46340,\r
608   -45524,\r
609   -44694,\r
610   -43851,\r
611   -42994,\r
612   -42125,\r
613   -41242,\r
614   -40347,\r
615   -39440,\r
616   -38520,\r
617   -37589,\r
618   -36646,\r
619   -35693,\r
620   -34728,\r
621   -33753,\r
622   -32767,\r
623   -31772,\r
624   -30767,\r
625   -29752,\r
626   -28728,\r
627   -27696,\r
628   -26655,\r
629   -25606,\r
630   -24550,\r
631   -23485,\r
632   -22414,\r
633   -21336,\r
634   -20251,\r
635   -19160,\r
636   -18064,\r
637   -16961,\r
638   -15854,\r
639   -14742,\r
640   -13625,\r
641   -12504,\r
642   -11380,\r
643   -10252,\r
644   -9120,\r
645   -7986,\r
646   -6850,\r
647   -5712,\r
648   -4571,\r
649   -3430,\r
650   -2287,\r
651   -1144,\r
652   0,\r
653   1143,\r
654   2286,\r
655   3429,\r
656   4571,\r
657   5711,\r
658   6850,\r
659   7986,\r
660   9120,\r
661   10251,\r
662   11379,\r
663   12504,\r
664   13625,\r
665   14741,\r
666   15854,\r
667   16961,\r
668   18063,\r
669   19160,\r
670   20251,\r
671   21335,\r
672   22414,\r
673   23485,\r
674   24549,\r
675   25606,\r
676   26655,\r
677   27696,\r
678   28728,\r
679   29752,\r
680   30766,\r
681   31771,\r
682   32767,\r
683   33752,\r
684   34728,\r
685   35692,\r
686   36646,\r
687   37589,\r
688   38520,\r
689   39439,\r
690   40347,\r
691   41242,\r
692   42124,\r
693   42994,\r
694   43851,\r
695   44694,\r
696   45524,\r
697   46340,\r
698   47141,\r
699   47929,\r
700   48701,\r
701   49459,\r
702   50202,\r
703   50930,\r
704   51642,\r
705   52338,\r
706   53018,\r
707   53682,\r
708   54330,\r
709   54962,\r
710   55576,\r
711   56174,\r
712   56754,\r
713   57318,\r
714   57863,\r
715   58391,\r
716   58902,\r
717   59394,\r
718   59869,\r
719   60325,\r
720   60762,\r
721   61182,\r
722   61582,\r
723   61964,\r
724   62327,\r
725   62671,\r
726   62996,\r
727   63301,\r
728   63588,\r
729   63855,\r
730   64102,\r
731   64330,\r
732   64539,\r
733   64728,\r
734   64897,\r
735   65046,\r
736   65175,\r
737   65285,\r
738   65375,\r
739   65445,\r
740   65495,\r
741   65525,\r
742 };\r
743 \r
744 int tantbl[]=\r
745 {\r
746   0,\r
747   1143,\r
748   2288,\r
749   3434,\r
750   4582,\r
751   5733,\r
752   6888,\r
753   8046,\r
754   9210,\r
755   10379,\r
756   11555,\r
757   12738,\r
758   13929,\r
759   15129,\r
760   16339,\r
761   17560,\r
762   18791,\r
763   20036,\r
764   21293,\r
765   22565,\r
766   23852,\r
767   25156,\r
768   26477,\r
769   27817,\r
770   29178,\r
771   30559,\r
772   31963,\r
773   33391,\r
774   34845,\r
775   36326,\r
776   37836,\r
777   39377,\r
778   40950,\r
779   42558,\r
780   44203,\r
781   45888,\r
782   47613,\r
783   49384,\r
784   51201,\r
785   53069,\r
786   54990,\r
787   56968,\r
788   59007,\r
789   61112,\r
790   63286,\r
791   65534,\r
792   67863,\r
793   70277,\r
794   72783,\r
795   75389,\r
796   78101,\r
797   80928,\r
798   83880,\r
799   86967,\r
800   90201,\r
801   93593,\r
802   97159,\r
803   100914,\r
804   104877,\r
805   109068,\r
806   113509,\r
807   118228,\r
808   123253,\r
809   128619,\r
810   134366,\r
811   140539,\r
812   147193,\r
813   154390,\r
814   162204,\r
815   170723,\r
816   180055,\r
817   190326,\r
818   201695,\r
819   214354,\r
820   228546,\r
821   244578,\r
822   262845,\r
823   283861,\r
824   308316,\r
825   337146,\r
826   371664,\r
827   413768,\r
828   466301,\r
829   533734,\r
830   623516,\r
831   749057,\r
832   937177,\r
833   1250451,\r
834   1876607,\r
835   3754215,\r
836   -2147483647, //8,\r
837   -3754786,\r
838   -1876749,\r
839   -1250515,\r
840   -937212,\r
841   -749080,\r
842   -623532,\r
843   -533746,\r
844   -466310,\r
845   -413775,\r
846   -371670,\r
847   -337151,\r
848   -308320,\r
849   -283865,\r
850   -262848,\r
851   -244581,\r
852   -228549,\r
853   -214356,\r
854   -201697,\r
855   -190328,\r
856   -180056,\r
857   -170725,\r
858   -162205,\r
859   -154391,\r
860   -147194,\r
861   -140540,\r
862   -134367,\r
863   -128620,\r
864   -123253,\r
865   -118228,\r
866   -113510,\r
867   -109068,\r
868   -104878,\r
869   -100915,\r
870   -97160,\r
871   -93594,\r
872   -90201,\r
873   -86968,\r
874   -83881,\r
875   -80929,\r
876   -78101,\r
877   -75389,\r
878   -72784,\r
879   -70277,\r
880   -67863,\r
881   -65535,\r
882   -63286,\r
883   -61112,\r
884   -59008,\r
885   -56968,\r
886   -54990,\r
887   -53069,\r
888   -51201,\r
889   -49384,\r
890   -47614,\r
891   -45888,\r
892   -44204,\r
893   -42559,\r
894   -40951,\r
895   -39377,\r
896   -37836,\r
897   -36326,\r
898   -34845,\r
899   -33391,\r
900   -31963,\r
901   -30559,\r
902   -29178,\r
903   -27818,\r
904   -26478,\r
905   -25156,\r
906   -23852,\r
907   -22565,\r
908   -21293,\r
909   -20036,\r
910   -18792,\r
911   -17560,\r
912   -16339,\r
913   -15130,\r
914   -13930,\r
915   -12738,\r
916   -11555,\r
917   -10379,\r
918   -9210,\r
919   -8046,\r
920   -6888,\r
921   -5733,\r
922   -4582,\r
923   -3434,\r
924   -2288,\r
925   -1144,\r
926   0,\r
927   1143,\r
928   2288,\r
929   3434,\r
930   4582,\r
931   5733,\r
932   6887,\r
933   8046,\r
934   9210,\r
935   10379,\r
936   11555,\r
937   12738,\r
938   13929,\r
939   15129,\r
940   16339,\r
941   17559,\r
942   18791,\r
943   20035,\r
944   21293,\r
945   22565,\r
946   23852,\r
947   25156,\r
948   26477,\r
949   27817,\r
950   29177,\r
951   30559,\r
952   31963,\r
953   33391,\r
954   34845,\r
955   36326,\r
956   37836,\r
957   39377,\r
958   40950,\r
959   42558,\r
960   44203,\r
961   45887,\r
962   47613,\r
963   49383,\r
964   51201,\r
965   53068,\r
966   54990,\r
967   56968,\r
968   59007,\r
969   61111,\r
970   63285,\r
971   65534,\r
972   67863,\r
973   70277,\r
974   72783,\r
975   75388,\r
976   78101,\r
977   80928,\r
978   83880,\r
979   86967,\r
980   90200,\r
981   93592,\r
982   97158,\r
983   100914,\r
984   104877,\r
985   109067,\r
986   113509,\r
987   118227,\r
988   123252,\r
989   128618,\r
990   134365,\r
991   140538,\r
992   147192,\r
993   154389,\r
994   162203,\r
995   170722,\r
996   180053,\r
997   190325,\r
998   201693,\r
999   214352,\r
1000   228544,\r
1001   244576,\r
1002   262842,\r
1003   283858,\r
1004   308312,\r
1005   337141,\r
1006   371659,\r
1007   413761,\r
1008   466292,\r
1009   533722,\r
1010   623500,\r
1011   749034,\r
1012   937141,\r
1013   1250388,\r
1014   1876464,\r
1015   3753644,\r
1016   -2147483647, //8,\r
1017   -3755357,\r
1018   -1876892,\r
1019   -1250578,\r
1020   -937248,\r
1021   -749103,\r
1022   -623548,\r
1023   -533757,\r
1024   -466319,\r
1025   -413782,\r
1026   -371676,\r
1027   -337155,\r
1028   -308324,\r
1029   -283868,\r
1030   -262851,\r
1031   -244584,\r
1032   -228551,\r
1033   -214358,\r
1034   -201698,\r
1035   -190330,\r
1036   -180058,\r
1037   -170726,\r
1038   -162206,\r
1039   -154392,\r
1040   -147195,\r
1041   -140541,\r
1042   -134368,\r
1043   -128621,\r
1044   -123254,\r
1045   -118229,\r
1046   -113511,\r
1047   -109069,\r
1048   -104878,\r
1049   -100916,\r
1050   -97160,\r
1051   -93594,\r
1052   -90202,\r
1053   -86968,\r
1054   -83881,\r
1055   -80929,\r
1056   -78102,\r
1057   -75390,\r
1058   -72784,\r
1059   -70278,\r
1060   -67864,\r
1061   -65535,\r
1062   -63287,\r
1063   -61112,\r
1064   -59008,\r
1065   -56969,\r
1066   -54990,\r
1067   -53069,\r
1068   -51202,\r
1069   -49384,\r
1070   -47614,\r
1071   -45888,\r
1072   -44204,\r
1073   -42559,\r
1074   -40951,\r
1075   -39377,\r
1076   -37837,\r
1077   -36327,\r
1078   -34845,\r
1079   -33392,\r
1080   -31963,\r
1081   -30559,\r
1082   -29178,\r
1083   -27818,\r
1084   -26478,\r
1085   -25156,\r
1086   -23853,\r
1087   -22565,\r
1088   -21293,\r
1089   -20036,\r
1090   -18792,\r
1091   -17560,\r
1092   -16340,\r
1093   -15130,\r
1094   -13930,\r
1095   -12739,\r
1096   -11555,\r
1097   -10380,\r
1098   -9210,\r
1099   -8047,\r
1100   -6888,\r
1101   -5733,\r
1102   -4582,\r
1103   -3434,\r
1104   -2288,\r
1105   -1144,\r
1106 };\r