asm cpu works, added sync()s
[fceu.git] / nsf.h
CommitLineData
c62d2810 1/* FCE Ultra - NES/Famicom Emulator
2 *
3 * Copyright notice for this file:
4 * Copyright (C) 2002 Ben Parnell
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
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21typedef struct {
22 char ID[5]; /*NESM^Z*/
23 uint8 Version;
24 uint8 TotalSongs;
25 uint8 StartingSong;
26 uint8 LoadAddressLow;
27 uint8 LoadAddressHigh;
28 uint8 InitAddressLow;
29 uint8 InitAddressHigh;
30 uint8 PlayAddressLow;
31 uint8 PlayAddressHigh;
32 uint8 SongName[32];
33 uint8 Artist[32];
34 uint8 Copyright[32];
35 uint8 NTSCspeed[2]; // Unused
36 uint8 BankSwitch[8];
37 uint8 PALspeed[2]; // Unused
38 uint8 VideoSystem;
39 uint8 SoundChip;
40 uint8 Expansion[4];
41 uint8 reserve[8];
42 } NSF_HEADER;
43int NSFLoad(int fp);
44DECLFW(NSF_write);
45DECLFR(NSF_read);
46void NSF_init(void);
47extern uint8 CurrentSong;
48extern uint8 SongReload;
49void DrawNSF(uint8 *XBuf);
50void NSFControl(int z);
51extern NSF_HEADER NSFHeader;
52void NSFDealloc(void);
53void NSFDodo(void);