mirror of https://github.com/nmlgc/ReC98.git
[Reverse-engineering] [th02/th05] Current live and bomb counts
TH01 was done in 3b175c8
, TH03 obviously has two of those and uses a
structure for it, TH04 doesn't move it out of the resident structure.
Funded by -Tom-.
This commit is contained in:
parent
47e5601613
commit
26d5747d71
|
@ -3423,9 +3423,9 @@ var_2 = word ptr -2
|
||||||
mov al, es:[bx+mikoconfig_t.stage]
|
mov al, es:[bx+mikoconfig_t.stage]
|
||||||
mov stage_id, al
|
mov stage_id, al
|
||||||
mov al, es:[bx+mikoconfig_t.start_lives]
|
mov al, es:[bx+mikoconfig_t.start_lives]
|
||||||
mov byte_1E59C, al
|
mov lives, al
|
||||||
mov al, es:[bx+mikoconfig_t.start_bombs]
|
mov al, es:[bx+mikoconfig_t.start_bombs]
|
||||||
mov byte_1E59D, al
|
mov bombs, al
|
||||||
mov al, es:[bx+mikoconfig_t.rank]
|
mov al, es:[bx+mikoconfig_t.rank]
|
||||||
mov byte_1E364, al
|
mov byte_1E364, al
|
||||||
mov al, es:[bx+mikoconfig_t.start_power]
|
mov al, es:[bx+mikoconfig_t.start_power]
|
||||||
|
@ -3642,9 +3642,9 @@ loc_C516:
|
||||||
les bx, mikoconfig
|
les bx, mikoconfig
|
||||||
mov es:[bx+mikoconfig_t.score_highest], eax
|
mov es:[bx+mikoconfig_t.score_highest], eax
|
||||||
mov al, es:[bx+mikoconfig_t.start_lives]
|
mov al, es:[bx+mikoconfig_t.start_lives]
|
||||||
mov byte_1E59C, al
|
mov lives, al
|
||||||
mov al, es:[bx+mikoconfig_t.start_bombs]
|
mov al, es:[bx+mikoconfig_t.start_bombs]
|
||||||
mov byte_1E59D, al
|
mov bombs, al
|
||||||
mov byte_1E516, 1
|
mov byte_1E516, 1
|
||||||
inc es:[bx+mikoconfig_t.continues_used]
|
inc es:[bx+mikoconfig_t.continues_used]
|
||||||
call sub_DD1B
|
call sub_DD1B
|
||||||
|
@ -6144,7 +6144,7 @@ arg_4 = word ptr 0Ah
|
||||||
loc_D6EB:
|
loc_D6EB:
|
||||||
mov si, 3CE6h
|
mov si, 3CE6h
|
||||||
shl cx, 4
|
shl cx, 4
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jnz short loc_D705
|
jnz short loc_D705
|
||||||
|
@ -6553,11 +6553,11 @@ loc_D9E5:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_D9FA:
|
loc_D9FA:
|
||||||
mov al, byte_1E59D
|
mov al, bombs
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jge short loc_DA21
|
jge short loc_DA21
|
||||||
inc byte_1E59D
|
inc bombs
|
||||||
add dword_218A4, 3E8h
|
add dword_218A4, 3E8h
|
||||||
push si
|
push si
|
||||||
push word_2189C
|
push word_2189C
|
||||||
|
@ -6619,11 +6619,11 @@ loc_DA85:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_DA9C:
|
loc_DA9C:
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jge short loc_DAB6
|
jge short loc_DAB6
|
||||||
inc byte_1E59C
|
inc lives
|
||||||
call sub_DF76
|
call sub_DF76
|
||||||
call _snd_se_play c, 8
|
call _snd_se_play c, 8
|
||||||
|
|
||||||
|
@ -7046,21 +7046,21 @@ loc_DE01:
|
||||||
mov eax, [bx+0B2Eh]
|
mov eax, [bx+0B2Eh]
|
||||||
cmp eax, dword_1E598
|
cmp eax, dword_1E598
|
||||||
jg short locret_DE4C
|
jg short locret_DE4C
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jge short loc_DE26
|
jge short loc_DE26
|
||||||
inc byte_1E59C
|
inc lives
|
||||||
call sub_DF76
|
call sub_DF76
|
||||||
jmp short loc_DE36
|
jmp short loc_DE36
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_DE26:
|
loc_DE26:
|
||||||
mov al, byte_1E59D
|
mov al, bombs
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jge short loc_DE36
|
jge short loc_DE36
|
||||||
inc byte_1E59D
|
inc bombs
|
||||||
call sub_DFC4
|
call sub_DFC4
|
||||||
|
|
||||||
loc_DE36:
|
loc_DE36:
|
||||||
|
@ -7105,11 +7105,11 @@ loc_DE7A:
|
||||||
mov eax, [bx+0B2Eh]
|
mov eax, [bx+0B2Eh]
|
||||||
cmp eax, dword_1E598
|
cmp eax, dword_1E598
|
||||||
jg short loc_DEAB
|
jg short loc_DEAB
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
cmp ax, 5
|
cmp ax, 5
|
||||||
jge short loc_DEA7
|
jge short loc_DEA7
|
||||||
inc byte_1E59C
|
inc lives
|
||||||
call sub_DF76
|
call sub_DF76
|
||||||
call _snd_se_play c, 8
|
call _snd_se_play c, 8
|
||||||
|
|
||||||
|
@ -7249,11 +7249,11 @@ loc_DF7E:
|
||||||
inc si
|
inc si
|
||||||
|
|
||||||
loc_DF95:
|
loc_DF95:
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
cmp ax, si
|
cmp ax, si
|
||||||
jg short loc_DF7E
|
jg short loc_DF7E
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
cbw
|
cbw
|
||||||
mov si, ax
|
mov si, ax
|
||||||
jmp short loc_DFBC
|
jmp short loc_DFBC
|
||||||
|
@ -7295,11 +7295,11 @@ loc_DFCC:
|
||||||
inc si
|
inc si
|
||||||
|
|
||||||
loc_DFE3:
|
loc_DFE3:
|
||||||
mov al, byte_1E59D
|
mov al, bombs
|
||||||
cbw
|
cbw
|
||||||
cmp ax, si
|
cmp ax, si
|
||||||
jg short loc_DFCC
|
jg short loc_DFCC
|
||||||
mov al, byte_1E59D
|
mov al, bombs
|
||||||
cbw
|
cbw
|
||||||
mov si, ax
|
mov si, ax
|
||||||
jmp short loc_E00A
|
jmp short loc_E00A
|
||||||
|
@ -7612,11 +7612,11 @@ sub_E280 proc near
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp byte_218B4, 0
|
cmp byte_218B4, 0
|
||||||
jnz short loc_E2D7
|
jnz short loc_E2D7
|
||||||
cmp byte_1E59D, 0
|
cmp bombs, 0
|
||||||
jz short loc_E2D7
|
jz short loc_E2D7
|
||||||
mov byte_218B4, 1
|
mov byte_218B4, 1
|
||||||
mov byte_20606, 1
|
mov byte_20606, 1
|
||||||
dec byte_1E59D
|
dec bombs
|
||||||
call sub_DFC4
|
call sub_DFC4
|
||||||
mov word_218B6, 0
|
mov word_218B6, 0
|
||||||
inc byte_218C2
|
inc byte_218C2
|
||||||
|
@ -9247,7 +9247,7 @@ loc_F0B9:
|
||||||
push 800020h
|
push 800020h
|
||||||
push 1
|
push 1
|
||||||
call sub_4090
|
call sub_4090
|
||||||
cmp byte_1E59C, 0
|
cmp lives, 0
|
||||||
jnz short loc_F107
|
jnz short loc_F107
|
||||||
mov byte_20609, 0
|
mov byte_20609, 0
|
||||||
mov byte_218A1, 1
|
mov byte_218A1, 1
|
||||||
|
@ -9287,16 +9287,16 @@ loc_F12A:
|
||||||
loc_F13B:
|
loc_F13B:
|
||||||
cmp byte_20609, 2Bh ; '+'
|
cmp byte_20609, 2Bh ; '+'
|
||||||
jnz short loc_F198
|
jnz short loc_F198
|
||||||
dec byte_1E59C
|
dec lives
|
||||||
call sub_DF76
|
call sub_DF76
|
||||||
les bx, mikoconfig
|
les bx, mikoconfig
|
||||||
assume es:nothing
|
assume es:nothing
|
||||||
mov al, es:[bx+mikoconfig_t.start_bombs]
|
mov al, es:[bx+mikoconfig_t.start_bombs]
|
||||||
mov byte_1E59D, al
|
mov bombs, al
|
||||||
cmp byte_1E59C, 0
|
cmp lives, 0
|
||||||
jnz short loc_F160
|
jnz short loc_F160
|
||||||
add al, 2
|
add al, 2
|
||||||
mov byte_1E59D, al
|
mov bombs, al
|
||||||
|
|
||||||
loc_F160:
|
loc_F160:
|
||||||
call sub_DFC4
|
call sub_DFC4
|
||||||
|
@ -28656,9 +28656,9 @@ loc_19C4A:
|
||||||
add eax, edx
|
add eax, edx
|
||||||
mov es:[bx+mikoconfig_t.score], eax
|
mov es:[bx+mikoconfig_t.score], eax
|
||||||
mov es:[bx+mikoconfig_t.stage], 7Fh
|
mov es:[bx+mikoconfig_t.stage], 7Fh
|
||||||
mov al, byte_1E59C
|
mov al, lives
|
||||||
mov es:[bx+mikoconfig_t.rem_lives], al
|
mov es:[bx+mikoconfig_t.rem_lives], al
|
||||||
mov al, byte_1E59D
|
mov al, bombs
|
||||||
mov es:[bx+mikoconfig_t.rem_bombs], al
|
mov es:[bx+mikoconfig_t.rem_bombs], al
|
||||||
call sub_19949
|
call sub_19949
|
||||||
push ds
|
push ds
|
||||||
|
@ -34838,8 +34838,8 @@ word_1E594 dw 0BCB0h
|
||||||
byte_1E596 db 0C8h
|
byte_1E596 db 0C8h
|
||||||
byte_1E597 db 0
|
byte_1E597 db 0
|
||||||
dword_1E598 dd 0
|
dword_1E598 dd 0
|
||||||
byte_1E59C db 3
|
lives db 3
|
||||||
byte_1E59D db 3
|
bombs db 3
|
||||||
db 0A0h
|
db 0A0h
|
||||||
db 86h
|
db 86h
|
||||||
db 1
|
db 1
|
||||||
|
|
|
@ -571,9 +571,9 @@ sub_B063 proc near
|
||||||
mov al, es:[bx+14h]
|
mov al, es:[bx+14h]
|
||||||
mov byte_25FEF, al
|
mov byte_25FEF, al
|
||||||
mov al, es:[bx+0Eh]
|
mov al, es:[bx+0Eh]
|
||||||
mov byte_25351, al
|
mov bombs, al
|
||||||
mov al, es:[bx+0Dh]
|
mov al, es:[bx+0Dh]
|
||||||
mov byte_25350, al
|
mov lives, al
|
||||||
xor si, si
|
xor si, si
|
||||||
jmp short loc_B09F
|
jmp short loc_B09F
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
@ -3182,7 +3182,7 @@ sub_C483 proc near
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
cmp byte_2429A, 0
|
cmp byte_2429A, 0
|
||||||
jnz loc_C518
|
jnz loc_C518
|
||||||
cmp byte_25351, 0
|
cmp bombs, 0
|
||||||
jz loc_C518
|
jz loc_C518
|
||||||
cmp byte_2C96C, 0
|
cmp byte_2C96C, 0
|
||||||
jnz short loc_C518
|
jnz short loc_C518
|
||||||
|
@ -3195,7 +3195,7 @@ sub_C483 proc near
|
||||||
mov byte_2CEBD, 0
|
mov byte_2CEBD, 0
|
||||||
|
|
||||||
loc_C4BC:
|
loc_C4BC:
|
||||||
dec byte_25351
|
dec bombs
|
||||||
nopcall sub_104BB
|
nopcall sub_104BB
|
||||||
mov byte_2429A, 1
|
mov byte_2429A, 1
|
||||||
mov byte_2429B, 0
|
mov byte_2429B, 0
|
||||||
|
@ -10793,9 +10793,9 @@ loc_FBB5:
|
||||||
mov byte_2CEC3, 1
|
mov byte_2CEC3, 1
|
||||||
les bx, dword_23EF0
|
les bx, dword_23EF0
|
||||||
mov al, es:[bx+0Eh]
|
mov al, es:[bx+0Eh]
|
||||||
mov byte_25351, al
|
mov bombs, al
|
||||||
mov al, es:[bx+0Dh]
|
mov al, es:[bx+0Dh]
|
||||||
mov byte_25350, al
|
mov lives, al
|
||||||
nopcall sub_E4FC
|
nopcall sub_E4FC
|
||||||
nopcall sub_10407
|
nopcall sub_10407
|
||||||
nopcall sub_104BB
|
nopcall sub_104BB
|
||||||
|
@ -11839,7 +11839,7 @@ var_1 = byte ptr -1
|
||||||
mov bp, sp
|
mov bp, sp
|
||||||
sub sp, 2
|
sub sp, 2
|
||||||
push si
|
push si
|
||||||
mov al, byte_25350
|
mov al, lives
|
||||||
dec al
|
dec al
|
||||||
mov [bp+var_1], al
|
mov [bp+var_1], al
|
||||||
cmp [bp+var_1], 6
|
cmp [bp+var_1], 6
|
||||||
|
@ -11923,10 +11923,10 @@ var_1 = byte ptr -1
|
||||||
sub sp, 2
|
sub sp, 2
|
||||||
push si
|
push si
|
||||||
mov [bp+var_2], 0
|
mov [bp+var_2], 0
|
||||||
cmp byte_25351, 5
|
cmp bombs, 5
|
||||||
ja short loc_10514
|
ja short loc_10514
|
||||||
mov si, 3Eh ; '>'
|
mov si, 3Eh ; '>'
|
||||||
mov al, byte_25351
|
mov al, bombs
|
||||||
mov [bp+var_1], al
|
mov [bp+var_1], al
|
||||||
jmp short loc_104ED
|
jmp short loc_104ED
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
@ -11955,7 +11955,7 @@ loc_1050C:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_10514:
|
loc_10514:
|
||||||
mov al, byte_25351
|
mov al, bombs
|
||||||
mov [bp+var_1], al
|
mov [bp+var_1], al
|
||||||
call text_putsa pascal, (62 shl 16) + 11, ds, offset aB@b@bB@b@_0, TX_WHITE
|
call text_putsa pascal, (62 shl 16) + 11, ds, offset aB@b@bB@b@_0, TX_WHITE
|
||||||
cmp [bp+var_1], 0Ah
|
cmp [bp+var_1], 0Ah
|
||||||
|
@ -15436,7 +15436,7 @@ loc_120B6:
|
||||||
mov byte_2CEC8, al
|
mov byte_2CEC8, al
|
||||||
cmp byte_2CEC2, 4
|
cmp byte_2CEC2, 4
|
||||||
jnb short locret_12148
|
jnb short locret_12148
|
||||||
cmp byte_25350, 1
|
cmp lives, 1
|
||||||
jbe short loc_120F0
|
jbe short loc_120F0
|
||||||
test byte_2CEC2, 1
|
test byte_2CEC2, 1
|
||||||
jz short loc_120E5
|
jz short loc_120E5
|
||||||
|
@ -15459,13 +15459,13 @@ loc_120F0:
|
||||||
mov word ptr dword_2CEA4+2, 1700h
|
mov word ptr dword_2CEA4+2, 1700h
|
||||||
mov word_2CEA8, 0
|
mov word_2CEA8, 0
|
||||||
mov word_2CEAA, 0FFE0h
|
mov word_2CEAA, 0FFE0h
|
||||||
cmp byte_25350, 1
|
cmp lives, 1
|
||||||
jbe short loc_12142
|
jbe short loc_12142
|
||||||
dec byte_25350
|
dec lives
|
||||||
nopcall sub_10407
|
nopcall sub_10407
|
||||||
les bx, dword_23EF0
|
les bx, dword_23EF0
|
||||||
mov al, es:[bx+0Eh]
|
mov al, es:[bx+0Eh]
|
||||||
mov byte_25351, al
|
mov bombs, al
|
||||||
nopcall sub_104BB
|
nopcall sub_104BB
|
||||||
mov byte_2C979, 20h ; ' '
|
mov byte_2C979, 20h ; ' '
|
||||||
leave
|
leave
|
||||||
|
@ -24522,7 +24522,7 @@ loc_1683E:
|
||||||
push 22000Ah
|
push 22000Ah
|
||||||
push eax
|
push eax
|
||||||
nopcall sub_1FA0E
|
nopcall sub_1FA0E
|
||||||
mov al, byte_25350
|
mov al, lives
|
||||||
mov ah, 0
|
mov ah, 0
|
||||||
imul ax, 3E8h
|
imul ax, 3E8h
|
||||||
add ax, 0FC18h
|
add ax, 0FC18h
|
||||||
|
@ -25418,7 +25418,7 @@ loc_16EC6:
|
||||||
mov [bp+var_8], 3
|
mov [bp+var_8], 3
|
||||||
|
|
||||||
loc_16ECB:
|
loc_16ECB:
|
||||||
cmp byte_25350, 1
|
cmp lives, 1
|
||||||
jnz short loc_16ED7
|
jnz short loc_16ED7
|
||||||
mov [bp+var_8], 6
|
mov [bp+var_8], 6
|
||||||
|
|
||||||
|
@ -25466,9 +25466,9 @@ sub_16F05 proc near
|
||||||
push 4
|
push 4
|
||||||
call sub_E720
|
call sub_E720
|
||||||
inc byte_226C4
|
inc byte_226C4
|
||||||
cmp byte_25350, 63h ; 'c'
|
cmp lives, 99
|
||||||
jnb short loc_16F52
|
jnb short loc_16F52
|
||||||
inc byte_25350
|
inc lives
|
||||||
cmp byte_2C979, 14h
|
cmp byte_2C979, 14h
|
||||||
jnb short loc_16F3B
|
jnb short loc_16F3B
|
||||||
mov byte_2C979, 14h
|
mov byte_2C979, 14h
|
||||||
|
@ -25677,7 +25677,7 @@ loc_1710E:
|
||||||
; ---------------------------------------------------------------------------
|
; ---------------------------------------------------------------------------
|
||||||
|
|
||||||
loc_1711E:
|
loc_1711E:
|
||||||
inc byte_25351
|
inc bombs
|
||||||
mov si, 64h ; 'd'
|
mov si, 64h ; 'd'
|
||||||
call sub_104BB
|
call sub_104BB
|
||||||
jmp short loc_17174
|
jmp short loc_17174
|
||||||
|
@ -25686,7 +25686,7 @@ loc_1711E:
|
||||||
loc_1712C:
|
loc_1712C:
|
||||||
push 3
|
push 3
|
||||||
call sub_E720
|
call sub_E720
|
||||||
inc byte_25350
|
inc lives
|
||||||
call sub_10407
|
call sub_10407
|
||||||
call snd_se_play pascal, 7
|
call snd_se_play pascal, 7
|
||||||
mov byte_2CE87, 1
|
mov byte_2CE87, 1
|
||||||
|
@ -46596,8 +46596,8 @@ byte_25348 db ?
|
||||||
word_25349 dw ?
|
word_25349 dw ?
|
||||||
dword_2534B dd ?
|
dword_2534B dd ?
|
||||||
db ?
|
db ?
|
||||||
byte_25350 db ?
|
lives db ?
|
||||||
byte_25351 db ?
|
bombs db ?
|
||||||
byte_25352 db ?
|
byte_25352 db ?
|
||||||
byte_25353 db ?
|
byte_25353 db ?
|
||||||
map_seg dw ?
|
map_seg dw ?
|
||||||
|
|
Loading…
Reference in New Issue