So it appears that the sine wave table in sonic 2 is slightly off. Please let me know if I understand this correctly. The input in calcsine, a hex byte 0-FF is the hex-angle. To get the real angle ( clockwise ) you multiply the hex-angle by 1.40625 (360/256) . the output for the sine value will be sine(hex-angle*1.40625) * 255 as a signed word value that is referenced from the sine wave table . if the hex angle was 1 then sin(1.40625) *255 isn't the word of exactly 6 ( 0006) but rather 6.258.. Did they simply round or am I misunderstanding it. Also couldn't the sinewave table be packed to one mathematical quadrant of 0-90 degrees if you did some post processing to the lookup table The sonic 2 disassembly says the sine and cos output is sin and cos of angle times 255 . isn't it multiplied rather by 256 ?