Mercurial > hg > xmms-sid
annotate 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 |
rev | line source |
---|---|
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
1 #include "xs_player.h" |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
2 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
3 #ifdef HAVE_SIDPLAY1 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
4 #include "xs_sidplay1.h" |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
5 #endif |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
6 #ifdef HAVE_SIDPLAY2 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
7 #include "xs_sidplay2.h" |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
8 #endif |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
9 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
10 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
11 /* List of emulator engines |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
12 */ |
784 | 13 static const XSEngine xs_enginelist[] = |
14 { | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
15 #ifdef HAVE_SIDPLAY1 |
784 | 16 { |
17 XS_ENG_SIDPLAY1, | |
18 xs_sidplay1_probe, | |
19 xs_sidplay1_init, xs_sidplay1_close, | |
20 xs_sidplay1_initsong, xs_sidplay1_fillbuffer, | |
21 xs_sidplay1_load, xs_sidplay1_delete, | |
22 xs_sidplay1_getinfo, xs_sidplay1_updateinfo, | |
23 NULL | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
24 }, |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
25 #endif |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
26 #ifdef HAVE_SIDPLAY2 |
784 | 27 { |
28 XS_ENG_SIDPLAY2, | |
29 xs_sidplay2_probe, | |
30 xs_sidplay2_init, xs_sidplay2_close, | |
31 xs_sidplay2_initsong, xs_sidplay2_fillbuffer, | |
32 xs_sidplay2_load, xs_sidplay2_delete, | |
33 xs_sidplay2_getinfo, xs_sidplay2_updateinfo, | |
34 xs_sidplay2_flush | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
35 }, |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
36 #endif |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
37 }; |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
38 |
784 | 39 static const gint xs_nenginelist = sizeof(xs_enginelist) / sizeof(xs_enginelist[0]); |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
40 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
41 |
751 | 42 gboolean xs_init_emu_engine(int *configured, XSEngineState *status) |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
43 { |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
44 gint engine; |
784 | 45 gboolean initialized = FALSE; |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
46 |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
47 XSDEBUG("initializing emulator engine #%i...\n", *configured); |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
48 |
784 | 49 for (engine = 0; engine < xs_nenginelist && !initialized; engine++) |
50 { | |
51 if (xs_enginelist[engine].plrIdent == *configured && | |
52 xs_enginelist[engine].plrInit(status)) | |
53 { | |
54 initialized = TRUE; | |
55 status->engine = &xs_enginelist[engine]; | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
56 } |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
57 } |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
58 |
784 | 59 XSDEBUG("init#1: %s, %i\n", initialized ? "OK" : "FAILED", *configured); |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
60 |
784 | 61 #if 0 |
62 for (engine = 0; engine < xs_nenginelist && !initialized; engine++) | |
63 { | |
64 if (xs_enginelist[engine].plrInit(status)) | |
65 { | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
66 initialized = TRUE; |
784 | 67 status->engine = &xs_enginelist[engine]; |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
68 *configured = xs_enginelist[engine].plrIdent; |
784 | 69 } |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
70 } |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
71 |
784 | 72 XSDEBUG("init#2: %s, %i\n", initialized ? "OK" : "FAILED", *configured); |
73 #endif | |
74 | |
726
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
75 return initialized; |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
76 } |
53a4210889e2
Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
77 |