1、为了排除断码错误,将ps2_top与其下文件改用原来的ps2键盘模块(用WSAD表示上下左右,因为WSAD和回车都是用8bit表示的),实现了输入控制。注意,VGA的原点坐标在左上角,所以 W对应的操作是y-1而不是y+1;
2、但是VGA显示有问题:左侧一列和上侧一行无法显示。所以对vga_controller做了修改,修改了SQUARES(8->9),BOARD_X_OFFSET(0->32),BOARD_Y_OFFSET(0->32),还改了91和92行:
i <= cntX / SQUARE_SIZE - 1; // added by Donkey -1
j <= cntY / SQUARE_SIZE - 1; // added by Donkey -1
将棋盘整体向下向右移动了一格(32个像素),显示正确了。
3、至此PS2键盘输入、VGA显示的黑白棋游戏基本功能实现,告一段落。
游戏说明
1、键盘输入:
W、S、A、D和回车键分别实现上、下、左、右和确定功能;
2、VGA输出:
本游戏在VGA显示器上显示一个8x8大小的绿色棋盘,计算机的棋子是红色的,玩家的棋子是蓝色的,玩家的可操作区域用黄色表示,移动的棋子用粉色表示。
玩家每一步的操作都是用上下左右和确定来使自己的蓝色棋子落在橘黄色的可操作区域(只有落在可操作区域才能吃掉对方的棋)中。
用户体验(改进方向):
1、AI思考的时延太短,不真实,可以考虑给AI计算加上时延,和局域网三国杀一样;
2、游戏结束的提示性不好,最好能用声音提示(开发板上没有蜂鸣器,可以外接设备),或者用液晶显示屏也可以,或者用走马灯也可以;
2、改变其数据输入控制的方式,用红外遥控器控制,或者用ps2鼠标控制等等。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
修改自OpenCores的黑白棋游戏代码。采用VGA输出显示,PS2键盘(W、A、S、D、回车)输入控制,实现AI,LED灯指示是否游戏结束,VGA显示频率25MHz,系统频率50MHz,经过Cyclone IV芯片EP4CE115F29C7N的板级调试,实现全部功能,文件夹下有rtl源代码,管脚定义pin文件,和可以直接进行JTAG烧写和E2PROM烧写的pof和sof文件,具体说明文档详见http://www.openhw.org/lvlv2011/blog/11-11/235323_9a612.html
资源推荐
资源详情
资源评论
收起资源包目录
rel_08_done.rar (31个子文件)
rel_08_done
reversi.pin 90KB
reversi.sof 3.38MB
reversi.pof 8MB
rtl
xy_calculate.v.bak 2KB
memory_bram.v 845B
reversi.v.bak 9KB
negedge_detect.v 1KB
hvsync_gen.v 3KB
rs232.v 3KB
vga_controller.v.bak 3KB
ps2_decoder.v 3KB
pll.qip 0B
xy_calculate.v 1KB
heuristics.v 18KB
RB_cnt.v 3KB
time_analysis.v 4KB
move_cell.v 2KB
greybox_tmp
cbx_args.txt 1KB
vga_controller.v 3KB
reversi.v 9KB
board_move.v 10KB
game_ai.v 20KB
ps2_decoder.v.bak 4KB
negedge_detect.v.bak 1KB
ps2_top.v 1KB
moves_map.v 99KB
b_move.v 38KB
pll_bb.v 11KB
ps2_top.v.bak 2KB
pll.v 15KB
readme.txt 1KB
共 31 条
- 1
ssl2009
- 粉丝: 25
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页