SSBM Decomp
Loading...
Searching...
No Matches
soundtest.c File Reference
#include "soundtest.h"
#include "gm/forward.h"
#include "gm/gm_unsplit.h"
#include "gm/gmmain_lib.h"
#include "if/textlib.h"
#include "if/types.h"
#include "lb/lbarchive.h"
#include "lb/lbaudio_ax.h"
#include "lb/lbcardgame.h"
#include "lb/lbcardnew.h"
#include "lb/lblanguage.h"
#include "lb/lbsnap.h"
#include "ty/toy.h"
#include "ty/tylist.h"
#include <printf.h>
#include <dolphin/mtx.h>
#include <baselib/cobj.h>
#include <baselib/fog.h>
#include <baselib/gobj.h>
#include <baselib/gobjgxlink.h>
#include <baselib/gobjobject.h>
#include <baselib/gobjplink.h>
#include <baselib/gobjproc.h>
#include <baselib/gobjuserdata.h>
#include <baselib/lobj.h>
#include <baselib/memory.h>
#include <baselib/particle.h>
#include <baselib/sislib.h>
#include <baselib/sobjlib.h>
#include <MSL/stdio.h>
#include <MSL/string.h>

Macros

#define ST_MIN(a, b)   ((a) < (b) ? (a) : (b))
 

Functions

void un_802FF7DC (void)
 
bool un_802FF884 (char *unused)
 
int un_802FF88C (void)
 
void un_802FF934 (void)
 
int un_802FF958 (void)
 
int un_802FF99C (int arg0)
 
int un_802FFB58 (int arg0)
 un_802FF9DC
 
int un_802FFBAC (int arg0)
 
bool un_802FFC30 (void)
 
bool un_802FFC6C (bool update_scene)
 
bool fn_802FFCC8 (void)
 
void un_802FFD94 (int arg0, void *arg1, void *arg2)
 un_802FFCD0
 
int fn_802FFE0C (int arg0)
 
bool fn_802FFE6C (bool update_scene)
 
bool un_802FFEA4 (bool update_scene)
 
void un_802FFEE0 (s32 *arg0)
 
bool un_803001DC (bool update_scene)
 un_802FFF2C
 
int un_80300218 (void)
 
int un_80300248 (int arg0)
 
int un_80300290 (int arg0)
 
bool un_803002FC (bool update_scene)
 
s32 un_80300338 (void)
 
s32 un_80300378 (void)
 
s32 un_803003C4 (void)
 
s32 un_80300410 (s32 arg0)
 
int un_80300480 (int arg0)
 
int un_803004B4 (int arg0)
 
int un_803004E8 (int arg0)
 
int un_8030051C (int arg0)
 
int un_80300550 (int arg0)
 
int un_80300584 (int arg0)
 
int un_803005B8 (int arg0)
 
int un_803005EC (int arg0)
 
int un_80300620 (int arg0)
 
int un_80300654 (int arg0)
 
int un_80300688 (int arg0)
 
int un_803006BC (int arg0)
 
int un_803006F0 (int arg0)
 
int un_80300724 (int arg0)
 
void un_80300758 (int arg0)
 
void un_80300790 (int arg0)
 
int un_803007C8 (int arg0)
 
int un_803007FC (int arg0)
 
int un_80300830 (int arg0)
 
int un_80300864 (int arg0)
 
int un_80300898 (int arg0)
 
int un_803008CC (int arg0)
 
int un_80300900 (int arg0)
 
int un_80300934 (int arg0)
 
bool un_80300968 (bool update_scene)
 
bool un_803009A4 (bool update_scene)
 
s32 un_803009E0 (void)
 
int un_80300A88 (void)
 
bool un_80300AB8 (bool update_scene)
 
bool un_80300AF4 (int arg0)
 
bool un_80300B58 (int arg0)
 
bool un_80300BBC (bool update_scene)
 
bool un_80300BF8 (bool update_scene)
 
bool un_80300C3C (bool update_scene)
 
bool un_80300C80 (int arg0)
 
void fn_80300CC8 (int arg0)
 
int un_80300D78 (int arg0)
 
void fn_80300DE0 (int arg0)
 
int un_80300E74 (int arg0)
 
void fn_80300ED0 (int arg0)
 
int un_80300F3C (int arg0)
 
s32 un_80300F98 (s32 arg0)
 
bool un_80300FEC (bool update_scene)
 
int un_80301028 (int arg0)
 
int un_80301074 (int arg0)
 
int un_803010C0 (int arg0)
 
int fn_8030110C (int arg0)
 
void fn_803011EC (int arg0)
 
int un_80301280 (int arg0)
 
int un_803012D4 (int arg0)
 
bool un_80301328 (bool update_scene)
 
bool un_8030136C (bool update_scene)
 
bool un_803013B0 (bool update_scene)
 
int un_803013EC (int arg0)
 
int un_80301420 (int arg0)
 
bool un_80301454 (bool update_scene)
 
bool un_80301490 (bool update_scene)
 
bool un_803014CC (bool update_scene)
 
bool un_80301508 (bool update_scene)
 
bool un_80301544 (bool update_scene)
 
bool un_80301580 (bool update_scene)
 
bool un_803015BC (bool update_scene)
 
bool un_803015F8 (bool update_scene)
 
int un_80301634 (void)
 
int un_803016D8 (int arg0)
 
int un_80301734 (int arg0)
 
int un_8030178C (int arg0)
 
int un_80301800 (int arg0)
 
int un_80301840 (int arg0)
 
int un_803018BC (int arg0)
 
int un_8030191C (int arg0)
 
int un_80301964 (int arg0)
 
int un_80301A64 (int arg0)
 
int un_80301AD4 (int arg0)
 
int un_80301B48 (int arg0)
 
void un_80301BA8 (void *arg0)
 
void un_80301C64 (un_80301C64_t *arg0)
 
int un_80301C80 (int arg0)
 
void un_80301CE0 (int arg0)
 
bool un_80301D40 (bool update_scene)
 
int un_80301D7C (int arg0)
 
bool un_80301DCC (bool update_scene)
 
bool un_80301E08 (bool update_scene)
 

Variables

static int un_803F9FD0
 
static float un_803F9FDC
 
static int un_803FA070
 
static int un_803FA090
 
static float un_803FA09C
 
static int un_803FA0B0
 
struct { 
 
   u8   _pad0 [0x220] 
 
   u16   x220 
 
   u8   _pad222 [0x2] 
 
   u8   x224 
 
   u8   x225 
 
   u8   x226 
 
   u8   x227 
 
un_803FA128 
 
struct { 
 
   int   x0 
 
   int   x4 
 
   int   x8 
 
   int   xC 
 
   int   x10 
 
   u8   _pad14 [0x14] 
 
   int   x28 
 
   int   x2C 
 
   int   x30 
 
   u8   _pad34 [0xC4] 
 
   int   xF8 
 
   int   xFC 
 
   int   x100 
 
   int   x104 
 
   int   x108 
 
   int   x10C 
 
   int   x110 
 
   int   x114 
 
   int   x118 
 
   int   x11C 
 
   int   x120 
 
   int   x124 
 
   int   x128 
 
   int   x12C 
 
   int   x130 
 
   u8   _pad134 [0x4] 
 
   void *   x138 
 
   u8   _pad13C [0x8] 
 
   u8   x144 [0x44] 
 
   s32   x188 
 
un_803FA258 
 
static u16 un_803FA348
 
static u8 un_803FA34C
 
static int un_803FA658
 
static int un_803FA8E8
 
static u8 un_803FAA44 [0xC0]
 
static int un_803FB168
 
static u8 un_803FB60C [0xE0]
 
static u8 un_803FB728 [0xC0]
 
static u8 un_803FB870 [0xE0]
 
static u8 un_803FB98C [0xC0]
 
static u8 un_803FBA9C [0xC0]
 
static u8 un_803FBB98 [0xC0]
 
static u8 un_803FBCAC [0xC0]
 
static u8 un_803FBDC0 [0xC0]
 
static u8 un_803FBFFC [0xC0]
 
static u8 un_803FC0FC [0xC0]
 
static u8 un_803FC22C [0x1F4]
 
static u8 un_803FC63C [0x80]
 
static u8 un_803FC70C [0x11C]
 
static u8 un_803FC828 [0xA0]
 
static u8 un_803FC8C8 [0x168]
 
static u8 un_803FCA40 [0x1A0]
 
static u8 un_803FCC38 [0xFC]
 
static u8 un_803FCD34 [0x118]
 
static u8 un_803FCE4C [0xE0]
 
static u8 un_803FD064 [0x1C0]
 
static u8 un_803FD310 [0x27C]
 
static u8 un_803FD58C [0x2D8]
 
static u8 un_803FD864 [0x294]
 
static u8 un_803FDAF8 [0x80]
 
static u8 un_803FDB9C [0x84]
 
char un_803FD224 []
 
char un_803FD230 []
 
char un_803FD23C []
 
char un_803FD24C []
 
char un_803FD258 []
 
char un_803FD264 []
 
void * un_803FD274
 
char un_803FD28C []
 
char un_803FD29C []
 
char un_803FD2AC []
 
static int un_804D5850 = 0x7F
 
static int un_804D5854 = 0x7F
 
static int un_804D5858 = 0x7F
 
static int un_804D585C = -1
 
static int * un_804D6DA8
 
static int un_804D6DAC
 
static int un_804D6DB0
 
static int un_804D6DB4
 
static int un_804D6DB8
 
static int un_804D6DBC
 
static int un_804D6DC0
 
s32 un_804D6DC8
 
s32 un_804D6DCC
 
float un_804D6DD0
 
s32 un_804D6DD8
 
s32 un_804D6DDC
 
s32 un_804D6DE0
 
s32 un_804D6DE4
 
s32 un_804D6DE8
 
s32 un_804D6DEC
 
s32 un_804D6DF0
 
s32 un_804D6DF4
 
s32 un_804D6DF8
 
s32 un_804D6DFC
 
s32 un_804D6E00
 
void * un_804D6E04
 
HSD_GObjun_804D6E08
 
s32 un_804D6E0C
 
s32 un_804D6E10
 
s32 un_804D6E14
 
s32 un_804D5908
 
s32 un_804D590C
 
s32 un_804D5910
 
char un_804D5978 []
 
char un_804D5980 []
 
char un_804D5988 []
 
char un_804D5990 []
 
u8 gmMainLib_8045A6C0 []
 
float un_804DDC48
 
float un_804DDC4C
 
float un_804DDC50
 

Macro Definition Documentation

◆ ST_MIN

#define ST_MIN (   a,
  b 
)    ((a) < (b) ? (a) : (b))

Function Documentation

◆ un_802FF7DC()

void un_802FF7DC ( void  )

◆ un_802FF884()

bool un_802FF884 ( char *  unused)

◆ un_802FF88C()

int un_802FF88C ( void  )

◆ un_802FF934()

void un_802FF934 ( void  )

◆ un_802FF958()

int un_802FF958 ( void  )

◆ un_802FF99C()

int un_802FF99C ( int  arg0)

◆ un_802FFB58()

int un_802FFB58 ( int  arg0)

◆ un_802FFBAC()

int un_802FFBAC ( int  arg0)

◆ un_802FFC30()

bool un_802FFC30 ( void  )

◆ un_802FFC6C()

bool un_802FFC6C ( bool  update_scene)

◆ fn_802FFCC8()

bool fn_802FFCC8 ( void  )

◆ un_802FFD94()

void un_802FFD94 ( int  arg0,
void *  arg1,
void *  arg2 
)

◆ fn_802FFE0C()

int fn_802FFE0C ( int  arg0)

◆ fn_802FFE6C()

bool fn_802FFE6C ( bool  update_scene)

◆ un_802FFEA4()

bool un_802FFEA4 ( bool  update_scene)

◆ un_802FFEE0()

void un_802FFEE0 ( s32 arg0)

◆ un_803001DC()

bool un_803001DC ( bool  update_scene)

◆ un_80300218()

int un_80300218 ( void  )

◆ un_80300248()

int un_80300248 ( int  arg0)

◆ un_80300290()

int un_80300290 ( int  arg0)

◆ un_803002FC()

bool un_803002FC ( bool  update_scene)

◆ un_80300338()

s32 un_80300338 ( void  )

◆ un_80300378()

s32 un_80300378 ( void  )

◆ un_803003C4()

s32 un_803003C4 ( void  )

◆ un_80300410()

s32 un_80300410 ( s32  arg0)

◆ un_80300480()

int un_80300480 ( int  arg0)

◆ un_803004B4()

int un_803004B4 ( int  arg0)

◆ un_803004E8()

int un_803004E8 ( int  arg0)

◆ un_8030051C()

int un_8030051C ( int  arg0)

◆ un_80300550()

int un_80300550 ( int  arg0)

◆ un_80300584()

int un_80300584 ( int  arg0)

◆ un_803005B8()

int un_803005B8 ( int  arg0)

◆ un_803005EC()

int un_803005EC ( int  arg0)

◆ un_80300620()

int un_80300620 ( int  arg0)

◆ un_80300654()

int un_80300654 ( int  arg0)

◆ un_80300688()

int un_80300688 ( int  arg0)

◆ un_803006BC()

int un_803006BC ( int  arg0)

◆ un_803006F0()

int un_803006F0 ( int  arg0)

◆ un_80300724()

int un_80300724 ( int  arg0)

◆ un_80300758()

void un_80300758 ( int  arg0)

◆ un_80300790()

void un_80300790 ( int  arg0)

◆ un_803007C8()

int un_803007C8 ( int  arg0)

◆ un_803007FC()

int un_803007FC ( int  arg0)

◆ un_80300830()

int un_80300830 ( int  arg0)

◆ un_80300864()

int un_80300864 ( int  arg0)

◆ un_80300898()

int un_80300898 ( int  arg0)

◆ un_803008CC()

int un_803008CC ( int  arg0)

◆ un_80300900()

int un_80300900 ( int  arg0)

◆ un_80300934()

int un_80300934 ( int  arg0)

◆ un_80300968()

bool un_80300968 ( bool  update_scene)

◆ un_803009A4()

bool un_803009A4 ( bool  update_scene)

◆ un_803009E0()

s32 un_803009E0 ( void  )

◆ un_80300A88()

int un_80300A88 ( void  )

◆ un_80300AB8()

bool un_80300AB8 ( bool  update_scene)

◆ un_80300AF4()

bool un_80300AF4 ( int  arg0)

◆ un_80300B58()

bool un_80300B58 ( int  arg0)

◆ un_80300BBC()

bool un_80300BBC ( bool  update_scene)

◆ un_80300BF8()

bool un_80300BF8 ( bool  update_scene)

◆ un_80300C3C()

bool un_80300C3C ( bool  update_scene)

◆ un_80300C80()

bool un_80300C80 ( int  arg0)

◆ fn_80300CC8()

void fn_80300CC8 ( int  arg0)

◆ un_80300D78()

int un_80300D78 ( int  arg0)

◆ fn_80300DE0()

void fn_80300DE0 ( int  arg0)

◆ un_80300E74()

int un_80300E74 ( int  arg0)

◆ fn_80300ED0()

void fn_80300ED0 ( int  arg0)

◆ un_80300F3C()

int un_80300F3C ( int  arg0)

◆ un_80300F98()

s32 un_80300F98 ( s32  arg0)

◆ un_80300FEC()

bool un_80300FEC ( bool  update_scene)

◆ un_80301028()

int un_80301028 ( int  arg0)

◆ un_80301074()

int un_80301074 ( int  arg0)

◆ un_803010C0()

int un_803010C0 ( int  arg0)

◆ fn_8030110C()

int fn_8030110C ( int  arg0)

◆ fn_803011EC()

void fn_803011EC ( int  arg0)

◆ un_80301280()

int un_80301280 ( int  arg0)

◆ un_803012D4()

int un_803012D4 ( int  arg0)

◆ un_80301328()

bool un_80301328 ( bool  update_scene)

◆ un_8030136C()

bool un_8030136C ( bool  update_scene)

◆ un_803013B0()

bool un_803013B0 ( bool  update_scene)

◆ un_803013EC()

int un_803013EC ( int  arg0)

◆ un_80301420()

int un_80301420 ( int  arg0)

◆ un_80301454()

bool un_80301454 ( bool  update_scene)

◆ un_80301490()

bool un_80301490 ( bool  update_scene)

◆ un_803014CC()

bool un_803014CC ( bool  update_scene)

◆ un_80301508()

bool un_80301508 ( bool  update_scene)

◆ un_80301544()

bool un_80301544 ( bool  update_scene)

◆ un_80301580()

bool un_80301580 ( bool  update_scene)

◆ un_803015BC()

bool un_803015BC ( bool  update_scene)

◆ un_803015F8()

bool un_803015F8 ( bool  update_scene)

◆ un_80301634()

int un_80301634 ( void  )

◆ un_803016D8()

int un_803016D8 ( int  arg0)

◆ un_80301734()

int un_80301734 ( int  arg0)

◆ un_8030178C()

int un_8030178C ( int  arg0)

◆ un_80301800()

int un_80301800 ( int  arg0)

◆ un_80301840()

int un_80301840 ( int  arg0)

◆ un_803018BC()

int un_803018BC ( int  arg0)

◆ un_8030191C()

int un_8030191C ( int  arg0)

◆ un_80301964()

int un_80301964 ( int  arg0)

◆ un_80301A64()

int un_80301A64 ( int  arg0)

◆ un_80301AD4()

int un_80301AD4 ( int  arg0)

◆ un_80301B48()

int un_80301B48 ( int  arg0)

◆ un_80301BA8()

void un_80301BA8 ( void *  arg0)

◆ un_80301C64()

void un_80301C64 ( un_80301C64_t arg0)

◆ un_80301C80()

int un_80301C80 ( int  arg0)

◆ un_80301CE0()

void un_80301CE0 ( int  arg0)

◆ un_80301D40()

bool un_80301D40 ( bool  update_scene)

◆ un_80301D7C()

int un_80301D7C ( int  arg0)

◆ un_80301DCC()

bool un_80301DCC ( bool  update_scene)

◆ un_80301E08()

bool un_80301E08 ( bool  update_scene)

Variable Documentation

◆ un_803F9FD0

int un_803F9FD0
static

◆ un_803F9FDC

float un_803F9FDC
static

◆ un_803FA070

int un_803FA070
static

◆ un_803FA090

int un_803FA090
static

◆ un_803FA09C

float un_803FA09C
static

◆ un_803FA0B0

int un_803FA0B0
static

◆ _pad0

u8 _pad0[0x220]

◆ x220

u16 x220

◆ _pad222

u8 _pad222[0x2]

◆ x224

u8 x224

◆ x225

u8 x225

◆ x226

u8 x226

◆ x227

u8 x227

◆ [struct]

struct { ... } un_803FA128

◆ x0

int x0

◆ x4

int x4

◆ x8

int x8

◆ xC

int xC

◆ x10

int x10

◆ _pad14

u8 _pad14[0x14]

◆ x28

int x28

◆ x2C

int x2C

◆ x30

int x30

◆ _pad34

u8 _pad34[0xC4]

◆ xF8

int xF8

◆ xFC

int xFC

◆ x100

int x100

◆ x104

int x104

◆ x108

int x108

◆ x10C

int x10C

◆ x110

int x110

◆ x114

int x114

◆ x118

int x118

◆ x11C

int x11C

◆ x120

int x120

◆ x124

int x124

◆ x128

int x128

◆ x12C

int x12C

◆ x130

int x130

◆ _pad134

u8 _pad134[0x4]

◆ x138

void* x138

◆ _pad13C

u8 _pad13C[0x8]

◆ x144

u8 x144[0x44]

◆ x188

s32 x188

◆ [struct]

struct { ... } un_803FA258

◆ un_803FA348

u16 un_803FA348
static

◆ un_803FA34C

u8 un_803FA34C
static

◆ un_803FA658

int un_803FA658
static

◆ un_803FA8E8

int un_803FA8E8
static

◆ un_803FAA44

u8 un_803FAA44[0xC0]
static

◆ un_803FB168

int un_803FB168
static

◆ un_803FB60C

u8 un_803FB60C[0xE0]
static

◆ un_803FB728

u8 un_803FB728[0xC0]
static

◆ un_803FB870

u8 un_803FB870[0xE0]
static

◆ un_803FB98C

u8 un_803FB98C[0xC0]
static

◆ un_803FBA9C

u8 un_803FBA9C[0xC0]
static

◆ un_803FBB98

u8 un_803FBB98[0xC0]
static

◆ un_803FBCAC

u8 un_803FBCAC[0xC0]
static

◆ un_803FBDC0

u8 un_803FBDC0[0xC0]
static

◆ un_803FBFFC

u8 un_803FBFFC[0xC0]
static

◆ un_803FC0FC

u8 un_803FC0FC[0xC0]
static

◆ un_803FC22C

u8 un_803FC22C[0x1F4]
static

◆ un_803FC63C

u8 un_803FC63C[0x80]
static

◆ un_803FC70C

u8 un_803FC70C[0x11C]
static

◆ un_803FC828

u8 un_803FC828[0xA0]
static

◆ un_803FC8C8

u8 un_803FC8C8[0x168]
static

◆ un_803FCA40

u8 un_803FCA40[0x1A0]
static

◆ un_803FCC38

u8 un_803FCC38[0xFC]
static

◆ un_803FCD34

u8 un_803FCD34[0x118]
static

◆ un_803FCE4C

u8 un_803FCE4C[0xE0]
static

◆ un_803FD064

u8 un_803FD064[0x1C0]
static

◆ un_803FD310

u8 un_803FD310[0x27C]
static

◆ un_803FD58C

u8 un_803FD58C[0x2D8]
static

◆ un_803FD864

u8 un_803FD864[0x294]
static

◆ un_803FDAF8

u8 un_803FDAF8[0x80]
static

◆ un_803FDB9C

u8 un_803FDB9C[0x84]
static

◆ un_803FD224

char un_803FD224[]
extern

◆ un_803FD230

char un_803FD230[]
extern

◆ un_803FD23C

char un_803FD23C[]
extern

◆ un_803FD24C

char un_803FD24C[]
extern

◆ un_803FD258

char un_803FD258[]
extern

◆ un_803FD264

char un_803FD264[]
extern

◆ un_803FD274

void* un_803FD274
extern

◆ un_803FD28C

char un_803FD28C[]
extern

◆ un_803FD29C

char un_803FD29C[]
extern

◆ un_803FD2AC

char un_803FD2AC[]
extern

◆ un_804D5850

int un_804D5850 = 0x7F
static

◆ un_804D5854

int un_804D5854 = 0x7F
static

◆ un_804D5858

int un_804D5858 = 0x7F
static

◆ un_804D585C

int un_804D585C = -1
static

◆ un_804D6DA8

int* un_804D6DA8
static

◆ un_804D6DAC

int un_804D6DAC
static

◆ un_804D6DB0

int un_804D6DB0
static

◆ un_804D6DB4

int un_804D6DB4
static

◆ un_804D6DB8

int un_804D6DB8
static

◆ un_804D6DBC

int un_804D6DBC
static

◆ un_804D6DC0

int un_804D6DC0
static

◆ un_804D6DC8

s32 un_804D6DC8
extern

◆ un_804D6DCC

s32 un_804D6DCC
extern

◆ un_804D6DD0

float un_804D6DD0
extern

◆ un_804D6DD8

s32 un_804D6DD8
extern

◆ un_804D6DDC

s32 un_804D6DDC
extern

◆ un_804D6DE0

s32 un_804D6DE0
extern

◆ un_804D6DE4

s32 un_804D6DE4
extern

◆ un_804D6DE8

s32 un_804D6DE8
extern

◆ un_804D6DEC

s32 un_804D6DEC
extern

◆ un_804D6DF0

s32 un_804D6DF0
extern

◆ un_804D6DF4

s32 un_804D6DF4
extern

◆ un_804D6DF8

s32 un_804D6DF8
extern

◆ un_804D6DFC

s32 un_804D6DFC
extern

◆ un_804D6E00

s32 un_804D6E00
extern

◆ un_804D6E04

void* un_804D6E04
extern

◆ un_804D6E08

HSD_GObj* un_804D6E08
extern

◆ un_804D6E0C

s32 un_804D6E0C
extern

◆ un_804D6E10

s32 un_804D6E10
extern

◆ un_804D6E14

s32 un_804D6E14
extern

◆ un_804D5908

s32 un_804D5908
extern

◆ un_804D590C

s32 un_804D590C
extern

◆ un_804D5910

s32 un_804D5910
extern

◆ un_804D5978

char un_804D5978[]
extern

◆ un_804D5980

char un_804D5980[]
extern

◆ un_804D5988

char un_804D5988[]
extern

◆ un_804D5990

char un_804D5990[]
extern

◆ gmMainLib_8045A6C0

u8 gmMainLib_8045A6C0[]
extern

◆ un_804DDC48

float un_804DDC48
extern

◆ un_804DDC4C

float un_804DDC4C
extern

◆ un_804DDC50

float un_804DDC50
extern