整理代码
This commit is contained in:
@@ -1,85 +1,68 @@
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ye781205<30><35>NESģ<53><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// ALIENTEK STM32F407<30><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// NES<45><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>@ALIENTEK
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̳:www.openedv.com
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:2014/7/1
|
||||
// <20>汾<EFBFBD><E6B1BE>V1.0
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef __NES_MAIN_H
|
||||
#define __NES_MAIN_H
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ye781205<30><35>NESģ<53><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//ALIENTEK STM32F407<30><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//NES<45><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
//<2F><><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>@ALIENTEK
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̳:www.openedv.com
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:2014/7/1
|
||||
//<2F>汾<EFBFBD><E6B1BE>V1.0
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define NES_SKIP_FRAME 2 //<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>,Ĭ<><C4AC><EFBFBD><EFBFBD>2֡
|
||||
|
||||
|
||||
#define INLINE static inline
|
||||
#define int8 char
|
||||
#define int16 short
|
||||
#define int32 int
|
||||
#define uint8 unsigned char
|
||||
#define uint16 unsigned short
|
||||
#define uint32 unsigned int
|
||||
#define boolean uint8
|
||||
#include "stdint.h"
|
||||
|
||||
#define NES_SKIP_FRAME 2 // <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>,Ĭ<><C4AC><EFBFBD><EFBFBD>2֡
|
||||
|
||||
#define INLINE static inline
|
||||
#define boolean uint8_t
|
||||
|
||||
//nes<65><73>Ϣͷ<CFA2>ṹ<EFBFBD><E1B9B9>
|
||||
typedef struct
|
||||
{
|
||||
unsigned char id[3]; // 'NES'
|
||||
unsigned char ctrl_z; // control-z
|
||||
unsigned char num_16k_rom_banks;
|
||||
unsigned char num_8k_vrom_banks;
|
||||
unsigned char flags_1;
|
||||
unsigned char flags_2;
|
||||
unsigned char reserved[8];
|
||||
}NES_header;
|
||||
// nes<EFBFBD><EFBFBD>Ϣͷ<EFBFBD>ṹ<EFBFBD><EFBFBD>
|
||||
typedef struct {
|
||||
unsigned char id[3]; // 'NES'
|
||||
unsigned char ctrl_z; // control-z
|
||||
unsigned char num_16k_rom_banks;
|
||||
unsigned char num_8k_vrom_banks;
|
||||
unsigned char flags_1;
|
||||
unsigned char flags_2;
|
||||
unsigned char reserved[8];
|
||||
} NES_header;
|
||||
|
||||
extern u8 nes_frame_cnt; //nes֡<73><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
extern int MapperNo; //map<61><70><EFBFBD><EFBFBD>
|
||||
extern int NES_scanline; //ɨ<><C9A8><EFBFBD><EFBFBD>
|
||||
extern NES_header *RomHeader; //rom<6F>ļ<EFBFBD>ͷ
|
||||
extern uint8_t nes_frame_cnt; // nes֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
extern int MapperNo; // map<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
extern int NES_scanline; // ɨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
extern NES_header *RomHeader; // rom<EFBFBD>ļ<EFBFBD>ͷ
|
||||
extern int VROM_1K_SIZE;
|
||||
extern int VROM_8K_SIZE;
|
||||
extern u8 cpunmi; //cpu<70>жϱ<D0B6>־ <20><> 6502.s<><73><EFBFBD><EFBFBD>
|
||||
extern u8 cpuirq;
|
||||
extern u8 PADdata; //<2F>ֱ<EFBFBD>1<EFBFBD><31>ֵ
|
||||
extern u8 PADdata1; //<2F>ֱ<EFBFBD>1<EFBFBD><31>ֵ
|
||||
extern u8 lianan_biao; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
|
||||
#define CPU_NMI cpunmi=1;
|
||||
#define CPU_IRQ cpuirq=1;
|
||||
#define NES_RAM_SPEED 0 //1:<3A>ڴ<EFBFBD>ռ<EFBFBD><D5BC>С 0:<3A>ٶȿ<D9B6>
|
||||
extern int VROM_8K_SIZE;
|
||||
extern uint8_t cpunmi; // cpu<EFBFBD>жϱ<EFBFBD>־ <20><> 6502.s<><73><EFBFBD><EFBFBD>
|
||||
extern uint8_t cpuirq;
|
||||
extern uint8_t PADdata; // <EFBFBD>ֱ<EFBFBD>1<EFBFBD><EFBFBD>ֵ
|
||||
extern uint8_t PADdata1; // <EFBFBD>ֱ<EFBFBD>1<EFBFBD><EFBFBD>ֵ
|
||||
extern uint8_t lianan_biao; // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
|
||||
#define CPU_NMI cpunmi = 1;
|
||||
#define CPU_IRQ cpuirq = 1;
|
||||
#define NES_RAM_SPEED 0 // 1:<3A>ڴ<EFBFBD>ռ<EFBFBD><D5BC>С 0:<3A>ٶȿ<D9B6>
|
||||
|
||||
// ʹ<><CAB9><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ
|
||||
uint8_t nes_load(uint8_t *pname, void *lcd_addr, int x, int y);
|
||||
|
||||
//ʹ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ
|
||||
u8 nes_load(u8* pname,void *lcd_addr,int x,int y);
|
||||
// <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>Ϸ
|
||||
uint8_t nes_start(uint8_t *file, int fileSize, void *lcd_addr, int x, int y);
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4>е<EFBFBD><D0B5><EFBFBD>Ϸ
|
||||
u8 nes_start(u8* file,int fileSize,void *lcd_addr,int x,int y);
|
||||
|
||||
|
||||
|
||||
void cpu6502_init(void); //<2F><> cart.s
|
||||
void run6502(u32); //<2F><> 6502.s
|
||||
u8 nes_load_rom(void);
|
||||
void cpu6502_init(void); // <20><> cart.s
|
||||
void run6502(uint32_t); // <20><> 6502.s
|
||||
uint8_t nes_load_rom(void);
|
||||
void nes_sram_free(void);
|
||||
u8 nes_sram_malloc(u32 romsize);
|
||||
uint8_t nes_sram_malloc(uint32_t romsize);
|
||||
void nes_set_window(void);
|
||||
void nes_get_gamepadval(void);
|
||||
void nes_emulate_frame(void);
|
||||
void debug_6502(u16 reg0,u8 reg1);
|
||||
void debug_6502(uint16_t reg0, uint8_t reg1);
|
||||
|
||||
void nes_i2s_dma_tx_callback(void);
|
||||
int nes_sound_open(int samples_per_sync,int sample_rate);
|
||||
int nes_sound_open(int samples_per_sync, int sample_rate);
|
||||
void nes_sound_close(void);
|
||||
void nes_apu_fill_buffer(int samples,u16* wavebuf);
|
||||
void nes_apu_fill_buffer(int samples, uint16_t *wavebuf);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user