int subElectronTurnLeft;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
ax = (TimerVar & 3);
if (ax != 0)
return subElectronTurnLeft;
} // loc_g_7A9F:
+#if 1
+ subDrawElectronTurnLeft(si, bx);
+#else
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si);
StretchedSprites.BltEx(X, Y, aniFramesElectron[bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bx = (bx + 1) & 0x7;
MovHighByte(&PlayField16[si], bx);
return subElectronTurnLeft;
int subElectronTurnRight;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
ax = (TimerVar & 3);
if (ax != 0)
return subElectronTurnRight;
} // loc_g_7B73:
+#if 1
+ subDrawElectronTurnRight(si, bx);
+#else
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si);
StretchedSprites.BltEx(X, Y, aniFramesElectron[0x10 - bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bx = ((bx + 1) & 0x7) | 8;
MovHighByte(&PlayField16[si], bx);
return subElectronTurnRight;
int subElectronFromBelow;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
+#if 1
+ subDrawElectronFromBelow(si, bx);
+ bx = bx - 0xF; // get and increment sequence#
+#else
bx = bx - 0xF; // get and increment sequence#
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X, Y - bx * TwoPixels, aniFramesElectron[bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bl = LowByte(bx);
if (bl == 7 && LowByte(PlayField16[si + FieldWidth]) != fiExplosion)
{
int subElectronFromRight;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
+#if 1
+ subDrawElectronFromRight(si, bx);
+ bx = bx - 0x17; // get and increment sequence#
+#else
bx = bx - 0x17; // get and increment sequence#
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si + 1);
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X - bx * TwoPixels, Y, aniFramesElectron[bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bl = LowByte(bx);
if (bl == 7 && LowByte(PlayField16[si + 1]) != fiExplosion)
{
int subElectronFromAbove;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
+#if 1
+ subDrawElectronFromAbove(si, bx);
+ bx = bx - 0x1F; // get and increment sequence#
+#else
bx = bx - 0x1F; // get and increment sequence#
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X, Y + bx * TwoPixels, aniFramesElectron[bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bl = LowByte(bx);
if (bl == 7 && LowByte(PlayField16[si - FieldWidth]) != fiExplosion)
{
int subElectronFromLeft;
// int ax, ah, bl, dx, X, Y;
- int ax, bl, X, Y;
+ int ax, bl;
+#if 1
+ subDrawElectronFromLeft(si, bx);
+ bx = bx - 0x27; // get and increment sequence#
+#else
bx = bx - 0x27; // get and increment sequence#
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si - 1);
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X + bx * TwoPixels, Y, aniFramesElectron[bx]);
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
+#endif
+
bl = LowByte(bx);
if (bl == 7 && LowByte(PlayField16[si - 1]) != fiExplosion)
{
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniElectron, bx);
+#else
StretchedSprites.BltEx(X, Y, aniFramesElectron[bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronTurnLeft;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniElectron, 0x10 - bx);
+#else
StretchedSprites.BltEx(X, Y, aniFramesElectron[0x10 - bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronTurnRight;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si + FieldWidth);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniSpace, 0);
+ StretchedSprites.BltImg(X, Y - bx * TwoPixels, aniElectron, bx);
+#else
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X, Y - bx * TwoPixels, aniFramesElectron[bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronFromBelow;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si + 1);
Y = GetStretchY(si);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniSpace, 0);
+ StretchedSprites.BltImg(X - bx * TwoPixels, Y, aniElectron, bx);
+#else
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X - bx * TwoPixels, Y, aniFramesElectron[bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronFromRight;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si);
Y = GetStretchY(si - FieldWidth);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniSpace, 0);
+ StretchedSprites.BltImg(X, Y + bx * TwoPixels, aniElectron, bx);
+#else
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X, Y + bx * TwoPixels, aniFramesElectron[bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronFromAbove;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
X = GetStretchX(si - 1);
Y = GetStretchY(si);
+#if 1
+ StretchedSprites.BltImg(X, Y, aniSpace, 0);
+ StretchedSprites.BltImg(X + bx * TwoPixels, Y, aniElectron, bx);
+#else
StretchedSprites.BltEx(X, Y, 0);
StretchedSprites.BltEx(X + bx * TwoPixels, Y, aniFramesElectron[bx]);
+#endif
// +++++++++++++++++++++++++++++++++++++++++++++++++++++
return subDrawElectronFromLeft;