the cutting room mirror

MR 04 V.BIN

This article has a talk page!
view on tcrf.net

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