Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Dreamcast
libdreamscript
Commits
3e2d3b7a
Commit
3e2d3b7a
authored
May 15, 2024
by
Donald Haase
Browse files
Resolve incompatibilities with modern KOS to get the library to build
parent
b6371546
Changes
8
Hide whitespace changes
Inline
Side-by-side
Makefile
View file @
3e2d3b7a
...
...
@@ -21,7 +21,7 @@ OBJS += core/XML.o core/music_object.o core/sprite_object.o core/makesplitpath.o
OBJS
+=
core/allocator.o core/hashmap.o core/font_object.o core/soundeffect_object.o core/zipfile_object.o core/xml_object.o
OBJS
+=
core/vmufile_object.o
KOS_CFLAGS
+=
-g
-Os
KOS_CFLAGS
+=
-g
-Os
-std
=
c++11
-D_GNU_SOURCE
-Dstricmp
=
strcasecmp
include
$(KOS_BASE)/addons/Makefile.prefab
...
...
core/jitter_table.h
View file @
3e2d3b7a
int
ijitter
[
JITTER_TABLE_SIZE
]
=
{
int
ijitter
[]
=
{
685
,
7
,
711
,
466
,
187
,
680
,
995
,
939
,
332
,
1006
,
696
,
96
,
297
,
645
,
218
,
631
,
603
,
872
,
916
,
91
,
143
,
478
,
11
,
571
,
633
,
1007
,
955
,
462
,
881
,
342
,
222
,
650
,
696
,
33
,
908
,
506
,
158
,
496
,
593
,
456
,
1021
,
581
,
68
,
343
,
742
,
421
,
987
,
264
,
682
,
536
,
463
,
907
,
104
,
939
,
770
,
864
,
705
,
644
,
63
,
463
,
470
,
997
,
926
,
767
,
842
,
959
,
551
,
462
,
792
,
212
,
375
,
1011
,
713
,
501
,
508
,
233
,
318
,
787
,
700
,
624
,
263
,
107
,
336
,
375
,
150
,
308
,
903
,
1021
,
364
,
210
,
382
,
350
,
90
,
638
,
867
,
227
,
958
,
554
,
529
,
808
,
82
,
746
,
647
,
194
,
1021
,
629
,
535
,
109
,
860
,
603
,
326
,
792
,
177
,
533
,
533
,
567
,
176
,
242
,
216
,
562
,
476
,
909
,
334
,
439
,
87
,
513
,
396
,
207
,
370
,
539
,
415
,
356
,
552
,
744
,
764
,
96
,
249
,
323
,
531
,
123
,
331
,
756
,
976
,
951
,
699
,
848
,
254
,
87
,
264
,
264
,
826
,
919
,
953
,
103
,
825
,
296
,
616
,
926
,
806
,
105
,
554
,
939
,
723
,
261
,
239
,
878
,
720
,
525
,
851
,
912
,
72
,
591
,
886
,
204
,
567
,
144
,
500
,
592
,
547
,
1011
,
232
,
905
,
939
,
564
,
402
,
828
,
910
,
1010
,
876
,
228
,
348
,
288
,
375
,
323
,
819
,
587
,
827
,
726
,
434
,
157
,
258
,
749
,
130
,
39
,
306
,
982
,
466
,
944
,
455
,
941
,
558
,
216
,
992
,
459
,
664
,
133
,
652
,
576
,
376
,
36
,
144
,
718
,
238
,
494
,
283
,
903
,
672
,
726
,
166
,
516
,
829
,
498
,
895
,
254
,
916
,
155
,
581
,
666
,
617
,
556
,
41
,
467
,
686
,
930
,
517
,
688
,
407
,
116
,
769
,
304
,
23
,
122
,
593
,
978
,
169
,
18
,
114
,
68
,
299
,
579
,
919
,
561
,
557
,
382
,
495
,
547
,
495
,
259
,
871
,
959
,
554
,
95
,
631
,
878
,
364
,
469
,
831
,
1019
,
24
,
346
,
40
,
890
,
660
,
573
,
646
,
240
,
732
,
722
,
727
,
99
,
1006
,
456
,
514
,
440
,
661
,
446
,
581
,
808
,
312
,
718
,
460
,
669
,
161
,
295
,
353
,
219
,
709
,
257
,
389
,
663
,
798
,
248
,
699
,
372
,
823
,
541
,
354
,
442
,
460
,
565
,
265
,
207
,
220
,
725
,
312
,
1000
,
790
,
186
,
363
,
499
,
222
,
997
,
425
,
714
,
173
,
37
,
976
,
147
,
764
,
222
,
557
,
489
,
1014
,
892
,
158
,
128
,
379
,
18
,
381
,
876
,
814
,
196
,
402
,
618
,
414
,
177
,
163
,
977
,
275
,
899
,
617
,
303
,
434
,
518
,
954
,
679
,
373
,
760
,
200
,
666
,
656
,
104
,
556
,
540
,
488
,
634
,
388
,
576
,
808
,
568
,
729
,
752
,
665
,
70
,
45
,
247
,
354
,
277
,
914
,
526
,
1003
,
176
,
135
,
770
,
119
,
293
,
456
,
237
,
606
,
383
,
83
,
750
,
408
,
513
,
347
,
370
,
755
,
747
,
661
,
708
,
104
,
688
,
231
,
499
,
767
,
383
,
42
,
266
,
439
,
977
,
510
,
409
,
809
,
476
,
117
,
690
,
897
,
199
,
560
,
319
,
516
,
275
,
868
,
756
,
528
,
649
,
194
,
143
,
896
,
555
,
275
,
438
,
730
,
122
,
911
,
752
,
802
,
751
,
472
,
244
,
608
,
353
,
78
,
916
,
959
,
36
,
114
,
342
,
833
,
95
,
612
,
948
,
43
,
713
,
702
,
486
,
311
,
898
,
988
,
455
,
278
,
505
,
4
,
649
,
938
,
855
,
819
,
61
,
264
,
654
,
743
,
180
,
43
,
147
,
545
,
537
,
59
,
934
,
883
,
393
,
485
,
689
,
122
,
871
,
699
,
173
,
215
,
66
,
990
,
44
,
219
,
878
,
21
,
881
,
211
,
934
,
168
,
677
,
954
,
542
,
117
,
649
,
464
,
226
,
709
,
800
,
15
,
521
,
1017
,
511
,
836
,
527
,
484
,
45
,
937
,
3
,
432
,
510
,
709
,
567
,
453
,
418
,
1007
,
293
,
105
,
270
,
760
,
154
,
94
,
828
,
656
,
971
,
93
,
262
,
60
,
158
,
404
,
331
,
113
,
985
,
354
,
967
,
434
,
906
,
926
,
75
,
981
,
597
,
532
,
628
,
28
,
273
,
1004
,
504
,
397
,
40
,
318
,
935
,
672
,
840
,
291
,
76
,
945
,
902
,
861
,
730
,
102
,
640
,
903
,
130
,
810
,
863
,
790
,
272
,
177
,
294
,
489
,
493
,
19
,
983
,
1013
,
118
,
474
,
941
,
490
,
602
,
950
,
668
,
954
,
619
,
591
,
17
,
820
,
832
,
428
,
420
,
815
,
333
,
391
,
129
,
500
,
247
,
105
,
673
,
45
,
232
,
386
,
70
,
429
,
699
,
45
,
315
,
855
,
601
,
73
,
480
,
580
,
42
,
568
,
475
,
178
,
480
,
905
,
260
,
457
,
661
,
170
,
669
,
802
,
725
,
821
,
752
,
613
,
578
,
623
,
933
,
870
,
974
,
726
,
820
,
121
,
383
,
301
,
1
,
46
,
676
,
1001
,
746
,
452
,
284
,
507
,
968
,
351
,
483
,
632
,
16
,
811
,
955
,
115
,
24
,
397
,
726
,
976
,
602
,
886
,
766
,
602
,
314
,
352
,
313
,
503
,
715
,
533
,
904
,
220
,
767
,
341
,
839
,
337
,
739
,
459
,
601
,
832
,
789
,
786
,
675
,
145
,
44
,
970
,
1013
,
376
,
252
,
72
,
93
,
483
,
123
,
166
,
869
,
995
,
716
,
463
,
18
,
750
,
810
,
286
,
260
,
79
,
495
,
638
,
989
,
25
,
806
,
427
,
663
,
750
,
664
,
495
,
160
,
569
,
392
,
84
,
51
,
209
,
125
,
33
,
993
,
140
,
42
,
303
,
754
,
44
,
812
,
946
,
561
,
935
,
864
,
664
,
93
,
362
,
0
,
303
,
744
,
191
,
450
,
764
,
825
,
722
,
916
,
672
,
940
,
877
,
188
,
712
,
1013
,
845
,
41
,
849
,
0
,
737
,
74
,
475
,
249
,
897
,
611
,
138
,
733
,
538
,
24
,
133
,
157
,
867
,
355
,
179
,
529
,
395
,
1000
,
240
,
111
,
233
,
778
,
778
,
228
,
871
,
243
,
656
,
802
,
879
,
244
,
755
,
317
,
600
,
437
,
475
,
76
,
543
,
637
,
656
,
74
,
364
,
331
,
890
,
710
,
591
,
982
,
275
,
356
,
633
,
857
,
684
,
83
,
417
,
517
,
516
,
944
,
836
,
286
,
916
,
751
,
634
,
845
,
891
,
189
,
43
,
44
,
669
,
469
,
1020
,
857
,
489
,
22
,
539
,
744
,
823
,
561
,
416
,
568
,
264
,
399
,
28
,
719
,
157
,
262
,
296
,
234
,
528
,
451
,
938
,
26
,
81
,
436
,
117
,
547
,
40
,
518
,
446
,
579
,
673
,
563
,
906
,
373
,
220
,
711
,
288
,
139
,
574
,
1008
,
433
,
783
,
761
,
288
,
387
,
373
,
202
,
462
,
935
,
453
,
779
,
534
,
368
,
999
,
752
,
463
,
816
,
251
,
384
,
957
,
6
,
82
,
847
,
604
,
894
,
958
,
781
,
584
,
535
,
32
,
99
,
294
,
74
,
544
,
230
,
195
,
290
,
331
,
563
,
822
,
144
,
407
,
745
,
745
,
320
,
975
,
346
,
900
,
76
,
248
,
705
,
869
,
496
,
608
,
462
,
821
,
919
,
91
,
940
,
877
,
99
,
923
,
105
,
106
,
38
,
242
,
872
,
640
,
183
,
155
,
796
,
553
,
227
,
162
,
358
,
702
,
576
,
408
,
79
,
468
,
574
,
237
,
600
,
26
,
452
,
275
,
730
,
55
,
102
,
128
,
689
,
615
,
853
,
417
,
149
,
546
,
887
,
614
,
929
,
1016
,
47
,
610
,
621
,
530
,
111
,
444
,
705
,
88
,
951
,
433
,
382
,
609
,
89
,
106
,
347
,
82
,
397
,
412
,
409
,
265
,
524
,
823
,
267
,
585
,
341
,
309
,
578
,
997
,
368
,
318
,
51
,
932
,
909
,
449
,
1
,
507
,
541
,
152
,
364
,
442
,
434
,
606
,
150
,
75
,
465
,
455
,
504
,
665
};
float
ujitter
[
JITTER_TABLE_SIZE
]
=
{
float
ujitter
[]
=
{
0
.
3183593750
,
0
.
8222656250
,
0
.
5166015625
,
0
.
8808593750
,
0
.
9443359375
,
0
.
9843750000
,
0
.
3134765625
,
0
.
2714843750
,
0
.
7578125000
,
0
.
1103515625
,
0
.
2333984375
,
0
.
7148437500
,
0
.
3496093750
,
0
.
1455078125
,
0
.
07714
84375
,
0
.
4472656250
,
0
.
7812500000
,
0
.
5312500000
,
0
.
0332031250
,
0
.
3203125000
,
0
.
06
83593750
,
0
.
7343750000
,
0
.
6835937500
,
0
.
6894531250
,
0
.
7578125000
,
0
.
2236328125
,
0
.
5302734375
,
0
.
4257812500
,
0
.
042
9687500
,
0
.
4970703125
,
0
.
5175781250
,
0
.
7900390625
,
0
.
3896484375
,
0
.
1171875000
,
0
.
4150390625
,
0
.
2158203125
,
0
.
3652343750
,
0
.
5888671875
,
0
.
3476562500
,
0
.
5322265625
,
0
.
8916015625
,
0
.
3251953125
,
0
.
6181640625
,
0
.
2119140625
,
0
.
2871093750
,
0
.
7548828125
,
0
.
2500000000
,
0
.
2861328125
,
0
.
7324218750
,
0
.
8613281250
,
0
.
7187500000
,
0
.
1650390625
,
0
.
1152343750
,
0
.
8994140625
,
0
.
2109375000
,
0
.
9941406250
,
0
.
9931640625
,
0
.
8369140625
,
0
.
7685546875
,
0
.
03
80859375
,
0
.
6162109375
,
0
.
9707031250
,
0
.
8886718750
,
0
.
0722656250
,
0
.
0507
812500
,
0
.
2529296875
,
0
.
8281250000
,
0
.
6191406250
,
0
.
2441406250
,
0
.
9550781250
,
0
.
2275390625
,
0
.
2500000000
,
0
.
01
95312500
,
0
.
4316406250
,
0
.
7675781250
,
0
.
7246093750
,
0
.
2119140625
,
0
.
7714843750
,
0
.
7753906250
,
0
.
7773437500
,
0
.
0244140625
,
0
.
0703125000
,
0
.
02
83203125
,
0
.
4033203125
,
0
.
0878906250
,
0
.
7460937500
,
0
.
7656250000
,
0
.
8652343750
,
0
.
1152343750
,
0
.
8339843750
,
0
.
2382812500
,
0
.
9775390625
,
0
.
2949218750
,
0
.
3164062500
,
0
.
1982421875
,
0
.
6748046875
,
0
.
2880859375
,
0
.
3457031250
,
0
.
7773437500
,
0
.
2031250000
,
0
.
5937500000
,
0
.
5419921875
,
0
.
3564453125
,
0
.
6123046875
,
0
.
7695312500
,
0
.
3750000000
,
0
.
5458984375
,
0
.
2675781250
,
0
.
2998046875
,
0
.
9277343750
,
0
.
3613281250
,
0
.
0957031250
,
0
.
4277343750
,
0
.
9423828125
,
0
.
4228515625
,
0
.
7705078125
,
0
.
6718750000
,
0
.
020507
8125
,
0
.
5800781250
,
0
.
4365234375
,
0
.
8359375000
,
0
.
0332031250
,
0
.
0214
843750
,
0
.
2958984375
,
0
.
6093750000
,
0
.
1611328125
,
0
.
8691406250
,
0
.
8828125000
,
0
.
2119140625
,
0
.
5019531250
,
0
.
6220703125
,
0
.
5849609375
,
0
.
4785156250
,
0
.
7148437500
,
0
.
8369140625
,
0
.
3261718750
,
0
.
1591796875
,
0
.
7314453125
,
0
.
2607421875
,
0
.
7968750000
,
0
.
5644531250
,
0
.
05
85937500
,
0
.
4804687500
,
0
.
6152343750
,
0
.
7949218750
,
0
.
5214843750
,
0
.
2109375000
,
0
.
7402343750
,
0
.
3564453125
,
0
.
5068359375
,
0
.
7626953125
,
0
.
8330078125
,
0
.
5546875000
,
0
.
6240234375
,
0
.
2480468750
,
0
.
4384765625
,
0
.
5283203125
,
0
.
3330078125
,
0
.
8613281250
,
0
.
3642578125
,
0
.
6601562500
,
0
.
2929687500
,
0
.
2695312500
,
0
.
7890625000
,
0
.
2041015625
,
0
.
9443359375
,
0
.
01
95312500
,
0
.
9951171875
,
0
.
8906250000
,
0
.
1289062500
,
0
.
0566406250
,
0
.
5517578125
,
0
.
7412109375
,
0
.
2402343750
,
0
.
1113281250
,
0
.
7236328125
,
0
.
03417
96875
,
0
.
4677734375
,
0
.
1357421875
,
0
.
3037109375
,
0
.
000
9765625
,
0
.
1005859375
,
0
.
2324218750
,
0
.
4160156250
,
0
.
0302734375
,
0
.
4628906250
,
0
.
8681640625
,
0
.
4619140625
,
0
.
7128906250
,
0
.
8798828125
,
0
.
7929687500
,
0
.
8642578125
,
0
.
5429687500
,
0
.
9931640625
,
0
.
1269531250
,
0
.
9033203125
,
0
.
2636718750
,
0
.
7568359375
,
0
.
8066406250
,
0
.
2392578125
,
0
.
3789062500
,
0
.
4150390625
,
0
.
06
83593750
,
0
.
1464843750
,
0
.
9179687500
,
0
.
6816406250
,
0
.
2265625000
,
0
.
3789062500
,
0
.
8359375000
,
0
.
1650390625
,
0
.
7011718750
,
0
.
4960937500
,
0
.
1572265625
,
0
.
6347656250
,
0
.
3886718750
,
0
.
7841796875
,
0
.
7851562500
,
0
.
1191406250
,
0
.
1708984375
,
0
.
9990234375
,
0
.
5234375000
,
0
.
8291015625
,
0
.
8007812500
,
0
.
6347656250
,
0
.
9482421875
,
0
.
5605468750
,
0
.
8203125000
,
0
.
4833984375
,
0
.
0322265625
,
0
.
4384765625
,
0
.
7060546875
,
0
.
5712890625
,
0
.
5449218750
,
0
.
5751953125
,
0
.
3105468750
,
0
.
4130859375
,
0
.
9169921875
,
0
.
3583984375
,
0
.
0351562500
,
0
.
4228515625
,
0
.
1445312500
,
0
.
5800781250
,
0
.
2636718750
,
0
.
6816406250
,
0
.
1318359375
,
0
.
4580078125
,
0
.
5478515625
,
0
.
5175781250
,
0
.
2705078125
,
0
.
6660156250
,
0
.
060546
8750
,
0
.
9765625000
,
0
.
7744140625
,
0
.
7031250000
,
0
.
1611328125
,
0
.
6210937500
,
0
.
9853515625
,
0
.
3701171875
,
0
.
6425781250
,
0
.
7070312500
,
0
.
2080078125
,
0
.
4824218750
,
0
.
6328125000
,
0
.
0166015625
,
0
.
3515625000
,
0
.
4101562500
,
0
.
3281250000
,
0
.
9902343750
,
0
.
4228515625
,
0
.
4052734375
,
0
.
9677734375
,
0
.
6416015625
,
0
.
3847656250
,
0
.
8652343750
,
0
.
8603515625
,
0
.
5771484375
,
0
.
8115234375
,
0
.
7617187500
,
0
.
1123046875
,
0
.
6806640625
,
0
.
7812500000
,
0
.
2294921875
,
0
.
0732421
875
,
0
.
0830078125
,
0
.
2431640625
,
0
.
7822265625
,
0
.
6503906250
,
0
.
4003906250
,
0
.
3886718750
,
0
.
6953125000
,
0
.
7724609375
,
0
.
2763671875
,
0
.
003
9062500
,
0
.
7919921875
,
0
.
4619140625
,
0
.
4873046875
,
0
.
0878906250
,
0
.
9462890625
,
0
.
5937500000
,
0
.
6679687500
,
0
.
8671875000
,
0
.
2529296875
,
0
.
4267578125
,
0
.
5722656250
,
0
.
4375000000
,
0
.
7216796875
,
0
.
7968750000
,
0
.
0351562500
,
0
.
2265625000
,
0
.
6494140625
,
0
.
5048828125
,
0
.
0664062500
,
0
.
1132812500
,
0
.
2841796875
,
0
.
1494140625
,
0
.
9843750000
,
0
.
9218750000
,
0
.
1191406250
,
0
.
6630859375
,
0
.
8632812500
,
0
.
8642578125
,
0
.
9394531250
,
0
.
2255859375
,
0
.
076171
8750
,
0
.
0957031250
,
0
.
6337890625
,
0
.
3310546875
,
0
.
9062500000
,
0
.
4091796875
,
0
.
6132812500
,
0
.
6484375000
,
0
.
4804687500
,
0
.
0576171
875
,
0
.
5156250000
,
0
.
2646484375
,
0
.
06
83593750
,
0
.
3623046875
,
0
.
5029296875
,
0
.
9804687500
,
0
.
5712890625
,
0
.
8681640625
,
0
.
9726562500
,
0
.
8437500000
,
0
.
1962890625
,
0
.
9785156250
,
0
.
6933593750
,
0
.
1601562500
,
0
.
2900390625
,
0
.
0263671
875
,
0
.
3017578125
,
0
.
0732421
875
,
0
.
6513671875
,
0
.
1933593750
,
0
.
6201171875
,
0
.
5703125000
,
0
.
5722656250
,
0
.
3125000000
,
0
.
3339843750
,
0
.
6962890625
,
0
.
0810546875
,
0
.
1250000000
,
0
.
1591796875
,
0
.
005
8593750
,
0
.
5439453125
,
0
.
5546875000
,
0
.
6328125000
,
0
.
0332031250
,
0
.
6064453125
,
0
.
8720703125
,
0
.
0732421
875
,
0
.
001
9531250
,
0
.
6445312500
,
0
.
7626953125
,
0
.
8984375000
,
0
.
3691406250
,
0
.
06542
96875
,
0
.
1640625000
,
0
.
5058593750
,
0
.
1708984375
,
0
.
2724609375
,
0
.
7509765625
,
0
.
9687500000
,
0
.
8564453125
,
0
.
3437500000
,
0
.
07
81250000
,
0
.
1025390625
,
0
.
3808593750
,
0
.
9736328125
,
0
.
0800781250
,
0
.
7363281250
,
0
.
1279296875
,
0
.
3222656250
,
0
.
7314453125
,
0
.
3212890625
,
0
.
7929687500
,
0
.
6503906250
,
0
.
8125000000
,
0
.
2578125000
,
0
.
9687500000
,
0
.
3515625000
,
0
.
5576171875
,
0
.
4169921875
,
0
.
9716796875
,
0
.
6855468750
,
0
.
2861328125
,
0
.
2431640625
,
0
.
6230468750
,
0
.
6464843750
,
0
.
4501953125
,
0
.
5048828125
,
0
.
4687500000
,
0
.
3300781250
,
0
.
7734375000
,
0
.
06
93359375
,
0
.
4482421875
,
0
.
3916015625
,
0
.
7441406250
,
0
.
076171
8750
,
0
.
4492187500
,
0
.
1298828125
,
0
.
6142578125
,
0
.
3945312500
,
0
.
8701171875
,
0
.
8222656250
,
0
.
7041015625
,
0
.
2480468750
,
0
.
1474609375
,
0
.
6113281250
,
0
.
04
88281250
,
0
.
3916015625
,
0
.
7363281250
,
0
.
9619140625
,
0
.
8662109375
,
0
.
9921875000
,
0
.
1044921875
,
0
.
8779296875
,
0
.
7294921875
,
0
.
5419921875
,
0
.
3759765625
,
0
.
1318359375
,
0
.
2666015625
,
0
.
4980468750
,
0
.
3330078125
,
0
.
2080078125
,
0
.
5126953125
,
0
.
8808593750
,
0
.
8613281250
,
0
.
8017578125
,
0
.
2871093750
,
0
.
7958984375
,
0
.
7451171875
,
0
.
1875000000
,
0
.
8652343750
,
0
.
5322265625
,
0
.
1416015625
,
0
.
7753906250
,
0
.
5312500000
,
0
.
6689453125
,
0
.
3691406250
,
0
.
3457031250
,
0
.
8828125000
,
0
.
2783203125
,
0
.
9160156250
,
0
.
1533203125
,
0
.
8193359375
,
0
.
8408203125
,
0
.
0507
812500
,
0
.
6835937500
,
0
.
6250000000
,
0
.
8779296875
,
0
.
3066406250
,
0
.
9345703125
,
0
.
1054687500
,
0
.
3623046875
,
0
.
5517578125
,
0
.
9609375000
,
0
.
1328125000
,
0
.
7714843750
,
0
.
5546875000
,
0
.
5751953125
,
0
.
7753906250
,
0
.
0576171
875
,
0
.
1220703125
,
0
.
9980468750
,
0
.
2099609375
,
0
.
7382812500
,
0
.
1845703125
,
0
.
2500000000
,
0
.
5009765625
,
0
.
8115234375
,
0
.
8085937500
,
0
.
7255859375
,
0
.
7128906250
,
0
.
03710
93750
,
0
.
2460937500
,
0
.
00
87890625
,
0
.
4931640625
,
0
.
4462890625
,
0
.
9824218750
,
0
.
1279296875
,
0
.
8066406250
,
0
.
4599609375
,
0
.
4257812500
,
0
.
4365234375
,
0
.
6865234375
,
0
.
8437500000
,
0
.
7031250000
,
0
.
6738281250
,
0
.
3007812500
,
0
.
7119140625
,
0
.
042
9687500
,
0
.
8916015625
,
0
.
0976562500
,
0
.
9316406250
,
0
.
7773437500
,
0
.
2636718750
,
0
.
8964843750
,
0
.
4218750000
,
0
.
07421
87500
,
0
.
8144531250
,
0
.
2421875000
,
0
.
0722656250
,
0
.
5195312500
,
0
.
1640625000
,
0
.
8505859375
,
0
.
0566406250
,
0
.
6103515625
,
0
.
03710
93750
,
0
.
2392578125
,
0
.
3388671875
,
0
.
4257812500
,
0
.
8232421875
,
0
.
2333984375
,
0
.
9453125000
,
0
.
2578125000
,
0
.
4833984375
,
0
.
8681640625
,
0
.
0966796875
,
0
.
1650390625
,
0
.
9267578125
,
0
.
6894531250
,
0
.
5419921875
,
0
.
2656250000
,
0
.
044
9218750
,
0
.
5634765625
,
0
.
2480468750
,
0
.
4638671875
,
0
.
4531250000
,
0
.
2373046875
,
0
.
00
87890625
,
0
.
2666015625
,
0
.
9072265625
,
0
.
005
8593750
,
0
.
4384765625
,
0
.
6523437500
,
0
.
9609375000
,
0
.
3964843750
,
0
.
1298828125
,
0
.
7812500000
,
0
.
9882812500
,
0
.
6611328125
,
0
.
4560546875
,
0
.
8466796875
,
0
.
7509765625
,
0
.
5566406250
,
0
.
5185546875
,
0
.
7656250000
,
0
.
6386718750
,
0
.
3056640625
,
0
.
9833984375
,
0
.
8974609375
,
0
.
0107421
875
,
0
.
2373046875
,
0
.
9814453125
,
0
.
7001953125
,
0
.
1289062500
,
0
.
2519531250
,
0
.
8271484375
,
0
.
4443359375
,
0
.
4453125000
,
0
.
5507812500
,
0
.
8964843750
,
0
.
9003906250
,
0
.
9619140625
,
0
.
7070312500
,
0
.
6582031250
,
0
.
6025390625
,
0
.
3906250000
,
0
.
8769531250
,
0
.
3466796875
,
0
.
9101562500
,
0
.
4091796875
,
0
.
3408203125
,
0
.
2460937500
,
0
.
9853515625
,
0
.
7919921875
,
0
.
4365234375
,
0
.
7167968750
,
0
.
0302734375
,
0
.
1738281250
,
0
.
8691406250
,
0
.
1152343750
,
0
.
9560546875
,
0
.
8955078125
,
0
.
1513671875
,
0
.
3955078125
,
0
.
2304687500
,
0
.
4716796875
,
0
.
1132812500
,
0
.
4609375000
,
0
.
2041015625
,
0
.
9394531250
,
0
.
8554687500
,
0
.
1562500000
,
0
.
8554687500
,
0
.
2792968750
,
0
.
7099609375
,
0
.
1552734375
,
0
.
9062500000
,
0
.
5498046875
,
0
.
6181640625
,
0
.
7265625000
,
0
.
7636718750
,
0
.
9550781250
,
0
.
3085937500
,
0
.
5302734375
,
0
.
9355468750
,
0
.
003
9062500
,
0
.
6113281250
,
0
.
005
8593750
,
0
.
6777343750
,
0
.
8251953125
,
0
.
8017578125
,
0
.
6494140625
,
0
.
7666015625
,
0
.
9492187500
,
0
.
6630859375
,
0
.
3095703125
,
0
.
7558593750
,
0
.
8212890625
,
0
.
8164062500
,
0
.
6494140625
,
0
.
9082031250
,
0
.
6093750000
,
0
.
3164062500
,
0
.
9804687500
,
0
.
5498046875
,
0
.
6523437500
,
0
.
3662109375
,
0
.
7060546875
,
0
.
8867187500
,
0
.
9414062500
,
0
.
8857421875
,
0
.
6132812500
,
0
.
7187500000
,
0
.
4531250000
,
0
.
2695312500
,
0
.
1035156250
,
0
.
9863281250
,
0
.
6494140625
,
0
.
7177734375
,
0
.
1044921875
,
0
.
0576171
875
,
0
.
2851562500
,
0
.
6328125000
,
0
.
8349609375
,
0
.
1494140625
,
0
.
3974609375
,
0
.
5380859375
,
0
.
6689453125
,
0
.
5644531250
,
0
.
2851562500
,
0
.
3496093750
,
0
.
07
81250000
,
0
.
6123046875
,
0
.
003
9062500
,
0
.
4335937500
,
0
.
8867187500
,
0
.
4941406250
,
0
.
7353515625
,
0
.
2988281250
,
0
.
8554687500
,
0
.
04
98046875
,
0
.
8212890625
,
0
.
7558593750
,
0
.
8105468750
,
0
.
5000000000
,
0
.
7099609375
,
0
.
5830078125
,
0
.
1005859375
,
0
.
1982421875
,
0
.
9785156250
,
0
.
8583984375
,
0
.
0664062500
,
0
.
1689453125
,
0
.
4511718750
,
0
.
8417968750
,
0
.
3046875000
,
0
.
0859375000
,
0
.
5498046875
,
0
.
3251953125
,
0
.
8564453125
,
0
.
4404296875
,
0
.
00
97656250
,
0
.
3681640625
,
0
.
8525390625
,
0
.
2177734375
,
0
.
2050781250
,
0
.
9882812500
,
0
.
6660156250
,
0
.
5976562500
,
0
.
1699218750
,
0
.
4433593750
,
0
.
0869140625
,
0
.
2333984375
,
0
.
2919921875
,
0
.
7529296875
,
0
.
4697265625
,
0
.
6718750000
,
0
.
0722656250
,
0
.
9785156250
,
0
.
0957031250
,
0
.
7421875000
,
0
.
7578125000
,
0
.
9160156250
,
0
.
0996093750
,
0
.
3398437500
,
0
.
4267578125
,
0
.
2646484375
,
0
.
1240234375
,
0
.
2402343750
,
0
.
7597656250
,
0
.
3691406250
,
0
.
4541015625
,
0
.
5361328125
,
0
.
6210937500
,
0
.
2968750000
,
0
.
4814453125
,
0
.
1845703125
,
0
.
2324218750
,
0
.
7373046875
,
0
.
0888671875
,
0
.
2148437500
,
0
.
4589843750
,
0
.
8310546875
,
0
.
7441406250
,
0
.
4990234375
,
0
.
1376953125
,
0
.
2294921875
,
0
.
7314453125
,
0
.
8750000000
,
0
.
7382812500
,
0
.
036132
8125
,
0
.
9648437500
,
0
.
9814453125
,
0
.
5449218750
,
0
.
6298828125
,
0
.
1455078125
,
0
.
6552734375
,
0
.
2685546875
,
0
.
2656250000
,
0
.
5800781250
,
0
.
2363281250
,
0
.
1425781250
,
0
.
5615234375
,
0
.
7568359375
,
0
.
9814453125
,
0
.
4052734375
,
0
.
1796875000
,
0
.
6083984375
,
0
.
9882812500
,
0
.
1923828125
,
0
.
8525390625
,
0
.
3515625000
,
0
.
9531250000
,
0
.
5859375000
,
0
.
1318359375
,
0
.
6982421875
,
0
.
7851562500
,
0
.
4218750000
,
0
.
4951171875
,
0
.
1123046875
,
0
.
8212890625
,
0
.
8203125000
,
0
.
4121093750
,
0
.
4912109375
,
0
.
3076171875
,
0
.
7255859375
,
0
.
4052734375
,
0
.
2060546875
,
0
.
1328125000
,
0
.
4833984375
,
0
.
6376953125
,
0
.
7343750000
,
0
.
6738281250
,
0
.
044
9218750
,
0
.
8496093750
,
0
.
03
90625000
,
0
.
2548828125
,
0
.
2490234375
,
0
.
2753906250
,
0
.
4960937500
,
0
.
3310546875
,
0
.
1904296875
,
0
.
1171875000
,
0
.
2792968750
,
0
.
2236328125
,
0
.
3925781250
,
0
.
9345703125
,
0
.
7705078125
,
0
.
2968750000
,
0
.
8281250000
,
0
.
6982421875
,
0
.
6455078125
,
0
.
0322265625
,
0
.
1503906250
,
0
.
8076171875
,
0
.
7207031250
,
0
.
7207031250
,
0
.
2851562500
,
0
.
8896484375
,
0
.
4189453125
,
0
.
6533203125
,
0
.
2753906250
,
0
.
2763671875
,
0
.
7109375000
,
0
.
9013671875
,
0
.
2597656250
,
0
.
4902343750
,
0
.
5615234375
,
0
.
2919921875
,
0
.
3242187500
,
0
.
4111328125
,
0
.
2529296875
,
0
.
0976562500
,
0
.
9775390625
,
0
.
8701171875
,
0
.
2773437500
,
0
.
5449218750
,
0
.
6962890625
,
0
.
7880859375
,
0
.
9003906250
,
0
.
6562500000
,
0
.
7509765625
,
0
.
4550781250
,
0
.
7656250000
,
0
.
3271484375
,
0
.
8447265625
,
0
.
7001953125
,
0
.
07421
87500
,
0
.
1679687500
,
0
.
3427734375
,
0
.
2851562500
,
0
.
8828125000
,
0
.
6347656250
,
0
.
5458984375
,
0
.
5820312500
,
0
.
7441406250
,
0
.
5380859375
,
0
.
9912109375
,
0
.
0566406250
,
0
.
3447265625
,
0
.
3574218750
,
0
.
5185546875
,
0
.
0820312500
,
0
.
8242187500
,
0
.
06542
96875
,
0
.
3593750000
,
0
.
6972656250
,
0
.
0332031250
,
0
.
5927734375
,
0
.
1689453125
,
0
.
9863281250
,
0
.
0673
828125
,
0
.
7988281250
,
0
.
1347656250
,
0
.
2363281250
,
0
.
9501953125
,
0
.
0673
828125
,
0
.
6142578125
,
0
.
8134765625
,
0
.
2011718750
,
0
.
6250000000
,
0
.
4296875000
,
0
.
4208984375
,
0
.
2363281250
,
0
.
4648437500
,
0
.
6416015625
,
0
.
6269531250
,
0
.
9746093750
,
0
.
7460937500
,
0
.
5771484375
,
0
.
1962890625
,
0
.
6718750000
,
0
.
6552734375
,
0
.
6289062500
,
0
.
2958984375
,
0
.
7177734375
,
0
.
3671875000
,
0
.
3505859375
,
0
.
8730468750
,
0
.
9667968750
,
0
.
00
87890625
,
0
.
9560546875
,
0
.
1103515625
,
0
.
9580078125
,
0
.
6162109375
,
0
.
0732421
875
,
0
.
4892578125
,
0
.
1083984375
,
0
.
1435546875
,
0
.
8232421875
,
0
.
3427734375
,
0
.
5888671875
,
0
.
9287109375
,
0
.
5166015625
,
0
.
5693359375
,
0
.
9794921875
,
0
.
6728515625
,
0
.
8515625000
,
0
.
06
83593750
,
0
.
9921875000
,
0
.
2509765625
,
0
.
9472656250
,
0
.
1328125000
,
0
.
3623046875
,
0
.
6972656250
,
0
.
2900390625
,
0
.
1806640625
,
0
.
4873046875
,
0
.
6914062500
,
0
.
0751
953125
,
0
.
5585937500
,
0
.
4296875000
,
0
.
9472656250
,
0
.
0527343750
,
0
.
3066406250
,
0
.
3886718750
,
0
.
3603515625
,
0
.
1416015625
,
0
.
5283203125
,
0
.
7207031250
,
0
.
7138671875
,
0
.
2988281250
,
0
.
9326171875
,
0
.
9179687500
,
0
.
3632812500
,
0
.
7978515625
,
0
.
013671
8750
,
0
.
5546875000
,
0
.
8632812500
,
0
.
6562500000
,
0
.
8066406250
,
0
.
1318359375
,
0
.
1103515625
,
0
.
8496093750
,
0
.
9228515625
,
0
.
7773437500
,
0
.
4150390625
,
0
.
6640625000
,
0
.
3271484375
,
0
.
9677734375
,
0
.
2519531250
,
0
.
4238281250
,
0
.
7421875000
,
0
.
6611328125
,
0
.
3789062500
,
0
.
4238281250
,
0
.
3330078125
,
0
.
4736328125
,
0
.
7802734375
,
0
.
4980468750
,
0
.
1572265625
,
0
.
7236328125
,
0
.
7021484375
,
0
.
8964843750
,
0
.
3955078125
,
0
.
1728515625
,
0
.
9960937500
,
0
.
2128906250
,
0
.
3691406250
,
0
.
1708984375
,
0
.
3906250000
,
0
.
7236328125
,
0
.
4003906250
,
0
.
5166015625
,
0
.
2431640625
,
0
.
8105468750
,
0
.
4648437500
,
0
.
5898437500
,
0
.
02
92968750
,
0
.
8750000000
,
0
.
8916015625
,
0
.
2568359375
,
0
.
4892578125
,
0
.
4609375000
,
0
.
9326171875
,
0
.
4824218750
,
0
.
1474609375
,
0
.
8769531250
,
0
.
3408203125
,
0
.
5458984375
,
0
.
0273437500
,
0
.
7167968750
,
0
.
0556640625
,
0
.
1523437500
,
0
.
02
92968750
,
0
.
8046875000
,
0
.
1943359375
,
0
.
4951171875
,
0
.
7568359375
,
0
.
7343750000
,
0
.
6494140625
,
0
.
3798828125
,
0
.
7861328125
,
0
.
6591796875
,
0
.
2294921875
,
0
.
8564453125
,
0
.
6933593750
,
0
.
8515625000
,
0
.
2519531250
,
0
.
2939453125
,
0
.
6611328125
,
0
.
1933593750
};
float
vjitter
[
JITTER_TABLE_SIZE
]
=
{
float
vjitter
[]
=
{
0
.
4453125000
,
0
.
4443359375
,
0
.
5312500000
,
0
.
5712890625
,
0
.
6025390625
,
0
.
7568359375
,
0
.
7675781250
,
0
.
6914062500
,
0
.
4130859375
,
0
.
8281250000
,
0
.
2949218750
,
0
.
3876953125
,
0
.
9072265625
,
0
.
5273437500
,
0
.
6083984375
,
0
.
6113281250
,
0
.
6601562500
,
0
.
7949218750
,
0
.
2744140625
,
0
.
3896484375
,
0
.
0859375000
,
0
.
4003906250
,
0
.
9375000000
,
0
.
5029296875
,
0
.
4013671875
,
0
.
9912109375
,
0
.
6542968750
,
0
.
9628906250
,
0
.
8789062500
,
0
.
4707031250
,
0
.
7001953125
,
0
.
9746093750
,
0
.
5742187500
,
0
.
0976562500
,
0
.
4033203125
,
0
.
3710937500
,
0
.
3828125000
,
0
.
5810546875
,
0
.
9824218750
,
0
.
9814453125
,
0
.
8515625000
,
0
.
8486328125
,
0
.
2187500000
,
0
.
4501953125
,
0
.
2812500000
,
0
.
9931640625
,
0
.
0839843750
,
0
.
1083984375
,
0
.
9697265625
,
0
.
1064453125
,
0
.
4609375000
,
0
.
046
8750000
,
0
.
6953125000
,
0
.
1992187500
,
0
.
0166015625
,
0
.
9794921875
,
0
.
4208984375
,
0
.
1826171875
,
0
.
2402343750
,
0
.
3105468750
,
0
.
2968750000
,
0
.
8007812500
,
0
.
9179687500
,
0
.
3388671875
,
0
.
2275390625
,
0
.
4941406250
,
0
.
9882812500
,
0
.
3603515625
,
0
.
005
8593750
,
0
.
2451171875
,
0
.
0615234375
,
0
.
8271484375
,
0
.
2138671875
,
0
.
6152343750
,
0
.
0244140625
,
0
.
2910156250
,
0
.
2646484375
,
0
.
2080078125
,
0
.
3212890625
,
0
.
8574218750
,
0
.
8691406250
,
0
.
6943359375
,
0
.
8447265625
,
0
.
9375000000
,
0
.
5976562500
,
0
.
3125000000
,
0
.
1552734375
,
0
.
4921875000
,
0
.
5966796875
,
0
.
1640625000
,
0
.
0107421
875
,
0
.
2109375000
,
0
.
8222656250
,
0
.
8310546875
,
0
.
3339843750
,
0
.
6142578125
,
0
.
8193359375
,
0
.
6025390625
,
0
.
7314453125
,
0
.
3251953125
,
0
.
9970703125
,
0
.
9267578125
,
0
.
8554687500
,
0
.
1455078125
,
0
.
1025390625
,
0
.
5361328125
,
0
.
4199218750
,
0
.
5859375000
,
0
.
8398437500
,
0
.
9814453125
,
0
.
6474609375
,
0
.
4960937500
,
0
.
1523437500
,
0
.
9140625000
,
0
.
6562500000
,
0
.
9414062500
,
0
.
0849609375
,
0
.
4248046875
,
0
.
8750000000
,
0
.
8750000000
,
0
.
2070312500
,
0
.
9326171875
,
0
.
2343750000
,
0
.
8457031250
,
0
.
8896484375
,
0
.
4814453125
,
0
.
8320312500
,
0
.
5166015625
,
0
.
07421
87500
,
0
.
8154296875
,
0
.
1044921875
,
0
.
4951171875
,
0
.
1210937500
,
0
.
1474609375
,
0
.
6015625000
,
0
.
3105468750
,
0
.
6982421875
,
0
.
0839843750
,
0
.
2441406250
,
0
.
8867187500
,
0
.
01
85546875
,
0
.
6650390625
,
0
.
8417968750
,
0
.
8007812500
,
0
.
8769531250
,
0
.
8154296875
,
0
.
6582031250
,
0
.
6132812500
,
0
.
4414062500
,
0
.
6923828125
,
0
.
2636718750
,
0
.
8896484375
,
0
.
4082031250
,
0
.
2949218750
,
0
.
9199218750
,
0
.
7236328125
,
0
.
5576171875
,
0
.
3164062500
,
0
.
5214843750
,
0
.
0849609375
,
0
.
6318359375
,
0
.
4316406250
,
0
.
8115234375
,
0
.
4453125000
,
0
.
5712890625
,
0
.
9707031250
,
0
.
4716796875
,
0
.
5322265625
,
0
.
04
88281250
,
0
.
2226562500
,
0
.
8642578125
,
0
.
9677734375
,
0
.
7226562500
,
0
.
2880859375
,
0
.
8769531250
,
0
.
4990234375
,
0
.
3505859375
,
0
.
5048828125
,
0
.
7353515625
,
0
.
9638671875
,
0
.
5087890625
,
0
.
8242187500
,
0
.
9033203125
,
0
.
4697265625
,
0
.
9003906250
,
0
.
1611328125
,
0
.
5800781250
,
0
.
9062500000
,
0
.
7656250000
,
0
.
5537109375
,
0
.
8583984375
,
0
.
3730468750
,
0
.
3935546875
,
0
.
8886718750
,
0
.
7460937500
,
0
.
7509765625
,
0
.
9189453125
,
0
.
9541015625
,
0
.
8769531250
,
0
.
9716796875
,
0
.
1083984375
,
0
.
5703125000
,
0
.
3203125000
,
0
.
9160156250
,
0
.
4121093750
,
0
.
4482421875
,
0
.
4062500000
,
0
.
8261718750
,
0
.
8447265625
,
0
.
2480468750
,
0
.
2207031250
,
0
.
9843750000
,
0
.
006
8359375
,
0
.
9033203125
,
0
.
5507812500
,
0
.
7255859375
,
0
.
3369140625
,
0
.
5927734375
,
0
.
7558593750
,
0
.
9667968750
,
0
.
3417968750
,
0
.
8310546875
,
0
.
5058593750
,
0
.
8769531250
,
0
.
6230468750
,
0
.
7460937500
,
0
.
7070312500
,
0
.
3945312500
,
0
.
7998046875
,
0
.
8515625000
,
0
.
5224609375
,
0
.
6210937500
,
0
.
5224609375
,
0
.
3271484375
,
0
.
2236328125
,
0
.
9707031250
,
0
.
4677734375
,
0
.
9482421875
,
0
.
005
8593750
,
0
.
8378906250
,
0
.
0751
953125
,
0
.
3310546875
,
0
.
9882812500
,
0
.
9335937500
,
0
.
6015625000
,
0
.
9648437500
,
0
.
5585937500
,
0
.
6865234375
,
0
.
4882812500
,
0
.
5917968750
,
0
.
2910156250
,
0
.
7109375000
,
0
.
7539062500
,
0
.
7158203125
,
0
.
9501953125
,
0
.
7275390625
,
0
.
7958984375
,
0
.
4169921875
,
0
.
8486328125
,
0
.
9150390625
,
0
.
3632812500
,
0
.
0615234375
,
0
.
2080078125
,
0
.
9248046875
,
0
.
1630859375
,
0
.
9375000000
,
0
.
4023437500
,
0
.
1201171875
,
0
.
3242187500
,
0
.
1894531250
,
0
.
1660156250
,
0
.
4707031250
,
0
.
4267578125
,
0
.
6640625000
,
0
.
2802734375
,
0
.
3593750000
,
0
.
7226562500
,
0
.
3232421875
,
0
.
05
95703125
,
0
.
8037109375
,
0
.
1533203125
,
0
.
6523437500
,
0
.
3466796875
,
0
.
6435546875
,
0
.
6201171875
,
0
.
9736328125
,
0
.
8691406250
,
0
.
6201171875
,
0
.
1962890625
,
0
.
6503906250
,
0
.
8974609375
,
0
.
3154296875
,
0
.
4609375000
,
0
.
8310546875
,
0
.
3798828125
,
0
.
1494140625
,
0
.
4208984375
,
0
.
5166015625
,
0
.
2968750000
,
0
.
4394531250
,
0
.
3466796875
,
0
.
3046875000
,
0
.
02
92968750
,
0
.
3535156250
,
0
.
9257812500
,
0
.
1435546875
,
0
.
2949218750
,
0
.
8837890625
,
0
.
1308593750
,
0
.
6464843750
,
0
.
8906250000
,
0
.
1914062500
,
0
.
8203125000
,
0
.
0507
812500
,
0
.
1796875000
,
0
.
1816406250
,
0
.
9628906250
,
0
.
5771484375
,
0
.
2441406250
,
0
.
5039062500
,
0
.
2734375000
,
0
.
7636718750
,
0
.
1064453125
,
0
.
7167968750
,
0
.
5947265625
,
0
.
2080078125
,
0
.
4355468750
,
0
.
5107421875
,
0
.
2373046875
,
0
.
01464
84375
,
0
.
1093750000
,
0
.
1835937500
,
0
.
4638671875
,
0
.
047
8515625
,
0
.
8808593750
,
0
.
3642578125
,
0
.
9628906250
,
0
.
7539062500
,
0
.
5166015625
,
0
.
7285156250
,
0
.
2392578125
,
0
.
7841796875
,
0
.
2744140625
,
0
.
6347656250
,
0
.
0820312500
,
0
.
8935546875
,
0
.
6591796875
,
0
.
6279296875
,
0
.
2128906250
,
0
.
4746093750
,
0
.
2255859375
,
0
.
01757
81250
,
0
.
7333984375
,
0
.
6269531250
,
0
.
9648437500
,
0
.
7646484375
,
0
.
6054687500
,
0
.
7373046875
,
0
.
7763671875
,
0
.
044
9218750
,
0
.
8945312500
,
0
.
1406250000
,
0
.
6962890625
,
0
.
6279296875
,
0
.
5507812500
,
0
.
4384765625
,
0
.
3916015625
,
0
.
9472656250
,
0
.
7744140625
,
0
.
4316406250
,
0
.
8056640625
,
0
.
9970703125
,
0
.
1806640625
,
0
.
3417968750
,
0
.
2402343750
,
0
.
3271484375
,
0
.
7949218750
,
0
.
9091796875
,
0
.
5429687500
,
0
.
8818359375
,
0
.
9677734375
,
0
.
0996093750
,
0
.
7480468750
,
0
.
6728515625
,
0
.
3935546875
,
0
.
3916015625
,
0
.
6601562500
,
0
.
7763671875
,
0
.
1201171875
,
0
.
9160156250
,
0
.
6083984375
,
0
.
2314453125
,
0
.
5517578125
,
0
.
0312500000
,
0
.
2177734375
,
0
.
6630859375
,
0
.
5546875000
,
0
.
1406250000
,
0
.
6035156250
,
0
.
1660156250
,
0
.
6601562500
,
0
.
6650390625
,
0
.
2255859375
,
0
.
7011718750
,
0
.
6240234375
,
0
.
007
8125000
,
0
.
8095703125
,
0
.
3769531250
,
0
.
9931640625
,
0
.
9960937500
,
0
.
4931640625
,
0
.
9082031250
,
0
.
4990234375
,
0
.
6367187500
,
0
.
9003906250
,
0
.
7900390625
,
0
.
7812500000
,
0
.
9755859375
,
0
.
2812500000
,
0
.
6523437500
,
0
.
7431640625
,
0
.
3935546875
,
0
.
4970703125
,
0
.
3671875000
,
0
.
5332031250
,
0
.
6699218750
,
0
.
5332031250
,
0
.
1347656250
,
0
.
3798828125
,
0
.
6123046875
,
0
.
6748046875
,
0
.
5195312500
,
0
.
9609375000
,
0
.
8593750000
,
0
.
6347656250
,
0
.
5429687500
,
0
.
3447265625
,
0
.
6308593750
,
0
.
9179687500
,
0
.
0507
812500
,
0
.
5488281250
,
0
.
5166015625
,
0
.
8515625000
,
0
.
9560546875
,
0
.
001
9531250
,
0
.
0332031250
,
0
.
0312500000
,
0
.
1855468750
,
0
.
4833984375
,
0
.
2949218750
,
0
.
7832031250
,
0
.
5292968750
,
0
.
000
9765625
,
0
.
9228515625
,
0
.
6699218750
,
0
.
6884765625
,
0
.
3632812500
,
0
.
05
85937500
,
0
.
3476562500
,
0
.
9335937500
,
0
.
5185546875
,
0
.
9833984375
,
0
.
3671875000
,
0
.
5000000000
,
0
.
7832031250
,
0
.
4394531250
,
0
.
01171
87500
,
0
.
4433593750
,
0
.
5429687500
,
0
.
042
9687500
,
0
.
0966796875
,
0
.
7724609375
,
0
.
5859375000
,
0
.
3398437500
,
0
.
1611328125
,
0
.
5205078125
,
0
.
6074218750
,
0
.
7675781250
,
0
.
6240234375
,
0
.
6054687500
,
0
.
2441406250
,
0
.
2470703125
,
0
.
6943359375
,
0
.
1816406250
,
0
.
0332031250
,
0
.
0625000000
,
0
.
06
83593750
,
0
.
2441406250
,
0
.
5556640625
,
0
.
1337890625
,
0
.
1083984375
,
0
.
8417968750
,
0
.
4296875000
,
0
.
7050781250
,
0
.
2871093750
,
0
.
9042968750
,
0
.
4746093750
,
0
.
7060546875
,
0
.
5458984375
,
0
.
8183593750
,
0
.
9091796875
,
0
.
6406250000
,
0
.
8974609375
,
0
.
8710937500
,
0
.
6416015625
,
0
.
6416015625
,
0
.
4355468750
,
0
.
06542
96875
,
0
.
1367187500
,
0
.
3554687500
,
0
.
9072265625
,
0
.
9130859375
,
0
.
8173828125
,
0
.
4423828125
,
0
.
5722656250
,
0
.
1767578125
,
0
.
03
80859375
,
0
.
6250000000
,
0
.
1484375000
,
0
.
5195312500
,
0
.
1484375000
,
0
.
4423828125
,
0
.
6513671875
,
0
.
1191406250
,
0
.
6708984375
,
0
.
9287109375
,
0
.
8759765625
,
0
.
8955078125
,
0
.
8437500000
,
0
.
4492187500
,
0
.
4677734375
,
0
.
6142578125
,
0
.
4472656250
,
0
.
7060546875
,
0
.
0722656250
,
0
.
0820312500
,
0
.
5781250000
,
0
.
4414062500
,
0
.
1816406250
,
0
.
4863281250
,
0
.
6044921875
,
0
.
6210937500
,
0
.
2187500000
,
0
.
022460
9375
,
0
.
5664062500
,
0
.
6865234375
,
0
.
2167968750
,
0
.
7802734375
,
0
.
4667968750
,
0
.
8818359375
,
0
.
4394531250
,
0
.
8095703125
,
0
.
9941406250
,
0
.
5566406250
,
0
.
5976562500
,
0
.
8505859375
,
0
.
7783203125
,
0
.
6503906250
,
0
.
1484375000
,
0
.
8105468750
,
0
.
1425781250
,
0
.
2998046875
,
0
.
6376953125
,
0
.
0810546875
,
0
.
0410156250
,
0
.
4853515625
,
0
.
5000000000
,
0
.
7900390625
,
0
.
2451171875
,
0
.
9072265625
,
0
.
1708984375
,
0
.
3281250000
,
0
.
4775390625
,
0
.
7060546875
,
0
.
1250000000
,
0
.
5849609375
,
0
.
8076171875
,
0
.
2128906250
,
0
.
6298828125
,
0
.
6123046875
,
0
.
9619140625
,
0
.
5117187500
,
0
.
8398437500
,
0
.
3388671875
,
0
.
7939453125
,
0
.
2460937500
,
0
.
5000000000
,
0
.
03417
96875
,
0
.
9013671875
,
0
.
5996093750
,
0
.
1865234375
,
0
.
7236328125
,
0
.
7841796875
,
0
.
8388671875
,
0
.
8720703125
,
0
.
3056640625
,
0
.
7685546875
,
0
.
013671
8750
,
0
.
8642578125
,
0
.
02
92968750
,
0
.
8935546875
,
0
.
3906250000
,
0
.
9628906250
,
0
.
7509765625
,
0
.
6787109375
,
0
.
8349609375
,
0
.
2832031250
,
0
.
4248046875
,
0
.
9208984375
,
0
.
6650390625
,
0
.
7167968750
,
0
.
044
9218750
,
0
.
05
85937500
,
0
.
3017578125
,
0
.
6748046875
,
0
.
1386718750
,
0
.
8847656250
,
0
.
3964843750
,
0
.
7402343750
,
0
.
4228515625
,
0
.
1757812500
,
0
.
8740234375
,
0
.
3769531250
,
0
.
7558593750
,
0
.
8193359375
,
0
.
4560546875
,
0
.
03417
96875
,
0
.
4892578125
,
0
.
9765625000
,
0
.
6962890625
,
0
.
0820312500
,
0
.
2343750000
,
0
.
3339843750
,
0
.
2294921875
,
0
.
1718750000
,
0
.
2500000000
,
0
.
3447265625
,
0
.
8281250000
,
0
.
0566406250
,
0
.
7246093750
,
0
.
1875000000
,
0
.
8300781250
,
0
.
7558593750
,
0
.
3662109375
,
0
.
6191406250
,
0
.
6005859375
,
0
.
4990234375
,
0
.
6689453125
,
0
.
7812500000
,
0
.
6826171875
,
0
.
1738281250
,
0
.
1191406250
,
0
.
8652343750
,
0
.
3330078125
,
0
.
4023437500
,
0
.
1337890625
,
0
.
1660156250
,
0
.
9570312500
,
0
.
8662109375
,
0
.
9775390625
,
0
.
0966796875
,
0
.
6250000000
,
0
.
4804687500
,
0
.
7314453125
,
0
.
8505859375
,
0
.
2880859375
,
0
.
4931640625
,
0
.
1201171875
,
0
.
3300781250
,
0
.
3652343750
,
0
.
8808593750
,
0
.
9589843750
,
0
.
3984375000
,
0
.
1210937500
,
0
.
5986328125
,
0
.
6748046875
,
0
.
0332031250
,
0
.
5195312500
,
0
.
6435546875
,
0
.
1894531250
,
0
.
4550781250
,
0
.
9824218750
,
0
.
5273437500
,
0
.
9130859375
,
0
.
2294921875
,
0
.
7314453125
,
0
.
9814453125
,
0
.
004
8828125
,
0
.
5732421875
,
0
.
9179687500
,
0
.
5722656250
,
0
.
04003
90625
,
0
.
2119140625
,
0
.
6660156250
,
0
.
7246093750
,
0
.
9951171875
,
0
.
8652343750
,
0
.
2548828125
,
0
.
4726562500
,
0
.
6718750000
,
0
.
4648437500
,
0
.
000
9765625
,
0
.
3808593750
,
0
.
5859375000
,
0
.
2001953125
,
0
.
8076171875
,
0
.
6337890625
,
0
.
5410156250
,
0
.
1572265625
,
0
.
8818359375
,
0
.
5253906250
,
0
.
8857421875
,
0
.
3779296875
,
0
.
5546875000
,
0
.
5458984375
,
0
.
3779296875
,
0
.
1689453125
,
0
.
6123046875
,
0
.
3583984375
,
0
.
9921875000
,
0
.
3593750000
,
0
.
7978515625
,
0
.
1503906250
,
0
.
3964843750
,
0
.
3750000000
,
0
.
2763671875
,
0
.
4951171875
,
0
.
6396484375
,
0
.
3457031250
,
0
.
6855468750
,
0
.
02
83203125
,
0
.
2001953125
,
0
.
5585937500
,
0
.
9257812500
,
0
.
2304687500
,
0
.
4746093750
,
0
.
1943359375
,
0
.
9980468750
,
0
.
4951171875
,
0
.
4082031250
,
0
.
01171
87500
,
0
.
9228515625
,
0
.
6982421875
,
0
.
7373046875
,
0
.
3066406250
,
0
.
9521484375
,
0
.
8876953125
,
0
.
7099609375
,
0
.
5927734375
,
0
.
9443359375
,
0
.
5439453125
,
0
.
5097656250
,
0
.
8730468750
,
0
.
7900390625
,
0
.
4843750000
,
0
.
5029296875
,
0
.
6816406250
,
0
.
0849609375
,
0
.
9179687500
,
0
.
1689453125
,
0
.
9726562500
,
0
.
7988281250
,
0
.
7197265625
,
0
.
6982421875
,
0
.
1572265625
,
0
.
4814453125
,
0
.
7753906250
,
0
.
0957031250
,
0
.
7880859375
,
0
.
3750000000
,
0
.
5185546875
,
0
.
7470703125
,
0
.
2187500000
,
0
.
7480468750
,
0
.
6533203125
,
0
.
1474609375
,
0
.
8212890625
,
0
.
6943359375
,
0
.
7714843750
,
0
.
3193359375
,
0
.
5595703125
,
0
.
5078125000
,
0
.
3056640625
,
0
.
8203125000
,
0
.
7285156250
,
0
.
4365234375
,
0
.
1669921875
,
0
.
5722656250
,
0
.
0839843750
,
0
.
2177734375
,
0
.
7392578125
,
0
.
4765625000
,
0
.
046
8750000
,
0
.
01
95312500
,
0
.
7753906250
,
0
.
3300781250
,
0
.
04
98046875
,
0
.
4257812500
,
0
.
3906250000
,
0
.
4570312500
,
0
.
7939453125
,
0
.
6777343750
,
0
.
9541015625
,
0
.
9628906250
,
0
.
2011718750
,
0
.
5234375000
,
0
.
3720703125
,
0
.
3125000000
,
0
.
6103515625
,
0
.
6884765625
,
0
.
3730468750
,
0
.
1738281250
,
0
.
1513671875
,
0
.
03
80859375
,
0
.
9082031250
,
0
.
8447265625
,
0
.
7753906250
,
0
.
9785156250
,
0
.
0927734375
,
0
.
3623046875
,
0
.
9580078125
,
0
.
3759765625
,
0
.
2539062500
,
0
.
0898437500
,
0
.
1533203125
,
0
.
2783203125
,
0
.
8554687500
,
0
.
6416015625
,
0
.
5205078125
,
0
.
9414062500
,
0
.
6025390625
,
0
.
7861328125
,
0
.
7792968750
,
0
.
9277343750
,
0
.
9228515625
,
0
.
043
9453125
,
0
.
1220703125
,
0
.
4375000000
,
0
.
6337890625
,
0
.
3417968750
,
0
.
5087890625
,
0
.
3964843750
,
0
.
9746093750
,
0
.
8876953125
,
0
.
1093750000
,
0
.
1103515625
,
0
.
6025390625
,
0
.
7275390625
,
0
.
8222656250
,
0
.
4687500000
,
0
.
7880859375
,
0
.
6972656250
,
0
.
4267578125
,
0
.
6552734375
,
0
.
9843750000
,
0
.
1728515625
,
0
.
5742187500
,
0
.
0507
812500
,
0
.
5830078125
,
0
.
5273437500
,
0
.
3613281250
,
0
.
4072265625
,
0
.
9472656250
,
0
.
9687500000
,
0
.
1640625000
,
0
.
4218750000
,
0
.
1259765625
,
0
.
9726562500
,
0
.
5791015625
,
0
.
3945312500
,
0
.
0615234375
,
0
.
1376953125
,
0
.
2861328125
,
0
.
7578125000
,
0
.
8535156250
,
0
.
5693359375
,
0
.
2119140625
,
0
.
7812500000
,
0
.
8691406250
,
0
.
1435546875
,
0
.
1142578125
,
0
.
6269531250
,
0
.
4941406250
,
0
.
7519531250
,
0
.
4267578125
,
0
.
1328125000
,
0
.
1074218750
,
0
.
2705078125
,
0
.
4511718750
,
0
.
1562500000
,
0
.
8085937500
,
0
.
9521484375
,
0
.
6210937500
,
0
.
9033203125
,
0
.
5937500000
,
0
.
7333984375
,
0
.
07421
87500
,
0
.
4550781250
,
0
.
3046875000
,
0
.
8750000000
,
0
.
0507
812500
,
0
.
4697265625
,
0
.
9296875000
,
0
.
01464
84375
,
0
.
1835937500
,
0
.
8574218750
,
0
.
9375000000
,
0
.
4072265625
,
0
.
4062500000
,
0
.
9746093750
,
0
.
4023437500
,
0
.
3574218750
,
0
.
5566406250
,
0
.
4462890625
,
0
.
002
9296875
,
0
.
0810546875
,
0
.
5234375000
,
0
.
1835937500
,
0
.
6318359375
,
0
.
8076171875
,
0
.
6953125000
,
0
.
3007812500
,
0
.
6318359375
,
0
.
4160156250
,
0
.
1152343750
,
0
.
4814453125
,
0
.
7021484375
,
0
.
5869140625
,
0
.
9375000000
,
0
.
8095703125
,
0
.
4492187500
,
0
.
9248046875
,
0
.
0849609375
,
0
.
1083984375
,
0
.
7138671875
,
0
.
06
93359375
,
0
.
1972656250
,
0
.
3476562500
,
0
.
1953125000
,
0
.
01171
87500
,
0
.
6904296875
,
0
.
6230468750
,
0
.
8583984375
,
0
.
03
80859375
,
0
.
6875000000
,
0
.
5537109375
,
0
.
2431640625
,
0
.
3945312500
,
0
.
4843750000
,
0
.
5615234375
,
0
.
3261718750
,
0
.
3378906250
,
0
.
6503906250
,
0
.
3750000000
,
0
.
1777343750
,
0
.
1660156250
,
0
.
6796875000
,
0
.
1767578125
,
0
.
5429687500
,
0
.
4980468750
,
0
.
8349609375
,
0
.
9824218750
,
0
.
7568359375
,
0
.
002
9296875
,
0
.
2451171875
,
0
.
0800781250
,
0
.
3964843750
,
0
.
3115234375
,
0
.
1220703125
,
0
.
6152343750
,
0
.
7861328125
,
0
.
5126953125
,
0
.
7402343750
,
0
.
5527343750
,
0
.
3388671875
,
0
.
8164062500
,
0
.
4052734375
,
0
.
3144531250
,
0
.
6093750000
,
0
.
0917968750
,
0
.
5927734375
,
0
.
2246093750
,
0
.
3994140625
,
0
.
5419921875
,
0
.
5048828125
,
0
.
4931640625
,
0
.
1152343750
,
0
.
1699218750
,
0
.
1796875000
,
0
.
7695312500
,
0
.
3603515625
,
0
.
3369140625
,
0
.
5996093750
,
0
.
1718750000
,
0
.
3427734375
,
0
.
0966796875
,
0
.
8027343750
,
0
.
1767578125
,
0
.
5156250000
,
0
.
5292968750
,
0
.
3330078125
,
0
.
7041015625
,
0
.
9550781250
,
0
.
3945312500
,
0
.
2968750000
,
0
.
1259765625
,
0
.
6337890625
,
0
.
5966796875
,
0
.
4423828125
,
0
.
6914062500
,
0
.
04
88281250
,
0
.
5361328125
,
0
.
7187500000
,
0
.
9111328125
,
0
.
9218750000
,
0
.
9726562500
,
0
.
4560546875
,
0
.
7939453125
,
0
.
9267578125
,
0
.
8300781250
,
0
.
2607421875
,
0
.
2998046875
,
0
.
9882812500
,
0
.
0576171
875
};
core/system_object.cpp
View file @
3e2d3b7a
...
...
@@ -47,7 +47,7 @@ Object g_TimerHandlerFunc;
Object
g_TimerThisObj
;
ExecState
*
g_TimerExec
=
NULL
;
static
void
timer_handler
(
irq_t
source
,
irq_context_t
*
context
)
static
void
timer_handler
(
irq_t
source
,
irq_context_t
*
context
,
void
*
)
{
if
(
!
g_TimerExec
)
return
;
...
...
@@ -88,7 +88,7 @@ Value SystemFunctionImp::call(ExecState *exec, Object &thisObj, const List &args
g_TimerHandlerFunc
=
args
[
1
].
toObject
(
exec
);
timer_prime
(
TMU2
,
cycles_per_second
,
true
);
irq_set_handler
(
EXC_TMU2_TUNI2
,
timer_handler
);
irq_set_handler
(
EXC_TMU2_TUNI2
,
timer_handler
,
NULL
);
timer_start
(
TMU2
);
break
;
}
...
...
core/vmufile_object.cpp
View file @
3e2d3b7a
...
...
@@ -44,7 +44,7 @@ VMUFileInstanceImp::VMUFileInstanceImp(ObjectImp* proto) : ObjectImp(proto)
VMUFileInstanceImp
::~
VMUFileInstanceImp
()
{
if
(
pkg
.
data
)
free
(
pkg
.
data
);
free
(
(
void
*
)
pkg
.
data
);
}
/*
...
...
@@ -116,10 +116,9 @@ void VMUFileInstanceImp::putValueProperty(ExecState *exec, int token, const Valu
{
const
char
*
data
=
value
.
toString
(
exec
).
cstring
().
c_str
();
if
(
pkg
.
data
)
free
(
pkg
.
data
);
pkg
.
data
=
(
uint8
*
)
m
alloc
(
strlen
(
data
)
+
1
);
free
(
(
void
*
)
pkg
.
data
);
pkg
.
data
=
(
uint8
*
)
c
alloc
(
strlen
(
data
)
+
1
,
sizeof
(
uint8
)
);
strcpy
((
char
*
)
pkg
.
data
,
data
);
pkg
.
data
[
strlen
(
data
)]
=
0
;
break
;
}
}
...
...
@@ -225,11 +224,10 @@ Value VMUFileProtoFuncImp::call(ExecState* exec, Object& thisObj, const List &ar
return
Boolean
(
false
);
}
if
(
f
->
pkg
.
data
)
free
(
f
->
pkg
.
data
);
free
(
(
void
*
)
f
->
pkg
.
data
);
initVMUPkg
(
&
f
->
pkg
);
f
->
pkg
.
data
=
(
uint8
*
)
malloc
(
tempPkg
.
data_len
+
1
);
memcpy
(
f
->
pkg
.
data
,
tempPkg
.
data
,
tempPkg
.
data_len
);
f
->
pkg
.
data
[
tempPkg
.
data_len
]
=
0
;
f
->
pkg
.
data
=
(
uint8
*
)
calloc
(
tempPkg
.
data_len
+
1
,
sizeof
(
uint8
));
memcpy
((
void
*
)
f
->
pkg
.
data
,
tempPkg
.
data
,
tempPkg
.
data_len
);
strcpy
(
f
->
pkg
.
desc_short
,
tempPkg
.
desc_short
);
strcpy
(
f
->
pkg
.
desc_long
,
tempPkg
.
desc_long
);
strcpy
(
f
->
pkg
.
app_id
,
tempPkg
.
app_id
);
...
...
kjs/date_object.cpp
View file @
3e2d3b7a
...
...
@@ -50,8 +50,9 @@
#include
<math.h>
#include
<string.h>
#include
<strings.h>
#include
<stdio.h>
#include
<stdlib
.h
>
#include
<
c
stdlib>
//#include <locale.h>
//#include <ctype.h>
...
...
kjs/dtoa.cpp
View file @
3e2d3b7a
...
...
@@ -169,6 +169,9 @@
* the result overflows to +-Infinity or underflows to 0.
*/
#include
<cstdlib>
#include
<string.h>
//SCHERZO #include <config.h>
#ifdef WORDS_BIGENDIAN
#define IEEE_MC68k
...
...
@@ -195,9 +198,6 @@ typedef unsigned Long ULong;
#define Bug(x) {fprintf(stderr, "%s\n", x); exit(1);}
#endif
#include
"stdlib.h"
#include
"string.h"
#ifdef USE_LOCALE
#include
"locale.h"
#endif
...
...
kjs/nodes.cpp
View file @
3e2d3b7a
...
...
@@ -45,6 +45,9 @@
#include
"operations.h"
#include
"ustring.h"
#include
<cstdlib>
#include
<string.h>
using
namespace
KJS
;
#define KJS_BREAKPOINT \
...
...
kjs/ustring.cpp
View file @
3e2d3b7a
...
...
@@ -115,7 +115,7 @@ CString &CString::operator=(const CString &str)
return
*
this
;
}
bool
KJS
::
operator
==
(
const
KJS
::
CString
&
c1
,
const
KJS
::
CString
&
c2
)
bool
operator
==
(
const
KJS
::
CString
&
c1
,
const
KJS
::
CString
&
c2
)
{
int
len
=
c1
.
size
();
return
len
==
c2
.
size
()
&&
(
len
==
0
||
memcmp
(
c1
.
c_str
(),
c2
.
c_str
(),
len
)
==
0
);
...
...
@@ -897,7 +897,7 @@ void UString::release()
rep
->
deref
();
}
bool
KJS
::
operator
==
(
const
UString
&
s1
,
const
UString
&
s2
)
bool
operator
==
(
const
UString
&
s1
,
const
UString
&
s2
)
{
if
(
s1
.
rep
->
len
!=
s2
.
rep
->
len
)
return
false
;
...
...
@@ -906,7 +906,7 @@ bool KJS::operator==(const UString& s1, const UString& s2)
s1
.
rep
->
len
*
sizeof
(
UChar
))
==
0
);
}
bool
KJS
::
operator
==
(
const
UString
&
s1
,
const
char
*
s2
)
bool
operator
==
(
const
UString
&
s1
,
const
char
*
s2
)
{
if
(
s2
==
0
)
{
return
s1
.
isEmpty
();
...
...
@@ -924,7 +924,7 @@ bool KJS::operator==(const UString& s1, const char *s2)
return
u
==
uend
&&
*
s2
==
0
;
}
bool
KJS
::
operator
<
(
const
UString
&
s1
,
const
UString
&
s2
)
bool
operator
<
(
const
UString
&
s1
,
const
UString
&
s2
)
{
const
int
l1
=
s1
.
size
();
const
int
l2
=
s2
.
size
();
...
...
@@ -943,7 +943,7 @@ bool KJS::operator<(const UString& s1, const UString& s2)
return
(
l1
<
l2
);
}
int
KJS
::
compare
(
const
UString
&
s1
,
const
UString
&
s2
)
int
compare
(
const
UString
&
s1
,
const
UString
&
s2
)
{
const
int
l1
=
s1
.
size
();
const
int
l2
=
s2
.
size
();
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment