• Palm模拟器

    2004-12-12

    Tag:Palm

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://duchaoqian.blogbus.com/logs/538519.html

     Palm模拟器
    2000-12-20 18:18:43

         来源:移动新干线

         前言
    POSE是Palm OS Emulator的缩写,也就是Palm OS的模拟器。它可以在您的电脑模拟出Palm OS的操作环境,就像真的在使用Palm一样,只差没有东西拿在手上而已。您也可以说它是虚拟的Palm。通常Palm OS的程序设计师一定会安装一套POSE,用来测试或除错开发中的软件。一般的使用者也可以安装一套模拟器,直接在电脑上测试下载的一堆软件,既简单又方便,不用把软件同步到Palm上面就可看到执行的结果。对PDA有兴趣的朋友也可以装模拟器体验一下Palm的操作界面与使用环境,在手边没有机器的情况下,您可以不花一文钱来增加对Palm OS机种的认识,作为您参考的重要依据。

    所以这篇文章的目的很简单,就是告诉您什么是POSE(这您已经知道啦),以及带领您安装与熟悉这个模拟器的使用方法。

    准备软件
    安装POSE要准备两样东西,缺一不可:

    • 模拟器主程序
    • ROM image 

    下载模拟器主程序
    目前模拟器主程序为3.0a6版,支持以下不同的操作环境:

    • Windows 95/98/NT
    • MacOS 7.5以上
    • Unix(包括Linux)

    您可以依照熟悉的操作系统选择下载WindowsMac OSUnix的版本。
    下载模拟器之后,接着下载模拟器的面板(skin),目前版本1.4:WindowsMac OSUnix

    ◎下载ROM image
    至于ROM image,里面所存放的是操作系统。由于现今PDA的操作系统多存放在ROM里面,所以称为ROM image。没有ROM image的模拟器就像一部没有安装操作系统的电脑一样,所以装模拟器除了取得主程序外最重要的就是取得ROM image。本小节结束后,对Visor与TRGpro另有一些补充说明,请参考。

    有两种方式可以取得ROM image,第一种比较简单,直接找一台Palm下载就可以;第二种则相当复杂,要申请成为Palm Solution Provider Program的会员,再签一份合约书寄到美国才能获得下载ROM image的权限。这么作的好处是,你可以得到所有机种的ROM images,而且这些ROM images是有除错功能的版本,如果你要写程序,还是要用第二种方式取得的版本才好。

    以下我们以Windows系统示范第一种取得ROM image的方法,也就是找一台Palm把里面的ROM抓下来。(在下载ROM image之前,如果您有使用FLASH PRO或JACKFLASH请将它们移除,否则转出来的image是无法在模拟器上用的。也就是使用uninstall flash pro把flash pro移除,移除前要先把放在flash rom的资料移出,否则资料会遗失;如果把中文放在ROM里面,要记得先关闭中文再移除flash pro,否则会当机。至于Jack Flash则直接在程序里选择release flash,若有中文系统也要先关闭再把资料移到RAM里面。)

    1.请将刚才下载的模拟器主程序压缩档解开。
    2.安装ROM Transfer.prc。安装之后,Palm的屏幕应该会出现ROM Transfer的图示。

    3.执行刚才安装的ROM Transfer,并保持Palm插在Cradle上面且电源开启的状态。

    4.以鼠标左键点选Windows画面右下的HotSync Manager,选Exit把它关掉。

    5.执行Emulator.exe,点选Download按钮。

    6.在视窗左下角选取Cradle所连接的COM port(如果接在COM1就选COM1,接在COM2就选择COM2)。

    7.在视窗右上角按下Begin,并回到插在Cradle的Palm点选画面右下的Begin Transfer。

    8.如果一切顺利的话,您会看到以下的传输画面。如果完成以上步骤却仍停留在Waiting状态,请检查您的COM port有没有设错,并检查两端设定的传输速度是否一样。如果还是有问题,可试着降低速度看看。

    9.几分钟之后,ROM就可以下载完毕,建议您以下载的机器型号作为文件名!譬如我是从Palm IIIe下载的,就把文件名取为IIIe.rom。

    有了ROM image之后,我们就可以开始使用模拟器了。
    如果你需要的是有除错功能的版本(debug version),请点选这里,里面的Obtain ROM Image Files一节有详细的申请步骤。

    Visor与TRGpro的用户请继续参考以下两小节的补充说明。

    下载ROM image——给Visor的用户
    Visor目前仅支持serial cradle抓ROM,步骤同上。如果你没有买serial cradle,也没有关系,请参考“如何用USB cradle下载visor的ROM image”一文,该文详尽的FAQ告诉你如何使用USB cradle抓ROM。

    与Palm的情况类似,你也可以向Handspring申请ROM image。步骤是:

    1.注册成为Handspring的Developer。
    2.下载合约书
    3.填写好,把它打印出来并签名,传真到1-661-420-5206

    如果一切顺利,Handspring将以e-mail将ROM image的压缩文件寄给你。内含英、德、日三种不同语言的ROM image(release version)。因为Handspring目前还没有提供debug version的ROM image,所以你收到的是没有除错功能的release version,debug version预计在年底前会推出。这些资讯有可能随时间产生变化,所以您如果要向Handspring申请ROM的话,可以先到他们POSE的网页作一下确认。

    下载ROM image——给TRGpro的用家
    因为TRGpro出厂时已被FLASH PRO FORMAT过,而且又有CFBACKUP与CFPRO,所以转出来的ROM也无法提供给模拟器使用。要跑TRGpro的模拟器,必须执行以下三个步骤:

    1.由其他Palm取得OS 3.3的ROM image,步骤同上。
    2.在Windows文件夹里面找到Palm OS Emulator.ini,把里面的FfsHome设为模拟器所在的文件夹,譬如"FfsHome=C:\Palm模拟器\" 
    3.执行模拟器并安装二个特殊文件CFPro.prc、ffs_pose.prc(下载),以使用硬盘来模拟CF CARD的储存空间。

    第3点的文件解开之后,除了上述两个.prc之外,还有一个TRG_POSE.pdf可以参考一下。 

    Palm模拟器——使用篇

    模拟器初体验
    所需的软件准备妥当之后,就可以开始我们的模拟器初体验了:-)请执行emulator.exe。

    每次执行模拟器之后,您可以把当时执行状态保留下来,存成一个文件,这种文件我们称之为一个session,储存的扩展名为.psf(Emulator session files)。所以这里的"New"与"Load"按钮,作用在于开启一个新的session或载入储存在硬盘中的session。由于我们是第一次执行模拟器,所以点选"New",开启一个新的session。至于"DownLoad"与"Exit"则负责下载ROM与结束程序。



    开新session之后,会进入下方的画面,我们在此作一些基本设定。

    • Device:在此选择要模拟的机种。您要事先准备好相对的ROM image,譬如我在此选择Palm IIIe,就要事先准备IIIe的ROM image。
    • Skin:设定模拟器的面板,在此保持Generic通用面板不变(也没别的可选:D)。稍后会谈到如何更改面板。
    • RAM size:在此设定您要模拟的内存大小,假设我要模拟的是8MB的Palm IIIe,就选8196k。
    • ROM File:指定ROM image的路径,这样模拟器才知道要到什么地方去抓ROM。

    设定完毕就按ok。

    呵……有没有看到下面的模拟器画面呢?好玩吧..^_^
    这个时候,您就如同取得了一部新机器一样,一样要设定位置与日期时间才会进入主画面。整个模拟器的操作与实机完全一样,只是要使用鼠标代替Stylus。所有的开关、按钮都可以使用喔。至于最下方行事历、通讯录等四个按钮及上下键除了用鼠标点选,也可以用键盘的F1、F2、F3、F4与PageUp/PageDown代替。若要输入文字,除了在手写区用Graffiti输入外,也可以直接用键盘输入。(呵……终于可以体验Palm接上外接键盘是什么滋味了^_^)

    把玩一阵子之后,请按鼠标右键,会跳出一个选单,有关模拟器所有的设定与控制都是通过这个选单完成。请选Exit结束模拟器程序,并自行设定文件名,储存这个session。 

    增加面板
    假如每一种机型都用同样面板那就太无趣了,还记得我们下载的面板吗?请把它解开,与模拟器主程序放在同一个地方。您会看到多出了Skins v1.4的文件夹。



    把面板放在这里的原因是:模拟器会在此找寻以Skins为名称开头的文件夹来搜寻面板,如果放在别处,就没有新面板可用罗。

    选择不同的面板
    好!现在来试试新的面板罗。由于前一页我们已经把模拟器关掉了,所以现在请重新启动模拟器。由于刚才有作储存的动作,所以启动之后出现的画面会接续我们前一次使用的状态。请点右键呼叫功能选单,选择Settings->Skins:



    点选之后,你会发现可以选择的Skin除了Generic之外,多出了Standard-English,(在此显示的选项会因机种而有所不同,譬如Vx多了日文版,Visor则有不同颜色的面板)我们选Standard-English再按ok。



    有没有发现面板更新了呢?^_^

    如果您想看看其他面板,一样按右键弹出功能选单,点选New以开启新的session,选不同的Device,再选择Skin。譬如我手中只有IIIe的ROM,但我想看看Vx的长相,就可以在Device选Palm Vx,Skin选Standard,按Ok之后,就会看到Vx了。不过这只是好玩,而且并不是每种Device都会成功,要视你使用的ROM image来决定。真的要用模拟器的时候,还是要记得配合ROM image选取正确的Device。

    以下是几个不同模拟器的画面:

    设定面板的大小及画面颜色
    除了设定不同的面板,Settings->Skins还可设定模拟器的显示范围与黑白画面。



    Double Scale打勾会让模拟器大小变成原来的两倍。而White Background会让画面变成黑白的:



    功能菜单
    使用模拟器的时候,我们透过功能菜单来作相关的控制。所以在此我们看一下菜单中提供了哪些功能让我们使用。请按鼠标右键,把菜单弹出来:

    功能 说明
    Exit 结束模拟器程序。
    New 开启一个新的session。
    Open 开启已经存在硬盘里的session。
    Close 结束目前的session。
    Save 储存目前开启的session。
    Save As 把正在使用中的session另存新文件。
    Save Screen 把目前的画面存成.bmp的图形文件。请参考下文关于Save Screen小节的说明。
    Save Bound Emulator 把ROM image和emulator包在一起,下次就可以使用产生的emulator_bound.EXE执行模拟器,不再需要ROM image了。
    Install Application/DataBase 把程序/数据库安装到模拟器。下面会说明在模拟器安装软件的方法。
    Export DataBase 把目前模拟器里面的程序或数据库另存成.prc或.pdb/.pqa的文件。
    HotSync 用模拟器与DeskTop作同步,详细步骤与方法请参考“如何使用模拟器同步”一文。
    Reset 就是soft reset,相当于按了Palm背面的reset按钮一样,可以重置目前的session。
    Transfer ROM 从一台Palm把ROM抓下来。
    Gremlin:New 新增并执行Gremlin。Gremlins是用来测试程序兼容性的工具,开发应用程序的使用者才会用到这个功能。
    Gremlin:Step Stop之后,每次执行一步。
    Gremlin:Resume 从control file恢复执行Gremlin。不过这个功能目前还没有作用,只是宣示未来会有此功能而已。
    Profiling:Start 开始对你的程序建立一个profile。POSE对于程序开发最有用的工具就是这个Profiling了。这个功能可以帮助你监测程序执行时的一些状态或行为,并且可以把这些观察到的资料储存下来作为日后的参考。
    Profiling:Stop 停止建立Profile。
    Profiling:Dump 把Profile存入硬盘。
    Settings:Properties 设定目前模拟器的一些状态。请参考下面关于Settings->Properties小节说明。
    Setting:Logging 指定要记录哪些资料。
    Setting:Debug 关于程序除错的设定。
    Setting:Skins 有关面板的设定。
    Setting:Breakpoints 设定Breakpoints。
    About Palm OS Emulator 这个应该不用说明吧..:Q

    其中Gremlin、Profiling与一部份的Settings属于进阶功能,写程序的人才会用到。这部分未来会有专文讨论。我们在此先讨论一般功能。

    关于Settings->Properties
    在Properties里面,有两个常用的设定,大家可以参考一下:

    • Sounds:打勾模拟器才有声音。预设值是没有打勾的静音状态。
    • Closing/Quitting:关闭session的时候,是否存档。您可以在此设定每次都存档、让你决定要不要存档或是一律不存档。

    关于Save Screen
    如果你想抓一些软件的影像,可以把软件装在模拟器,再用Save Screen把执行画面抓下来。这是最方便的方法了。如果不用模拟器的话,就只好用Save Screen Hack或Screen Shot Hack了! 

    安装软件
    灌了模拟器,当然要装些软件玩玩看了!除了用标准的HotSync对模拟器作同步之外,有两种方式可以让你轻松的安装:

    • 使用功能菜单
    • 使用拖曳方式(Drag and Drop) 

    使用功能菜单安装软件
    第一种是用功能菜单的Install Application/Database->Others来安装应用程序。

    点选Others之后,会让我们输入文件的路径名称。Others下方的程序列表列出的是最近安装的东西,可以直接选取安装。譬如我先前装过小蜜蜂,它的路径及文件名就会在此记录下来,现在直接选取就可以再装一次,不用选路径文件名。

    把文件装入模拟器之后,暂时不会出现这个软件的图示,一定要reset或按下方行事历等四个按钮的其中一个再按Home,安装的东西才会显示出来,让我们点选使用。

    使用拖曳方式(Drag and Drop)安装软件
    除了用上述方法之外,也可以用Drag and Drop把想安装的东西直接拉进模拟器。用Drag and Drop的好处是它可一次安装大量文件,只要事先选取所有要装的文件,再拉进去就可以了。铁路时刻表或中文系统之类要装一堆文件才能使用的系统建议您用这种方式安装,会轻松很多。另外,用Drag and Drop装东西的时候,不必特别把资源管理器与模拟器的位置错开,直接拖拉就成了(看范例再作一次,就晓得我在说什么了:-))。

    这边举三个例子让大家参考,第一个范例只装一个文件,第二及第三个范例则告诉大家如何安装多个文件,也顺便示范掌龙中文的安装方式:

    范例一:安装小蜜蜂。假如说我今天想用模拟器玩小蜜蜂,可以先开启资源管理器(或我的电脑)找到galax.prc,把它直接拉进模拟器就完成安装了。(欣赏动画356KB)

    范例二:安装铁路时刻表。先把要装的文件选取出来(配合ctrl或shift键),弹出模拟器,随便找一个刚才选的文件,按住鼠标不放,拉进模拟器就可以了。(欣赏动画:1916 KB)

    范例三:安装掌龙中文。方法一样,只是装掌龙的时候必需事先知道要装哪些文件。以下是掌龙中文的文件列表:



    Full与Lite分别对应到掌龙的精简版与完整版。os31、os33与os35择对应到不同的OS版本,所以假如我想在IIIe的模拟器跑完整版的掌龙,就装Full与os31这两个文件夹的文件:进入Full文件夹,把文件全选(按Ctrl-A)拉进模拟器,再进入os31文件夹,一样全选,拉进模拟器,就完成掌龙的安装了;如果想在Vx的模拟器安装精简版掌龙,则安装Lite与os35里面的文件。原则上,就是按照精简/完整版与OS版本来选择安装的文件。(欣赏动画:1048 KB)灌好之后,你的模拟器就有中文环境了!

    (附注:如果您安装之后出现有关global variable的错误信息,请改用HotSync安装掌龙。) 

    结语
    模拟器是程序设计的第一步,也是您测试软件的最佳拍档。让你不花钱,就可以玩遍所有的机种(当然,要有ROM image才行:Q)。不过,毕竟这是模拟器,仍有其局限,譬如有时候就会出现一堆错误信息,虽然按Continue就可以继续执行,但也是蛮讨厌的。另一方面,有些手写的东西,以鼠标代替也不大容易体会那种感觉。譬如说,你总不会用鼠标写Graffiti输入资料吧:D。模拟器主要还是在展现软件的使用与操作环境,更重要的是提供程序测试与除错的功能。如果您装模拟器的目的是为了体验它的使用环境,建议您有机会的话还是要想办法借一台或到店家去操作一下实机。

    另外,本文使用的环境是Windows,由于手边没有Mac与Linux的机器,所以无法提供这两个OS的画面与说明。我晓得Mac族的PDA用户有非常非常大的比例使用Palm OS的机种,而Linux的玩家想必也对Windows以外的操作系统很感兴趣。所以,如果您有MacOS或Linux的使用经验,非常欢迎提出您的安装说明或使用经验来造福大家喔。


    收藏到:Del.icio.us




    评论