資源簡介
基于STM32F103的NES(FC)模擬器

代碼片段和文件信息
#include?“nes_main.h“
#include?“joypad.h“
#include?“usart.h“ ??// 串口
#include?“key.h“
////////////////////////////////////////////////////////////////////////////////// ?
//我的?STM32開發板
//NES模擬器手柄?代碼 ???
//修改日期:2012/10/3
//版本:V1.0 ??????? ??
//////////////////////////////////////////////////////////////////////////////////? ???
u8??JOY_key=0xFF;
JoyPadType?JoyPad[2];
u8?NES_GetJoyPadVlaue(int?JoyPadNum)? ?// ?得到手柄脈沖
{
u8?retval?=?0;
if(JoyPadNum==0)
{ ?
????????retval=(JOY_key>>JoyPad[0].index)&0X01;
????????if(JoyPad[0].index==20)retval=1;//20位表示控制器在位.
// printf(“\r\n?按鍵:?%d“retval); ?//我寫的代碼?測試用 ?
JoyPad[0].index++;
}
? return?retval;
}
//讀取手柄按鍵值.
//FC手柄數據輸出格式:
//每給一個脈沖輸出一位數據輸出順序:
//A->B->SELECT->START->UP->DOWN->LEFT->RIGHT.
//總共8位對于有C按鈕的手柄按下C其實就等于A+B同時按下.
//按下是0松開是1. ?
//[0]:右??0--->7
//[1]:左
//[2]:下
//[3]:上
//[4]:Start
//[5]:Select
//[6]:B
//[7]:A
void?NES_JoyPadReset(void)
{
JoyPad[0].state?=?1;
????JoyPad[0].index?=?0;
?//?JOY_key=0xFF-((右??<<7)|(左??<<6)|(下??<<5)|(上??<<4)|Start<<3)|Select<<2)|(B??<<1)|A???);
JOY_key=0xFF-((KEY5<<7)|(KEY3<<6)|(0X01<<5)|(0X01<<4)|(KEY1<<3)|(KEY2<<2)|(0X01<<1)|KEY4);
// JOYPAD_LAT=1;//???鎖存一下
//? JOYPAD_LAT=0;
JoyPad[1].state?=?1;
????JoyPad[1].index?=?0;
}
void?NES_JoyPadInit(void)
{
JoyPad[0].state?=?0;//狀態為0表示禁止
????JoyPad[0].index?=?0;
JoyPad[0].value?=?1?<20;
JoyPad[1].state?=?0;
????JoyPad[1].index?=?0;
JoyPad[1].value?=?1?<19;
}
void?NES_JoyPadDisable(void)
{ ??
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????32060??2012-12-24?16:47??NES\6502.C
?????文件???????2846??2012-01-17?10:20??NES\6502.H
?????文件???????1689??2012-12-03?17:26??NES\joypad.c
?????文件????????490??2012-11-24?21:08??NES\joypad.h
?????文件???????1229??2011-12-10?20:45??NES\Mapper.c
?????文件????????772??2011-12-10?20:43??NES\Mapper.h
?????文件????????471??2011-12-09?12:31??NES\Mapper002.h
?????文件????????302??2011-08-04?00:21??NES\nes_datatype.h
?????文件???????4846??2012-12-24?16:41??NES\nes_main.c
?????文件???????1611??2012-11-25?13:45??NES\nes_main.h
?????文件?????464534??2012-11-22?12:14??NES\nes_rom.c
?????文件????????528??2012-11-22?19:48??NES\nes_rom.h
?????文件??????25694??2012-11-25?13:44??NES\PPU.c
?????文件???????3724??2012-01-17?10:20??NES\PPU.h
?????文件???????1989??1997-01-24?15:13??NES\README.TXT
?????文件?????253597??2011-06-10?02:23??NES\rom_mario.c
?????目錄??????????0??2012-12-24?22:42??NES
?????文件???????5923??2012-12-24?15:26??NESplay\nesplay.c
?????文件????????546??2012-11-25?13:38??NESplay\nesplay.h
?????目錄??????????0??2012-12-24?22:42??NESplay
-----------?---------??----------?-----??----
???????????????802851????????????????????20
- 上一篇:vnc 綠色版 服務器+客戶端
- 下一篇:DSDT黑蘋果g470
評論
共有 條評論