883 lines
31 KiB
Plaintext
883 lines
31 KiB
Plaintext
#pragma mapfile "utils/th11.eclm"
|
|
|
|
meta {}
|
|
|
|
|
|
void Boss2Et_at2() {
|
|
stackAlloc(@nargs=1, @blob="0c000000");
|
|
pushf(@nargs=1, @blob="e2cb1640");
|
|
setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="08000000");
|
|
{"234567"}: call(
|
|
@nargs=1,
|
|
@blob="10000000 426f7373 3245745f 61743268 00000000",
|
|
);
|
|
flagSet(@nargs=1, @blob="20000000");
|
|
flagSet(@nargs=1, @blob="0c010000");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 01000000");
|
|
etSprite(@nargs=3, @blob="00000000 12000000 00000000");
|
|
etCount(@nargs=3, @blob="00000000 01000000 01000000");
|
|
etAngle(@nargs=3, @blob="00000000 db0fc93f db0fc93e");
|
|
etSpeed(@nargs=3, @blob="00000000 0000803f 0000803f");
|
|
jmp(@nargs=2, @blob="14040000 05000000");
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="000c1cc6");
|
|
{"04567"}: pushi(@nargs=1, @blob="40000000");
|
|
{"04567"}: mulf(@blob="");
|
|
{"04567"}: etOffset(
|
|
@mask=0b10,
|
|
@nargs=3,
|
|
@blob="00000000 000080bf 000040c1",
|
|
);
|
|
{"1234567"}: pushf(@mask=0b1, @nargs=1, @blob="000c1cc6");
|
|
{"1234567"}: pushi(@nargs=1, @blob="20000000");
|
|
{"1234567"}: mulf(@blob="");
|
|
{"1234567"}: etOffset(
|
|
@mask=0b10,
|
|
@nargs=3,
|
|
@blob="00000000 000080bf 000040c1",
|
|
);
|
|
{"014567"}: pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
{"014567"}: pushf(@nargs=1, @blob="6666663f");
|
|
{"014567"}: mulf(@blob="");
|
|
{"014567"}: pushf(@nargs=1, @blob="6666e63f");
|
|
{"014567"}: addf(@blob="");
|
|
{"014567"}: etSpeed(
|
|
@mask=0b10,
|
|
@nargs=3,
|
|
@blob="00000000 000080bf 00000000",
|
|
);
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00008040 00000000");
|
|
pushi(@mask=0b1, @nargs=1, @blob="08000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="8c010000 00000000");
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
{"04567"}: pushf(@nargs=1, @blob="730f493d");
|
|
{"04567"}: subf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
{"14567"}: pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
{"14567"}: pushf(@nargs=1, @blob="730f493d");
|
|
{"14567"}: subf(@blob="");
|
|
{"14567"}: setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
{"234567"}: pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
{"234567"}: pushf(@nargs=1, @blob="730f493d");
|
|
{"234567"}: subf(@blob="");
|
|
{"234567"}: setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushf(@nargs=1, @blob="db0f493f");
|
|
lessf(@blob="");
|
|
jmpEq(@nargs=2, @blob="40000000 00000000");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="08000000");
|
|
jmp(@nargs=2, @blob="dc000000 00000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushf(@nargs=1, @blob="730f493d");
|
|
addf(@blob="");
|
|
setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushf(@nargs=1, @blob="e4cb1640");
|
|
greaterf(@blob="");
|
|
jmpEq(@nargs=2, @blob="40000000 00000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="08000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
{"014567"}: wait(@nargs=1, @blob="03000000");
|
|
+5: // 5
|
|
nop(@blob="");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
jmpNeq(@nargs=2, @blob="f0fbffff 00000000");
|
|
delete(@blob="");
|
|
}
|
|
|
|
|
|
void Boss2Et_at2h() {
|
|
stackAlloc(@nargs=1, @blob="08000000");
|
|
pushf(@nargs=1, @blob="e2cb1640");
|
|
setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
flagSet(@nargs=1, @blob="20000000");
|
|
flagSet(@nargs=1, @blob="0c010000");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 01000000");
|
|
etSprite(@nargs=3, @blob="00000000 12000000 00000000");
|
|
etCount(@nargs=3, @blob="00000000 01000000 01000000");
|
|
etAngle(@nargs=3, @blob="00000000 db0fc93f db0fc93e");
|
|
etSpeed(@nargs=3, @blob="00000000 0000803f 0000803f");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 00000000 10000000 3c000000 01000000 00000000 cdcccc3d",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 01000000 00000000 00100000 3c000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
jmp(@nargs=2, @blob="50040000 00000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
pushf(@nargs=1, @blob="8fc2f53c");
|
|
mulf(@blob="");
|
|
pushf(@nargs=1, @blob="bc74933c");
|
|
addf(@blob="");
|
|
etEx(
|
|
@mask=0b1000000,
|
|
@nargs=8,
|
|
@blob="00000000 02000000 00000000 04000000 3c000000 c1bdf0ff 000080bf 00c079c4",
|
|
);
|
|
pushf(@mask=0b1, @nargs=1, @blob="000c1cc6");
|
|
pushi(@nargs=1, @blob="20000000");
|
|
mulf(@blob="");
|
|
etOffset(@mask=0b10, @nargs=3, @blob="00000000 000080bf 000040c1");
|
|
pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
pushf(@nargs=1, @blob="cdcccc3e");
|
|
mulf(@blob="");
|
|
pushf(@nargs=1, @blob="cdcc8c40");
|
|
addf(@blob="");
|
|
etSpeed(@mask=0b10, @nargs=3, @blob="00000000 000080bf 00000000");
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00000000 00000000");
|
|
pushi(@mask=0b1, @nargs=1, @blob="04000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="40010000 00000000");
|
|
{"24567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"24567"}: pushf(@nargs=1, @blob="730f493d");
|
|
{"24567"}: subf(@blob="");
|
|
{"24567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@nargs=1, @blob="1dc9e53c");
|
|
{"34567"}: subf(@blob="");
|
|
{"34567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushf(@nargs=1, @blob="db0f493f");
|
|
lessf(@blob="");
|
|
jmpEq(@nargs=2, @blob="40000000 00000000");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
jmp(@nargs=2, @blob="28010000 00000000");
|
|
{"24567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"24567"}: pushf(@nargs=1, @blob="730f493d");
|
|
{"24567"}: addf(@blob="");
|
|
{"24567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@nargs=1, @blob="1dc9e53c");
|
|
{"34567"}: addf(@blob="");
|
|
{"34567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushf(@nargs=1, @blob="e4cb1640");
|
|
greaterf(@blob="");
|
|
jmpEq(@nargs=2, @blob="40000000 00000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
{"24567"}: wait(@nargs=1, @blob="07000000");
|
|
{"34567"}: wait(@nargs=1, @blob="05000000");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
jmpNeq(@nargs=2, @blob="b4fbffff 00000000");
|
|
ret(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard2_01C() {
|
|
stackAlloc(@nargs=1, @blob="20000000");
|
|
diffI(
|
|
@mask=0b1,
|
|
@nargs=5,
|
|
@blob="1c000000 10000000 20000000 20000000 20000000",
|
|
);
|
|
lifeSet(@nargs=1, @blob="c8190000");
|
|
setInterrupt(
|
|
@nargs=4,
|
|
@blob="00000000 30110000 b80b0000 10000000 426f7373 43617264 335f3031 43000000",
|
|
);
|
|
lifeMarker(@nargs=3, @blob="00000000 0040ce45 ff8080ff");
|
|
lifeMarker(@nargs=3, @blob="01000000 00808945 ff4040ff");
|
|
lifeMarker(@nargs=3, @blob="02000000 00001645 c00000ff");
|
|
spell(
|
|
@nargs=4,
|
|
@blob="6a000000 b80b0000 20a10700 18000000 e6041ef2 724f1334 ed270c6f 695b0a31 e635062c 625c81e8",
|
|
);
|
|
movePosTime(@nargs=4, @blob="3c000000 00000000 00000000 00000043");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="25d9ffff");
|
|
playSound(@nargs=1, @blob="29000000");
|
|
+60: // 60
|
|
nop(@blob="");
|
|
+60: // 120
|
|
anmPlay(@nargs=2, @blob="00000000 83000000");
|
|
+60: // 180
|
|
anmSetMain(@nargs=2, @blob="00000000 00000000");
|
|
moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00000042");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
setf(@mask=0b1, @nargs=1, @blob="00f41bc6");
|
|
pushf(@nargs=1, @blob="7077d63c");
|
|
setf(@mask=0b1, @nargs=1, @blob="00f01bc6");
|
|
pushf(@nargs=1, @blob="dc0f4940");
|
|
setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="14000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
setf(@mask=0b1, @nargs=1, @blob="00008040");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="18000000");
|
|
jmp(@nargs=2, @blob="78010000 7c010000");
|
|
callAsync(@nargs=1, @blob="10000000 426f7373 43617264 325f3031 43617400");
|
|
moveRand(@nargs=3, @blob="a0000000 04000000 00000040");
|
|
+200: // 380
|
|
nop(@blob="");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 03000000");
|
|
etSprite(@nargs=3, @blob="00000000 08000000 06000000");
|
|
etCountD(
|
|
@mask=0b11110,
|
|
@nargs=9,
|
|
@blob="00000000 1c000000 1c000000 1c000000 1c000000 02000000 02000000 02000000 03000000",
|
|
);
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00381cc6 db0f493e");
|
|
etSpeedD(
|
|
@nargs=9,
|
|
@blob="00000000 00002040 00002040 00002040 00006040 0000803f 0000803f 0000803f 0000803f",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 01000000 02000000 01000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
etOn(@nargs=1, @blob="00000000");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
jmpNeq(@nargs=2, @blob="8cfeffff b4000000");
|
|
ret(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard2_01Cat() {
|
|
stackAlloc(@nargs=1, @blob="10000000");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="0c000000");
|
|
playSound(@nargs=1, @blob="10000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00141cc6");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
addf(@blob="");
|
|
setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
jmp(@nargs=2, @blob="5c030000 00000000");
|
|
playSound(@nargs=1, @blob="18000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
subf(@blob="");
|
|
circlePos(
|
|
@mask=0b111,
|
|
@nargs=4,
|
|
@blob="00000000 00008040 000080bf 00008042",
|
|
);
|
|
etOffset(@mask=0b110, @nargs=3, @blob="00000000 00000000 00008040");
|
|
{"014567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 cdcc4c40 00000000 0000a043 00000000 00006041",
|
|
);
|
|
{"24567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 00008040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"34567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 0000c040 00000000 00000244 00000000 00006041",
|
|
);
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
addf(@blob="");
|
|
circlePos(
|
|
@mask=0b111,
|
|
@nargs=4,
|
|
@blob="00000000 00008040 000080bf 00008042",
|
|
);
|
|
etOffset(@mask=0b110, @nargs=3, @blob="00000000 00000000 00008040");
|
|
{"014567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 cdcc4c40 00000000 0000a043 00000000 00006041",
|
|
);
|
|
{"24567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 00008040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"34567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 0000c040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"04567"}: pushf(@nargs=1, @blob="d80fc93e");
|
|
{"04567"}: subf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"1234567"}: pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"1234567"}: pushf(@nargs=1, @blob="f90f493e");
|
|
{"1234567"}: subf(@blob="");
|
|
{"1234567"}: setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"04567"}: wait(@nargs=1, @blob="0a000000");
|
|
diffWait(@nargs=4, @blob="0a000000 0a000000 0a000000 05000000");
|
|
validRad(@mask=0b1, @nargs=1, @blob="00000041");
|
|
deci(@mask=0b1, @nargs=1, @blob="0c000000");
|
|
jmpNeq(@nargs=2, @blob="a8fcffff 00000000");
|
|
playSound(@nargs=1, @blob="10000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00141cc6");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
subf(@blob="");
|
|
setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="0c000000");
|
|
jmp(@nargs=2, @blob="5c030000 00000000");
|
|
playSound(@nargs=1, @blob="18000000");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
subf(@blob="");
|
|
circlePos(
|
|
@mask=0b111,
|
|
@nargs=4,
|
|
@blob="00000000 00008040 000080bf 00008042",
|
|
);
|
|
etOffset(@mask=0b110, @nargs=3, @blob="00000000 00000000 00008040");
|
|
{"014567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 33333340 00000000 00003443 00000000 00006041",
|
|
);
|
|
{"24567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 00008040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"34567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 0000a040 00000000 00000244 00000000 00006041",
|
|
);
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushf(@nargs=1, @blob="db0f4940");
|
|
pushf(@nargs=1, @blob="00000040");
|
|
divf(@blob="");
|
|
addf(@blob="");
|
|
circlePos(
|
|
@mask=0b111,
|
|
@nargs=4,
|
|
@blob="00000000 00008040 000080bf 00008042",
|
|
);
|
|
etOffset(@mask=0b110, @nargs=3, @blob="00000000 00000000 00008040");
|
|
{"014567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 33333340 00000000 00003443 00000000 00006041",
|
|
);
|
|
{"24567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 00008040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"34567"}: laserOnA(
|
|
@mask=0b100,
|
|
@nargs=8,
|
|
@blob="03000000 09000000 00000041 0000a040 00000000 00000244 00000000 00006041",
|
|
);
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"04567"}: pushf(@nargs=1, @blob="d80fc93e");
|
|
{"04567"}: addf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"1234567"}: pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"1234567"}: pushf(@nargs=1, @blob="f90f493e");
|
|
{"1234567"}: addf(@blob="");
|
|
{"1234567"}: setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
{"04567"}: wait(@nargs=1, @blob="0a000000");
|
|
diffWait(@nargs=4, @blob="0a000000 0a000000 0a000000 05000000");
|
|
validRad(@mask=0b1, @nargs=1, @blob="00000041");
|
|
deci(@mask=0b1, @nargs=1, @blob="0c000000");
|
|
jmpNeq(@nargs=2, @blob="a8fcffff 00000000");
|
|
ret(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard2_at() {
|
|
stackAlloc(@nargs=1, @blob="00000000");
|
|
ret(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard3_01C() {
|
|
stackAlloc(@nargs=1, @blob="08000000");
|
|
setInvuln(@nargs=1, @blob="64000000");
|
|
enmKillAll(@blob="");
|
|
pushi(@mask=0b1, @nargs=1, @blob="fed8ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="44000000 00000000");
|
|
etCancel(@nargs=1, @blob="00002044");
|
|
jmp(@nargs=2, @blob="2c000000 00000000");
|
|
etClear(@nargs=1, @blob="00002044");
|
|
spellEnd(@blob="");
|
|
killAllAsync(@blob="");
|
|
funcSet(@nargs=1, @blob="00000000");
|
|
laserCancel(@blob="");
|
|
setInterrupt(
|
|
@nargs=4,
|
|
@blob="00000000 60090000 b80b0000 10000000 426f7373 43617264 345f3031 43000000",
|
|
);
|
|
setChapter(@nargs=1, @blob="2d000000");
|
|
pushi(@mask=0b1, @nargs=1, @blob="fed8ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="d8000000 00000000");
|
|
dropClear(@blob="");
|
|
pushi(@mask=0b1, @nargs=1, @blob="25d9ffff");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="2c000000 00000000");
|
|
dropMain(@nargs=1, @blob="05000000");
|
|
call(@nargs=1, @blob="10000000 426f7373 43617264 4974656d 00000000");
|
|
dropArea(@nargs=2, @blob="00004042 00004042");
|
|
dropItems(@blob="");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="25d9ffff");
|
|
playSound(@nargs=1, @blob="0f000000");
|
|
movePosTime(@nargs=4, @blob="3c000000 04000000 00000000 00000043");
|
|
moveLimit(@nargs=4, @blob="00000000 00000043 00008c43 00008042");
|
|
wait(@nargs=1, @blob="5a000000");
|
|
spell(
|
|
@nargs=4,
|
|
@blob="6e000000 b80b0000 20a10700 1c000000 e6041ef2 724f1835 fc400ff8 68ce0afd e4e306ce 6060009e 5fe67d24",
|
|
);
|
|
playSound(@nargs=1, @blob="29000000");
|
|
+90: // 90
|
|
nop(@blob="");
|
|
pushi(@mask=0b1, @nargs=1, @blob="19d9ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
neqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="68010000 5f000000");
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 00002043 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 91
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 0000c042 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 92
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 00000042 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 93
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 000020c3 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 94
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 0000c0c2 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 95
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 000000c2 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
jmp(@nargs=2, @blob="b4000000 61000000");
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 00000043 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 96
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 00000000 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
+1: // 97
|
|
enmCreateA(
|
|
@nargs=6,
|
|
@blob="0c000000 426f7373 3245745f 61743200 000000c3 00000000 f0000000 e8030000 00000000",
|
|
);
|
|
jmp(@nargs=2, @blob="54000000 f7000000");
|
|
+100: // 197
|
|
nop(@blob="");
|
|
moveRand(@nargs=3, @blob="32000000 00000000 00000040");
|
|
+50: // 247
|
|
nop(@blob="");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
jmpNeq(@nargs=2, @blob="b0ffffff 61000000");
|
|
ret(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard4At() {
|
|
stackAlloc(@nargs=1, @blob="08000000");
|
|
pushi(@nargs=1, @blob="0f000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
flagSet(@nargs=1, @blob="20000000");
|
|
flagSet(@nargs=1, @blob="0c010000");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 03000000");
|
|
etSprite(@nargs=3, @blob="00000000 12000000 00000000");
|
|
etCount(@nargs=3, @blob="00000000 01000000 01000000");
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00f41bc6 00000000");
|
|
etSpeed(@nargs=3, @blob="00000000 6666a63f 0000803f");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 01000000 02000000 00000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
jmp(@nargs=2, @blob="3c000000 14000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 20
|
|
nop(@blob="");
|
|
deci(@mask=0b1, @nargs=1, @blob="04000000");
|
|
jmpNeq(@nargs=2, @blob="c8ffffff 00000000");
|
|
delete(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard4AtH() {
|
|
stackAlloc(@nargs=1, @blob="08000000");
|
|
pushi(@nargs=1, @blob="0f000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
flagSet(@nargs=1, @blob="20000000");
|
|
flagSet(@nargs=1, @blob="0c010000");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 03000000");
|
|
etSprite(@nargs=3, @blob="00000000 12000000 00000000");
|
|
etCount(@nargs=3, @blob="00000000 01000000 01000000");
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00f41bc6 00000000");
|
|
etSpeed(@nargs=3, @blob="00000000 6666a63f 0000803f");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 01000000 02000000 00000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
pushi(@mask=0b1, @nargs=1, @blob="ffd8ffff");
|
|
pushi(@nargs=1, @blob="02000000");
|
|
modi(@blob="");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="20010000 00000000");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 01000000 00000000 00040000 40010000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 03000000 00000000 08000000 78000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 04000000 00000000 08000000 78000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 05000000 00000000 08000000 3c000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
jmp(@nargs=2, @blob="08010000 00000000");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 01000000 00000000 00040000 40010000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 03000000 00000000 08000000 78000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 04000000 00000000 08000000 78000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 05000000 00000000 08000000 3c000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
jmp(@nargs=2, @blob="3c000000 14000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 20
|
|
nop(@blob="");
|
|
deci(@mask=0b1, @nargs=1, @blob="04000000");
|
|
jmpNeq(@nargs=2, @blob="c8ffffff 00000000");
|
|
delete(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard4AtH2() {
|
|
stackAlloc(@nargs=1, @blob="08000000");
|
|
pushi(@nargs=1, @blob="08000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="04000000");
|
|
flagSet(@nargs=1, @blob="20000000");
|
|
flagSet(@nargs=1, @blob="0c010000");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 03000000");
|
|
etSprite(@nargs=3, @blob="00000000 12000000 00000000");
|
|
etCount(@nargs=3, @blob="00000000 01000000 01000000");
|
|
etAngle(@mask=0b10, @nargs=3, @blob="00000000 00f41bc6 00000000");
|
|
etSpeed(@nargs=3, @blob="00000000 6666a63f 0000803f");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 01000000 02000000 00000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
pushi(@mask=0b1, @nargs=1, @blob="ffd8ffff");
|
|
pushi(@nargs=1, @blob="02000000");
|
|
modi(@blob="");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="20010000 00000000");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 01000000 00000000 00040000 40010000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 03000000 00000000 08000000 78000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 04000000 00000000 08000000 78000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 05000000 00000000 08000000 3c000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
jmp(@nargs=2, @blob="08010000 00000000");
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 01000000 00000000 00040000 40010000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 02000000 00000000 08000000 3c000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 03000000 00000000 08000000 78000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 04000000 00000000 08000000 78000000 c1bdf0ff 00000000 507756bc",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 05000000 00000000 08000000 3c000000 c1bdf0ff 00000000 5077563c",
|
|
);
|
|
jmp(@nargs=2, @blob="3c000000 14000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 20
|
|
nop(@blob="");
|
|
deci(@mask=0b1, @nargs=1, @blob="04000000");
|
|
jmpNeq(@nargs=2, @blob="c8ffffff 00000000");
|
|
delete(@blob="");
|
|
}
|
|
|
|
|
|
void BossCard4_01C() {
|
|
stackAlloc(@nargs=1, @blob="18000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
setf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
diffF(
|
|
@mask=0b1,
|
|
@nargs=5,
|
|
@blob="00008040 920a863e 7cd9203d db0f493e db0f493e",
|
|
);
|
|
diffI(
|
|
@mask=0b1,
|
|
@nargs=5,
|
|
@blob="0c000000 01000000 03000000 09000000 09000000",
|
|
);
|
|
setInvuln(@nargs=1, @blob="64000000");
|
|
enmKillAll(@blob="");
|
|
pushi(@mask=0b1, @nargs=1, @blob="fed8ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="44000000 00000000");
|
|
etCancel(@nargs=1, @blob="00002044");
|
|
jmp(@nargs=2, @blob="2c000000 00000000");
|
|
etClear(@nargs=1, @blob="00002044");
|
|
spellEnd(@blob="");
|
|
killAllAsync(@blob="");
|
|
funcSet(@nargs=1, @blob="00000000");
|
|
laserCancel(@blob="");
|
|
setInterrupt(
|
|
@nargs=4,
|
|
@blob="00000000 00000000 68100000 0c000000 426f7373 44656164 00000000",
|
|
);
|
|
setChapter(@nargs=1, @blob="2e000000");
|
|
pushi(@mask=0b1, @nargs=1, @blob="fed8ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="d8000000 00000000");
|
|
dropClear(@blob="");
|
|
pushi(@mask=0b1, @nargs=1, @blob="25d9ffff");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
eqi(@blob="");
|
|
jmpEq(@nargs=2, @blob="2c000000 00000000");
|
|
dropMain(@nargs=1, @blob="05000000");
|
|
call(@nargs=1, @blob="10000000 426f7373 43617264 4974656d 00000000");
|
|
dropArea(@nargs=2, @blob="00004042 00004042");
|
|
dropItems(@blob="");
|
|
playSound(@nargs=1, @blob="0f000000");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="25d9ffff");
|
|
movePosTime(@nargs=4, @blob="5a000000 04000000 00000000 00000043");
|
|
wait(@nargs=1, @blob="5a000000");
|
|
spell(
|
|
@nargs=4,
|
|
@blob="72000000 68100000 20a10700 20000000 e6041ef2 724f1d0d ed1e0664 691f19f5 f5840760 604d0261 dca3fe59 5ad47960",
|
|
);
|
|
flagSet(@nargs=1, @blob="0c000000");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="ffd8ffff");
|
|
jmp(@nargs=2, @blob="58080000 a0000000");
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
{"04567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"04567"}: mulf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"124567"}: pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
{"124567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"124567"}: mulf(@blob="");
|
|
{"124567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@mask=0b1, @nargs=1, @blob="003c1cc6");
|
|
{"34567"}: pushi(@nargs=1, @blob="20000000");
|
|
{"34567"}: mulf(@blob="");
|
|
{"34567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
pushi(@nargs=1, @blob="05000000");
|
|
seti(@mask=0b1, @nargs=1, @blob="14000000");
|
|
{"34567"}: pushi(@nargs=1, @blob="08000000");
|
|
{"34567"}: seti(@mask=0b1, @nargs=1, @blob="14000000");
|
|
jmp(@nargs=2, @blob="90040000 28000000");
|
|
pushf(@nargs=1, @blob="dc0f4940");
|
|
setf(@mask=0b1, @nargs=1, @blob="00f41bc6");
|
|
pushi(@nargs=1, @blob="c0000000");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
addi(@blob="");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
addf(@blob="");
|
|
enmCreateA(
|
|
@mask=0b110,
|
|
@nargs=6,
|
|
@blob="10000000 426f7373 43617264 34417448 00000000 000080bf 00000000 32000000 e8030000 01000000",
|
|
);
|
|
pushi(@nargs=1, @blob="c0000000");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
addi(@blob="");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
addf(@blob="");
|
|
enmCreateA(
|
|
@mask=0b110,
|
|
@nargs=6,
|
|
@blob="10000000 426f7373 43617264 34417448 32000000 000080bf 00000000 32000000 e8030000 01000000",
|
|
);
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"04567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"04567"}: addf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"124567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"124567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"124567"}: addf(@blob="");
|
|
{"124567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushi(@nargs=1, @blob="20000000");
|
|
{"34567"}: addf(@blob="");
|
|
{"34567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
+20: // 20
|
|
pushf(@nargs=1, @blob="00000000");
|
|
setf(@mask=0b1, @nargs=1, @blob="00f41bc6");
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushi(@nargs=1, @blob="c0000000");
|
|
subf(@blob="");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
subi(@blob="");
|
|
enmCreateA(
|
|
@mask=0b110,
|
|
@nargs=6,
|
|
@blob="10000000 426f7373 43617264 34417448 00000000 000080bf 00000000 32000000 e8030000 01000000",
|
|
);
|
|
pushf(@mask=0b1, @nargs=1, @blob="00000041");
|
|
pushi(@nargs=1, @blob="c0000000");
|
|
subf(@blob="");
|
|
pushi(@nargs=1, @blob="10000000");
|
|
subi(@blob="");
|
|
enmCreateA(
|
|
@mask=0b110,
|
|
@nargs=6,
|
|
@blob="10000000 426f7373 43617264 34417448 32000000 000080bf 00000000 32000000 e8030000 01000000",
|
|
);
|
|
+20: // 40
|
|
nop(@blob="");
|
|
{"04567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"04567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"04567"}: addf(@blob="");
|
|
{"04567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"124567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"124567"}: pushi(@nargs=1, @blob="30000000");
|
|
{"124567"}: addf(@blob="");
|
|
{"124567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
{"34567"}: pushi(@nargs=1, @blob="20000000");
|
|
{"34567"}: addf(@blob="");
|
|
{"34567"}: setf(@mask=0b1, @nargs=1, @blob="00000000");
|
|
deci(@mask=0b1, @nargs=1, @blob="14000000");
|
|
jmpNeq(@nargs=2, @blob="74fbffff 00000000");
|
|
moveRand(@nargs=3, @blob="3c000000 04000000 00000040");
|
|
+20: // 60
|
|
nop(@blob="");
|
|
etNew(@nargs=1, @blob="00000000");
|
|
etAim(@nargs=2, @blob="00000000 00000000");
|
|
etSprite(@nargs=3, @blob="00000000 0c000000 03000000");
|
|
etCount(@mask=0b10, @nargs=3, @blob="00000000 0c000000 01000000");
|
|
etAngle(@mask=0b100, @nargs=3, @blob="00000000 00000000 00008040");
|
|
etSpeedD(
|
|
@nargs=9,
|
|
@blob="00000000 00000040 00004040 00004040 00004040 0000803f 0000803f 0000803f 0000803f",
|
|
);
|
|
etEx(
|
|
@nargs=8,
|
|
@blob="00000000 00000000 01000000 02000000 02000000 c1bdf0ff f02374c9 f02374c9",
|
|
);
|
|
pushi(@mask=0b1, @nargs=1, @blob="19d9ffff");
|
|
pushi(@nargs=1, @blob="00000000");
|
|
greateri(@blob="");
|
|
jmpEq(@nargs=2, @blob="a8000000 a0000000");
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 80
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 100
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 120
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 140
|
|
etOn(@nargs=1, @blob="00000000");
|
|
+20: // 160
|
|
etOn(@nargs=1, @blob="00000000");
|
|
jmp(@nargs=2, @blob="2c000000 a0000000");
|
|
wait(@nargs=1, @blob="64000000");
|
|
pushi(@mask=0b1, @nargs=1, @blob="ffd8ffff");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
addi(@blob="");
|
|
seti(@mask=0b1, @nargs=1, @blob="ffd8ffff");
|
|
pushi(@nargs=1, @blob="01000000");
|
|
jmpNeq(@nargs=2, @blob="acf7ffff 00000000");
|
|
ret(@blob="");
|
|
}
|