Announcement

Collapse
No announcement yet.

Garmin jnx file format hacking

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Re: Garmin jnx file format hacking

    Comfirm patch works on oregon 200. With firmware 4.12beta

    Comment


    • Re: Garmin jnx file format hacking

      Roger47

      Merging :
      That's exactly the way I see the merging too.. to be able to have 5 different maps (ECW, .map rothers) with the same area covered.. and join them to have a 5-level JNX file..

      Concerning the creation of each tile.. all tiles must be exactly 256x256 pixels ?

      Thanks

      Comment


      • Re: Garmin jnx file format hacking

        Faster versions of map2jnx and jnxmerge. I still need to sort out the console, though.

        Maybe now is time to take stock. There will always be tweaks and optimisations but I think we have proved the principle that JNX files can be generated and loaded. And, although Garmin will say otherwise, this is not about pirating their copyright material but giving a capability to their units that was missing.

        Dodoche,

        You can run repeated merges to build a bigger file - it is now a lot faster. I cut the images to 256x256 because that was how the examples were and it works. If the source image is not a multiple of 256, any part tiles are on the East and South.
        Attached Files
        Last edited by roger47; 30th December 2010, 13:35.

        Comment


        • Re: Garmin jnx file format hacking

          I tried to create a JNX file from a 70Mo JPG file, i got "Unable to allocate memory for new map".

          And when i give the ".map", it is prompting for the JPG file.

          Thanks.

          Comment


          • Re: Garmin jnx file format hacking

            Works fine!
            Limit is about 1GB (~50 JNX-Files) for 62s 2.92b

            Merge is really fast now!! :-))
            Are there also command line parameters for merging?

            I am not sure, if the limit is the sum of file size or number of files

            Comment


            • Re: Garmin jnx file format hacking

              Did some converting with v1 and v2..
              Sometimes, the result is different. Should it be the same jnx or did you also format optimizing?

              Comment


              • Re: Garmin jnx file format hacking

                Apart from the speed change (which was just optimising a copy routine to copy blocks not bytes), the only other change was to fix a problem aligning maps which caused some maps to go completely grey.

                Can someone check what expiry date I am setting in the JNXs (I just copied a value from one of the samples)
                Last edited by roger47; 30th December 2010, 18:20. Reason: Expiry date

                Comment


                • Re: Garmin jnx file format hacking

                  Originally posted by roger47 View Post
                  Apart from the speed change (which was just optimising a copy routine to copy blocks not bytes), the only other change was to fix a problem aligning maps which caused some maps to go completely grey.
                  Converter works really faster, and I could convert that map I've previously posted.

                  I've tried to use jnxmerge, and I've found out that the JNX files it produces are not displayed. I have extracted jpegs from the merged JNX, all they have correct size, but their contents are shifted one byte ahead. I.e. instead of starting FF 0E 00 10 they have E0 00 10 4A. And at the very end, instead of FF D9, there is D9, and, as far as I got, the first byte of the next image in the original JNX - usually FF, but the last jpeg has 42 ("B" from BirdsEye EOF marker) as the last byte.


                  Originally posted by roger47 View Post
                  Can someone check what expiry date I am setting in the JNXs (I just copied a value from one of the samples)
                  It seems to be 2011/11/21.
                  I think you can safely write zeros to these fields, since the device does not process them anyway.

                  Moreover, I've seen one JNX file which most likely originates from BirdsEye Select Deutschland subscription, and that map has zero in field 0x1C, and 3 in field 0x20.
                  So, the subscription expiration most likely occupies only the first of these two DWORDs. The meaning of another DWORD is unknown yet.
                  Garmin GPSMAP 62s

                  Comment


                  • Re: Garmin jnx file format hacking

                    I've tried to use jnxmerge, and I've found out that the JNX files it produces are not displayed.
                    Sorry about that - I did test it but Freeimage accepted the shifted JPEGs!
                    Attached Files

                    Comment


                    • Re: Garmin jnx file format hacking

                      Now it works fine.
                      Thank you for the fast response!
                      Garmin GPSMAP 62s

                      Comment


                      • Re: Garmin jnx file format hacking

                        hi roger,

                        Eeverytime i try and convert a file to jnx i get the following error

                        See the end of this message for details on invoking
                        just-in-time (JIT) debugging instead of this dialog box.

                        ************** Exception Text **************
                        System.IO.IOException: The process cannot access the file 'c:\users\richard\desktop\map2jnx\glos37_64.jpg' because it is being used by another process.
                        at Microsoft.VisualBasic.FileSystem.FileOpen(Int32 FileNumber, String FileName, OpenMode Mode, OpenAccess Access, OpenShare Share, Int32 RecordLength)
                        at map2jnx.Form1.putjnx()
                        at map2jnx.Form1.do_batch(ReadOnlyCollection`1 comstr)
                        at map2jnx.Form1.Form1_Load(Object sender, EventArgs e)
                        at System.EventHandler.Invoke(Object sender, EventArgs e)
                        at System.Windows.Forms.Form.OnLoad(EventArgs e)
                        at System.Windows.Forms.Form.OnCreateControl()
                        at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
                        at System.Windows.Forms.Control.CreateControl()
                        at System.Windows.Forms.Control.WmShowWindow(Message& m)
                        at System.Windows.Forms.Control.WndProc(Message& m)
                        at System.Windows.Forms.ScrollableControl.WndProc(Mes sage& m)
                        at System.Windows.Forms.ContainerControl.WndProc(Mess age& m)
                        at System.Windows.Forms.Form.WmShowWindow(Message& m)
                        at System.Windows.Forms.Form.WndProc(Message& m)
                        at System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
                        at System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
                        at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


                        ************** Loaded Assemblies **************
                        mscorlib
                        Assembly Version: 2.0.0.0
                        Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
                        ----------------------------------------
                        map2jnx
                        Assembly Version: 1.0.0.0
                        Win32 Version: 1.0.0.0
                        CodeBase: file:///C:/Users/Richard/Desktop/map2jnx/map2jnx.exe
                        ----------------------------------------
                        Microsoft.VisualBasic
                        Assembly Version: 8.0.0.0
                        Win32 Version: 8.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
                        ----------------------------------------
                        System
                        Assembly Version: 2.0.0.0
                        Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
                        ----------------------------------------
                        System.Windows.Forms
                        Assembly Version: 2.0.0.0
                        Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
                        ----------------------------------------
                        System.Drawing
                        Assembly Version: 2.0.0.0
                        Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
                        ----------------------------------------
                        System.Runtime.Remoting
                        Assembly Version: 2.0.0.0
                        Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
                        CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
                        ----------------------------------------
                        FreeImageNET
                        Assembly Version: 3.13.1.1
                        Win32 Version: 3.13.1.1
                        CodeBase: file:///C:/Users/Richard/Desktop/map2jnx/FreeImageNET.DLL
                        ----------------------------------------

                        ************** JIT Debugging **************
                        To enable just-in-time (JIT) debugging, the .config file for this
                        application or computer (machine.config) must have the
                        jitDebugging value set in the system.windows.forms section.
                        The application must also be compiled with debugging
                        enabled.

                        For example:

                        <configuration>
                        <system.windows.forms jitDebugging="true" />
                        </configuration>

                        When JIT debugging is enabled, any unhandled exception
                        will be sent to the JIT debugger registered on the computer
                        rather than be handled by this dialog box.

                        is there something i am doing wrong. I have attched the image and map file

                        Comment


                        • Re: Garmin jnx file format hacking

                          woops forgot to attach map and image
                          Attached Files

                          Comment


                          • Re: Garmin jnx file format hacking

                            WhiteDragon,

                            I would say that you already have another knxmerge running.. !! Check all the process running. and KILL them

                            Comment


                            • Re: Garmin jnx file format hacking

                              It doesn't happen to me - I've tried running it under the debugger but run out of memory! Here is my output.
                              Attached Files

                              Comment


                              • Re: Garmin jnx file format hacking

                                I ran it on another machine i have and had no problems.

                                Strange lol

                                does anyone know how many jnx files can be stored on a device

                                Comment

                                Working...
                                X