This is a sub-page of Kinniku Banzuke Vol.1: Ore ga Saikyou no Otoko da!.
0x19C00#
/* 100: sprite */
unsigned LgtMod : 1; /* LMD(light-mode) 0: with normal */
/* 1: with no normal */
unsigned MipMap : 1; /* MIP(mip-map) 0: no mip-map */
/* 1: mip-map */
unsigned PreSet : 1; /* PST(pre-set) 0: no preset */
/* 1: preset */
unsigned Tile : 1; /* TIL(tile) 0: with no tile texture */
/* 1: with tile texture */
unsigned Mime : 1; /* MIM(MIMe) 0: with no Built-in MIMe */
/* 1: with Built-in MIMe */
unsigned NoAssign: 5; /* No Assign (Not Used) */
} PRIM_FIELD;
#define PRIM_MSK 0x000007FF
#define GetPrimType( x ) (HWORD)( PRIM_MSK & x )
#define PRM_MIME 0x00000400 /* MIMe */
#define NO_BUILT 0x00000000 /* 0: with no Built-in MIMe */
#define BUILT 0x00000400 /* 1: with Built-in MIMe */
#define
0x22A00#
矢印 */
{DAT,0x10,0x10,0x00,0x20,0x0000,0xffe0,0x01},
{END,0x10,0x10,0x00,0x30,0x003c,0xffe0,0x01},
};
SPD_W t_setup1_spd[]={ /* 画面タイトル */
/* SET UP */
{DAT,0x10,0x18,0x70,0x30,0xff5f,0xffa4,0x10},
{DAT,0x10,0x18,0x58,0x00,0xff70,0xffa4,0x10},
{DAT,0x18,0x18,0x00,0x48,0xff7e,0xffa4,0x10},
{DAT,0x18,0x18,0x18,0x48,0xff94,0xffa4,0x10},
{END,0x10,0x18,0x30,0x30,0xffaa,0xffa4,0x10},
};
SPD_W t_setup2_spd[]={ /* 画面タイトル */
/* 設定の変更 */
{DAT,0x10,0x10,0xc0,0x00,0xffc2,0xffa8,0x02},
{DAT,0x10,0x10,0xd0,0x00,0xffd1,0xffa8,0x02},
{DAT,0x10,0x10,0xd0,0x20,0xffe0,0xffa8,0x02},
{DAT,0x10,0x10,0x80,0x10,0xffef,0xffa8,0x02},
{END,0x10,0x10,0x90,0x10,0xfffe,0xffa8,0x02},
};
SPD_W c_setup_spd[]={ /* カーソル */
/* レベル */
{DAT,0x30,0x10,0x80,0xa0,0xffa8,0xffe0,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffd8,0xffe0,0x10},
/* 実況 */
{DAT,0x28,0x10,0x80,0xa0,0xffa8,0xfff8,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffd0,0xfff8,0x10},
/* 音声 */
{DAT,0x28,0x10,0x80,0xa0,0xffa8,0x0010,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffd0,0x0010,0x10},
/* COM競技 */
{DAT,0x48,0x10,0x80,0xa0,0xffa8,0x0028,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xfff0,0x0028,0x10},
/* 設定終了 */
{DAT,0x40,0x10,0x80,0xa0,0xffa8,0x0040,0x10},
{END,0x10,0x10,0xf0,0xa0,0xffe8,0x0040,0x10},
};
SPD_W t_reco11_spd[]={ /* 画面タイトル */
/* RECORD */
{DAT,0x18,0x18,0x58,0x30,0xff5b,0xffa4,0x10},
{DAT,0x10,0x18,0x58,0x00,0xff70,0xffa4,0x10},
{DAT,0x18,0x18,0x28,0x00,0xff7d,0xffa4,0x10},
{DAT,0x18,0x18,0x18,0x30,0xff
0x2B200#
, /* 10 立ち~走り2 210 */
RUN2_STAND , /* 11 走り2~歩き 211 */
KAM_RUN , /* 12 構え~走り 212 */
RUN , /* 13 走り1 213 */
RUN2 , /* 14 走り2 214 */
RUN_FAUL , /* 15 走り~失敗 215 */
FUMIKIRI , /* 16 踏切踏込 216 */
JUMP , /* 17 ジャンプ 217 */
FUMIKIRI_KEIN , /* 18 踏切踏込 218 */
TOUCH , /* 19 手を付く 219 */
TOUCH2 , /* 20 手を付く 220 */
JUMP_OVER , /* 21 ジャンプ 飛び越し 221 */
JUMP_EX , /* 22 ジャンプ 前中 222 */
JUMP_FAULK , /* 23 ジャンプ~失敗く 223 */
JUMP_FAUL , /* 24 ジャンプ~失敗 224 */
JUMP_FAUL2 , /* 25 ジャンプ~失敗2 225 */
PUSH , /* 26 超す 226 */
PUSH2 , /* 27 超す 227 */
UMANORI , /* 28 馬乗り 228 */
MAGURO , /* 29 マグロちゃん 229 */
NOKEZORI , /* 30 のけぞり 審議用 230 */
GATSUN , /* 31 ガツン 231 */
FALL , /* 32 落下中 232 */
GATSUN_FALL , /* 33 落下~尻もち大 233 */ /* 欠番 */
GATSUN_FALL2 , /* 34 馬海苔~落下 234 */
LAND_OK , /* 35 着地 OK 235 */
LAND_SIN , /* 36 着地 審議 236 */
LAND_END , /* 37 着地 一回転 237 */
LAND_EX , /* 38 ケインスペシャルの着地 238 */
LAND_GON , /* 39 ゴン専用着地 239 */
PUSH_IKE , /* 40 池谷 超す 240 */
KAM_RUN_IKE , /* 41 池谷 構え 走り 241 */
RUN_IKE , /* 42 池谷 走り 242 */
FUMIKIRI_IKE , /
0x47E00#
,0x2a},
{DAT,0x10,0x10,0xe0,0xc0,0xffc0,0x0020,0x2a},
{DAT,0x10,0x10,0xa0,0xc0,0xffcf,0x0020,0x2a},
{DAT,0x10,0x10,0x10,0x90,0x0007,0x0020,0x2a},
{DAT,0x10,0x10,0xd0,0x90,0x0016,0x0020,0x2a},
{DAT,0x10,0x10,0xd0,0xa0,0x0025,0x0020,0x2a},
{END,0x10,0x10,0x20,0x70,0x0034,0x0020,0x2a},
};
SPD_W warn182_spd[]={
{DAT,0x10,0x10,0x40,0x50,0xffa2,0xfff8,0x2a},
{DAT,0x10,0x10,0x50,0x50,0xffb1,0xfff8,0x2a},
{DAT,0x10,0x10,0x60,0x50,0xffc0,0xfff8,0x2a},
{DAT,0x10,0x10,0x40,0x70,0x0015,0xfff8,0x2a
0x57600#
8,0x14},
{DAT,0x10,0x10,0x20,0x80,0xfffe,0xffa8,0x14},
{DAT,0x10,0x10,0xe0,0x60,0x0009,0xffa8,0x14},
{DAT,0x10,0x10,0x50,0x80,0x0013,0xffa8,0x14},
{DAT,0x10,0x10,0xd0,0x70,0x001d,0xffa8,0x14},
{DAT,0x10,0x10,0xd0,0x60,0x0028,0xffa8,0x14},
{DAT,0x10,0x10,0x50,0x80,0x0030,0xffa8,0x14},
{DAT,0x10,0x10,0x30,0x80,0x003b,0xffa8,0x14},
{DAT,0x10,0x10,0x80,0x60,0x0046,0xffa8,0x14},
{END,0x10,0x10,0xf0,0x70,0x0051,0xffa8,0x14},
};
SPD_W t_rnk3_26_spd[]={ // 画面タイトル
// HUSTLER
{DAT,0x10,0x10,
0x6A200#
/*「(選手名!)、勝負です!」バリエーション*/
AS_F18A, /*「狙うのは、(1番!)」*/
AS_F18B, /*「狙うのは、(1番!)」バリエーション*/
AS_F19A, /*「しっかりとボードを見据えております。」*/
AS_F19B, /*「さぁ、しっかりとボードを見据えております。」バリエーション*/
AS_F20A, /*「宣言通りにいくでしょうか!?」*/
AS_F20B, /*「宣言通りにいくでしょうか!?」バリエーション*/
AS_F21A, /*「思い切って行きましょう。」*/
AS_F21B, /*「思い切って行きましょう。」バリエーション*/
AS_F22A, /*「緊張感がこちらにも伝わってきます。」*/
AS_F22B, /*「緊張感がこちらにも伝わってきます。」バリエーション*/
AS_E82A, /*「さあ、宣言した通りにいきますでしょうか?」*/
AS_E82B, /*「さあ、宣言した通りにいくんでしょうか?」*/
/*前回成功していたら*/
AS_F40A, /*「連続ゲットなるか!?」*/
AS_F40B, /*「連続ゲットなるか!?」バリエーション*/
AS_F41A, /*「一段と集中できるか?」*/
AS_F41B, /*「一段と集中できるか?」バリエーション*/
AS_F42A, /*「完全に勢いに乗りました!(選手名!)」*/
AS_F42B, /*「完全に勢いに乗りました!(選手名!)」バリエーション*/
AS_F43A, /*「テクニックを充分に見せつけています!(選手名!)」*/
AS_F43B, /*「テクニックを充分に見せつけています!(選手名!)」バリエーション*/
AS_F44A, /*「前回に続いて取れるでしょうか!?」*/
AS_F44B, /*「前回に続いて取れるでしょうか!?」バリエーション*/
/*投げる、蹴る 瞬間*/
AS_E78, /*「さあ、どうだー!」*/
AS_E7
0x79C00#
FM_F06, /*「まだまだ余裕があります」*/
FM_F07, /*「自信に満ちております」*/
};
/*============================================================
==【挑戦開始】
============================================================*/
enum {
FM_G00a = (FM_F07+1), /*「さあ、スタートいたしました」*/
FM_G00b, /*「さあ、スタートいたしました」*/
FM_G01a, /*「助走を開始いたしました」*/
FM_G01b, /*「助走を開始いたしました」*/
FM_G02a, /*「厳しい表情のまま助走開始!」*/
FM_G02b, /*「厳しい表情のまま助走開始!」*/
FM_G03a, /*「さあ、矢のように飛び出します」*/
FM_G03b, /*「さあ、矢のように飛び出します」*/
FM_G04a, /*「飛び箱へ一直線!スタートです!」*/
FM_G04b, /*「飛び箱へ一直線!スタートです!」*/
FM_G05a, /*「軽やかにに飛び出します」*/
FM_G05b, /*「軽やかにに飛び出します」*/
FM_G06a, /*「さあ、筋肉の神風がいきます!」*/
FM_G06b, /*「さあ、筋肉の神風がいきます!」*/
FM_G07a, /*「さあ、助走スター
0x91400#
PWD1, /* パスワード表示(12) */
PWD2, /* △ボタン (13) */
GREC, /* 成績内容 (15段セット登録) */
/* (スライド形式は専用タイプ) */
/* プレート (14) */
/* 選手名 (15) */
/* 順位数字/ポイントP (16) */
/* ポイント/記録 (17) */
/* プレイヤーマーク (18) */
/* エディット選手名 (19) */
};
/*------------------------------------------------------------------------------*/
/* プロトタイプ宣言 */
/*------------------------------------------------------------------------------*/
#ifdef REAL_EXIST
#define EXT /* 実体モジュール存在 */
#else
#define EXT extern /* 外部モジュール参照 */
#endif
EXT void SSub_wkInit( void );
EXT void FaceSet( Uchar, Ushort, Uchar );
EXT Uchar FaceSio( Uchar, Uchar );
EXT void VerAllSet( Uchar, Uchar, Uchar, Uchar );
EXT void VerAllReset( Uchar, Uchar );
EXT void OptionSet( Uchar, Uchar, Uchar, Uchar );
EXT void OptSetSub( Uchar, Uchar, Uchar * );
EXT void ConSet( Uchar*, Uchar, Ush
0xC4200#
ネかなかの成績です。」*/
AD_K02, /*「得意なだけのことはあります。見事な成績です。」*/
AD_K03, /*「パワーをうまく使いこなしました。」*/
/*能力を活かしていない*/
AD_K04, /*「悔いが残る記録となりました。」*/
AD_K05, /*「意外な結末を迎えました。」*/
AD_K06, /*「得意競技でしたが記録を伸ばせませんでした。」*/
AD_K07, /*「大いに期待されていましたが、ここで終わりました。」*/
AD_K08, /*「パワーを活かすことができませんでした。」*/
AD_K09, /*「有り余るパワーを活かしきれませんでした。」*/
/*3段以下クリア*/
AD_K10, /*「あっけなく倒してしまいました。」*/
AD_K11, /*「いいところ無く終わりました。」*/
AD_K12, /*「苦しい結果となりました。」*/
AD_K13, /*「不本意な結果で終わりました。」*/
AD_K14, /*「思うように記録が伸びませんでした。」*/
/*4段以上クリア*/
AD_K15, /*「なかなか健闘しました。」*/
AD_K16, /*「魅せてくれました。」*/
AD_K17, /*「がんばりました。」*/
/*5段クリア*/
AD_K18, /*「惜しくもパーフェクトならず。」*/
/*6段クリア*/
AD_K19, /*「まさかの失敗でパーフェクトならず。」*/
};
/*============================================================
==段数、ハンマーの重さなど
============================================================*/
enum {
/*ハンマーの重さ*/
HD_D15 = (AD_K19+1), /*「1.5キロの」*/
HD_D2, /*「2キロの」*/
HD_D25, /*「2.5キロの」*/
HD_DS, /*「小さな」*/
HD_DM, /*「真ん中の」*/
HD_DL, /*「
0xE2200#
TRANS_STEP_S++;
}
break;
case 5: /*進藤モーション読み込み*/
if ( cd_file_load_NB(LOAD_ANA_SA) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 6: /*古舘部品テクスチャ読み込み*/
if ( cd_file_load_NB(LOAD_ANA_FP) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 7: /*進藤部品テクスチャ読み込み*/
if ( cd_file_load_NB(LOAD_ANA_SP) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
default:
TRANS_STEP_S = 0;
return 1;
}
return 0;
}
/*=======================================================
優勝シーン用2Dキャラ読み込み
アナウンサーのテクスチャとアドレスが被るので
アナウンサーは消えます
out: ==0 処理中 ==1 終了
=======================================================*/
int No1_Trans()
{
sp_w;
switch ( TRANS_STEP_S ){
case 0:
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
case 1:
if( cd_file_load_NB( LOAD_NO1_CSR ) ) {
tim_trans((TIM_W *)A_TIM_TABLE[0],0);
cd_read_step = CD_READ_INIT;
TRANS_STEP_S ++;
}
break;
default:
TRANS_STEP_S = 0;
return 1;
}
return 0;
}
/*********************************************
ここからは、自作CdRead関連
*********************************************/
static int pl_pos;
static int pl_oldpos;
static int pl_size;
static void* pl_buf;
volatile int pread_remain_sector;
static int pretry_cnt;
void P_cbcdready(u_char intr, u_char *result);
int P_cdStep = 0;
int
0xE9A00#
$(CFLAGS) $&.c -o$<
..\obj\gameinf.obj: gameinf.c $(HDRS)
$(CC) $(CFLAGS) $&.c -o$<
..\obj\sensyu.obj: sensyu.c $(HDRS)
$(CC) $(CFLAGS) $&.c -o$<
..\obj\no1_disp.obj: no1_disp.c $(HDRS)
$(CC) $(CFLAGS) $&.c -o$<
# ストラックアウト
..\obj\child00.obj: st00\child00.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_cam.obj: st00\so_cam.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_mot.obj: st00\so_mot.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_draw.obj: st00\so_draw.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_rep.obj: st00\so_rep.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_speak.obj: st00\so_speak.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_kmode.obj: st00\so_kmode.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\g2d_00.obj: st00\g2d_00.c $(HDRS)
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\g3d_00.obj: st00\g3d_00.c $(HDRS)
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
# キックターゲット
..\obj\child01.obj: st01\child01.c $(HDRS) st01\c1_all.h st01\c1_sys.h st01\c1_gbl.h st01\c1_type.h
$(CC) $(CFLAGS_CHILD01) st01\$&.c -o$<
..\obj\g2d_01.obj: st01\g2d_01.c $(HDRS)
$(CC) $(CFLAGS_CHILD01) st01\$&.c -o$<
..\obj\g3d_01.obj: st01\g3d_01.c $(HDRS)
$(CC) $(CFLAGS_CHILD01) st01\$&.c -o$<
..\obj\c1_gbl.obj: st01\c1_gbl.c $(HDRS) st01\c1_all.h st01\c1_sys.h st01\c1_gbl.h st01\c1_type.h
$(CC
0xF0C00#
す」*/
FK_C06, /*「あのゴールマウスを守のはゴールキーパーではなく、9枚のボードであります」*/
FK_C07, /*「コントロールを駆使しなくてはあのゴールマウスはこじ開けられません!」*/
FK_C08, /*「ゴールを守るあの9枚のボードを的確なコントロールで狙い撃て!」*/
FK_C09, /*「魔物の口を思わせるあのゴールマウスに見事シュートをきめてほしい!」*/
/*最後*/
FK_C10, /*「さあ、始まります、キックターゲットです!」*/
FK_C11, /*「ボードを打ち抜いて、ゴールネットを見事揺らしてほしい!」*/
FK_C12, /*「さあいよいよ登場!キックターゲットです!」
*/
};
/*============================================================
==競技前:アナウンサー交代時
============================================================*/
enum {
/*かみ*/
FS_D00 = (FK_C12+1), /*「さあ、いよいよ佳境に入ってまいりました」*/
FS_D01, /*「さあ、いよいよこれからが大詰めです」*/
FS_D02, /*「さあ、パーフェクトまであとわずかです」*/
FS_D03, /*「さあ、これからが本番であります」*/
0xF2600#
/*「アウトコース狙いです」*/
FS_G03, /*「2番です。2番のボードを狙っていきます」*/
FS_G04a, /*「2番」*/
FS_G04b, /*「真ん中高めです」*/
FS_G04c, /*「やや高めのコースを狙います」*/
FS_G05, /*「3番です。3番を狙っていきます」*/
FS_G06a, /*「3番」*/
FS_G06b, /*「右上を狙います」*/
FS_G06c, /*「インコースを攻めます」*/
FS_G07, /*「4番です。4番のボードを狙います」*/
FS_G08a, /*「4番」*/
FS_G08b, /*「左を狙う
0xF6600#
=球数(強調)
============================================================*/
enum {
FS_T01 = (FS_S12+1), /*「1球」*/
FS_T02, /*「2球」*/
FS_T03, /*「3球」*/
FS_T04, /*「4球」*/
FS_T05, /*「5球」*/
FS_T06, /*「6球」*/
FS_T07, /*「7球」*/
FS_T08, /*「8球」*/
FS_T09, /*「9球」*/
FS_T10, /*「10球」*/
FS_T11, /*「11球」*/
FS_T12, /*「12球」*/
FS_T13, /*「13球」*/
FS_T14, /*「
0xF8200#
/*「左上です。」*/
AS_E01B, /*「左上を狙っていきます」*/
AS_E42B, /*「アウトコース高め!」*/
AS_E02B, /*「真ん中やや高めです」*/
AS_E43B, /*「真ん中高め!」*/
AS_E03B, /*「右上です」*/
AS_E04B, /*「右上を狙います」*/
AS_E45B, /*「インコース高め!」*/
AS_E05B, /*「左を狙います」*/
AS_E46B, /*「アウトコース狙い!」*/
AS_E47B, /*「ど真ん中!」*/
AS_E48B, /*「ど真ん中を狙っていきます!」*/
AS_E08B, /*「右を狙います」*/
AS_E49B, /*「インコースを狙います!」*/
AS_E10B, /*「左下です」*/
AS_E11B, /*「左下を狙っていきます」*/
AS_E50B, /*「アウトコース低め!」*/
AS_E12B, /*「真ん中低め」*/
AS_E13B, /*「真ん中やや低めです」*/
AS_E51B, /*「低めに狙いを定めます!」*/
AS_E14B, /*「右下です」*/
AS_E15B, /*「右下を狙います」*/
AS_E52B, /*「インコース低め!」*/
/*キック用*/
/*かみ*/
AS_E58A, /*「左方向を」*/
AS_E59A, /*「右方向を」*/
AS_E60A, /*「上方向を」*/
AS_E61A, /*「下方向を」*/
AS_E62A, /*「左隅を」*/
AS_E63A, /*「右隅を」*/
AS_E64A, /*「左を」*/
AS_E65A, /*「右を」*/
AS_E66A, /*「上を」*/
AS_E67A, /*「下を」*/
AS_E68A, /*「左上を」*/
AS_E69A, /*「左下を」*/
AS_E70A, /*「右上を」*/
AS_E71A, /*「右下を」*/
AS_E72A, /*「高めを」*/
AS_E73A, /*「ど真ん中を」*/
AS_E74A, /*「低めを」*/
/*しも*/
AS_E58B,
0xFAA00#
3枚抜きー!」*/
AS_G39B, /*「3枚抜きー!」バリエーション*/
};
/*============================================================
==失敗時
============================================================*/
enum {
/*初失敗*/
AS_H07 = (AS_G39B+1), /*「初めての失敗!」*/
AS_H07B, /*「初めての失敗!」バリエーション*/
AS_H08, /*「初めての失敗です」*/
AS_H08B, /*「初めての失敗です」バリエーション*/
/*球数を付けるもの*/
AS_H10B, /*「これで」*/
AS_H09, /*「(*球)失敗!」*/
AS_H10, /*「(*球)失敗です!」*/
/*連続失敗*/
AS_H11, /*「あぁーっと、これも失敗!どうした(選手名!)」*/
AS_H11B, /*「これも失敗!どうした(選手名!)」*/
/*最後の1球失敗*/
AS_H12, /*「最後、外したー!」*/
/*汎用*/
AS_H13, /*「わずかに外れました!」*/
AS_H14B, /*「わずかに外れた!」*/
AS_H15, /*「駄目だ、外したー!」*/
AS_H16, /*「外れたー!」*/
AS_H16B, /*「外れたー!」バリエーション*/
AS_H17, /*「駄目だー!」*/
AS_H17B, /*「駄目だー!」バリエーション*/
AS_H18, /*「はずした、はずした、はずしたー!」*/
AS_H18C, /*「外した!外したー!」*/
AS_H18D, /*「はずしてしまったー」*/
AS_H18Z, /*「はずれ、はずれ、はずれ、はずれ、はずれー!」*/
/*フレーム*/
AS_H19, /*「フレームに当たった!」*/
AS_H20, /*「わずかにフレーム!」*/
AS_H20B, /*「わずかにフレーム!」バリエーション*/
AS_H21, /*「惜しい!
0x109E00#
======
//1999.01.18 中山
//BG表示関連
//===================================================================*/
#define BG_INF_MAX 4 /*BGハンドラの最大数(同時に表示できるBG面の最大数)*/
/*===================================================================*/
/* Macro define */
/*===================================================================*/
#define sys_w register SYS_W *s=&sys
#define sys0_w register SYS0_W *s0=&sys0
#define sp_w register SP_W *sp=&s
0x10C600#
阮シ文字コード(実コード保存) */
/* 7バイト+1バイト(補正用ダミー) */
u_long rec; /* 記録 (MAX値:(4+7)/ショットガンタッチ用) */
} GAMREC; /* 構造体サイズ [16バイト] */
typedef struct {
u_char Sousa; /* 0x0?:プレイヤー 0x1?:CPU (?は番号1-8) */
u_char Chara; /* キャラ番号 */
u_short Point[8]; /* 競技ポイント(8競技分) */
u_char Rank; /* 順位 */
u_char SO, KT, MB; /* 競技結果(ストラックアウト・キックターゲット・モンスターボックス) */
u_short ST; /* (ショットガンタッチ) */
u_ch
0x10FA40#
26; .scl 8; .type 0xc; .endef
.def v1; .val 27; .scl 8; .type 0xc; .endef
.def u2; .val 28; .scl 8; .type 0xc; .endef
.def v2; .val 29; .scl 8; .type 0xc; .endef
.def u3; .val 30; .scl 8; .type 0xc; .endef
.def v3; .val 31; .scl 8; .type 0xc; .endef
.def x0; .val 32; .scl 8; .tag .2fake; .size 8; .type 0x8; .endef
.def x1; .val 40; .scl 8; .tag .2fake; .size 8; .type 0x8; .endef
.def x2; .val 48; .scl 8; .tag .2fake; .size 8; .t-----------------------------------*/
/* ここから SIM990804 追加 k.shimizu */
/*----------------------------------------------------------------------------------*/
Uchar FirstTime; /* 起動後初回チェックフラグ */
Uchar EGS; /* 終了競技数保存エリア */
MODSEL ModSel; /* モードセレクト決定項目格納エリア */
/*----------------------------------------------------------------------------------*/
/* ここまで SIM990804 追加 k.shimizu */
/*----------------------------------------------------------------------------------*/
Uchar PAUSE_RES; /* ポーズ終了ステータス格納 SIM990811 */
Uchar ESW[8]; /* エントリーソート位置指定テーブル SIM990830 */
}SP_W;
/*--------------------------------------------------*/
/* アクチュエータ(振動子)情報 */
/*--------------------------------------------------*/
typedef struct {
unsigned char Vib; /* 振動数 */
short Time; /* 振動時間 */
} ACTU_INFO;
/*--------------------------------------------------*/
/* 振動パターン情報 */
/*----------------------
0x155A00#
T_F01H.vag
{ 0x00272000/0x800+VOFS01, (0x00001120+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01K.vag
{ 0x00273800/0x800+VOFS01, (0x000010b0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01O.vag
{ 0x00275000/0x800+VOFS01, (0x00001980+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01Q.vag
{ 0x00277000/0x800+VOFS01, (0x00001890+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01M.vag
{ 0x00279000/0x800+VOFS01, (0x00000e10+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01J2.vag
{ 0x0027a000/0x800+VOFS01, (0x000015a0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01B2.vag
{ 0x0027b800/0x800+VOFS01, (0x00000fa0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01K2.vag
{ 0x0027c800/0x800+VOFS01, (0x00001260+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_F01M2.vag
{ 0x0027e000/0x800+VOFS01, (0x00001d50+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01E.vag
{ 0x00280000/0x800+VOFS01, (0x00003180+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01P.vag
{ 0x00283800/0x800+VOFS01, (0x00003180+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01G.vag
{ 0x00287000/0x800+VOFS01, (0x00002020+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01D.vag
{ 0x00289800/0x800+VOFS01, (0x000018a0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01C.vag
{ 0x0028b800/0x800+VOFS01, (0x000018b0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01I.vag
{ 0x0028d800/0x800+VOFS01, (0x00001fb0+0x7ff)/0x800, FLG1 }, // ..\mr04\hatu\z_name\NT_J01J.vag
{ 0x0028f800/0x800+VOFS01, (0x000
0x160200#
Kobayashi *
* *
* date/name : 199X/XX/XX // *
* *
* revision : 0.00 *
* *
* Copyright : 199X KCE Sapporo Corp., All Rights Reserved *
* *
*===========================================================================*/
/************************************************************************
99.08.09 matsuo DEMOモーション用のアドレス ANIME_TABLE2[] 参照追加
99.07.28 nakayama SepOTの配列数を1個にして、アナウンサー用OT追加
99.07.23 nakayama アナウンサー用アドレス参照追加
99.07.13 nakayama チェック用アドレス参照追加
99.07.09 nakayama ムービー用アドレス参照追加
99.07.08 nakayama parameter[]を削除
99.07.07 nakayama 選手ワーク、エントリー用ワーク追加
99.06.03 nakayama 分割人間モデル用読み込みアドレスに関する記述を削除
99.05.19 nakayama 分割人間モデル用読み込みアドレス参照
HM_PARTS_TABLE[],HM_HEAD_TABLE[],
AM_PARTS_TABLE[],AM_HEAD_TABLE[]
************************************************************************/
#ifndef
#define
/************************************************************************
* include file declarations *
***********************************************************************/
/******************************************************************
0x30D780#
_C22C.vag
hatu\c\AM_C23B.vag
hatu\c\AM_C23C.vag
hatu\d\AM_D00A.vag
hatu\d\AM_D01A.vag
hatu\d\AM_D02A.vag
hatu\d\AM_D03.vag
0x414BA0#
tag .119fake; .size 36; .type 0x8; .endef
.def .120fake; .scl 10; .type 0x8; .size 32; .endef
0x484E00#
0x01},
{END,0x08,0x08,0x20,0x18,0xffd9,0x005c,0x01},
};
/* EXTRA */
SPD_W _EX0_spd[]={
/* EXTRA */
{DAT,0x08,0x08,0x20,0x18,0xff98,0xffc7,0x01},
{DAT,0x08,0x08,0xf8,0x60,0xffa3,0xffc7,0x01},
{DAT,0x08,0x08,0x78,0x18,0xffad,0xffc7,0x01},
{DAT,0x08,0x08,0x50,0x18,0xffb7,0xffc7,0x01},
{END,0x08,0x08,0x00,0x18,0xffc1,0xffc7,0x01},
};
SPD_W _EX1_spd[]={
/* EXTRA */
{DAT,0x08,0x08,0x20,0x18,0xff98,0xfffc,0x01},
{DAT,0x08,0x08,0xf8,0x60,0xffa3,0xfffc,0x01},
{DAT,0x08,0x08,0x78,0x18,0xff
0x489200#
x78,0x18,0x0038,0x0030,0x01},
{DAT,0x08,0x08,0x60,0x18,0x0042,0x0030,0x01},
{DAT,0x08,0x08,0x20,0x18,0x004c,0x0030,0x01},
{DAT,0x08,0x08,0x78,0x18,0x0058,0x0030,0x01},
{DAT,0x08,0x08,0x00,0x10,0x0062,0x0030,0x01},
{DAT,0x08,0x08,0x28,0x18,0x006c,0x0030,0x01},
{DAT,0x08,0x08,0xc0,0x78,0x0074,0x0030,0x01},
{DAT,0x08,0x08,0x40,0x18,0x007d,0x0030,0x01},
{DAT,0x08,0x08,0x58,0x18,0x0087,0x0030,0x01},
{DAT,0x10,0x08,0x08,0x10,0x0096,0x0030,0x01},
{DAT,0x08,0x08,0xc0,0x78,0x008f,0x0030,0x01},
{DAT,0x08,0x08,0x00,0x18,0x00a6,0x0030,0x01},
{DAT,0x08,0x08,0x50,0x18,0x00b0,0x0030,0x01},
/* 回戦 */
{DAT,0x10,0x10,0x20,0x20,0x0045,0x0037,0x01},
{END,0x10,0x10,0x30,0x20,0x0057,0x0037,0x01},
/* 決勝戦 */
{DAT,0x10,0x10,0x50,0x20,0x0038,0x0037,0x01},
{DAT,0x10,0x10,0x60,0x20,0x0048,0x0037,0x01},
{END,0x10,0x10,0x30,0x20,0x0058,0x0037,0x01},
/* 位決定戦 */
{DAT,0x08,0x10,0xf8,0xf0,0x0048,0x0037,0x01},
{DAT,0x08,0x10,0xf8,0xb8,0x0050,0x0037,0x01},
{DAT,0x10,0x10,0x50,0x20,0x005b,0x0037,0x01},
{DAT,0x10,0x10,0xb0,0x70,0x006c,0x0037,0x01},
{END,0x10,0x10,0x30,0x20,0x007e,0x0037,0x01},
};
SPD_W _TW4_spd[]={
{DAT,0x08,0x08,0x78,0x18,0x0038,0x0050,0x01},
{DAT,0x08,0x08,0x60,0x18,0x0042,0x0050,0x01},
{DAT,0x08,0x08,0x20,0x18,0x004c,0x0050,0x01},
{DAT,0x08,0x08,0x78,0x18,0x0058,0x0050,0x01},
{DAT,0x08,0x08,0x00,0x10,0x0062,0x0050,0x01},
{DAT,0x08,0x08,0x28,0x18,0x006c,0x0050,0x01},
{DAT,0x08,0x08,0xc0,0x78,0x0074,0x0050,0x01},
{DAT,0x08,0x08,0x40,0x18,0x007d,0x0050
0x48DA00#
x6f},
};
/* 競技変更 */
SPD_W Tgmchg1_spd[]={ /* 競技変更 A (タイトル) */
{DAT,0x10,0x10,0x80,0x70,0xffd5,0xffc6,0x61},
{END,0x10,0x10,0x60,0x70,0xffed,0xffc6,0x61},
};
SPD_W Tgmchg2_spd[]={ /* 競技変更 B (タイトル) */
{DAT,0x10,0x10,0x70,0xe0,0x001d,0xffc6,0x61},
{END,0x10,0x10,0x20,0x50,0x0005,0xffc6,0x61},
};
SPD_W gmSO_spd[]={ /* ストラックアウト */
{END,0x78,0x10,0x00,0x80,0xffc4,0xffd8,0x01},
};
SPD_W gmKT_spd[]={ /* キックターゲット */
{DAT,0x38,0x10,0x00,0x90,0xffc5,0xffe7,0x01},
{DAT,0x10,0x10,0x30,0xa0,0xffff,0xffe7,0x01},
{DAT,0x20,0x10,0x38,0x90,0x000f,0xffe7,0x01},
{END,0x10,0x10,0x68,0x80,0x002c,0xffe7,0x01},
};
SPD_W gmMB_spd[]={ /* モンスターボックス */
{DAT,0x40,0x10,0x00,0xd0,0xffb9,0xfff6,0x01},
{DAT,0x10,0x10,0x30,0xa0,0xfff6,0xfff6,0x01},
{END,0x40,0x10,0x40,0xd0,0x0007,0xfff6,0x01},
};
SPD_W gmST_spd[]={ /* ショットガンタッチ */
{DAT,0x28,0x10,0x00,0xe0,0xffc0,0x0005,0x01},
{DAT,0x10,0x10,0x68,0x80,0xffe8,0x0005,0x01},
{END,0x48,0x10,0x28,0xe0,0xfff8,0x0005,0x01},
};
SPD_W gmTW_spd[]={ /* タッグオブウォー */
{DAT,0x60,0x10,0x00,0xf0,0xffb6,0x0014,0x01},
{DAT,0x20,0x10,0x40,0xa0,0x0016,0x0014,0x01},
{END,0x10,0x10,0x30,0xa0,0x0033,0x0014,0x01},
};
SPD_W gmHL_spd[]={ /* ハスラー */
{END,0x40,0x10,0x00,0xa0,0xffe0,0x0023,0x01},
};
SPD_W gmDM_spd[]={ /* ダルマ */
{END,0x30,0x10,0x80,0x80,0xffe8,0x0032,0x01},
};
SPD_W gmBP_spd[]={ /* ブレインパニック */
{DAT,0x50,0x10,0xb0,0x80,0xffc8,0x0041,0x01},
{END,0x28,0x10,0x58,0x90,0x0018,0x0041,0x01},
};
/* 選手選択/対戦相手 */
SPD_W Tpnam
0x492600#
x10,0x00,0xd0,0xff97,0x0027,0x18},
{DAT,0x10,0x10,0x00,0xd0,0xff97,0x0038,0x18},
{END,0x10,0x10,0x00,0xd0,0xff97,0x0049,0x18},
};
SPD_W mae_nameA_spd[]={ /* テクスチャ A タイプ */
/* ポイント(1~8) */
{DAT,0x10,0x10,0xf0,0x00,0x003d,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x004c,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0058,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0064,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x003d,0xffe3,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x004c,0xffe3,0x05},
{DAT,0x10,0x10,0xf0,0x0
0x496400#
0,0x006b,0x0005,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x006b,0x0016,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x006b,0x0027,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x006b,0x0038,0x05},
{END,0x10,0x10,0xf0,0x00,0x006b,0x0049,0x05},
};
SPD_W rnum2_spd[]={ /* 記録数字 段(二桁) */
{DAT,0x10,0x10,0xf0,0x00,0x0066,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0xffd2,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0xffe3,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0xffe3,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0xfff4,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0xfff4,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0x0005,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0x0005,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0x0016,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0x0016,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0x0027,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0x0027,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0x0038,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0072,0x0038,0x05},
{DAT,0x10,0x10,0xf0,0x00,0x0066,0x0049,0x05},
{END,0x10,0x10,0xf0,0x00,0x0072,0x0049
0x49A600#
5 B */
(Ulong)verSO41_spd, /* 0x106 ストラックアウト タートル A */
(Ulong)verSO42_spd, /* 0x107 B */
(Ulong)verKT11_spd, /* 0x108 キックターゲット Ⅰ A */
(Ulong)verKT12_spd, /* 0x109 B */
(Ulong)verKT21_spd, /* 0x10a キックターゲット Ⅱ A */
(Ulong)verKT22_spd, /* 0x10b B */
(Ulong)verDM1_spd, /* 0x10c ダルマ */
(Ulong)verDM2_spd, /* 0x10d ダルマ7 */
(Ulong)verDM3_spd, /* 0x10e ダルマ7エース */
(Ulong)verBP11_spd, /* 0x10f ブ
0x4A3400#
----------------------------------------------------------------------*/
/* パラメータ */
/* dt : リプレイデータ本体ポインタ */
/* sz : リプレイデータ本体サイズ */
/*------------------------------------------------------------------------------*/
void g_RSinit( Uchar *dt, long sz )
{
sys_w;
wks = 0;
wkt = 0;
tno = 0;
blk = 0;
fst = 0;
timer = 0;
scur = 0;
// rs_step = 0;
rs_step = 7; /* ロードステップへ */
c_wk[0] = c_wk[1] = 0;
s_wk[0] = s_wk[1] = 0;
mcFileSet( 0x00, 2 );
mcInit();
mcDataGet( (u_char *)&s->OptDat, svOFS, svSIZ, svMAX, 5 );
mcRepDataGo( 0 ); /* リプレイデータ本体処理なし */
RPDT = dt;
RPSZ = sz;
EndInfo = 0;
Mbit = 0;
}
/*------------------------------------------------------------------------------*/
/* リプレイデータ セーブ処理 */
/*------------------------------------------------------------------------------*/
/* 戻り値 : 0(処理中)/1(処理終了) */
/*----------------------------------------------
0x4A8400#
/ 右-右1
setXY2( &sp->line, x1+8-2, y0, x1+8-2, y1+7 );
sp->line.r = 0x00; sp->line.g = 0x00; sp->line.b = 0x48;
break;
case 7: // 右-右2
setXY2( &sp->line, x1+8-1, y0, x1+8-1, y1+7 );
sp->line.r = 0x00; sp->line.g = 0x00; sp->line.b = 0x48;
break;
case 8: // 上-上
setXY2( &sp->line, x0+8-6, y0, x1+6, y0 );
sp->line.r = 0x28; sp->line.g = 0x50; sp->line.b = 0xd0;
break;
case 9: // 上-下
setXY2( &sp->line, x0+8-2, y0+3, x1+2, y0+3 );
sp->line.r = 0x00; sp->line.g = 0x68; sp->line.b = 0xa0;
break;
case 10: // 下-上
setXY2( &sp->line, x0+8-2, y1+4, x1+2, y1+4 );
sp->line.r = 0x00; sp->line.g = 0x68; sp->line.b = 0xa0;
break;
case 11: // 下-下
setXY2( &sp->line, x0+8-6, y1+7, x1+6, y1+7 );
sp->line.r = 0x00; sp->line.g = 0x00; sp->line.b = 0x48;
break;
}
sp->line.attribute = (step<2)? STP10P025:
(step<4)? STP05P05:
MODE16;
GsSortLine( &sp->line, &(SepOT[0].ot[sp->active_side]), Pri4 );
}
//
0x4AC410#
*/
// // return( 1 );
rs_step = 0;
nxtstp = 1;
/* ステータスセット */
sp->PAUSE_RES = (PAcpos[0]==0)? 0:0xff;
if( sp->PAUSE_RES == 0xff ) {
clr_local_func(); /* ゲーム側で必要なクリア */
set_class1_func(0); /* まつおさんリクエスト */
SD_call( SD_CTL_ALLOFF ); /* サウンド強制終了(念入りに!) */
/* おーばん君リクエストクリア */
if( NOWGAME == 1 ) { /* キックターゲットの時のみ */
sp->back_r = sp->back_g = sp->back_b = 0;
for( i=0; i<=0x0c; i++ ) {
s->classw0[i].kind = 0;
}
}
}
}
}
else {
if( PAcpos[0] == 2 ) { /* 競技変更へ */
// // rs_step = 20;
rs_step = 0;
nxtstp = 20;
nsiz = 0xff;
PAcpos[1] = 0;
}
else if( PAcpos[0] == 3 ) { /* 設定変更へ */
// // rs_step = 30;
rs_step = 0;
nxtstp = 30;
nsiz = 5;
PAcpos[1] = 0;
}
else { /* 選択終了 */
// // return( 1 );
rs_step = 0;
nxtstp = 1;
/* ステータスセット */
sp
0x4B0400#
}
}
}
else if( PAcpos[3] == 1 ) {
if( !SP_KUM ) {
if( !SP_OSA ) {
if( !SP_KON ) {
PAcpos[3] = 2;
}
else {
PAcpos[3] = 3;
}
}
else {
PAcpos[3] = 0;
}
}
}
else if( PAcpos[3] == 2 ) {
if( !SP_MAT ) {
if( !SP_KUM ) {
if( !SP_OSA ) {
PAcpos[3] = 3;
}
else {
PAcpos[3] = 0;
}
}
else {
PAcpos[3] = 1;
}
}
}
else if( PAcpos[3] == 3 ) {
if( !SP_KON ) {
if( !SP_MAT ) {
if( !SP_KUM ) {
PAcpos[3] = 0;
}
else {
PAcpos[3] = 1;
}
}
else {
PAcpos[3] = 2;
}
}
}
}
cls0 = SETCLS0( SELCUR );
cls0->yposi = PAcpos[3]*0x10;
}
else if( pad & P_LDOWN ) { /* 下 */
PAcpos[3] = (PAcpos[3]==3)? 0:(PAcpos[3]+1);
/* エディットキャラ選択チェック (判定順(1->2)重要!) */
if( keylr[0] == 2
0x4B4E00#
}
else {
if( SP_MAT ) {
PAcpos[4] = 2;
}
else {
PAcpos[4] = 3;
}
}
}
}
else if( (keylr[1]==3)&&(PAcpos[4]==1) ) {
if( SP_KUM ) {
PAcpos[4] = 1;
}
else {
if( SP_MAT ) {
PAcpos[4] = 2;
}
else {
if( SP_KON ) {
PAcpos[4] = 3;
}
else {
PAcpos[4] = 0;
}
}
}
}
else if( (keylr[
0x4B8A00#
#define PN(n) ((type)? SWK.ri[ TRT( (NOWGAME==4)? n:RRsrt[n] ) ].Point[NOWGAME]:TTL(n))
#define RC(n) SWK.ri[ TRT( (NOWGAME==4)? n:RRsrt[n] ) ]
#define EB(n) ((type&&(NOWGAME!=4))? RReb[ TRT(n) ]:entrybox[ TRT(n) ])
#define EB2(n) ((type&&(NOWGAME!=4))? RReb2[ TRT(n) ]:entrybox2[ TRT(n) ])
#define ENUM entry_num
static short yt8[] = { 0xffd2, 0xffe3, 0xfff4, 0x0005, 0x0016, 0x0027, 0x0038, 0x0049 };
static short yt4[] = { 0xffd2, 0xfff4, 0x0016, 0x0038 };
static short yt2[] = { 0xfff4, 0x0027 };
static void g_AllChkSet( Uchar type )
{
sys_w;
sp_w;
Uchar i, c, Acnt, Abit, aa, bb, lp,rp;
CLASS0_W *cls0;
SPD_W *spdA, *spdB;
/* タッグオブウォー以外でランキング時 */
if( type && (NOWGAME!=4) ) {
g_RRSort();
}
/* テクスチャページAのキャラを抽出 */
Acnt = Abit = 0;
for( i=0; i<ENUM; i++ ) {
/* ケイン・おさる・金剛・エディット */
if( (EB(i)==8)||(EB(i)==10)||(EB(i)==13)||(EB(i)==14)||(EB(i)==15) ) {
Acnt++;
Abit |= (1<<i);
}
}
/* A 選手出力人数決定 */
cls0 = SETCLS0( MAE_NAMEA );
spdA = (SPD_W *)cls0->chara;
for( i=0; i<5; i++ ) {
spdA[31+7*i].ccode = DAT; /* 初期化 */
}
spdA[31+7*Acnt].ccode = END; /* ENDセット */
/* B 選手出力人数決定 */
cls0 = SETCLS0( MAE_NAMEB );
spdB = (SPD_W *)cls0->chara;
for( i=0; i<8; i++ ) {
spdB[7+7*i].ccode = DAT; /* 初期化 */
}
spdB[7+7*(ENUM-Acnt)].ccode = END; /* ENDセット */
/* 選手名セット */
aa = bb = 0;
cls0 = SETCLS0( MAE_NAM
0x4BCE00#
サれて、ボールは大きく外れて的の外側をとおります」*/
FS_K36, /*「残念ながらボールは的を外れてその外側を通過します」*/
FS_K37, /*「ボールが向かったその先にはボードがありません」*/
FS_K38, /*「狙いが狂ったか、ボールは大きくはずれて枠の外です」*/
/*失敗・抜いた穴通過*/
FS_K39, /*「惜しくも、ボールはすでに抜かれた穴をとおります」*/
FS_K40, /*「枠の中には入っていましたが、そこにボードはすでにありません」*/
FS_K41, /*「残念ですが、そこはすでに打ち抜いておりま
0x4C1600#
AnaDispSwitch
80017CF8 AnaTexAnm
80017C84 AnaTimTrans
80014C38 AnaTrans
80017754 Ana_Pose_Set
80022FBC ApplyMatrixLV
800235CC ApplyMatrixSV
80013AC8 AutoShock
8002C280 AverageSZ3
8002C290 AverageSZ4
80018800 BackColorSet
80073E68 BgInf
80019ADC Bg_Clear
80084698 CChannel
8004EEFC CD_cbread
8004EF98 CD_cbready
8004EF94 CD_cbsync
8004EFB1 CD_com
8004EFB8 CD_comstr
8003A1F0 CD_cw
8003AA74 CD_datasync
8004EF9C CD_debug
8003A684 CD_flush
8003AB
0x4C4200#
te02
800A57C8 InitG2dRepPlate02_CTRL_ACT
800A57F0 InitG2dRepPlate02_CTRL_NOP
800A6A24 InitG2dRepPlate03
80098A94 InitG2dRepPlate04
8009E750 InitG2dRepPlate05
800943F8 InitG2dRepPlate06
80026EA4 InitGeom
8001E09C InitHeap
8001AC64 InitOpd
8001AD5C InitOpdAnm
80041CF0 InitPAD
80041F44 InitPAD2
80019E00 InitWork
80012CA0 Init_Demo
80012BA0 Init_Trans
800A1ED4 InqBehindStep
8003CABC InterruptCallback
800C376C JunSet
800A5034 KAngle_Draw
800A4E5C KAngle_Init
8009D640 KBall_Arrive
8009B198 KBall_Culc
8009CA84 KBall_Hboard
8009D868 KBall_Himpact
8009B114 KBall_Init
8009D590 KBall_Kage
8009B378 KBall_Move
8009B044 KBall_Nxyz
8009D818 KBall_Rate
8009D990 KBall_Rculc
8009D504 KBall_Rest
8009AD78 KBall_Scdx
8009AE5C KBall_Sddy
8009ACCC KBall_Sdx
8009ADE8 KBall_Sdy
8009ABEC KBall_Spin
8009AF18 KBall_Swdir
8009AFEC KBall_Swdz
800A1210 KBoard_Change
800A1290 KBoard_Declare
800A141C KBoard_Index
800A0A84 KBoard_Mplay
800A0854 KBoard_Mset
800A0BC8 KBoard_Numset
800A1374 KBoard_Reset
800A1084 KBoard_Sprt
800A070C KBoard_System
801EE0EC KCdRead
801EE154 KCdReadSync
800964D8 KCpu_Aboard
80096874 KCpu_Angle
800956F4 KCpu_Auto
80096E2C KCpu_Dir
8009654C KCpu_Minit
80096544 KCpu_Score
80096F18 KCpu_Skip
800A0644 KDemo_Play
800A057C KDemo_Set
800A6EAC KEgo_Draw
800A6D60 KEgo_Init
800A4D88 KGrass_Draw
80096444 KInit_Board
80096288 KInit_Goal
800A7
0x4CAE00#
_KT_N1_spd
80184464 _KT_N2_spd
80184470 _KT_N3_spd
8018447C _KT_N4_spd
80084520 _LC
80183240 _MB0_spd
801832C4 _MB1_spd
80183348 _MB2_spd
801833CC _MB3_spd
80183450 _MB4_spd
80184488 _MB_N0_spd
801844A0 _MB_N1_spd
801844B8 _MB_N2_spd
801844D0 _MB_N3_spd
801844E8 _MB_N4_spd
80182A48 _PR0_spd
80182AA8 _PR1_spd
80182B08 _PR2_spd
80182B68 _PR3_spd
80182BC8 _PR4_spd
80181F80 _SB0_spd
80182010 _SB1_spd
801820A0 _SB2_spd
80182130 _SB3_spd
80182
0x4CEE00#
child04_dtors_objend
800ACC78 _pchild04_dtors_org
800ACC78 _pchild04_dtors_orgend
00000000 _pchild04_dtors_size
80090000 _pchild04_obj
800ACC78 _pchild04_objend
80090000 _pchild04_org
800ACC78 _pchild04_orgend
80090004 _pchild04_rdata_obj
80090384 _pchild04_rdata_objend
80090004 _pchild04_rdata_org
80090384 _pchild04_rdata_orgend
00000380 _pchild04_rdata_size
800A8F04 _pchild04_sbss_obj
800A8F04 _pchild04_sbss_objend
800A8F04 _pchild04_sbss_org
800A8F04 _pchil
0x4D6C00#
_talk_syoukai
8009D6A0 mbvw_init
8009D7A8 mbvw_move
8009D84C mbvw_play
8009DA34 mbvw_replay
8009D6B4 mbvw_set
80170764 mcAction
801718D8 mcAutoCheck
80170EC0 mcDataGet
80170EF0 mcDataSet
80170DE8 mcExistChk
80170D70 mcFileExist
8017020C mcFileSet
80170D18 mcGetBlocks
801706BC mcInit
801718E4 mcRepBufGet
80171900 mcRepDataGo
80170E58 mcSetCsum
80170E88 mcTestCsum
801706F0 mcWaitResult
8017FD30 mcard_spd
800A651B md_step
8001EB9C memchr
8001EC1C memcmp
8001E2BC memcpy
8001EBAC memmove
8017D234 memo01
8017D3D4 memo02
8017D574 memo03
80019B54 memory_set
8001E2CC memset
80045F78 menue1_spd
80045FA8 menue2_spd
800C452C mess
80181A7C meswin_spd
800508E4 mid_dagl
800508C8 mid_ddr
800508E8 mid_ddst
80099524 miss_move
800508E6 mod_dagl
800508D8 mod_ddr
800508F0 mod_ddst
8009A1E8 moj_kig1_spd
8009A254 moj_kig2_spd
8009A2C0 moj_kig3_spd
8009A338 moj_kig4_spd
8009A3C8 moj_kig5_spd
800
0x4E3A00#
00845D0 GsBACKC
800845D4 GsLIOFF
800845D8 GsLMODE
800845DC GsLIGNR
800845E0 GsTRATE
800845E4 GsZOVER
800845E8 GsOUT_PACKET_P
800845EC GsMATE_C
800845F0 GsDISPON
800845F4 GsTON
800845F8 GsNDIV
80084600 USTACK
80084680 Stframe_no
80084684 Stsector_offset
80084688 StRgb24
8008468C StCdIntrFlag
80084690 StCHANNEL
80084694 StStartFrame
80084698 CChannel
8008469C StFinalSector
800846A0 StEmu_Idx
800846A4 StRingIdx1
800846A8 StRingIdx2
800846AC StRingIdx3
800846B0 StEmu_Addr
800846B4 StEndFrame
800846B8 StSTART_FLAG
800846BC StRingBase
800846C0 StRingAddr
800846C4 StRingSize
800846F8 StMode
80084710 StFunc1
80084714 StFunc2
80084728 GlobalCallback
800849D8 _startTime
800849DC _waitTime
80084DF2 __bss_orgend
80084DF2 __bss_objend
80084E30 _bss_orgend
80084E30 _bss_objend
80090000 _select_org
80090000 _select_obj
80090000 _ranking_org
80090000 _ranking_obj
80090000 _pchild07_org
80090000 _pchild07_obj
80090000 _pchild06_org
80090000 _pchild06_obj
80090000 _pchild05_org
80090000 _pchild05_obj
80090000 _pchild04_org
80090000 _pchild04_obj
80090000 _pchild03_org
80090000 _pchild03_obj
80090000 _pchild02_org
80090000 _pchild02_obj
80090000 _pchild01_org
80090000 _pchild01_obj
80090000 _pchild00_org
80090000 _pchild00_obj
80090000 SELECT_ADDRESS
80090000 RANKING_ADDRESS
80090000 CHILD_ADDRESS
80090004 bp_moji_t_KM
80090004 _select_rdat
0x4E7200#
ice
80099F90 rank_pla4_spd
80099F94 KView_Sdemo
80099FE0 PC_DrmHit
8009A01C VerAllSet
8009A038 rank_pla5_spd
8009A0D4 rank_pla6_spd
8009A0DC mb_spr_rep_eff
8009A114 KView_Replay
8009A128 rank_pla7_spd
8009A170 rank_pla8_spd
8009A1E8 moj_kig1_spd
8009A254 moj_kig2_spd
8009A294 init_mat
8009A2C0 moj_kig3_spd
8009A300 set_dummy_ballrot
8009A31C VerAllReset
8009A338 moj_kig4_spd
8009A3C8 moj_kig5_spd
8009A428 moj_kig6_spd
8009A494 moj_kig7_spd
8009A500 moj_kig8_spd
8009A51C OptionSet
8009A558 sgt_Opening_init
8009A56C jun_pnt1_spd
8009A584 jun_pnt2_spd
8009A59C jun_pnt3_spd
8009A5B4 jun_pnt4_spd
8009A5CC jun_pnt5_spd
8009A5E4 jun_pnt6_spd
8009A5FC jun_pnt7_spd
8009A614 jun_pnt8_spd
8009A61C sgt_Opening_main
8009A62C L1R1_spd
8009A644 LR_ya_spd
8009A644 KView_Position
8009A65C plmark_spd
8009A668 plname_spd
8009A6BC plplate_spd
8009A6D4 t_plr1_spd
8009A71C t_plr2_spd
8009A770 r_data1_spd
8009A788 KLight_Switch
8009A7AC r_data2_spd
8009A7E8 r_data3_spd
8009A824 r_data4_spd
8009A824 KLight_System
8009A858 InitG2dRepPlate00
8009A860 r_c_data_spd
8009A8AC OptSetSub
8009A8C0 r_t_data1_spd
8009A8FC round_camera
8009A938 r_t_data2_spd
8009A944 KLight_Type
8009A980 r_font02_1_spd
8009AA04 r_font02_2_spd
8009AA34 save_data1_spd
8009AA50 KLight_Ftype
8009AA7C ConSet
8009AB6C G2dReplayCtrl00
8009ABEC KBall_Spin
8009AC80 save_data2_spd
8009AC8C
0x4F3A00#
DFC mae_SO_spd
80185E68 mae_KT_spd
80185EE0 mae_MB_spd
80185F58 mae_STA_spd
80185FE8 mae_STB_spd
80186000 mae_TWA_spd
80186084 mae_TWB_spd
8018609C mae_HL_spd
801860F0 mae_DM_spd
80186138 mae_BP_spd
801861B0 plt1_spd
80186210 plt2_spd
80186270 plt3_spd
801862D0 rtan1_spd
80186330 rtan2_spd
80186390 rtan3_spd
80186450 rtan4_spd
801864B0 rtan5_spd
80186510 rtan6_spd
80186570 rnum1_spd
801865D0 rnum2_spd
80186690 rnum3_spd
80186810 rnum4_spd
80186870 e_ninA_spd
8018687C e_ninB_spd
801868A0 e_danA_spd
801868B8 e_danB_spd
801868DC e_kaiA_spd
801868E8 e_kaiB_spd
80186918 e_tugA_spd
8018693C e_tugB_spd
80186984 e_tugB2_spd
801869D8 e_tugB3_spd
80186A14 gmod_spd
80186F40 _memcard_sdata_orgend
80186F40 _memcard_sdata_org
80186F40 _memcard_sdata_objend
80186F40 _memcard_sdata_obj
80186F40 _memcard_sbss_orgend
80186F40 _memcard_sbss_org
80186F40 _memcard_sbss_objend
80186F40 _memcard_sbss_obj
80186F40 _memcard_data_orgend
80186F40 _memcard_data_objend
80186F40 _memcard_bss_org
80186F40 _memcard_bss_obj
8018B26D _memcard_bss_orgend
8018B26D _memcard_bss_objend
8018B270 _memcard_orgend
8018B270 _memcard_objend
8018B270 _memcard_dtors_orgend
8018B270 _memcard_dtors_org
8018B270 _memcard_dtors_objend
8018B270 _memcard_dtors_obj
8018B270 _memcard_ctors_orgend
8018B270 _memcard_ctors_org
8018B270 _memcard_ctors_objend
8018B270 _memcard_ctors_obj
80190000 F
0x509A00#
ff
/* スプライト定義 */
#define STP05P05 0<<28|1<<30
#define STP10P10 1<<28|1<<30
#define STP10M10 2<<28|1<<30
#define STP10P025 3<<28|1<<30
#define MODE16 0<<24
#define MODE256 1<<24
#define MOJI_NUM 10
#define TPAGE_SCORE 6
#define TPAGE_SFLAG 6
#define TPAGE_FADE 6
#define TPAGE_NAME 7
#define TPAGE_MESSAGE 0x17
l_data[NUM][2] ) /*年齢*/
#define PD_JOB(NUM) ( pl_data[NUM][3]/10 ) /*職業*/
#define PD_BLOOD(NUM) ( pl_data[NUM][3]%10 ) /*血液
0x51EE00#
========================================
// 選手情報設定
//------------------------------------------------------------------------------
// パラメータ
// pos : 選択位置番号
//==============================================================================
static void CInfoSet( Uchar pos )
{
sys_w;
CLASS0_W *cls0;
cls0 = SETCLS0( PNAME ); // 選手名
cls0->kind = 1;
NameSet( PNAME, pos, 0xff );
cls0 = SETCLS0( GAGE1 ); // スタミナ
cls0->kind = 1;
GageSet( GAGE1, pos, 0 );
cls0 = SETCL
0x530200#
Ushort sno, Uchar type, Uchar wcnt, Uchar hcnt, short ypos )
{
sys_w;
Uchar result = 0;
CLASS0_W *cls0;
SPD_W *spd;
switch( type ) {
case 0:
set2dN( cno, sno, MODE16, 0, ypos, 0x07, 0x28, 1, PR1 );
cls0 = SETCLS0( cno );
spd = (SPD_W *)cls0->chara;
SetLineBox( spd[0].offset_x, spd[0].offset_y+ypos, spd[3].offset_x, spd[3].offset_y+ypos );
w_a = 0;
w_b = 0;
c_wk[0] = c_wk[1] = 0;
result = 1;
break;
case 1:
cls0 = SETCLS0( cno );
spd = (SPD_W *)cls0->chara;
if( w_a < wcnt ) {
spd[0].offset_x -= 16/2;
spd[1].offset_x += 16/2;
spd[2].offset_x -= 16/2;
spd[3].offset_x += 16/2;
w_a+=4/2;
}
if( (w_a >= wcnt) && (w_b < hcnt) ) {
spd[0].offset_y -= 8/2;
spd[1].offset_y -= 8/2;
spd[2].offset_y += 8/2;
spd[3].offset_y += 8/2;
w_b+=2/2;
}
SetLineBox( spd[0].offset_x, spd[0].offset_y+ypos, spd[3].offset_x, spd[3].offset_y+ypos );
result = ( (w_a>=wcnt)&&(w_b>=hcnt) )? 1:0;
break;
case 2:
cls0 = SETCLS0( cno );
if( (w_a==0) && (w_b==0) ) {
cls0->kind = 0;
result = 1;
break;
}
spd = (SPD_W *)cls0->chara;
if( (w_b>0) ) {
spd[0].offset_y += 8/2;
spd[1].offset_y += 8/2;
spd[2].offset_y -= 8/2;
spd[3].offset_y -= 8/2;
w_b-=2/2;
}
if( (w_b == 0) && (w_a > 0) ) {
spd[0].offset_x += 16/2;
spd[1].offset_x -= 16/2;
spd[2].offset_x += 16/2;
spd[3].offset_x -= 16/2;
w_a-=4/2;
}
SetLineBox( spd[0].offset_x, spd[0].offset_y+ypos, spd[3].offset
0x53FC00#
{
case 0: /* ストラックアウト(4種類) */
case 7: /* ブレインパニック(4種類) */
if( key&P_TR ) {
res = (pos<3)? (pos+1):0;
}
else if( key&P_TL ) {
res = (pos>0)? (pos-1):3;
}
break;
case 1: /* キックターゲット(2種類) */
res = 1^pos;
break;
case 6: /* ダルマ(3種類) */
if( key&P_TR ) {
res = (pos<2)? (pos+1):0;
}
else if( key&P_TL ) {
res = (pos>0)? (pos-1):2;
}
break;
default:
res = 0;
}
return( res );
}
/*==============================================================================*/
/* 選手プロフィール (テスト用ダミー) */
/*==============================================================================*/
static void Profile( void )
{
sp_w;
switch( op_step ) {
case 0:
op_step++;
break;
case 1:
op_step++;
break;
case 2: /* キー入力監視 */
if( JOYTRG0 & P_RDOWN ) {
op_mod_step = OCOM; /* 共通処理へ */
op_step = OPT_SET; /* スライドアウトへ */
OptSts = TOPMENU; /* トップメニューへ */
curpos = 7;
SD_call( SD_CANCE
0x548600#
efine BGM_CALL (1) /* BGM 0:OFF 1:ON */
#define MOVIE_ON (1) /* 操作説明ムービー 0:OFF 1:ON */
#include "m_sys.h"
#include "m_com.h"
#include "m_sel.h"
#include <libcd.h> /* CdReset() */
#define BG_U_SP (4/2) // BG_U スライドインスピード
#define BG_U_MV (BG_U_SP*24*2) // BG_U 移動距離
//------------------------------------------------------------------------------
// ローカル変数
//------------------------------------------------------------------------------
static Uchar verpos[4+1]; // バージョ
0x54C200#
) << 0; // 顔グラスライドイン
}
}
if( nomove == 0 ) {
EndAll |= MojiSioT( 0, GTI1 ) << 1; // 画面タイトル(左)スライドイン
if( EndAll & 1<<1 ) {
EndAll |= MojiHioT( 0, GTI2 ) << 2; // 画面タイトル(右)半透明イン (表示オン)
}
}
else {
EndAll |= (1<<1)|(1<<2);
}
EndAll |= FontChk( NowSts, 1 ); // フォント処理チェック(スライドイン)
if( NowSts == LOAD_SELECT ) {
// EndAll |= LdatSio( 0,DAT1,NMN1,4 ) << 5; // データ内容スライドイン
if( ((EndAll>>5)&0x1) == 0 ) { /* スライド音重複回避対策 */
EndAll |= LdatSio( 0,DAT1,NMN1,1 ) << 5; // データ内容スライドイン
}
}
if( EndAll == 0x3f ) { // 表示イン完了
SSub_wkInit();
md_step = (NowSts==LOAD_SELECT)? MOD_CUR3:MOD_CUR1;
// md_step = MOD_CUR1;
in_rep = 0;
first = 0;
// (キャラクター選択) 画面タイトル/顔グラ スライドイン完了後
if( NowSts == CHARACTER_SELECT ) {
wk_step = CSEL; // 専用ステップへ
cs_step = 0; // キャラ選択ステップ初期化
keychk = P_RDOWN; // キャラ選択から戻った時用
EndAll = 0; // キャラ選択から戻った時用
/* 選択項目をシステムワークにセット */
// ModSelSet( 0 ); // キャラ選択完了時にコール
}
}
break;
case MOD_CUR1: // カーソル出力 (全項目数分) 表示はオフ
set2dN( CURS,SC(3),STP05P05,0,0,0x0d,0xd0,0,PR8 );
md_step = MOD_CUR2;
if( NowSts == VERSION_ALL ) {
set2dN( YAJI,0x3047,MODE16,0,0,0x0e,0x76,0,PR7 );
}
break;
case MOD_CUR2: // カーソル半透明イン
CurSet( curpos|(SC(5)<<4),CURS,COMN,SC(4) );
if( CurHin( CURS ) ) {
// 画面イメージ出力
if( GCON( NowSts ) ) {
if( NowSts == GAME_SELECT ) {
0x565600#
0x00,0xffa0,0xff93,0x10},
{DAT,0x18,0x18,0x18,0x30,0xffa4,0xff93,0x10},
{DAT,0x18,0x18,0x00,0x30,0xffb6,0xff93,0x10},
{DAT,0x10,0x18,0x70,0x30,0xff60,0xffa4,0x10},
{DAT,0x10,0x18,0x58,0x00,0xff70,0xffa4,0x10},
{DAT,0x10,0x18,0x58,0x18,0xff80,0xffa4,0x10},
{DAT,0x10,0x18,0x58,0x00,0xff90,0xffa4,0x10},
{DAT,0x18,0x18,0x28,0x00,0xff9c,0xffa4,0x10},
{END,0x18,0x18,0x00,0x48,0xffac,0xffa4,0x10},
};
SPD_W t_versel2_spd[]={ // 画面タイトル
// バージョンの選択
{DAT,0x10,0x10,0xc0,0x50,0xffd5,0xffa8
0x56CA00#
{DAT,0x00,0x00,0xf0,0xa0,0xffc0,0x0000,0x10}, // サイズ無し/非表示
// タイプ1
{DAT,0x40,0x10,0x80,0xa0,0xff9c,0x0000,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffdc,0x0000,0x10},
// タイプ2
{DAT,0x40,0x10,0x80,0xa0,0xff9c,0x0018,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffdc,0x0018,0x10},
// タイプ3
{DAT,0x40,0x10,0x80,0xa0,0xff9c,0x0030,0x10},
{DAT,0x10,0x10,0xf0,0xa0,0xffdc,0x0030,0x10},
// タイプ4
{DAT,0x40,0x10,0x80,0xa0,0xff9c,0x0048,0x10},
{END,0x10,0x10,0xf0,0xa0,0xffdc,0x0048,0x10},
};
SPD_W exvimg1_spd[]={ // イメージ画面(バージョン選択)
// ストラックアウト
{END,0x60,0x40,0x00,0x00,0x0040,0x0000,0xb0},
};
SPD_W exvimg2_spd[]={ // イメージ画面(バージョン選択)
// キックターゲット
{END,0x60,0x40,0x00,0x40,0x0040,0x0000,0xb0},
};
SPD_W exvimg3_spd[]={ // イメージ画面(バージョン選択)
// ダルマ
{END,0x60,0x40,0x00,0x80,0x0040,0x0000,0xb0},
};
SPD_W ex_unsel_spd[]={ // EX競技選択不可印
{DAT,0x28,0x20,0x58,0x60,0xff79,0xffeb,0x7e},
{DAT,0x28,0x20,0x58,0x60,0xff79,0x000d,0x7e},
{DAT,0x28,0x20,0x58,0x60,0xff79,0x002f,0x7e},
{DAT,0x28,0x20,0x58,0x60,0x0054,0xffeb,0x7e},
{DAT,0x28,0x20,0x58,0x60,0x0054,0x000d,0x7e},
{END,0x28,0x20,0x58,0x60,0x0054,0x002f,0x7e},
};
Ulong select_spd[]={
//---------------------------------------
// タイトル
//---------------------------------------
(Ulong)ttl_bg_spd, /* 0x3000 */ // 背景
(Ulong)ttl_st_spd, /* 0x3001 */ // PRESS START
// (Ulong)tmp_spd, /* 0x3002 */ // 予備
// (Ulong)tmp_spd, /* 0x3003 */ // 予備
// (Ulong)tmp_spd, /* 0x3004 */ // 予
0x570400#
1 */ /* BRAIN PANIC */
(Ulong)rec_scya_spd, /* 0x30e2 */ /* スクロール矢印 */
(Ulong)rec_plt_spd, /* 0x30e3 */ /* プレート */
(Ulong)rec_nam_spd, /* 0x30e4 */ /* 選手名 */
(Ulong)rec_junP_spd, /* 0x30e5 */ /* 順位数字/ポイントP */
(Ulong)rec_pr_spd, /* 0x30e6 */ /* ポイント/記録 */
(Ulong)rec_mk_spd, /* 0x30e7 */ /* プレイヤーマーク */
(Ulong)rec_edit_spd, /* 0x30eb */ /* エディット選手名 */
(Ulong)rec_L1R1_spd, /* 0x30e9 */ /* L1R1 */
(Ulong)rec_PWD1_spd, /* 0x30ea */ /* パスワード表示 */
(Ulong)rec_PWD2_spd, /* 0x30eb */ /* △ボタン */
/* マッスルロード追加 */
(Ulong)ldnam1_spd, /* 0x30ec */ /* 選手名/データなし */
(Ulong)ldnam2_spd, /* 0x30ed */ /* 選手名/データなし */
(Ulong)ldnam3_spd, /* 0x30ee */ /* 選手名/データなし */
(Ulong)ldnam4_spd, /* 0x30ef */ /* 選手名/データなし */
/*--------------------------------------*/
/* モードセレクト (追加) */
/*--------------------------------------*/
(Ulong)t_inst1_spd, /* 0x30f0 */ // INSTRUCTION
(Ulong)t_inst2_spd, /* 0x3
0x578200#
_com.h"
#define REAL_EXIST
#include "m_rnk.h"
#include <stdlib.h> /* rand() */
#define MJ_SP (28/2) // 文字 スライドインスピード
#define MJ_SA (MJ_SP*4*2) // 文字 出現位置差
#define MJ_MX (16*2) // 文字 移動量
#define MJ_MXF (24*2) // 文字 移動量 (初回専用)
#define OUTPR (320) // スライドアウト終了位置(右)
#define UPWT (90*2) // ズーム前ウェイト
#define ZMUP (12*2) // ズーム段階
#define ZMSC (64/2) // ズームスケール量
#define WT_ZM (UPWT+ZMUP+1)
#define FLWT (90*2) // 落下前ウェイト
#define FLDN (6*2) // 落下段階
#define FLSC (ZMSC*2) // 落下スケール量
#define WT_FL (FLWT+FLDN+1)
#define BANG (16) // 拡縮/フラッシュ段階
#define MV_MV (14/2) // MV_MCを割り切れる値
#define MV_CN (70/MV_MV) // カウント(移動量70は固定)
#define SL_WT (8*2) // スライド前ウェイト
// トーナメント表ラインアップ
#define PH1_8 (16) // フェーズ1段階(8人用)
#define PH2_8 (10) // フェーズ2
#define PH3_8 (18) // フェーズ3
#define PH4_8 (18) // フェーズ4
#define PH5_8 (18) // フェーズ5
#define PH6_8 (34) // フェーズ6
#define PH7_8 (16) // フェーズ7
#define PH1_4 (24) // フェーズ1段階(4チーム用)
#define PH2_4 (18) // フェーズ2
#define PH3_4 (26) // フェーズ3
#define PH4_4 (35) // フェーズ4
#define PH5_4 (18) // フェーズ5
#define PH1_2 (40) // フェーズ1段階(2チーム用)
#define PH2_2 (27) // フェーズ2
#define PH3_2 (28) // フェーズ3
//------------------------------------------------------------------------------
// ローカル変数
//------------------------------------------------------------------------------
static Uchar r_wk[2];
0x57DC00#
spd[7].u = 0x10*r_info[1][ply].BP;
}
//==============================================================================
// 競技終了数セット
//------------------------------------------------------------------------------
// パラメータ
// cno : ○競技終了登録パーツ番号
//==============================================================================
void EndCntSet( Uchar cno )
{
sys_w;
CLASS0_W *cls0;
SPD_W *spd;
cls0 = SETCLS0( cno );
spd = (SPD_W *)cls0->chara;
spd[0].u = 0x10*(EndGames-1);
}
//==============================================================================
// 推移矢印セット
//------------------------------------------------------------------------------
// パラメータ
// cno : 推移矢印登録パーツ番号
//==============================================================================
void YajiSet( Uchar cno )
{
sys_w;
Uchar i;
CLASS0_W *cls0;
SPD_W *spd;
cls0 = SETCLS0( cno );
spd = (SPD_W *)cls0->chara;
for( i=0; i<8; i++ ) {
spd[i].v = yaji[i];
}
0x585200#
x0018+0x08)-(u_wk[0]-0x10);
spd[40].ysize = 0x08;
spd[40].offset_y = 0x0020;
spd[41].ysize = 0x08;
spd[41].offset_y = 0x0028;
}
else if( u_wk[0] <= 0x20 ) {
spd[32].ysize = 0x08;
spd[33].ysize = 0x08;
spd[34].ysize = 0x08;
spd[35].ysize = u_wk[0]-0x18;
spd[36].ysize = 0x00;
spd[37].ysize = 0x00;
spd[38].ysize = u_wk[0]-0x18;
spd[38].offset_y = (0x0010+0x08)-(u_wk[0]-0x18);
spd[39].ysize = 0x08;
spd[39].offset_y = 0x0018;
spd[40].ysize = 0x08;
spd[40].offset_y = 0x0020;
spd[41].ysize = 0x08;
spd[41].offset_y = 0x0028;
}
else {
spd[32].ysize = 0x08;
spd[33].ysize = 0x08;
spd[34].ysize = 0x08;
spd[35].ysize = 0x08;
spd[36].ysize = u_wk[0]-0x20;
spd[37].ysize = u_wk[0]-0x20;
spd[37].offset_y = (0x000d+0x03)-(u_wk[0]-0x20);
spd[38].ysize = 0x08;
spd[38].offset_y = 0x0010;
spd[39].ysize = 0x08;
spd[39].offset_y = 0x0018;
spd[40].ysize = 0x08;
spd[40].offset_y = 0x0020;
spd[41].ysize = 0x08;
spd[41].offset_y = 0x0028;
}
if( u_wk[0] == PH4_4 ) {
u_wk[0] = 0;
u_wk[1]++;
}
else {
spd[31].ccode = DAT;
spd[41].ccode = END;
}
break;
case 5: // ̪°½Þ5
u_wk[0]++;
if( u_wk[0] <= 0x08 ) {
spd[42].xsize = u_wk[0];
spd[43].xsize = 0x00;
spd[44].xsize = 0x00;
}
else if( u_wk[0] <= 0x10 ) {
spd[42].xsize = 0x08;
spd[43].xsize = u_wk[0]-0x08;
spd[44].x
0x58DA00#
--------------------------------------------
// パラメータ
// cno : 登録パーツ番号
// lno : 対象データ(行)番号
//==============================================================================
void ReplayInfoSet( Uchar cno, Uchar lno )
{
sys_w;
Uchar i, n;
CLASS0_W *cls0;
SPD_W *spd;
/* データ有無チェック */
cls0 = SETCLS0( cno+8 );
spd = (SPD_W *)cls0->chara;
if( UMU(lno) == 0 ) {
spd[0].ccode = END; spd[0].ysize = 0x10;
cls0 = SETCLS0( cno ); cls0->kind = 0;
cls0 = SETCLS0( cno+4 ); cls0->kind = 0;
return;
}
else {
spd[0].ccode = DAT; spd[0].ysize = 0x00;
cls0 = SETCLS0( cno ); cls0->kind = 1;
cls0 = SETCLS0( cno+4 ); cls0->kind = 1;
}
/* 選手名 */
NameSet( cno, PNO(lno), 0xff );
/* モード/競技名 */
cls0 = SETCLS0( cno+4 );
spd = (SPD_W *)cls0->chara;
for( i=0; i<6; i++ ) { /* モード名 */
for( n=0; n<mdTop[1][i]; n++ ) {
spd[ mdTop[0][i]+n ].ysize = (i==MDK(lno))? 0x08:0x00;
}
}
for( i=0; i<8; i++ ) { /* 競技名 */
for( n=0; n<gmTop[1][i]; n++ ) {
spd[ gmTop[0][i]+n ].ysize = (i==GMK(lno))? 0x08:0x00;
}
}
/* データ情報 */
cls0 = SETCLS0( cno+8 );
spd = (SPD_W *)cls0->chara;
for( i=0; i<8; i++ ) { /* データ情報 */
for( n=0; n<dtTop[1][i]; n++ ) {
spd[ dtTop[0][i]+n ].ysize = (i==GMK(lno))? 0x10:0x00;
}
if( i == GMK(lno) ) { /* 該当競技記録セット */
switch( i ) {
case 0: /* ストラックアウト */
case 1: /* キックターゲット */
spd[ dtTop[0][i] ].ysize = 0x10;
spd[ dtTop[0][i] ].u = 0x10*REC(lno);
0x5B0200#
=============================
*/
#include "m_sys.h"
/*-----------------------------------------------*/
/* トップメニュー */
/*-----------------------------------------------*/
SPD_W opt_save_spd[]={ /* 文字 */
/* SAVE */
{DAT,0x10,0x10,0x20,0x60,0xff98,0xffd0,0x03},
{DAT,0x10,0x10,0x00,0x40,0xffa2,0xffd0,0x03},
{DAT,0x10,0x10,0x50,0x60,0xffad,0xffd0,0x03},
{DAT,0x10,0x10,0x40,0x40,0xffb8,0xffd0,0x03},
/* セーブ */
{DAT,0x10,0x10,0xb0,0x30,0xff98,0xffde,0x03},
{DAT,0x10,0x10,0xb0,0x10,0xffa6,0xffde,0x03},
{END,0x10,0x10,0xa0,0x40,0xffb4,0xffde,0x03},
};
SPD_W opt_load_spd[]={ /* 文字 */
/* LOAD */
{DAT,0x10,0x10,0x30,0x50,0xff97,0xfff4,0x03},
{DAT,0x10,0x10,0x60,0x50,0xffa3,0xfff4,0x03},
{DAT,0x10,0x10,0x00,0x40,0xffaf,0xfff4,0x03},
{DAT,0x10,0x10,0x30,0x40,0xffbc,0xfff4,0x03},
/* ロード */
{DAT,0x10,0x10,0xc0,0x30,0xff99,0x0002,0x03},
{DAT,0x10,0x10,0xb0,0x10,0xffa7,0x0002,0x03},
{END,0x10,0x10,0x90,0x40,0xffb5,0x0002,0x03},
};
SPD_W opt_stup_spd[]={ /* 文字 */
/* SET UP */
{DAT,0x10,0x10,0x20,0x60,0xff98,0x0018,0x03},
{DAT,0x10,0x10,0x40,0x40,0xffa2,0x0018,0x03},
{DAT,0x10,0x10,0x30,0x60,0xffae,0x0018,0x03},
{DAT,0x10,0x10,0x40,0x60,0xffbf,0x0018,0x03},
{DAT,0x10,0x10,0x70,0x50,0xffc9,0x0018,0x03},
/* 設定 */
{DAT,0x10,0x10,0x80,0x70,0xff9a,0x0026,0x03},
{END,0x10,0x10,0x90,0x70,0xffa9,0x0026,0x03},
};
SPD_W opt_repl_spd[]={ /* 文字 */
/* REPLAY */
{DAT,0x10,0x10,0x10,0x60,0xff98,0x003c,0x03},
{DAT,0x10,0x10,0x40,0x40,0xffa2,0x
0x5BF600#
ffc8,0x0b},
{DAT,0x10,0x10,0x70,0xe0,0xffa6,/*0xffd9*/0xffc8,0x0b},
{DAT,0x70,0x10,0x00,0xe0,0xffb4,/*0xffd9*/0xffc8,0x0b},
{DAT,0x38,0x10,0x00,0xd0,0x0024,/*0xffd9*/0xffc8,0x0b},
{DAT,0x28,0x10,0x38,0xd0,0x0058,/*0xffd9*/0xffc8,0x0b},
/* 3段目 */
{DAT,0x18,0x10,0x80,0x70,0xff8e,/*0xffea*/0xffc8,0x0b},
{DAT,0x10,0x10,0x70,0xe0,0xffa6,/*0xffea*/0xffc8,0x0b},
{DAT,0x70,0x10,0x00,0xe0,0xffb4,/*0xffea*/0xffc8,0x0b},
{DAT,0x38,0x10,0x00,0xd0,0x0024,/*0xffea*/0xffc8,0x0b},
{DAT,0x28,0x10,0x38,
0x5C1E00#
0a5,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffe3,0x00a5,0x05},
{DAT,0x10,0x10,0x30,0x70,0xfff1,0x00a5,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffff,0x00a5,0x05},
{DAT,0x10,0x10,0x30,0x70,0x000d,0x00a5,0x05},
/* 15’i–Ú */
{DAT,0x10,0x10,0x30,0x70,0xffb9,0x00b6,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffc7,0x00b6,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffd5,0x00b6,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffe3,0x00b6,0x05},
{DAT,0x10,0x10,0x30,0x70,0xfff1,0x00b6,0x05},
{DAT,0x10,0x10,0x30,0x70,0xffff,0x00b6,0x05},
{END
0x5C4C00#
3 */
{DAT,0x00,0x00,0x00,0x00,0x0000,0x0072,0x05}, /* 4 */
{DAT,0x10,0x10,0x00,0xc0,0x006b,0x0072,0x05}, /* 単位 */
/* 12段目 */
{DAT,0x10,0x10,0x00,0x80,0x0022,0x0083,0x05}, /* ポイント */
{DAT,0x10,0x10,0x30,0x70,0x002e,0x0083,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0030,0x0083,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0039,0x0083,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0042,0x0083,0x05},
{DAT,0x10,0x10,0x00,0x80,0x005a,0x0083,0x05}, /* 数字 1 */
{DAT,0x00,0x00,0x00,0x00,0x0000,0x0083,0x05}, /* 2 */
{DAT,0x00,0x00,0x00,0x00,0x0000,0x0083,0x05}, /* 3 */
{DAT,0x00,0x00,0x00,0x00,0x0000,0x0083,0x05}, /* 4 */
{DAT,0x10,0x10,0x00,0xc0,0x006b,0x0083,0x05}, /* 単位 */
/* 13段目 */
{DAT,0x10,0x10,0x00,0x80,0x0022,0x0094,0x05}, /* ポイント */
{DAT,0x10,0x10,0x30,0x70,0x002e,0x0094,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0030,0x0094,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0039,0x0094,0x05},
{DAT,0x10,0x10,0x00,0x80,0x0042,0x0094,0x05},
{DAT,0x10,0x10,0x00,0x80,0x005a,0x0094,0x05}, /* 数
0x5CAD50#
.set nomacro
jal So_Gssprite_Init
sw $2,52($sp)
.set macro
.set reorder
.loc 1 896
LM537:
move $4,$17
lbu $2,429($23)
li $6,1 # 0x00000001
sll $5,$2,-----------------------
/* リプレイデータ本体処理 */
if( rpsvld ) {
MemCardReadFile( PORT, mcFNAME, (u_long *)MDR, 8192, 8192 );
MemCardSync( 0, &mcCMDS, &mcSTAT );
if( mcSTAT == McErrNone ) { /* ロード正常終了 */
mcDataSet( MEM_LOAD ); /* チェックサムでデータエラーチェックを行う */
MesType = (DataError)? MES_DATAERR:MES_LDEND;
}
else {
MesType = MES_LDFAIL;
}
}
else {
mcDataSet( MEM_LOAD ); /* チェックサムでデータエラーチェックを行う */
MesType = (DataErr
0x5D2E00#
10,0xd0,0xa0,0x0025,0x0020,0x2a},
{END,0x10,0x10,0x20,0x70,0x0034,0x0020,0x2a},
};
SPD_W warn062_spd[]={
{DAT,0x10,0x10,0x40,0x50,0xff9f,0xfff8,0x2a},
{DAT,0x10,0x10,0x50,0x50,0xffae,0xfff8,0x2a},
{DAT,0x10,0x10,0x60,0x50,0xffbd,0xfff8,0x2a},
{DAT,0x10,0x10,0x40,0x70,0x0012,0xfff8,0x2a},
{DAT,0x10,0x10,0x40,0x70,0x002e,0xfff8,0x2a},
{DAT,0x10,0x10,0x40,0x50,0xffc3,0x0008,0x2a},
{DAT,0x10,0x10,0xb0,0x10,0x0058,0xfff8,0x2a},
{DAT,0x10,0x10,0xc0,0x10,0x0034,0x0008,0x2a},
{END,0x10,0x10,0x
0x5DA600#
,0xffc3,0x0000,0x2a},
{END,0x10,0x10,0x10,0x70,0x0041,0x0000,0x2a},
};
/* カーソル はい/いいえ */
SPD_W wc_yesno99_spd[]={
{DAT,0x38,0x18,0xa8,0xb0,0xffc6,0x0016,0x10},
{END,0x38,0x18,0xa8,0xb0,0xffff,0x0016,0x10},
};
/* カーソル ダミー */
SPD_W wc_dmy_spd[]={
/* 構成数統一(カーソル移動用)のため2つ同内容 */
{DAT,0x00,0x00,0x00,0x00,0x0000,0x0000,0x00},
{END,0x00,0x00,0x00,0x00,0x0000,0x0000,0x00},
};
u_long mcard_spd[]={
(u_long)warn011_spd, /* 0x5000 (----) チェック中 */
(u_long)warn012_spd,
0x5E0600#
},
{DAT,0x40,0x40,0x80,0xb8,0x0070,0x0000,0x0f},
{DAT,0x40,0x08,0x80,0xf8,0x0070,0x0040,0x0f},
{DAT,0x40,0x28,0xc0,0xb8,0x0050,0x0048,0x0f},
{DAT,0x20,0x28,0xe0,0xb8,0x0090,0x0048,0x0f},
// ↓ BG_U 出力後は表示しない
{DAT,0x30,0x30,0xd0,0xd0,0xff40,0xff88,0x0f},
{DAT,0x30,0x30,0xd0,0xd0,0xff70,0xff88,0x0f},
{DAT,0x30,0x30,0xd0,0xd0,0xffa0,0xff88,0x0f},
{DAT,0x30,0x30,0xd0,0xd0,0xffd0,0xff88,0x0f},
{DAT,0x30,0x30,0xd0,0xd0,0x0000,0xff88,0x0f},
{DAT,0x30,0x30,0xd0,0xd0,0x0030,0xff88,0x0f
0x5E3600#
記録記号用 (0部分が可変値)
{END,0x00,0x10,0x00,0x00,0x0000,0xfffa,0x05},
};
SPD_W rank_point4_spd[]={ // 総合ランキングポイント(4段目)
{DAT,0x10,0x10,0xf0,0x80,0x002a,0x000b,0x05},
{DAT,0x10,0x10,0x30,0x70,0x0036,0x000b,0x05},
{DAT,0x10,0x10,0xf0,0x80,0x0038,0x000b,0x05},
{DAT,0x10,0x10,0xf0,0x80,0x0041,0x000b,0x05},
{END,0x10,0x10,0xf0,0x80,0x004a,0x000b,0x05},
// ゲームランキング記録数字用 (0部分が可変値)
{DAT,0x10,0x00,0x00,0x80,0x0000,0x000b,0x05},
{DAT,0x10,0x00,0x00,0x80,0x0000,0x000b,0x05
0x5E5E00#
24,0x03},
{DAT,0x10,0x10,0x70,0x40,0xffce,0x0024,0x03},
{DAT,0x10,0x10,0x40,0x60,0xffd9,0x0024,0x03},
{DAT,0x10,0x10,0x20,0x60,0xffe3,0x0024,0x03},
{DAT,0x10,0x10,0x30,0x60,0xffed,0x0024,0x03},
{DAT,0x10,0x10,0x30,0x50,0xfff6,0x0024,0x03},
{DAT,0x10,0x10,0x40,0x40,0x0001,0x0024,0x03},
{END,0x10,0x10,0x10,0x60,0x000b,0x0024,0x03},
};
SPD_W rank_gam7_spd[]={ // 文字
// DARUMA
{DAT,0x10,0x10,0xd0,0xd0,0xffbc,0x0034,0x03},
{DAT,0x10,0x10,0x30,0x40,0xffce,0x0034,0x03},
{DAT,0x10,0x10,0x
0x5EB600#
05},
{DAT,0x10,0x10,0x50,0xd0,0xff85,0xfffc,0x05},
{DAT,0x10,0x10,0x40,0xd0,0xff8f,0xfffc,0x05},
{DAT,0x10,0x10,0x00,0xe0,0xff98,0xfffc,0x05},
{DAT,0x10,0x10,0x10,0xe0,0xffa0,0xfffc,0x05},
{DAT,0x10,0x10,0x40,0xc0,0xffa9,0xfffc,0x05},
{DAT,0x10,0x10,0x70,0xd0,0xffb1,0xfffc,0x05},
{DAT,0x10,0x10,0x10,0xc0,0xffc3,0xfffc,0x05},
{DAT,0x10,0x10,0x50,0xd0,0xffcb,0xfffc,0x05},
{END,0x10,0x10,0x40,0xe0,0xffd5,0xfffc,0x05},
};
SPD_W rank_pla4_spd[]={ // SHOT-GUN-TOUCH (4段目)
{DAT,0x10,0x10,0
0x5EE600#
},
{DAT,0x10,0x18,0x58,0x18,0xffa0,0xffa4,0x19},
{END,0x18,0x18,0x00,0x48,0xffac,0xffa4,0x19},
};
SPD_W t_plr2_spd[]={ // 画面タイトル
// これまでの成績
{DAT,0x10,0x10,0xe0,0x20,0xffe6,0xffa8,0x14},
{DAT,0x10,0x10,0xf0,0x20,0xfff4,0xffa8,0x14},
{DAT,0x10,0x10,0xd0,0x20,0x0002,0xffa8,0x14},
{DAT,0x10,0x10,0x20,0x90,0x0011,0xffa8,0x14},
{DAT,0x10,0x10,0x30,0x90,0x0020,0xffa8,0x14},
{DAT,0x10,0x10,0x60,0x80,0xffca,0xffa8,0x14},
{END,0x10,0x10,0x70,0x80,0xffd8,0xffa8,0x14},
};
//--------
0x5F1600#
/* 0x4041 */ // 8 BRAIN PANIC
(Ulong)c_rankga_spd, /* 0x4042 */ // カーソル
(Ulong)t_rnk2_1_spd, /* 0x4043 */ // RANKING
(Ulong)t_rnk2_2_spd, /* 0x4044 */ // 各競技のランキング
(Ulong)r_tmp_spd, /* 0x4045 */ // 予備
//---------------------------------------
// 競技ランキング
//---------------------------------------
(Ulong)t_rnk3_1_spd, /* 0x4046 */ // RANKING
(Ulong)t_rnk3_21_spd, /* 0x4047 */ // STRUCK OUT
(Ulong)t_rnk3_22_spd, /* 0x4048 */ // KICK TARGET
(Ulong)t_rnk3_23_spd,
0x5F9400#
6f59,0x62d4,0x564f,0x49ca,0x3d45,0x30e0,
0x24c0,0x1ca1,0x1482,0x03e0,0x03e0,0x03e0,0x19e0,0x0c63,
};
/*
*===========================================================================
* イメージ3
*===========================================================================
*/
u_char memo03[] = {
/* パターン1 */
0x00,0x00,0x80,0x57,0x34,0x33,0x22,0x32,0x00,0x00,0x68,0x55,0x34,0x23,0x11,0x11,
0x00,0x00,0x78,0x56,0x34,0x23,0x11,0x11,0x00,0x80,0xff,0x56,0x45,0x33,0x11,0x11,
0x00,0xf0,0xff,0xef,0xcc,0xbc,0xbb,0xec,0x60,0x87,0x88,0xfe,0xdf,0xbc,0xdc,0xde,
0x56,0x85,0x78,0xbc,0xcb,0x3d,0xcd,0x99,0x55,0x85,0xd7,0xbc,0x9a,0x3b,0x9b,0x99,
0x45,0x85,0xd7,0xbc,0xfa,0x3a,0xfa,0x99,0x46,0x84,0xe7,0xcd,0xab,0x3b,0x9b,0x99,
0x57,0x84,0x68,0xde,0xcd,0x45,0xb2,0xaa,0x60,0x75,0x68,0x55,0x55,0x35,0x12,0x11,
0x00,0x88,0x78,0x56,0x45,0x44,0x23,0x11,0x00,0x00,0x88,0x67,0x77,0x77,0x77,0x57,
0x00,0x00,0x80,0x78,0x67,0x56,0x55,0x55,0x00,0x00,0x00,0x80,0x78,0x77,0x66,0x66,
/* パターン2 */
0x00,0x00,0x80,0x57,0x34,0x33,0x22,0
0x66AC00#
868+0x7ff)/0x800, (Ulong)TIM_TABLE2 }, /* 33 テクスチャ */
{ 0x0011c000/0x800+CD_DATA00, (0x00007b35+0x7ff)/0x800, (Ulong)HOMEMODEL_TABLE }, /* 34 0c 松坂1*/
{ 0x00124000/0x800+CD_DATA00, (0x00007b35+0x7ff)/0x800, (Ulong)AWAYMODEL_TABLE }, /* 35 松坂2*/
{ 0x0012c000/0x800+CD_DATA00, (0x0000750c+0x7ff)/0x800, (Ulong)TIM_TABLE2 }, /* 36 テクスチャ */
{ 0x00133800/0x800+CD_DATA00, (0x00007c2d+0x7ff)/0x800, (Ulong)HOMEMODEL_TABLE }, /* 37 0d 金剛1*/
{ 0x0013b800/0x800+CD_DATA00, (0x00007c2d+0x7ff)/0x800, (Ulong)AWAYMODEL_TABLE }, /* 38 金剛2*/
{ 0x00143800/0x800+CD_DATA00, (0x00007520+0x7ff)/0x800, (Ulong)TIM_TABLE2 }, /* 39 テクスチャ */
{ 0x0014b000/0x800+CD_DATA00, (0x00007cbd+0x7ff)/0x800, (Ulong)HOMEMODEL_TABLE }, /* 3a 0e ED1 1*/
{ 0x00153000/0x800+CD_DATA00, (0x00007cbd+0x7ff)/0x800, (Ulong)AWAYMODEL_TABLE }, /* 3b ED1 2*/
{ 0x0015b000/0x800+CD_DATA00, (0x0000784c+0x7ff)/0x800, (Ulong)TIM_TABLE2 }, /* 3c テクスチャ */
{ 0x00163000/0x800+CD
0x672600#
c Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_1, /* 0xdd Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_0, /* 0xde Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_1, /* 0xdf Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_0, /* 0xe0 Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_1, /* 0xe1 Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_0, /* 0xe2 Tug of War 用デモモーション */
(Ulong)TUG_DEMO_ADDR_1, /* 0xe3 Tug of War 用デモモーション */
(Ulong)
0x679A00#
_load_NB(LOAD_ANA_SM) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 4: /*古舘モーション読み込み*/
if ( cd_file_load_NB(LOAD_ANA_FA) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 5: /*進藤モーション読み込み*/
if ( cd_file_load_NB(LOAD_ANA_SA) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 6: /*古舘部品テクスチャ読み込み*/
if ( cd_file_load_NB(LOAD_ANA_FP) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
case 7: /*進藤部品テクスチャ読み込み*/
if ( cd_file_load_NB(LOAD_ANA_SP) ){
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
}
break;
default:
TRANS_STEP_S = 0;
return 1;
}
return 0;
}
/*=======================================================
優勝シーン用2Dキャラ読み込み
アナウンサーのテクスチャとアドレスが被るので
アナウンサーは消えます
out: ==0 処理中 ==1 終了
=======================================================*/
int No1_Trans()
{
sp_w;
switch ( TRANS_STEP_S ){
case 0:
cd_read_step = CD_READ_INIT;
TRANS_STEP_S++;
case 1:
if( cd_file_load_NB( LOAD_NO1_CSR ) ) {
tim_trans((TIM_W *)A_TIM_TABLE[0],0);
cd_read_step = CD_READ_INIT;
TRANS_STEP_S ++;
}
break;
default:
TRANS_STEP_S = 0;
return 1;
}
return 0;
}
/*********************************************
ここからは、自作CdRead関連
*********************************************/
static in
0x681C00#
o_cam.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_mot.obj: st00\so_mot.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_draw.obj: st00\so_draw.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_rep.obj: st00\so_rep.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_speak.obj: st00\so_speak.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\so_kmode.obj: st00\so_kmode.c $(HDRS) st00\so00.h
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\g2d_00.obj: st00\g2d_00.c $(HDRS)
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
..\obj\g3d_00.obj: st00\g3d_00.c $(HDRS)
$(CC) $(CFLAGS_CHILD00) st00\$&.c -o$<
# キックターゲット
..\obj\child01.obj: st01\child01.c $(HDRS) st01\c1_all.h st01\c1_sys.h st01\c1_gbl.h st01\c1_type.h
$(CC) $(CFLAGS_CHILD01) st01\$&.c -o$<
..\obj\g2d_01.obj: st01\g2d_01.c $(HDRS)
$(CC) $(CFLAGS_CHILD01) st01\$&.c -o$<
..\obj\g3d_01.obj: st01\g3d_01.c $(HDRS)
$(
0x68AE00#
/*共通*/
/*背景 上*/
SPD_W back01_spd[]={
/* ccode,xsize,ysize,u,v,offset_x,offset_y palette */
{DAT,0x10,0x20,0x30,0x60,0x00a4,0xffc8,0x52},
{DAT,0x10,0x20,0x30,0x60,0xff4c,0xffc8,0x52},
{DAT,0x10,0x40,0x10,0x40,0x00a4,0xff88,0x54},
{DAT,0x10,0x40,0x10,0x40,0xff4c,0xff88,0x54},
{DAT,0x40,0x18,0x00,0x00,0xff40,0xff88,0x51},
{DAT,0x40,0x18,0x00,0x00,0xff80,0xff88,0x51},
{DAT,0x40,0x18,0x00,0x00,0xffc0,0xff88,0x51},
{DAT,0x40,0x18,0x00,0x00,0x0000,0xff88,0x51},
{DAT,0x40,0x18,0x00,0x00,0x0040,0x
0x68D200#
b,0x1e},
{DAT,0x18,0x08,0x68,0xf8,0xffb0,0x001f,0x5e},
{DAT,0x10,0x10,0x50,0xc0,0xffae,0x002a,0x01},
{DAT,0x48,0x20,0x00,0x80,0xff7c,0x000e,0x01},
{DAT,0x08,0x20,0x78,0x80,0xffc4,0x000e,0x01},
{DAT,0x10,0x10,0x30,0xa0,0xffd8,0x001b,0x1f},
{DAT,0x18,0x08,0x00,0xd0,0xffe8,0x001f,0x5e},
{DAT,0x10,0x10,0x70,0xb0,0xffeb,0x002a,0x01},
{DAT,0x28,0x20,0x00,0x80,0xffd4,0x000e,0x01},
{DAT,0x08,0x20,0x78,0x80,0xfffc,0x000e,0x01},
{DAT,0x10,0x10,0x30,0xa0,0x0011,0x001b,0x1f},
{DAT,0x18,0x08,0x00,0xd8,0x0021,0x001f,0x5e},
{DAT,0x10,0x10,0x70,0xb0,0x0026,0x002a,0x01},
{DAT,0x28,0x20,0x00,0x80,0x000c,0x000e,0x01},
{DAT,0x08,0x20,0x78,0x80,0x0034,0x000e,0x01},
{DAT,0x10,0x10,0x30,0xa0,0x0051,0x001b,0x1f},
{DAT,0x18,0x08,0x00,0xd0,0x0061,0x001f,0x5e},
{DAT,0x10,0x10,0x70,0xb0,0x004a,0x002a,0x01},
{DAT,0x38,0x20,0x00,0x80,0x0044,0x000e,0x01},
{END,0x08,0x20,0x78,0x80,0x007c,0x000e,0x01},
};
/*---------------------------------------------*/
/*03/ショットガンタッチ*/
/*競技ロゴ*/
SPD_W st_rogo_spd[]={
/* ccode,xsize,ysize,u,v,offset_x,offset_y palette */
{DAT,0x80,0x40,0x80,0x80,0xffd8,0xff9b,0x43},
{DAT,0x80,0x40,0x00,0x80,0xff58,0xff9b,0x43},
{END,0x50,0x40,0x00,0xc0,0x0058,0xff9b,0x43},
};
/*金剛くん*/
SPD_W st_kon_spd[]={
/* ccode,xsize,ysize,u,v,offset_x,offset_y palette */
{DAT,0x30,0x10,0x80,0xf0,0xff88,0x000f,0x01},
{DAT,0x28,0x28,0x58,0xc0,0xff88,0x0030,0x3d},
{DAT,0x20,0x08,0x80,0xc0,0xff8b,0x0050,0x01},
{DAT,0x48,0x10,0x80,0xe0,0xffde,0x000f,0x01},
{DAT,0x10,0x10,0xd8,0xc0,0xf
0x68FC00#
5 枠 */
/*競技用*/
(Ulong)so_rogo_spd, /*06 競技ロゴ */
(Ulong)so_kon_spd, /*07 金剛くん */
(Ulong)so_fuki_spd, /*08 吹き出し */
};
/*キックターゲット用・パターン*/
Ulong inf_kt_opd[] = {
/*共通*/
(Ulong)back01_spd, /*00 背景 上*/
(Ulong)back02_spd, /*01 背景 下*/
(Ulong)load_spd, /*02 読み込み中文字*/
(Ulong)press_spd, /*03 入力待ち文字*/
(Ulong)sousa_spd, /*04 操作説明 文字*/
(Ulong)waku_spd, /*05 枠 */
/*競技用*/
(Ulong)kt_rogo_spd, /*06 競技ロゴ */
(Ulong)kt_kon_spd, /*07 金剛くん */
(Ulong)kt_fuki_spd, /*08 吹き出し */
};
/*モンスターボックス用・パターン*/
Ulong inf_mb_opd[] = {
/*共通*/
(Ulong)back01_spd, /*00 背景 上*/
(Ulong)back02_spd, /*01 背景 下*/
(Ulong)load_spd, /*02 読み込み中文字*/
(Ulong)press_spd, /*03 入力待ち文字*/
(Ulong)sousa_spd, /*04 操作説明 文字*/
(Ulong)waku_spd, /*05 枠 */
/*競技用*/
(Ulong)mb_rogo_spd, /*06 競技ロゴ */
(Ulong)mb_kon_spd, /*07 金剛くん */
(Ulong)mb_fuki_spd, /*08 吹き出し */
};
/*ショットガンタ
0x6B0FB0#
cro
.set reorder
.loc 1 4590
LM2159:
lui $4,%hi(mb_char_w) # high
a
0x6F8DB0#
,
NOKEZORI ,
GATSUN ,
FALL ,
G
0x6FEEA0#
,0x10,0x80,0xa0,0xff7e,0x0000,0x4d},
{(Uchar)0x00 ,0x18,0x10,0x98,0xa0,0xff96,0x0000,0x4d},
{(Uchar)0x00 ,0x20,0x10,0x80,0xd0,0xffb8,0x0000,0x4d},
{(Uchar)0x00 ,0x20,0x10,0xa0,0xd0,0xffd0,0x0000,0x4d},
{(Uchar)0x00 ,0x20,0x10,0xc0,0xd0,0xffec,0x0000,0x4d},
{(Uchar)0x00 ,0x18,0x10,0xe0,0xd0,0x0008,0x0000,0x4d},
{(Uchar)0x00 ,0x18,0x10,0xe0