From f3b6137fe24da594b02da22797f34340f245ac93 Mon Sep 17 00:00:00 2001 From: nmlgc Date: Sun, 9 Dec 2018 01:09:17 +0100 Subject: [PATCH] [Reverse-engineering] [th04/th05] Midboss HP Funded by -Tom-. --- th04_main.asm | 74 +++++++++++++++++------------------ th05_main.asm | 104 +++++++++++++++++++++++++------------------------- 2 files changed, 89 insertions(+), 89 deletions(-) diff --git a/th04_main.asm b/th04_main.asm index cc9e8ac3..10887def 100644 --- a/th04_main.asm +++ b/th04_main.asm @@ -18857,8 +18857,8 @@ loc_1422D: call sub_13FB2 or si, si jz short loc_142E4 - sub word_26702, si - cmp word_26702, 0 + sub _midboss_hp, si + cmp _midboss_hp, 0 jle short loc_142A2 mov byte_26708, 1 push 4 @@ -18888,8 +18888,8 @@ loc_142E1: call sub_1A047 loc_142E4: - push word_26702 - push 26Ch + push _midboss_hp + push 620 call sub_19F16 pop si pop bp @@ -19234,8 +19234,8 @@ loc_14606: mov si, ax or si, si jz short loc_1468D - sub word_26702, si - cmp word_26702, 0 + sub _midboss_hp, si + cmp _midboss_hp, 0 jle short loc_14629 mov byte_26708, 1 jmp short loc_1468D @@ -19275,8 +19275,8 @@ loc_1468A: call sub_1A047 loc_1468D: - push word_26702 - push 352h + push _midboss_hp + push 850 call sub_19F16 pop si leave @@ -19305,7 +19305,7 @@ sub_146AF proc near mov ax, _midboss_pos.cur.y mov _midboss_pos.prev.y, ax push (192 shl 4) - push word_26702 + push _midboss_hp mov al, byte_26709 mov ah, 0 add ax, ax @@ -19314,7 +19314,7 @@ sub_146AF proc near call vector1_at mov _midboss_pos.cur.x, ax push (96 shl 4) - push word_26702 + push _midboss_hp mov al, byte_26709 mov ah, 0 add ax, ax @@ -19363,7 +19363,7 @@ loc_1473F: loc_14749: push (96 shl 4) - push word_26702 + push _midboss_hp mov al, byte_26709 mov ah, 0 add ax, ax @@ -19619,9 +19619,9 @@ sub_1494C proc far loc_14975: call sub_146AF inc word_26706 - cmp word_26702, 80h + cmp _midboss_hp, 128 jle short loc_14989 - sub word_26702, 20h ; ' ' + sub _midboss_hp, 32 loc_14989: cmp word_26706, 80h @@ -19637,9 +19637,9 @@ loc_1498F: loc_149A3: call sub_146AF inc word_26706 - cmp word_26702, 380h + cmp _midboss_hp, 896 jge short loc_149B7 - add word_26702, 8 + add _midboss_hp, 8 loc_149B7: cmp word_26706, 80h @@ -19653,9 +19653,9 @@ loc_149B7: loc_149D0: call sub_146AF inc word_26706 - cmp word_26702, 80h + cmp _midboss_hp, 128 jle short loc_149E4 - sub word_26702, 20h ; ' ' + sub _midboss_hp, 32 loc_149E4: cmp word_26706, 80h @@ -19676,9 +19676,9 @@ loc_149FD: loc_14A0A: call sub_14700 call sub_147DB - cmp word_26702, 300h + cmp _midboss_hp, 768 jge short loc_14A1D - add word_26702, 8 + add _midboss_hp, 8 loc_14A1D: inc word_26706 @@ -20212,8 +20212,8 @@ loc_14E8E: mov si, ax or si, si jz loc_14F57 - sub word_26702, si - cmp word_26702, 0 + sub _midboss_hp, si + cmp _midboss_hp, 0 jle short loc_14EB5 mov byte_26708, 1 push 4 @@ -20261,7 +20261,7 @@ loc_14F16: cmp _midboss_pos.cur.y, 0 jg short loc_14F38 inc byte_26705 - mov word_26702, 0 + mov _midboss_hp, 0 loc_14F38: cmp frame_mod16, 0 @@ -20277,8 +20277,8 @@ loc_14F52: nopcall sub_19EBC loc_14F57: - push word_26702 - push 2EEh + push _midboss_hp + push 750 call sub_19F16 pop si leave @@ -20814,8 +20814,8 @@ loc_153EE: mov si, ax or si, si jz loc_1552D - sub word_26702, si - cmp word_26702, 0 + sub _midboss_hp, si + cmp _midboss_hp, 0 jle short loc_15414 mov byte_26708, 1 jmp loc_1552D @@ -20881,7 +20881,7 @@ loc_15490: cmp byte_26704, 0Ch jb short loc_1552D inc byte_26705 - mov word_26702, 0 + mov _midboss_hp, 0 jmp short loc_1552D ; --------------------------------------------------------------------------- @@ -20898,15 +20898,15 @@ loc_154D1: mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, (-4 shl 4) mov _midboss_pos.velocity.y, (2 shl 4) - mov word_26702, 4B0h + mov _midboss_hp, 1200 mov byte_26704, 0 mov word_26706, 0 jmp short loc_15537 ; --------------------------------------------------------------------------- loc_1552D: - push word_26702 - push 4B0h + push _midboss_hp + push 1200 call sub_19F16 loc_15537: @@ -29548,7 +29548,7 @@ sub_19EBC proc far mov fp_259FA, offset nullsub_1 setfarfp farfp_259F6, nullsub_2 mov byte_259F2, 0 - mov word_26702, 0 + mov _midboss_hp, 0 pop bp retf sub_19EBC endp @@ -37713,7 +37713,7 @@ sub_1DFEF proc far mov _midboss_pos.prev.y, (368 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, (1 shl 4) - mov word_26702, 320h + mov _midboss_hp, 800 call sub_1DF61 mov _boss_pos.cur.x, (192 shl 4) mov _boss_pos.prev.x, (192 shl 4) @@ -37758,7 +37758,7 @@ sub_1E0B3 proc far mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, (1 shl 4) - mov word_26702, 2EEh + mov _midboss_hp, 750 mov byte_26704, 0 call sub_1DF61 mov _boss_pos.cur.x, (192 shl 4) @@ -37806,7 +37806,7 @@ sub_1E186 proc far mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, (4 shl 4) - mov word_26702, 352h + mov _midboss_hp, 850 mov byte_26704, 0 call sub_1DF61 mov _boss_pos.cur.x, (192 shl 4) @@ -37850,7 +37850,7 @@ sub_1E245 proc far mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, (4 shl 4) mov _midboss_pos.velocity.y, (2 shl 4) - mov word_26702, 4B0h + mov _midboss_hp, 1200 mov byte_26704, 0 call sub_1DF61 mov _boss_pos.cur.x, (192 shl 4) @@ -38028,7 +38028,7 @@ sub_1E518 proc far mov _midboss_pos.prev.y, (256 shl 4) mov _midboss_pos.velocity.x, (4 shl 4) mov _midboss_pos.velocity.y, (-4 shl 4) - mov word_26702, 1000h + mov _midboss_hp, 4096 mov byte_26704, 0 mov byte_26709, 60h call sub_1DF61 @@ -46899,7 +46899,7 @@ byte_266F2 db ? db ? _midboss_pos motion_t frames_until_midboss dw ? -word_26702 dw ? +_midboss_hp dw ? byte_26704 db ? byte_26705 db ? word_26706 dw ? diff --git a/th05_main.asm b/th05_main.asm index b8a9e1b1..32a3cd02 100644 --- a/th05_main.asm +++ b/th05_main.asm @@ -20182,7 +20182,7 @@ sub_14544 proc near mov _midboss_pos.prev.y, (96 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, 0 - mov midboss_cur_hp, 1000 + mov _midboss_hp, 1000 mov midboss_cur_image, 200 call sub_144CB mov _boss_pos.cur.x, (192 shl 4) @@ -20229,7 +20229,7 @@ sub_14613 proc near mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, 8 - mov midboss_cur_hp, 578h + mov _midboss_hp, 1400 mov midboss_cur_image, 0CAh call sub_144CB mov _boss_pos.cur.x, (192 shl 4) @@ -20273,7 +20273,7 @@ sub_146D0 proc near mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, 8 - mov midboss_cur_hp, 578h + mov _midboss_hp, 1400 mov midboss_cur_image, 0D0h call sub_144CB mov _boss_pos.cur.x, (192 shl 4) @@ -20320,7 +20320,7 @@ sub_1479F proc near mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, 8 - mov midboss_cur_hp, 44Ch + mov _midboss_hp, 1100 mov midboss_cur_image, 0D0h call sub_144CB mov _boss_pos.cur.x, (96 shl 4) @@ -20369,7 +20369,7 @@ sub_14879 proc near mov _midboss_pos.prev.y, (-32 shl 4) mov _midboss_pos.velocity.x, 0 mov _midboss_pos.velocity.y, 8 - mov midboss_cur_hp, 60Eh + mov _midboss_hp, 1550 mov midboss_cur_image, 0D4h call sub_144CB mov _boss_pos.cur.x, (96 shl 4) @@ -20458,7 +20458,7 @@ sub_14A06 proc near mov _midboss_pos.cur.y, (-16 shl 4) mov _midboss_pos.prev.y, (-16 shl 4) mov byte_26335, 40h - mov midboss_cur_hp, 0BB8h + mov _midboss_hp, 3000 mov midboss_cur_image, 0DCh call sub_144CB mov _boss_pos.cur.x, (192 shl 4) @@ -24925,7 +24925,7 @@ sub_172FF proc far mov fp_2C98E, offset nullsub_2 mov fp_2C994, offset nullsub_2 setfarfp farfp_2C990, nullsub_1 - mov midboss_cur_hp, 0 + mov _midboss_hp, 0 pop bp retf sub_172FF endp @@ -26663,7 +26663,7 @@ sub_18017 proc near mov bp, sp push si mov si, 10h - cmp midboss_cur_hp, 0C8h + cmp _midboss_hp, 200 jg short loc_18029 mov si, 0Ch @@ -26765,9 +26765,9 @@ loc_1812B: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax - mov ax, 3E8h - sub ax, midboss_cur_hp + sub _midboss_hp, ax + mov ax, 1000 + sub ax, _midboss_hp cwde shl eax, 6 shl eax, 4 @@ -26778,7 +26778,7 @@ loc_1812B: call sub_17FC6 cmp word_26332, 5DCh jge short loc_1818B - cmp midboss_cur_hp, 0 + cmp _midboss_hp, 0 jg short loc_181C4 mov byte_2C978, 1 push 5 @@ -26802,16 +26802,16 @@ loc_1818B: loc_181B5: call sub_17486 - push midboss_cur_hp - push 3E8h + push _midboss_hp + push 1000 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_181C4: - push midboss_cur_hp - push 3E8h + push _midboss_hp + push 1000 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -27709,14 +27709,14 @@ sub_18987 proc near mov byte ptr word_25FFA+1, 0 mov byte_26000, 0Dh mov byte ptr dword_26002, 3 - cmp midboss_cur_hp, 258h + cmp _midboss_hp, 600 jg short loc_189DB mov byte ptr dword_26002, 6 jmp short loc_189E8 ; --------------------------------------------------------------------------- loc_189DB: - cmp midboss_cur_hp, 320h + cmp _midboss_hp, 800 jg short loc_189E8 mov byte ptr dword_26002, 4 @@ -27807,10 +27807,10 @@ loc_18A9F: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax + sub _midboss_hp, ax cmp word_26332, 3E8h jge short loc_18ADC - cmp midboss_cur_hp, 190h + cmp _midboss_hp, 400 jg loc_18BA0 push 5 call sub_173AC @@ -27849,10 +27849,10 @@ loc_18B24: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax + sub _midboss_hp, ax cmp word_26332, 320h jge short loc_18B67 - cmp midboss_cur_hp, 0 + cmp _midboss_hp, 0 jg short loc_18BA0 mov byte_2C978, 1 push 0Fh @@ -27876,16 +27876,16 @@ loc_18B67: loc_18B91: call sub_17486 - push midboss_cur_hp - push 578h + push _midboss_hp + push 1400 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_18BA0: - push midboss_cur_hp - push 578h + push _midboss_hp + push 1400 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -29089,10 +29089,10 @@ loc_195A1: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax + sub _midboss_hp, ax loc_195BC: - cmp midboss_cur_hp, 0 + cmp _midboss_hp, 0 jg short loc_19613 mov byte_2C978, 1 push 0Fh @@ -29116,16 +29116,16 @@ loc_195DA: loc_19604: call sub_17486 - push midboss_cur_hp - push 578h + push _midboss_hp + push 1400 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_19613: - push midboss_cur_hp - push 578h + push _midboss_hp + push 1400 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -32447,10 +32447,10 @@ loc_1B32F: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax + sub _midboss_hp, ax loc_1B34A: - cmp midboss_cur_hp, 0 + cmp _midboss_hp, 0 jg short loc_1B3A1 mov byte_2C978, 1 push 0Fh @@ -32474,16 +32474,16 @@ loc_1B368: loc_1B392: call sub_17486 - push midboss_cur_hp - push 44Ch + push _midboss_hp + push 1100 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_1B3A1: - push midboss_cur_hp - push 44Ch + push _midboss_hp + push 1100 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -38132,7 +38132,7 @@ loc_1E776: jz short loc_1E7F2 cmp byte_2D082, 0 jnz short loc_1E7AF - cmp midboss_cur_hp, 3E8h + cmp _midboss_hp, 1000 jge short loc_1E7AF push 0Ah call sub_173AC @@ -38176,10 +38176,10 @@ loc_1E7F2: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax + sub _midboss_hp, ax cmp byte_2D084, 14h jnb short loc_1E82B - cmp midboss_cur_hp, 0 + cmp _midboss_hp, 0 jg short loc_1E864 mov byte_2C978, 1 push 1Eh @@ -38203,16 +38203,16 @@ loc_1E82B: loc_1E855: call sub_17486 - push midboss_cur_hp - push 0BB8h + push _midboss_hp + push 3000 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_1E864: - push midboss_cur_hp - push 0BB8h + push _midboss_hp + push 3000 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -40148,8 +40148,8 @@ loc_1F936: call sub_1FA9D mov byte_26334, al mov ah, 0 - sub midboss_cur_hp, ax - cmp midboss_cur_hp, 0 + sub _midboss_hp, ax + cmp _midboss_hp, 0 jg short loc_1F9A1 mov byte_2C978, 1 push 1Eh @@ -40173,16 +40173,16 @@ loc_1F968: loc_1F992: call sub_17486 - push midboss_cur_hp - push 60Eh + push _midboss_hp + push 1550 call sub_17354 pop bp retf ; --------------------------------------------------------------------------- loc_1F9A1: - push midboss_cur_hp - push 60Eh + push _midboss_hp + push 1550 call sub_17354 mov ax, _midboss_pos.cur.x mov word ptr dword_2C922, ax @@ -46162,7 +46162,7 @@ word_2631A dw ? dd ? _midboss_pos motion_t frames_until_midboss dw ? -midboss_cur_hp dw ? +_midboss_hp dw ? midboss_cur_image db ? byte_26331 db ? word_26332 dw ?