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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
13 static const XSEngine xs_enginelist[] =
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
16 {
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
17 XS_ENG_SIDPLAY1,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
18 xs_sidplay1_probe,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
19 xs_sidplay1_init, xs_sidplay1_close,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
20 xs_sidplay1_initsong, xs_sidplay1_fillbuffer,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
21 xs_sidplay1_load, xs_sidplay1_delete,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
22 xs_sidplay1_getinfo, xs_sidplay1_updateinfo,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
27 {
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
28 XS_ENG_SIDPLAY2,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
29 xs_sidplay2_probe,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
30 xs_sidplay2_init, xs_sidplay2_close,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
31 xs_sidplay2_initsong, xs_sidplay2_fillbuffer,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
32 xs_sidplay2_load, xs_sidplay2_delete,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
33 xs_sidplay2_getinfo, xs_sidplay2_updateinfo,
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 726
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
49 for (engine = 0; engine < xs_nenginelist && !initialized; engine++)
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
50 {
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
51 if (xs_enginelist[engine].plrIdent == *configured &&
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
52 xs_enginelist[engine].plrInit(status))
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
53 {
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
54 initialized = TRUE;
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
61 #if 0
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
62 for (engine = 0; engine < xs_nenginelist && !initialized; engine++)
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
63 {
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
64 if (xs_enginelist[engine].plrInit(status))
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
65 {
726
53a4210889e2 Move engine choosing / initialization code to xs_player.c
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
66 initialized = TRUE;
784
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
72 XSDEBUG("init#2: %s, %i\n", initialized ? "OK" : "FAILED", *configured);
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
73 #endif
45b8649f0ef9 Cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 753
diff changeset
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