# Map This!/Installation and setup
## Basic installation
### Getting Map This!

* Download the latest version of Map This! from http://deniska.dcemu.co.uk/. This site also contains other news posts, so you may have to scroll down to see the latest version;
* Decide on which firmware you want Map This! to run:
** If you have a fat PSP and a generic GPS receiver, this will be 1.50;
** If you have a fat PSP and the PSP-290 GPS receiver, this will be 3.xx;
** If you have a slim PSP, no matter what GPS receiver, this will always be 3.xx.
* Find out which firmware version you have:
** In the Cross Media Bar (XMB) go to Settings -> System Settings -> System Information;
** The first line will mention your firmware version (e.g. 3.71).
* Find out which folder you need to run Map This! from:
** If you will run Map This! e.g. on firmware 3.71, the folder will be ms0:/PSP/GAME371/;
*** The folder may also be ms0:/PSP/GAME/ if you're sure programs from this directory will be run using firmware 3.71.
** If you will run Map This! on firmware 1.50, the folder will be ms0:/PSP/GAME150/ (only for fat PSP);
*** The folder may also be ms0:/PSP/GAME/ if you're sure programs from this directory will be run using firmware 1.50.
** (Note: ms0:/ refers to the memory stick in your PSP. In Windows this may e.g. be G:\.)
* Unpack the directory mapViewer from either the FW1.00 or FW3.xx directory in the archive (depending on the firmware version you just decided on), to either ms0:/PSP/GAME371/ or ms0:/PSP/GAME150/ (depending on the folder you just decided on).
** Make sure that this folder contains the EBOOT.PBP (i.e., you now have a file ms0:/PSP/GAME???/mapViewer/EBOOT.PBP).

### Configuring Map This!

* In the Map This! directory, open the file system/config.txt;
* Change the configuration directives to your liking;
* The following configuration directives are supported:
** BAUD (number): define baud rate for generic GPS receivers;
** FAKEFEED (0 or 1): fake GPS signal by reading from file;
** INITLOCATION (0, 1 or 2): use cold, warm or hot boot for PSP-290 GPS receiver. If you're not sure, just ignore, it doesn't matter too much;
** DMS (0, 1 or 2): use only degrees, also minutes, or also seconds;
** SPEEDFIX (number): define conversion factor from knots. Use 1.151 for mph, 1.8523 for km/h;
** SPEEDLIMIT (number): define speed above which you will be warned about going too fast;
** NIGHTMODE (0 or 1): enable night mode (inverse colors) at startup;
** ALTFIX (number): define conversion factor from meters. Use 3.280839895 for feet, 1 for meters;
** WARNINGDISTANCE (number): increase to get earlier notification of waypoint approaching. Only works for routes;
** SPEEDFACTOR (number): smoothe movement between irregular GPS updates;
** TURNSPEED (number): define minimum speed you need to go in order for the screen to rotate automatically;
** STARTUPMAP (string): make Map This! open this map in GPS mode at startup, e.g., _NY_CITY_TINY_MAPSAMPLE;
** LOADWIFI (0 or 1): enable WiFi to download maps from within Map This!;
** STARTUPFREQUENCY (number): define CPU frequency of Map This! at startup;
** SATINFOFREQUENCY (number): define CPU frequency in GPS info screen (PSP-290 GPS receiver only);
** STARTUPSCREENMODE (0, 1 or 2): start Map This! in north up mode, track up mode or 3D mode;
** CURSORSPEED (number): define cursor movement speed;
** SMOOTHZOOM (0 or 1): enable zoom animation;
** CACHEMAPINDEX (0 or 1): cache map tiles for faster access;
** ENABLESERIALPORT (0 or 1): enable when you're using a generic GPS receiver.

## Maps

Because Map This! only comes with a small sample map, you will need to download your own maps. This can be done automatically using Global Map Download Tool (GMDL).
Downloaded maps have to be placed in the Map This! directory in maps/. Map directory names have to start with an underscore, e.g. _NY_CITY_TINY_MAPSAMPLE. Each map directory contains 5 GPSFS files.

## Points of Interest (POI) and routes

Map This! can show Points of Interest (POI) on a map as well as show routes from point A to point B. Both are stored in a POI file.
Like map directories, POI filenames have to start with an underscore, e.g. _banks_and_ATMs. It can be placed either in a map directory (together with the GPSFS files) or in ms0:/PSP/COMMON/. Placing a POI file in the latter directory allows you to load the POI file in every map.
A POI file can contain several directives:
* lat,lon,desc1,desc2,snd: normal POIs contain:
** Latitude/longitude: these can be either decimal, e.g. 40.713956°, or using minutes and seconds, e.g. N40°42'50.2416";
** Description 1: max. 37 characters;
** Description 2: max. 60 characters;
** Sound number: including this, if this number is e.g. 3, will make Map This! play the file system/sounds/message003.mp3 when you move the cursor to this entry. This won't work if either desc1 or desc2 is empty.
* #: lines starting with a pound sign are comments;
* !IMAGE:filename.png,: subsequent POIs will use filename.png as icon. The comma at the end is important!;
** Icons are loaded from the map directory;
** If they aren't found there, they are loaded from system/icons/;
** Check out the files in systems/icons/ to create your own icon files.
* !WAYPOINT: only all POIs (waypoints) after this directive will be linked by a red line, creating a route.
** When multiple !WAYPOINT directives are used, then only the last one will have effect;
** With this directive, waypoints are "active" earlier, i.e., they are shown as if the cursor is above them when the cursor is still a maximum of WARNINGDISTANCE (see Configuring Map This!) pixels away. This is useful to see upcoming waypoints earlier when driving and following a route.
See the file _banks_and_ATMs for an example POI file.

### Getting POI files

There are several websites that offer POI files for download. Often they are not in the format Map This! uses, so you will have to convert them. Global Map Download Tool can do this for a number of different formats. It can also download routes as POI files.
Another way to download routes is through http://getroute.nieko.net/. When accessing this site using the PSP browser you can only save routes to ms0:/PSP/COMMON/. See http://www.dcemu.co.uk/vbulletin/showthread.php?t=66572 for updates.

### Customizing sound files

Since the sound files are MP3 files, you can easily replace them with your own versions. You can either use a microphone to record your own voice prompts e.g., or you can use voice synthesizers:
* If you have access to a Mac computer, a script to generate the messages is included with Global Map Download Tool ("text to speech to file.zip" using http://en.wikipedia.org/wiki/PlainTalk so the resulting files are redistributable);
* AT&T Text-To-Speech (TTS) Demo at http://www.research.att.com/~ttsweb/tts/demo.php produces sound files that are not redistributable according to their usage policy.
In order for Map This! to recognize your voice prompts, you have to name them messageNNN.mp3, where NNN is e.g. 001. When a POI ends with "1,", message001.mp3 is played.
Do take into account that, when changing voice prompts and sound numbers, you will have to:
* recreate/update POI files;
* update Global Map Download Tool's sounds.txt;
* update http://getroute.nieko.net/ settings.
If you want to disable a certain sound, you can simply delete the sound file. This will also slightly speed up Map This!, e.g., when removing beep.mp3, you can scroll through lists faster.

## Geodata

Map This! also supports geodata. A geodata file is called geodata.dat and contains house numbers and streets and their location, zip code, city and state for a specific area. You can use Global Map Download Tool to create geodata for your area (only US, Canada, UK, Sweden). Dutch geodata is published here: http://stuff.nieko.net/psp/mapthis/geodata/.
geodata.dat can be placed in a map directory or in the Map This! directory (same directory as EBOOT.PBP is in) to be able to use it in every map.

## Localization

Map This! fully supports localization, in that the entire interface can be translated to another language and/or alphabet. In order to localize Map This! you need to change a few files:
* bigfont.png: here you can specify a separate alphabet (e.g. Cyrillic);
* help.txt: simply translate;
* keys_c.png,keys_c_t.png,keys_s_c.png: here you can specify a separate alphabet for use with Danzeff OSK;
* localfont_small.png: small version of bigfont.png;
* localization.txt: here you can specify the character sets specified in bigfont.png, the Danzeff keys used and the translation of text messages in Map This! itself.
For a number of localization packs in different languages, visit http://www.dcemu.co.uk/vbulletin/showthread.php?t=70091.
A Russian localization pack can be found in mapViewer_v05.rar, found here: http://deniska.dcemu.co.uk/mapthis-0-5-1-year-anniversary-edition--71404.html.

## Staying up-to-date

New Map This! versions will be posted on http://deniska.dcemu.co.uk/.
When maps have been changed online, you can simply redownload them using Global Map Download Tool.
Other data, e.g. Dutch geodata, may be posted on the Map This! forums.