最近买了 PSP2000,从而也萌发了要写点儿 PSP 程序的想法,先去找了 PSPSDK,当然,这是一切的基础,而且,大牛们破解 PSP 而建立 PSPSDK 也非常厉害,不过,就是使用起来太底层,许多很零碎的事情都要自己处理,而且,编译的程序要每次到 PSP 上测试也很麻烦。

  于是,又找到一套整合了很多框架(如 SDL)的所谓一键式安装的 PSP 开发环境 TOPOC,而且也支持编译成 windows 程序,在 PC 上调试等等,不过,在 VS2008 上编译出错,印象较深的问题是,找不到 glaux.h 和 glaux.lib,google 了一下,说是在 VC 新版的 opengl 库中,已经取消了这个库,还有一些其他问题,后来找到 VC6,编译倒是不出错了,不过,只能编译出 1.5 核心的程序,而我的 PSP 不支持 1.5 核心。在 [url=http://code.google.com/p/topoc/]TOPOC 的主页[/url] 上,一路看下去,发现他们到最后反而推荐使用 JGE++,说是可以编译出 3.xx 的程序,而且可以使用硬件加速,同时也支持编译成 windows 程序,在 PC 调试。

  又找到 JGE++ 的主页,但是网上介绍的一个压缩包总是下载不到,按照网上 [url=http://www.cngba.com/viewthread.php?tid=17148931]另一篇文章[/url] 中介绍的方法安装,终于成功。

  那篇文章中介绍的后面两个文件,可以不用下载。其中,src.rar 中是 bat 文件,原安装包中的 bat 其实不需要修改,文中介绍的修改方法,在 sh 之后才执行,所以并没有任何作用;另外那个模板文件,只是加了中文注释,意义也不是很大。

  这个环境安装成功后,在 VC2008 下编译还是有问题,后来发现是原有编译出的目标文件和 VC2008 的版本不同造成的,清除 JGE 项目,再重新编译,终于成功。编译自己的程序的时候,会遇到找不到 glaux.lib 的错误,在连接选项里忽略 glaux 即可,看来,JGE 里面其实没有用到这个库,只是礼貌性的连接进来而已。

  JGE 这套库确实不错,不过,在做挖雷的时候,发现显示位置不准确,后来编译出 PBP 文件到 PSP 上测试,反而没有问题,可能是 windows 版的计算上有误差吧。

  挖雷参考了我以前写的 Python 版挖雷的代码,这版代码比 DOS 版好一点儿,不过,现在看来,也是很多地方不合理,不过,我主要是为了体验 PSP 编程,倒也问题不大,只是关于显示部分,还是写了一个全局函数,几个全局变量,有点儿不爽。

  虽然是 windows 上测试,PSP 上部署,还是会遇到一些不同的地方。比如随机函数,在 pc 上运行的很好,在 psp 上就只产生 0,经过不断测试,发现是因为 PSP 版(gcc?) srand 不支持大于 RAND_MAX 的种子,而 RAND_MAX 是 0x7fff,看起来,这像是因为函数库从16位升级到32位而出现的问题,把 time 的结果对 RAND_MAX 取余,即解决这个问题。另外,如果增加了其它代码,不是 include 进来的话,需要自己修改 makefile 文件,把新代码名加入 OBJS 中才可以。

  因为有参考代码,游戏逻辑不用考虑,所以本来乐观估计,一晚上可以完成,不过,遇到这样那样的问题,还是花了两个晚上多一点儿,不过,之后应该就会轻松多了吧。

  目前游戏没有加音乐,25x12 65 颗雷,还不支持调节这个数值,它的难度和 windows 高级挖雷接近。按三角键则显示帮助页面,按 Select 截屏。以后可能考虑加入声音,级别选择,再加点儿动感特效什么的 :D

  游戏在我的 PSP2000,3.71m33-4 上测试通过。下面是运行截图和软件包:

点睛挖雷 PSP 1.0 版(For 3.xx)相关推荐

  1. 点睛挖雷 PSP 1.1 版(For 3.xx)

    1.0 版里,为了修正一个造成 PSP 花屏的错误,所以让帮助界面延迟加载,发布之后发现,在帮助界面的每一帧,都会造成重读帮助文件,虽然对于程序的正确性没有影响,不过仍然是个问题,在这一版中已经修正. ...

  2. 挖财推出Android6.0版,大幅度减少跳转页面

    "挖财"6月29日发布全新Android6.0版本,代号"金鱼".新版突出生活化场景,引入情感元素,改变了用户报表呈现模式,大幅度减少跳转页面,方便用户操作. ...

  3. C# 面向对象版 Windows挖雷 v0.8 release 非FloodFill算法解

    受园子里博友的激发<C#实现扫雷出炉> http://www.cnblogs.com/magicdlf/archive/2009/04/28/1444953.html 花了2天时间写了如附 ...

  4. 转载作品:人生重开模拟器(修仙7.0版)

    OK呀,遵循作者yuhaoteng666的意见,转载作品人生重开模拟器(修仙7.0版)的代码(作者只发布了安装包资源).废话不多说,直接上代码. #define KEY_DOWN(VK_NONAME) ...

  5. 《2022中国数据智能产业图谱2.0版》重磅发布

    数据猿出品 本次"数据猿行业盘点季大型主题策划活动--<2022中国数据智能产业图谱2.0版>"为2022年度图谱版本的升级更新版,本年度内还将再次迭代推出年终3.0版 ...

  6. 《2022中国数据智能产业图谱3.0版》重磅发布

    ‍ 数据猿出品 本次"数据猿行业盘点季大型主题策划活动--<2022中国数据智能产业图谱3.0版>"为2022年度图谱版本的升级更新版,下一次版本迭代将于2023年4月 ...

  7. 视频号更像是2.0版的公众号

    张小龙在2021年微信揭露课上提到,"视频化表达应该是下一个十年的内容领域的一个主题".视频化已是个不可阻遏的趋势. 增加黑客契约是清音文明CEO,一位微信生态接连创业者,现在是视 ...

  8. 微信的7.0版新版与中年危机

    导读 "天下苦微信久矣",微信也在内交外困之下彷徨求索!7.0版操作界面的焕然新生,意味着微信希望从UI 层面为用户"心理减负".不仅如此,微信也希望通过改版, ...

  9. exec不同文件l怎么汇总_ABAQUS常见问题汇总 - 2.0版.doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspC/C++资料 ABAQUS常见问题汇总 - 2.0版.doc1 ...

  10. 《Python知识手册》,V3.0版来了,2021年,走起!

    "种一棵树,最好的时间是十年前,其次是现在." 一.前言 大家好,今天给大家推荐我的一位好朋友,公众号「Python数据之道」号主 Lemon . 从 2017 年开始,Lemon ...

最新文章

  1. 全面降低windows系统的安全隐患 (四)
  2. matlabrobert锐化_Matlab图像处理—锐化滤波器
  3. 各种模板(数据结构图论)
  4. mvc自定义日期转换器
  5. 《Java8实战》笔记(02):通过行为参数传递代码
  6. Linux_Make(Makefile)
  7. VGG使用重复元素的网络
  8. NodeJs 实现 WebSocket 即时通讯(简单版)
  9. Aberrant DSP SketchCassette II Mac(磁带混音效果插件)
  10. Logstash 初探
  11. 小甲鱼python学习笔记之函数(一)
  12. 会计准则接轨国际 四方面体现中国特色
  13. 推荐16个超棒的国外免费PSD资源素材网站
  14. 短网址生成+域名检测+短网址还原+域名防红四合一前端源码
  15. Python快速读取超大文件
  16. 论文阅读_DeepWalk
  17. 最强特殊字符、表情符号、Unicdeo字符串处理
  18. displaytag的使用
  19. android MVC,MVP,MVVM概论
  20. 【Vue3】1.1 使用NaiveUI 构建页面

热门文章

  1. Unity的超大开放世界解决方案
  2. 领域驱动设计思维导图
  3. php pdo连接oracle乱码,PHP编程:php pdo oracle中文乱码的快速解决方法
  4. 进程的守护神 - daemontools(进程监控)
  5. 友华PT920/PT921/PT921G光猫破解超级密码
  6. matlab中sr锁存器,大家一致避免使用的锁存器为什么依然存在于FPGA中?我们对锁存器有什么误解?...
  7. 软件license授权加、解密,软件注册工具(2)
  8. MATLAB中log算子处理图像
  9. Matlab实现数字图像处理——滤波
  10. 经纬度格式转换-(互转 度转度分秒 度分秒转度……)