安卓手机上运行 PC-E500 程序
目录
第1章安卓手机上运行 PC-E500 程序
1 PockEmul
安卓手机上运行PC-E500程序,需要一款PC-E500模拟器。PockEmul是一款可模拟多种型号计算器的程序,可运行在Windows、Linux、Android平台上。下图是PockEmul模拟Sharp PC-E500的截图:

图1
使用PockEmul,有一个严重的问题:无法高效的将已有的PC-E500程序上传至模拟器中。为此,本文提供了一个解决方案。
2 下载
需要下载的软件有:
1、运行在Windows上的PockEmul v1.4.3,下载网址为:
https://github.com/pockemul/PockEmul/releases/download/v1.4.3/PockEmul-1.4.3-win32.zip
2、运行在Android平台上的PockEmul v1.4.3,下载网址为:
https://github.com/pockemul/PockEmul/releases/download/v1.4.3/PockEmul-1.4.3.apk
3、辅助程序E500Comm v16.10.26
首先访问如下网址
http://pan.baidu.com/s/1gd7XDkf
然后进入public\Tools\E500Comm,下载E500Comm-16.10.26.rar
3 打包BASIC程序
本节将编辑两个BASIC程序,生成两个文件,然后将这两个文件打包。
解压E500Comm-16.10.26.rar,运行bin\E500Comm.exe程序,将显示如下界面:

图2
计算器请选择"PC-E500",不要勾中"串口设置"复选框,单击"确定"按钮。进入程序主界面,显示如下:

图3
单击上图的"1程序"按钮,显示如下界面:

图4
上图所示界面内,首先输入程序代码,然后单击【文件】【另存为】菜单项,将程序代码保存到文件里。如下图所示:

图5
下面有两段代码,分别被存入文件PI.BAS和2.BAS。假定这两个文件均在W:\E500目录下。
|
文件名 |
代码 |
说明 |
|
PI.BAS |
10 PRINT PI;PI# |
打印π的数值 |
|
2.BAS |
10 INPUT A,B,C 20 D=SQR(B*B-4*A*C) 30 PRINT "X1=";(-B+D)/(2*A) 40 PRINT "X2=";(-B-D)/(2*A) |
求解一元二次方程 |
单击上图中的菜单项【打包...】,在下图所示的界面内,选择W:\E500目录下的两个文件PI.BAS和2.BAS。

图6
单击上图的"打开"按钮,程序将在W:\E500目录下生成两个文件40000.bin和e500.pkm。如下图所示:

图7
e500.pkm、40000.bin存放了PI.BAS和2.BAS的内容,PockEmul模拟器载入e500.pkm或40000.bin,也就载入了PI.BAS和2.BAS。
注意:图5中也可以另存为文本格式,但是它有个缺点:PockEmul模拟器载入程序时需要花时间转换格式,程序越大耗时越久。
4 配置PC-E500模拟器
Windows上解压PockEmul-1.4.3-win32.zip,然后运行Pockemul.exe。依次:1、单击左上角的三条白杠;2、单击"New Pocket";3、鼠标滚轮选至"4.Sharp",然后单击进入;4、鼠标滚轮选至"5.Sharp New Generation Series",然后单击进入;5、选择Sharp PC-E500。

图8
Pockemul将显示PC-E500模拟器,如下图所示

图9
上图中,单击ON按钮(字母按键Z的左边)开机。单击PF1按钮(字母按键Q、W的上边)完成内存区域S2(存储卡)的初始化,再次单击PF1按钮完成内存区域S1的初始化。最后单击BASIC按钮(字母按键A的最左边),进入BASIC状态。
鼠标双击模拟器的非按键区域(Windows上双击速度要快),将显示下图所示的扇形菜单:

图10
单击上图的按钮
,将显示如下菜单:

图11
请勾中上图红色框内的两个菜单项。【256KB internal RAM】扩展模拟器的内存为256KB(默认为32KB);【ce-2h64m(64Kb Memory card)】模拟外部存储卡,其容量经实测为256KB。这两项配置完成后,需要按RESET按钮(字母按键A左边的圆形凹槽)3秒,重启模拟器后配置方才生效。
5 载入e500.pkm
完成上一节的配置后,单击下图的【Load】菜单项,载入W:\E500\e500.pkm文件。

图12
模拟器上运行命令FILES"F:"即可查看F盘上的文件,如下图所示:

图13
可见:2.BAS、PI.BAS已经载入到F盘内。现在即可运行某个程序,如下图所示:

图14
上图首先载入F:PI.BAS,然后运行该程序,并显示了程序的运行结果。
安卓手机上,需要把文件e500.pkm复制到手机上。建议复制到pockemul目录下,这样载入时容易找到。如下图所示

图15
6 载入40000.bin
模拟器还可以载入40000.bin,具体操作如下图所示:

图16
单击上图的【Dump Memory】菜单项,显示如下界面:

图17
上图红框内的地址请填入40000(Pockemul v1.4.3有BUG,不能输入只能粘贴。Pockemul v1.4.2无此BUG),然后单击"Load Binary File"按钮载入W:\E500\40000.bin文件即可。
载入40000.bin和载入e500.pkm的功效是一致的:均是改写F:盘上的内容。
注意:在安卓手机上,因为界面原因无法完成上述操作。
7 解包
上文说明了如何把程序、文件导入模拟器中。本节将说明如何从模拟器中导出程序、文件。
在图17所示界面中,进行如下配置:

图18
导出F:盘的内容,地址范围应为[40000,7ffff];导出E:盘的内容,地址范围应为[80000,bffff]。上图表示导出F:盘的内容。单击上图的"Save Binary File"按钮,将该段地址的内存数据导出到一个文件里。假定该文件为W:\PC-E500\F.bin。
单击图5中的【解包】菜单项,选择刚才导出的文件W:\PC-E500\F.bin。程序将解包F.bin,并将解包后的文件存入F.bin文件所在目录,如下图所示。2.BAS和PI.BAS就是从F.bin里解包出来的文件。

图19
安卓手机上运行 PC-E500 程序的更多相关文章
- 在安卓(手机)上运行 Ubuntu (Linux)
在安卓(手机)上运行 Ubuntu (Linux) 由于x86 和 arm 是跨平台的,所使用的编译器自然也不同.如果要在电脑上编译安卓手机上的程序,则需在电脑端建立ARM交叉编译环境,这个过程是在耗 ...
- 微坑---微信小程序ios上时间字符串转换为时间戳时,在开发工具上和安卓手机上运行成功
给定一个时间字符串 var time="2017-02-27 16:42:53" js有三种转换为时间戳的方法:1.var timestamp = Date.parse(time ...
- WebStorm技巧-在安卓手机上运行Ionic程序
打开菜单项 Run -> Run- 选择 Edit Configurations- 添加一个 PhoneGap/Cordova 配置项,命名如: Ionic Android, 并输入相关 ...
- 微信小程序ios上时间字符串转换为时间戳时会报错,在开发工具上和安卓手机上运行成功
给定一个时间字符串 var time="2017-02-27 16:42:53" js有三种转换为时间戳的方法: 1.var timestamp = Date.parse(tim ...
- 如何在 Android 安卓手机上运行 Node.js 应用 | 如何在安卓手机配置node开发环境
最近在学习js,由于没法随身携带笔记本电脑,在手机翻阅<JavaScript高级程序设计>时,时常想调试一下书中的代码.于是就有了,能否在手机上配置一个js开发环境.考虑到手机上的Chro ...
- 在安卓手机上通过虚拟机运行Windows XP
转自:https://www.ithome.com/html/android/302170.htm 细数当年的桌面版Windows,似乎针对ARM架构处理器的版本并不多,小编曾用过一段时间的Windo ...
- 解决小米手机不能运行Android Studio程序的问题
转载自:解决小米手机不能运行Android Studio程序的问题 问题描述 Android Studio升级到2.3版本之后,小米手机MIUI8不能运行Android Studio程序,报如下错误: ...
- 利用Termux在Android手机上运行PHP
从 阮一峰 博客看到 [Termux 入门教程:架设手机 Server 下载文件] 想测试下,在可以跑PHP吗?经测试PHP完美运行,并且可用使用PHP内置WEB服务器,搭建网站访问:因为对linux ...
- 简单理解在Mac OS X上运行ASP.NET程序
运行ASP.NET程序的三要素: 1) CLR(.NET运行时) 2) KRE(ASP.NET运行时) 3) Web服务器 所以在Mac OS X上运行ASP.NET程序,就需要对应这三要素的东西: ...
随机推荐
- 降维技术---PCA
数据计算和结果展示一直是数据挖掘领域的难点,一般情况下,数据都拥有超过三维,维数越多,处理上就越吃力.所以,采用降维技术对数据进行简化一直是数据挖掘工作者感兴趣的方向. 对数据进行简化的好处:使得数据 ...
- SQL Nexus
在前面的SQLdiag系列中有提到SQLNexus,当时我们用SQLNexus查看了Perfmon Summary(性能计数器).ReadTrace Reports(跟踪文件)两项报表.SQLNexu ...
- ansible 安装使用
ansible ansible源码安装 yum -y install python-jinja2 PyPAML python-parmiko python-babel python-crypto ta ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本━新增企业通(内部简易聊天工具)
RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本 新增企业通(内部简易聊天工具) RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用 ...
- RDIFramework.NET ━ 9.6 模块(菜单)管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.6 模块(菜单)管理 -Web部分 模块(菜单)管理是整个框架的核心,主要面向系统管理人员与开发人员,对普通用户建议不要授 ...
- bootstrap入门-3.响应式原理
Bootstrap网格系统(Grid System) 响应式网格系统随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. 1 1 1 1 1 1 1 1 1 1 1 1 4 4 4 ...
- CocoaPod遇到更新不了的原因
CocoaPods 1.0.1 is available. To update use: `gem install cocoapods` Until we reach version 1.0 the ...
- .net 直接输出远程文件到浏览器和下载文件保存到本机
利用了xmlhttp,实现代码比较简单具体实现如下: 首先bin文件引入,com->microsoft xml v3.0 具体代码如下: protected void Button1_Click ...
- sklearn 组合分类器
组合分类器: 组合分类器有4种方法: (1)通过处理训练数据集.如baging boosting (2)通过处理输入特征.如 Random forest (3)通过处理类标号.error_corre ...
- 关于为busybox设置setuid
安卓root了,重启之后就没root权限了,于是想到了为 busybox 设置 setuid 来实现使用root的身份执行命令. 可是,不管用啊,还是提示没有权限.搜了一下 busybox setui ...