the cutting room mirror

Tokimeki Memorial Taisen Tokkae-dama (PlayStation)

A Tokkae-dama spin-off featuring Tokimeki Memorial characters. A Sega Saturn port was later released.

Uncompiled Source Code#

Four of the game's files contain traces of the game's working environment, including multiple snippets of uncompiled source code. All of these files take in consideration the folder BIN.

BG.BIN#

This file contains seven fragments.

0x3AA00

 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,
   0 +256 +1 +1 +1 +1 +1 +1 +1 ,0 +256 +1 +1 +1 +1 +1 +1 +1 +1 ,0 +256 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,
   0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1

0x43600

1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,
   0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  ,
   0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 ,0  +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +

0x4CC00

 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,
   0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1

0x5AA00

1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 ,0  +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1

0x6A200

VECTOR *Vo,u_short *sz,u_short *flag,
            short Xoffset,short Zoffset,short m,short n,
            DVECTOR *base);
extern long RotAverage3(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,
            long *sxy0,long *sxy1,long *sxy2,long *p,long *flag);
extern long RotAverage4(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,SVECTOR *v3,
            long *sxy0,long *sxy1,long *sxy2,long *sxy3,
            long *p,long *flag);
extern long RotNclip3(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,
            long *sxy0,long *sxy1,long *sxy2,long *p,long *otz,
            long *flag);
extern long RotNclip4(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,SVECTOR *v3,
            long *sxy0,long *sxy1,long *sxy2,long *sxy3,
            long *p,long *otz,long *flag);
extern long RotAverageNclip3(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,
            long *sxy0,long *sxy1,long *sxy2,
            long *p,long *otz,long *flag);
extern long RotAverageNclip4(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,SVECTOR *v3,
            long *sxy0,long *sxy1,long *sxy2,long *sxy3,
            long *p,long *otz,long *flag);
extern long RotColorDpq(SVECTOR *v0,SVECTOR *v1,CVECTOR *v2,
            long *sxy,CVECTOR *v3,long *flag);
extern long RotColorDpq3(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,
            SVECTOR *v3,SVECTOR *v4,SVECTOR *v5,CVECTOR *v6,
            long *sxy0,long *sxy1,long *sxy2,
            CVECTOR *v7,CVECTOR *v8,CVECTOR *v9,long *flag);
extern long RotAverageNclipColorDpq3(SVECTOR *v0,SVECTOR *v1,SVECTOR *v2,
            SVECTOR *v3,SVECTOR *v4,SVECTOR *v5,CVECTOR *v6,
            long *sxy0,long *sxy1,long *sxy2,
            CVECTOR *v7,CVECTOR *v8,CVECTOR *v9,
            long *otz,long *flag);                    
extern long 

0x72E00

P_F3;


 






    void    GsInitGraph(unsigned short x, unsigned short y, unsigned short intmode,
                      unsigned short dith, unsigned short varmmode);
    void    GsInit3D(void);
    void    GsMapModelingData(unsigned long *p);

    void    GsSetProjection(long h);
    int     GsSetFlatLight(int id, GsF_LIGHT * lt);
    void    GsSetLightMode(int mode);
    void    GsSetFogParam(GsFOGPARAM * fogparm);
    void    GsSetAmbient(long r, long g, long b);
    void    GsDrawOt(GsOT * ot);
    void    GsSetWork

0x81200

   AA->high[x]=0;
    }
    for (x=0;x!=6 ;x++){
        for (y=0;y!=12 +1;y++){              
            if  (AA->Field[y][x]<0x5){           
                AA->B_ball[0]++;                     
                AA->B_ball[AA->Field[y][x]+1]++;     
            }
            else{
                if  (AA->Field[y][x]!=0xff){             
                    AA->S_ball[0]++;                     
                    AA->S_ball[(AA->Field[y][x]+1)-4]++;     
                }
                else{
                    if  (AA->high[x]==0){
                        AA->high[x]=y;
                    }
                }
            }
        }
    }
}
void waku_anm_set(PlayTag *Go){
     
    short kasa;
    kasa=0x36;
    if  (Go->buruburu==1){
        kasa=0x37;
    }
    if  ((GAME[Go->Df_no].At_num>0)||(GAME[Go->Df_no].At_flg==1 )){
        if  (GAME[Go->Df_no].at_ptn==0){
            if  (kasa!=0x37){
                kasa=0x38;
            }
            else{
                kasa=0x3a;
            }
        }
        else{
            if  (GAME[Go->Df_no].At_num>=6){
                if  (kasa!=0x37){
                    kasa=0x39;
                }
                else{
                    kasa=0x3b;
                }
            }
        }
    }
    if  (kasa!=Go->anm_n_waku){      
        Go->anm_n_waku=kasa;
        Go->anm_t_waku=0;
        Go->anm_c_waku=-1;
    }
}

void monndai1(u_char a){     
    u_char x,y;
    u_char  *somo;

 




    if  (cl_chk[tume_tokkae_oft[ GAME[a].Step ]]==0){
        GAME[a].Cpu_wait[0]=0;       
    }
    else{
        if  (cl_chk[ tume_tokkae_oft[ GAME[a].Step] ]>0x8000){   
            GAME[a].Cpu_wait[0]=1;       
        }
        else{
            GAME[a].Cpu_wait[0]=2;       
        }
    }
    GAME[a].Cpu_wait[1]=(cl_chk[ tume_tokkae_oft[GAME[a].Step] ]&0x0fff);    
    GAME[a].Cpu_Lv=te_kazu[ tume_tokkae_oft[GAME[a].Step] ];
    
    
    somo=*( tume_tokkae + tume_tokkae_oft[ GAME[a].Step ]);

    GAME[a].W_ball=*(somo+(85-1));   
    GAME[a].w_anm_no=0 +1 +1 +1  ;   

    if  ( GAME[a].W_ball

DAT.BIN#

This file contains six fragments.

0x10E00

) ();
    PACKET
    * (*g4[2][3]) ();
    PACKET
    * (*ng4[2]) ();
    PACKET
    * (*tf4[2][3]) ();
    PACKET
    * (*ntf4[2]) ();
    PACKET
    * (*tg4[2][3]) ();
    PACKET
    * (*ntg4[2]) ();
    PACKET
    * (*f3g[3])();
    PACKET
    * (*g3g[3])();
    PACKET
    * (*f4g[3])();
    PACKET
    * (*g4g[3])();
}       _GsFCALL;








 









 



























 














 





 


 





















 
typedef struct {

0x18E00

xtern void _SsContDamper(short, short, unsigned char); 
extern void _SsContExternal(short, short, unsigned char); 
extern void _SsContNrpn1(short, short, unsigned char); 
extern void _SsContNrpn2(short, short, unsigned char); 
extern void _SsContRpn1(short, short, unsigned char); 
extern void _SsContRpn2(short, short, unsigned char); 
extern void _SsContResetAll(short, short);
extern void _SsSetNrpnVabAttr0(short, short, short, VagAtr, short, unsigned char);
extern void _SsSetNrpnVabAttr1(short, sho

0x26400

2 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 ,  0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 ,  0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x0

0x27E00

x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 ,  0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0

0x28A00

0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 ,  0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 ,
           0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 

0x2A400

0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0xae +0x01 +0x04 +0x04 ,  0x00 +0x06 +0x08 +0x0f +0x0a +0x0b +0x0a +0x0b +0x08 +0x0a +0x0b +0x21 +0x01 +0x01 +0x01 +0x34 +0x01 +0x01 +0x01 +0x01 +0x0e +0x01 +0x01 +0x16 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x03 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x02 +0x02 +0x02 +0x02 +0x01 +0x16 +0x01 +0x01 +0xcd +0x01 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x02 +0x24 +0x16 +0xae +0x02 +0x02 +0x01 +0x01 +0x01 +0x01 +0x01 +0x01 +0x08 +0x01 +0x01 +0x01 +0x01 +0x0a +0x03 +0x0a +0x0b +0x01 +0x01 +0x

END.BIN#

This file contains three fragments.

0x138400

$(TMP)\*.obj : $(SRC)\op_wo.c
<$(TMP)\*.obj : $(SRC)\t_page.c
<$(TMP)\*.obj : $(SRC)\data.c
<$(TMP)\*.obj : $(SRC)\girl_dat.c
<$(TMP)\*.obj : $(SRC)\mojifont.c

<$(TMP)\*.obj : $(SRC)\mode.c
<$(TMP)\*.obj : $(SRC)\title.c
<$(TMP)\*.obj : $(SRC)\etc_func.c
<$(TMP)\*.obj : $(SRC)\opening.c

<$(TMP)\*.obj : $(SRC)\fon_a_b.c
<$(TMP)\*.obj : $(SRC)\big_anm.c

<$(TMP)\*.obj : $(SRC)\pal_ch.c
<$(TMP)\*.obj : $(SRC)\b_fomat.c
<$(TMP)\*.obj : $(SRC)\GAMEMAIN.c
<$(TMP)\*.obj : $(SRC)\kaiwa2.c
<$(TMP)\*.obj : $(SRC)\konami_l.c

<$(TMP)\*.obj : $(SRC)\cd_cont.c
<$(TMP)\*.obj : $(SRC)\t_sdctrl.c
<$(TMP)\*.obj : $(SRC)\t_sddata.c

<$(TMP)\*.obj : $(SRC)\fnt_st_0.c
<$(TMP)\*.obj : $(SRC)\fnt_st_1.c
<$(TMP)\*.obj : $(SRC)\fnt_st_2.c
<$(TMP)\*.obj : $(SRC)\fnt_st_3.c
<$(TMP)\*.obj : $(SRC)\fnt_st_4.c
<$(TMP)\*.obj : $(SRC)\fnt_st_5.c
<$(TMP)\*.obj : $(SRC)\fnt_st_6.c
<$(TMP)\*.obj : $(SRC)\fnt_st_7.c
<$(TMP)\*.obj : $(SRC)\fnt_st_8.c
<$(TMP)\*.obj : $(SRC)\fnt_st_9.c
<$(TMP)\*.obj : $(SRC)\fn

0x159400

               /* ささってない */
                    mem_sstep = SSTEP_NULL;
                    stack_rtv = RtnValNoCard;
                    break;
                case 3:                         /* 未初期化 */
                    mem_sstep = SSTEP_NULL;
                    stack_rtv = RtnValUnFormat;
                    break;
                case 5:                 /* ファイルが無いか、または何らかの理由で */
                                        /* ファイルが開けない                     */
                    ret = create_card0( MCARD_FNAME, CARD_A, 1 ); /*ファイル作成1スロット*/
                    switch( ret ) {
                        case 0:                         /* カード作成終了 */
                            mem_sstep = SSTEP_CARD_CHECK2;  /* retry */
                            stack_rtv = RtnValNone;
                            break;
                        case 1:                         /* エラー */
                            mem_sstep = SSTEP_NULL;
                            stack_rtv = RtnValError;
                            break;
                        case 2:                         /* ささってない */
                            mem_sstep = SSTEP_NULL;
                            stack_rtv = RtnValNoCard;
                            break;
                        case 5:                         /*カードがいっぱい*/
                            mem_sstep = SSTEP_NULL;
                            stack_rtv = RtnValCardFull;
                            break;
                        default:
                            stack_rtv=RtnValNone;   /* いずれでもない場合ステップを繰り返す */
                        }
                        break;
                default:
                    

0x2D2C00

nsa_suu_max){
                pla->Rensa_suu_max=pla->Rensa_suu;
            }
        }
        /* hirameki */
        if  (MAIN_TAG.MODE!=2){
            if  (pla->Rensa_suu!=0){
                if  (pla->Rensa_suu>pla->Rensa_suu_max){
                    pla->Rensa_suu_max=pla->Rensa_suu;
                }
                pla->Rensa_suu=0;
                if  (pla->OKOK==1){
                    if  (pla->Oti_Timer!=0){
                        pla->OKOK=0;
                    }
                }
            }
        }
        if  (MAIN_TAG.MODE==2){
            if  (pla->Rensa_suu!=0){
                CLEAR_chk(a);
                return;
            }
            else{
                if  (GAME[a].Cpu_Lv==0){                    /* ひらめき */
                    GAME[a].ST_END=3;
                    GAME[a].Cpu_action_flg=1;

                    GAME[a].tennkai=1;
                    GAME[a].Next_anm_no=0xf;
                    women_ch_test(a);       /* 失敗 */
                    
                    return;
                }
                else{
/*-------------- 問題のセレクト画面 ---------------------------*/
                    if  ( (pla->key_no[1]&0x0080) != 0){
                        if  (MAIN_TAG.Hira_Stage>0){
                            pla->ST_END=12;
                            Wipe.condition=1;
                            Wipe.mode=0;
                            wipeformat();
                            donketu=0;
                            return;
                        }
                    }
/*----------------------------------------

SMALL.BIN#

This file contains seven fragments.

0x2200

.def   cd; .val    3;  .scl    8;  .type   0xc;    .endef
    .def    tu0;    .val    4;  .scl    8;  .type   0xc;    .endef
    .def    tv0;    .val    5;  .scl    8;  .type   0xc;    .endef
    .def    clut;   .val    6;  .scl    8;  .type   0xd;    .endef
    .def    tu1;    .val    8;  .scl    8;  .type   0xc;    .endef
    .def    tv1;    .val    9;  .scl    8;  .type   0xc;    .endef
    .def    tpage;  .val    10; .scl    8;  .type   0xd;    .endef
    .def    tu2;    .val    12; .scl    8;  .type   0xc;    .endef
    .def    tv2;    .val    13; .scl    8;  .type   0xc;    .endef
    .def    p0; .val    14; .scl    8;  .type   0xd;    .endef
    .def    tu3;    .val    16; .scl    8;  .type   0xc;    .endef
    .def    tv3;    .val    17; .scl    8;  .type   0xc;    .endef
    .def    p1; .val    18; .scl    8;  .type   0xd;    .endef
    .def    r0; .val    20; .scl    8;  .type   0xc;    .endef
    .def    g0; .val    21; .scl    8;  .type   0xc;    .endef
    .def    b0; .val    22; .scl    8;  .type   0xc;    .endef
    .def    p2; .val    23; .scl    8;  .type   0xc;    .endef
    .def    r1; .val    24; .scl    8;  .type   0xc;    .endef
    .def    g1; .val    25; .scl    8;  .type   0xc;    .endef
    .def    b1; .val    26; .scl    8;  .type   0xc;    .endef
    .def    p3; .val    27; .scl    8;  .type   0xc;    .endef
    .def    r2; .val    28; .scl    8;  .type   0xc;    .endef
    .def    g2; .val    29; .scl    8;  .type   0xc;    .endef
    .def    b2; .val    30; .scl    8;  .type   0xc;    .endef
    .def    p4; .val    31; .scl    8;  .type   0xc;    .endef
    .def    r3; .val    32; .scl    8;  .type   0xc;    .endef
    .def    g3; .val    33; .scl    8;  .type   0xc;    .endef
    .def    b3; .val    34; .scl    8;  .type   0xc;    .endef
    .def    p5; .val    35; .scl    8;  .type   0xc;    .endef
    .def    v0; .val    36; .scl    8;  .type   0xd;    .endef
    .def    v1; .val    38; .scl    8;  .type   0xd;    .endef
    .def    v2; .val    40; .scl    8;  .type   0xd;    .endef
    .def    v3; .val    42; .scl    8;  .type   0xd;    .endef
    .def    .eos;   

0x4C00

   .scl    8;  .type   0x3;    .endef
    .def    miny;   .val    42; .scl    8;  .type   0x3;    .endef
    .def    maxx;   .val    44; .scl    8;  .type   0x3;    .endef
    .def    maxy;   .val    46; .scl    8;  .type   0x3;    .endef
    .def    hwd0;   .val    48; .scl    8;  .type   0x3;    .endef
    .def    vwd0;   .val    50; .scl    8;  .type   0x3;    .endef
    .def    tag;    .val    52; .scl    8;  .type   0x1f;   .endef
    .def    si; .val    56; .scl    8;  .tag    .29fake;    .size   40; .type   0x8;    .endef
    .def    .eos;   .val    96; .scl    102;    .tag    .113fake;   .size   96; .endef
    .def    GsADIV_GT3; .scl    13; .tag    .113fake;   .size   96; .type   0x8;    .endef
    .def    .114fake;   .scl    10; .type   0x8;    .size   36; .endef
    .def    vt; .val    0;  .scl    8;  .tag    .102fake;   .dim    3;  .size   36; .type   0x38;   .endef
    .def    .eos;   .val    36; .scl    102;    .tag    .114fake;   .size   36; .endef
    .def    GsADIV_P_GT3;   .scl    13; .tag    .114fake;   .size   36; .type   0x8;    .endef
    .def    .115fake;   .scl    10; .type   0x8;    .size   84; .endef
    .def    limit;  .val    0;  .scl    8;  .type   0xf;    .endef
    .def    hwd;    .val    4;  .scl    8;  .type   0x5;    .endef
    .def    vwd;    .val    8;  .scl    8;  .type   0x5;    .endef
    .def    shift;  .val    12; .scl    8;  .type   0x4

0x7400

.def   MAX_douji_char; .val    43; .scl    8;  .type   0xc;    .endef
    .def    MAX_rensa_name; .val    44; .scl    8;  .dim    5;  .size   10; .type   0x3d;   .endef
    .def    toki_toku;  .val    54; .scl    8;  .dim    5;  .size   5;  .type   0x3c;   .endef
    .def    toki_toku_name; .val    60; .scl    8;  .dim    5,5;    .size   50; .type   0xfd;   .endef
    .def    toki_tokuten;   .val    112;    .scl    8;  .dim    5;  .size   20; .type   0x3f;   .endef
    .def    P_name; .val    132;    .scl    8;  .dim    5;  .size   10; .type   0x3d;   .endef
    .def    Position;   .val    142;    .scl    8;  .type   0xc;    .endef
    .def    .eos;   .val    144;    .scl    102;    .tag    .126fake;   .size   144;    .endef
    .def    tokimeki;   .scl    13; .tag    .126fake;   .size   144;    .type   0x8;    .endef
    .def    .127fake;   .scl    10; .type   0x8;    .size   2180;   .endef
    .def    ST_END; .val    0;  .scl    8;  .type   0xc;    .endef
    .def    condition;  .val    1;  .scl    8;  .type   0xc;    .endef
    .def    P_type; .val    2;  .scl    8;  .type   0xc;    .endef
    .def    P_type_buf; .val    3;  .scl    8;  .dim    9;  .size   9;  .type   0x3c;   .endef
    .def    win_p_type; .val    12; .scl    8;  .dim    5;  .size   5;  .type   0x3c;   .endef
    .def    W_1st;  .val    17; .scl    8;  .type   0xc;    .endef
    .def    O

0x9C00

$31
    .end    rank_dat_read_load
    .align  2
    .def    ot_task;    .val    ot_task;    .scl    2;  .type   0x21;   .endef
    .globl  ot_task

    .loc    1 782
LM226:
    .ent    ot_task
ot_task:
    .frame  $sp,32,$31      # vars= 0, regs= 3/0, args= 16, extra= 0
    .mask   0x80030000,-8
    .fmask  0x00000000,0
    subu    $sp,$sp,32
    sw  $31,24($sp)
    sw  $17,20($sp)
    sw  $16,16($sp)

    .loc    1 783
LM227:
$Lb20:
    .begin  $Lb20   2
    .def    i;  .val    16; .scl    4;  .type   0xd;    .endef
    .def    oft;    .val    7;  .scl    4;  .type   0xd;    .endef
    .def    iii;    .val    17; .scl    4;  .type   0x3;    .endef
    .def    girl;   .val    17; .scl    4;  .type   0x3;    .endef

    .loc    1 792
LM228:
    lhu $2,tttt
    #nop
    xori    $2,$2,0x0001
    sll $2,$2,16
    sra $2,$2,16
    sll $4,$2,5
    subu    $4,$4,$2
    sll $4,$4,2
    addu    $4,$4,$2
    sll $4,$4,6
    la  $2,Ot
    addu    $4,$4,$2
    .set    noreorder
    .set    nomacro
    jal ClearOTag
    li  $5,0x000007d0       # 2000
    .set    macro
    .set    reorder


    .loc    1 796
LM229:
    lw  $2,all
    #nop
    .set    noreorder
    .set    nomacro
    beq $2,$0,$L91
    move    $16,$0
    .set    macro
    .set    reorder

$L93:

    .loc    1

0xC400

l
    #nop
    addu    $2,$2,$3
    sw  $2,all

    .loc    1 926
LM296:
    jal Gal_anm

    .loc    1 927
LM297:
    jal Gal_ptn
    sh  $2,girl_num

    .loc    1 928
LM298:
    lw  $31,16($sp)
    addu    $sp,$sp,24
    j   $31
    .end    set_rensa_char
    .align  2
    .def    set_miss_char;  .val    set_miss_char;  .scl    2;  .type   0x21;   .endef
    .globl  set_miss_char

    .loc    1 931
LM299:
    .ent    set_miss_char
set_miss_char:
    .frame  $sp,24,$31      # vars= 0, regs= 1/0, args= 16, extra= 0
    .mask   0x80000000,-8
    .fmask  0x00000000,0
    subu    $sp,$sp,24
    sw  $31,16($sp)
    .def    char_no;    .val    4;  .scl    17; .type   0xc;    .endef

    .loc    1 933
LM300:
    sb  $0,r_bg_flg

    .loc    1 934
LM301:
    la  $3,csr+26
    sh  $0,0($3)

    .loc    1 936
LM302:
    andi    $4,$4,0x00ff
    lbu $2,no($4)
    #nop
    sll $2,$2,1
    lhu $2,char_prim($2)
    #nop
    sh  $2,-2($3)

    .loc    1 937
LM303:
    la  $2,rank_pal_pos
    sw  $2,-18($3)

    .loc    1 938
LM304:
    sll $4,$4,2
    la  $2,dsp_char
    addu    $4,$4,$2
    sw  $4,-10($3)

    .loc    1 940
LM305:
    .set    noreorder
    .set    nomacro
    jal set_pat
    addu    $4,$3,-26
    .s

0xEC00

 1165
LM371:
    sll $3,$2,2
    addu    $3,$3,$2
    sll $3,$3,1

    .loc    1 1167
LM372:
    andi    $2,$4,0x00ff
    .set    noreorder
    .set    nomacro
    beq $2,$0,$L179
    subu    $22,$5,$3
    .set    macro
    .set    reorder


    .loc    1 1169
LM373:
    la  $16,csr+24
    sll $2,$2,1
    lhu $2,mes_no_prim+20($2)
    #nop
    sh  $2,0($16)

    .loc    1 1170
LM374:
    la  $20,rank_pal_pos
    sw  $20,-16($16)

    .loc    1 1171
LM375:
    la  $17,dsp_miss_kai+12
    la  $19,dsp_miss_kai_x+6
    lhu $2,0($19)
    #nop
    sh  $2,0($17)

    .loc    1 1172
LM376:
    la  $2,dsp_miss_kai_y
    sll $18,$18,1
    addu    $18,$18,$2
    lhu $2,0($18)
    #nop
    sh  $2,2($17)

    .loc    1 1173
LM377:
    sw  $17,-8($16)

    .loc    1 1175
LM378:
    .set    noreorder
    .set    nomacro
    jal set_pat
    addu    $4,$16,-24
    .set    macro
    .set    reorder

    sll $2,$2,16
    sra $2,$2,16
    lw  $3,all
    #nop
    addu    $2,$2,$3
    sw  $2,all

    .loc    1 1177
LM379:
    andi    $2,$21,0x00ff
    sll $2,$2,1
    lhu $2,mes_no_prim+20($2)
    #nop
    sh  $2,0($16)

    .loc    1 1178
LM380:
    sw  $20,-16($16)

    .loc    1 1179
LM381:
    lhu $2,-6($1

0x1DEFC

ng *insaddr, u_long *contaddr);





# 23 "rank.c" 2

# 1 "C:/PS/PSX/INCLUDE/libgs.h" 1 3



 



 












 
typedef unsigned char PACKET;


 


 




typedef struct {
    VECTOR  scale;
    SVECTOR rotate;
    VECTOR  t

CD Warning#

Should the game's disc be played on a CD player other than a PlayStation, a warning featuring the voice of Miharu Tatebayashi will play.

Japanese

English

あれ?知らない人はいないと思うけど、私は立林美晴です。もうここに隠れてもダメかな?見つけてくれたのは嬉しいんだけど、このディスクはPlayStation CD、つまりPlayStation用ゲームなの。コンピューター用のデータが入っているから、再生しない方がいいと思うな。私はゲーム中にもいるからそっちで会おうね絶対だよ

Huh? I’d be surprised if there’s anyone who doesn’t know me, but I’m Miharu Tatebayashi. I guess hiding here isn’t going to work anymore, huh? I’m really glad you found me, but just so you know—this disc is a PlayStation CD. That means it’s a game made for the PlayStation. It’s got data meant for the console, so I don’t think you should try playing it on a computer. I’m in the game too, so let’s meet there, okay? You have to promise!

References#


  1. GAME Data Room - PlayStation Software List 1997↩︎