annotate src/xs_backend.h @ 927:8fc22804ab61

Added tag dev-0_8_97 for changeset 970ff4d30e89
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 13 Nov 2012 18:57:23 +0200
parents 4c6c5247de7d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
1 #ifndef XS_PLAYER_H
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
2 #define XS_PLAYER_H
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
3
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
4 #include "xmms-sid.h"
872
b02f934d8224 Move some code to xs_backend.
Matti Hamalainen <ccr@tnsp.org>
parents: 799
diff changeset
5 #include "xs_support.h"
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
6
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7 #ifdef __cplusplus
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
8 extern "C" {
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
9 #endif
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
10
751
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
11 struct XSEngineState;
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
12
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
13 typedef struct
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
14 {
660
b0743dc9165d Change tabs to 4 spaces, everywhere.
Matti Hamalainen <ccr@tnsp.org>
parents: 657
diff changeset
15 gint plrIdent;
751
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
16 gboolean (*plrProbe)(XSFile *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
17 gboolean (*plrInit)(struct XSEngineState *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
18 void (*plrClose)(struct XSEngineState *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
19 gboolean (*plrInitSong)(struct XSEngineState *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
20 guint (*plrFillBuffer)(struct XSEngineState *, gchar *, guint);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
21 gboolean (*plrLoadSID)(struct XSEngineState *, gchar *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
22 void (*plrDeleteSID)(struct XSEngineState *);
753
36c6a6e629bb Rename some variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 751
diff changeset
23 XSTuneInfo* (*plrGetSIDInfo)(const gchar *);
751
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
24 gboolean (*plrUpdateSIDInfo)(struct XSEngineState *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
25 void (*plrFlush)(struct XSEngineState *);
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
26 } XSEngine;
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
27
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
28
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
29 typedef struct XSEngineState
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
30 {
753
36c6a6e629bb Rename some variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 751
diff changeset
31 gint audioFrequency, /* Audio settings */
684
4bf845090a25 Indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
32 audioChannels,
748
d9d769b5dbe2 Remove oversampling support.
Matti Hamalainen <ccr@tnsp.org>
parents: 726
diff changeset
33 audioBitsPerSample;
684
4bf845090a25 Indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
34 AFormat audioFormat;
748
d9d769b5dbe2 Remove oversampling support.
Matti Hamalainen <ccr@tnsp.org>
parents: 726
diff changeset
35
753
36c6a6e629bb Rename some variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 751
diff changeset
36 void *internal; /* SID-emulation internal engine data */
36c6a6e629bb Rename some variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 751
diff changeset
37 XSEngine *engine; /* Selected player engine */
798
4c5b695fd85e Rename variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 791
diff changeset
38 gboolean error,
799
13483b855058 Fix subsong control window problems during pause state.
Matti Hamalainen <ccr@tnsp.org>
parents: 798
diff changeset
39 playing,
13483b855058 Fix subsong control window problems during pause state.
Matti Hamalainen <ccr@tnsp.org>
parents: 798
diff changeset
40 paused;
753
36c6a6e629bb Rename some variables.
Matti Hamalainen <ccr@tnsp.org>
parents: 751
diff changeset
41 gint currSong, /* Current sub-tune */
684
4bf845090a25 Indentation cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 660
diff changeset
42 lastTime;
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
43
751
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
44 XSTuneInfo *tuneInfo;
55eea3fa8868 Rename some structures.
Matti Hamalainen <ccr@tnsp.org>
parents: 748
diff changeset
45 } XSEngineState;
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
46
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
47
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
48 typedef struct
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
49 {
912
4c6c5247de7d Improve ROM loading functions, make ROM list a public variable.
Matti Hamalainen <ccr@tnsp.org>
parents: 876
diff changeset
50 gchar *name;
4c6c5247de7d Improve ROM loading functions, make ROM list a public variable.
Matti Hamalainen <ccr@tnsp.org>
parents: 876
diff changeset
51 gchar *filename;
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
52 size_t size;
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
53 } XSROMImageData;
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
54
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
55 #define XS_C64_ROM_IMAGES 3
912
4c6c5247de7d Improve ROM loading functions, make ROM list a public variable.
Matti Hamalainen <ccr@tnsp.org>
parents: 876
diff changeset
56 extern const XSROMImageData xs_rom_images[XS_C64_ROM_IMAGES];
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
57
873
50111e99456a Oops. Fix previous commit.
Matti Hamalainen <ccr@tnsp.org>
parents: 872
diff changeset
58 gboolean xs_init_emu_backend(XSEngineState *state, gint *preferred);
872
b02f934d8224 Move some code to xs_backend.
Matti Hamalainen <ccr@tnsp.org>
parents: 799
diff changeset
59
912
4c6c5247de7d Improve ROM loading functions, make ROM list a public variable.
Matti Hamalainen <ccr@tnsp.org>
parents: 876
diff changeset
60 gboolean xs_load_rom_image(gint index, guint8 **data);
4c6c5247de7d Improve ROM loading functions, make ROM list a public variable.
Matti Hamalainen <ccr@tnsp.org>
parents: 876
diff changeset
61 void xs_free_rom_images(guint8 **roms);
876
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
62 gboolean xs_load_rom_images(guint8 **roms);
d03e5c73eb51 Add ROM image loading.
Matti Hamalainen <ccr@tnsp.org>
parents: 873
diff changeset
63
872
b02f934d8224 Move some code to xs_backend.
Matti Hamalainen <ccr@tnsp.org>
parents: 799
diff changeset
64
526
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
65 #ifdef __cplusplus
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
66 }
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
67 #endif
fa95d942f226 Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
68 #endif /* XS_PLAYER_H */