目录
第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程序,就需要对应这三要素的东西: ...
随机推荐
-
在Ubuntu 12.4 下安装 nginx, MySQL, PHP
LNMP是时下很流行的网站配置,我在配置蝉大师服务器的时候顺带把经验做个分享,蝉大师的网址是:http://www.ddashi.com/ 1.第一步, 跟新apt-get 输入: sudo apt- ...
-
POC - ASP.NET &; IIS 部分
终于得到了我VM的管理员权限啦啦.接下来不需要把IIS架在我自己的电脑上了,将架在我的VM上. 1. 先添加ISAP和CGI的组件. 2. 将defaultAppPool的MODE设为CLASSIC, ...
-
git push后修改错误的commit message
Easiest solution (but please read this whole answer before doing this): git rebase -i <hash-of-co ...
-
如何查看linux系统下的各种日志文件 linux 系统日志的分析大全
日志分类: 1. 连接时间的日志 连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这 两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下: ...
-
最受Java开发者青睐的Java应用服务器 —— Tomcat
Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选.今天,就一起来了解下 Tomcat. Java 应用服务器 Tomc ...
-
“Hello, my first blog”------第一篇博客的仪式感
本人在校大学生一枚,开通博客,主要是想记录自己的学习过程,分享自己的学习经历.记得大一的时候,很多不懂的操作和知识,都是在博客上找到了相应的解决办法.但比较讽刺的是,很多时候,曾经解决了的问题,当再次 ...
-
section标签实现文字滚动
h5新增样式 section标签 使用demo //h5新增属性 h5新增滚动的标签 <marquee> <div style="padding-left: 20px;ma ...
-
StringTokenizer
StringTokenizer是一个用来分隔String的应用类,相当于VB的split函数. 1.构造函数 public StringTokenizer(String str) public Str ...
-
uva-10700-贪心
题意:对于一个只有加法和乘法的序列,没有加法和乘法的优先级,问,结果最大值和最小值是多少,数字范围 1<=N <= 20 解题思路: (A+B)*C - (A+(B*C)) = AC + ...
-
C#正则表达式提取HTML中IMG标签的SRC地址
一般来说一个 HTML 文档有很多标签,比如“<html>”.“<body>”.“<table>”等,想把文档中的 img 标签提取出来并不是一件容易的事.由于 i ...