diff --git a/Makefile.mak b/Makefile.mak index 3663c6a1..c4aa8b4c 100644 --- a/Makefile.mak +++ b/Makefile.mak @@ -28,11 +28,15 @@ th05:: $(TH05:\=bin\th05\) bin\th01\zunsoft.com: th01\zunsoft.c $(CC) $(CFLAGS) -mt -lt -nbin\th01\ $** masters.lib -bin\th01\op.exe: bin\th01\op.obj th01\op_11.c th01\op_12.cpp - $(CC) $(CFLAGS) -ml -3 -nbin\th01\ -eOP.EXE $** +bin\th01\op.exe: bin\th01\op.obj th01\op_10.c th01\op_11.c th01\op_12.cpp + $(CC) $(CFLAGS) -ml -3 -nbin\th01\ -eOP.EXE @&&| +$** +| -bin\th01\reiiden.exe: bin\th01\reiiden.obj th01\main_16.c - $(CC) $(CFLAGS) -ml -3 -nbin\th01\ -eREIIDEN.EXE $** +bin\th01\reiiden.exe: bin\th01\reiiden.obj th01\main_12.c th01\main_16.c + $(CC) $(CFLAGS) -ml -3 -nbin\th01\ -eREIIDEN.EXE @&&| +$** +| bin\th01\fuuin.exe: bin\th01\fuuin.obj th01\fuuin_11.c th01\fuuin_13.c $(CC) $(CFLAGS) -ml -3 -nbin\th01\ -eFUUIN.EXE @&&| diff --git a/ReC98.h b/ReC98.h index 2d4e4828..ab53ba98 100644 --- a/ReC98.h +++ b/ReC98.h @@ -30,6 +30,11 @@ if((val) < 0) { \ (val) = ring_end; \ } + +// Resident structure +#define RES_ID_LEN sizeof(RES_ID) +#define RES_ID_STRLEN (RES_ID_LEN - 1) +#define RES_PARASIZE ((sizeof(resident_t) + 0xF) >> 4) // ------ #define RES_X 640 diff --git a/th01/main_12.c b/th01/main_12.c new file mode 100644 index 00000000..ef299349 --- /dev/null +++ b/th01/main_12.c @@ -0,0 +1,6 @@ +/* ReC98 + * ----- + * Code segment #12 of TH01's REIIDEN.EXE + */ + +#include "th01/resstuff.c" diff --git a/th01/op_10.c b/th01/op_10.c new file mode 100644 index 00000000..0196f5fb --- /dev/null +++ b/th01/op_10.c @@ -0,0 +1,6 @@ +/* ReC98 + * ----- + * Code segment #10 of TH01's OP.EXE + */ + +#include "th01/resstuff.c" diff --git a/th01/resstuff.c b/th01/resstuff.c new file mode 100644 index 00000000..7622f4f1 --- /dev/null +++ b/th01/resstuff.c @@ -0,0 +1,66 @@ +/* ReC98 + * ----- + * Random resident structure stuff + */ + +#include "th01/th01.h" + +#pragma option -2 + +extern const char res_id[] /* = RES_ID */; +extern resident_t *reiidenconfig; + +void resident_stuff_set( + char rank, char bgm_mode, char bombs, char start_lives_extra, long rand +) +{ + unsigned res = resdata_exist(res_id, RES_ID_STRLEN, RES_PARASIZE); + if(!res) { + res = resdata_create(res_id, RES_ID_STRLEN, RES_PARASIZE); + reiidenconfig = MK_FP(res, 0); + reiidenconfig->stage = 0; + reiidenconfig->continues_total = 0; + } + if(res) { + reiidenconfig = MK_FP(res, 0); + reiidenconfig->rank = rank; + reiidenconfig->bgm_mode = bgm_mode; + reiidenconfig->bombs = bombs; + reiidenconfig->start_lives_extra = start_lives_extra; + reiidenconfig->rand = rand; + reiidenconfig->score = 0; + } +} + +int resident_stuff_get( + char *rank, + char *bgm_mode, + char *bombs, + char *start_lives_extra, + long *rand, + long *continues_total, + int *stage +) +{ + unsigned res = resdata_exist(res_id, RES_ID_STRLEN, RES_PARASIZE); + if(res) { + reiidenconfig = MK_FP(res, 0); + *rank = reiidenconfig->rank; + *bgm_mode = reiidenconfig->bgm_mode; + *bombs = reiidenconfig->bombs; + *start_lives_extra = reiidenconfig->start_lives_extra; + *rand = reiidenconfig->rand; + *continues_total = reiidenconfig->continues_total; + *stage = reiidenconfig->stage; + return 0; + } + return 1; +} + +void resident_free(void) +{ + unsigned res = resdata_exist(res_id, RES_ID_STRLEN, RES_PARASIZE); + if(res) { + resdata_free(res); + } +} diff --git a/th01/th01.h b/th01/th01.h index fe401866..cf7a5638 100644 --- a/th01/th01.h +++ b/th01/th01.h @@ -7,3 +7,48 @@ // Hardware void graph_accesspage_func(int page); + +// Game +#define STAGES_PER_SCENE 4 +#define SCENE_COUNT 4 + +// Resident structure +#define RES_ID "ReiidenConfig" + +typedef enum { + ROUTE_MAKAI, + ROUTE_JIGOKU +} route_t; + +typedef enum { + MODE_REGULAR = 0, + MODE_TEST = 1, + MODE_DEBUG = 3 +} mode_t; + +#pragma option -a1 +typedef struct { + char id[RES_ID_LEN]; + char rank; + char bgm_mode; // 0 = off, 1 = FM + char bombs; + char start_lives_extra; // Add 2 for the actual number of lives + char end_flag; + char unused_1; + char route; + char rem_lives; + char snd_need_init; + char unused_2; + char mode; + int bullet_speed; + long rand; + long score; + long continues_total; + int continues_per_scene[SCENE_COUNT]; + long bonus_per_stage[STAGES_PER_SCENE]; // of the current scene + int stage; + long hiscore; + long score_highest; // among all continues + unsigned int p_value; +} resident_t; +#pragma option -a2 diff --git a/th01_op.asm b/th01_op.asm index 3dde5d72..c521ddec 100644 --- a/th01_op.asm +++ b/th01_op.asm @@ -859,7 +859,7 @@ sub_A79D proc far cbw cmp ax, 1 jnz short loc_A7AE - call sub_E3C5 + call _resident_free loc_A7AE: call key_end @@ -882,7 +882,7 @@ sub_A7B5 proc far push word_12322 push word_12320+1 push word_12320 - call sub_E27C + call _resident_stuff_set add sp, 0Ch call sub_A79D call _mdrv2_bgm_fade_out_nonblock @@ -891,7 +891,7 @@ sub_A7B5 proc far cbw cmp ax, 2 jnz short loc_A7FC - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.mode], 1 jmp short loc_A820 ; --------------------------------------------------------------------------- @@ -901,7 +901,7 @@ loc_A7FC: cbw cmp ax, 3 jnz short loc_A810 - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.mode], 3 jmp short loc_A820 ; --------------------------------------------------------------------------- @@ -909,11 +909,11 @@ loc_A7FC: loc_A810: cmp _mode, 0 jnz short loc_A820 - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.mode], 0 loc_A820: - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.route], 0 mov es:[bx+reiidenconfig_t.stage], 0 mov al, byte ptr word_12322+1 @@ -927,12 +927,12 @@ loc_A820: loc_A842: mov ax, si add ax, ax - les bx, reiidenconfig + les bx, _reiidenconfig add bx, ax mov es:[bx+reiidenconfig_t.continues_per_scene], 0 mov ax, si shl ax, 2 - mov bx, word ptr reiidenconfig + mov bx, word ptr _reiidenconfig add bx, ax mov es:[bx+reiidenconfig_t.bonus_per_stage], 0 inc si @@ -940,7 +940,7 @@ loc_A842: loc_A867: cmp si, 4 jl short loc_A842 - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.score_highest], 0 mov es:[bx+reiidenconfig_t.continues_total], 0 mov es:[bx+reiidenconfig_t.end_flag], 0 @@ -973,9 +973,9 @@ sub_A8AD proc far push word_12322 push word_12320+1 push word_12320 - call sub_E27C + call _resident_stuff_set add sp, 0Ch - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.stage], 0 jnz short loc_A8E1 mov ax, seg op_01_TEXT @@ -986,7 +986,7 @@ loc_A8E1: call sub_A79D call _mdrv2_bgm_fade_out_nonblock call sub_B757 - les bx, reiidenconfig + les bx, _reiidenconfig assume es:nothing mov es:[bx+reiidenconfig_t.mode], 0 mov es:[bx+reiidenconfig_t.snd_need_init], 1 @@ -8323,166 +8323,8 @@ op_09_TEXT ends ; Segment type: Pure code op_10_TEXT segment byte public 'CODE' use16 - assume cs:op_10_TEXT - ;org 0Ch - assume es:nothing, ss:nothing, ds:_DATA, fs:nothing, gs:nothing - -; =============== S U B R O U T I N E ======================================= - -; Attributes: bp-based frame - -sub_E27C proc far - -arg_0 = byte ptr 6 -arg_2 = byte ptr 8 -arg_4 = byte ptr 0Ah -arg_6 = byte ptr 0Ch -arg_8 = dword ptr 0Eh - - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jnz short loc_E2C6 - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_create - mov si, ax - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov es:[bx+reiidenconfig_t.stage], 0 - les bx, reiidenconfig - mov word ptr es:[bx+reiidenconfig_t.continues_total+2], 0 - mov word ptr es:[bx+reiidenconfig_t.continues_total], 0 - -loc_E2C6: - or si, si - jz short loc_E322 - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov al, [bp+arg_0] - mov es:[bx+reiidenconfig_t.rank], al - les bx, reiidenconfig - mov al, [bp+arg_2] - mov es:[bx+reiidenconfig_t.bgm_mode], al - les bx, reiidenconfig - mov al, [bp+arg_4] - mov es:[bx+reiidenconfig_t.bombs], al - les bx, reiidenconfig - mov al, [bp+arg_6] - mov es:[bx+reiidenconfig_t.start_lives_extra], al - les bx, reiidenconfig - mov dx, word ptr [bp+arg_8+2] - mov ax, word ptr [bp+arg_8] - mov word ptr es:[bx+reiidenconfig_t.rand+2], dx - mov word ptr es:[bx+reiidenconfig_t.rand], ax - les bx, reiidenconfig - mov word ptr es:[bx+reiidenconfig_t.score+2], 0 - mov word ptr es:[bx+reiidenconfig_t.score], 0 - -loc_E322: - pop si - pop bp - retf -sub_E27C endp - -; --------------------------------------------------------------------------- - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jnz short loc_E33F - jmp loc_E3BF -; --------------------------------------------------------------------------- - -loc_E33F: - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.rank] - les bx, [bp+6] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.bgm_mode] - les bx, [bp+0Ah] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.bombs] - les bx, [bp+0Eh] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.start_lives_extra] - les bx, [bp+12h] - mov es:[bx], al - les bx, reiidenconfig - mov dx, word ptr es:[bx+reiidenconfig_t.rand+2] - mov ax, word ptr es:[bx+reiidenconfig_t.rand] - les bx, [bp+16h] - mov es:[bx+2], dx - mov es:[bx], ax - les bx, reiidenconfig - mov dx, word ptr es:[bx+reiidenconfig_t.continues_total+2] - mov ax, word ptr es:[bx+reiidenconfig_t.continues_total] - les bx, [bp+1Ah] - mov es:[bx+2], dx - mov es:[bx], ax - les bx, reiidenconfig - mov ax, es:[bx+reiidenconfig_t.stage] - les bx, [bp+1Eh] - mov es:[bx], ax - xor ax, ax - jmp short loc_E3C2 -; --------------------------------------------------------------------------- - -loc_E3BF: - mov ax, 1 - -loc_E3C2: - pop si - pop bp - retf - -; =============== S U B R O U T I N E ======================================= - -; Attributes: bp-based frame - -sub_E3C5 proc far - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jz short loc_E3E2 - push si - call dos_free - -loc_E3E2: - pop si - pop bp - retf -sub_E3C5 endp - + extern _resident_stuff_set:proc + extern _resident_free:proc op_10_TEXT ends ; =========================================================================== @@ -9017,7 +8859,8 @@ include libs/master.lib/keyback[data].asm include libs/master.lib/dos_ropen[data].asm include libs/master.lib/clip[data].asm include libs/master.lib/rand[data].asm -aReiidenconfig db 'ReiidenConfig',0 +public _res_id +_res_id db 'ReiidenConfig',0 public _mdrv2_have_board _mdrv2_have_board db 0 db 0 @@ -9515,6 +9358,7 @@ include libs/master.lib/keystart[bss].asm dd ? dd ? dd ? -reiidenconfig dd ? +public _reiidenconfig +_reiidenconfig dd ? end diff --git a/th01_reiiden.asm b/th01_reiiden.asm index 5f2b3749..8a1a4231 100644 --- a/th01_reiiden.asm +++ b/th01_reiiden.asm @@ -2805,7 +2805,7 @@ loc_CB5D: loc_CB66: cmp [bp+var_1], 0 jz short loc_CB96 - les bx, reiidenconfig + les bx, _reiidenconfig inc es:[bx+reiidenconfig_t.continues_total] inc _continues_total mov ax, es:[bx+reiidenconfig_t.stage] @@ -2813,7 +2813,7 @@ loc_CB66: xor dx, dx div bx add ax, ax - mov bx, word ptr reiidenconfig + mov bx, word ptr _reiidenconfig add bx, ax inc es:[bx+reiidenconfig_t.continues_per_scene] @@ -2851,7 +2851,7 @@ arg_2 = word ptr 8 push bp mov bp, sp mov dx, [bp+arg_0] - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.bullet_speed], dx jle short loc_CBD4 mov es:[bx+reiidenconfig_t.bullet_speed], dx @@ -2859,12 +2859,12 @@ arg_2 = word ptr 8 ; --------------------------------------------------------------------------- loc_CBD4: - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, [bp+arg_2] add es:[bx+reiidenconfig_t.bullet_speed], ax loc_CBDF: - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.bullet_speed], -15 jge short loc_CBF0 mov es:[bx+reiidenconfig_t.bullet_speed], -15 @@ -2885,7 +2885,7 @@ arg_0 = word ptr 6 push bp mov bp, sp - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, [bp+arg_0] add es:[bx+reiidenconfig_t.bullet_speed], ax cmp es:[bx+reiidenconfig_t.bullet_speed], 20 @@ -2965,7 +2965,7 @@ sub_CC0F proc far mov byte_34A51, 0 mov byte_34A4E, 0 call sub_B87C - les bx, reiidenconfig + les bx, _reiidenconfig inc es:[bx+reiidenconfig_t.continues_total] inc _continues_total mov ax, es:[bx+reiidenconfig_t.stage] @@ -2973,10 +2973,10 @@ sub_CC0F proc far xor dx, dx div bx add ax, ax - mov bx, word ptr reiidenconfig + mov bx, word ptr _reiidenconfig add bx, ax inc es:[bx+reiidenconfig_t.continues_per_scene] - mov bx, word ptr reiidenconfig + mov bx, word ptr _reiidenconfig mov eax, es:[bx+reiidenconfig_t.score_highest] cmp eax, _score jnb short loc_CD2E @@ -2984,7 +2984,7 @@ sub_CC0F proc far mov es:[bx+reiidenconfig_t.score_highest], eax loc_CD2E: - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.score], 0 mov al, es:[bx+reiidenconfig_t.start_lives_extra] add al, 2 @@ -3009,10 +3009,10 @@ loc_CD52: loc_CD70: cmp si, 1 jnz short loc_CDA2 - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.snd_need_init], 0 call sub_E852 - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.p_value], 0 pushd 0 push ds @@ -3310,7 +3310,7 @@ loc_D00D: pop cx mov al, byte_36C14 mov _bombs, al - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.bombs], 1 pop di pop si @@ -3333,7 +3333,7 @@ sub_D02F proc far cmp _rem_lives, 6 jge short loc_D076 inc _rem_lives - les bx, reiidenconfig + les bx, _reiidenconfig mov al, byte ptr _rem_lives mov es:[bx+reiidenconfig_t.rem_lives], al mov ax, _rem_lives @@ -4033,8 +4033,8 @@ loc_D54F: push ds push offset byte_34A31 push ds - push offset byte_34A30 - call sub_11678 + push offset _rank + call _resident_stuff_get add sp, 1Ch cmp ax, 1 jnz short loc_D583 @@ -4047,7 +4047,7 @@ loc_D579: loc_D583: mov byte_36C14, 1 - les bx, reiidenconfig + les bx, _reiidenconfig mov eax, es:[bx+reiidenconfig_t.score] mov _score, eax mov ebx, 61A80h @@ -4062,7 +4062,7 @@ loc_D583: push 3F003Fh call __control87 add sp, 4 - les bx, reiidenconfig + les bx, _reiidenconfig mov al, es:[bx+reiidenconfig_t.route] mov _route, al cmp es:[bx+reiidenconfig_t.mode], 0 @@ -4118,7 +4118,7 @@ loc_D644: mov _route, 0 loc_D649: - les bx, reiidenconfig + les bx, _reiidenconfig mov al, es:[bx+reiidenconfig_t.mode] cbw cmp ax, 1 @@ -4130,7 +4130,7 @@ loc_D649: mov _mode_test, 1 loc_D669: - les bx, reiidenconfig + les bx, _reiidenconfig mov al, es:[bx+reiidenconfig_t.mode] cbw cmp ax, 3 @@ -4226,7 +4226,7 @@ loc_D6EE: loc_D72E: call sub_D487 - les bx, reiidenconfig + les bx, _reiidenconfig mov al, es:[bx+reiidenconfig_t.rem_lives] cbw mov _rem_lives, ax @@ -4276,7 +4276,7 @@ loc_D795: mov byte_35BEE, dl mov byte_34A49, 1 mov byte_36C1E, 1 - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.snd_need_init], 0 jnz short loc_D7E0 mov ax, 1 @@ -4290,7 +4290,7 @@ loc_D7E2: mov si, ax loc_D7E4: - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, [bp+var_2] mov es:[bx+reiidenconfig_t.stage], ax mov al, _route @@ -4905,7 +4905,7 @@ loc_DE0F: cmp ax, 1 jnz short loc_DE67 call sub_D487 - les bx, reiidenconfig + les bx, _reiidenconfig mov al, _route inc al mov es:[bx+reiidenconfig_t.end_flag], al @@ -4942,7 +4942,7 @@ loc_DE72: push 0 call sub_11738 pop cx - les bx, reiidenconfig + les bx, _reiidenconfig mov eax, _rand mov es:[bx+reiidenconfig_t.rand], eax mov word_34A72, 0 @@ -4954,7 +4954,7 @@ loc_DE72: push 5 call _mdrv2_se_play pop cx - les bx, reiidenconfig + les bx, _reiidenconfig dec es:[bx+reiidenconfig_t.rem_lives] dec _rem_lives call sub_1AE0D @@ -4978,7 +4978,7 @@ loc_DEDA: loc_DF03: inc si inc [bp+var_2] - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, [bp+var_2] mov es:[bx+reiidenconfig_t.stage], ax cmp byte_34ADF, 0 @@ -4995,7 +4995,7 @@ loc_DF23: loc_DF2B: pop cx - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.bullet_speed], 0 jge short loc_DF3D mov es:[bx+reiidenconfig_t.bullet_speed], 0 @@ -5011,7 +5011,7 @@ loc_DF3D: jz short loc_DF9A loc_DF52: - les bx, reiidenconfig + les bx, _reiidenconfig mov eax, _score mov es:[bx+reiidenconfig_t.score], eax mov al, byte ptr _rem_lives @@ -5020,7 +5020,7 @@ loc_DF52: mov al, _route mov es:[bx+reiidenconfig_t.route], al call _mdrv2_bgm_fade_out_nonblock - les bx, reiidenconfig + les bx, _reiidenconfig mov al, _bombs mov es:[bx+reiidenconfig_t.bombs], al call sub_E852 @@ -5249,7 +5249,7 @@ loc_E244: mov byte_34A49, 1 loc_E27B: - les bx, reiidenconfig + les bx, _reiidenconfig mov eax, _score mov es:[bx+reiidenconfig_t.score], eax cmp [bp+var_2], 5 @@ -5280,7 +5280,7 @@ loc_E2A8: pushd [_score] call sub_148B3 add sp, 0Ah - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, [bp+var_2] mov es:[bx+reiidenconfig_t.stage], ax call sub_CC0F @@ -12484,182 +12484,7 @@ main_11_TEXT ends ; Segment type: Pure code main_12_TEXT segment byte public 'CODE' use16 - assume cs:main_12_TEXT - ;org 0Fh - assume es:nothing, ss:nothing, ds:_DATA, fs:nothing, gs:nothing - -; =============== S U B R O U T I N E ======================================= - -; Attributes: bp-based frame - -sub_115CF proc far - -arg_0 = byte ptr 6 -arg_2 = byte ptr 8 -arg_4 = byte ptr 0Ah -arg_6 = byte ptr 0Ch -arg_8 = dword ptr 0Eh - - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jnz short loc_11619 - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_create - mov si, ax - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov es:[bx+reiidenconfig_t.stage], 0 - les bx, reiidenconfig - mov word ptr es:[bx+reiidenconfig_t.continues_total+2], 0 - mov word ptr es:[bx+reiidenconfig_t.continues_total], 0 - -loc_11619: - or si, si - jz short loc_11675 - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov al, [bp+arg_0] - mov es:[bx+reiidenconfig_t.rank], al - les bx, reiidenconfig - mov al, [bp+arg_2] - mov es:[bx+reiidenconfig_t.bgm_mode], al - les bx, reiidenconfig - mov al, [bp+arg_4] - mov es:[bx+reiidenconfig_t.bombs], al - les bx, reiidenconfig - mov al, [bp+arg_6] - mov es:[bx+reiidenconfig_t.start_lives_extra], al - les bx, reiidenconfig - mov dx, word ptr [bp+arg_8+2] - mov ax, word ptr [bp+arg_8] - mov word ptr es:[bx+reiidenconfig_t.rand+2], dx - mov word ptr es:[bx+reiidenconfig_t.rand], ax - les bx, reiidenconfig - mov word ptr es:[bx+reiidenconfig_t.score+2], 0 - mov word ptr es:[bx+reiidenconfig_t.score], 0 - -loc_11675: - pop si - pop bp - retf -sub_115CF endp - - -; =============== S U B R O U T I N E ======================================= - -; Attributes: bp-based frame - -sub_11678 proc far - -arg_0 = dword ptr 6 -arg_4 = dword ptr 0Ah -arg_8 = dword ptr 0Eh -arg_C = dword ptr 12h -arg_10 = dword ptr 16h -arg_14 = dword ptr 1Ah -arg_18 = dword ptr 1Eh - - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jnz short loc_11692 - jmp loc_11712 -; --------------------------------------------------------------------------- - -loc_11692: - mov word ptr reiidenconfig+2, si - mov word ptr reiidenconfig, 0 - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.rank] - les bx, [bp+arg_0] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.bgm_mode] - les bx, [bp+arg_4] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.bombs] - les bx, [bp+arg_8] - mov es:[bx], al - les bx, reiidenconfig - mov al, es:[bx+reiidenconfig_t.start_lives_extra] - les bx, [bp+arg_C] - mov es:[bx], al - les bx, reiidenconfig - mov dx, word ptr es:[bx+reiidenconfig_t.rand+2] - mov ax, word ptr es:[bx+reiidenconfig_t.rand] - les bx, [bp+arg_10] - mov es:[bx+2], dx - mov es:[bx], ax - les bx, reiidenconfig - mov dx, word ptr es:[bx+reiidenconfig_t.continues_total+2] - mov ax, word ptr es:[bx+reiidenconfig_t.continues_total] - les bx, [bp+arg_14] - mov es:[bx+2], dx - mov es:[bx], ax - les bx, reiidenconfig - mov ax, es:[bx+reiidenconfig_t.stage] - les bx, [bp+arg_18] - mov es:[bx], ax - xor ax, ax - jmp short loc_11715 -; --------------------------------------------------------------------------- - -loc_11712: - mov ax, 1 - -loc_11715: - pop si - pop bp - retf -sub_11678 endp - - -; =============== S U B R O U T I N E ======================================= - -; Attributes: bp-based frame - -sub_11718 proc far - push bp - mov bp, sp - push si - push ds - push offset aReiidenconfig ; "ReiidenConfig" - push 0Dh - push 5 - call resdata_exist - mov si, ax - or si, si - jz short loc_11735 - push si - call dos_free - -loc_11735: - pop si - pop bp - retf -sub_11718 endp - + extern _resident_stuff_get:proc main_12_TEXT ends ; =========================================================================== @@ -16016,7 +15841,7 @@ loc_13313: cwd idiv bx shl dx, 2 - les bx, reiidenconfig + les bx, _reiidenconfig add bx, dx mov eax, dword_34A5E mov es:[bx+reiidenconfig_t.bonus_per_stage], eax @@ -16521,7 +16346,7 @@ loc_13792: idiv bx dec ax add ax, ax - les bx, reiidenconfig + les bx, _reiidenconfig add bx, ax mov ax, word ptr _continues_total mov es:[bx+reiidenconfig_t.continues_per_scene], ax @@ -16619,7 +16444,7 @@ var_2 = word ptr -2 mov word ptr [bp+var_E], offset aUmx_0 ; "“Œ•ϋšθΛˆΩ“`@@" mov word ptr [bp+var_12+2], ds mov word ptr [bp+var_12], offset aHiscore ; "HISCORE" - mov al, byte_34A30 + mov al, _rank cbw mov bx, ax cmp bx, 3 @@ -16774,7 +16599,7 @@ s1 = byte ptr -32h enter 42h, 0 push si - mov al, byte_34A30 + mov al, _rank cbw mov bx, ax cmp bx, 3 @@ -18369,7 +18194,7 @@ stream = dword ptr -4 push offset aHiscore_0 ; "HISCORE" mov cx, 8 call SCOPY@ - mov al, byte_34A30 + mov al, _rank cbw mov bx, ax cmp bx, 3 @@ -18651,7 +18476,7 @@ loc_148F9: push 0 call sub_FA43 add sp, 0Ah - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 lea dx, [bp+var_D0] @@ -18669,7 +18494,7 @@ loc_14942: push 0 call sub_FA43 add sp, 0Ah - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 lea dx, [bp+var_D0] @@ -18919,7 +18744,7 @@ sub_14BD2 proc far push dx push ax pop eax - les bx, reiidenconfig + les bx, _reiidenconfig assume es:nothing mov es:[bx+reiidenconfig_t.hiscore], eax call sub_146BA @@ -25241,7 +25066,7 @@ loc_1833B: mov bx, si imul bx, 0Ah mov [bx+539Ah], ax - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.p_value], 59999 jnb short loc_18368 cmp es:[bx+reiidenconfig_t.p_value], 10000 @@ -25254,17 +25079,17 @@ loc_1835D: mov ax, 2710h loc_18360: - les bx, reiidenconfig + les bx, _reiidenconfig add es:[bx+reiidenconfig_t.p_value], ax loc_18368: - les bx, reiidenconfig + les bx, _reiidenconfig cmp es:[bx+reiidenconfig_t.p_value], 60000 jb short loc_1837A mov es:[bx+reiidenconfig_t.p_value], 65530 loc_1837A: - les bx, reiidenconfig + les bx, _reiidenconfig movzx eax, es:[bx+reiidenconfig_t.p_value] add _score, eax call sub_1889C @@ -25408,7 +25233,7 @@ sub_1843D endp sub_18456 proc far push bp mov bp, sp - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.p_value], 0 pop bp retf @@ -25471,7 +25296,7 @@ loc_184D3: push ss lea ax, [bp+var_6] push ax - les bx, reiidenconfig + les bx, _reiidenconfig push es:[bx+reiidenconfig_t.p_value] push 5 call sub_1FF8A @@ -25698,7 +25523,7 @@ var_4 = dword ptr -4 enter 8, 0 push si mov [bp+var_4], 0F4240h - les bx, reiidenconfig + les bx, _reiidenconfig mov eax, es:[bx+reiidenconfig_t.hiscore] mov [bp+var_8], eax cmp eax, _score @@ -25821,7 +25646,7 @@ loc_18778: add sp, 12h mov eax, _score mov dword_35ABF, eax - les bx, reiidenconfig + les bx, _reiidenconfig mov es:[bx+reiidenconfig_t.hiscore], eax loc_187A3: @@ -26282,7 +26107,7 @@ loc_18B33: pop cx push 1 pushd 0 - les bx, reiidenconfig + les bx, _reiidenconfig pushd dword ptr es:[bx+reiidenconfig_t.hiscore] push 70027h pushd 100h @@ -27080,13 +26905,13 @@ loc_19124: push 1 call _graph_accesspage_func pop cx - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 mov bx, ax pushd dword ptr [bx+97h] push 270030h - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 mov bx, ax @@ -27124,13 +26949,13 @@ loc_19124: push 0 call _graph_accesspage_func pop cx - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 mov bx, ax pushd dword ptr [bx+97h] push 270030h - mov al, byte_34A30 + mov al, _rank cbw shl ax, 2 mov bx, ax @@ -27774,7 +27599,7 @@ loc_19670: push ax loc_19673: - mov al, byte_34A30 + mov al, _rank cbw pop dx cmp dx, ax @@ -28721,14 +28546,14 @@ arg_0 = word ptr 6 mov byte_34A59, 0 mov byte_34A57, 0 mov byte_39DB3, 40h - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_19E93 mov al, 0Fh jmp short loc_19EBC ; --------------------------------------------------------------------------- loc_19E93: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_19EA0 @@ -28737,7 +28562,7 @@ loc_19E93: ; --------------------------------------------------------------------------- loc_19EA0: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_19EAD @@ -28746,7 +28571,7 @@ loc_19EA0: ; --------------------------------------------------------------------------- loc_19EAD: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_19EBA @@ -30858,7 +30683,7 @@ include th01_reiiden_2.inc .data -byte_34A30 db 1 +_rank db 1 byte_34A31 db 1 _bombs db 1 unk_34A33 db 2 @@ -31359,7 +31184,8 @@ include libs/master.lib/rand[data].asm db 8 db 3 db 20h -aReiidenconfig db 'ReiidenConfig',0 +public _res_id +_res_id db 'ReiidenConfig',0 unk_355EC db 0 dd 0 db 0 @@ -34828,7 +34654,8 @@ include libs/master.lib/keystart[bss].asm dd ? dd ? dd ? -reiidenconfig dd ? +public _reiidenconfig +_reiidenconfig dd ? unk_391A0 db ? ; dd ? dd ? diff --git a/th01_reiiden_2.inc b/th01_reiiden_2.inc index f9fdc41a..01e3d3e5 100644 --- a/th01_reiiden_2.inc +++ b/th01_reiiden_2.inc @@ -1218,7 +1218,7 @@ loc_1BBD3: mov word_398B6, 1 mov word_398E8, 1 mov word_3991A, 1 - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz loc_1DFFC @@ -1253,7 +1253,7 @@ loc_1BBD3: push offset unk_37635 call sub_30368 add sp, 24h - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz loc_1DFFC @@ -1268,7 +1268,7 @@ loc_1BC8C: mov word_398B2, 1 mov word_398E4, 1 mov word_39916, 1 - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz loc_1DFFC @@ -1412,14 +1412,14 @@ loc_1BE24: mov byte ptr word_39E14+1, 0 mov word_3984E, 4 mov word_39880, 3 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1BE6D mov ax, 15Eh jmp short loc_1BE9A ; --------------------------------------------------------------------------- loc_1BE6D: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1BE7B @@ -1428,7 +1428,7 @@ loc_1BE6D: ; --------------------------------------------------------------------------- loc_1BE7B: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1BE89 @@ -1437,7 +1437,7 @@ loc_1BE7B: ; --------------------------------------------------------------------------- loc_1BE89: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1BE97 @@ -1645,14 +1645,14 @@ loc_1C02D: call sub_EB10 add sp, 4 call sub_232A4 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1C097 mov ax, 8 jmp loc_1D84C ; --------------------------------------------------------------------------- loc_1C097: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1C0A6 @@ -1661,7 +1661,7 @@ loc_1C097: ; --------------------------------------------------------------------------- loc_1C0A6: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1C0B5 @@ -1670,7 +1670,7 @@ loc_1C0A6: ; --------------------------------------------------------------------------- loc_1C0B5: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1C0C4 @@ -2031,14 +2031,14 @@ loc_1C3EB: mov ax, 190h sub ax, word ptr dword_3982A+2 mov word_39E0C, ax - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1C45B mov ax, 0Ch jmp short loc_1C488 ; --------------------------------------------------------------------------- loc_1C45B: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1C469 @@ -2047,7 +2047,7 @@ loc_1C45B: ; --------------------------------------------------------------------------- loc_1C469: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1C477 @@ -2056,7 +2056,7 @@ loc_1C469: ; --------------------------------------------------------------------------- loc_1C477: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1C485 @@ -2370,14 +2370,14 @@ loc_1C741: call sub_EB10 add sp, 4 call sub_232A4 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1C7B1 mov ax, 0Ah jmp loc_1D84C ; --------------------------------------------------------------------------- loc_1C7B1: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1C7C0 @@ -2386,7 +2386,7 @@ loc_1C7B1: ; --------------------------------------------------------------------------- loc_1C7C0: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1C7CF @@ -2395,7 +2395,7 @@ loc_1C7C0: ; --------------------------------------------------------------------------- loc_1C7CF: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1C7DE @@ -2861,7 +2861,7 @@ loc_1CBE8: mov word_39E08, 2 mov word_3A6CA, 0 mov word_39E06, 0 - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jle loc_1CF52 @@ -2957,7 +2957,7 @@ loc_1CCF1: mov word_39E08, 4 mov word_3A6CA, 0 mov word_39E06, 0 - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jle loc_1CF52 @@ -3077,7 +3077,7 @@ loc_1CDD6: mov word_39E08, 6 mov word_3A6CA, 0 mov word_39E06, 0 - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1CF29 @@ -3094,7 +3094,7 @@ loc_1CDD6: add sp, 0Ch loc_1CF29: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1CF52 @@ -3986,14 +3986,14 @@ loc_1D808: jl short loc_1D7B1 mov ax, word_39DF8 mov word_39DF2, ax - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1D81F mov ax, 18h jmp short loc_1D84C ; --------------------------------------------------------------------------- loc_1D81F: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1D82D @@ -4002,7 +4002,7 @@ loc_1D81F: ; --------------------------------------------------------------------------- loc_1D82D: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1D83B @@ -4011,7 +4011,7 @@ loc_1D82D: ; --------------------------------------------------------------------------- loc_1D83B: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1D849 @@ -5808,14 +5808,14 @@ arg_A = word ptr 10h push bp mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_1E853 mov ax, [bp+arg_4] jmp short loc_1E87E ; --------------------------------------------------------------------------- loc_1E853: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_1E860 @@ -5824,7 +5824,7 @@ loc_1E853: ; --------------------------------------------------------------------------- loc_1E860: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_1E86E @@ -5833,7 +5833,7 @@ loc_1E860: ; --------------------------------------------------------------------------- loc_1E86E: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1E87C @@ -8328,7 +8328,7 @@ loc_1FEAB: imul word_34A84 cwde push eax - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_1FECC @@ -8851,7 +8851,7 @@ loc_202A6: inc word ptr es:[bx] cmp word ptr es:[bx], 18h jl loc_2036D - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_2031C @@ -10447,7 +10447,7 @@ loc_20F85: ; --------------------------------------------------------------------------- loc_20F8F: - cmp byte_34A30, 0 + cmp _rank, 0 jz short loc_20FA3 mov ax, si add ax, ax @@ -10474,7 +10474,7 @@ loc_20FBF: ; --------------------------------------------------------------------------- loc_20FC8: - cmp byte_34A30, 0 + cmp _rank, 0 jz short loc_20FDC mov ax, si add ax, ax @@ -13402,14 +13402,14 @@ arg_A = word ptr 10h push bp mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_2282C mov ax, [bp+arg_4] jmp short loc_22857 ; --------------------------------------------------------------------------- loc_2282C: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_22839 @@ -13418,7 +13418,7 @@ loc_2282C: ; --------------------------------------------------------------------------- loc_22839: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_22847 @@ -13427,7 +13427,7 @@ loc_22839: ; --------------------------------------------------------------------------- loc_22847: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_22855 @@ -14454,14 +14454,14 @@ loc_2302C: call sub_232A4 mov word_39852, 0 mov word_3A381, 0 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_23087 mov ax, 46h ; 'F' jmp short loc_230B4 ; --------------------------------------------------------------------------- loc_23087: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_23095 @@ -14470,7 +14470,7 @@ loc_23087: ; --------------------------------------------------------------------------- loc_23095: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_230A3 @@ -14479,7 +14479,7 @@ loc_23095: ; --------------------------------------------------------------------------- loc_230A3: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_230B1 @@ -14781,14 +14781,14 @@ arg_A = word ptr 10h push bp mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_232F6 mov ax, [bp+arg_4] jmp short loc_23321 ; --------------------------------------------------------------------------- loc_232F6: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_23303 @@ -14797,7 +14797,7 @@ loc_232F6: ; --------------------------------------------------------------------------- loc_23303: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_23311 @@ -14806,7 +14806,7 @@ loc_23303: ; --------------------------------------------------------------------------- loc_23311: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_2331F @@ -18461,14 +18461,14 @@ arg_A = word ptr 10h push bp mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_253B4 mov ax, [bp+arg_4] jmp short loc_253DF ; --------------------------------------------------------------------------- loc_253B4: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_253C1 @@ -18477,7 +18477,7 @@ loc_253B4: ; --------------------------------------------------------------------------- loc_253C1: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_253CF @@ -18486,7 +18486,7 @@ loc_253C1: ; --------------------------------------------------------------------------- loc_253CF: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_253DD @@ -22061,7 +22061,7 @@ loc_274FF: or dx, dx jnz short loc_27539 push 48h ; 'H' - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_2751B @@ -23863,14 +23863,14 @@ arg_A = word ptr 10h push bp mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_2866B mov ax, [bp+arg_4] jmp short loc_28696 ; --------------------------------------------------------------------------- loc_2866B: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_28678 @@ -23879,7 +23879,7 @@ loc_2866B: ; --------------------------------------------------------------------------- loc_28678: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_28686 @@ -23888,7 +23888,7 @@ loc_28678: ; --------------------------------------------------------------------------- loc_28686: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_28694 @@ -27885,7 +27885,7 @@ loc_2AAF6: push offset unk_37635 call sub_304B8 add sp, 28h - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 ; Hack (jl loc_2ABC0) @@ -27914,7 +27914,7 @@ loc_2AAF6: push offset unk_37635 call sub_304B8 add sp, 28h - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_2ABC0 @@ -31500,14 +31500,14 @@ arg_A = word ptr 10h loc_2CDD3: mov bp, sp mov dx, [bp+arg_6] - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_2CDE4 mov ax, [bp+arg_4] jmp short loc_2CE0F ; --------------------------------------------------------------------------- loc_2CDE4: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_2CDF1 @@ -31516,7 +31516,7 @@ loc_2CDE4: ; --------------------------------------------------------------------------- loc_2CDF1: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_2CDFF @@ -31525,7 +31525,7 @@ loc_2CDF1: ; --------------------------------------------------------------------------- loc_2CDFF: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 3 jnz short loc_2CE0D @@ -33101,7 +33101,7 @@ loc_2DBCA: add sp, 0Eh loc_2DBEC: - mov al, byte_34A30 + mov al, _rank cbw imul ax, 28h mov dx, 0F0h @@ -37549,14 +37549,14 @@ arg_A = word ptr 10h jl loc_304B4 cmp [bp+arg_6], 190h jg loc_304B4 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_303B1 xor ax, ax jmp short loc_303D0 ; --------------------------------------------------------------------------- loc_303B1: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_303BF @@ -37565,7 +37565,7 @@ loc_303B1: ; --------------------------------------------------------------------------- loc_303BF: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_303CD @@ -37578,7 +37578,7 @@ loc_303CD: loc_303D0: add si, ax - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, es:[bx+reiidenconfig_t.bullet_speed] imul si mov bx, 28h ; '(' @@ -37699,14 +37699,14 @@ arg_12 = word ptr 18h les bx, [bp+arg_0] cmp word ptr es:[bx+1068h], 64h ; 'd' jg loc_30634 - cmp byte_34A30, 0 + cmp _rank, 0 jnz short loc_304D9 xor ax, ax jmp short loc_304F8 ; --------------------------------------------------------------------------- loc_304D9: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 1 jnz short loc_304E7 @@ -37715,7 +37715,7 @@ loc_304D9: ; --------------------------------------------------------------------------- loc_304E7: - mov al, byte_34A30 + mov al, _rank cbw cmp ax, 2 jnz short loc_304F5 @@ -37728,7 +37728,7 @@ loc_304F5: loc_304F8: add si, ax - les bx, reiidenconfig + les bx, _reiidenconfig mov ax, es:[bx+reiidenconfig_t.bullet_speed] imul si mov bx, 28h ; '(' diff --git a/th02/maine_03.c b/th02/maine_03.c index 76dc72da..bf6c9b2d 100644 --- a/th02/maine_03.c +++ b/th02/maine_03.c @@ -9,7 +9,7 @@ char rank = RANK_NORMAL; char unused_1 = 0; -mikoconfig_t *mikoconfig; +resident_t *mikoconfig; char unused_2; char rem_lives; char rem_bombs; @@ -21,16 +21,16 @@ int unused_6; int pascal cfg_load(void) { - int mikoconfig_sgm; + int resident_sgm; file_ropen("huuma.cfg"); - file_seek(offsetof(huuma_cfg_t, mikoconfig_sgm), 0); - file_read(&mikoconfig_sgm, sizeof(mikoconfig_sgm)); + file_seek(offsetof(huuma_cfg_t, resident_sgm), 0); + file_read(&resident_sgm, sizeof(resident_sgm)); file_close(); - if(!mikoconfig_sgm) { + if(!resident_sgm) { return 0; } - mikoconfig = MK_FP(mikoconfig_sgm, 0); + mikoconfig = MK_FP(resident_sgm, 0); rem_lives = mikoconfig->rem_lives; rem_bombs = mikoconfig->rem_bombs; rank = mikoconfig->rank; diff --git a/th02/th02.h b/th02/th02.h index 2bd7a2bd..9e7f4f6f 100644 --- a/th02/th02.h +++ b/th02/th02.h @@ -146,7 +146,7 @@ typedef struct { char bombs; char lives; char perf; - int mikoconfig_sgm; + int resident_sgm; char debug; } huuma_cfg_t; #pragma option -a2 @@ -176,9 +176,9 @@ typedef struct { int skill; int unused_4; long score_highest; -} mikoconfig_t; +} resident_t; -extern mikoconfig_t *mikoconfig; +extern resident_t *mikoconfig; #define SHOTTYPE_COUNT 3