50 lines
940 B
C
50 lines
940 B
C
#ifndef _SOUND4CALC_H
|
|
#define _SOUND4CALC_H
|
|
|
|
#include <timer.h>
|
|
#include <clock.h>
|
|
#include <mpu.h>
|
|
|
|
struct Wave
|
|
{
|
|
unsigned int signal;
|
|
unsigned short length;
|
|
};
|
|
|
|
extern struct Note
|
|
{
|
|
struct Wave wave;
|
|
unsigned short duration;
|
|
unsigned int freq;
|
|
} note;
|
|
|
|
extern int frequency;
|
|
|
|
void CallSequence(timer_t **timer);
|
|
void Sequence();
|
|
//void CallNote(timer_t **timer);
|
|
void Note();
|
|
void PutPinState(char level);
|
|
void PlayNote();
|
|
void InitPorts();
|
|
void StopTimer();
|
|
|
|
//SH4 addresses
|
|
#define SH7305_PJCR 0xA4050110
|
|
#define SH7305_PUCR 0xA4050142
|
|
#define SH7305_PJDR 0xA4050130
|
|
#define SH7305_PUDR 0xA4050162
|
|
#define SH7305_MSTPCR0 0xA4150030
|
|
#define SH7305_SCSCR 0xA4410008
|
|
|
|
//SH3 addresses
|
|
#define SH7337_STBCR3 0xA40A0000
|
|
#define SH7337_SCSCR2 0xA4410008
|
|
#define SH7337_PGCR 0xA400010C
|
|
#define SH7337_PLCR 0xA4000114
|
|
#define SH7337_SCPCR 0xA4000116
|
|
#define SH7337_PGDR 0xA400012C
|
|
#define SH7337_SCPDR 0xA4000136
|
|
|
|
#endif
|