MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / Recruit_Sprite_Draw

Method Recruit_Sprite_Draw

Source/Amiga/Graphics_Amiga.cpp:1300–1445  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1298}
1299
1300void cGraphics_Amiga::Recruit_Sprite_Draw(int16 pRows, int16 pColumns, int16 pD2, int16 pD4, int16 pD5, int16 pD3, uint8* pSource) {
1301 uint32 d0, d1, d2, d3, d4;
1302 int32 d5, d6;
1303
1304 d0 = pRows;
1305 d1 = pColumns;
1306 d2 = pD2;
1307 d3 = pD3;
1308 d4 = pD4;
1309 d5 = pD5;
1310
1311 uint8* Dest = mImageHillSprites.mData->data();
1312
1313 uint32 word_8271A = d0;
1314 uint32 word_8271C = d1;
1315 uint32 word_8271E = d2;
1316 if (d2 <= 0)
1317 return;
1318
1319 uint32 word_82720 = d3;
1320 if (d3 <= 0)
1321 return;
1322
1323 d6 = word_8271E;
1324 d6 >>= 1;
1325 d4 -= d6;
1326
1327
1328 d6 = word_82720;
1329 d6 >>= 1;
1330 d5 -= d6;
1331
1332
1333 uint32 D1_Saved = d1;
1334 d5 <<= 3;
1335 d1 = d5;
1336 d5 <<= 2;
1337 d5 += d1;
1338
1339 d1 = D1_Saved;
1340 Dest += d5;
1341
1342 d6 = d4;
1343 d6 >>= 3;
1344 Dest += d6;
1345
1346 d4 &= 7;
1347 d6 = 7;
1348 d6 -= d4;
1349
1350 uint32 word_82726 = d6;
1351
1352 d0 = d1 = d2 = d3 = 0;
1353
1354 d0 = word_8271A;
1355 d1 = word_8271C;
1356 uint32 d0_u = (d0 % word_8271E) << 16;
1357 d0 /= word_8271E;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected