1 |
|
/* |
2 |
< |
* main.h - SIDPlayer main program |
2 |
> |
* main.h - SIDPlayer common routines |
3 |
|
* |
4 |
< |
* SIDPlayer (C) Copyright 1996-2000 Christian Bauer |
4 |
> |
* SIDPlayer (C) Copyright 1996-2003 Christian Bauer |
5 |
|
* |
6 |
|
* This program is free software; you can redistribute it and/or modify |
7 |
|
* it under the terms of the GNU General Public License as published by |
28 |
|
* Definitions |
29 |
|
*/ |
30 |
|
|
31 |
< |
// C64 replay routine address (set by LoadPSIDFile(), used by sid.cpp) |
31 |
> |
// C64 replay routine address (set by UpdatePlayAdr(), used by sid.cpp) |
32 |
|
extern uint16 play_adr; |
33 |
|
|
34 |
< |
// Module name, author name, copyright info in UTF8 charset (set by LoadPSIDFile()) |
34 |
> |
// Module name, author name, copyright info in ISO Latin1 (BeOS: UTF8) charset (set by LoadPSIDFile()) |
35 |
|
extern char module_name[64], author_name[64], copyright_info[64]; |
36 |
|
|
37 |
+ |
// Total number of songs in module and currently played song number (0..n) |
38 |
+ |
extern int number_of_songs, current_song; |
39 |
+ |
|
40 |
|
|
41 |
|
/* |
42 |
|
* Functions |
43 |
|
*/ |
44 |
|
|
45 |
|
// Init everything |
46 |
< |
extern void InitAll(void); |
46 |
> |
extern void InitAll(int &argc, char **&argv); |
47 |
|
|
48 |
|
// Exit everything |
49 |
< |
extern void ExitAll(void); |
49 |
> |
extern void ExitAll(); |
50 |
|
|
51 |
|
// Read PSID file header to buffer |
52 |
|
extern bool LoadPSIDHeader(const char *file, uint8 *p); |
60 |
|
// Load PSID file for playing |
61 |
|
extern bool LoadPSIDFile(const char *file); |
62 |
|
|
63 |
+ |
// PSID file loaded and ready? |
64 |
+ |
extern bool IsPSIDLoaded(); |
65 |
+ |
|
66 |
|
// Select song for playing |
67 |
|
extern void SelectSong(int num); |
68 |
|
|
69 |
+ |
// Update play_adr if necessary |
70 |
+ |
extern void UpdatePlayAdr(); |
71 |
+ |
|
72 |
|
// Adjust replay speed |
73 |
|
extern void AdjustSpeed(int percent); |
74 |
|
|
75 |
|
// Show About window |
76 |
< |
extern void AboutWindow(void); |
76 |
> |
extern void AboutWindow(); |
77 |
|
|
78 |
|
// Fast pseudo-random number generator |
79 |
|
extern uint32 f_rand_seed; |
80 |
|
|
81 |
< |
inline static uint8 f_rand(void) |
81 |
> |
inline static uint8 f_rand() |
82 |
|
{ |
83 |
|
f_rand_seed = f_rand_seed * 1103515245 + 12345; |
84 |
|
return f_rand_seed >> 16; |