Dear user, Thank you for trying cGPSmapper program - tool for creating custom maps for GARMIN GPS receiver. I put into this program much work and I am continuously developing it with hope, you will find it useful. Please keep in mind - I have never seen any official specification for Garmin maps - whole work base on back engineering - therefore I cannot give ANY guarantee, maps created with this tool will work at all - even more - I cannot give you any guarantee, your GPS becomes operational after uploading maps created with this program. Remember - you can loose your warranty using custom maps. ( During last 3 years of my work, none of the GPS I use to make tests did not broke - so hopeful - nothing bad will happen with your one - but don't blame me if I am wrong - you were bewared ) Ver 86a ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Missing keys in [CHART INFO] cause a general error Ver 86 ****************************************************************** ** cGPSmapper ****************************************************************** New: Marine support Marine format in the free version is slightly limited - see marine.mp and test_img.mp file document for more details Marine free version does NOT allow to upload more than one IMG file into GPS (internal ID value is always the same) Official manual soon available at http://cgpsmapper.com site New: Export functionality - IMG to MP is no longer available New: New section [CHART INFO], some minor corrections Fix: Some bugs fixed.. Ver 85 ****************************************************************** ** cGPSmapper ****************************************************************** Fix: TDB creation fixed - notice that you cannot create preview for file with name '00000008.img' - this name is reserved by cGPSmapper program New: Marine POI info (available also in the free version!) - check test_img.mp file and marine_test.txt file for example of use Ver 84B ****************************************************************** ** cGPSmapper ****************************************************************** Fix: DATUM working again Ver 84A ****************************************************************** ** cGPSmapper ****************************************************************** Fix: SHP command fails when using 'old' city definition section [CITIES] New: Detection of inconsisten region/country information when using 'old' HighwayIdx key Ver 0084 ****************************************************************** ** cGPSmapper ****************************************************************** Fix: It was not possible to include into preview file with name 00000008.img Fix: MBCS coding (LBLCODING=10) did not work Fix: Conversion from MP to SHP now include city/region/country data New: After generation of the preview files (TDB/IMG) new file is created - REG - which is a registry entry for MapSource - THIS FILE IS A TEXT FILE - IT MUST BE EDIT TO FIX THE PATH TO THE FILES! Ver 0083A ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Polygons of types between 0x3c to 0x4b cannot be processed with simplified (and faster) algorithm - therefore these polygons are processed in old manner (more time consuming) Ver 0082 ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Change in polygon processing - now processing is much faster Fix: Fixed processing of holes in less detailed layers - now there should be no 'white areas' going from the border of map to the hole Fix: Much better roads smoothing in less detailed layers - intersections in less detailed layers are no longer keep to make the lines much better looking Ver 0081 ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Coordinates with decimal part only could not be read Fix: Improved precision - mean error decreased from 2 meters to 1 meter for 24 bit resolution Fix: Lot of routing map creation improvements Ver 0080A ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Some error messages were displayed not correct (wrong error description) Ver 0080 ****************************************************************** ** cGPSmapper ****************************************************************** That had to happen one day.... for the first time I call version 0080 a stable version - most of found by users bugs were fixed and nearly all features of Garmin maps are available in cGPSmapper. Since for last weeks I was focused on removing minor bugs from the program, it's hard to mention all of them here - most of them were hard to notice by ordinary users anyway. Because of great confusion HOW TO START with cGPSmapper - I had to add a standard Windows dialog to the program if running cGPSmapper without any parameters - I hope - that will make the program a little more user friendly... Now the list of missing features (in compare to WHAT CAN BE DONE with maps): - BlueChart maps are not supported (there are no plans to do it) - Tide points are not supported (there are no plans to do it) - Shading maps are NOT YET supported (hey - does anyone have such map already?) - There are still some problems with sorting strings with special national characters Ver 0076A ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Transparent map creation (maps were not working as they should) Fix: Problem with spliting roads of specyfic angle and length Fix: Several improvements when creating maps with routing information (routable version only) Fix: Several improvements when creating global indexes (routable version only) Ver 0076 ****************************************************************** ** cGPSmapper ****************************************************************** Fix: Indexing highway exits corrected Fix: Several routing issue (only routable version) fixed Fix: Better optimization for speed in GPS Fix: Fixed command output of cgpsmapper when executing without parameters (help screen) Fix: Fixed creation of big maps (IMG file above 3M) New: Export from 'Polish Format' to ESRI format with command 'shp' cgpsmapper shp data_file.mp New: Fixed indexing of objects - now program can index objects starting with special codes New: New format for house numbering (Pro version) New: New format for routing (Routing version) New: More error checks New: (shareware and above) New better format for POI and Cities indexing, sections [CITIES],[REGIONS] and [COUNTRIES] are no longer required new keys for [RGN10]/[RGN20]/[RGN40] and [SHP] - for city name, region name and country name (details in test_img.mp file) New: New format for zip code and highway name, sections [ZIPCODES] and [HIGHWAYS] are no longer required [RGN10] Label=.. Data0=.. CityName=city name RegionName=region name CountryName=country name Zip=zip code Highway=highway name [END] [RGN20] Label=.. Data0=.. ;RGN20 is a city definition - therefore the 'label' key already defines 'CityName' RegionName=region name CountryName=country name [END] [SHP] .... CityName=dbf field name, where city name is stored RegionName=.. CountryName=.. [END] Ver 0075 ****************************************************************** ** cGPSmapper ****************************************************************** -New: Secondary name of the road possible to use (i.e. 'A20' and 'local name') [RGN40] .... Label=~[0x1e]A20 Label2=local road name Data0=.... [END] -Fix: If separate node was at the intersection, but detail level was too low it could happen that such node was removed -Fix: (LINUX) change of compiler - now program works with the same speed as windows based version -Fix: Sorting problems - now objects can start with special codes and sorting is working correctly Ver 0074 ****************************************************************** ** cGPSmapper ****************************************************************** -Fix: Speed (thanks to Konstantin) -New: Messages with exact place in input file -New: Irregular bounds for maps available for all versions ( through [RGN80] object ) -New: Import for MapDekode files ( [DBX] section ) -New: Transparent maps -New: Alias names for [RGNxx] sections : [POI] is a new alias for [RGN10] and [RGN20] [POLYLINE] is a new alias for [RGN40] [POLYGON] is a new alias for [RGN80] To differentiate between [RGN10] and [RGN20] new key have to be used: [POI] ... City=Y ... [END] example : [POI] Type=0x01 City=Y Data0=(11.11,12.11) [END] is the same as: [RGN20] Type=0x01 Data0=(11.11,12.11) [END] when: [POI] Type=0x01 Data0=(11.11,12.11) [END] is the same as: [RGN10] Type=0x01 Data0=(11.11,12.11) [END] Old section names ( [RGNxx] ) are still valid. !!!FULL VERSION REMARK!!!: IT IS IMPORTANT TO NOTICE THAT [POI] SECTION CHANGED ITS MEANING! [POI] SECTION IS NO LONGER USED TO DEFINE IMPORTING OF CITY/REGION/COUNTRY DATA FROM DBF FILES - INSTEAD [DEFINITIONS] SECTION MUST BE USED -Fix: Keys 'LevelsNumber' and 'Levels' ( in [SHP],[RGNxx],[PLT] and [WPT] sections ) are changed to 'EndLevel' key ( old names can be still used ) Ver 0072 ****************************************************************** ** cGPSmapper ****************************************************************** -Fix: Speed fix Ver 0071 ****************************************************************** ** cGPSmapper ****************************************************************** -New: New official extension for 'Polish format' *.mp -New: Automatic extension recognition cgpsmapper input_data.mp will produce file: input_data.img cgpsmapper map.img will procuce file: map.mp -New: command 'axx' to make export to file, not to standard output -Fix: Was an error in hole detection process -Fix: Hole detection process is much faster Ver 0070 ****************************************************************** ** cGPSmapper ****************************************************************** -routing bug fixing -New: PLT files now can define holes -Fix: Much better precision when creating maps (precision fix) -Fix: even more small fixes.. Ver 0067 ****************************************************************** ** cGPSmapper ****************************************************************** -no new features, bugfixing only Ver 0065 ****************************************************************** ** cGPSmapper ****************************************************************** -New: MBCS (Multi-byte character set) - national characters in your map (probably only certain firmwares/GPS models) [IMG ID] ... Codepage=[windows codepage] LBLcoding=[ 6 - compressed label coding - smallest maps 9 - 8bit coding 10 - MBCS - use together with CODEPAGE key ] ... [END] example: [IMG ID] ... Codepage=1251 LBLcoding=9 ... [END] -Fixed: preview map were not correct Ver 0063 ****************************************************************** ** cGPSmapper ****************************************************************** -New: 8bit character coding New key added to [IMG ID] section: [IMG ID] .... ;CODEPAGE=[windows codepage] CODEPAGE=1251 ... [END] Whenever Codepage is set to value not equal to 0, 8bit character coding is used. That mean - national characters can be used. Unfortunately I don't know which codepages are supported by Garmin GPS.. IMPORTANY! 1. Map is larger by about 10% - 29% (may vary) 2. IT IS REQUIRED FOR SOME OBJECTS (I.E. STREETS) TO WRITE LABELS WITH CAPITAL LETTERS! - Or label might be not visible correctly in GPS 3. Special codes ( ~[0x..] ) for road marks are different for 8bit character coding (and now cgpsmapper does not any automatic translation!) look below : normal 8bit codes ~[0x2a] {~[0x01]} - Interstate highway ~[0x2b] {~[0x02]} - Higway - shield ~[0x2c] {~[0x03]} - Higway - round symbol ~[0x2d] {~[0x04]} - Higway - small symbol - blue/red ~[0x2e] {~[0x05]} - Higway - big symbol ~[0x2f] {~[0x06]} - Higway - small symbol - white Ver 0062 ****************************************************************** ** cGPSmapper ****************************************************************** -New: Shareware version: indexing POI and Cities -New: switch -i to produce POI & city map only -New: 20% faster cgpsmapper ac -i source_data That will produce map with RGN10 and RGN20 elements only, even if in source data are RGN40 and RGN80 With shareware version it is possible to index up to 100 POI & cities together and unlimited number of POI & cities (with -i switch only) Shareware version is signed by owner, each map created with this version will show registration info. -Fix: BLOCKSIZE parameters no longer used -Fix: Indexing more than 255 cities was not working (more than 65000 to do) -Fix: DirIndicator working again Ver 0061 ****************************************************************** ** cGPSmapper ****************************************************************** -New: Street numbering -New: Find for address using street name, house number and zip code with city name -Fix: Name list for PLT import was not working if empty names were used Ver 0060 ****************************************************************** ** cGPSmapper ****************************************************************** -New: Handling for exits (for details check test_img.txt file) -New: Custom import datum can be defined in [IMG ID] section -New: New option '-o output_filename' to set a custom filename for maps created with 'ac' command -Fix: Creating maps with maximum 9 layer allowed (10 layer will corrupt your GPS!) -Fix: Intersection detection was not working for first node -Fix: In [IMG ID] section some keys had to be written in uppercase to work (i.e. Elevation=m was not working) -Fix: Fixed reading of [RGNxx] section - now a random order of keys is allowed -Fix: Updated description in test_img.txt/test_shp.txt files Ver 0050 ****************************************************************** ** cGPSmapper ****************************************************************** -New: Algorithm for clipping polygons (RGN80), better splitting, holes detection -New: Method for coding 'islands' - now it is possible to define two (or more) objects for single RGN80 section - each one can be interpreted as a master object or as a 'hole' - depends of which one include in ;Following example will produce just three separate 'sea' objects [RGN80] Type=0x32 Data0=(0.62918,0.92527),(0.61510,0.92522),(0.61515,0.94894),(0.62931,0.94850) [END-RGN80] [RGN80] Type=0x32 Data0=(0.62773,0.92725),(0.61651,0.92729),(0.61647,0.94608),(0.62201,0.94595),(0.62175,0.93042),(0.62769,0.93037) [END-RGN80] [RGN80] Type=0x32 Data0=(0.62751,0.93825),(0.62540,0.93442),(0.62302,0.93988),(0.62606,0.94406) [END-RGN80] ;In this example wy will get only one 'sea' with two islands
[RGN80] Type=0x32 Data0=(0.62918,0.92527),(0.61510,0.92522),(0.61515,0.94894),(0.62931,0.94850) Data0=(0.62773,0.92725),(0.61651,0.92729),(0.61647,0.94608),(0.62201,0.94595),(0.62175,0.93042),(0.62769,0.93037) Data0=(0.62751,0.93825),(0.62540,0.93442),(0.62302,0.93988),(0.62606,0.94406) [END-RGN80] -Fixed: Clipping long objects (above 255 nodes) -Fixed: Shorter map compilation time Ver 0046 ****************************************************************** ** cGPSmapper ****************************************************************** -New: for marking the end of section, now it's enaugh to write [END i.e : [RGN10] Type=Dining(Asian) Label=restaurant Data0=(32.016,20.013) [END] Rest of the line is not interpreted, so any of the below termination will be valid for all sections: [END-no matter] [END-RGN99] [END .. -Fixed: Correction for reading coordinates from [RGN40/80] sections -now it is possible to define type of element by name, not only by decimal number or hex number, i.e. : [RGN10] Type=Dining(Asian) Label=restaurant Data0=(32.016,20.013) [END-RGN10] [PLT] RgnType=0x40 Type=Road-Thin ... Names of elements are read from RGNtype.txt file which has to be in the same directory as cGPSmapper.exe is. RGNtype.txt file can be customized in any way (names can be localized, several not used types can be simply removed etc..) -cGPSmapper.ini file can be used to define standard [IMG ID] section - it must be in the same directory as cGPSmapper.exe is. cGPSmapper.ini can contain [IMG ID] section and [DICTIONARY] section -it is possible to define city/region/country and zip-code for streets too (full version only) by both - in DBF file associated with SHP file and by TXT interface : [Countries] country1=country~[0x1d]ct [END-Countries] [Regions] Region1=region CountryIdx1=1 [END-Regions] [Cities] City1=city name RegionIdx1=1 [END-Cities] ... [RGN40] Type=Road-thin Label=street DirIndicator=0 Data0=(52.01620,21.01356),(52.01616,21.01485) CityIdx=1 ZipIdx=1 [END-RGN40] -option '-l' for changing the output from cgpsmapper to logging format (no percents) -bug fixed: prevent to create index for elements with label starting with a special character '~[0x...] -bug fixed: major problem when indexing POI and cities together -bug fixed: after opening and saving map file, map becomes unusuable (NET problem) -reading element types from file RGNtype.txt (file can be modified by user) Ver 00453 ****************************************************************** ** cGPSmapper ****************************************************************** -option '-p' is working as it should -DLL problem fixed -!!!EXE FILE NAME IS CHANGED!!! -fixed problem when importing custom background (xx area is too large!...) -patch functionality is back -LEVELS Parameter in [WPT] section is now working -Copyright string is now correct Ver 0045 ****************************************************************** ** GPSmap & cGPSmap ****************************************************************** -Parameter "Levels" for [RGNxx] sections -automatic calculation of elevation for land contur and POI -New parameter in [IMG ID] - BLOCKSIZE -Fixed major bug which casued error when more than one map was uploaded into GPS -Global ELEVATION parameter in [IMG ID] section -Parameters LEVELFILL, LEVELLIMIT and WORLDMAP are no longer used - now all elements (except some special cases) are always imported into all choosen layers -New parameter in [IMG ID] PREPROCESS (see test_img.txt for details) PREPROCESS=N - fastest import (should be not used for final maps!) PREPROCESS=G - fast import PREPROCESS=F - standard import -First oficial relase of map uploader (sendMap version 0.0004) Ver 00442 ****************************************************************** ** GPSmap & cGPSmap ****************************************************************** -bug fixed - error in export (double comma) -bug fixed - not all elements splited during progress were correctly imported Ver 0044 ****************************************************************** ** GPSmap & cGPSmap ****************************************************************** -user friendly installation -implemented new algorithm for line generalisation with intersection tracing, it means, now base data can be used to built as many different detail-level layers as neccessary -recreation of elements using new generalisation method -new sections in import file [DICTIONARY] - definition of filters during importing elements [FILE] - including files during compilation -new directive in [PLT] and [WPT] section: Levels=x Elements from layer0 will be automatically imported into x layers above 0 : Levels=2 File=plt_data.plt Means that plt_data.plt will be used to built layer 0, 1, 2 using automatic generalisation with intersection tracing -PLT files can have associated TXT file with description of each separate part, name of associated file must be exactly the same as PLT file (including extension) with additional .txt extension -no more limitations for number of points for polyline and polygon -automatic splitting of large objects - now single region doesn't have to be as big as the biggest imported element -more user-friendly messages -more reports from compilation -definitly solved problem of region shift -indexing for cities : (full version) [IMG ID] DefaultCityCountry=CountryName~[0x1d]cnt DefaultCityRegion=region~[0x1d]reg -deleting selected region -test_map.img changed to show new features Ver 0043 -never published Ver 0042 -never published Ver 00412 ****************************************************************** ** GPSmap ****************************************************************** - fixed creating RGN40 elements ****************************************************************** ** cGPSmap ****************************************************************** - new sections in export file : [PLT] - for direct import from Ozi PLT files [WPT] - for direct import from Ozi WPT files - one command for creating IMG files (ac and as command work same) - possible to mix SHP import with normal TXT import (SHP works inly in full version) - fixed types for RGN20 - new example map Ver 0041 ****************************************************************** ** GPSmap ****************************************************************** - New window to select the order of house number, street name and zip code for POI info ****************************************************************** ** cGPSmap ****************************************************************** - more warnings during import to show if some data cannot be interpreted - warning if wrong parameters in [IMG ID] section - new parameters POIIndex = Y/N - force to build index for all POI (standard method will built index only for POI with additional info) (full version only) POINumberFirst = Y/N - determine the order of house number and street name for POI (full version only) POIZipFirst = Y/N - determine the order of zip-code and city name (full version only) - fixed one of the RGN40 types - from road to unpaved road Ver 0040 ****************************************************************** ** cGPSmap ****************************************************************** - support for RGN Update files - Update file may be now stored with correct header ****************************************************************** ** cGPSmap ****************************************************************** - new algorithm for importing - import with tracing elements and nodes all streets are tracet to control the crossroads meet - new parameters in import file - support for different datums - several major and minor import problems fixed Ver 00394 ****************************************************************** ** GPSmap ****************************************************************** - moving origin of selected region (using current map/region parameters) - import from ozi files into any given layer (or ALL layers) - several new types of RGN20 elements - direct export to ArcView files (full version only) ****************************************************************** ** cGPSmap ****************************************************************** - bug fixed - no background was created for very small maps - direct export to ArcView files (full version only) B0.039 ****************************************************************** ** GPSmap ****************************************************************** - PLT problem repaired, automatic splitting for PLT with more than 255 points - no more automatic decoding of crypted maps, sorry B0.038 ****************************************************************** ** GPSmap ****************************************************************** - No autoname for imported tracks - Additional info during loading IMG file ****************************************************************** ** cGPSmap ****************************************************************** - New parameter for importing : LevelLimit B0.036 ****************************************************************** ** GPSmap ****************************************************************** - Fix for POI edit - Fix for MG Italy - Fix for MG Switzerland ****************************************************************** ** cGPSmap ****************************************************************** - Several optimisation during creating new maps - better handling for POI (Full version) B0.035 ****************************************************************** ** GPSmap ****************************************************************** Bugs fixed: - Fix for 'Installed maps' - Fix for Import Manager window - Fix for importing WPT files B0.034 ****************************************************************** ** GPSmap ****************************************************************** New: - Full edition of POI info - Indexing POI elements - still some problems - Reading RGN maps (Venture/Mariner base map) Warning! - result will be an ordinary IMG file! Bugs fixed: - Fixed importing of Ozi PLT - Importing of Ozi WPT - Importing with grid alignment - New RGN80 (areas) types found - Fixed reading of some RR maps ****************************************************************** ** cGPSmap ****************************************************************** New: - New options in import file - Full support for creating POI from TXT and ArcView (full version only) Bugs fixed: - Imporoved accuracy B0.033 ****************************************************************** ** GPSmap ****************************************************************** New: - Modifing POI info Bugs fixed: ****************************************************************** ** cGPSmap ****************************************************************** New: - Import from ArcView and TXT files - Creating TDB and Preview IMG ( pv switch ) Bugs fixed: B0.032 New: - Preliminaly handling for EXITS on higways, including services and routing for EXITS (it belongs to normal RR maps!) - Preliminary handling for POI info - full address, phone number etc - Preliminary handling for NET section - only to allow proper reading of roads - no additional info is readed... - Recognizing the type of loaded map - some speed-up fixes - Reading MG maps without recognizing lots of thing ... :( - Enanched showing of RGN elements - Storing of POI info - without indexes! - Import from PLT files - creating new TRE regions - Installed maps list - Creating new maps from external data - 8 bits character set! - useful for special national char! - All strings uses values for special characters - Reading/Writing TDB files cGPSmap: - Creating new maps from external data - support for TXT format and SHP (ArcView) - Creating preview and TDB file set to install map set in MapSource Bugs fixed: - improper reading of POI elements (even some POI was lost!) - improper reading of POI types - closing map GPF error - showing each TRE region in list twice - fixed handling for very large objects ToDo : - Storing of EXITS in proper way!! - read and understand NET section ... B0.030 - fixed storing new region objetcts - creating new elements on locked TRE zones - creating patch files - merging several patch files into one file - first version of cGPSmap - command line utility for patch creating/applying B0.029 - major bug fixed - error during writing maps larger than ~100kB - wrong POI labels - some minor bugs fixed - decoding Garmin maps on your own responsibility - I'm no longer responsible for any copyright violations... B0.027 - major bug fixed with southern maps coordinates - label editor B0.026 - ability to search file by coordinate B0.025 - label editor - not finished - should be done in Beta 0.03 version - added coordinates supprot for hh,mm,ss.ss and hh,mm.mmmm - separate dialog for coords editing - ability to insert points when in coords dialog - keys handling : INSERT,DELETE for editing points, F2 for enter editor mode, ESC for update - scale in meters, miles and statute - multiple datums - reading OZI files - no import is possible now - should be done in Beta 0.03 version - changed validity to end of the August B0.02 - less dialog windows, - dramatically changed edit concept, - manual coordinates entering finally is allowed, - some memory leak fixed Here is a very short description app: Using cGPSmap finnaly is possible to create completly new maps - look into test_img.txt to see accepted format. After opening, standard dialog with some basic information appear, dialog with listed all elements in map and view map window. As you will notice, every map is composed from several maps, each for different zoom level. The most important of course is most detailed one. A little confuse could be TRE element - it's simple a basic region on map. Some TRE regions belongs to the master TRE region on less detail layer and so on. One TRE cannot belong to more than one master TRE. In my opinion it is done for optimization during showing maps on receivers. In TRE View Dialog you can choose in which layer you are interested, what is TRE region list and which element belongs to which TRE region. You can also select a single element using this list. Next method of selecting is described later. After opening map you can work in several modes (toolbar): Selecting mode (arrow) Moving map mode (hand-default) TRE Edit mode (globe) **** How can I load my own maps into receiver? It's not the simplest way, but it works... I will surely make it much much more easy, but now you have to do all manually. Well, firstly you have to move ALL img files from CD into any folder on your hard-drive (yes, I know - you need a lot of free space). After that run REGEDIT and go into : My Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Garmin\MapSource\Products\x where x is any number (well, it depends what you have installed). Find key named LOC and change to path where you have your IMG files... Of course you have still to use MapSource app to load your maps... **** There is other way to upload maps into receiver as well - to built own map-set and install it into MapSource - look into test_pv.txt to see how to do that.