A review of Windows 7 & tips & never-before-published hacks - General Topics

Why a Windows 7 article in a forum dedicated to mobile devices? you may ask. Because I also elaborate on strictly mobility-related questions as well - something you'll unlikely find in any other Windows 7 article. In addition, you'll find a lot of tips and hacks never before published - that is, this article is definitely worth getting as much exposure as possible.
Guys, I’ve written an article on my experience. Hope you’ll like it.
I've been playing with the brand new Windows 7 beta (build 7000) since it's been made public. I've installed it on my three notebooks:
IBM Thinkpad a31p (2 GHz P4-M, 2100b, 1GB RAM, 120 GB 5400 rpm HDD, UXGA with FireGL 64M VGA)
IBM Thinkpad t42p (2 GHz Dothan, 2200gb, 2GB RAM, 250 GB 5400 rpm HDD, UXGA with FireGL2 128M VGA)
HP TC1100 Tablet (1 GHz ULV Banias, 2200gb, 1.5GB RAM, 160 GB 5400 rpm HDD, XGA with Geforce 4 Go 32M VGA)
(My three notebooks running Windows 7; click the picture for the larger version)
So far, I'm absolutely happy with it and have completely switched to it on both the t42p and the TC1100. (On the latter, I don't really watch videos so the sub-par video performance isn't an issue with me.) It's, speed- and compatibility-wise, way superior to Vista, even as of SP1. While the speed of Vista was more like of a snail on both my a31p and TC1100 and was incomparably slower than XP SP3 running on the same hardware, Windows 7 (W7 for short) is at least equally fast than XP – or, I should say, even faster. On my a31p (which I mostly use for watching DVD's and as a back-up notebook), I think I'll stay with XP before I manage to "hack" a video accelerated driver to the system.
Of course, Windows 7 has all the goodies of Vista. This will definitely be appreciated by the Tablet PC (PC's that can also use pens as input devices, just like Pocket PCs) folks: it's Tablet PC's that have gained the most by the version switch. Vista, as with W7, has much better tablet PC support: trainable (!!!) handwriting recognition, much better multiple list selection capabilities; visual feedback of the activated "right" mouseclick etc. (See THIS for more info.) However, there are a lot of goodies for non-tablet users as well; for example, running the system on a non-native resolution looks far better on LCD's because of the new and better smoothing algorithms. This is a definite plus if you plan to use your operating system on a monitor that has higher native resolution than the currently used one.
Also, using larger (125/150% pre-set; of course, this can also be fine-tuned) characters are, generally, better handled than under XP. This is of extreme importance if you have an extra high resolution, but, comparatively, small (15 or 15.4") screen (UXGA (1600*1200), WUXGA (1920*1200) or even QXGA (2048×1536)) like on high-end IBM / Lenovo Thinkpads. Of course, you will run into problems of hidden buttons or clipped titles, even with Microsoft's own (!) programs, if you raise the magnification, but, in general, I've still found Vista / W7's approach better than that of XP. Some examples of it not working:
Two shots of Microsoft's own Windows Mobile Device Center misbehaving when using 150% magnification are shown in the following two shots:
(Click the images for the original-sized versions. Note that many other images in this article are also linked via a resized, "small" thumbnail. You can easily spot them by not only the changed mouse cursor [hand instead of the pointer], but also the lowish JPG quality of the thumbnails - while native screenshots are all high-quality PNG files.) Clipped titles, misplaced labels and, what is worse, completely hidden buttons. Adding even more insult to injury, you can't even resize the window and, therefore, in no way can make the hidden buttons visible in the second GUI. Hope this will be fixed.)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}

Total Commander's plug-in window – several buttons [on the right] are missing. It should look like the following:
(a shot without any default zoom)
1.1 Drivers; common problems
As a rule of thumb, W7 has a far wider choice of both built-in (offline, coming on the DVD and, therefore, installed at install time) and online (accessible via automatic (!) driver search) drivers than Vista. Just an example: while I was in no way able to make the Wi-Fi card work in either my a31p or TC1100, it worked (almost) out of the box under Windows 7.
You can even use most of your XP drivers, keeping in mind you always run them in XP SP2 compatibility mode and as an administrator. I've encountered far fewer driver problems under W7 than under Vista.
1.1.1 The video acceleration problem
Currently, the biggest W7 problem you may also face is that of the video acceleration. On many notebooks (more precisely, built-in video hardware), trying to make use of the video acceleration features results in an immediate Blue Screen Of Death (BSOD) crash or just a system hang. This not only happens when you try to run 3D games, but also when playing back videos in most video players, even including the built-in Windows Media Player – they also use acceleration features of the video card.
If you do encounter these kinds of problems, you'll want to go to Display / Change Display Settings / Advanced Settings / Troubleshoot / Change Settings and, there, just set the slider to the second position:
Note that this will severely degrade not only gaming, but also 2D and video rendering speed. This also means you won't be able to enjoy the really cool visual effects of W7 – which are automatically enabled when W7 notices it runs on a sufficiently quick and capable machine. To do this (and to get a performance estimation), go to Control Panel / Performance Information and Tools (it's under System and Security / System / Check your computer's Windows Experience Index base score if you don't use the "All Control Panel Items" feature of Control Panel) and run the test. For example, on my t42p, I got (for a 2004 model) pretty nice results; this is why animation was enabled after finishing the test:
On a device with a non-acceleration-capable card (in this case, my TC1100), you'll always get 1.0 for the 3D acceleration index:
Theoretically, it could be possible to "hack" the so-called "reference" drivers of both ATI and Nvidia (the two major players on the accelerated video hardware field) with "Mobility Modder". You might want to check out THIS for ATI [like the FireGL GPU's in the p-series Thinkpads] and THIS for Nvidia [like the GPU in the TC1100] hacks. Nevertheless, neither of them worked on my ATI-based a31p or Nvidia-based TC1100; see my a machine-specific reports in Chapter 2 for more info. You, however, may have better luck.
1.2 Generic software compatibility issues
In general, most of the (legacy) software titles I've thrown at W7 worked. Some of the most notable exceptions are as follows:
1.2.1 Virtual CD/DVD software
Most of the virtual CD/DVD mounter software titles (which are realy useful, should you want to for example install an application in a disk image – for example, .ISO – file without burning it on a real CD / DVD) refuse to work. For example, both Alcohol 52% Free Edition 1.9.8.7117 FE (also admitted by the Alcohol folks themselves) and DAEMON Tools Lite v4.30.3 32/64 Bits (with SPTD 1.56) have major issues. In my tests, however, PowerISO 4.3 turned out to be working just fine. Too bad it has no free versions to just mount a disk image, unlike Alcohol's 52%...
Some folks at the thinkpads.com forums also stated VirtualCD v9 is compatible with W7; I haven't tested this myself.
1.2.2 WinPcap
Unfortunately, WinPcap (The Windows Packet Capture Library) doesn't work either, not even the latest 4.1 Beta 5. This means software titles depending on this driver won't really work either. The most prominent example of them is WMRecorder, the, in my very thorough streaming media saving tests, best title of all (version 12.3 was really able to capture everything I've thrown it at) – you won't be able to use it in ADA mode, only in PRO, which is far from being the best.
That is, for the time being, you'll need to switch back to XP (or Vista) to back up your multimedia strems.
1.3 Installation on top of older (Windows) operating systems
1.3.1 Activation, serial numbers
Currently, it seems, every beta tester is eligible to get five different serial numbers for testing. Should you need all of them (if you for example are afraid of running out of the 2.5 million requests before realizing you need to install W7 on another PC), just make sure you refresh (F5) the W7 beta download page where the first serial number is displayed.
1.3.2 Multiboot
If you install W7 on another partition (or hard disk), the old operating system will still be accessible and listed in the new boot loader W7 installs.
A notable exception is Linux, including "hacked" OS X versions (see THIS for more info on setting up the latter on ordinary WinTel PC's). If you install W7 on a PC with, for example, the OS X boot loader being the active, it will no longer be visible.

Fortunately, there is a very easy way of fixing this: the free EasyBCD. Just make sure you follow THIS guide. A screenshot showing it configured to access my OS X setup:
1.4 Security and its implications; loosening security restrictions
1.4.1 File system
If you're a newcomer to Vista / W7, you'll notice it uses an entirely new file system security approach.
In XP, it's just the subfolders of Documents and Settings that were protected (by default) so that other users couldn't just step into them to examine the contents of other users. In Vista / W7, this has been taken further – now, among other things, c:\Program Files is entirely write protected.
There are some implications of this. For example, if you run some "hacker" tools (like Driver Heaven's "Mobility Modder" hack) needing to have full write access to the given (sub)directory so that they can patch / copy files, they'll fail. Also, if you need direct write access to a subdirectory of c:\Program Files, you may run into problems.
An example of this is running Apache Tomcat (or any other Web server) from inside c:\Program Files. If you develop Web pages (JSP's etc.) in its webapps/ROOT directory, you will run into problems when you try to edit the individual files. Sure, if you use the plain Notepad to do this, all you'll need to do is either creating it or saving under a different name so that, later, you can re-edit it. Third-party tools like JCreator (even as of the latest, 4.5 version), however, may run into severe problems doing the same. In my practice, they reported my files having been saved; however, they were nowhere to be seen. That is, JCreator was simply unusuable to edit my Java files under c:\Program Files.
Fortunately, it's pretty easy to fix problems like this. Right-click the directory where you keep your files (for example, ROOT under webapps), select Properties and, then, the Security tab:
There, select "Users" in the upper "Group or user names" list as is depicted in the above screenshot. Now, click Edit under the "Group or user names" list and, again, select "Users":
Finally, tick in the "Allow" checkbox in the "Full control" row (it's selected in the next screenshot):
Now, click Apply and two times OK.
Note that you'll only want to do this when you're absolutely sure you must write into a given directory a lot of times. Otherwise, being read-only is part of the tighter security model. That is, always make sure you only allow free writing to a the bottom-most directory, not a more generic one closer to the root directory.
1.4.2 User Account Control (UCA)
You may also want to hide the User Account Control prompts, which can be quite a nuisance, particularly if you install a lot of software. For this, you'll need the free TweakUAC tool. Please consult the online documentation for more info.
1.5 Mobility: iPhone, Windows Mobile, Symbian, BlackBerry
Now, let's have a look at how W7 supports the (outside the U.S. – sorry, I still don't have a real, genuine Android machine – I don't want to use Android hacks on WinMo ones – so I can't comment on Android yet) four major mobile operating systems.
1.5.1 Apple iPhone
I haven't really run into problems accessing or synchronizing my iPhone (firmware version 2.2, yellowsn0w-unlocked and jailbroken) under W7. Even T-PoT worked (please see THIS and THIS for more info), which is great news for all iPhone freaks wanting to access the file system right from Total Commander on the desktop, without having to run an SSH server on the phone (and having to stick to an SSH / SFTP client under Windows.)
1.5.2 Windows Mobile
Accessing (and synchronizing) Windows Mobile (WinMo for short), on the other hand, have turned out to be a little more cumbersome. It hasn't always managed to recognize my WM5+ Windows Mobile models easily. In some, I had to switch to the other USB connection approach.

The following screenshot shows what happened when I tried to make it recognize my HP iPAQ 210, HTC Universal and HTC Wizard, in this order. For example, as can clearly be seen, I could only connect my iPAQ 210 in non-RNDIS (that is, the "traditional" serial) mode. You may also run into the same problem; just remember to set the USB connection type to the other mode.
Fortunately, the WinCE file system plug-in worked flawlessly. (Note: you must install it after you've successfully made W7 recognize at least one of your WinMo phones. This will make sure WDMC is installed and the DLL used by the plug-in is made available. Otherwise, you'll get an install-time error telling you a DLL is missing.) That is, you'll have easy access to the full file system of your phone (or PDA) if you plan to stick with Total Commander – just as with the iPhone plug-in.
1.5.3 Nokia Symbian S60
Nokia's Ovi Suite 1.1 (current version as of 01/15/2009): seems to only partially work:
File explorer: works OK
Nokia Map Loader (updated itself to 2.0.2): has continuously kept displaying "Waiting for device" in both PC Suite and Data Transfer modes when started from outside Ovi Suite already having recognized my phone. Started from inside the latter, the same happened.
Content copier: seems to work OK
Nokia Software Updater: isn't compatible:
Nokia Application Installer: a no-go either, it isn't able to read the installed apps:
Note that there is another report on Ovi Suite HERE. He seems to only use it for PIM synching, which also worked on my configuration. However, he doesn't mention whether he had any success with running the failing submodules I've listed above.
Also note that there's a report on installing the standard PC Suite HERE. You might want to prefer it to the Ovi Suite for the time being.
Note that S60 phones are perfectly accessible in mass storage mode.
1.5.3.1 BT dial-up via the N95
BT dial-up networking (via my N95) worked flawlessly on all my three notebooks. Note that even if you install Nokia's suite, it'll list your device as an unknown one:
Nevertheless, BT DUN will still work OK.

1.5.4 BlackBerry
RIM's official desktop synchronization tool, Desktop Manager 4.7.0 B50 US English - Without Media Manager, works just great, I've experienced no problems at all so far. (Tested backing up, application deployment etc.)
I had no problems with recognizing the phone after installing Desktop Manager either (unlike with Windows Mobile in certain USB configurations):
1.6 Battery runtime
I've very thoroughly tested (running multi-hour tests in a controlled environment: 0% CPU usage, lowest backlight level) the impact on the battery life of switching from XP to W7 on both my Thinkpad t42p and HP TC1100. The results are stellar: W7 in no way consumes more battery than XP under exactly the same circumstances (again, assuming 0% CPU load – active usage of Aero and, consequently, the graphic processor, may have had an adverse effect on battery life). The battery meter and the "remaining time" are pretty dependable. The real runtime I've measured on the TC1100 was somewhat (about 9%) lower than predicted with hight charge levels; however, this may have been a result of using a third-party, comparatively cheap battery (with the wear level of about 15%) in the TC1100, while I run a brand new (wear level 0%), factory battery in my t42p.
Note that if you have a notebook with a touchpad, it's possible you'll see two EXE files starting by SynTP (one of them is SynTPenh.exe) in the process list of Windows, consuming 1-2% CPU time (measured at 600 MHz) all the time. You can safely kill these processes; unlike what's stated HERE, the touchpad (and the pointing stick / USB mice) will still work.
That is, while some people state Vista has worse battery consumption than XP (see for example Finnish Tietokone's 1/2009 article in the printed mag), this certainly doesn't seem to be the case. (Also note that other people state the opposite – see THIS.) I also recommend THIS article on the additional power usage of Aero and THIS on Microsoft's promising 11-15% better battery life under W7 than under XP.
2. A thorough report on installing W7 on my notebooks
In the following sections, I explain how I installed W7 on my notebooks, what my experience is and what you should pay attention to. Note that while I "only" discuss three models, most of the stuff I state can be generalized. For example, you'll need to use exactly the same apps and drivers (Hotkey fix etc.) on most other Thinkpads and the same Wacom driver on your Tablet PC if it has Wacom hardware but the factory driver doesn't support pressure sensitivity (as is the case with the TC1100).
2.1 HP TC1100 Tablet PC
This was a pretty hard nut to crack. First, the VGA support. By default, a generic VGA driver is installed, which doesn't even support screen rotation (orientation change). That is, the first thing you do should be installing the video driver (THIS file [linked from HERE]) and disabling D3D to avoid crashes.
After connecting to the Net and right-clicking all the unknwon devices and letting them to automatically update, the only "Unknown device" remains will be the buttons – everything else will be found online after install. This means you'll only need to install the video driver (again, don't forget to disable acceleration to at least D3D levels!), Q Menu (THIS file) and the button drivers (THIS file) of the official HP drivers – nothing else. And, of course, the Wacom driver from the Wacom folks (and NOT the HP ones – the one automatically installed), should you need pressure sensitivity.
You might also want to check out THIS for an excellent writeup on the TC1100. BTW, speaking of the same thread, you might also want to have a look at THIS
Some additional remarks:
2.1.1 SD card support
In a nuthsell, it doesn't work – at least for the time being.
2.1.1.1 Auto-installed driver
If you let it auto-install the driver when you insert a <= (smaller or equal than) 1 GB card, it'll only work until you reboot your machine. After you do reboot the TC1100, it won't work even with <=1 GB cards – inserting them will result in an immediate crash. The same will happen if you insert >1GB card in the slot even before the first reboot – they'll freeze the TC1100 for the time the cards are in (but not later – unlike after reboots).
I've played quite a bit with trying to find and remove the driver, TI UltraMedia_sd, from the system – in vain. There's no such driver in Device Manager; removing the similar-named System Devices / TI UltraMedia Firmware Loader Device didn't help; neither did PCMCIA Adapters/Texas Instruments PCI-1620…. I've even run some very thorough searches in the file system under \Windows to find the driver that is installed and needs to be removed so that the subsequent card insertion can trigger the automatic reinstall (and working of the card until the next reboot) but in vain. I've even run searches for .inf files with ‘UltraMedia' – no success. All I've found was references to the above-mentioned System Devices / TI UltraMedia Firmware Loader Device. Removing the instance that could be removed (that is, not the one in the driver repository) didn't help.
2.1.1.2 The XP SD driver
The XP SD driver (sp29116.exe) doesn't help – the card remains invisible if you install it, unlike with the driver that is auto-installed first time you insert a compatible card.

2.1.2 Wacom pressure sensitivity support
As with XP, the factory driver available at the official HP download page doesn't support pressure sensitivity. You must download the XP driver from HERE (if the link doesn't work, go HERE and select Tablet PC from the left and Windows XP from the right list). (I've used XP SP2 compatibility mode and installed it as an administrator.) It's the driver that is automatically installed when you right-click the unknown devices in the device manager after installing W7 and force a driver update.
I've tested it work with Corel Painter X, in Edit / Preferences / Bush Tracking. With a non- pressure sensitive (HP) driver, the lowermost two sliders will remain the same, no matter how much hard you press the pen on the screen on the scrap field; with the Wacom driver, they'll move just like the uppermost sliders. (Photoshop users should take a look at THIS, should they not know how pressure sensitivity can be utilized. A not that interesting video is HERE)
2.1.3 I've tried to hack the following video drivers…
I present you a detailed explanation of what video drivers I've tried to hack to gain both orientation change support (which, again, is supported by the stock HP driver when manually installed) and full video acceleration. So far, I had absolutely no success. Hope the TC1100 folks I've posted my premilinary results to (see THIS and THIS threads) will have more success than me.
2.1.3.1 The laptopvideo2go driver hack
I've thoroughly tested the laptopvideo2go driver hack mentioned at http://www.tabletpcbuzz.com/showthread.php?t=36154&page=2 and explained at http://www.laptopvideo2go.com/forum/index.php?showtopic=9547 . I've downloaded 84.43 from http://www.driverheavendownloads.ne...ile=84.xx/84.43_forceware_winxp2k_english.zip ( linked from http://www.driverheavendownloads.net/nvidia.htm ) and let it decompress itself to under c:\NVIDIA (of course, it couldn't install as it's incompatible with the system). I've replaced the INF file (after changing the two (!) occurrences of Rotateflag in the file from 4 to 0x40) and, after renaming, I've copied the DLL file to the same directory. After this, I've run setup.exe in the same c:\NVIDIA\some subdirectory as an administrator.
It didn't really work – I couldn't find any difference from the stock HP driver (also installed as Administrator, in XP SP2 compatibility mode). While it does support rotation (unlike the standard, stock driver installed by Win7 by default), it also crashes on D3D / movie playback with a nv4_mini.sys BSOD (page fault in nonpaged area).
2.1.3.2 Mobility Modder hack attempts
Also tested with the latest Vista driver (178.24_geforce_winvista_32bit_english_whql.zip) with the driverheaven.net "Mobility Modder" hack. A no go - not even orientation changing is supported.
I've done the same to ForceWare 93.71 WHQL as it's the last driver to support the GeForce 4 MX series, according to the page HERE) – a no-go either.
Note that I haven't tested GeForce Release 179 for Notebooks (see THIS). Dunno if they would work.
2.1.4 Sleep problems
W7 seems to have major sleep problems (note that hibernation is working just great). In many cases, when you resume the notebook from sleeping, it just won't display anything and you'll end up having to restart the entire device by long-holding the Power slider.
That is, don't use Sleep mode for the time being. Also make sure you disable automatic sleep timeouts. Always use hibernation instead.
2.2 IBM ThinkPad t42p
Unlike with the TC1100, I had absolutely no problems with the t42p (and don't have since then, except for some file integration problems. I will keep my eyes open to
The Windows Experience Index (WEI) isn't at all bad, given that it's a 2004 model:
Everything is working (including the volume / ThinkLight / backlight buttons and hibernation / sleeping), except for the additional, IBM-specific functionality like Fn +Space (to quickly switch between the UXGA (1600*1200) and SVGA (800*600) resolution) or Fn + F3 (to dim the screen). There're no on-screen controls for the volume / backlight buttons either.
(Note that the situation is exactly the same on the a31p.)
2.2.1 Emulating the Windows key
As you probably know, Windows 7 uses a lot of keyboard shortcuts to access some advanced functionality. With Windows Aero, one of them is Flip 3D, requiring you to use Win+Tab.
To map an existing button to the Windows button, use THIS utility. It worked flawlessly on my t42p (as usual, installed in XP SP2 compatibility mode and as an administrator). After installing and restarting your PC, go to All Programs / ThinkVantage / Keyboard Customizer Utility, check the Enable key assignments checkbox and select a button to map to the Windows key (uppermost drop-down list):
After this, among other things, Flip 3D will work just fine:
(click the image for a full-sized version)
(Incidentally, if you have a PC with a comparatively good video card but Aero still isn't enabled, you can give a try to the Aero-enabling hack described in the article Hack to Force Enable Aero in Windows 7)
2.2.2 Other stuff to install
You'll want to install the two files (Hotkey Driver and System Interface Driver) also linked from the first post HERE. Note that, as has also been explained in the post, you'll need to execute c:\DRIVERS\WIN\HOTKEY\SETUP.exe and c:\DRIVERS\WIN\SMIIF\SETUP.EXE – that is, simply downloading and executing the two installers won't suffice as all they do is decompressing their content. After this, not only the standard (sleep / hibernation / backlight / volume / Fn + F7 [switching between internal and external monitors]) hotkeys will work (or, on the A3x-series like the a31p, the app buttons on the left), but also for example zooming (Fn – Space; it's also used as sending the current window to the other desktop.) Also note that, during install, Hotkey Driver may display an error message. (This happened on my t42p but, interestingly, it didn't do the same on my a31p.
Incidentally, external monitors will work just fine. I've tested this with an external Viewsonic monitor with the native resolution of 1680*1050 (WSXGA+). When duplicating the built-in display's content, UXGA was used on both (the built-in and external) monitors (meaning a bit suboptimal, but still pretty good rendition on the external one); when extending the desktop, both LCD's were driven at their native resolution (UXGA for the built-in and WSXGA+ for the external one):

You'll also want to download and install ThinkVantage Active Protection so that your hard disk will be protected.
Also, you may also want to install ThinkVantage System Update. It will install the following recommended updates:
Note that it doesn't install for example the Hotkey Driver needed for additional hotkeys. The most interesting app it installed was Lenovo Services' Lenovo System Toolbox (also available as a separate download HERE; see for example THIS for more info), which is pretty nice:
Note that it can also be installed on the a31p; a screenshot showing it running on mine:
Finally, if you have an IBM Thinkpad notebook, don't forget there's a dedicated forum to them at Thinkpads.com - make sure you check it out!
2.3 IBM Thinkpad a31p
I've also installed W7 on my aging, but, because of the UXGA IPS screen, still pretty cool a31p. It works OK, except for the lack of D3D.
I've tried to hack the driver with Mobility Modder (see my dedicated thread HERE); so far, without any success.

For some reason, it's not possible to run WEI on the a31p, unlike on my TC1100 or t42p. At the end, it always reports an error (note that D3D is disabled):
Note that, while the Hotkey driver (one of the two apps needed to be able to see the on-screen feedback of the volume / backlight etc. messages; the other is the System Interface Driver) isn't stated to be compatible with the a31p, it's working just great on the a31p.
Also note that you won't want to install ThinkVantage System Update as, unlike with newer models, it won't offer to install anything.
3. Verdict - is it worth giving it a try?
Definitely. If you wanted the niceties of Vista, particularly if you're a Tablet PC user, but without the snail-alike speed and major compatibility problems, installing Windows 7 is a must. You won't be disappointed, particularly not if you don't have any kind of driver compatibility issues (most importantly, graphics acceleration problems.) Believe me: Windows 7 is orders of magnitude cleaner, better and faster than Vista.

Loving Windows 7 so far - vast improvement over Vista - even in Beta!
BUT when I try to start WMDC it stops working straight away then the green screen comes up and it says 'connecting' even when no device is connecting - and there it remains....

Thanks a lot!
Great and complete review mate!
Cheers,

With Nokia PC Suite, you have to take MSI installer or right click on installer program and set as Windows XP SP2 compatibility, i have Windows Server 2008 and is the same issue
btw,Nokia PC Suite works flawlessly!!

UPDATE (Jun/05/2009): Windows 7 RC1 on the HP TC1100 and the IBM Thinkpad t42p
HP TC 1100
I've played quite a bit with the current (RC1, build 7100) version of Windows 7 on the HP TC1100 tablet. I'm pretty much impressed - the new version works quite a bit better than the old one.
Drivers
I installed (from the local filesystem) the same three drivers as with the previous (7000) build: the video, the Q menu and the button drivers. Note that at least the Q Menu installation must be run in SP2 mode / as an admin; otherwise, it'll display loading CPQ32.dll failed. (Please see section "2.1 HP TC1100 Tablet PC" in my previous article for more info.)
So far, I'm impressed:
- there's no need to disable D3D (video acceleration) any more. Video playback performance is approximately as good as under XP.
- multiple thumbnails are correctly displayed, even in Portrait mode. Sure, there certainly isn't any real visual effects - for example, dynamically showing the window of the thumbnail which the cursor is hovering over or dynamically showing on the thumbnail itself a miniaturized, scaled-down version of it.
- now, it sees the Windows XP partition previously invisible for build 7000. I keep XP on the first and W7 on the second partition. In build 7000, it remained invisible; in RC1, it's correctly mounted as D:
- there doesn't seem to be excess CPU usage when operating in battery mode. When doing the same on AC power, however, the CPU seems to be running at a higher speed, which results in considerable warming up.
- the headphones port works out of the box, without the need to install any driver - as opposed to past W7 versions. It works
- as far as mobile devices are concerned, I've encountered no problems accessing Windows Mobile (including running Pocket Controller Pro 6.02) and iPhone (including running iTunes 8.1.1) devices. With iPhone, the PdaNet USB server, QuickPwn 2.25 and T-Pot 1.1 works OK. Note: you should stay away from flashing new ROM's onto WinMo devices. Note I haven't tested the tips published HERE - they may work just fine. Also note firmware update and jailbreaking work just fine with the iPhone.
Problems:
- Recovering from sleep (suspend) still doesn't work reliably. Hibernation works flawlessly. That is, if you absolutely must use suspending, stay away. If, on the other hand the additional shutdown / bootup time of hibernation isn't a problem, this isn't that big an issue.
- the three hardware icons (rotate screen etc.) are not usable (albeit they certainly are visible to the button handler app - see Hardware and Sound / Set tablet buttons to perform certain tasks)
- rotate screen doesn't work when invoked through, for example, mapping it onto a hardware button. You must always go to Appearance and Personalization / Display / Adjust Screen Resolution and change the screen orientation there; I know of no shortcuts of doing this. Note: if you (un)dock the TC1100, the screen orientation changes accordingly.
- still no SD card reader support (PCMCIA card adapters and USB readers work, of course).
Note that one of my readers, Kieslar, in a comment under my initial article stated the following: "I was able to get rotation and D3D accelleration working on my TC1100 in Windows 7. After some searching online, I noticed that when the 84.43 drivers were first released, someone was having nv4_mini.sys related BSODs. Downgrading to version 82.12 fixed the BSOD for him, so I thought I'd give it a try.
I completely uninstalled 84.43. Then I downloaded 82.12 from http://www.driverheavendownloads.net/nvidia.htm and copied hpqvdisp.dll and the modified nv4_disp.inf (with Rotateflag instances changed to 0x40) to the same directory. After installing, it no longer crashed on D3D or movie playback! "
I don't know whether you can get better graphics acceleration performance (for example, to enable dynamic window thumbnails) using this driver than the one, sp27014.exe (HP's own driver), I recommended in my initial article. I certainly welcome any reader feedback on this.
On the IBM Thinkpad t42p, basically everything is OK. However, I've encountered problems with recovering from suspension (sleep) sometime - albeit in no way as often as on the TC1100. In about every twentieth reboot, I also run into the blue screen of death when trying to read the hibernated notebook state. This means if you do hibernate (or, suspend) your notebook, make sure you've saved everything before that, in case you don't manage to restart it. Nevertheless, I like Windows 7 on my t42p a lot, mostly because of the highly useful, graphics accelerated dynamic thumbnails.

UPDATE (somewhat later, the same day):
1.) in the meantime, I've found out there is also an excellent Wiki article dedicated to setting up Windows 7 on the HP TC1100 HERE. It should be the most important guide you follow when updating.
So far, I've tested the following (and found them all working):
a. video driver. By getting the 82.12 installer and, after executing it, it decompressed itself to a directory. I've copied the two hacked files, as is explained, into the directory where the 82.12 installer decompressed itself. After the installation, resuming from sleep started to work. Excellent!
b. the "Mail" button hack. After the recommended Registry hack, it indeed started working; both short- and long presses are registered.
c. the screen rotation hack via the Hardware and Sounds / Tablet PC Settings / Go to Orientation link (it's a link, not a button BTW). After the hack, screen rotation started to work when assigned to a hardware button. (I still need to find out how to make the three "soft" buttons work on the front.)
2.) I keep you posted when I learn something / test stuff. Currently, I'm installing Windows 7 on my IBM Thinkpad a31p to see whether the D3D problems are gone on it too and running the CPU voltage decrease tests on the TC1100 to reduce heat / ventilation.

UPDATE (Jun/7/2009) : I've played a lot with undervoltaging my HP TC1100 and IBM Thinkpad t42p as is explained at http://forum.notebookreview.com/showthread.php?t=235824 (and recommended in the above-linked TC1100 Wiki).
I have GREAT results. I've managed to decrease the voltage with more than 0.2V on the Pentium M Dothan-based t42p and slightly less on the Pentium M Banias-based TC1100.
On the TC1100, the cooldown advantage I've managed to get is about 2C degree at full CPU usage. (The TC1100 uses the Pentium M ULV CPU, which already is, as you may have guessed, running on lower voltages.) Nevertheless, this already means the fan "kicks in" far less often. With a protective case on (which doesn't let the TC1100 cool down, except for the two fan openings) and only browsing Web pages with Opera, without the Flash plug-in (which is a real CPU hog, even when running in the background; this is why I don't let Opera install the Flash plug-in but just copy the URL of a page I want to see its Flash content into IE) installed, it only started after about 30 minutes. Without the case, the fan has never kicked in.
I've got even better results with the t42p. The CPU running at 2 GHz and 1.32V, the maximum temperature I recorded was 82C and the average 77-79C. The CPU undervolted to 1.1160V (which is two selectable values more than the already-unstable [Orthos displays a computation error] 1.0840V; 1.1000 would have resulted in 60C), I got the maximum of 61C. That is, about 20C less than in the default case!
I was pretty lucky with decreasing the minimum voltage (at 600 MHz). Instead of the default ~0.98V, I've found out 0.7320V is still sufficient. (Going even lower, 0.7160V, has resulted in Orthos displaying a computation error.) VERY impressive!
Note that, under Windows 7, when returning from hibernation, it will auto-start in the background. It also displays an icon in the lower right corner of the screen (hidden by default in Windows 7). It might be useful to disable it (right-click and Hide) to further reduce CPU usage.
I can only recommend the RightMark overclock app - it will REALLY cool down your notebook. The CPU consuming considerably less power (and dissipating far less heat) will not only resulting in major battery life savings, but also a much more silent notebook. And, of course, it's easier to work with a notebook that doesn't overheat - even if fan noise or higher power consumption isn't an issue with you. For example, the IBM Thinkpad t42p has the fan in the lower right edge of the notebook (unlike, for example, the, in this regard, better-designed IBM Thinkpad a31p, which has the same in the upper right edge). The notebook running a CPU-intensive task makes working pretty hard: everytime you let at least part of your hand drop from the notebook, you'll almost burn it in the stream of the hot air. With undervoltaging in place, this effect is far less pronounced - after all, the stream of air itself is about 20 degrees cooler.
Three screenshots of my TC1100 and t42p undervoltaged. Note that, with the TC1100, I fine-tuned all the voltages - not only the highest and lowest (for 1 GHz and 600MHz, respectively). With the t42p, I used the automatic computation, based on the manually-set and checked highest and lowest frequency values, compute them. Of course, I've tested their stability (as on the TC1100) by disabling the highest-frequency checkboxes in turn, one after another.
TC1100
T42p
Still another remark: if yours isn't a Core (2) Duo CPU (but, say, a Pentium M Dothan or Banias), then, in the "Advanced CPU settings" tab, there will be almost nothing you can en/disable, unlike with later CPU editions.
All in all, I can only recommend undervoltaging. It's well worth the effort and time.
Some other benchmarks I've made, showing how the heat buildup depends on the voltage:
At 2 GHz:
1.2280V: 68C
1.1800V: 66C
1.1480V: 64c
1.1160V: 61c
1.1000V: 60c
At 600 MHz:
0.7800V: 43c
0.7640V: 42c
0.7480V: 41c
0.7320V: 40c

UPDATE (9/Jun/2009): I've installed W7 RC1 on the IBM Thinkpad a31p too. Works wonderfully: no video acceleration / suspend / hibernation problems.
It has detected all the drivers except for the video driver (which you'll want to change) and the wireless driver. That is, all I needed to do was getting and decompressing the Wi-Fi (1awc32ww.exe) and the video (1rd635ww.exe) driver and just navigate to the target directories under c:\drivers from the hardware manager, after clicking the traditional "Update driver".
Unfortunately, the old FireGL card in the a31p is unable to do any of the hardware acceleration niceties; that is, don't expect anything fancy. Nevertheless for example video playback works just great - unlike without video acceleration (the case with the a31p running the previous public beta).

UPDATE (12/Jun/2009): after reading a dedicated post of a msnews.microsoft.com member, I've also played a bit with external monitors and the usable resolutions.
Under XP, using HP's above-linked official driver, the maximal external resolution is 1600*1200 and there's no way of using 16:9 or 16:10 aspect ratios (only 4:3):
Under Windows 7, if you do use the hacked video driver (see the first update above on installing it), you can select anything up to 2048*1536, including 16:9 and 16:10 aspect ratios:
These high resolutions do work (I've tested them up to 1600*1024; my TFT monitor only being an SXGA (1280*1024) one, I couldn't test higher resolutions).
This is another advantage of switching to Windows 7, particularly if you have a non-4:3 monitor / projector or one with a resolution higher than 1600*1200 (UXGA). Nevertheless, it might be possible the new driver can be used under XP too, offering the same, additional resolutions and aspect rations. It's just that the official HP driver doesn't.
A caveat: sometimes I couldn't see these resolutions. I had to switch to Portrait (on the primary, built-in one) and remove / reinsert the VGA cable to be able to see them. That is, if you don't see them, don't despair: do the same as I've done.

Excellent thread Menneisyys. If I might add, I came across problems connecting my daxian x999+ to Windows 7 WMDC. Here's how I was able to resolve the problem:
http://www.jeedo.net/howto/windows-mobile-connection-error-on-windows-7/
Please note I'm using Windows 7 Ultimate 32 bit retail.

Related

All about Safe Mode – the definitive tutorial

You’ve installed a new application and, now, can’t boot in your Pocket PC? Ever wondered how you can boot into a Safe Mode similar to the desktop Windows Safe Mode to disable all third-party applications and services? Read this!
1. A quick (executive) summary
If you don’t want to read the article in its entirety (I DO recommend the latter – it contains a LOT of never-before-published tips and plain English explanations of what is happening behind the scenes!), here’s what you should do:
depending on your preferences, get either Spb Pocket Plus or iLauncher, install it
if you encounter boot-in problems (the device wouldn’t boot after installing a new application and resetting the device), make sure you quickly (in less than one minute after the first reset attempt) reset the device so that the Safe Mode boot message is triggered and displayed
when the above-mentioned message is displayed, tap the screen area; Spb Pocket Plus / iLauncher will boot in Safe Mode
now, simply go to Settings/System/Remove Programs and remove the application
finally, click the “Reset” button on Spb Pocket Plus / iLauncher. It’ll reboot in the standard (non-safe) mode – now, without the offending application.
1.1 Non-bootable Pocket PC’s?
However much the Windows Mobile operating system is much safer than many desktop operating systems, there may be cases when things just go wrong and you just won’t be able to boot in: after resetting the device, it will just hang at the boot splash screen.
This is particularly true of cases when you install new software. There are some well-known software products (or unlucky combinations of them) that are bound to cause sometimes severe, reset-time problems. Just two of the well known “dangerous” cases:
some old(er) ThinkOutside StowAway drivers (for example, version 4.3) installed on some specific Pocket PC models (for example, the Fujitsu-Siemens Pocket Loox 720): after the (self)-reset upon installation, the device, in general (particularly if you don’t enable Bluetooth before starting the install), most probably just hangs and not even subsequent resets help in most cases.
trying to install the two great Pocket Internet Explorer / Internet Explorer Mobile plug-ins MultiIE and PIEPlus on the same time (not all the time, mostly when it’s not a clean device). In these cases, if you’re unlucky enough, the device is rendered unbootable and you will need to do a hard reset if there are no other chances to make it work again. (Note that alone these plug-ins cause no problems at all. Also note that this is the case with all the versions I’ve tested – even the latest ones.)
In this article, I explain how, with which applications you can fight all these problems. First, I provide a generic overview of the booting sequence of the Windows Mobile operating system so that you know where things can go wrong. Note that you don’t need to understand it: if you don’t, it’s no problem, you will still understand the rest of this article. However, it casts light on a lot of issues discussed in the article and, therefore, is highly recommended.
2. The booting sequence
In this section, I explain the sequence the Windows Mobile operating system executes software during booting in. Software also means third-party software – that is, software like the above-mentioned MultiIE, PIEPlus or the StowAway unified driver. Note that I don’t explain how system software is booted in as it’s irrelevant in this case: I only pay attention to explaining how third-party software is executed. Again, it’s user-installed third-party software that causes unbootability problems.
2.1 HKEY_LOCAL_MACHINE\ init\
The first place Windows Mobile can run into user-installed software is the executable list stored in the Registry, under the HKEY_LOCAL_MACHINE\ init key. (I’ll also refer to HKEY_LOCAL_MACHINE as HKLM.)
This list (to put it simply) contains values named LaunchX with the value of an EXE file contained in \Windows. The name, LaunchX, ends in a number (here, denoted by an X); in general, it’s between 1 and 80…90 and can take any value in between. The smaller the number, the more early the execution of the given application. For example, if, say, the systems executable gwes.exe is Launch30 and, say, the third-party executable SafeMode.exe is Launch49, then, you can be sure it’s gwes.exe that executes first and only after this follows the execution of SafeMode.exe.
2.1.1 HKEY_CLASSES_ROOT\CLSID DLL’s
In this section, not only direct execution is possible: it’s also now that the (executable), in the HKEY_CLASSES_ROOT\CLSID (I’ll also refer to HKEY_CLASSES_ROOT as HKCR) section registered DLL files are (indirectly) executed. For example, both MultiIE and PIEPlus (as far as the current versions are concerned; older versions still used the “traditional” \Windows\ Startup directory to start them) are initialized this way.
This also means you can only avoid problems caused by DLL’s listed under HKEY_CLASSES_ROOT\CLSID if you use a Safe Mode application that is loaded before the latter DLL’s are loaded. Only Safe Mode applications that are loaded in the first stage (that is, from HKEY_LOCAL_MACHINE\ init) are capable of this – in our case, Spb Pocket Plus only.
2.1.1.1 Third-party Software Input Panels
Third-party Software Input Panels (SIPs for short) may also cause lock-up problems. Therefore, it may also be advantageous for a Safe Mode application to disable all the non-standard SIP’s to allow for booting in the device. SIP’s are also stored under HKEY_CLASSES_ROOT\CLSID and are a special class of executables.
2.2 HKEY_LOCAL_MACHINE\ Services
After the HKEY_LOCAL_MACHINE\ init executable files and the HKEY_CLASSES_ROOT\CLSID DLL’s have been loaded / initialized, the operating system loads the services listed in HKEY_LOCAL_MACHINE\ Services, also in the Registry.
In addition to systems applications and services (for example, the OBEX driver), many Today plug-ins (for example, two of the reviewed Safe Mode applications, the non-Safe Mode related services of Spb Pocket Plus etc) and drivers (for example, the ThinkOutside drivers) register themselves in there. Therefore, it’s essential to have a Safe Mode application that is able to disable at least third-party applications in this section. Fortunately, all the available Safe Mode applications are capable of this, unlike with stopping the execution of the above-discussed executable third-party apps.
2.3 \Windows\ Startup
The most widely known place that contain autostart applications is the \Windows\ Startup directory in the file system. Not the Registry: it’s the only stage of loading third-party applications that they are directly stored in the file system. Many (much more than in the first three cases) applications are started from here (for example, the StowAway auto-starting configuration dialog after the install). Therefore, it’s essential for a Safe Mode application to disable all the applications that are stored or linked from \Windows\ Startup.
2.4 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Today
Finally, the Today plug-ins are loaded. Their list is stored in the Registry, under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Today key.
2.5 A quick note on the DB_notify_events database
Note that the “NOTIFICATION_EVENT_WAKEUP”, that is, the “The device woke up” event (which is sent via CeEventHasOccurred) is only sent when the device is powered up, NOT after a soft reset (there is no “callback after a soft reset” notification in WindowsCE as can also be seen in here).
This means Safe Mode applications need not disable any kind of events in DB_notify_events. (See Why ActiveSync- or Remove Programs-based uninstalling may not be sufficient? for more information on this database if interested. Note that as of version 2.0+ and 4.1+ (respectively), Skype and eWallet no longer register themselves in DB_notify_events.)
3. How do Safe Mode software products work?
3.1 Invocation, auto-timing
They are in common in that they ask the user whether he or she wants to boot into “safe mode”. To do this, the latter needs to either tap the screen (in a given region) or press a given hardware button (with one of the applications, mCube, this can be even configured; with the two other applications, only the Action button can be used for this.)
Two of the Safe Mode applications also offer a really decent feature: timing features. This mean they only present a “do you want to boot into safe mode” message if the last reset was less than one (with Spb Pocket Plus) or two (with iLauncher) minutes ago. Particularly with Spb Pocket Plus, where displaying the dialog may, on some (not all!) Pocket PC models, mean a six-seven-second long additional pause in the booting sequence, this is a big advantage over the “message is always displayed” case.
In most cases, using the timing feature will prove really useful. After all, if you have boot-time incompatibility problems, you are likely to reset your device quickly one after another. Even with the slowest-to-boot WM5 devices, this may mean consequent resets in under one minute. While Safe Mode apps operated in this mode won’t display the switch message (and won’t actively listen to the user input) during the first reset, they will do so upon encountering the second if it’s done really soon (as you would do when struggling with un-bootability problems).
3.2 Renaming / moving files and/or Registry keys/values
When the user instructs the given Safe Mode application to boot into Safe Mode, it, after doing some housekeeping (of which I’ll elaborate in this very section), it restarts (soft resets) the device again – now, already in Safe Mode.
To understand what happens during this is actually very easy and logical, particularly if you look at what two (mCube, iLauncher) of the three Safe Mode applications do. That is, they just move away the links/ executables from \Windows\ Startup to another directory in the file system and modify the Registry (SIP’s, Today plug-ins and HKLM\ Services) so that the system won’t be able to access these. Then, they just reboot the PC and let it just boot in as if it booted normally – now, without additional SIP’s, Today plug-ins, \Windows\ Startup applications and HKLM\ Services; that is, the potentional harmdoers. This means it’s only with very few cases that the device remains unbootable (again, the MultiIE + PIEPlus (HKCR/CLSID) case, where only Spb Pocket Plus is usable).
As soon as you’ve finished fixing the problems (for example, with the StowAway drivers, just manually starting the Bluetooth unit of your Pocket PC and, then, manually starting the StowAway application – this will fix everything), you just instruct these applications (by clicking their Reset buttons or other, designated screen areas) to move back all the links and executables to \Windows\ Startup in the file system and restore all the original registry values / keys from the backup (which you may already have modified) and just restart the machine.
Note that if you don’t use the Reset facility of the Safe Mode applications but directly reset the PDA (you shouldn’t do this, but, as is explained here, it won’t cause problems), they will notice (during the next reboot) this and will restore them. Notice that, in this case, you may end up having to re-reset the device again. (I’ve also thoroughly tested and elaborated in the comparison chart on this.)
Using a backup copy of these settings also means you should NEVER uninstall iLauncher or mCube while it’s in Safe mode; it’ll never restore your “unsafe” SIP / \Windows\ Startup files/ Today / HKLM\ Services settings and you’ll end up having to restore them yourself by hand, which isn’t easy for a newbie.
Note that Spb Pocket Plus, as opposed to the two other applications, does not rename / move files / registry values around. It uses much more sophisticated techniques to avoid loading unneeded, third-party boot-time stuff. This also means you don’t need to know how it modifies these values in order to be able to manually clean them up.
3.3 Cleaning up the device
Now that we know where the most “problematic” references are stored, let us have a look at whether these applications have built-in support to access these areas or you’ll need an external registry editor and a file explorer to make the cleanup.
One of the applications, mCube, contains a GUI that lists all these areas (except for HKLM\ init and non-SIP HKCR\CLSID stuff). That is, with it, you can use its (excellent) GUI to review all the potentially dangerous links or registry entries and can even delete them by hand.
Of course, the Settings/System/Remove Programs is the best way to do this, particularly with Registry entries. Note that, however, as mCube and iLauncer will copy back a saved file system/registry snapshot when you instruct them to reboot, some dead links may remain if you use Remove Programs. In this respect, Spb Pocket Plus’ backup-less solution is the best: Remove Programs will directly remove all the associated links / references and, consequently, you won’t run into ‘dangling link’ problems after a reboot.
The two other applications don’t offer any GUI like that of mCube. However, as most problems can (and, because of the high number of inter-related files and Registry entries, should) be fixed by simply using Settings/System/Remove Programs, this isn’t a problem.
4. Safe Mode software
4.1 Spb Pocket Plus
(tested, current version: 3.1.2)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
As far as Safe Mode functionality is concerned, this application is definitely the best. It’s better than the mCube app in that it’s also WM5-compatible. It’s also excellent in that it’s able to avoid loading HKCR\ CLSID classes (unlike the other two alternates): for example, this is why it’s the only application that offers MultiIE + PIEPlus clash-resolving capabilities.
Note that it doesn’t have full HKLM\ init filtering capabilities (I’ve tested this pretty thoroughly): if a misbehaving third-party program registers itself in HKLM\ init, not even Spb Pocket Plus will be able to boot in. Fortunately, very few applications register themselves in there and their number is constantly decreasing, particularly because of my article published a year ago on the matter (alternates: MobilitySite, AximSite, PPC Magazine, FirstLoox, BrightHand). For example, the latest version(2.98 and 1.65, respectively) of neither XCPUScalar nor Mad Programmer’s ForceHiRes register themselves in this section any more (but in the “traditional” \Windows\ Startup instead). (Note that, consequently, I needed to use version 1.51 of ForceHiRes, which still does this, in my current tests to find out more about real HKEY_LOCAL_MACHINE\ init protection.)
This application has some disadvantages too. The most important is, as opposed to the two other apps, is the slightly increased boot time on some (not all!) Pocket PC models. On the WM2003SE F-S Pocket Loox 720, for example, the boot-in time is extended by six to seven seconds with always-on Safe Mode boot-time prompt; that is, if it is configured to actively ask the user whether the latter wants to switch to safe mode. By default (if you use the timer-dependent, default mode), there will be no additional waiting – that is, it’s highly preferable to use Spb Pocket Plus’ default Safe Mode setting, which only offers the (and, therefore, incurs the 6-7-second penalty) user the possibility of rebooting into Safe Mode if the last soft reset was less than a minute ago.
Note that there are no delay problems on some other devices; for example, the Dell Axim x51v . With ROM version A12, it boots in about 32 seconds, with both Safe Mode prompt disabled and enabled. That is, you will want to measure the boot time of the application on your particular PPC model to see whether you want to enable the always-on prompt or leave it at the default, timer-only mode to speed up the booting process.
It has no GUI to edit the contents of \Window\Startup or the Registry. However, this isn’t a big problem as in most cases you’ll just uninstall the misbehaving program, where the backup-less architecture of Spb Pocket Plus will really pay off in having no further problems of dangling, “dead” links.
4.2 iLauncher
(tested, current version: 3.0)
The brand new version of SBSH’s excellent Today launcher iLauncher also has support for Safe Mode.
Its Safe Mode capabilities are pretty good but, unfortunately, not as good as that of Spb Pocket Plus (read: there is no HKCR\ CLSID protection). However, it's still a good choice, particularly if you, generally, prefer it as a complete Today launcher and task manager solution to Spb Pocket Plus. I'll publish a complete comparison of the two applications in this respect later.
4.3 mCube's SafeMode
(tested, current version: 1.02. Note that mCube’s site is down for maintenance; it’s available here)
This free and, unfortunately, WM2003(SE)-only application was the first on the Pocket PC to deliver real Safe Mode.
In some respects, it’s certainly better than the two alternates (most importantly, the price (free), the GUI, the ability to assign any hardware button to it etc). It, however, is clearly worse than Spb Pocket Plus as far as HKCR\CLSID DLL file loading is concerned (and, of course, it isn’t WM5-compliant).
Therefore, while its price can’t be beaten, I recommend both Spb Pocket Plus and iLauncher over it – particularly for WM5 users.
5. The comparison chart is HERE (click the link to see the chart!)
5.1 Explanation for the chart
There isn’t much to explain here as the contents of this chart should already be clear if you understand Chapter 2 of the article.
6. Verdict
If you want to have the absolutely best solution, go for Spb’s Safe Mode. It, being loaded on the first real occasion, offers far better protection against bad-behaving programs than the other solutions.
If you don't want / need protection against misbehaving, HKCR \ CLSID-registered applications and/or would prefer iLauncher's capabilities over those of Spb Pocket Plus, go for the former - it's a very good application too and, as has already been pointed out, there are very few HKCR \ CLSID-based, "problematic" applications.
Hi Menneisyys,
Thanks for the great in-depth report. Your comments are always very valuable and useful to me in improving the software.
Although clearly there is plenty of room for improvement with iLauncher's safe mode, I'd like to point out two factual errors:
1) iLauncher safe mode can be engaged when tapping on the Action button (center of the D-Pad) when the prompt is displayed.
2) iLauncher safe mode does disable services. However, it will allow services to run that were installed prior to installing iLauncher.
Again, thank you for your great analysis. As always I take this as a challenge to improve.
-Jason-
Thanks for the comments!
JasonLP said:
1) iLauncher safe mode can be engaged when tapping on the Action button (center of the D-Pad) when the prompt is displayed.
Click to expand...
Click to collapse
Thanks, fixed this in the chart.
JasonLP said:
2) iLauncher safe mode does disable services. However, it will allow services to run that were installed prior to installing iLauncher.
Click to expand...
Click to collapse
Yeah, you're right. I've tested services' disabling with the Battery bar previously installed; this is why I've missed this (wouldn't have thought it only disables services installed only later). Will fix this mistake ASAP and accordingly rewrite the article.
Article greatly updated, thanks to JasonLP.
Thanks for the review Also, I'd like to mention my website is back up - SafeMode is also available there.
Cheers,
monocube
Great news!
Perfect!
Congratulations...
4/5 imo.
nothin new.
Hi,
I just dont really understand.
You said about "un-bootable" PPC, what does it means?
For example: I installed BADAPP.EXE and after that I did a soft-reset (boot?). Then the PPC is not started (unbootable).
Is this the situation?
If it is not started anymore, how can I fix the problem by using those 3 apps (mcube, pp+, ilauncher) ?
Or I guess I understood incorrectly?
gogol said:
Hi,
I just dont really understand.
You said about "un-bootable" PPC, what does it means?
For example: I installed BADAPP.EXE and after that I did a soft-reset (boot?). Then the PPC is not started (unbootable).
Is this the situation?
If it is not started anymore, how can I fix the problem by using those 3 apps (mcube, pp+, ilauncher) ?
Or I guess I understood incorrectly?
Click to expand...
Click to collapse
After bad installation Windows can hang on after the second splashscreen (experienced that several times). Safe mode can help in such cases (tried iLauncher safe mode) though I prefer regular backups and conservative approach to installation of unknown applications.
nothin said:
4/5 imo.
nothin new.
Click to expand...
Click to collapse
And what about safe mode 2? Somebody has tested it?
I like that it¡s a standalone app for this purpose.
http://www.monocube.com/content/view/20/36
nothin said:
4/5 imo.
nothin new.
Click to expand...
Click to collapse
Unfortunately, I don't have the time to keep all my Bibles updated with links pointing to my newer articles / roundups.
I've also reviewed the Safe Mode apps / additions released since the release (and also posted here at the General forum) - it's just that I ddidn'thave the time to post a UPDATE post in this thread.
rodalfa said:
And what about safe mode 2? Somebody has tested it?
I like that it¡s a standalone app for this purpose.
http://www.monocube.com/content/view/20/36
Click to expand...
Click to collapse
Yup, tested and reviewed in a newer article; liked it.

REVIEW: Teksoft's brand new Pocket PC utility suite Smart Bar

Teksoft, developer of the excellent BlueMusic application (see for example this article & the links), has just come out with a brand new suite, Smart Bar, of system management applications. I decided to give it a try as it’s a pretty capable suite of utilities with some really excellent modules.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
They even promise an application capable of recording both (!) parties in a phone conversation (so far, this has been impossible with all Pocket PC Phone Edition devices of both HTC and ASUSTeK (Fujitsu-Siemens T8x0)); I think it’ll work by directly “tapping into” the Bluetooth unit as can be seen for example in here.
Availability, price
The suite is available here. To review the (pretty good and recommended) manual, visit this link. There is a(n unfortunately, pretty restricted) trial version too.
The “price” of the suite is 200 credits; that is, between 20 and 25 euros (depending on the amount of money you transfer to your online credit account). The registration is a one-device only (that is, CPU ID- and not PPC owner name-based); licenses can be transferred to other devices in case of a device change (for example, when the previous one bites the dust and gets exchanged).
Install
Use smartbar_setup.exe for pre-WM5 and the CAB files for WM5; see install.en.txt for the latter case.
Compatibility
It’s stated to be compatible with strictly QVGA devices with at least the WM2003 operating system. (I’ve also tested it on Pocket PC 2002; it indeed doesn’t work.)
You can, of course, try to install it on VGA devices, but I don’t think you should give it a go. I’ve tested it on three different VGA devices (Dell Axim x51v A12, WM5 iPAQ hx4700 2.01, WM2003SE Pocket Loox 720). On the hx4700, the PowerPlugin Today screen plug-in was absolutely useless; on the two other devices, it was shown, but not anything else. On the Dell Axim x51v, I’ve received frequent gwes.exe crashes after a reboot, because of which I had to entirely disable PowerPlugin.
Of the PowerPlugin, few features were accessible on these VGA devices; in the following chart, I’ve summarized all this (note that it also contains HTC Wizard-related info):
Note that, as far as the Wizard is concerned, I’ve listed two ROM’s: the O2 2.21.4.1 WWE (3/9/0) ROM and the “cooked”, widely known AKU3.2 one by KTamas / bepe. This means there are differences between different ROM versions / builds – all icons may work with your particular ROM version. The developer has promised they would test the suite with other ROM versions.
As can clearly be seen, the majority of the features PowerPlugin has can’t be used - not even on the QVGA HTC Wizard (with some ROM versions).
One of the central features of the application, Smartbar, wasn’t accessible either on any of my VGA devices. Self-standing apps like the screen capture, the network troubleshooter and the task manager applications, however, did work on VGA devices.
Also, it’s very important that you BACKUP (see the Backup Bible if you’re unsure) your device before installing the application. My absolutely clean, freshly hard reset WM2003 HP iPAQ 2210, after the install, couldn’t boot in at all and I ended up having to hard reset the PDA (I’ve tested this two times). I haven’t tried to boot into Safe Mode (read this roundup & tutorial if interested in Safe Mode on the Pocket PC); it may have helped .
Today plug-in (PowerPlugin)
It’s a simple plug-in with shortcuts to en/disable wireless units, suspend the device, show whether it's connected to the Net (IMHO, this is pretty useless on a WM2003+ device - after all, the Connectivity icon is always visible on the taskbar) and a backlight slider. It doesn’t contain for example battery or memory meters, unlike most other Today launchers (please see this iLauncher review and the links to earlier reviews to find out what a decent Today launcher should offer.)
Unfortunately, the majority of the functionality it’s supposed to offer didn’t work on my test devices. For example, as far as en/disabling wireless functionality is concerned, it was only on the x51v that it was able to both en- and disable Wi-Fi; on the Wizard, it was only able to enable it and on the PL720, wasn’t able to do anything. As far as Bluetooth is concerned, it didn’t work on any of my test devices in any direction. The backlight slider only worked on the PL720. (See the chart at the top, in the Compatibility section for more info.) The only exception is the HTC Wizard with the O2 ROM, where everything worked. (Again, more information on the compliance with other HTC Wizard ROM versions will be published / announced later.)
Also note that, while it has, in addition to the backlight slider, a backlight icon. It, now, doesn’t do anything. Hope the Teksoft folks wire it to the backlight / brightness applet of the device as is the case with all the other, similar Today plug-ins.
Task manager
This is one of the best features of the suite.
Pretty cool. Better than the built-in task manager: it lists the memory used, whether it’s a windowed app/process and if yes, is it visible; the title and the window class name. However, it doesn’t display other advanced & useful stuff like CPU usage and has no “Stop all processes”. Also, it’s not possible to “hide” system processes either – that is, for a newbie, this task manager can prove pretty dangerous.
Ultra Keyboard
This is probably the most unique feature of this suite: it allows for controlling some functionality using the keyboard. The most important of this is text insert macroing capabilities, which has always been missing from Pocket PC’s (except for some, not very capable Software Input Panels (SIP's) like Resco Keyboard Pro and Biomobility’s CopyText Pro; also see this thread for more info if interested).
When you use text insert macroing and assign a macro to, say, the series of characters “bye”, Smart Bar will constantly monitor the keys you press on the built-in (or external) keyboard of your PDA and when it sees the keys b, y and e pressed in order, it’ll delete back the three characters and insert the replacement text.
It's really cool but, unfortunately, only works with built-in keyboards or external ones (like those of desktop-based PDA controllers; see this roundup for more information on them.) Even in this case it can prove useful - most built-in thumb boards are pretty awkward to enter text on them.
You can initiate the following functionality from the keyboard: Replace with phrase; Execute a file; Turn device off; Reset device; Call number and Screen Capture. Note that if your keyboard has a different layout than your current ROM language, the default layout will be used. For example, if you have a German MDA Vario (= HTC Wizard) with English ROM but use the keyboard in German mode so that you find all keys at once, you will need to enter ‘bze’ instead of ‘bye’ for the ‘bye’ script to be executed. Also, note that not even in this case will everything execute – that is, try not to use anything that have relocated letters.
In my tests, all these functions worked OK.
Smartbar
This is a shortcut bar at the bottom of the Today screen for accessing active apps (closing / activating them) and activating other built-in apps (and the Desktop mode) of the Smart Bar suite. Unfortunately, task control-wise, it is probably the worst module in the entire suite; hope this will be greatly enhanced in subsequent releases.
Compared to (better) task managers like iLauncher, Magic Button or Spb Pocket Plus, its disadvantages are as follows:
It can only be accessed on the Today screen, not on the taskbar (and / or the Close / Minimize icon itself)
It supports no mass operations like “close all but this one”, “close all”, unlike with Magic Button or the built-in iTask of Compaq / HP iPAQ’s
It doesn’t override the Minimize / Close (x) icon
Hope these disadvantages will be soon be fixed and the task management functionalities of the application greatly enhanced.
Note that while it doesn’t have explicit scrolling icons / menus (unlike Magic Button as can be seen in here but NOT iLauncher 3, which is suffering from the complete lack of scrollbars as can be seen in this and this screenshots), you can scroll the active task icon list if there are more than five (Portrait) / seven (Landscape) of them.
I’ve also tested the CPU usage of smart.exe to see whether it causes any CPU load, particularly with more than a handful programs active. (For example, Magic Button causes a constant CPU usage of about 1-3% all the time.) The results are acceptable and not much worse than those of Magic Button:
Desktop
Yes, a WisBar Advance Desktop (WAD) clone! It’s in no way so advanced as WAD; still, if you like these kinds of applications, you may find the one in Smart Bar suitable.
Screen capture
Smart bar also contains built-in screen capturing capabilities. Please see the Screen Capture Bible for more information; in the following pros/cons list, I build on the information and explanations of that guide.
Compared to other screen capturer applications,
Pros
Uses a 3-second delay by default; that is, it can be used to make menu screenshots (without using the periodic screenshot capabilities)
Able to capture images periodically (albeit with some limitations, particularly when it comes to the frequency of taking shots). Note that it’s the “Stop interval” drop-down list that lets you fine-tune the interval it’ll take screenshots (between 10 seconds and 10 minutes as can be seen here and here)
If you use it on a device with a built-in thumb/keyboard and you enable screen capturing through Ultra Keyboard, you will be able to capture almost any game screen any time (!) by just entering the Ultra Keyboard shortcut (“CAP” by default). In this respect, the suite is unbeatable and unrivalled.
Periodic screenshot capturing is fast and, therefore, gaming-friendly (unlike, say, BeniSoft ScreenShotCE)
Both BMP and JPG output; the latter with settable quality
Can save files to anywhere, not just the main storage
Can capture images, in addition to the original (100%) size, at double and triple (200% / 300%) size – very useful on QVGA devices to avoid further enlargement and unique among all the screen capturer applications
Landscape & VGA compliant even in SE VGA mode
Cons
Multishot (periodic) capabilities are a bit limited – you can’t instruct the app to make shots less frequently than every two second
While the screenshot utility is a self-standing app, it cannot be invoked from a custom-written nScriptm script to fine-tune periodic screenshot making parameters
(Trial version useless: it inserts a message in the captured images)
All in all, the screenshot capabilities of the app are excellent, especially when you take the price of the suite into account and the only problem with this module are the too frequent screenshots in auto mode. Also, as has already been pointed out, the ability to make hardware keyboard-based screenshots of games is unbeatable and unique.
Network Tools
The suite also contains a simple (it’s in no way as advanced as, say, vxUtil) network troubleshooting utility, Network Tools.
It’s able to ping and traceroute to find out possible networking problems. It also uses DNS lookups; that is, if you for example enter www.yahoo.com, the contents of the input field will revert to 209.73.186.238 (or something very similar, with a different ending), showing the IP address of the given computer (it doesn’t do the reverse).
It also exports the traceroute results to a file. (Note that I didn’t have a “real” wireless connection during the tests and the utility had problems accessing the net via USB (in both WM5 AKU2+ networking modes); I could only access the desktop computer my PDA was hooked up to; this is why there is only one entry in the tracelog.)
It’s pretty cool to have if you don’t happen to have Windows Mobile Network Analyzer PowerToy or vxUtil around.
Verdict
This app is certainly promising. Hope subsequent builds / versions will fix the issues / implement the missing functionality (most importantly, overridden Close / Minimize button) I’ve elaborated on. Then, I’ll recommend it heartily, without conditions. Now, in the present state, I do recommend it too – but conditionally.
First, the bad. It does have compatibility issues. If it does work on your PDA model, it won’t likely to support all the features of the Today plug-in (PowerPlugin) and has no for example storage meters. Also, the task management functionalities / program shutdown capabilities of Smartbar are certainly inferior to most similar apps like iLauncher, Magic Button or Spb Pocket Plus. I find this the biggest stumbling block of the application.
Second, the good. It’s, as an all-in-one application, is really good. That is, if you don’t want to struggle with installing many applications (say, WAD + Magic Button + some advanced (!) screenshot app + vxUtil) to achieve the same (or even better! See for example the screenshot utility) functionality (without keyboard macros, of course), give it a go. Also, if you need keyboard macroing (again, it won’t work with on-screen keyboards, only hardware ones!), this is the application to go.
The same stands for taking screenshots: this application clearly excels in this area (except for the too frequent screenshot taking in repetitive mode – hope the developer fixes this too), particularly when it comes to making screenshots of anything (most importantly, games) that inhibits hardware button access and, therefore, renders hotkey-based screen grabbing impossible. Then, Ultra Keyboard’s excellent keyboard-based shortcuts will prove highly useful.
All in all, if you still don’t have any application to implement the above-listed functionalities or, for example, losing the excellent task management functionalities of other task managers isn’t a problem, definitely give it a go. Remember, however, that
do NOT get it if you are a VGA user; wait for the soon-to-be-released VGA-specific / compliant version
do backup your device before installing or, at least, make sure you have an active Safe Mode application

The definitive guide to running (MS-)DOS (80x86) programs under Windows Mobile

MS-DOS, which was the most widely known operating system of the pre-Windows times on the IBM PC platform, has several unique software titles either not available on other platforms or of considerably better quality than on other platforms. This means emulating MS-DOS, in cases, may be either the only or the best way to get a particular title, let it be an application or a game, run on your Windows Mobile (WM for short) handheld.
In this article, you’ll find ALL (and I certainly mean this!) information you’ll ever need to successfully select and use an MS-DOS emulator.
(Note that, in this article, I refer to all DOS operating systems of the IBM PC as “MS-DOS”. Naturally, the discussion also applies to DR-DOS and PC-DOS and, in this roundup & tutorial, instead of elaborating on the basic operating system itself, I mostly concentrate on the most important aspect of these operating systems: running third-party applications and games.)
1.1 Why an article on MS-DOS emulators?
there are no similar all-in-one articles, let alone in-depth ones. The very few articles ever written on the subject only discuss one of the (several) available emulators, PocketDOS.
the majority of current emulators, particularly the most recommended DOSBox port by n0p, HEAVILY lack any kind of a decent tutorial. In here, you will find all the information you'll ever need configuring and running these titles.
there are many different emulator versions from a lot of developers; this may make the life of a newbie to MS-DOS emulation VERY hard.
Windows Mobile forums are FULL of contradicting and plain bad, unreliable information on these emulators. Someone had to, finally, get the facts straight.
the BEST MS-DOS emulator (that of n0p), being of Russian origin, is mostly discussed in Russian language forums. As one of the several languages I speak is Russian, I understand what is discussed there. That is, in this article, I also build on the information found in Russian forums, making it unnecessary for my readers to suffer from the Babelfish “translation”. To a lesser degree, I've also found some useful user reports & tips in German (which I also speak) forums; I’ve also incorporated the info found there in this tutorial & roundup.
my old, related article (Another reason to get a VGA device – running Legend Entertainment's old adventures reviewed) is heavily outdated because of the brand new DOSBox ports
as the Nominations Manager at Smartphone and Pocket PC Magazine, I have to know everything about Windows Mobile apps. This article also shows I do
1.2 Why should you bother?
As has already been pointed out in the introduction, MS-DOS has several quality titles either not available on other (with a usable WM emulator) platforms or the quality of these titles on all other platforms (again, with emulators) are clearly inferior to that of the MS-DOS version. For example, the evergreen games by Legend Entertainment is a very good example of these (they haven’t ever been released for other platforms). If you don’t know what these games are but you like text-based, high-quality adventures, make sure you give them a try – they’re certainly worth it. And the list of excellent, MS-DOS only titles continues; for example, Betrayal at Krondor was also a PC-only release. This means MS-DOS was a VERY strong gaming platform in the early 1990’s with tons of high-quality or unique titles worth playing even today.
However, in other cases, MS-DOS emulation is NOT something you should always prefer to emulating other platforms or looking for native WM (re)implementations / ports of the same game. For example, as far as games are concerned, with games that only had an MS-DOS version, there may be better emulators (most importantly, "partial" interpreters "only" running a specific type of games; most importantly, from a given game publisher) to run the game than a fully-fledged, full MS-DOS emulator. In addition, some (not many) classic titles have their own WM implementations / ports; examples of these include UFO (the reimplementation is Pocket UFO; see my quick review HERE and the PocketGamer thread HERE), Civilization (Pocket Humanity; unfortunately, FreeCiv has no direct port; PocketCiv only runs on Linux-based handhelds), Pipe Dream (having several WM reimplementation; see for example the Roundup of All Pocket PC Games Part I for some of them), Doom (DoomPPC / DoomGL ES are excellent), Wolfeinstein 3D (see pocketinsanity’s port) etc.
Note that the (vast?) majority of MS-DOS emulator users use emulators for gaming (it’s mostly games that haven’t been released on other platforms or are unplayable / far more awkward to play in emulators); therefore, in this article, I also concentrate on gaming issues. This, however, doesn’t mean you will be unable to make use of it if you, for example, plan to run your old MS-DOS-based apps.
1.2.1 Cases you will NOT want to use an MS-DOS emulator - I: existing ports on other, more Windows Mobile-friendly platforms
For example, if you want to play, say, the infamous Prince of Persia (which doesn't have a direct WM port), I would say you’d better get a NES (Famicom) emulator. The NES version of Prince of Persia is very similar to that of the PC; however, the NES version in no way requires as much resources (including battery power) as the MS-DOS one. Please see THIS for a complete review of NES emulation.
The same stands for, say, Xenon 2 or Risky Woods. Running them in a Sega Mega Drive / Genesis emulator is a much better choice than ding the same in an MS-DOS emulator. The Sega Mega Drive / Genesis emulators require less resources, have better sound (particularly with Xenon 2, which, on the IBM PC, only had speaker sound), are easier to control and produce higher frame rates (just as with NES and Price of Persia) than the current MS-DOS emulators. See THIS for a complete explanation.
These are not hard-and-fast rules. That is, it can't be stated "whenever a port of a game exists on a better-emulated platform, stick to it and forget MS-DOS emulation entirely". When selecting an original platform and an emulator to play a given title, you may want to prefer other, better-emulated platforms for action games like the above. For mouse (stylus)-based, generally, adventure and strategy games, on the other hand, you may want to prefer MS-DOS emulation. For example, compare the following two screenshots, showing Sierra's King's Quest 5 on a(n emulated) VGA PC (running the VGA version of the game) and on the NES (Famicom):
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The difference in the visual quality is staggering, isn't it? And, the better visuals are just part of why the MS-DOS version is much more worth playing. The NES' not having analogue / mouse-like input, its cursor needs to be controlled by a (digital) D-pad. This means it's REALLY hard to control the game with the D-pad only.
Incidentally, the same stands for games running on other (mouseless console) platforms like the GBA version of X-COM. These kinds of games should be played under an MS-DOS emulator because they allow for stylus usage, unlike GBA emulators.
1.2.2 Cases you will NOT want to use an MS-DOS emulator - II: existing interpreters for a given game
As has already been pointed out, a specific subset of MS-DOS games have so-called 'interpeters', which run the games without emulating a full MS-DOS environment. This may be advantageous in many respects:
as they only need to run the game (and not an emulated operating system), they, generally, consume far less CPU cycles (and, therefore, both run flawlessly on slower and/or underclocked machines and result in a decent battery life). A well-known example of this is the Magnetic Scrolls interpreter (see review & tutorial HERE), which runs old, freely and legally (!) available Magnetic Scrolls textual adventures in a really CPU- (and, consequently, battery-) friendly way.
they, in cases, are much better integrated into the operating system. Again, an great example of this is the Magnetic Scrolls interpreter. It uses a standard text area (with some extras; for example, automatic text expansion of highlighted text) and standard, relocatable picture boxes. This also means it's, for example, possible to copy some of the text onto the clipboard. What is more, these operating system-level components are compatible with all kinds of operating system versions and configurations. This isn't always the case - let me point out that, for example, (W)VGA and square screens are not supported by many emulators (including, unfortunately, the most recommended one by n0p). Now, compare the quality of the rendering of the in-game text when done by the Magnetic Scrolls interpreter and n0p's MS-DOS emulator (not supporting (W)VGA screens). Yes, the difference is enormous - the interpreter-based version is perfectly playable even on a square-screen or a low-resolution (QVGA) device, while the original MS-DOS game rendered by n0p's emulator is fully unplayable on any Windows Mobile devices because of the emulator's not supporting high-resolution screens, while the games itself used EGA high-resolution.
Of course, it's not only the Magnetic Scrolls games that should be played in the related interpreter, but also a lot of other titles. For example, the earliest Sierra games should all be played under PocketSarien (review & tutorial HERE); most of the Lucasfilm games run better under PocketScumm than under MS-DOS emulators and so on.
There are exceptions, though; the most important being FreeSCI, the interpreter of (early) Sierra SCI games (released in 1989 and 1990). This is so uselessly slow that you will want to prefer an MS-DOS emulator to playing them under FreeSCI. (See THIS for more info.)
1.2.3 Cases you will NOT want to use an MS-DOS emulator - III: existing, native ports available for WM
It’s always preferable to play native WM ports / versions over emulating (if the quality of the port is at least comparable to that of the original running in a high-quality emulator), mostly because of CPU usage and hardware requirement issues. An emulator generally requires (unless we’re speaking of for example BitBank’s SmartGear, which has really modest hardware requirements) a far more powerful hardware than a native game. This means (most and, with emulating MS-DOS, all) emulators are either hard (at least without excessive overclocking) to run on slower devices at a usable speed or, on faster devices, they result in a very quick battery consumption because of the high processor usage.
Now that we’ve seen the cases where using MS-DOS emulators is NOT recommended, we can return to the original subject: running titles that are worth running under MS-DOS emulators because there isn’t another way of making them work.
Let’s see how you can acquire MS-DOS apps (if you don’t have the ones you’d like to play around) and, then, move on to introducing the (current) emulators.
1.3 Getting MS-DOS games
Start with the Wiki page List of commercial games released as freeware. Make sure you get games released before 1994 (or, if you can stand the increased slowness, 1995).
I am not allowed to provide you direct (!) links to so-called 'abandonware' sites. However, if you just use Google, you will find them at once. Also, if you spend more than five minutes at browsing Vogons, the highly useful DOS emulation page, you'll find thousands of links to these sites (it seems some people and even official forums don't take down abandonware links. However, I still refrain from giving you generic URL's, just to be on the safe side.)
Don't be afraid of dowloading from well-known abandonware sites. If you really are afraid of viruses, make sure you don't run these titles directly on your desktop PC, only under an emulator. Then, even if it, for example, formats your (virtual) hard drive (that is, the directory you give it as a hard drive), the damage will be limited. And, rest assured, it won't do any harm to your device. For this test, I've downloaded the games from abandonware sites so that I can test the games they host for viruses and trojans. I haven't found anything. That is, you can absolutely safely download from these sites.
1.4 What can I run?
Generally, games (and, of course, apps) released before 2004. Try NOT to play 3D games (this also includes classics like Betrayal at Krondor - they won't be very fast). You can have success with later, not very graphics-intensive games (for example, adventures).
1.5 Can I run Windows XP on my Windows Mobile device?
Nope. Under the most recommended emulators (n0p's DOSBox port and PocketDOS), all you can do is run Windows 3.11 if you want. I, however, don’t really recommend It - it's the best to stick to emulating strictly MS-DOS applications and games.
With Mamaich's (old) Windows Mobile port of Bochs (Bochs is a full x86 emulator, not just an MS-DOS one), however, you can even install Windows 95 as is described in THIS very long thread (also linked from PPCT). (You'll also need this Nano98 and this micro95 (also see THIS and THIS) tutorials for ripping Windows 95 and 98. Also see THIS for more info.) You, however, won't be able to do anything productive with these installs: it's REALLY slow and has major problems with input devices. That is, don’t even bother reading through these threads – not even the basic operating system will run flawlessly, let alone apps / games. Don’t even think of running for example Starcraft on a Windows Mobile handheld.
2. Desktop MS-DOS / x86 emulators and their ports on Windows Mobile
For the desktop operating systems, there exist several MS-DOS and x86 emulators. Gaming-wise, the ones discussed at Vogons are the most recommended; of them, only DOSBox has Windows Mobile ports. Actually, it has several ports; of them, n0p's port is the most important.
As far as emulating the entire hardware is concerned (also meaning the ability to run, say, Windows XP on a sufficiently powerful, high-class machine - definitely NOT a current Windows Mobile one!), the above-introduced Bochs should be mentioned. In addition, the same Mamaich has also ported QEMU, a very fast (on a current 624 MHz Windows Mobile device, it equals to about a 16 MHz 386 (screenshot 1, 2). Also see THIS.) CPU emulator. It, however, is buggy and has major problems; definitely NOT recommended for ANY serious work. (This is why I've also put it, along with the Bochs port, into the 'not recommended' section.)
In the following section, I elaborate on all the emulators available on WM.
Recommended MS-DOS emulators
2.1 n0p's DOSBox port (current version: 0.63)
As has already been stated, this emulator is the most recommended generic MS-DOS emulator. It's way faster than any other DOSBox port. Its only problems are the following:
the complete lack of support for high-resolution (for example, VGA) devices
being a heavily simplified version of the desktop counterpart, it doesn't support various goodies like MIDI sound (which is way better than the FM synthesizer-based AdLib cards) or emulated modem via Internet / LAN connections for multiplayer (or generic communication).
It, on the other hand, is VERY fast and has a lot of goodies none of the other Windows Mobile DOSBox ports can boast of:
SPEED!
Automatic cycles setting, always providing the best compromise (no need to manually set the cycles)
Very good AdLib / SoundBlaster (SB) emulation
Transparent software input panel (SIP)
It's based on DOSBox version 0.63, which isn't the latest DOSBox version; it's still definitely newer than 0.61, on which some other (not recommended) DOSBox ports are based on (including n0p's own old 0.61 port and that of Mamaich).
n0p is Russian and mostly contributes to Russian forums. Currently, he doesn't plan to update his port to 0.70 (the, currently, latest-and-greatest desktop DOSBox version). It's highly unlikely he will release a version with VGA support either. I'll try to convince him to visit English language forums too so that non-Russian speakers can also speak to him and maybe convince him to develop his emulator further.
2.1.1 Major differences between the original (desktop) and the Windows Mobile versions
While the emulation core is here, n0p’s port (as with other WM ports) lack several ‘goodies’. One of them is MPU-401 (for example, MT32) emulation (see for example the difference between AdLib and MT32 with the infamous game Spellcasting 101: start the game as S101 MT32 2 330 and compare it to the case of running SB-SOUND.COM /b24 and starting S101 without parameters. Also see THIS, THIS and THIS).
Another is connectivity for, say, multiplayer games like F29 Retaliator or Populous (also see: Directserial and Modem Guide; DosBox Guide to Multiplayer Games). While in the desktop version everything is supported (IPX over net; modem and direct serial emulation), in n0p’s version, modem emulation is surely not supported (I’ve thoroughly tested with both F29 Retaliator and Populous); I don’t think IPX is, either. I haven’t tested direct serial connections.
Finally, other goodies like making screenshots of the current screen or capturing WAV / MIDI files are also impossible with the mobile version.
The mobile version, on the other hand, has automatic cycles setting. This isn’t really needed on the desktop (where the CPU, with current PC’s, is powerful enough to run anything “old” at the highest cycles available); on current Windows Mobile devices, however, is a godsend.
2.1.2 Usage
First, download either the XScale or the more generic ARM version from the download page. Uncompress it with (if you aren’t using for example Total Commander) WinRAR to anywhere on your WM handheld (including storage cards). Start dosbox.exe (you can also create a link to it into \Windows\Start Menu\Programs or one of its subfolders like Games if you want to so that you can start it without having to use a file explorer tool).
After starting the emulator, you’ll see something like this (showing the mount command listed at the end of the original configuration file didn’t work):
Now, enter the “mount c "\Storage Card"” command, where change “Storage card” to the name of your storage card (for example, “CF Card” or “SD Card”) if it’s named so as in, say,
mount c "\SD card"
Then, enter the
c:
command to change to the now-mounted virtual drive. Then, by using the “cd” (Change Directory) command, you can step into any directory to execute any programs in there by just entering its name – as was the case with the “real” MS-DOS.
You will also want to include the two commands (or, more precisely, change the “mount c "\cf card\drive"” command already in there) in the dosbox.conf file in the same directory where you’ve unpacked the original, compressed DOSBox distribution. Then, after exiting the emulator (by clicking the exit icon in the upper right corner of the on-screen keyboard) and restarting the emulator. This is shown in this screenshot).
Note that you can also mount virtual CD-ROM's with the same command, by adding the "-t cdrom" parameter. Prefer using the virtual drive D: to mount directories containing the root of the CD file system! Also see THIS (and, with the forthcoming PocketDOS, THIS). An example command:
mount d "\SD card\7thguestCD" -t cdrom
Also note that in order to bring up the full keyboard, you will need to tap the upper left corner of the screen. Then, the keyboard is shown in its entirety (screenshot), part of it transparently (that is, you see what’s under it). Click the corner again to hide the transparent portion. (By the way, this transparency is one of the best features of this emulator). Alternatively, you can also use the “scroll bar” dragging area (screenshot) to quickly drag up and down the keyboard.
2.1.3 dosbox.conf tweaking
If you know the desktop DOSBox version, you may also have heard of its configuration file 'dosbox.conf', already mentioned in the previous section. With the desktop version, you may want to spend some time on learning what the individual parameters are and how they should be configured to achieve the best performance, set up your virtual modem configuration so that you can play for example Populous in multiplayer mode with anyone in the world and so on. (You can find a description of the desktop version HERE).
With n0p's port, most of the parameters that need to be tweaked in the desktop version don't really need to be touched if you want to have better performance. In the desktop version, you may want to spend considerable time testing for example how the OpenGL version of the emulator behaves compared to the normal one. In the WM version, this is not necessary because OpenGL (and other, alternative screen output methods) are simply not supported. This is certainly good in that you don't need to spend any time on fine-tuning the emulator - it'll deliver the best performance "out of the box".
However, there are still some parameters you may need to know of; most probably, the following ones:
core (the most important one - you'll need to edit it if you plan to run 80386+ apps / games)
memsize (if the default three Mbytes of EMS / XMS wouldn't be sufficient. It's only with few titles that it isn't; for example, with Heroes of Might and Magic, which requires 4434 kbytes of XMS / EMS and 374 kbytes of conventional memory)
finally, the autoexec section, where you should put at least mounting in your storage card(s) and changing to there so that you can save you some typing
And, some less important, but still useful parameters:
dpadmouse (if you plan to play a game that doesn't support the other two forms of mouse emulation. There are very few cases you will ever need this.)
hwkeyX and hwkeyX_ma (if you want to redefine what the four hardware keys do and what their effect on the mouse buttons are)
In the chart HERE (sorry, it'd be too big to be included in here - you'll need to click the link), I both explained ALL the parameters in the configuration file of n0p's DOSBox and compared the original desktop version to that of n0p, as far as these parameters are concerned. As you'll see, n0p's version uses the values of only very few of these parameters, unlike the original desktop version. (Actually, in this respect, Wall's approach in his pDOSBox 2b2 is better - he has deleted all the non-supported parameters from the config file, making it much more approachable for anyone not having read my description of what is used and what is not.)
The chart also provides an excellent summary of the meaning of these parameters. This is very important because n0p's original documentation (available HERE) is pretty weak (or straight non-existing) and noone else has ecer published anything comparable, as far as his port is concerned.
2.1.4 n0p's DOSBox 0.61
This highly outdated and slow(ish) version should just be forgotten. Always prefer the latest (0.63) version to it.
2.2 Wall's DOSBox port (current version: 2 beta 2), pDOSBox
(Alternative download with the sources HERE (see the bottom of the page) and here)
This, unfortunately, fully discontinued (also see THIS) emulator has some goodies; most importantly, (W)VGA support. It's therefore highly recommended for (W)VGA users wanting to play high-res (CGA hi-res, EGA and VGA hi-res) games. However, no one else should want to use it on a daily basis - (W)VGA device owners only wanting to play low-res (320*200) CGA / EGA / MCGA / VGA games should stick to n0p's port (introduced above) because of the vastly superior speed, sound support, transparent SIP etc. Note that many state Wall’s pDOSBox is faster (see for example THIS) than n0p's emulator. That's certainly not the case, particularly when it comes to sound emulation.
A tip: as the beta is expired, you'll need to set back the internal clock of your handheld before starting the emulator. For example, if you set back just the year to 2006, it'll work just great.
Another tip: the emulator often crashes upon using backspace when you delete something in a previous command taken out from the DOS history. This means don't use the backspace when in the DOS command line with constructs like "cd somegamename / somegamename", where you try to delete "cd" from before somegamename - it'll most probably lead to a crash.
I'd like to thank Michu (author of the well-known EmuPage - a MUST for every emulator fan!) and AximSite forum members heybhouse and Half Decaf for helping me finding this version.
2.2.1 Using pDOSBox 2 beta 2
After downloading and unpacking, you’ll need to transfer the files (along with the subdirectories) to your handheld (a storage card will do just fine). Start the emulator by starting PDBFEND.EXE. As with n0p’s DOSBox, you’ll want to create a shortcut to this file from your Programs menu; this is also explained in the README.TXT in the same directory.
Using the emulator is pretty much the same as with that of n0p’s DOSBox. You mount a directory (which can also be on a card) with a command like mount c "\SD card", go to the new virtual drive and start your favorite apps.
The emulator has a similar on-screen keyboard (SIP) than n0p’s DOSBox. It, however, isn’t transparent; this also means that, if the DOS prompt is already under the (maximized) SIP, you won’t see anything of it, unlike under n0p’s DOSBox. That is, you won’t see what you write. To quickly fix this problem, issue the ‘cls’ (CLear Screen) command (consisting only three letters, it's easy to be entered even if you don't see the prompt); it’ll clear the screen and the prompt will be shown at the top.
Unfortunately, the keyboard, unlike with n0p’s DOSBox, can’t be maximized by clicking the upper left corner of the screen. The only way to maximize it is pressing the Left arrow on the D-pad, while you can switch between the three panels using the Down arrow. This, unfortunately, also means you can’t use the D-pad in, for example, games.
Finally, another disadvantage of this port is the fact that it doesn’t support automatic emulation optimization – that is, built-in fine-tuning the emulation “strength” based on the CPU load. This also means you will also want to keep an eye on the actual CPU load of the given application / game and, if it has reached 100% and is constantly staying around it (not decreasing under 96-97%), just decrease the cycles given to the emulator. This, when done properly (so that the CPU utilization remains between 90 and 95%, but doesn’t exceed, say, 97%, driving the CPU into saturation and leading to (even more) sound problems and, after a while, visible visual performance degradation) maximizes performance. As games / apps are vastly different in their CPU usage, manually tuning the performance can be a real pain in the back. This is why the auto performance tuning in n0p’s app is a godsend – there, all you need to do is decrease or increase the frameskips, which is far easier and requires far less manual work than the cycle emulation fine-tuning in DOSBox ports not sporting auto settings.
2.2.2 The old pDOSBox 1.1
An earlier, release version of the above-introduced pDOSBox. It is clearly weaker than pDOSBox 2 beta 2. Therefore, I don't recommend it at all, unless you, for some reason, want to prefer it over 2b2: for example because you don’t want to set back the clock all the time.
2.3 PocketDOS 1.12
PocketDOS is the oldest MS-DOS emulator for Windows Mobile. It has been around for quite a while - well before the first DOSBox ports. It was, however, only lately that it became a bit more gaming-friendly; for example, it only received VGA support (including high-resolution modes on high-res Windows Mobile handhelds) in 2004.
Unfortunately, in general, it's less suited for generic gaming than n0p's version. Not only because of the non-existing (and, as far as beeper emulation is concerned, vastly inferior to that of n0p's DOSBox) SoundBlaster / AdLib emulation, but also because, in general, fewer titles run under it. A well-known example of this is Civilization, which, as of the latest, 1.12 version, still refuses to run, unlike under n0p’s DOSBox port.
The latest, 1.12 version of the emulator has just been released. The promised emulation speed increase (when using the built-in core and not enabling the other, 286+ cores) is indeed pretty good and, generally, outperforms even n0p's DOSBox in some games and is indeed faster than the previous, 1.11 version. Also see my Norton System Information benchmarks in the main comparison chart, which clearly shows the new version has indeed become faster. Also, some (minor) bugs have also been fixed; for example, the missing toolbar / SIP keyboard issue on the Dell Axim x51v (see THIS screenshot, taken under the old version).
It has some other goodies too. For example, unlike any of the DOSBox ports on Windows Mobile, it does support physical serial ports and printing. You may find this functionality important if you need to run legacy MS-DOS applications collecting data via the handheld's serial port and/or need to print out some stuff.
Also, another definite advantage of the title is being based on a full DOS operating system. This means for example batch files calling even scarcely used DOS commands, using not widely used command-line parameters, the full DOS operating system will know it. This is what the DOSBox ports are clearly weaker at. Note that you can choose from three versions of different DOS versions (that of Caldera (ex-Digital Research), DataLight and, in addition, the default FreeDOS) upon installing the application as can also be seen in this screenshot. You can even install more than one of them and just switch between them in Settings / System / Startup / Boot from (screenshot) when you need to switch (because, for example, a given application or game doesn’t run under the default FreeDOS. An example of these apps / games is Legend's Spellcasting 201, which doesn't run under the default FreeDOS.)
However, in most cases (when you only want to run some programs / games and don’t want to issue delicate DOS commands or run batch files that do depend on some scarce feature of DOS not present in the DOSBox implementation), being based on a full DOS doesn’t deliver much advantage as most games don't make extensive use of the external DOS commands - not even internal (command.com) ones.
2.3.1 Scaling, resizing
PocketDOS' scaling/stretching behavior in high-resolution modes (on a high-resolution handheld) is vastly different from that of DOSBox ports. DOSBox ports don't give the user any way of deciding how to downscale (make it smaller) the original high-resolution (640*350 EGA or 640*480 VGA) images to fit on a screen with SIP's on them. They only have one default behavior for all the possible resolutions as is described in the following matrix:
PocketDOS, on the other hand, behaves radically differently. It offers the user no less than four scaling options in hi-res EGA and VGA modes; two of these options (the one employing a horizontal compressing by 2, the other also vertically) targeted at users using a QVGA handheld so that they don't end up having to pan horizontally (and, in the second case, vertically), unlike in the cases of using the original resolution (where both horizontal AND vertical panning is necessary and, in many cases (for example the main text area of Legend Entertainment games), not even texts can be read without excessive (in every single row) horizontal scrolling.
(Note that the main comparison chart – to be linked below – has a lot of screenshots demonstrating these modes.)
As can be seen, the way it lets the user to select a scaling mode of his choice and, unlike DOSBox ports, not forcing QVGA users to either a downscaled, non-pannable view of the screen or one that needs to be panned in both directions (but not both) is a big advantage. In this respect, PocketDOS should be the first emulator to be given a try if you plan to play high-resolution games on your low-resolution handheld. Again, when presenting high-resolution originals on low-resolution (320*240) handhelds, it has a decided advantage over DOSBox ports.
Note that one of the video modes employing downscaling of VGA originals results in pretty bad results (particularly when you also enable the on-screen keyboard in addition to the always-visible toolbar). Here, some people (see X-Phile on Sun Jun 12, 2005 11:46 pm) also complain of this. If this issue gets on your nerves, make sure you switch to a non-scaled view, even if it results in a need of (sometimes heavy) vertical panning.
Finally, let me point out that the main comparison / feature chart (to be linked below) has a LOT of example screenshots demonstrating all these modes on both QVGA (low-resolution) and VGA (high-resolution) devices.
2.3.2 Using PocketDOS
Using this application is pretty straightforward. If you have a WM5 device (meaning the lack of, from the, in operating systems prior to WM5, RAM-based separated Built-in Storage (BIS)) with a single storage card, it will be automatically mounted as drive c:. That is, in these cases, after booting in, you will see the contents of your memory card right away and can start running your favorite apps at once, without having to play with manually mounting anything.
If, on the other hand, you either have a handheld with an operating system prior to WM5 with a built-in BIS and/or two memory cards (and you want to access the contents of your CF card, not that of SD), you will need to manually mount the other card. Fortunately, it's pretty well explained in the built-in help of the setdrive command.
You will most probably want to switch to Landscape mode (from the default Portrait) if you can live with the three-row SIP (and you aren't sensitive to the probably bad polarization problems of your handheld, which may be an issue with several non-high-end handhelds like the Dell Axim x50v/x51v). To do this, click the Windows button (above Esc), go to Settings / Display / Orientation and switch orientation.
2.3.3 Problems with the EMS/XMS memory
Unfortunately, PocketDOS has much more problems with the extended / expanded memory than n0p's DOSBox port. You can't allocate so much memory as in the latter and when you do allocate, the entire emulator may still restart itself when you try to start a memory-hungry title. This problem is particularly topical when you use the DOSBox CPU plug-in (and not that of the MUCH slower Bochs).
Also see some related posts in this thread for more info on other limitations of the memory model used by the emulator.
3. Not recommended emulators
In addition to the already-introduced three recommended emulators (and some of the older titles), here's a list of the non-recommended ones:
3.1 Mamaich’s DOSBox port
(Note that n0p’s (old and not recommended) 0.61 DOSBox port is based on this one, with some enhancements)
Shows some black screen and, then, immediately exits.
3.2 Ming Zeng's PocketDosBox v0.1.0
(based on the rather old DOSBox 0.60, last touched March 06, 2005)
Doesn't work on any Windows Mobile test device I've thrown it at (Cannot find … or one of its components)
4. The main comparison chart
Yes, I haven't given up throwing even more information at you This article also contains a VERY large comparison chart available HERE. CLICK THE LINK, YOU WILL FIND THE INFORMATION THERE REALLY USEFUL! Also, as usual, it's packed with screenshots. Also note that this chart has nothing to do with the previously linked dosbox.conf chart - they are completely different entities (yes, this article has a LOT of material!)
In addition to comparing the two DOSBox ports by Wall, the new one from n0p, the latest, just-released PocketDOS and, finally, the desktop DOSBox original, I've also made some extensive, real-world compliance testing with several games and utilities. Feel free to scrutinize these reports. Note that I've preferred checking my favorite titles; hence the several Legend Entertainment games (all of their (text) adventure titles, except for the late and, therefore, CPU/memory-hungry Death Gate and Shannara).
I especially recommend the "Norton System Info benchmarks: effects of different fine-tuned parameters" row to see how the performance of these emulators can be tweaked. As can clearly be seen, the only way to (slightly - but not much!) increase the performance of n0p's application is increasing the frameskip parameter. PocketDOS is more tweakable.
In the same row, I've also elaborated on the effects of enabling 286+ (with PocketDOS) /386+ (with the DOSBox ports) emulation. As can clearly be seen, the speed hit caused by these plug-ins is particularly high with PocketDOS. Try to stay away from the Bochs plug-in - it REALLY slows down the execution! The DOSBox plug-in of PocketDOS is clearly better. Too bad it has severe memory-related problems: the majority of 386+ games I've tested did run with "real" DOSBox ports but refused to start with the DOSBox plug-in of PocketDOS. They, on the other hand, generally ran under the (again, VERY slow) Bochs plug-in.
If you don't understand something in the chart, make sure you also check out the, in Section 2.1.3, already discussed dosbox.conf chart. I've elaborated on a lot of issues in there - for example, what the different mouse emulation modes mean, when they should be used, which games are affected etc.
Appendix A - SI benchmark results
In addition to the "tweaking" benchmarks I've elaborated on in the main chart (again, see the "Norton System Info benchmarks: effects of different fine-tuned parameters" row), I've made some really thorough benchmarks with n0p's DOSBox port to see how the frameskip parameter affects overall speed and what the speed of the different CPU cores are. This has all been measured on my 624 MHz Dell Axim x51v.
As can be seen (and has also been pointed out in the main chart),
it's not really worth using more frameskips than four or five; it won't result in further performance increase
the 'verysimple' core is about 50% faster at every frameskip settings than the full core. Interestingly, the, by n0p, not recommended, 386+-compatible normal / dynamic cores produced better results than the 'full' core. This also means if you need 386+ emulation, you may want to give a try to the 'normal' core first, and only then to the by n0p recommended 'full'.
Note that the tests were done using auto cycle settings. As has already been explained, you will NOT want to disable auto cycles. If you do disable them, you will have a hard time using these kinds of (synthetic) benchmarks to correctly benchmark your emulator. Some examples of this case (using Wall's emulator as an example):
The CPU cycles can be increased infinitively; at 9900 (instead of the, on the x51v, default 2700, where the SI index was supposed to be 16), it displayed an index of ~59. These values remained the same after starting a very CPU-intensive background process (Pocket Controller) to make screenshots. That is, the results are plain wrong.
The frameskip parameter doesn’t seem to have any effect (1 2), which is, of course, incorrect.
Recommended links / additional info
A trip down Memory Lane: PocketDOS and Realms of Arkania. The author asks whether the emulation speed depends on the speed of the medium PocketDOS is installed to / the games are stored on. In general, no; that is, you can keep your stuff on (even slow) memory cards and don't need to copy them into the main storage (let alone RAMDisks under WM5+).
Running Master of Orion under PocketDOS
A Russian thread on n0p's DOSBox
… and another, VERY long and informative one
A Russian thread on PocketDOS
Yes, and another one at www.soneric.ru
A German thread on n0p’s emulator, also pretty informative: DosBox für Pocket PC. It also contains a list of games running under n0p's emulator. Note that the original author states installing PocketDOS is very complicated because you need to get a copy of MS-DOS from somewhere. This is certainly not the case: later versions of PocketDOS have all come with MS-DOS built-in; on top of that, it's a free DOS version by default. No need to install anything else - and, if you install PocketDOS using the desktop installer EXE, you only need to run one EXE file and just press the Next buttons. He also states King's Quest 5 and 6 run slow under the emulator with 0.61 - that's not the case with 0.63 any more. Also note that, at first, he found that using the OpenGl value instead of Surface (see the Output parameter) results in slightly increased speed (using on a 400 MHz QVGA Loox). Later, however, he stated he didn't see any difference.
The old PocketDOS forum is HERE (was at Pocket PC FAQ; right now, the old contents is only accessible on the latter address); the new is HERE.
TIPS: How to get games working (well) under PocketDOS; a related remark & explanation on "Simulate display retrace" HERE
Working DosBox for X50v found (on Wall’s pDOSBox)
A Zodiac thread
A game compatibility list of (the old) PocketDOS 1.11. Note that its information isn't necessarily applicable to the latest (1.12) version; for example, the latter already runs both Spellcasting 101 and Populous without problems.
HERE: WM2003SE Dell Axim x50v + GAPI hack problems (NOT a problem with WM5-upgraded x50v's or any other models, including the x51v); some comparison between the current DOSBox ports
The Vogons (Very Old Games On New Systems) forum main page, listing all the other desktop DOS emulation projects (as has already been stated, DOSBox is "only" one of them)
Desktop DOSBox guide - really worth checking out for WM users too because it for example explains how MS-DOS apps should be configured, what drive names should be preferred etc. There is another tutorial HERE; it also explains the usage of the cycle and the frame skip parameters.
Some remarks on the two additional mouse emulation modes in the new n0p emulator version
Wisbar may result in the emulators’ hanging
Anyone know of any decent DOS emulators? (old!)
Retro Gaming help on XP (doing this on the desktop; however, the info is generally useful on the PPC ports too)
Good adventure/puzzle games for iPAQ 1950 - Nurhisham Hussein’s comments
Which DosBox works better?
PocketDOS?
windows 98 emulator – discusses PocketDOS’ (poor) Win emulation capabilities
A possible alternative to pDosBox (with sound) - at first, discusses n0p’s old port; then, switches to the new one.
UPDATE (06/03/2007):
In the meantime, I’ve been notified of a brand new, Wall-based project; pckDOS (current version: 0.63 001). To install it, just download pckDos_063_001.rar, decompress it and transfer the files inside it to anywhere on your PDA. Create a .lnk file to either pckVGA.exe to pck320.exe (for VGA and QVGA devices, respectively).
Unfortunately, it’s clearly worse than Wall’s version 2.0. While it does have VGA support, it’s even slower, has absolutely no sound emulation (not that that of Wall could be called satisfactory) and has no ways of quickly maximizing the SIP when possible (see “Left” on the D-pad with Wall 2.0 or clicking the upper left corner with n0p 0.63). At least the latter is a major problem; so are the traditional problems with Wall’s app (for example, messed-up characters in Legend Entertainment’s EGA games).
It’s very important to start pckDOS using a link; otherwise, you’ll have MAJOR SIP problems as can be seen in here. With Wall’s original 2.0 (or any other app), no such problems exist – that is, with them, you don’t need to put a link to the main executable in your Start menu.
All in all, this title is NOT recommended. Stick with Wall’s version 2 if the need for setting back the clock isn’t a problem because of (mostly) the maximizable SIP.
As far as MS Smartphone-compliance is concerned, the following needs to be known:
* n0p’s DOSBox 0.63 and the QVGA version of pckDOS 0.63 001 don’t even start on any SP platforms
* Wall’s 1.1 starts on QVGA devices (like the Vox) but has severe problems with text input: on the Vox, it’s impossible to enter characters that have a number of their secondary function
* The best is without doubt PocketDOS (tested with version 1.12): it has excellent text input capabilities using the numeric keypad of Smartphones and supports newer, higher-end QVGA devices (in both Portrait and Landscape mode), in addition to the traditional 176*220 screens (screenshots of the latter HERE and HERE - as can be seen, you can't expect much of the old, low-resolution Smartphone screens. Newer QVGA screens are WAY better.)
A screenshot of running the emulator on a new QVGA MS Smartphone (the HTC Vox) in Landscape mode:
(same, showing running Populous HERE)
Of course, it needs a LOT of learning because of the numerous input modes. This is only explained in the in-program help (screenshot) and, it seems, nowhere else. I’ve collected some of them so that you can have some idea how text input / cursor control work.
Main control:
Back Backspace
Esc Escape
Talk Cycle 'zoom' modes
Home Minimise PocketDOS
Vol Up/Down Scroll display left/right
Right Softkey Menu
Left Softkey Switch input modes
Text Mode:
# (Hold): Select symbol
#: Space
* (Hold): Select text entry method
0-9: Text entry
*: Cycle text entry methods
This is about the third of the available modes / controls: there are a lot of others.
I haven’t had any problems with PocketDOS running on newer (QVGA) Smartphones, except for the inability to activate the menu – the right softkey just didn’t work on my HTC Vox (tested both of them). It, on the other hand, worked flawlessly on my older WM5 AKU3 176*220 HTC Oxygen.
As usual, in the meantime, I’ve received a lot of praising for the article; for example, HERE is a sticky request at HowardForums, one of the most lively mobile phone forums by forum regular Ago Vino Verita

Emulating Texas Instruments’ calculators under Windows Mobile

Many of you may have already heard of Texas Instruments’ excellent calculators; most importantly, the (currently) top-of-the line TI-89/92 and, for high school students, the most recommended TI-84 series.
These calculators can be much more powerful than native Windows Mobile calculators
They are free (as opposed to some commercial Windows Mobile calculators), assuming, of course, you have the original device
while there are some excellent unit conversion apps for Windows Mobile (for example, Burr Oak Software's Conversions In Hand, Fann Software's ConverterCE Pro or TranCreative's MxConverter Comprehensive Edition for Pocket PC), the built-in unit conversion capabilities of these calculators are excellent (example screenshot HERE (accessible after pressing 2nd + 3 on a TI-89) and HERE)
may already be well-known to you if you’ve actively been using them in real life (no need to learn the interface of a new calculator software – you can just go on with your already well-known one)
have GREAT third-party software add-on support (as far as the newer models, manufactured in the last 14-15 years, are concerned)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
This means it might be far more advantageous to check them out instead of trying to find a native Windows Mobile implementation. In this review, I scrutinize all the available solutions, going back in time. That is, at first, I review the most up-to-date emulators and, then, go back in time to discuss emulators of other (less powerful / capable) calculators. This means the first part of the review will be of interest to anyone wanting to get some decent calculator software or just doesn’t want to keep her or his calculator around when the Windows Mobile handheld is capable of doing (almost) the same. Latter chapters of this roundup will mostly please people like me – that is, classic for example LED calculators, which have long been dwarfed with more recent models.
Please also consult the linked-in Wiki pages on the original calculators themselves. Here, I will only elaborate on stuff directly connected to Windows Mobile-based emulation and the like – that is, stuff completely missing from the original Wiki articles. You may also want to follow ticalc.org’s calculator pages.
Before embarking on listing the available (with special emphasis on current) models, let me point out that higher model / series number doesn’t correspond to being newer. That is, for example, the TI-84 series, while considerably newer than the TI-89 series, have a lower number. Also worth mentioning is the fact that TI has several (graphing) models, all targeted to different market segment. For example, a high school student doesn’t necessarily need derivation / integration capabilities (dunno if high schools in the States do teach these subjects for regular high school students – here in Europe, these are only taught in specialized high schools) – it’d be an overkill for her or him to pay extra for a calculator that offers these advanced capabilities. That is, instead of the most advanced (and expensive) TI-89/92/V200 series, a high school student will most probably want to get a cheaper TI-84 Plus (SE) (or, if she or he is cost conscious, their direct, compatible predecessor, the TI-83 (Plus)).
Let me also mention that this tutorial is
the first in the row of my forthcoming series on Windows Mobile calculators. In the following installment, I’ll discuss the emulators existing for HP’s calculators and, then, the native calculator programs
as usual, widely needed. The official manual of the best desktop Windows emulator, VTI, is very hard for a beginner to understand, and the same stands for the official TI-89 manual. In addition, the Windows Mobile version has absolutely no documentation / tips / descriptions of in what way it’s different from the desktop version. That is, this tutorial is undoubtedly the best tutorial available for TI-89 newbies wanting to get up to speed as soon as possible without having to read hundreds of TI-89 manual pages.
So, the current (and future) TI calculator models are as follows. (Note that the Comparison & Feature Chart also has a quick summary of these devices, along with a lot of information.) Also note that, in general, TI uses the “Plus” to refer to the second edition of a given model (except for the TI-84 Plus, which doesn’t have a non-Plus device). “Silver Edition” (abbreviated as SE; not to be mistaken for “Second Edition”!) and “Titanium” generally refers to the third (and, therefore, most advanced) model in a given series. That is, always try to get a SE / Titanium model if possible.
1.1 TI-Nspire
This model hasn’t been released yet; therefore, no emulators exist (let alone Windows Mobile ones).
1.2 TI-84 Plus (Silver Edition)
These two, pretty new (released in 2004) and, according to the poll HERE, most popular TI series high school calculator (in the poll, the TI-89 was placed second; don't forget, though, that the TI-84 series is aimed at high school students, while the TI-89's are aimed at more serious university students or graduated folks) models (the enhanced versions of the TI-83 Plus (Silver Edition)) are still not emulated under WM (or, for that matter, the desktop Windows) either. Not that it’d be a problem – after all, these models don’t have any advanced functionality compared to their predecessor (the TI-83 Plus), “only” a faster CP and more RAM / ROM.
1.3 Voyage 200 (also V200 and Voyage 200 PLT)
No emulators exist for WM.
1.4 TI-89 and TI-92 series
These are, after the TI-84 series, the most widely sold TI calculators. Again, don't forget that this series is the way to go (and NOT the more widely sold TI-84 series!) if you want something above the high school level. Do read the related Wiki / ticalc pages.
1.5 TI-86
This calculator (released in 1997) is partially compatible with the TI-85 (which it replaced) and is also supported by VirtualTI-89Pocket.
1.6 TI-83, Plus and Plus Silver Edition
Two of these calculators, the TI-83 and the TI-83 Plus (released in 1996 and 1999, respectively) are supported under WM; the latest (2001) model, Plus Silver Edition (which has nine times the available Flash ROM and over twice the processing speed of the Plus), isn’t.
The changes between TI-83 and the TI-83 Plus were pretty big; for example, the latter already allowed for ROM updates.
1.8 TI-85 (and THIS)
This model has been replaced by TI-86.
2.1 Getting calculator ROM’s
Both the desktop and the Windows Mobile-based emulators require the original ROM of your calculator(s) to be present. It’s easily extractable using the desktop-based ROM extraction tools (it’s also built-in into VTI, the most important desktop-based emulator). However, if you DO have the original device, you may want to choose downloading the original ROM’s right from the homepage of TI itself.
You will most probably need the TI-89 ROM download (currently, it’s “TI-89 Operating System v2.09”; click the Download icon on the center right). It’s also linked from HERE. Just put the resulting os.89u file in the home directory of your desktop / Windows Mobile version. That is, with the desktop version, just copy it into the directory you’ve uncompressed the emulator to; with the Windows Mobile version, you’ll need to copy it to <storage card name>\Program Files\VTI Pocket Emulator.
You can access the majority of the other, compatible ROM’s on TI’s other pages (see the related row in the Comparison Chart) if you really need compliance with those older and/or less capable models (if not, just stick with the 89 – it’s the best, still supported model). If you need one of the TI-82, 83 and 86 ROM’s, you can also get them from other pages; for example TheOldComputer.com’s ROM download page. Note that you will NOT want to use the TI-85 ROM in there – it won’t work (not that it would be a problem: the TI-85 is superseded by the supported & compatible TI-86). M.E.S.S., another desktop emulator for (along with several other models) the TI-81, 85 and 86 isn’t able to use this ROM either. Also note that the TI-99 also listed in the TI section is NOT a calculator ROM but that of a very old home computer, the TI-99/4A.
All ROM files must be copied to the home directory of the emulator; with both the desktop-based and the mobile one. With the TheOldComputer.com package, you’ll, naturally, need to decompress them first.
Note that you won’t need for example the TI-84 Plus ROM (also linked from the ticalc.org TI-84 Plus page) because not even the desktop VTI support the new 84 (Plus). The same stands for the latest 89-series model, the TI-89 Titanium: its ROM doesn’t work under any emulators either (it’s identified as TI-92+ by both the desktop and the WM emulator and is refused to be loaded). Finally, other current models aren’t supported either.
2.2 Emulation on Desktop Windows
You MUST learn how the emulator must be used under the desktop Windows operating system if you will ever want to import any third-party application into your Windows Mobile-based emulator or want to export your own programs typed (tapped) directly into the emulator in easily maintainable, direct exports.
The best emulator available for the desktop is Rusty Wagner’s free Virtual TI v2.5 beta 5 (linked from the main page HERE; alternate download HERE), which is compatible with TI-82, 83, 83 Plus, 85, 86 and 89.
(Note that you won’t want to download the Virtual TI-89/92(+) Emulator v1.01 Beta (it doesn't find the ROM image in the same directory) or the Virtual TI v3.0 Alpha, unless you want a TI-73 / TI-83 Plus emulator only.)
Just download the ZIP file and, after copying one (or more) ROM files in the same directory (if you don’t want to use the app to extract a ROM image from your connected calculator), start vti.exe.
A calculator image will come up (showing the face of a TI emulator, depending on the available ROM images in the home directory). If it’s the wrong emulator (you’d like to emulate another calculator by changing the ROM image) either press F12 or right-click the image and select Set calculator / ROM version as can be seen in this screenshot.
A dialog box will be shown, showing what ROM versions are available. Just select the one you’d like to use (for example, in this screenshot, I’ve selected the TI-89) and click OK.
After changing the ROM, the skin will immediately change and the calculator boot in as can be seen in here. You will want to raise the (virtual) contrast by repeatedly clicking the
("diamond") button and, then, clicking the + button. To make this faster, use the Ctrl key (it’s a shortcut for the diamond key) on your desktop keyboard while depressing + (or -, if you want to decrease the contrast) on your keyboard. BTW, the diamond key will always result in invoking the functionality printed in green on top of most buttons. The yellow 2nd button,
, (also in the top left) will do the same, but with the yellow labels (second functionality) printed on top of most buttons (note that the desktop PC keyboard uses the Alt shortcut for the 2nd button).
Now, you can start to do some serious work. If you already know how to operate a TI-89 (from now on, I only show how it can be operated; other models are, fortunately, pretty similar in operation), then, you will only need information on how files / programs can be transferred between the operating system and the emulator itself. If you’re a newbie, on the other hand, you may want to download the official TI-89/92 manual / guidebook from HERE. It’s certainly a good read, but may be a little too much for a newbie, particularly because it discusses two series at once. Therefore, for basic tasks like program transfer and starting, you may want to prefer my tutorial below, particularly because, of course, it doesn’t discuss emulation-related questions at all. (Needless to say, the documentation coming with VTI is pretty useless for a newbie. The Windows Mobile port is even worse: it has absolutely no Windows Mobile-related documentation. That is, you won’t be able to learn anywhere – except for my current article – how you can import third-party / external programs to it.)
First, let’s see how file transfer is done from the desktop PC to the emulator.
2.2.1 Desktop PC -> emulator file transfer
First, let’s get some for example games so that we can indeed try to operate the emulator! (Note that getting and deploying productivity apps – for example, math functions – is done exactly the same way. In here, I’ve chosen games to show you how excellent gaming platform these calculators are with the right coding.)
For example, download Earth Mission HERE. It’s a really nice, very fast action platformer game. After downloading, decompress earth89.zip. It’ll contain two files of interest, earth.89y and earth.89z (in addition to the French language readme file, lisez-moi.txt). Highlight them in either Windows Explorer or, for example, Total Commander and drag-and-drop them on the calculator image (make sure the virtual TI-89 is switched on - you can't transfer anything to switched-off emulator images).
During this, you shouldn’t be presented a Transfer error dialog box; if you are (most importantly because you’re run out of the, when nothing is installed in the RAM, 192 kbytes of RAM), just click Cancel and read on to find out how you can check the free RAM memory of your emulated calculator and how it can be increased.
Now, press 2nd (again, on the PC keyboard, the Alt shortcut key) and - buttons (that is, invoke VAR-LINK). You’ll see the following:
http://www.winmobiletech.com/062007TICalculators/varlink1.png
Now, let’s create a so-called “folder” (they’re just like a directory in the file system) in order to separate the game from other apps / games you’ll later upload to avoid name clashes / much better separation.
2.2.2 Creating / using folders
Using folders is particularly useful because most third-party apps, particularly games, contain several executable and/or data files, which makes browsing them REALLY hard. When correctly separated into folders, managing / browsing them becomes far easier – as with directories in a file system. (Note that only top-level directories are allowed – not nested ones! That is, you can’t, for example, create a Games main folder and, for example, an Asteroids subfolder inside it.)
To do this, still in this, VAR-LINK mode, click the F1 button (or, of course, on the keyboard) and select 5: Create Folder.
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder.png
Enter some meaningful name for the new folder; for example, earthmis:
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder2.png
Press (click – it’s at the bottom right) Enter two times. The new folder will be created as can be seen in here.
Now, select the new files you want to move to the new folder. To do this, press (click at the top, under the screen or press the hardware key on your keyboard) F5 (All) to bring up the selection menu. Here, just select 1:Select all. All the files will be marked in the non-collapsed folders. The results will be the following:
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder5.png
Now, press F1 (Manage) and select Move. You’ll need to decide which folder to move the selected files to; as you have only one folder (in addition to MAIN), you can just choose the default (earthmis). (If you will have more than one potential target folders, you’ll be able to select them right here.)
Now, you’ll be taken back to the file list view:
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder7.png
As can be seen, the two files have been copied to the new folder.
When copied into separate folders, you must use the folder name as the prefix when starting a given program in these folders as in foldername\appname(). This will be auto-generated for you when, after doing the above tests (but NOT making the new folder the default one – this will be explained later), you press Enter on the executable file of the two (earth.ASM):
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder8.png
In this screenshot, as can be seen, the name of the executable program (earth) has been prefixed by earthmis, using the backslash character to separate the two names. To try to run the game, you can just supply the closing parenthesis and pressing Enter. Then, you’ll be presented the “earthpgm not found” error message as can be seen in here.
This is because the main executable, earth, is trying to find the related resource files in the MAIN folder (in here, there is the executable ASM file (earth.89z – note the z at the end! Z, in most cases, states for assembly programs) and one data file (earth.89y – note the y, which, mostly, states for data files). This will be a problem with ALL third-party applications / games depending on other resource files.
To combat the problem, you will need to use the setFold (folderName) command (cd (Change Directory) under MS-DOS / Windows), where folderName, as you may have already guessed, will be earthmis in our case:
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder10.png
Press Enter two times; the result of this will be changing to the new folder:
http://www.winmobiletech.com/062007TICalculators/varlinkCrFolder11.png
Now, you can reissue the earthmis\earth() command above (you can even leave the foldername and just use earth()) and the game will now start. (Note that you’ll need to start the game and control jumping with the 2nd button in the game; not, say, Enter. This is pretty understandable if you take into account that this button is pretty much in the same line as the D-pad, unlike Enter.).
There is another very important thing you MUST master: copying the files off the RAM to the flash ROM.
2.2.3 Using the built-in flash ROM to store programs / data
As with all mobile platforms, dynamic memory (RAM) is very scarce and really precious. There is only 192 kbytes of RAM in the TI-89, which fills in REALLY fast, particularly if you (try to) run games. (If you encounter problems when you try to run something, it will most likely be caused by the shortage of RAM). Therefore, you MUST master backing up your files to the built-in flash ROM of your device. There is much more flash ROM than RAM.
To do this, go back to the already-known VAR-LINK mode, select the files in RAM to be moved to flash (in the F5: All menu), press F1:Manage and select 8:Archive variable:
http://www.winmobiletech.com/062007TICalculators/desktopVITArchiveVriable1.png
The filenames will, now, be prefixed with the http://www.winmobiletech.com/062007TICalculators/desktopVITArchiveVriable3.png icon, which means the files are no longer in RAM:
http://www.winmobiletech.com/062007TICalculators/desktopVITArchiveVriable2.png
You can easily check whether the transfer to the flash ROM has indeed succeeded. To do this, you’ll need to use the memory applet – another very important applet you need to master with all programmable calculators so that you can see how much dynamic (program) / static (flash ROM storage) memory you still have.
2.2.4 Checking the available RAM / flash ROM size
To do this, just press 2nd + 6 (MEM). In there, look for the two numbers at the bottom right (the cursor is just below them):
http://www.winmobiletech.com/062007TICalculators/desktopVTImemsize.png
The “RAM free 195852” means you have the full (factory) available RAM at your disposal; the “Flash ROM free 631482” means some 20k of files are already in the flash ROM of the device (that is, in this case, the emulator).
Finally, let me elaborate on how you can export files from the desktop emulator to the file system of your desktop computer. If you, for example, write a program in the emulator (see Chapter 17: Programming in the official manual on how programs need to be entered in the emulator) and save it as, say, omaapp2 (as can be seen in here), you’ll need to select F3:Link and, then, 1: Send. The desktop Windows OS will present a file save dialog, where you can rename the file before saving and also select its target directory):
http://www.winmobiletech.com/062007TICalculators/desktopVTISaveProgs3.png
(Note the ‘p’ in the .89p extension. As opposed to assembly programs, which end up in z, BASIC programs created using the built-in program editor end in p. Also note that the different file extensions are also listed HERE and HERE.)
2.2.5 Other apps / games to try
As far as games are concerned, you can also give a try to Aspirin v3.0 (a small but pretty nice and indeed addictive game), CalcRogue (an interesting RPG; remember to transfer ONLY the contents of the binTI89 to the calculator, without the contents of the Titanium subdirectory), Calcwars (also see Advance Wars for the Game Boy Advance; must be started with ttstart("cwdata")) etc. There are TONS of other games in the Games subcategories of the TI-89 archive of ticalc.org (for example, here’re the assembly language (meaning fast) ones and here’re the BASIC ones (slower).
The same stands for applications / math libraries. There’re virtually thousands of such apps for example here (assembly math) and here (BASIC math). If you have the time, I REALLY recommend looking around in all the subfolders of the ticalc.org TI-89 library - it’s really worth it! There’re even (simple) Java Virtual Machines for the calculators - let alone goodies like Telnet apps or (Lynx-like) Web browsers.
In addition, you’ll want to take a look at CalcG.org. Much as, in general, it has fewer titles, it has some really interesting goodies (and an online forum – ticalc.org’s mail list archives are currently down); for example, this StarCraft article (unfortunately, without any downloads).
Finally, there are some (very few) official Flash programs on TI’s pages themselves.
Now that you know how to use the desktop version, let’s move on to the mobile port.
2.3 The Windows Mobile port
2.3.1 Getting and installing the mobile version
The mobile version, VTI Pocket Emulator v2.4, which, more or less, is a direct port of Rusty Wagner’s original on the desktop, is ported by Daniel Galano (see his personal page HERE) to Windows Mobile and is accessible HERE.
Installing it is pretty straightforward: decompress the ZIP archive and start the only EXE file inside. It’ll install the emulator through ActiveSync. As with the desktop version, you’ll need to copy the ROM(s) of the calculator(s) you’d like to use to the home directory of the emulator.
Having a dedicated installer, you can start the emulator right from the Programs, by clicking the VTI Pocket Emulator icon.
Note that you won’t want to use it in Landscape (there wouldn’t be much point in doing so as, for example, you can’t use slide-out / clamshell key/thumboards anyway) because of the major GUI bitmap problems (tested on ALL my test device, VGA and QVGA, old and new - behaved the same).
Swapping ROM’s can be done in File / Select ROM as can be seen in here. Upon swapping a ROM, the corresponding skin will also be auto-loaded as can be seen in here. (Note that skins except for that of the TI-89 are all pretty blurred.)
2.3.2 Differences between the desktop and the mobile version; problems with the latter; tips
There are some major differences between the original and the ported version. They are as follows:
The mobile version can’t load external files and can’t save programs you enter yourself / variables you’d like to be saved. This means the only way to transfer programs / data in either direction is using the <romname>.sav files (for example, with the official TI-89 upgrade ROM, os.sav) it automatically saves its state to upon exiting and restoring the state upon restarting / reloading a given ROM BIOS. That is, you WILL need to use the desktop version to transfer external apps to state saves.
Because the aspect ratio of the original calculator might be around 10:3 as opposed to the 4:3 aspect ratio of (most) Windows Mobile devices, the original button layout isn’t preserved – the uppermost three row buttons are relocated to the right of the screen, which can be pretty annoying if you’re got used to the original button layout.
It’s FAR slower than the desktop emulator, even on very fast WM devices. That is, it’s completely useless for gaming. For “traditional” uses, however, it may be OK (albeit, for example, graphing functions are REALLY slow – even the most simple ones. Just try entering graph sin(x) on a mobile device and see how slow graphing is – it’s decidedly faster on desktop devices).
Unfortunately, Windows Mobile hardware buttons can’t be used to speed up input (see the way the Alt / Ctrl keys are used on the desktop emulator to dramatically speed up invoking second/third functionality). However, built-in keyboards / the D-pad work on most devices. An exception is the HTC Universal, where attempts to use external / internal keyboards resulted in an almost immediate address error / privilege violation error. With the HTC Wizard (which also has a built-in thumbboard), I’ve encountered no similar problems. As far as the D-pad support is concerned, it’s only with the Dell Axim x51v (A12 ROM) that the D-pad didn’t work and trying to use it resulted in an immediate crash. With most (all?) of my other test devices, D-pad worked OK.
In addition to the problems outlined above, you MUST refrain from entering any data at a fast pace on the native GUI of the emulator, especially on (comparatively) slower devices. If you enter data too fast, the last entered button will be endlessly repeated upon subsequent key presses as if the last key were stuck. This (and the fact that you will need to slow down the pace you enter your data) can be pretty annoying.
2.3.3 Transferring files from / to the desktop version
As has already been pointed out, unlike on the desktop, it’s not possible to directly import an external program (data file) into the emulator, and you can’t export anything either. For example, if you select F3 / 1:Send in VAR-LINK (the way of directly exporting files / data to the file system in the target desktop), the mobile version just hangs. However, this isn’t really a problem if you do have the desktop version of the emulator on your desktop computer.
Then, all you need to do is making sure you do save the internal state of the calculator when exiting (that is, after right-clicking the skin, select the Exit and save internal state when exiting the emulator) and, then, just copy the newly created .sav state file to the Windows Mobile handheld. It’ll make use of it without any problems.
The same states for file transfers in the opposite direction. While the WM version doesn’t support selecting between exiting with and without state saving, when you exit the program, it does save the state. That is, if you need to export a program you’ve written / dataset you’ve created on your WM-based emulator, just copy over the .sav state file from the home directory of the emulator to your desktop emulator, and use the latter to export the file / data to the local file system as a non-sav, self-standing file.
All in all, if you need to import any kind of file into the mobile version, you must do this in the dekstop version and just pass on the state save (os.sav with the official TI-89 ROM) file to the mobile version.
2.4 The feature / comparison chart
As usual, I’ve created a feature / comparison chart so that you’ll have an easier time checking whether a given model is emulated under the desktop / mobile Windows, what hardware features (most importantly, screen and RAM/ROM size) it has, whether it supports CAS, where its ROM BIOS can be downloaded from etc. It’s available HERE. Don’t forget to check it out!
Note that the chart doesn’t include discontinued / superseded models: the TI-92 (1995; replaced by the TI-92 Plus (and later the Voyage 200), TI-80 (1995; replaced the much superior TI-73 and is, due to its proprietary CPU, is NOT emulated by any emulators), TI-85 (1992; replaced the superior and backwards compatible (!) TI-86), TI-81 (1990; replaced by all newer models; few additional apps because the programs needed to be entered by hand – this calculator had no linking capabilities).
Also note that TI’s official comparison chart only lists the four most current models (TI-83 Plus, TI-84 Plus, TI-84 Plus Silver Edition, TI-89 Titanium), unlike my chart.
3. What other TI emulators are available?
Not many: only the old TI-59 is emulated, which will be only of interest to retro freaks. Yeah, I loved the TI-59 back in the early 1980’s (before getting the Sharp PC-1500, which did blow out everything out of water) but, now, it’s really-really worse than any of the current TI graphing calculators.
The Windows Mobile emulator is available HERE. It, as with Daniel Galano / Rusty Wagner’s TI-8x emulator, uses a desktop installer. Note that the installer puts the direct link to the executable (when installed to the main storage, \Program Files\alainza\ TI59ce\ TI59ce.exe) to the Games folder of the traditional Programs.
Note that, much as Michu’s excellent Emupage lists MBA-Calc by Odyssey Computing, Inc. as a TI BAII PLUS emulator, it isn’t one. Odyssey Computing has two business (non-graphing) calculator titles for the desktop and handheld Windows; the newer and much more recommended BizCalc and the older MBA-Calc. These are NOT emulators.
Finally, still speaking of Michu’s Emupage, it lists another Windows Mobile version, “PocketPC v2.5 (with SkinEditor)”. It’s nothing else than the desktop VTI – that is, don’t run to download it.
4. Other links of interest
Long VTI Pocket Emulator v2.4-related comments thread at ticalc.org
FreewarePPC’s and PocketPCFreewares’ comments. Note that you will want to take PocketPCFreewares’ original comments with a HUGE pile of salt as they refer to a very old version, v2.4Beta, released early 2004. Also, some of the user comments at FreewarePPC are pretty misleading – do NOT necessarily believe what you read there!
TI-89, TI-89 Titanium, TI-92+ and Voyage 200 FAQ ("Can I run this game on my calculator even though it was written for a different calculator? What is AMS (Advanced Mathematical Software)? Can I play TI-89 games on my TI-89 Titanium?")
Poll: Favorite Calculator (1st: TI-84+ (SE); 2nd: TI-89 (Ti))
All the desktop emulator software
Great write up and I will try some of the others later, for now I must admit to being that "retro freak" you mention - I miss my TI-59 since the battery pack died and the home made one fried the main board, shame as it was a great device, I will have some fun trying this out later, I still have the original program listings I created when at collage 20+ years ago - thanks for the heads up - Mike
Wow, another excellent article. I popped my cherry on a TI-82. Still have my beautiful black beast somewhere in a draw
V
Buttons Misaligned-Fixed
After some farting around, I finally got this to run on my Rhodium (Tilt2), but the buttons were not aligned properly. I correctly assumed that it was a problem with the way that my phone scaled the bitmaps that it uses to skin the emulator. I am attaching the resized the skins, but I only have a ROM for the TI89 so I have not tested the others. I suspect that the resized skins would work on all WVGA (800x480) devices. I have no idea how to create a cab file, but it should be very easy for anyone to install these. All you need to do is replace the skins on your device with the ones below. The skins should be located in \Program Files\TI Pocket Emulator\Skins. Note: If you have installed the application on a storage card, you will find the "Program Files" folder on the card.

[GUIDE][INFO] Android-On-A-Shoestring Budget [General Android Info] New Topic Posted!

I am putting forward the following premise:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
"You can enjoy the joys and wonder of Android without spending a fortune...!"
I now intend to see if this is true!
Thread Purpose:
Provide a discussion area for those of us who are financially impaired, like myself, but want to experience the joys and wonders that tablets and android might hold...
At the moment the thread may also touch on android on mini-tablets (which might also make calls...) and larger tablets (with keyboards...hdds...lcd monitors etc) simply because on a shoestring budget you have to make do with what you have.
I hope to explore ways in which you can use Android it in new and interesting ways without paying out massive amounts on expensive hardware.
I'm not sure if it is totally achievable or not, but I'm sure it will be interesting to find out what you can do for less compared to the expensive options which are out there.
Idea's, comments, thoughts, discussions are all welcome.
The more unusual and interesting the better!
Thread Structure:
This first post will provide an index and links to the main discussion points/topics on the thread.
[Will see how this works!]
Periodically I shall post a new topic to discuss.
23March2011 - Topic One : Show Me The Droid
Method One: Using your existing laptop or PC
Method Two: Using the android emulator (also on your existing laptop or PC)
Method Three: Using your existing phone
29March2011 - Topic Two : A Low Cost Tablet
Part One: Justifying the purchase
Part Two: Android From The Box
Part Three: Passing the grade? (A-E)
Part Four: Passing the grade? (Continued...F-J)
12April2011 - Topic Three : Low Level Basics
Part One: Oh ADB Debugger!
Part Two: The Root Of It All
Part Three: Backups, ROMs and Flashbacks
Part Four: First Time Flasher! (added 1stAug11)
27June2011 - Topic Four: Low Level Interfacing
Part One: Android RS232 I/O
22Sept2011 - Topic Five: Development Tools & Tricks
Part One: Screenshots & Remote Control
Part Two: Scripts & Shortcuts
Side Topics
04May2011 - Side Topic: The Future! Quad core and beyond
02June2011 -Side Topic: Multi-Touch Technology - with No Touch Screen!
Q&A:
crevlthe: Are most apps up-sized to fit the resolution of tablets?
[I'll keep updating this thread every few days]
- please post comments, thoughts and ideas anyway, particularly if topic related.
I would love to hear about peoples thoughts and ideas
(simply reference Topic X:Method X/Step X etc if you want to comment on one item in particular).
Enjoy!
Small Print:
For the following posts I shall try to reference the source websites where possible, however apologies if I get this wrong, please feel free to pm me or post on the thread with any corrections and I'll amend the entry. Regarding images, where possible I shall try to use my own images, but at times this may not be possible. If you find I have used your image and you do not wish it to be used, then simply let me know and I'll change it. Where possible I shall state where the images have come from.
Clearly, the details in the thread are purely discussion and while I try to make them as accurate as possible I can not guarantee this. Damage or loss may occur by following some/all of the instructions, so if you do, do with care and at your own risk, I take no responsibility for your actions.
Topic One : Show Me The Droid
Before you can do anything with Android, you probably want to see it!
This topic will outline various ways you can "get at the driod" without spending anything.
Method One: Using your existing laptop or PC
This was the first way I got to play with Android (a long while ago), and that is using an Android live CD. I used something similar to the live CD from http://www.android-x86.org/ (images taken from site), which allows you to boot your computer with Android.
You can burn the image on to a CD/DVD and boot it cleanly or you can use a virtual machine and boot within that.
With a little bit of legwork, and a compatible computer you can boot from a USB key so you can carry your droid with you.
You can even install it, even dual boot, if you are brave!
While this is a simple and very cheap option (at most it should cost a CD/DVD to burn on), there is one slight problem...most computers don’t have touch, gravity sensors etc etc!
You have a number of options if you are seriously wanting to use this more:
1. You can continue to use the mouse (at least they seem to have a cursor now!)
2. You could probably make use of a large touch-pad (can be expensive, but cheaper ones are around)
3. If you have a small screen you could try adding a touch screen (8-10” touch screen overlay can be quite cheap but you will need to install it yourself and that can be tricky and will risk damage).
Perhaps this method could be interesting to try out as a low cost GoogleTV platform, but there would need to be some work done regarding the control method. Someday I may look into this option in more detail...
Microsoft Kinect not been plugged into to android yet???
Anwser: Yes it has! Ok, shame I don’t have one.
Topic One : Show Me The Droid
Method Two: Using the android emulator (also on your existing laptop or PC)
Of course for the developers out there, there is always the Android emulator which comes as part of the Android development package. Each time Android update the SDK (software development kit) for the latest release of Android, the emulator is updated to run the newest version of Android (this is often the source of early ROMs).
This does allow you to play with the latest Android version as soon as it is out, so you can get a feel for what features are improved etc and you can try out different versions to get an idea about the differences between them. You don't even need to install anything more than the Android emulator SDK if you don't want to write any code, as you can run the emulator separately to the development environment.
However, not only does this have similar control issues (except maybe that you get “soft-buttons”) but it is quite slow even on a fast machine.
(Click Image For Larger Version)
The advantage of course is it opens up a whole world of development options. The google developer site provides instructions for getting set up. Once you’ve jumped through the hoops, you can try it out by having a go at the various tutorial applications.
(Click Image For Larger Version)
Again this is something I may look at in more detail another time (such as getting setup, exploring what you can do with it and perhaps some simple development steps).
Topic One : Show Me The Droid
Method Three: Using your existing phone
You might just have that elusive Android device already, you just don't know it yet!
Clearly this option will vary wildly on the type of device you have and how in-depth you are willing to go. I’ve not managed to find a full list of devices which do support running android but it is safe to say that the “list” is growing all the time.
For me, my Phone is a Windows Mobile Phone, the HTC Blackstone, it’s quite an old device (in relative terms) but it has a good screen (3.8", 480 x 800) and modest processor (528 MHz ARM 11).
Fortunately for me, the XDAndroid group support this device, so I was able to make use of one of the many Android builds on the forums. I’m not quite sure what the current status is of this project, it seems although device specific threads have stopped, there are Android builds going up to 2.2.3...which I’ve had working on my device.
For the blackstone, running android is fairly pain free, since you install the files to your sd-card and if things don’t work out, you just delete them. One key component I required, was ditching (swapping) my class-6 SD card for a slower one (yes, slower!), once I’d switched to a class-2 one, android was up and running nicely.
(Click Image For Larger Version)
However, don’t get too excited yet, as many of the builds will have features which don’t work yet, such as Bluetooth support, camera and in-call voice (you can spend a long time getting the right mix of files for your device to get all these working) and many 3D accelerated games won't work. A lot of progress is being made here (I’ll go into this in more detail another time). Some issues you can live with and some you can’t. Also, if your device (like mine) is not a total powerhouse then you can expect things to run at less than optimal speed. Overall, don’t expect to be replacing your OS with an all singing all dancing Android one this way, unless you have decent device to start with.
All is not lost! By using one of the many dual-boot apps (they simply show a splash screen as soon as possible on power up) allow you to quickly select between your normal Windows Mobile OS and the Android one.
i.e. Gen.Y DualBoot by yozgatg
(Click Image For Larger Version)
This means you can keep a build of Android (or several if you wish) on your SD card and have a play with Android from time to time.
Personally I think this is an excellent option, even if the results aren’t perfect and it’ll probably cost you a fair bit of time experimenting, but the results are totally worth it.
I might revisit this in more detail if people would like me to. Hopefully I can learn a little more about the internals of how it fits together and provide a post on that.
For HD2 users (and some other phones), who are just too spoilt for choice, they can also install Android to their NAND (internal memory). This means they can totally replace the Windows Mobile OS on their system with Android, and because the device is fast, it apparently runs well enough to do so.
Topic Two : A Low Cost Tablet
Part One: Justifying the purchase
First off, the most important bit for this topic, how much does it cost?
I managed to get (buy) it for $90 (£56), including free shipping (limited time special offer).
Note:
I would not recommend this tablet at it's "normal" price of $130, since there are other tablets in that price range which are clearly better.
However, for me, the lower price was key here.
To put it in perspective, the Samsung Tab 7 Inch was £500 here - or $800!
The specs:
Code:
Model: Haipad M701
CPU: Telechip Tcc8902, 800MHz (ARM11)
OS: Android 2.1
RAM: 256MB
ROM: 2GB
Screen: 7 Inch Resistive (800 x 480px)
Ext Ports:
9v Supply
3.5mm Audio
Mini Usb (OTG Host) - hopefully will support Mass Storage devices
HDMI
TF (MicroSDHC)
Size: 192 x 114 x 15mm
Weight: 330g
Extra Details:
Gravity Sensor
Android Market
Adobe Flash (not supported)
Camera 0.3Mp
Wifi 802.11 b/g
My thought process regarding the purchase is this:
1. I really want an Android tablet, I’ve been look at them for months (in fact probably just after the iPad came out). In all that time I’ve lusted after tablet after tablet, but each time it came down to the cost, and the fact that I simply did not have $200/$250/$300 laying around. Throughout that period the number of tablets available have ballooned, the capabilities and specs too. I found myself looking at the affordable tablets, and then looking at the next one up (hdmi), then the next one (10” screen) and then the next one (multi-touch), until I’d priced myself out of my purchase.
2. With the advent of the tegra chips and honeycomb, the price of admission has been bumped slightly (I’d say you are starting at $300 for a low end one (quality of the screen/touch is be compromised - Advent Vega)) - previous to that an A8 based tablet, such as the A81 for around $200-250 was a good deal. To be a serious contender for anything which comes after honeycomb (for the tablet branch), and gaming platform that is developing (of which Cordy is the thin end of the wedge), the power step provided by the Tegra family is a must.
3. Back when I first started looking at tablets, I was in fact considering a very similar device (the X10 and the G10, of which the Haipad M701 is fairly similar).
4. Aside from wanting to use the latest and greatest releases from Android and games etc, there is a need for more modest requirements to be met. Can a basic tablet do this, I intend to find out?
These "modest" potential uses would be:
A: Replace/supplement a poorly designed portable Toshiba DVD player for in-car use, which in my opinion was probably the worst product I’ve ever purchased (despite the quite promising spec sheet) - although obviously I may need to revise this status soon!
B: A Doodle pad, something which my phone gets commandeered for quite often by my off-spring. So a slightly larger screen would be useful for this.
C: Simple Web-browser, most of the time only a quick check on the web is needed, so this may be more helpful than firing up the laptop (which being a work one, dislikes my wifi and network most the time).
D: Music player, either from connected memory for in the car or perhaps from the network.
E: eReader, I’ve read a few books on the Blackstone’s 3.8" screen, so a larger screen would be helpful.
F: Require a device with camera and HDMI at minimum, since this will hopefully provide more options to experiment with (1st build of Android on the blackstone, didn’t have camera support which ruled out things like google goggles etc).
G: USB Host (mass storage), I am hoping that the device will allow me to use external storage devices via the usb, this would be very handy for dealing with camera pictures and videos etc.
H: USB Device keyboard support, I find it very annoying that the Blackstone has no h/w keys, this seriously limits what you can do with it (such as emulation programs etc) as there is no easy way to control things.
I: RS232 Support: Although I seriously doubt it, it would be really useful to get RS232 monitoring running on the device.
J: A development platform for writing android software on and to learn about android.
In Summary:
Overall, aside from the video/USB requirements, I hope that I am not being too ambitious for this device, but clearly I probably am. If/Once I get the device, I shall evaluate it against these requirements and also see what other uses I can put it to. I don’t expect the device to manage all of the uses above (particularly out-the-box), but hopefully it an fulfill at least some of them (even if it takes some custom firmware/modding or even some custom hardware to achieve this) I shall be happy.
For all I know, the tablet may well never turn up...and if it does it could be next to useless (i.e. next to that Toshiba DVD player...). As it happens, one review of a similar device was “expensive paper weight”, I’d estimate it about the weight of a medium sized cup of coffee (without the cup), so might be useful for when we get the fans out in the office this summer.
My purchase timeline:
Purchased tablet on 17th March (estimated delivery 10 working days).
Item shipped on 18th March (estimated shipping 15-20 days).
“Departure from outward office of exchange” 22nd March - Left the source country.
Received item 28th March!
Overall Delivery time: 11days (7 working days).
In return for the excellent shipping, I can say that the item was from PandaWill.
Out of the box review coming soon!
Thread has moved from "General" to it's new home in "Android Software and Hacking General". At first I didn't plan for it to be Android exclusive but as it turns out, it is, so hello to all on this thread.
I am very new to Android, so please be kind!
I hope this thread can be a beginners introduction of some kind, let me know if there are errors or if you would like more information on parts etc.
Regards.
Topic Two : A Low Cost Tablet
Part Two: Android From The Box
Packaged in a retail box:
(Click Image For Larger Version)
- Tablet (thankfully)
- 9volt 1.5Amp Output Power Supply (US plug)
- US to UK plug adaptor (a nice touch, clearly they take notice of the shipping address)
- 2x USB Cable (mini USB to USB male, short mini USB to USB female)
- Basic set of ear phones
- Product dimensions measure exactly as stated in the spec (I’d previously printed out picture of the screen to 1:1 scale based on the measurements).
Although I didn’t expect to get an HDMI cable, I didn’t expect the HDMI port to be a mini one, so it would have been helpful to have included one here (or at least an adaptor).
(Note: The USB car adaptor is not for it and did not come with it, but I thought it helps as a guide for size - it won’t charge by USB).
Charging:
(Click Image For Larger Version)
The first thing I did was to plug the tablet in for a charge, there are two reasons for this. Firstly to check that the power supply is functional and safe (i.e. does not over heat) and secondly for the battery.
If the battery is at a low level, you have to treat it carefully - particularly if was in storage (as it will gradually lose charge over time). Li-ion batteries if drained below their bottom limit, will “crash” their voltage, this causes a lot of damage to the battery and it may never recover fully (or in attempting to do so it may cause excess heat == bad news). You should always avoid switching any device on when the battery is in this state, so always charge just in case before trying to switch on (most electronics should refuse to turn on, but best not to count on it).
For this reason I was pleased to find that the battery was charged to approximately 60-80% (I guess) which is around the recommended storage/shipping level. Also the charger or tablet did not burst into flames, which was nice too!
Turned On:
Switching on the device, immediately the screen shows a colourful splash screen, then some linux penguin/mole, before displaying the normal android boot. Instantly I am pleased that the screen is working! I am also impressed that the screen quality, brightness and colour look quite good.
(Click Image For Larger Version)
60 Seconds later and Android has booted!
I would be interested to know if this is particularly fast or slow (my only comparison is booting the Blackstone Android from SD, which takes about 4 mins). For me, 1 min seems fast enough, certainly as fast as starting windows mobile. For normal use, the device can be put to sleep with the main ([]) button, which is instant on and off.
Screen was already calibrated, and the normal start-up wizard ran for Android.
Pre-Installed Software:
Aside from the standard stuff, you get ES File Explorer, Meridian Media Player, Skype (I’ve not tested that yet), SkyFire Browser, Aldiko eReader, QuickOffice, YouTube App and Android Market. The pre-installed Android Market worked fine, and I was downloading new apps in seconds. There are also some Chinese apps which I’ve not tried, but overall, there is everything to on there to get you started off and enough for you to use it directly out of the box.
Aside from some demo pictures and a video, there was also some video which I guess was taken when they tested the unit, it is a good sign that they appear to have taken the time to check the unit works, calibrate it, check things like the camera are functional etc (not sure if this was Pandawill or the manufacturer, but it was within an office so I suspect the former). At 0.3mp, the front facing camera clearly isn’t amazing, but in reasonable lighting it is good enough to see the subject in question quite clearly (one thing though is it is mirrored - guess for skype use (if that works)).
Out Of The Box Impression:
Overall initial impressions are, the screen appears to be pretty good for the money. Colours are slightly more washed out than a more expensive screen, but not overly so. The resistive touch screen does take a firm-ish touch to use, but again, not overly more than other resistive touch screens.
The size and weight of the unit appears to be nicely balanced, it is easy to hold in a single hand (for an adult) while using it with another (or thumb typing and holding either side). The outside bezel is just the right size that, if you need to, you can hold the edge with your thumb without touching the screen etc. The plastic housing, which is rigid and feels solid, makes the unit feel quite good quality. The piano black finish of the back (like a psp) does attract fingerprints however the screen itself doesn’t, which is great.
Although it was never going to be the fastest Android experience, however the unit does seem to keep up with the operating system fairly well, definitely fast enough to be usable.
The unit feels nice and appears to work well, so far excellent value for money.
Next time I shall evaluate the tablet against my requirements and see how it fares...
Topic Two : A Low Cost Tablet
Part Three: Passing the grade? (A-E)
Crunch time! How does the low cost tablet fare when lined up against my expectations and needs?
Meeting My Requirements:
A: Replacing A Portable DVD Player
Viewing photos, videos and listening to music from the pre-installed samples was easy and the units response was reasonable. There was good video playback of the 720p sample (I expect this was encoded to suit the device obviously), and the photo browser did a nice job of displaying and sorting through the photos. Sound was ok, by no means hi-fi standard but enough to listen to over moderate background noise (sound as good as the DVD player - but can’t really say this is hard). This will take a bit more investigation to determine what formats are supported and from where (local storage, microSD, flash stick, HDD, network, internet etc etc). However, even if videos need to specifically encoded as long as they can be played from a mass-storage device (or at a push the SD card), this should meet this requirement fine (did I mention the old DVD player is terrible...).
B: A Doodle Pad
It took no time at all for my offspring to try this, safe to say the unit passes this test with flying colours. One huge improvement is that the Blackstone touch sensitive call buttons etc were not in the way any more. Still to find the perfect app for this:
On Windows Mobile its My Note by MyLostBlog which is a good balance between clear interface and function (I still prefer 2.1 over 2.6).
(Click Image For Larger Version)
On the DS, Art Academy is favourite (although what it has in features, it lacks flexibility). Also Flip Note is worth a mention, I would love to find a similar app on Android.
Art Academy (art software) / Flipnote (animation program)
(Click Images For Larger Versions)
At the moment the star for Android is AutoDesk’s SketchBook Mobile (perhaps a little complex for younger children to fully do everything but easy enough for them to use and enjoy most of the features, excellent for adult use too!). AutoDesk’s app shows the quality that is possible with Android (although at the expense of lag free response on this particular device), I’m still very impressed and the 7 inch screen makes it all the more enjoyable.
C: Simple Web-browser
First off the lack of flash is annoying, but there is at least “some” flash support (I assume flash lite) from the Skyfire Browser, and even the google browser when it came across an embedded YouTube video it directed it to the YouTube app to play.
Browsing is reasonable, the wifi signal is probably below normal, but if you have a good signal, the browsing speed as comparable to my phone (for me the google browser appeared to be faster, but that might have been down to my wifi signal at the time). Here, multi-touch or at least the dual-touch of the later M701 models would be useful, as Pinch-to-zoom would be helpful. At least with the 7 inch screen the need to zoom in and out all the time is reduced (also I’m sure by experimenting with different browsers and settings the perfect balance will be achievable). It will never replace the desktop for web-browsing, but it is fine for quick searches etc.
Google Browser / Skyfire Browser
(Click Images For Larger Versions)
D: Music player
I’ll hold judgement on this until I find a more flexible app, since I had problems navigating around my music and playing it by folder unless it was on the SD card (I was only using some files I had available, I’m sure it is a lot simpler with correctly tagged albums). Once playing the music though, it managed ok (although it did experience issues if you attempted to “multi-task” and load apps etc while music was in the background - although that may have been the app I was using and/or fiddling around with the usb connections). The quality isn’t the best I’ve heard, but it is sufficient. I think overall, with the right app, the unit will perform this task without issue.
E: eReader
Just by trying the pre-installed Aldiko application, it is clear to see that this unit is great for reading. The text was very clear and easy to read with plenty of text visible and even on the smallest font setting (point 10) you can easily read without issue. The g-sensor rotates the screen as required (hopefully there is an option to turn it off - for reading while laying down [Yes, there is a setting for android generally]). The screen is slightly shiny so would suffer in direct sunlight, however it is reasonable for reading in average lighting. I also tested with a pdf, which displayed ok using QuickOffice, but features such as re-flow (available with Adobe’s reader) would definitely help to fit things on the screen.
[Update: Once I've installed Adobe reader, pdf's are very easy to read, although the lack of resuming where you left off means you have to keep track of page numbers yourself (this is no different to the Windows Mobile version).]
CONTINUED BELOW...
Congrats!
Really great post
enotar said:
Congrats!
Really great post
Click to expand...
Click to collapse
Thanks! I should be adding some more later on today.
I'm open for suggestions for topics etc.
Topic Two : A Low Cost Tablet
Part Four: Passing the grade? (Continued...F-J)
Meeting My Requirements (Continued...):
F: Camera & HDMI
As I previously mentioned the camera is not very good, but since it is front facing (it’s located to the right side of the ([]) button) it clearly is not suitable for taking snaps etc. Using google-goggles, the images are just about usable, but it appears the google-goggles app can’t take the pictures directly (you can import pictures which then allows you to take photos using the standard app and open them).
(Click Image For Larger Version)
[Android Logo taken with camera]
I’ve just tested the HDMI (I’ve managed to get a mini-HDMI cable) and after enabling the output via the settings page and restarting, the screen correctly displayed on the TV. Films and games do look good on the TV, although some adjustment to the alignment would be useful. Although you can output in either 1080p and 720p, the resolution is matched to the device 800x480 (although I might be wrong for direct video output), also from first impression, 1080p is lower colour depth than 720p output.
G: USB Host
Ideally the USB connection for host/OTG would be it’s own full size female usb socket (i.e. a normal USB socket) but instead you need to use the USB cable provided which converts the miniUSB to a USB socket. Tested with microSD card reader, flash memory stick (4Gb Kingston), the Blackstone (in mass-storage mode) and even 2.5 HDD which worked even without extra power (I was surprised at this as it is only a generic enclosure with a random laptop drive, however I did not try this with a low battery just in case that did damage). All of which appear under the /scsi/ directory. So far I’ve been unable to find how to “unmount” the drives (you can unmount the sd-card and the internal nand memory via the settings but not the OTG device), so when you disconnect you get “USB Device unexpectedly removed” message.
H: USB Device keyboard support
Using the same OTG cable, plugging in a keyboard was easy and seamless (it just works straight away). In fact, I tested this using a Logitech wireless Keyboard and Mouse and both worked perfectly (aside from the fact the keyboard is about 5 times the size of the tablet). I also tried another USB keyboard, which in the past I've noticed does not work when within DOS on a PC (where the Logitech does), this did not work, but I suspect this is simply the keyboard being slightly unusual. Keeping an eye out for a small and cheap keyboard now.
I: RS232 Support
I attempted this just out of interest but not really knowing what to look for can’t be sure it did anything. I don’t expect this to work without some serious work, but will see what can be achieved if anything. The reason for this is that many low level electronics projects can be controlled/monitored using RS232. In addition to this, I’ve also tried a bluetooth dongle (it has no bluetooth built in), and LAN adaptor, clearly they didn’t magically start working (no doubt the build does not have the correct drivers installed etc), but this is something I will look into.
J: A development platform
At a basic level, I can copy over built APK (android application) files and install them, even the ones which I had issues with on the Blackstone work fine on the device. Developing applications and working directly with the tablet is possible (will look at this in more detail another time), as a development device it is ideal.
The not so good...
Hardware Interfaces:
The single OTG mini usb port is annoying, it would be help to connect more than one device etc and not need to use an adaptor cable.
The mini HDMI, again would be good not to need a special cable for this (at least would have been useful to know ahead of time).
Buttons...no physical home or volume buttons, this does make things difficult sometimes (I believe there are software solutions for this, or options to re-map the keys).
Out-Of-Box mapping is: ([]) is power/screen key, right-side of rocker (with Home Icon) is the menu key, left-side of the rocker (with menu icon) is the back key! Once you get used it, it may be the best layout anyway, will need to experiment.
No Usb charging, from a pure ease of use point of view this would be very helpful, but most tablets don’t support this.
Sticking out of the SDHC card (puts the card at risk of snapping) - later version of this tablet this doesn’t stick out.
Obviously multitouch, bluetooth etc would be nice, but we know that.
The Grey Grey market:
This device “IS” a fake...Real Haipad vs. Fake
I can’t work out though if the unit functions any worse than a real one, all I know is, this one functions better than I was expecting and I’ve not found anything which the originals (if it is a fake) did which this doesn’t (so far).
I've now confirmed this with Pandawill, that the tablet is OEM, not a HaiPad original (at least they 'fessed up to it!). Considering it was sold as part of their own "Fight Against Internet Crime" promotion due to their recent DOS hack attack, it is a little naughty but as you can probably tell by now, I am still very happy with the device, no matter it's origin (but glad it was discounted). Also, the device does function as described by the specs, so other than the manufacturer the rest of the listing is accurate.
The only real issue is that new firmware will be a problem since I can't be sure if it will work or not.
Not all joy and perfection (I’d be mad to expect it):
Most applications appear to work, however, I’ve found that Angry Birds has issues with the surface texture graphics (the text which shows the menus/scores - a pain, but the rest of the game is playable). Apparently later versions such as Rio work fine, this just appears to be a feature of the telechip processor and does this for all HaiPad M701. Since I am not obsessed about Angry Birds (I can stop any-time I want, no really I can...) I can live with it. Also Raging Thunder 2 isn’t playable since I can’t see the menu blocks to select anything, I guess for the same issue.
Most games appear to work fine, such as Air Control, TurboFly 3D (lags sometimes, but not surprisingly since its full-on 3D graphics), Waveblaster (works very nicely, with G-sensor working), Pacific Wings (no g-sensor control). The G-Sensor doesn’t work on some games, but fortunately most have alternative options if that is the case.
It's a mixed bag for games, but fortunately I never intended games to be it's main use and I am quite happy with decent puzzle games etc anyway.
Overall - "A solution for now, but not the future":
The unit runs an ARM11 at 800MHz, with 256RAM, lets face it, it will never do all the graphical gymnastics that the Nvida Tegra 2 processors will perform and doing all but the very basics will probably leave it out-of-breath. Such a device is no laptop or even netbook replacement, but much like the iPod touch, it is a media player with many bonus features (& on a much better budget).
I’m sure as time passes (probably not long either) more and more applications will leave this type of low cost tablet behind, with the pace of processor development at the moment this should really be no surprise at all. But for now, the market is open and the apps are flowing, so I’ll sit back and enjoy them!
Topic Three: Low Level Basics
Part One: Oh ADB Debugger!
One of the first steps in getting properly connected to your devices innards is to ensure you are able to use the ADB (Android Debug Bridge).
The ADB is command-line terminal which allows you to directly control the device and file system of the device (or emulated device) from a PC or MAC.
On the face of it you might wonder why the ADB is of much use, the answer is that it allows a direct route to the entire file system as well as providing debug access directly on target as well as monitor log outputs as programs run. Overall it is similar to ActiveSync for windows mobile. Another reason to have this working is that if your device fails to boot, something messes up your system or say the touch-screen fails, you can use ADB to access everything on the device and also re-flash it. Also you will probably need ADB to root your device (more on that later).
There are a number of guides available for setting up ADB, so I won’t go into detail on them. Personally I followed Google’s own developers guide for setting up the Android SDK (Software Development Kit) since I also intend to write Android software and the ADB is part of that.
However, after a quick search, the following guide appears to cover most of the details.
The UnLocker - How To: SetUp ADB/USB Drivers for Android Devices.
For my device, the ADB driver needed some fiddling around with, since windows would not accept the driver was for my device [Editing the ini file and adding the VID and PID of the hardware didn't help me].
Eventually I found the following (following a tip from SlateDroid): The app PdaNet appears to supply suitable drivers.
I also recommend adding the location of ADB to your system path, so that you can call it from any command-line location.
Once the drivers are installed, check that when the device is connected (and debugging is enabled via settings) that typing “adb devices” from the command-line shows a device).
C:\> adb devices
List of devices attached
0123456789ABCDEF device
Click to expand...
Click to collapse
If you want to write software using Ecilpse you’ll also want to check that it can connect and deploy applications directly to the device for testing.
Within the Ecilpse, under the run menu select “Run Configurations...”, within the Target Tab, the “Deployment Target Selection Mode” must be set to “Manual”.
(Click Image For Larger Version)
This enables the “Android Device Chooser” to prompt when you attempt to run/debug from Ecilpse.
(Click Image For Larger Version)
Build and run your application or a test one and it should now run directly on your device.
There are also a number of GUI apps around which make use of ADB to provide easy ways to manage applications, transfer files etc all without needing to mount and unmount your sd cards to and from the device. At the moment I’ve started using DroidExplorer, even from initial impressions it is clear the features are quite extensive (you could probably write about 20 guides on how to use all of it correctly).
an excellent article overall.
question about the tablets: are most apps up-sized to fit the resolution, or are there a large variety of apps natively designed to run at the bigger resolution?
crevlthe said:
an excellent article overall.
question about the tablets: are most apps up-sized to fit the resolution, or are there a large variety of apps natively designed to run at the bigger resolution?
Click to expand...
Click to collapse
This is an interesting question!
Although my tablet is WVGA which is the same as the blackstone (so I can't test this directly!).
You'd need a much higher resolution device to go beyond the officially supported resolutions, (obviously Android 3.0 supports more).
From what I've read and from doing some app development, apps should scale to fit the screen (if programmed correctly). I've read that some apps don't scale for some tablets, what the root reason is for this, I wouldn't know, since the support is there in the API.
Basically, the android sdk provides various ways to describe the layout of your screens, and they encourage you to use ones which describe them in terms of proportional amounts (for the Linear Layout) or in terms of position of items i.e. to the left of item A (for Relative Layout) etc. The other layouts all work along the same lines, i.e. you don't worry about the size of the screen and calculate each position by hand like you do with windows mobile etc, it is all determined by the API.
You can see the different layouts code here and if you find the ApiDemo APK (I'll post if you like) you can view them. However, you can break all the rules and still use the Absolute Layout, where you return to the good old days of x,y co-ordinates. Even then you can use a values which are relative to the screen size and pixel pitch (see Difference of px, dp, dip and sp in android..) so there really is no reason to hard-code it.
As for graphics, I've not done this yet, but I know this handled if you use "9-patch" png files...they describe them here.
The idea here is that the black pixels around the edge allow the designer to say which bits are fixed size and which bits can be stretched to fit etc. It is a really tidy way to do it I think. Imagine how you'd have to do it otherwise if you created a button image with an icon on which would need to be resized to fit!
Oh, there are also provisions to provide low-res, med-res and high-res versions of the graphical resources, so again everything should scale nicely and look good without the need to scale everything all the time. There shouldn't be any need as such for "large" versions of apps, unless the developer wants to change how the app works by making use of the extra space or if they want ensure the "small" version takes up less space. I'm not sure how it determines which resource to use etc or if they all get installed etc, I've not looked into it.
So as long as the designer of the app has done all this correctly then it "should" scale correctly to whatever resolution. Of course, to claim this is true, they would need to test all resolutions. Fortunately you can manually create high-resolution emulated devices so it can be done but that is not the default.
[Now you mention it though, I shall ensure I test any apps I create at least once in high-resolution, it sounds like a good idea!]
I think this might have been why the retina display didn't make it to the iPad2, it would have required app developers to produce yet more app versions to deal with it and re-do the graphics yet again. Unfortunately I don't know anything about how iOS deals with these things, but you don't get the standard sized app in the middle of the screen or a x2 type option as you do with iPads.
Thanks for posting the question, hopefully it answers it (in theory anyway).
Topic Three: Low Level Basics
Part Two: The Root Of It All
I looked and looked for this information but I couldn't find the clear answers I wanted regarding rooting, so here is the info I was after.
What is ROOT, do I need it?
Rooting your device is not essential, for most the things you do with a tablet you will not need root access. Rooting is the process by which you enable “Root” access to the system’s low level files and hardware, this is achieved by enabling “super user” [Linux term for the highest level access which has higher level permissions to files than a normal user (like an Administrator)] access.
In most cases, apps will access hardware and files through the Android API, but in some cases they may need better control of the hardware than the API allows or access to files which are normally locked.
For this reason these applications require “root” access, typically apps which take screenshots (I assume to allow access to the screen data) and backup programs (I expect to allow access to all your files) are such programs.
Am I Rooted?
One thing I had trouble working out was working out if the device was rooted already or not. The quickest way to find out is to try to use an app which requires root access, if you device isn’t rooted it will tell you.
A good way is to download “Terminal Emulator” from the market (or direct from the author) . Then type: su which stands for Super User! (if your device is correctly rooted the “$” will change to “#” (ideally it will also prompt you for permission to enter superuser mode first - see SuperUser.apk below)).
Other signs you are rooted is to look for the “su” file in /system/bin/ but this will not confirm if the file is set to be executable correctly or in some cases different names are used to make it harder for unwanted apps to locate it.
Can I break/brick my device by ROOTING?
Actually ROOTING the device shouldn’t really cause any problems (since all you are really doing is installing a file which allows you to grant “Superuser” access). However, since ROOTING (by definition) allows entering into “Superuser” mode, this mode does allow you make much more serious changes to the system than you would in a “Normal User” mode (which is the whole point!), so clearly there are some risks involved while in this mode (and you may want to consider how this fits with your warranty). If your device isn’t open, then I suspect the main risk is getting your device into an unlocked state so that you can perform the root process first (since my tablet was not locked in anyway, I don’t know about this aspect).
Once ROOTING is complete, you don’t remain as a “Superuser” but any application is able to use it if they require. For this reason, the Superuser.apk application is typically installed, which detects when a request for “superuser” permissions are made and allows you to accept or reject the request.
The ROOTING process itself is reversible, which you may wish to do if you need to return your device for repairs etc.
How to root?
There are many guides and methods, but I shall take one specific to my tablet (posted by OffWorld on androidtablets.net) and explain each step in detail, since none I found explain what it is you are doing.
First you need to get the latest su and superuser.apk files from here.
Now, connecting the device to your pc, open a command prompt and type:
adb devices
Adb will respond hopefully with your list of devices:
List of devices attached
0123456789ABCDEF device
This confirms your device is attached and adb is able to communicate correctly.
Command 1:
adb shell mount -o remount,rw /dev/block/mtdblock3 /system
This runs adb (the terminal program to your device) and mounts the specified folders with read/write access.
Command 2:
adb push su /system/bin/
This sends the “su” program to the location on the device (note this assumes have the “su” in the same directory as you are running adb from). You can confirm this by navigating to the location on your tablet and see that the file has been transferred.
Command 3:
adb shell chmod 4755 /system/bin/su
This changes the permissions of the “su” file you’ve just transferred [details about chmod].
By using the command: adb shell ls -l /system/bin/su you can see the permissions.
We’ve changed the permissions from -rw-rw-rw- to -rwsr-xr-x, this allows the file to be executed.
Command 4:
adb push Superuser.apk /system/app/
This installs the Superuser.apk package on the device. This is important since this app allows you to control superuser access, rather than just allowing any program to obtain “superuser” rights.
Command 5:
adb shell reboot
Restarts the device.
Following this process, you will have the SuperUser application installed and applications will request Superuser access if they require it.
Note:
You may find for screen capture programs you need to allow permissions automatically or you may only end up with screenshots of the permission screen! Yes that's how I got the above one...
Excellent topic ! i've got the same pad and was wondering if you did find out a good way to completely backup the firmware. I've used Titanium but that's not a complete dump.
JiePieWie said:
Excellent topic ! i've got the same pad and was wondering if you did find out a good way to completely backup the firmware. I've used Titanium but that's not a complete dump.
Click to expand...
Click to collapse
Welcome to Xda!
That was going to be my next topic.
I've just been focusing on my WM development stuff at the moment (new RSSTab in the works), but will return to the tablet after I am done.
I'm not quite sure the best way to back it up yet, I was planning on trying out the ClockMod route, trouble is I'm quite new to it, so a little cautious about doing it before holidays.
I hope to try out some low level interfacing using the usb at some point too, as I've got a development board to play with.
Side Topic: The Future! Quad core and beyond
This time next year, Rodney...
Just saw this, and thought I would share here!
ASUS planning quad-core Tegra 3 tablet
See the two videos which are on the linked page...
Yes that is 2560x1600 resolution, hopefully to go into a 10" retina display.
Simply said, the future of these chips look rather interesting to say the least (no doubt are related to Sony's NGP).
Looking at the video, what we will be able to do with mobile devices will be rather impressive. Combine that with the new touch and perhaps kinect type control technologies as well as improvements with battery capacity/recharge tech, improved clear & colourful screens and things are shaping up nicely.
Boy are we going to have some fun hacking the innards out of them!
It is easy to see that for me, I've made the right choice by not spending lots of money on an impressive and expensive tablet at the moment. Since I'm happy to wait for a better tablet and until then I can have fun playing with my basic one.
Let just hope that the manufactures come up with a decent device, that is able to be hacked and perhaps might even be half decent out-of-the-box.
What is next? Who knows!
It's interesting really since I think that phones are quite close to the point where they have about as much processing power as they need** (perhaps with the exception of ones which include extra connectivity to HDMI/pico projector, keyboards etc). When they are subjected to the confines of a 3.8"/4" screen, you start to hit the limits of usability rather than processing power. Tablets have given the hardware room to stretch it's legs a little and show us what it can do!
**I'm not saying they won't need more in future, but I think perhaps an upgrade won't be as essential or spectacular, as it once was, until they evolve to the next form of course. I suppose the ultimate progression though is the usability of something like a tablet or pc but packaged in the form of a phone or smaller device in some form or another.
The software needs to catch up now though, we need better multi-core programming techniques, far far better privacy protection, and better stability overall. Thankfully hardware gives us the grunt to do this, it just needs to develop and improve to the point where coding can be done at the highest level of abstraction (which allows time to be spent on creative aspects rather than low level code details).
If you want to look even further, the prospect of re-programmable hardware is getting closer. This is where all the single purpose chips (such as video decoders) are replaced/supplemented by ones which can be re-programmed. Not only does this allow for codecs etc to be updated while still keeping the advantage of hardware decoding/coding (i.e. realtime without loading the main processor or drawing lots of power), but some applications could in-theory call in dedicated processing for specific tasks allowing for some amazing performance when performing complex and processor intensive tasks.
Fun times are a-coming!
Bright things are ahead for our fondle blocks, I don't even care too much if they are android or ipad or something else, as long as we can buy it (without selling a leg or two - ok, not iPad then!), program it, play with it and push it to it's limits and beyond!
Side Topic: Multi-Touch Technology - with No Touch Screen!
ZeroTouch 'optical multi-touch force field' makes a touchscreen out of just about anything
I wonder how much this costs to produce, quite a nice solution and ideal as a add-on to current screens. Depending of the cost of each infra-red and LED module it hopefully won't be too much. Imagine getting it fitted to your coffee table at home!

Categories

Resources