Mercurial > hg > xmms-sid
comparison src/xs_player.c @ 784:45b8649f0ef9
Cleanup.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 06 Nov 2012 13:44:46 +0200 |
parents | 36c6a6e629bb |
children |
comparison
equal
deleted
inserted
replaced
783:37ab2fba30c8 | 784:45b8649f0ef9 |
---|---|
8 #endif | 8 #endif |
9 | 9 |
10 | 10 |
11 /* List of emulator engines | 11 /* List of emulator engines |
12 */ | 12 */ |
13 static const XSEngine xs_enginelist[] = { | 13 static const XSEngine xs_enginelist[] = |
14 { | |
14 #ifdef HAVE_SIDPLAY1 | 15 #ifdef HAVE_SIDPLAY1 |
15 {XS_ENG_SIDPLAY1, | 16 { |
16 xs_sidplay1_probe, | 17 XS_ENG_SIDPLAY1, |
17 xs_sidplay1_init, xs_sidplay1_close, | 18 xs_sidplay1_probe, |
18 xs_sidplay1_initsong, xs_sidplay1_fillbuffer, | 19 xs_sidplay1_init, xs_sidplay1_close, |
19 xs_sidplay1_load, xs_sidplay1_delete, | 20 xs_sidplay1_initsong, xs_sidplay1_fillbuffer, |
20 xs_sidplay1_getinfo, xs_sidplay1_updateinfo, | 21 xs_sidplay1_load, xs_sidplay1_delete, |
21 NULL | 22 xs_sidplay1_getinfo, xs_sidplay1_updateinfo, |
23 NULL | |
22 }, | 24 }, |
23 #endif | 25 #endif |
24 #ifdef HAVE_SIDPLAY2 | 26 #ifdef HAVE_SIDPLAY2 |
25 {XS_ENG_SIDPLAY2, | 27 { |
26 xs_sidplay2_probe, | 28 XS_ENG_SIDPLAY2, |
27 xs_sidplay2_init, xs_sidplay2_close, | 29 xs_sidplay2_probe, |
28 xs_sidplay2_initsong, xs_sidplay2_fillbuffer, | 30 xs_sidplay2_init, xs_sidplay2_close, |
29 xs_sidplay2_load, xs_sidplay2_delete, | 31 xs_sidplay2_initsong, xs_sidplay2_fillbuffer, |
30 xs_sidplay2_getinfo, xs_sidplay2_updateinfo, | 32 xs_sidplay2_load, xs_sidplay2_delete, |
31 xs_sidplay2_flush | 33 xs_sidplay2_getinfo, xs_sidplay2_updateinfo, |
34 xs_sidplay2_flush | |
32 }, | 35 }, |
33 #endif | 36 #endif |
34 }; | 37 }; |
35 | 38 |
36 static const gint xs_nenginelist = (sizeof(xs_enginelist) / sizeof(xs_enginelist[0])); | 39 static const gint xs_nenginelist = sizeof(xs_enginelist) / sizeof(xs_enginelist[0]); |
37 | 40 |
38 | 41 |
39 gboolean xs_init_emu_engine(int *configured, XSEngineState *status) | 42 gboolean xs_init_emu_engine(int *configured, XSEngineState *status) |
40 { | 43 { |
41 gint engine; | 44 gint engine; |
42 gboolean initialized; | 45 gboolean initialized = FALSE; |
43 | 46 |
44 XSDEBUG("initializing emulator engine #%i...\n", *configured); | 47 XSDEBUG("initializing emulator engine #%i...\n", *configured); |
45 | 48 |
46 engine = 0; | 49 for (engine = 0; engine < xs_nenginelist && !initialized; engine++) |
47 initialized = FALSE; | 50 { |
48 while (engine < xs_nenginelist && !initialized) { | 51 if (xs_enginelist[engine].plrIdent == *configured && |
49 if (xs_enginelist[engine].plrIdent == *configured) { | 52 xs_enginelist[engine].plrInit(status)) |
50 if (xs_enginelist[engine].plrInit(status)) { | 53 { |
51 initialized = TRUE; | 54 initialized = TRUE; |
52 status->engine = (XSEngine *) & xs_enginelist[engine]; | 55 status->engine = &xs_enginelist[engine]; |
53 } | |
54 } | 56 } |
55 engine++; | |
56 } | 57 } |
57 | 58 |
58 XSDEBUG("init#1: %s, %i\n", initialized ? "OK" : "FAILED", engine); | 59 XSDEBUG("init#1: %s, %i\n", initialized ? "OK" : "FAILED", *configured); |
59 | 60 |
60 engine = 0; | 61 #if 0 |
61 while (engine < xs_nenginelist && !initialized) { | 62 for (engine = 0; engine < xs_nenginelist && !initialized; engine++) |
62 if (xs_enginelist[engine].plrInit(status)) { | 63 { |
64 if (xs_enginelist[engine].plrInit(status)) | |
65 { | |
63 initialized = TRUE; | 66 initialized = TRUE; |
64 status->engine = (XSEngine *) &xs_enginelist[engine]; | 67 status->engine = &xs_enginelist[engine]; |
65 *configured = xs_enginelist[engine].plrIdent; | 68 *configured = xs_enginelist[engine].plrIdent; |
66 } else | 69 } |
67 engine++; | |
68 } | 70 } |
69 | 71 |
70 XSDEBUG("init#2: %s, %i\n", initialized ? "OK" : "FAILED", engine); | 72 XSDEBUG("init#2: %s, %i\n", initialized ? "OK" : "FAILED", *configured); |
73 #endif | |
74 | |
71 return initialized; | 75 return initialized; |
72 } | 76 } |
73 | 77 |