mirror of https://github.com/nmlgc/ReC98.git
[Reverse-engineering] [th04/th05] Midboss / boss explosion phase constants
In the end, the explosions remain the only constant in these phases, everything else ("defeat"? "last phase"?) could have been misunderstood. And yes, the algorithm really treated these 111 constants as potential memory references… Completes P0058, funded by -Tom-.
This commit is contained in:
parent
6c4852f789
commit
fef0299fbc
|
@ -0,0 +1,7 @@
|
||||||
|
// Midboss and boss phases
|
||||||
|
#if GAME eq 5
|
||||||
|
# define PHASE_BOSS_EXPLODE_SMALL (-3)
|
||||||
|
# define PHASE_BOSS_EXPLODE_BIG (-2)
|
||||||
|
#endif
|
||||||
|
#define PHASE_EXPLODE_BIG (-2)
|
||||||
|
#define PHASE_NONE (-1)
|
|
@ -0,0 +1,7 @@
|
||||||
|
; Midboss and boss phases
|
||||||
|
if GAME eq 5
|
||||||
|
PHASE_BOSS_EXPLODE_SMALL = -3
|
||||||
|
PHASE_BOSS_EXPLODE_BIG = -2
|
||||||
|
endif
|
||||||
|
PHASE_EXPLODE_BIG = -2
|
||||||
|
PHASE_NONE = -1
|
111
th04_main.asm
111
th04_main.asm
|
@ -21,6 +21,7 @@
|
||||||
|
|
||||||
include ReC98.inc
|
include ReC98.inc
|
||||||
include th04/th04.inc
|
include th04/th04.inc
|
||||||
|
include th04/phase.inc
|
||||||
|
|
||||||
extern SCOPY@:proc
|
extern SCOPY@:proc
|
||||||
extern _execl:proc
|
extern _execl:proc
|
||||||
|
@ -2931,7 +2932,7 @@ loc_C836:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_C877:
|
loc_C877:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_C881
|
jnz short loc_C881
|
||||||
call main_01:sub_11A9A
|
call main_01:sub_11A9A
|
||||||
|
|
||||||
|
@ -2969,7 +2970,7 @@ var_2 = word ptr -2
|
||||||
add ax, (-16 shl 4)
|
add ax, (-16 shl 4)
|
||||||
call main_01:scroll_subpixel_y_to_vram_seg1 pascal, ax
|
call main_01:scroll_subpixel_y_to_vram_seg1 pascal, ax
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_C8D2
|
jnz short loc_C8D2
|
||||||
call main_01:sub_11A9A
|
call main_01:sub_11A9A
|
||||||
jmp short loc_C946
|
jmp short loc_C946
|
||||||
|
@ -3673,7 +3674,7 @@ loc_CE6E:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_CE85:
|
loc_CE85:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_CE8F
|
jnz short loc_CE8F
|
||||||
call main_01:sub_11A9A
|
call main_01:sub_11A9A
|
||||||
|
|
||||||
|
@ -6912,7 +6913,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -32
|
add ax, -32
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_E8D8
|
jnz short loc_E8D8
|
||||||
push si
|
push si
|
||||||
push ax
|
push ax
|
||||||
|
@ -6950,7 +6951,7 @@ loc_E906:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_E91D:
|
loc_E91D:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb loc_EA5B
|
jnb loc_EA5B
|
||||||
cmp byte_25667, 0
|
cmp byte_25667, 0
|
||||||
jnz short loc_E98E
|
jnz short loc_E98E
|
||||||
|
@ -7080,7 +7081,7 @@ loc_EA55:
|
||||||
loc_EA5B:
|
loc_EA5B:
|
||||||
call explosions_small_update_and_render
|
call explosions_small_update_and_render
|
||||||
call explosions_big_update_and_render
|
call explosions_big_update_and_render
|
||||||
cmp _boss_phase, 0FFh
|
cmp _boss_phase, PHASE_NONE
|
||||||
jnb short loc_EA6B
|
jnb short loc_EA6B
|
||||||
call main_01:sub_E2C3
|
call main_01:sub_E2C3
|
||||||
|
|
||||||
|
@ -7311,7 +7312,7 @@ var_2 = word ptr -2
|
||||||
push si
|
push si
|
||||||
cmp _boss_phase, 1
|
cmp _boss_phase, 1
|
||||||
jb short loc_EC01
|
jb short loc_EC01
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jb short loc_EC56
|
jb short loc_EC56
|
||||||
|
|
||||||
loc_EC01:
|
loc_EC01:
|
||||||
|
@ -7515,7 +7516,7 @@ marisa_fg_render proc near
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -16
|
add ax, -16
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_EDC3
|
jnb short loc_EDC3
|
||||||
cmp _boss_damage_this_frame, 0
|
cmp _boss_damage_this_frame, 0
|
||||||
jnz short loc_EDA6
|
jnz short loc_EDA6
|
||||||
|
@ -7544,7 +7545,7 @@ loc_EDBE:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_EDC3:
|
loc_EDC3:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_EDD7
|
jnz short loc_EDD7
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
|
@ -11845,7 +11846,7 @@ mugetsu_fg_render proc near
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -32
|
add ax, -32
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_11629
|
jnb short loc_11629
|
||||||
cmp _boss_damage_this_frame, 0
|
cmp _boss_damage_this_frame, 0
|
||||||
jnz short loc_115F5
|
jnz short loc_115F5
|
||||||
|
@ -11887,7 +11888,7 @@ loc_11622:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_11629:
|
loc_11629:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_1163D
|
jnz short loc_1163D
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
|
@ -12029,7 +12030,7 @@ var_2 = word ptr -2
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1183C:
|
loc_1183C:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb loc_1193A
|
jnb loc_1193A
|
||||||
mov ax, _boss_pos.cur.x
|
mov ax, _boss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -12136,7 +12137,7 @@ loc_11932:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1193A:
|
loc_1193A:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_11961
|
jnz short loc_11961
|
||||||
mov ax, _boss_pos.cur.x
|
mov ax, _boss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -12232,7 +12233,7 @@ var_2 = word ptr -2
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_11A12:
|
loc_11A12:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_11A69
|
jnb short loc_11A69
|
||||||
mov ax, _boss_pos.cur.x
|
mov ax, _boss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -12268,7 +12269,7 @@ loc_11A57:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_11A69:
|
loc_11A69:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_11A90
|
jnz short loc_11A90
|
||||||
mov ax, _boss_pos.cur.x
|
mov ax, _boss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -12497,9 +12498,9 @@ yuuka6_fg_render proc near
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -32
|
add ax, -32
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FFh
|
cmp _boss_phase, PHASE_NONE
|
||||||
jz loc_11D92
|
jz loc_11D92
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_11C57
|
jnz short loc_11C57
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
|
@ -12712,7 +12713,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -16
|
add ax, -16
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_11E5D
|
jnb short loc_11E5D
|
||||||
cmp _boss_damage_this_frame, 0
|
cmp _boss_damage_this_frame, 0
|
||||||
jnz short loc_11E48
|
jnz short loc_11E48
|
||||||
|
@ -12737,7 +12738,7 @@ loc_11E48:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_11E5D:
|
loc_11E5D:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_11E71
|
jnz short loc_11E71
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
|
@ -13078,7 +13079,7 @@ sub_12076 endp
|
||||||
sub_12124 proc near
|
sub_12124 proc near
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_12141
|
jnb short loc_12141
|
||||||
mov _tile_invalidate_box.x, 64
|
mov _tile_invalidate_box.x, 64
|
||||||
mov _tile_invalidate_box.y, 64
|
mov _tile_invalidate_box.y, 64
|
||||||
|
@ -13131,7 +13132,7 @@ loc_12199:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_121BF:
|
loc_121BF:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_121D3
|
jnb short loc_121D3
|
||||||
call main_01:boss_backdrop_render pascal, (32 shl 16) or 136, 1
|
call main_01:boss_backdrop_render pascal, (32 shl 16) or 136, 1
|
||||||
pop bp
|
pop bp
|
||||||
|
@ -13139,7 +13140,7 @@ loc_121BF:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_121D3:
|
loc_121D3:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_121E1
|
jz short loc_121E1
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_121E6
|
jg short loc_121E6
|
||||||
|
@ -13181,7 +13182,7 @@ kurumi_bg_render proc near
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1221B:
|
loc_1221B:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_1222F
|
jnb short loc_1222F
|
||||||
call main_01:boss_backdrop_render pascal, (32 shl 16) or 96, 0
|
call main_01:boss_backdrop_render pascal, (32 shl 16) or 96, 0
|
||||||
pop bp
|
pop bp
|
||||||
|
@ -13189,7 +13190,7 @@ loc_1221B:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1222F:
|
loc_1222F:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_1223D
|
jz short loc_1223D
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_12242
|
jg short loc_12242
|
||||||
|
@ -13258,7 +13259,7 @@ loc_12285:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_122AB:
|
loc_122AB:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_122BF
|
jnb short loc_122BF
|
||||||
call main_01:boss_backdrop_render pascal, (32 shl 16) or 16, 0
|
call main_01:boss_backdrop_render pascal, (32 shl 16) or 16, 0
|
||||||
pop bp
|
pop bp
|
||||||
|
@ -13266,7 +13267,7 @@ loc_122AB:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_122BF:
|
loc_122BF:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_122CD
|
jz short loc_122CD
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_122D2
|
jg short loc_122D2
|
||||||
|
@ -13336,7 +13337,7 @@ loc_12327:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_12338:
|
loc_12338:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_1234C
|
jnb short loc_1234C
|
||||||
call main_01:boss_backdrop_render pascal, (96 shl 16) or 72, 1
|
call main_01:boss_backdrop_render pascal, (96 shl 16) or 72, 1
|
||||||
leave
|
leave
|
||||||
|
@ -13344,7 +13345,7 @@ loc_12338:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1234C:
|
loc_1234C:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_1235A
|
jz short loc_1235A
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_1235F
|
jg short loc_1235F
|
||||||
|
@ -13414,7 +13415,7 @@ loc_123B4:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_123C5:
|
loc_123C5:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_123D9
|
jnb short loc_123D9
|
||||||
call main_01:boss_backdrop_render pascal, (128 shl 16) or 128, 0
|
call main_01:boss_backdrop_render pascal, (128 shl 16) or 128, 0
|
||||||
leave
|
leave
|
||||||
|
@ -13422,7 +13423,7 @@ loc_123C5:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_123D9:
|
loc_123D9:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_123E7
|
jz short loc_123E7
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_123EC
|
jg short loc_123EC
|
||||||
|
@ -13920,7 +13921,7 @@ loc_127B1:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_127B7:
|
loc_127B7:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jb short loc_127EC
|
jb short loc_127EC
|
||||||
mov word_2CF28, 7Dh ; '}'
|
mov word_2CF28, 7Dh ; '}'
|
||||||
mov byte_2CDD0, 11h
|
mov byte_2CDD0, 11h
|
||||||
|
@ -14125,7 +14126,7 @@ loc_12947:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_12958:
|
loc_12958:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_12964
|
jnb short loc_12964
|
||||||
call main_01:sub_12076
|
call main_01:sub_12076
|
||||||
jmp short loc_12972
|
jmp short loc_12972
|
||||||
|
@ -14205,7 +14206,7 @@ loc_129D2:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_129E3:
|
loc_129E3:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_129F7
|
jnb short loc_129F7
|
||||||
call main_01:boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
call main_01:boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
||||||
leave
|
leave
|
||||||
|
@ -14213,7 +14214,7 @@ loc_129E3:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_129F7:
|
loc_129F7:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jz short loc_12991
|
jz short loc_12991
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jle short loc_12991
|
jle short loc_12991
|
||||||
|
@ -14852,7 +14853,7 @@ var_2 = word ptr -2
|
||||||
enter 2, 0
|
enter 2, 0
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb loc_12F2E
|
jnb loc_12F2E
|
||||||
cmp byte_2D03C, 0
|
cmp byte_2D03C, 0
|
||||||
jz short loc_12ECF
|
jz short loc_12ECF
|
||||||
|
@ -14915,7 +14916,7 @@ loc_12F29:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_12F2E:
|
loc_12F2E:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_12F55
|
jnz short loc_12F55
|
||||||
mov ax, _boss_pos.cur.x
|
mov ax, _boss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -14962,7 +14963,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, -32
|
add ax, -32
|
||||||
mov si, ax
|
mov si, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb loc_1306D
|
jnb loc_1306D
|
||||||
cmp byte ptr word_237F8, 0
|
cmp byte ptr word_237F8, 0
|
||||||
jz short loc_12FE7
|
jz short loc_12FE7
|
||||||
|
@ -15070,7 +15071,7 @@ loc_13066:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1306D:
|
loc_1306D:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_13083
|
jnz short loc_13083
|
||||||
push di
|
push di
|
||||||
push si
|
push si
|
||||||
|
@ -16148,7 +16149,7 @@ loc_142A2:
|
||||||
call sub_19F6E
|
call sub_19F6E
|
||||||
|
|
||||||
loc_142AC:
|
loc_142AC:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
mov _midboss_pos.velocity.y, 0
|
mov _midboss_pos.velocity.y, 0
|
||||||
|
@ -16528,7 +16529,7 @@ loc_14629:
|
||||||
sub dx, ax
|
sub dx, ax
|
||||||
push dx
|
push dx
|
||||||
call sub_19F6E
|
call sub_19F6E
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
mov _midboss_pos.velocity.x, 0
|
mov _midboss_pos.velocity.x, 0
|
||||||
|
@ -18063,7 +18064,7 @@ loc_153D2:
|
||||||
jl short loc_153EE
|
jl short loc_153EE
|
||||||
|
|
||||||
loc_153E9:
|
loc_153E9:
|
||||||
mov _midboss_phase, 0FFh
|
mov _midboss_phase, PHASE_NONE
|
||||||
|
|
||||||
loc_153EE:
|
loc_153EE:
|
||||||
push 1800180h
|
push 1800180h
|
||||||
|
@ -18093,7 +18094,7 @@ loc_15414:
|
||||||
push dx
|
push dx
|
||||||
call sub_19F6E
|
call sub_19F6E
|
||||||
mov word_255C2, 0Ch
|
mov word_255C2, 0Ch
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
mov _midboss_pos.velocity.x, 0
|
mov _midboss_pos.velocity.x, 0
|
||||||
|
@ -18118,7 +18119,7 @@ loc_1548A:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_15490:
|
loc_15490:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_154D1
|
jnz short loc_154D1
|
||||||
mov _midboss_pos.velocity.x, 0
|
mov _midboss_pos.velocity.x, 0
|
||||||
mov _midboss_pos.velocity.y, 0
|
mov _midboss_pos.velocity.y, 0
|
||||||
|
@ -20409,7 +20410,7 @@ loc_16963:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_169B8
|
jnz short loc_169B8
|
||||||
call boss_explode_big pascal, 2
|
call boss_explode_big pascal, 2
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -22635,7 +22636,7 @@ loc_17C54:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_17CA4
|
jnz short loc_17CA4
|
||||||
call boss_explode_big pascal, 2
|
call boss_explode_big pascal, 2
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -24233,7 +24234,7 @@ loc_1895A:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_189A1
|
jnz short loc_189A1
|
||||||
call boss_explode_big pascal, 2
|
call boss_explode_big pascal, 2
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -25617,7 +25618,7 @@ loc_1955E:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_195A9
|
jnz short loc_195A9
|
||||||
call boss_explode_big pascal, 0
|
call boss_explode_big pascal, 0
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -26567,7 +26568,7 @@ loc_19E3D:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_19E8D
|
jnz short loc_19E8D
|
||||||
call boss_explode_big pascal, 0
|
call boss_explode_big pascal, 0
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -26855,7 +26856,7 @@ sub_19FD8 endp
|
||||||
sub_1A047 proc near
|
sub_1A047 proc near
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_1A081
|
jnz short loc_1A081
|
||||||
cmp _midboss_phase_frame, 0
|
cmp _midboss_phase_frame, 0
|
||||||
jnz short loc_1A05E
|
jnz short loc_1A05E
|
||||||
|
@ -26872,7 +26873,7 @@ loc_1A05E:
|
||||||
inc _midboss_sprite
|
inc _midboss_sprite
|
||||||
cmp _midboss_sprite, 12
|
cmp _midboss_sprite, 12
|
||||||
jb short loc_1A085
|
jb short loc_1A085
|
||||||
mov _midboss_phase, 0FFh
|
mov _midboss_phase, PHASE_NONE
|
||||||
pop bp
|
pop bp
|
||||||
retn
|
retn
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
@ -29886,7 +29887,7 @@ loc_1B8A4:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_1B8EA
|
jnz short loc_1B8EA
|
||||||
call boss_explode_big pascal, 2
|
call boss_explode_big pascal, 2
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -31409,7 +31410,7 @@ loc_1C62F:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_1C67A
|
jnz short loc_1C67A
|
||||||
call boss_explode_big pascal, 3
|
call boss_explode_big pascal, 3
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -35164,7 +35165,7 @@ sub_1E6F3 endp
|
||||||
sub_1E743 proc near
|
sub_1E743 proc near
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_1E7B5
|
jnz short loc_1E7B5
|
||||||
cmp _boss_phase_frame, 12
|
cmp _boss_phase_frame, 12
|
||||||
jge short loc_1E778
|
jge short loc_1E778
|
||||||
|
@ -37090,7 +37091,7 @@ loc_1F855:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_1F8A5
|
jnz short loc_1F8A5
|
||||||
call boss_explode_big pascal, 2
|
call boss_explode_big pascal, 2
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
@ -38752,7 +38753,7 @@ loc_2066F:
|
||||||
cmp _boss_phase_frame, 32
|
cmp _boss_phase_frame, 32
|
||||||
jnz short loc_206B6
|
jnz short loc_206B6
|
||||||
call boss_explode_big pascal, 3
|
call boss_explode_big pascal, 3
|
||||||
mov _boss_phase, 0FEh
|
mov _boss_phase, PHASE_EXPLODE_BIG
|
||||||
mov al, _boss_mode_change
|
mov al, _boss_mode_change
|
||||||
mov _bullet_clear_trigger, al
|
mov _bullet_clear_trigger, al
|
||||||
cmp _boss_mode_change, 0
|
cmp _boss_mode_change, 0
|
||||||
|
|
113
th05_main.asm
113
th05_main.asm
|
@ -21,6 +21,7 @@
|
||||||
|
|
||||||
include ReC98.inc
|
include ReC98.inc
|
||||||
include th05/th05.inc
|
include th05/th05.inc
|
||||||
|
include th04/phase.inc
|
||||||
|
|
||||||
extern _execl:proc
|
extern _execl:proc
|
||||||
extern _strlen:proc
|
extern _strlen:proc
|
||||||
|
@ -3978,7 +3979,7 @@ include th04/hardware/grcg_fill_rows.asm
|
||||||
sub_D032 proc near
|
sub_D032 proc near
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_D04F
|
jnb short loc_D04F
|
||||||
mov _tile_invalidate_box.x, 64
|
mov _tile_invalidate_box.x, 64
|
||||||
mov _tile_invalidate_box.y, 64
|
mov _tile_invalidate_box.y, 64
|
||||||
|
@ -4032,7 +4033,7 @@ loc_D09F:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D0C8:
|
loc_D0C8:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_D0DC
|
jnb short loc_D0DC
|
||||||
call boss_backdrop_render pascal, (64 shl 16) or 16, 0
|
call boss_backdrop_render pascal, (64 shl 16) or 16, 0
|
||||||
pop bp
|
pop bp
|
||||||
|
@ -4040,7 +4041,7 @@ loc_D0C8:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D0DC:
|
loc_D0DC:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_D0EA
|
jz short loc_D0EA
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_D0EF
|
jg short loc_D0EF
|
||||||
|
@ -4108,14 +4109,14 @@ loc_D142:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D153:
|
loc_D153:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_D167
|
jnb short loc_D167
|
||||||
call boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
call boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
||||||
jmp short loc_D17D
|
jmp short loc_D17D
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D167:
|
loc_D167:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_D175
|
jz short loc_D175
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_D17A
|
jg short loc_D17A
|
||||||
|
@ -4185,14 +4186,14 @@ loc_D1CE:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D1DF:
|
loc_D1DF:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_D1F3
|
jnb short loc_D1F3
|
||||||
call boss_backdrop_render pascal, (32 shl 16) or 221, 1
|
call boss_backdrop_render pascal, (32 shl 16) or 221, 1
|
||||||
jmp short loc_D209
|
jmp short loc_D209
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D1F3:
|
loc_D1F3:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_D201
|
jz short loc_D201
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_D206
|
jg short loc_D206
|
||||||
|
@ -4266,7 +4267,7 @@ loc_D25C:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D272:
|
loc_D272:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_D286
|
jnb short loc_D286
|
||||||
call boss_backdrop_render pascal, (96 shl 16) or 72, 1
|
call boss_backdrop_render pascal, (96 shl 16) or 72, 1
|
||||||
leave
|
leave
|
||||||
|
@ -4274,7 +4275,7 @@ loc_D272:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D286:
|
loc_D286:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_D294
|
jz short loc_D294
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_D299
|
jg short loc_D299
|
||||||
|
@ -4340,7 +4341,7 @@ loc_D2E5:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D2FB:
|
loc_D2FB:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_D30F
|
jnb short loc_D30F
|
||||||
call boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
call boss_backdrop_render pascal, (32 shl 16) or 16, 1
|
||||||
leave
|
leave
|
||||||
|
@ -4348,7 +4349,7 @@ loc_D2FB:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D30F:
|
loc_D30F:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_D31D
|
jz short loc_D31D
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_D322
|
jg short loc_D322
|
||||||
|
@ -5656,7 +5657,7 @@ loc_DCEF:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_DD1B:
|
loc_DD1B:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_DD2A
|
jnb short loc_DD2A
|
||||||
call sub_E92E
|
call sub_E92E
|
||||||
call sub_DBFF
|
call sub_DBFF
|
||||||
|
@ -5665,7 +5666,7 @@ loc_DD1B:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_DD2A:
|
loc_DD2A:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jz short loc_DD38
|
jz short loc_DD38
|
||||||
cmp _boss_phase_frame, 2
|
cmp _boss_phase_frame, 2
|
||||||
jg short loc_DD3D
|
jg short loc_DD3D
|
||||||
|
@ -9721,7 +9722,7 @@ var_2 = word ptr -2
|
||||||
enter 2, 0
|
enter 2, 0
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb loc_108F6
|
jnb loc_108F6
|
||||||
mov ax, _midboss_pos.cur.x
|
mov ax, _midboss_pos.cur.x
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
|
@ -9788,7 +9789,7 @@ loc_108C2:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_108F6:
|
loc_108F6:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_10900
|
jnz short loc_10900
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -9819,7 +9820,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_10934
|
jnz short loc_10934
|
||||||
push di
|
push di
|
||||||
push ax
|
push ax
|
||||||
|
@ -9905,7 +9906,7 @@ var_2 = word ptr -2
|
||||||
enter 2, 0
|
enter 2, 0
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_10A1C
|
jnb short loc_10A1C
|
||||||
cmp _midboss_pos.cur.y, 0
|
cmp _midboss_pos.cur.y, 0
|
||||||
jl short loc_10A26
|
jl short loc_10A26
|
||||||
|
@ -9953,7 +9954,7 @@ loc_10A05:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_10A1C:
|
loc_10A1C:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_10A26
|
jnz short loc_10A26
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -9984,7 +9985,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_10A59
|
jnz short loc_10A59
|
||||||
push si
|
push si
|
||||||
push ax
|
push ax
|
||||||
|
@ -10044,7 +10045,7 @@ var_2 = word ptr -2
|
||||||
enter 2, 0
|
enter 2, 0
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_10B0F
|
jnb short loc_10B0F
|
||||||
cmp _midboss_pos.cur.y, 0
|
cmp _midboss_pos.cur.y, 0
|
||||||
jl short loc_10B19
|
jl short loc_10B19
|
||||||
|
@ -10088,7 +10089,7 @@ loc_10AF8:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_10B0F:
|
loc_10B0F:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_10B19
|
jnz short loc_10B19
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -10278,7 +10279,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_10CCA
|
jnz short loc_10CCA
|
||||||
push di
|
push di
|
||||||
push ax
|
push ax
|
||||||
|
@ -10421,7 +10422,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_4], ax
|
mov [bp+var_4], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_10DDA
|
jnz short loc_10DDA
|
||||||
cmp _boss2_mode_change, 0
|
cmp _boss2_mode_change, 0
|
||||||
jnz short loc_10DBC
|
jnz short loc_10DBC
|
||||||
|
@ -10451,7 +10452,7 @@ loc_10DBC:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_10DDA:
|
loc_10DDA:
|
||||||
cmp _boss_phase, 0FDh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jbe short loc_10DE8
|
jbe short loc_10DE8
|
||||||
cmp _boss2_mode_change, 0
|
cmp _boss2_mode_change, 0
|
||||||
jz short loc_10DF9
|
jz short loc_10DF9
|
||||||
|
@ -10468,7 +10469,7 @@ loc_10DE8:
|
||||||
call sub_10D26
|
call sub_10D26
|
||||||
|
|
||||||
loc_10DF9:
|
loc_10DF9:
|
||||||
cmp _boss_phase, 0FDh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jbe short loc_10E07
|
jbe short loc_10E07
|
||||||
cmp _boss2_mode_change, 0
|
cmp _boss2_mode_change, 0
|
||||||
jnz short loc_10E1F
|
jnz short loc_10E1F
|
||||||
|
@ -10511,7 +10512,7 @@ var_2 = word ptr -2
|
||||||
enter 2, 0
|
enter 2, 0
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_10EA4
|
jnb short loc_10EA4
|
||||||
cmp _midboss_pos.cur.y, 0
|
cmp _midboss_pos.cur.y, 0
|
||||||
jl short loc_10EAE
|
jl short loc_10EAE
|
||||||
|
@ -10552,7 +10553,7 @@ loc_10E8D:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_10EA4:
|
loc_10EA4:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_10EAE
|
jnz short loc_10EAE
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -10641,7 +10642,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_10F42
|
jnz short loc_10F42
|
||||||
push di
|
push di
|
||||||
push ax
|
push ax
|
||||||
|
@ -10760,7 +10761,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov di, ax
|
mov di, ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_11001
|
jnz short loc_11001
|
||||||
push si
|
push si
|
||||||
push ax
|
push ax
|
||||||
|
@ -10911,7 +10912,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_11114
|
jnz short loc_11114
|
||||||
push si
|
push si
|
||||||
push ax
|
push ax
|
||||||
|
@ -11253,7 +11254,7 @@ var_2 = word ptr -2
|
||||||
push di
|
push di
|
||||||
cmp _boss_phase, 1
|
cmp _boss_phase, 1
|
||||||
jbe short loc_113B9
|
jbe short loc_113B9
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jb loc_1162C
|
jb loc_1162C
|
||||||
|
|
||||||
loc_113B9:
|
loc_113B9:
|
||||||
|
@ -11532,7 +11533,7 @@ midbossx_render proc near
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_11687
|
jnb short loc_11687
|
||||||
cmp _midboss_pos.cur.y, 0
|
cmp _midboss_pos.cur.y, 0
|
||||||
jl short loc_11691
|
jl short loc_11691
|
||||||
|
@ -11567,7 +11568,7 @@ loc_1166D:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_11687:
|
loc_11687:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_11691
|
jnz short loc_11691
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -11760,7 +11761,7 @@ var_2 = word ptr -2
|
||||||
sar ax, 4
|
sar ax, 4
|
||||||
add ax, (-1 shl 4)
|
add ax, (-1 shl 4)
|
||||||
mov [bp+var_2], ax
|
mov [bp+var_2], ax
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_117F9
|
jnz short loc_117F9
|
||||||
push di
|
push di
|
||||||
push ax
|
push ax
|
||||||
|
@ -11835,7 +11836,7 @@ midboss5_render proc near
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
push si
|
push si
|
||||||
push di
|
push di
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnb short loc_118C3
|
jnb short loc_118C3
|
||||||
cmp _midboss_pos.cur.y, 0
|
cmp _midboss_pos.cur.y, 0
|
||||||
jl short loc_118CD
|
jl short loc_118CD
|
||||||
|
@ -11870,7 +11871,7 @@ loc_118A9:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_118C3:
|
loc_118C3:
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_118CD
|
jnz short loc_118CD
|
||||||
call sub_F7EC
|
call sub_F7EC
|
||||||
|
|
||||||
|
@ -18324,7 +18325,7 @@ sub_17416 endp
|
||||||
sub_17486 proc near
|
sub_17486 proc near
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp _midboss_phase, 0FEh
|
cmp _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
jnz short loc_174C1
|
jnz short loc_174C1
|
||||||
cmp _midboss_phase_frame, 1
|
cmp _midboss_phase_frame, 1
|
||||||
jnz short loc_174A2
|
jnz short loc_174A2
|
||||||
|
@ -18341,7 +18342,7 @@ loc_174A2:
|
||||||
inc _midboss_sprite
|
inc _midboss_sprite
|
||||||
cmp _midboss_sprite, 12
|
cmp _midboss_sprite, 12
|
||||||
jb short loc_174C5
|
jb short loc_174C5
|
||||||
mov _midboss_phase, 0FFh
|
mov _midboss_phase, PHASE_NONE
|
||||||
pop bp
|
pop bp
|
||||||
retn
|
retn
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
@ -19621,7 +19622,7 @@ loc_1812B:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BIGPOWER
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BIGPOWER
|
||||||
|
|
||||||
loc_1818B:
|
loc_1818B:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -20426,7 +20427,7 @@ loc_188D2:
|
||||||
call lasers_stop_in_slot pascal, 0
|
call lasers_stop_in_slot pascal, 0
|
||||||
call lasers_stop_in_slot pascal, 1
|
call lasers_stop_in_slot pascal, 1
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jmp short loc_188EE
|
jmp short loc_188EE
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -20682,7 +20683,7 @@ loc_18B24:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BOMB
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BOMB
|
||||||
|
|
||||||
loc_18B67:
|
loc_18B67:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -21514,7 +21515,7 @@ loc_19245:
|
||||||
|
|
||||||
loc_19251:
|
loc_19251:
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jmp short loc_19263
|
jmp short loc_19263
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -21918,7 +21919,7 @@ loc_195BC:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
||||||
|
|
||||||
loc_195DA:
|
loc_195DA:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -23386,7 +23387,7 @@ loc_1A35E:
|
||||||
|
|
||||||
loc_1A396:
|
loc_1A396:
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
mov byte_2BC70, 2
|
mov byte_2BC70, 2
|
||||||
mov byte_2BC8A, 2
|
mov byte_2BC8A, 2
|
||||||
jmp short loc_1A3B2
|
jmp short loc_1A3B2
|
||||||
|
@ -23402,7 +23403,7 @@ loc_1A3B2:
|
||||||
call sub_17354
|
call sub_17354
|
||||||
cmp _boss_phase, 3
|
cmp _boss_phase, 3
|
||||||
jb short loc_1A3CD
|
jb short loc_1A3CD
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnb short loc_1A3CD
|
jnb short loc_1A3CD
|
||||||
call sub_196D3
|
call sub_196D3
|
||||||
|
|
||||||
|
@ -24696,7 +24697,7 @@ loc_1AE2C:
|
||||||
mov al, byte ptr [bp+var_2]
|
mov al, byte ptr [bp+var_2]
|
||||||
add al, 0FFh
|
add al, 0FFh
|
||||||
mov _boss2_mode_change, al
|
mov _boss2_mode_change, al
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
cmp _lasers[0 * size laser_t].mode, LM_NONE
|
cmp _lasers[0 * size laser_t].mode, LM_NONE
|
||||||
jz loc_1AFA7 ; default
|
jz loc_1AFA7 ; default
|
||||||
|
@ -25263,7 +25264,7 @@ loc_1B34A:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BOMB
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_BOMB
|
||||||
|
|
||||||
loc_1B368:
|
loc_1B368:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -26324,7 +26325,7 @@ loc_1BCDB:
|
||||||
loc_1BCE7:
|
loc_1BCE7:
|
||||||
call boss_explode_small pascal, 4
|
call boss_explode_small pascal, 4
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
call sub_1B3C2
|
call sub_1B3C2
|
||||||
mov _boss_custombullets_render, offset nullfunc_near
|
mov _boss_custombullets_render, offset nullfunc_near
|
||||||
jmp short loc_1BD09
|
jmp short loc_1BD09
|
||||||
|
@ -27531,7 +27532,7 @@ loc_1C7D7:
|
||||||
loc_1C7E3:
|
loc_1C7E3:
|
||||||
call boss_explode_small pascal, 4
|
call boss_explode_small pascal, 4
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
call sub_1B3C2
|
call sub_1B3C2
|
||||||
mov _boss_custombullets_render, offset nullfunc_near
|
mov _boss_custombullets_render, offset nullfunc_near
|
||||||
jmp short loc_1C805
|
jmp short loc_1C805
|
||||||
|
@ -28874,7 +28875,7 @@ loc_1D4DD:
|
||||||
loc_1D4F4:
|
loc_1D4F4:
|
||||||
call boss_explode_small pascal, 4
|
call boss_explode_small pascal, 4
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
mov _boss_custombullets_render, offset nullfunc_near
|
mov _boss_custombullets_render, offset nullfunc_near
|
||||||
jmp short loc_1D513
|
jmp short loc_1D513
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
@ -30560,7 +30561,7 @@ loc_1E4F9:
|
||||||
loc_1E510:
|
loc_1E510:
|
||||||
call boss_explode_small pascal, 4
|
call boss_explode_small pascal, 4
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jmp short loc_1E527
|
jmp short loc_1E527
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -30953,7 +30954,7 @@ loc_1E7F2:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
||||||
|
|
||||||
loc_1E82B:
|
loc_1E82B:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -32544,7 +32545,7 @@ loc_1F626:
|
||||||
loc_1F643:
|
loc_1F643:
|
||||||
call boss_explode_small pascal, 4
|
call boss_explode_small pascal, 4
|
||||||
mov _boss_phase_frame, 0
|
mov _boss_phase_frame, 0
|
||||||
mov _boss_phase, 0FDh
|
mov _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
mov _boss_custombullets_render, offset nullfunc_near
|
mov _boss_custombullets_render, offset nullfunc_near
|
||||||
mov byte_226C0, 0
|
mov byte_226C0, 0
|
||||||
jmp short loc_1F666
|
jmp short loc_1F666
|
||||||
|
@ -32915,7 +32916,7 @@ loc_1F936:
|
||||||
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
call items_add pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, IT_1UP
|
||||||
|
|
||||||
loc_1F968:
|
loc_1F968:
|
||||||
mov _midboss_phase, 0FEh
|
mov _midboss_phase, PHASE_EXPLODE_BIG
|
||||||
mov _midboss_sprite, 4
|
mov _midboss_sprite, 4
|
||||||
mov _midboss_phase_frame, 0
|
mov _midboss_phase_frame, 0
|
||||||
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
call sparks_add_circle pascal, _midboss_pos.cur.x, _midboss_pos.cur.y, large (((8 shl 4) shl 16) or 48)
|
||||||
|
@ -33215,7 +33216,7 @@ n1000 = word ptr 4
|
||||||
push bp
|
push bp
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
push si
|
push si
|
||||||
cmp _boss_phase, 0FDh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_SMALL
|
||||||
jnz short loc_1FC23
|
jnz short loc_1FC23
|
||||||
cmp _boss_phase_frame, 1
|
cmp _boss_phase_frame, 1
|
||||||
jnz short loc_1FBE1
|
jnz short loc_1FBE1
|
||||||
|
@ -33248,7 +33249,7 @@ loc_1FC10:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1FC23:
|
loc_1FC23:
|
||||||
cmp _boss_phase, 0FEh
|
cmp _boss_phase, PHASE_BOSS_EXPLODE_BIG
|
||||||
jnz short loc_1FC95
|
jnz short loc_1FC95
|
||||||
cmp _boss_phase_frame, 12
|
cmp _boss_phase_frame, 12
|
||||||
jge short loc_1FC55
|
jge short loc_1FC55
|
||||||
|
|
Loading…
Reference in New Issue