aboutsummaryrefslogtreecommitdiff
path: root/source/seta010.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/seta010.c')
-rw-r--r--source/seta010.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/source/seta010.c b/source/seta010.c
index b9ce7c3..0e64248 100644
--- a/source/seta010.c
+++ b/source/seta010.c
@@ -86,7 +86,7 @@ const int16_t ST010_SinTable[256] =
-0x18f8, -0x15e2, -0x12c8, -0x0fab, -0x0c8b, -0x096a, -0x0647, -0x0324
};
-const unsigned char ST010_ArcTan[32][32] =
+const uint8_t ST010_ArcTan[32][32] =
{
{
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
@@ -267,13 +267,13 @@ void ST010_OP01(int16_t x0, int16_t y0, int16_t* x1, int16_t* y1, int16_t* Quadr
*Theta = (ST010_ArcTan[*y1][*x1] << 8) ^ *Quadrant;
}
-void ST010_Scale(int16_t Multiplier, int16_t X0, int16_t Y0, int* X1, int* Y1)
+void ST010_Scale(int16_t Multiplier, int16_t X0, int16_t Y0, int32_t* X1, int32_t* Y1)
{
*X1 = X0 * Multiplier << 1;
*Y1 = Y0 * Multiplier << 1;
}
-void ST010_Multiply(int16_t Multiplicand, int16_t Multiplier, int* Product)
+void ST010_Multiply(int16_t Multiplicand, int16_t Multiplier, int32_t* Product)
{
*Product = Multiplicand * Multiplier << 1;
}
@@ -293,7 +293,7 @@ void ST010_SortDrivers(uint16_t Positions, uint16_t Places[32], uint16_t Drivers
do
{
Sorted = true;
- int i;
+ int32_t i;
for (i = 0; i < Positions - 1; i++)
if (Places[i] < Places[i + 1])
{
@@ -351,7 +351,7 @@ void S9xSetST010(uint32_t Address, uint8_t Byte)
#else
uint16_t Places[32];
uint16_t Positions = ST010_WORD(0x0024);
- int Pos, Offset;
+ int32_t Pos, Offset;
Offset = 0;
@@ -392,9 +392,9 @@ void S9xSetST010(uint32_t Address, uint8_t Byte)
/* TODO - FIXME */
ST010_Scale(*(int16_t*)&Memory.SRAM[0x0004], *(int16_t*)&Memory.SRAM[0x0000],
*(int16_t*)&Memory.SRAM[0x0002],
- (int*)&Memory.SRAM[0x0010], (int*)&Memory.SRAM[0x0014]);
+ (int32_t*)&Memory.SRAM[0x0010], (int32_t*)&Memory.SRAM[0x0014]);
#else
- int x1, y1;
+ int32_t x1, y1;
ST010_Scale(ST010_WORD(0x0004), ST010_WORD(0x0000), ST010_WORD(0x0002), &x1,
&y1);
@@ -424,9 +424,9 @@ void S9xSetST010(uint32_t Address, uint8_t Byte)
#if defined(FAST_LSB_WORD_ACCESS) && !defined(ANDROID)
/* TODO - FIXME */
ST010_Multiply(*(int16_t*)&Memory.SRAM[0x0000], *(int16_t*)&Memory.SRAM[0x0002],
- (int*)&Memory.SRAM[0x0010]);
+ (int32_t*)&Memory.SRAM[0x0010]);
#else
- int Product;
+ int32_t Product;
ST010_Multiply(ST010_WORD(0x0000), ST010_WORD(0x0002), &Product);
@@ -577,7 +577,7 @@ void S9xSetST010(uint32_t Address, uint8_t Byte)
// calculate AI orientation based on specific guidelines
case 0x05:
{
- int dx, dy;
+ int32_t dx, dy;
int16_t a1, b1, c1;
uint16_t o1;