[Reverse-engineering] [th02/th04/th05] Boss-related function pointers

No idea what these other ones in TH02 are.

Funded by zorg.
This commit is contained in:
nmlgc 2018-12-18 19:52:41 +01:00
parent 0cde4b7cd3
commit b62a8b29a6
5 changed files with 157 additions and 145 deletions

11
th02/boss_funcs[bss].asm Normal file
View File

@ -0,0 +1,11 @@
; *_func() functions are "activated" by setting the regular function once the
; boss battle starts.
public _boss_bg_render
public _boss_update, _boss_update_func
public _boss_init, _boss_end
_boss_bg_render dd ?
_boss_update dd ?
_boss_update_func dd ?
_boss_init dd ?
_boss_end dd ?

View File

@ -2352,8 +2352,8 @@ loc_B4D7:
call sub_1C608
call sub_1C3DF
call sub_12C72
setfarfp farfp_1F478, sub_BF90
setfarfp farfp_1F47C, sub_BF95
setfarfp _boss_bg_render, sub_BF90
setfarfp _boss_update, sub_BF95
setfarfp farfp_1F490, sub_BF90
setfarfp farfp_1F4A0, sub_BF90
setfarfp farfp_23A72, sub_BF90
@ -2378,10 +2378,10 @@ loc_B63C:
mov word_20616, 74h ; 't'
setfarfp farfp_1F474, sub_13786
setfarfp farfp_1F470, sub_13909
setfarfp farfp_1F484, sub_13ADE
setfarfp farfp_1F488, sub_13B8B
setfarfp farfp_1F49C, sub_13BB5
setfarfp farfp_1F480, sub_13FE5
setfarfp _boss_init, sub_13ADE
setfarfp _boss_end, sub_13B8B
setfarfp _boss_bg_render_func, sub_13BB5
setfarfp _boss_update_func, sub_13FE5
setfarfp farfp_1F490, sub_13671
jmp short loc_B6F2
; ---------------------------------------------------------------------------
@ -2390,10 +2390,10 @@ loc_B698:
mov word_20616, 50h ; 'P'
setfarfp farfp_1F474, sub_1410A
setfarfp farfp_1F470, sub_1424A
setfarfp farfp_1F484, sub_1523C
setfarfp farfp_1F488, sub_15218
setfarfp farfp_1F49C, sub_143E5
setfarfp farfp_1F480, sub_150F4
setfarfp _boss_init, sub_1523C
setfarfp _boss_end, sub_15218
setfarfp _boss_bg_render_func, sub_143E5
setfarfp _boss_update_func, sub_150F4
setfarfp farfp_1F490, sub_140AE
loc_B6F2:
@ -2405,10 +2405,10 @@ loc_B701:
mov word_20616, 67h ; 'g'
setfarfp farfp_1F474, sub_110B7
setfarfp farfp_1F470, sub_114D6
setfarfp farfp_1F484, sub_12754
setfarfp farfp_1F488, sub_1273B
setfarfp farfp_1F49C, sub_116AD
setfarfp farfp_1F480, sub_123A9
setfarfp _boss_init, sub_12754
setfarfp _boss_end, sub_1273B
setfarfp _boss_bg_render_func, sub_116AD
setfarfp _boss_update_func, sub_123A9
setfarfp farfp_1F490, sub_10E95
setfarfp farfp_1F4A0, sub_10E4F
jmp loc_B88A
@ -2418,10 +2418,10 @@ loc_B76A:
mov word_20616, 3B0h
setfarfp farfp_1F474, sub_19EF3
setfarfp farfp_1F470, sub_1A1FF
setfarfp farfp_1F484, sub_1A7D5
setfarfp farfp_1F488, sub_1C270
setfarfp farfp_1F49C, sub_1C16A
setfarfp farfp_1F480, sub_1BEF2
setfarfp _boss_init, sub_1A7D5
setfarfp _boss_end, sub_1C270
setfarfp _boss_bg_render_func, sub_1C16A
setfarfp _boss_update_func, sub_1BEF2
cmp byte_2066C, 0
jnz short loc_B7CB
setfarfp farfp_1F490, sub_19E2F
@ -2437,10 +2437,10 @@ loc_B7DD:
mov word_20616, 0FFFFh
setfarfp farfp_1F474, sub_BF95
setfarfp farfp_1F470, sub_BF90
setfarfp farfp_1F484, sub_199B3
setfarfp farfp_1F488, sub_19D96
setfarfp farfp_1F49C, sub_17B75
setfarfp farfp_1F480, sub_19456
setfarfp _boss_init, sub_199B3
setfarfp _boss_end, sub_19D96
setfarfp _boss_bg_render_func, sub_17B75
setfarfp _boss_update_func, sub_19456
mov byte_1E500, 1
jmp short loc_B88A
; ---------------------------------------------------------------------------
@ -2449,10 +2449,10 @@ loc_B832:
mov word_20616, 0C8h
setfarfp farfp_1F474, sub_15402
setfarfp farfp_1F470, sub_1540C
setfarfp farfp_1F484, sub_1696B
setfarfp farfp_1F488, sub_16A21
setfarfp farfp_1F49C, sub_159AF
setfarfp farfp_1F480, sub_16744
setfarfp _boss_init, sub_1696B
setfarfp _boss_end, sub_16A21
setfarfp _boss_bg_render_func, sub_159AF
setfarfp _boss_update_func, sub_16744
call sub_129FC
mov byte_1E500, 2
@ -2824,7 +2824,7 @@ loc_BCC3:
mov bx, ax
mov ax, ss:[bx]
mov word_20344, ax
call farfp_1F478
call _boss_bg_render
cmp byte_2061A, 0
jz short loc_BCF9
call farfp_1F474
@ -2914,7 +2914,7 @@ loc_BDCC:
call sub_F1D8
call sub_ECAC
call farfp_26C40
call farfp_1F47C
call _boss_update
mov byte_1F466, al
cmp byte_2061A, 0
jz short loc_BDE8
@ -3145,7 +3145,7 @@ sub_BF9C proc far
call far ptr palette_show
loc_BFC3:
call farfp_1F488
call _boss_end
mov ax, 1
pop bp
retf
@ -3187,14 +3187,14 @@ loc_BFF8:
call far ptr palette_show
loc_C015:
call farfp_1F484
call _boss_init
call sub_17A55
call sub_16A8A
setfarfp farfp_1F494, sub_BF90
mov eax, farfp_1F49C
mov farfp_1F478, eax
mov eax, farfp_1F480
mov farfp_1F47C, eax
mov eax, _boss_bg_render_func
mov _boss_bg_render, eax
mov eax, _boss_update_func
mov _boss_update, eax
setfarfp farfp_1F48C, sub_BF9C
mov byte_20343, 0FFh
mov bgm_show_timer, 1
@ -36669,16 +36669,12 @@ byte_1F46E db ?
db ?
farfp_1F470 dd ?
farfp_1F474 dd ?
farfp_1F478 dd ?
farfp_1F47C dd ?
farfp_1F480 dd ?
farfp_1F484 dd ?
farfp_1F488 dd ?
include th02/boss_funcs[bss].asm
farfp_1F48C dd ?
farfp_1F490 dd ?
farfp_1F494 dd ?
farfp_1F498 dd ?
farfp_1F49C dd ?
_boss_bg_render_func dd ?
farfp_1F4A0 dd ?
farfp_1F4A4 dd ?
dword_1F4A8 dd ?

14
th04/boss_funcs[bss].asm Normal file
View File

@ -0,0 +1,14 @@
; *_func() functions are "activated" by setting the regular function once the
; boss battle starts.
public _boss_update, _boss_update_func
public _boss_bg_render_func, _boss_fg_render, _boss_fg_render_func
_boss_update dd ?
_boss_fg_render dw ?
if GAME eq 5
public _boss_custombullets_render
_boss_custombullets_render dw ?
endif
_boss_bg_render_func dw ?
_boss_update_func dd ?
_boss_fg_render_func dw ?

View File

@ -360,7 +360,7 @@ loc_ABBA:
call farfp_25986
cmp byte_256A8, 0
jnz short loc_ABD4
call fp_255A8
call _boss_bg_render
jmp short loc_ABD8
; ---------------------------------------------------------------------------
@ -376,12 +376,12 @@ loc_ABD8:
call sub_1C8C8
call sub_17E59
call farfp_259F6
call farfp_2D010
call _boss_update
call sub_1DE5D
call sub_13BCE
call fp_2566C
call sub_1020A
call fp_2D014
call _boss_fg_render
call fp_259FA
call sub_10713
call sub_10552
@ -4263,7 +4263,7 @@ sub_CB80 proc near
dec byte_255B0
cmp byte_255B0, 0
jnz short loc_CB97
mov fp_255A8, offset sub_CB58
mov _boss_bg_render, offset sub_CB58
loc_CB97:
pop bp
@ -4278,7 +4278,7 @@ sub_CB80 endp
sub_CB99 proc far
push bp
mov bp, sp
mov fp_255A8, offset sub_CB58
mov _boss_bg_render, offset sub_CB58
pop bp
retf
sub_CB99 endp
@ -4296,7 +4296,7 @@ arg_0 = byte ptr 6
mov bp, sp
mov al, [bp+arg_0]
mov byte_255B0, al
mov fp_255A8, offset sub_CB80
mov _boss_bg_render, offset sub_CB80
pop bp
retf 2
sub_CBA4 endp
@ -4809,12 +4809,12 @@ loc_CF63:
loc_CF70:
nopcall sub_D6EB
mov fp_255CA, offset sub_CF3D
mov ax, fp_2D016
mov fp_255A8, ax
mov eax, farfp_2D018
mov farfp_2D010, eax
mov ax, fp_2D01C
mov fp_2D014, ax
mov ax, _boss_bg_render_func
mov _boss_bg_render, ax
mov eax, _boss_update_func
mov _boss_update, eax
mov ax, _boss_fg_render_func
mov _boss_fg_render, ax
mov al, stage_id
add al, al
add al, 2
@ -37598,8 +37598,8 @@ sub_1DE5D endp
sub_1DF61 proc near
push bp
mov bp, sp
setfarfp farfp_2D010, nullsub_2
mov fp_2D014, offset nullsub_1
setfarfp _boss_update, nullsub_2
mov _boss_fg_render, offset nullsub_1
mov byte_26719, 0
mov byte_2671D, 0
mov byte_2671F, 0
@ -37679,9 +37679,9 @@ sub_1DFEF proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (40 shl 4)
mov _boss_pos.prev.y, (40 shl 4)
mov fp_2D016, offset sub_1217E
setfarfp farfp_2D018, sub_19AA3
mov fp_2D01C, offset sub_1196B
mov _boss_bg_render_func, offset sub_1217E
setfarfp _boss_update_func, sub_19AA3
mov _boss_fg_render_func, offset sub_1196B
mov _boss_sprite_cur, 128
mov word_2D030, 180h
mov word_2D032, 100h
@ -37725,9 +37725,9 @@ sub_1E0B3 proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (81 shl 4)
mov _boss_pos.prev.y, (81 shl 4)
mov fp_2D016, offset sub_121EB
setfarfp farfp_2D018, sub_1915D
mov fp_2D01C, offset sub_11793
mov _boss_bg_render_func, offset sub_121EB
setfarfp _boss_update_func, sub_1915D
mov _boss_fg_render_func, offset sub_11793
mov _boss_sprite_cur, 0
mov word_2D030, 180h
mov word_2D032, 180h
@ -37773,9 +37773,9 @@ sub_1E186 proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D016, offset sub_1226F
setfarfp farfp_2D018, sub_1C2E5
mov fp_2D01C, offset sub_11E12
mov _boss_bg_render_func, offset sub_1226F
setfarfp _boss_update_func, sub_1C2E5
mov _boss_fg_render_func, offset sub_11E12
mov _boss_sprite_cur, 134
mov word_2D030, 180h
mov word_2D032, 180h
@ -37817,11 +37817,11 @@ sub_1E245 proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D016, offset sub_122D7
mov _boss_bg_render_func, offset sub_122D7
cmp playchar, 1
jnz loc_1E359
setfarfp farfp_2D018, sub_1F3AB
mov fp_2D01C, offset sub_12E93
setfarfp _boss_update_func, sub_1F3AB
mov _boss_fg_render_func, offset sub_12E93
push 40006h
push 8000Ch
call sub_C396
@ -37854,8 +37854,8 @@ sub_1E245 proc far
; ---------------------------------------------------------------------------
loc_1E359:
setfarfp farfp_2D018, sub_179F4
mov fp_2D01C, offset sub_ED71
setfarfp _boss_update_func, sub_179F4
mov _boss_fg_render_func, offset sub_ED71
mov _boss_hp, 6000
loc_1E371:
@ -37907,9 +37907,9 @@ sub_1E3C2 proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D016, offset sub_12364
setfarfp farfp_2D018, sub_16610
mov fp_2D01C, offset sub_E8A3
mov _boss_bg_render_func, offset sub_12364
setfarfp _boss_update_func, sub_16610
mov _boss_fg_render_func, offset sub_E8A3
mov _boss_sprite_cur, 128
mov word_2D030, 1A0h
mov word_2D032, 1A0h
@ -37948,9 +37948,9 @@ sub_1E47C proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (80 shl 4)
mov _boss_pos.prev.y, (80 shl 4)
mov fp_2D016, offset sub_128B9
setfarfp farfp_2D018, sub_1B47E
mov fp_2D01C, offset sub_11C1A
mov _boss_bg_render_func, offset sub_128B9
setfarfp _boss_update_func, sub_1B47E
mov _boss_fg_render_func, offset sub_11C1A
mov _boss_sprite_cur, 128
mov word_2D030, 180h
mov word_2D032, 300h
@ -37996,9 +37996,9 @@ sub_1E518 proc far
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (80 shl 4)
mov _boss_pos.prev.y, (80 shl 4)
mov fp_2D016, offset sub_12979
setfarfp farfp_2D018, sub_186EB
mov fp_2D01C, offset sub_115B6
mov _boss_bg_render_func, offset sub_12979
setfarfp _boss_update_func, sub_186EB
mov _boss_fg_render_func, offset sub_115B6
mov _boss_sprite_cur, 128
mov word_2D030, 180h
mov word_2D032, 300h
@ -38331,9 +38331,9 @@ loc_1E801:
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (96 shl 4)
mov _boss_pos.prev.y, (96 shl 4)
mov fp_255A8, offset sub_12979
setfarfp farfp_2D010, sub_2026A
mov fp_2D014, offset sub_12F5F
mov _boss_bg_render, offset sub_12979
setfarfp _boss_update, sub_2026A
mov _boss_fg_render, offset sub_12F5F
mov _boss_sprite_cur, 128
mov word_2D030, 180h
mov word_2D032, 300h
@ -45599,7 +45599,7 @@ byte_2559A db ?
word_255A0 dw ?
word_255A2 dw ?
dword_255A4 dd ?
fp_255A8 dw ?
_boss_bg_render dw ?
fp_255AA dw ?
fp_255AC dw ?
dw ?
@ -53580,11 +53580,7 @@ byte_2D00A db ?
dream_score dw ?
byte_2D00E db ?
db ?
farfp_2D010 dd ?
fp_2D014 dw ?
fp_2D016 dw ?
farfp_2D018 dd ?
fp_2D01C dw ?
include th04/boss_funcs[bss].asm
byte_2D01E db ?
byte_2D01F db ?
byte_2D020 db ?

View File

@ -403,7 +403,7 @@ loc_AED7:
call farfp_2C926
cmp byte_2429A, 0
jnz short loc_AEEC
call fp_23F56
call _boss_bg_render
jmp short loc_AEF0
; ---------------------------------------------------------------------------
@ -420,7 +420,7 @@ loc_AEF0:
call sub_17C04
call sub_1607D
call farfp_2C990
call farfp_2D066
call _boss_update
call sub_1720E
call sub_16AB0
call fp_2CE50
@ -429,13 +429,13 @@ loc_AEF0:
call fp_2429C
loc_AF2D:
call fp_2D06A
call _boss_fg_render
call fp_2C994
call sub_EBB7
call sub_125A3
call sub_12263
call _grcg_setmode_rmw_1
call fp_2D06C
call _boss_custombullets_render
call lasers_render
call sub_16B4E
call sub_C202
@ -998,7 +998,7 @@ loc_B469:
push offset aSt04_bft_0 ; "st04.bft"
call super_entry_bfnt
call sub_14976
mov fp_23F56, offset sub_DA86
mov _boss_bg_render, offset sub_DA86
mov fp_23F5A, offset sub_DA86
jmp short loc_B4A9
; ---------------------------------------------------------------------------
@ -2274,7 +2274,7 @@ sub_BF0E proc near
dec byte_23F5E
cmp byte_23F5E, 0
jnz short loc_BF25
mov fp_23F56, offset sub_BEE6
mov _boss_bg_render, offset sub_BEE6
loc_BF25:
pop bp
@ -2289,7 +2289,7 @@ sub_BF0E endp
sub_BF27 proc far
push bp
mov bp, sp
mov fp_23F56, offset sub_BEE6
mov _boss_bg_render, offset sub_BEE6
pop bp
retf
sub_BF27 endp
@ -2307,7 +2307,7 @@ arg_0 = byte ptr 6
mov bp, sp
mov al, [bp+arg_0]
mov byte_23F5E, al
mov fp_23F56, offset sub_BF0E
mov _boss_bg_render, offset sub_BF0E
pop bp
retf 2
sub_BF32 endp
@ -8538,12 +8538,12 @@ sub_EE58 proc near
jnz short loc_EE92
nopcall sub_F2B4
mov fp_2C92E, offset sub_EE51
mov ax, fp_2D06E
mov fp_23F56, ax
mov eax, farfp_2D070
mov farfp_2D066, eax
mov ax, fp_2D074
mov fp_2D06A, ax
mov ax, _boss_bg_render_func
mov _boss_bg_render, ax
mov eax, _boss_update_func
mov _boss_update, eax
mov ax, _boss_fg_render_func
mov _boss_fg_render, ax
mov fp_2CE88, offset sub_11CBB
mov al, 1
pop bp
@ -19467,9 +19467,9 @@ stage_step_score_function endp
sub_144CB proc near
push bp
mov bp, sp
setfarfp farfp_2D066, nullsub_1
mov fp_2D06A, offset nullsub_2
mov fp_2D06C, offset nullsub_2
setfarfp _boss_update, nullsub_1
mov _boss_fg_render, offset nullsub_2
mov _boss_custombullets_render, offset nullsub_2
mov boss_phase, 0
mov byte_26349, 0
mov byte ptr word_2634A+1, 0
@ -19544,9 +19544,9 @@ sub_14544 proc near
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D06E, offset sub_D08C
setfarfp farfp_2D070, sub_186B6
mov fp_2D074, offset sub_10904
mov _boss_bg_render_func, offset sub_D08C
setfarfp _boss_update_func, sub_186B6
mov _boss_fg_render_func, offset sub_10904
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -19591,9 +19591,9 @@ sub_14613 proc near
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D06E, offset sub_D0F4
setfarfp farfp_2D070, sub_1903A
mov fp_2D074, offset sub_10A2A
mov _boss_bg_render_func, offset sub_D0F4
setfarfp _boss_update_func, sub_1903A
mov _boss_fg_render_func, offset sub_10A2A
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -19635,9 +19635,9 @@ sub_146D0 proc near
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D06E, offset sub_D180
setfarfp farfp_2D070, sub_1A044
mov fp_2D074, offset sub_10C9A
mov _boss_bg_render_func, offset sub_D180
setfarfp _boss_update_func, sub_1A044
mov _boss_fg_render_func, offset sub_10C9A
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -19686,9 +19686,9 @@ sub_1479F proc near
mov word_26352, 1200h
mov word ptr dword_2634E+2, 400h
mov word_26354, 400h
mov fp_2D06E, offset sub_D20C
setfarfp farfp_2D070, sub_1ABDA
mov fp_2D074, offset sub_10D71
mov _boss_bg_render_func, offset sub_D20C
setfarfp _boss_update_func, sub_1ABDA
mov _boss_fg_render_func, offset sub_10D71
mov _boss_sprite_cur, 180
mov byte_2635C, 0B4h
mov word_2D088, 180h
@ -19735,9 +19735,9 @@ sub_14879 proc near
mov word_26352, 0C00h
mov word ptr dword_2634E+2, 400h
mov word_26354, 400h
mov fp_2D06E, offset sub_D29E
setfarfp farfp_2D070, sub_1D26B
mov fp_2D074, offset sub_10FD2
mov _boss_bg_render_func, offset sub_D29E
setfarfp _boss_update_func, sub_1D26B
mov _boss_fg_render_func, offset sub_10FD2
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -19779,9 +19779,9 @@ sub_14976 proc near
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D06E, offset sub_DA86
setfarfp farfp_2D070, sub_1E197
mov fp_2D074, offset sub_110E4
mov _boss_bg_render_func, offset sub_DA86
setfarfp _boss_update_func, sub_1E197
mov _boss_fg_render_func, offset sub_110E4
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -19820,9 +19820,9 @@ sub_14A06 proc near
mov _boss_pos.prev.x, (192 shl 4)
mov _boss_pos.cur.y, (64 shl 4)
mov _boss_pos.prev.y, (64 shl 4)
mov fp_2D06E, offset sub_DCDB
setfarfp farfp_2D070, sub_1F289
mov fp_2D074, offset sub_117C9
mov _boss_bg_render_func, offset sub_DCDB
setfarfp _boss_update_func, sub_1F289
mov _boss_fg_render_func, offset sub_117C9
mov _boss_sprite_cur, 180
mov word_2D088, 180h
mov word_2D08A, 180h
@ -30827,7 +30827,7 @@ loc_1ACAB:
mov byte ptr word_2634A+1, 0
mov fp_2CE36, offset sub_1A5EB
mov fp_2CE38, offset sub_1A8C9
mov fp_2D06C, offset sub_FF79
mov _boss_custombullets_render, offset sub_FF79
jmp loc_1AFA7 ; default
; ---------------------------------------------------------------------------
@ -31096,7 +31096,7 @@ loc_1AF24:
mov word ptr dword_2CE9A, offset aTH05_10
mov eax, dword_2634E
mov _boss_pos.cur, eax
setfarfp farfp_2D066, sub_1B9F2
setfarfp _boss_update, sub_1B9F2
jmp short loc_1AF85
; ---------------------------------------------------------------------------
@ -31106,14 +31106,14 @@ loc_1AF66:
call sub_ED87
mov word ptr dword_2CE9A+2, ds
mov word ptr dword_2CE9A, offset aTH05_11
setfarfp farfp_2D066, sub_1C518
setfarfp _boss_update, sub_1C518
loc_1AF85:
call sub_F2B4
mov fp_2CE88, offset sub_11CBB
mov boss_phase, 0
mov boss_phase_frame, 0
mov fp_2D06A, offset sub_10F12
mov _boss_fg_render, offset sub_10F12
mov _boss_hp, 7900
loc_1AFA7:
@ -32381,7 +32381,7 @@ loc_1BA89:
mov _boss_sprite_cur, 204
inc boss_phase
mov boss_phase_frame, 0
mov fp_2D06C, offset sub_10EB2
mov _boss_custombullets_render, offset sub_10EB2
jmp loc_1BD09
; ---------------------------------------------------------------------------
@ -32616,7 +32616,7 @@ loc_1BCE7:
mov boss_phase_frame, 0
mov boss_phase, 0FDh
call sub_1B3C2
mov fp_2D06C, offset nullsub_2
mov _boss_custombullets_render, offset nullsub_2
jmp short loc_1BD09
; ---------------------------------------------------------------------------
@ -33588,7 +33588,7 @@ loc_1C5B4:
mov _boss_sprite_cur, 204
inc boss_phase
mov boss_phase_frame, 0
mov fp_2D06C, offset sub_10EB2
mov _boss_custombullets_render, offset sub_10EB2
jmp loc_1C805
; ---------------------------------------------------------------------------
@ -33825,7 +33825,7 @@ loc_1C7E3:
mov boss_phase_frame, 0
mov boss_phase, 0FDh
call sub_1B3C2
mov fp_2D06C, offset nullsub_2
mov _boss_custombullets_render, offset nullsub_2
jmp short loc_1C805
; ---------------------------------------------------------------------------
@ -35006,7 +35006,7 @@ loc_1D360:
mov byte_26349, 1
mov byte ptr word_2634A+1, 0
mov fp_2CE46, offset sub_1CA42
mov fp_2D06C, offset sub_10F90
mov _boss_custombullets_render, offset sub_10F90
jmp loc_1D513
; ---------------------------------------------------------------------------
@ -35169,7 +35169,7 @@ loc_1D4F4:
call add_explode_effect_function
mov boss_phase_frame, 0
mov boss_phase, 0FDh
mov fp_2D06C, offset nullsub_2
mov _boss_custombullets_render, offset nullsub_2
jmp short loc_1D513
; ---------------------------------------------------------------------------
@ -36679,7 +36679,7 @@ loc_1E333:
inc boss_phase
mov boss_phase_frame, 0
mov _boss_pos.velocity.y, 0
mov fp_2D06C, offset sub_11073
mov _boss_custombullets_render, offset sub_11073
push 3200230h
push 2D00320h
call sub_E752
@ -38558,7 +38558,7 @@ loc_1F374:
mov byte_26349, 1
mov byte ptr word_2634A+1, 0
mov boss_phase_frame, 0
mov fp_2D06C, offset sub_11695
mov _boss_custombullets_render, offset sub_11695
mov byte_2D085, 0
mov fp_2CE66, offset sub_1E922
mov byte_2D07F, 0
@ -38847,7 +38847,7 @@ loc_1F643:
call add_explode_effect_function
mov boss_phase_frame, 0
mov boss_phase, 0FDh
mov fp_2D06C, offset nullsub_2
mov _boss_custombullets_render, offset nullsub_2
mov byte_226C0, 0
jmp short loc_1F666
; ---------------------------------------------------------------------------
@ -39691,7 +39691,7 @@ loc_1FC55:
inc boss_phase
mov boss_phase_frame, 0
mov byte_2C96C, 1
mov fp_2D06A, offset nullsub_2
mov _boss_fg_render, offset nullsub_2
jmp loc_1FD5D
; ---------------------------------------------------------------------------
@ -42915,7 +42915,7 @@ dword_23F4A dd ?
word_23F4E dw ?
word_23F50 dw ?
dword_23F52 dd ?
fp_23F56 dw ?
_boss_bg_render dw ?
fp_23F58 dw ?
fp_23F5A dw ?
db ? ;
@ -52086,12 +52086,7 @@ byte_2D060 db ?
word_2D062 dw ?
byte_2D064 db ?
db ?
farfp_2D066 dd ?
fp_2D06A dw ?
fp_2D06C dw ?
fp_2D06E dw ?
farfp_2D070 dd ?
fp_2D074 dw ?
include th04/boss_funcs[bss].asm
byte_2D076 db ?
byte_2D077 db ?
dd ? ;