Log in

View Full Version : A review of Mad Programmer's Force Hi-resolution tool V1.50


Menneisyys
05-01-2005, 04:19 PM
Hou Ming, a.k.a. the Mad Programmer, has become pretty famous for his free PPC apps. Read for example http://www.firstloox.org//forums/showthread.php?t=3752 / http://www.pocketpcthoughts.com/forums/viewtopic.php?t=39731 , http://www.vancouverpocketpc.com/CAB_installation_tweak.html and http://www.pocketpcthoughts.com/forums/viewtopic.php?t=34790 on his most important contributions to the Pocket PC.

One of his latest apps is Force Hi-resolution tool. It has the same purpose as the forced VGA mode (see for example mr_Ray's explanation of the meaning of the different VGA modes at http://www.firstloox.org//forums/showthread.php?t=3052 ). Up to now, you had two choices for "forcing" an individual application into forced VGA mode, as described at http://www.tweaks2k2.com/portal/forum/viewtopic.php?forum=8&showtopic=62 :

- you either copied the appropriately named .mui file into the same directory than the EXE file to be hacked
- you used a tool like tweaks2k2, which, essentially, does the same.

Force Hi-resolution tool works entirely different. It doesn't create any superfluous files, which is pretty advantageous for reasons to be explained later.

You can download the application from http://www.geocities.co.jp/SiliconValley-Cupertino/2039/ . Search (Ctrl-F) for the string 'Force Hi-resolution tool V1.50' and, immediately under it, the link to the ForceHires.zip. Copy the ForceHires.cpl file into your PDA's \Windows. You'll also need another file from the same page. Search for the string 'gsGetFile.dll' and get 'gsgetfile-i.zip' from the links under it. (Sorry, I can't give direct links to the archives because the hosting site seems to check for the Referer HTTP header so you must visit the main page before downloading!). From this archive file, copy \ARMRel\gsgetfile.dll to the \Windows directory of your PDA.

After this, you will be able to start Settings/System/ForceHires:

http://menneisyys.freeweb.hu/MadProgrammersForceHiresolutionTool/ForceHires-1.gif

Click in the 'Hi-Resolutionized below' checkbox and click Add. By and by, add in all the EXE files you want to force into VGA. An example:

http://menneisyys.freeweb.hu/MadProgrammersForceHiresolutionTool/ForceHires-2.gif

Then, just click OK and, from now on, all the apps will be forced into VGA.

Its advantages:

- much easier to use and less error-prone than manual .mui file renaming and copying

- it's free, unlike tweaks2k2 and incurs much less manual tweaking than the manual renaming and copying the hack file to the target directory if you don't use tweaks2k2

- "forced VGA mode" apps don't have additional files in their home directory. This, apart from causing less file system congestion (in WinCE, unfortunately, all files in the main memory contribute to the operating system's becoming increasingly slow. See my benchmarks at http://www.pocketpcthoughts.com/forums/viewtopic.php?t=36376 on this), has another great advantage: upon uninstalling a "hacked" app, you won't need to manually delete its directory and the .mui file in it. Original \Windows\*.unload files don't list the files that are later copied to the home directory of an app. Consequently, Settings/System/Remove Programs will give you an error message upon uninstalling the "forced" app

Its disadvantages:

- at startup, a .cpl is loaded (see \Windows\Startup) and may stay resident in memory, as with most of Mad Programmer's tools. This MAY result in performance degradation, as is the case with his Fonts on Storage. I haven't measured this, however, and it's not even wisible in the process list, so it's highly possible it doesn't slow down your PPC. (See the above-mentioned http://www.pocketpcthoughts.com/forums/viewtopic.php?t=36376 thread on benchmarking if you really want to measure if it's slowing down anything.)

- if you uninstall a forced app, ForceHires doesn't notice this. You'll need to manually delete the uninstalled EXE's link from it. This isn't a big problem, however.

Menneisyys
05-13-2005, 11:03 AM
Some new info & genuine Menneisyys bugfix:

1. a new version, 1.51, has been released in the meantime. This means searching for the string 'Hi-resolution tool V1.50' (as I've recommended in the original article) won't work any more. Search for, for example, for the much more generic and 'future-friendly' 'Hi-resolution tool' instead.

2, alternatively, you may right-click http://www.geocities.co.jp/SiliconValley-Cupertino/2039/gsgetfile-i.zip and http://www.geocities.co.jp/SiliconValley-Cupertino/2039/ForceHires.zip instead and choose 'Save as...'. If it doesn't work or downloads a HTML file instead of a ZIP, do the text searching I've outlined above.

3, last but not least, I've found a very annoying bug in the app (even in 1.51) which registers the program to run at start so that you don't need to explicitly invoke it after every reset to check in the checkbox and, thus, enable the forced VGA mode again.

The explanation (and, therefore, the fix) is very simple. Upon setup, a forcehires.exe is created in \Windows that should be run at startup. In order to register this with the device, the app doesn't copy the EXE (or a link to it) into \Windows\StartUp, but registers the application name in the [HKEY_LOCAL_MACHINE\init] key of the Registry, as anyone would do.

The problem is that it doesn't try to find a still non-used, but low-enough value for the name component of the value, just enters a wired-in value of 1000:

"Launch1000"="forcehires.exe" :

http://menneisyys.freeweb.hu/ForceHiresBugInRegistry/ForceHiresBugInRegistry.gif

This, however, means that the EXE won't be started at all at startup on a lot of devices (for example, on Pocket Loox 720 devices).

The solution for this is very simple:
a, either copy \Windows\forcehires.exe to \Windows\StartUp (easiest, but makes the removal of forcehires.exe complicated in cases)

b, or, make a link to the EXE to \Windows\StartUp using File Explorer: tap-and-hold \Windows\forcehires.exe, choose Copy from the pop-up menu, go to \Windows\StartUp, tap-and-hold an empty area there and choose Paste Shortcut.

c, alternatively, edit the Registry and decrease the value of 1000 to something well under 100 (90 won't work), making sure you don't overwrite an already existing value. For example, Launch21 works great with my Pocket Loox 720. To do this, tap-and-hold "Launch1000"="forcehires.exe" and choose Rename from the pop-up menu.