#include "ui.h"
#include "eeprom.h"
#include "ioports.h"
+#include "helps.h"
#ifdef __cplusplus
extern "C" {
#endif
-#define USER_BAND_NUM 4
+#define USER_BAND_NUM 3
typedef struct {
unsigned char mode3k; // mode3k if am
unsigned char start;
unsigned char stop;
unsigned int freq;
} _userband_t;
+
+#define USER_MEMORY_NUM 28
+ typedef struct {
+ unsigned char band;
+ unsigned char fm;
+ unsigned int freq;
+ } _memoryfreq_t;
/*
* main.c
*/
- extern unsigned int amfreq;
- extern unsigned int fmfreq;
- extern unsigned int amfreq_bank[AKC6955_BAND_AMEND];
- extern unsigned int fmfreq_bank[AKC6955_BAND_FMEND];
- extern unsigned char amband;
- extern unsigned char fmband;
- extern unsigned char fm;
- extern unsigned char am_mode3k;
- extern unsigned char am_userbandnum;
- extern unsigned char fm_userbandnum;
- extern unsigned char threshold_amcnr;
- extern unsigned char threshold_fmcnr;
- extern unsigned char threshold_width;
- extern unsigned char threshold_fmstereo;
- extern unsigned char lowboost;
- extern unsigned char stereo;
- extern _userband_t am_usrbands[USER_BAND_NUM];
- extern _userband_t fm_usrbands[USER_BAND_NUM];
- extern banddesc am_userband_freq[USER_BAND_NUM];
- extern banddesc fm_userband_freq[USER_BAND_NUM];
- extern unsigned char volume;
- extern unsigned char prevolume;
- extern unsigned char fmbandwidth;
-
- extern int backlight_long;
- extern unsigned int ui_idlecount;
-
+typedef struct {
+ unsigned int amfreq;
+ unsigned int fmfreq;
+ unsigned int amfreq_bank[AKC6955_BAND_AMEND];
+ unsigned int fmfreq_bank[AKC6955_BAND_FMEND];
+ unsigned char amband;
+ unsigned char fmband;
+ unsigned char fm;
+ unsigned char am_mode3k;
+ unsigned char am_userbandnum;
+ unsigned char fm_userbandnum;
+ unsigned char threshold_amcnr; // Reg 0x08
+ unsigned char threshold_fmcnr; // Reg 0x08
+ unsigned char threshold_width; // Reg 0x08
+ unsigned char threshold_fmstereo; // Reg 0x08
+ _userband_t am_usrbands[USER_BAND_NUM];
+ _userband_t fm_usrbands[USER_BAND_NUM];
+ banddesc am_userband_freq[USER_BAND_NUM];
+ banddesc fm_userband_freq[USER_BAND_NUM];
+ unsigned char stereo;
+ unsigned char volume;
+ unsigned char prevolume;
+ unsigned char fmbandwidth;
+ unsigned char lowboost;
+ int backlight_long;
+ int backlight_level;
+ unsigned int ui_idlecount;
+ unsigned char memorynum;
+ _memoryfreq_t memoryfreqs[USER_MEMORY_NUM];
+} __radioset_t;
+
+ extern __radioset_t setup;
+ extern unsigned char scanflag;
extern unsigned char stereoflag;
extern unsigned char tuneflag;
extern void setband_direct(void);
extern void setfreq_direct(void);
extern void set_stereo(void);
- extern void set_thresh_fmstereo(unsigned char a);
- extern void set_thresh_fmcnr(unsigned char a);
- extern void set_thresh_amcnr(unsigned char a);
- extern void set_thresh_width(unsigned char a);
extern void scan_start(void);
extern void set_volume(void);
extern void toggle_amfm(void);
-
- extern unsigned char printhelp_2lines(char *l1, char *l2);
extern void setup_menu(void);
- extern void updown_help(void);
- extern void mainmenu_help(void);
+
extern void print_freq(unsigned char y);
extern void setup_akc6955(void);
extern void setdefault(void);