Segment Swap utility

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
ironduke
Posts: 579
Joined: Thu Feb 13, 2020 11:32 pm
cars: Mainly GM trucks, a Cruze and an Equinox for dailys..

Re: Segment Swap utility

Post by ironduke »

kur4o wrote: The virtual tables are some kind of multi value math applied to the table, and nobody yet managed to configure the xdf for it.

I guess the values from table 1 are converted with value from other table and some scalars. I will look for more info how it works.
Before hp came out with it in their program someone created a way to view the virtual ve seperately and then import it into the tune.. Not sure if I still have it but I'll look for it.. Don't even remember how I used it, lol but it may give you a direction to go in..

Found it, last download is still alive..

https://forum.hptuners.com/showthread.p ... ight=excel
tkelly2784
Posts: 9
Joined: Sat Apr 11, 2020 1:54 pm
cars: Too many BMW's.

Re: Segment Swap utility

Post by tkelly2784 »

I've been using UniversalPatcher and I wanted to say thank you for making it.
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

Massive update on the definition files. Now there is support for most popular pcms and tcm I found bins for.
Extract the archive in the xml folder.

Please test with your bin library and report if there is some errors in the autodetect and checksums.

I was thinking to improve the segment swap part. Since there is segments that can work in different OSs, We can make 3 list to select from 1st will 100% compatibility, second will be suggested with high chance to work and third will be suggested with less chance to work.

To differentiate the high chance ones, a check of start-end address of the segment and overall size and position.
low chance will be for position and size match.

Maybe on bin extractions a list can be generated for all segments for a given xml and data can be taken from there when you try to swap a segment.

I checked the folders format of the extracted bins and it is really well sorted out.


We might need to fix the display of the checksums. Add a checkbox to specify how long will be the displayed checksum 1,2 or 4 bytes long. Now it defaults to 4 bytes on most of the exotic combos.
Attachments
XML_v3.rar
(98.76 KiB) Downloaded 191 times
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

kur4o wrote:Massive update on the definition files. Now there is support for most popular pcms and tcm I found bins for.
Extract the archive in the xml folder.

Please test with your bin library and report if there is some errors in the autodetect and checksums.

I was thinking to improve the segment swap part. Since there is segments that can work in different OSs, We can make 3 list to select from 1st will 100% compatibility, second will be suggested with high chance to work and third will be suggested with less chance to work.

To differentiate the high chance ones, a check of start-end address of the segment and overall size and position.
low chance will be for position and size match.

Maybe on bin extractions a list can be generated for all segments for a given xml and data can be taken from there when you try to swap a segment.

I checked the folders format of the extracted bins and it is really well sorted out.


We might need to fix the display of the checksums. Add a checkbox to specify how long will be the displayed checksum 1,2 or 4 bytes long. Now it defaults to 4 bytes on most of the exotic combos.
Thank you.

I think you have small error in p01-p59.xml
Eeprom search should be: ffffffffffffffff:0:n
Not: 0:ffffffffffffffff:n

Version 0.10.6
You can now define Checksum address like this: #:4:hex
Omit address but add bytes, so it is "show only"

Segment swapping uses now XML-file for storing all info about segments.
If you have previously extracted segments, they will not show up in available segments, you should extract all again.
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

Segment swapping uses now XML-file for storing all info about segments.
If you have previously extracted segments, they will not show up in available segments, you should extract all again.
That is awesome. It opens the door for experiments for cross OS segment swaps.

Can we add some more fields in the segment swap window like, Os the segment is from, segments p/n and make it sortable by any of the fields.
Can we also stretch the segments window since it gets really cramped and on full screen it retains it is size.

Some p/n can be used with 2 OS, so if it have info from more than 1 OS an alternative OS field can be added.

There is one issue that if a p/n is not in cvn list, it is identified as non stock, but it might just be missing from the list.

If there is [modded] -non stock
and [n/a] -no info available
added. It will positively identify the stock condition.

I think some export of lists with cross reference with the OS and segments match can be done with segment.xml file.

I still have to think how and what can be extracted or presented in print list.

If printing slows down the file info rip adding a print to file checkbox and than load the saved file to the log window can significantly speed things without sacrificing usability.
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

kur4o wrote:
Segment swapping uses now XML-file for storing all info about segments.
If you have previously extracted segments, they will not show up in available segments, you should extract all again.
That is awesome. It opens the door for experiments for cross OS segment swaps.

Can we add some more fields in the segment swap window like, Os the segment is from, segments p/n and make it sortable by any of the fields.
Can we also stretch the segments window since it gets really cramped and on full screen it retains it is size.

Some p/n can be used with 2 OS, so if it have info from more than 1 OS an alternative OS field can be added.

There is one issue that if a p/n is not in cvn list, it is identified as non stock, but it might just be missing from the list.

If there is [modded] -non stock
and [n/a] -no info available
added. It will positively identify the stock condition.

I think some export of lists with cross reference with the OS and segments match can be done with segment.xml file.

I still have to think how and what can be extracted or presented in print list.

If printing slows down the file info rip adding a print to file checkbox and than load the saved file to the log window can significantly speed things without sacrificing usability.
0.10.7
SegmentSwap window improvements.
Logging speed improved. Feedback please: should it still be much faster?
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

The speed improvement is not much. 4 seconds faster on 220 files info rip. I noticed that print quality suffered too. The fonts looks a little blurrier and fonts differ. I start to think that the slow down after like 100 files must be somewhere else. It gets progressively slower with the increase of the files count. The more files in the file info list the slower the performance. When the list is cleared or the program restarted the speed increase until enough files are build in the file info list.

Some small bugs I noticed. The p/n is not bolded on stock files.
Sometimes the log slider will not remember its position on minimizing and will default to the top position.
The file window extract and info windows don`t remember the last open folder but defaults to the last open original file folder and column resize also lose it is settings on random basis.

I noticed some bug with the swap window. If the files are extracted with skip on, some of the segments p/n are not displayed and there is true /false statement with that files, instead of stock/modded. it must be with the way the files are extracted. I think rename should be set by default instead of skip.

Now that new segment swap windows improvement is great. I wonder shouldn`t we add and OS swap functionality. We will use the segment info range and size to determine if there is a match.

Than we can make that cross OS compatibility list.

We need some columns by the number of segments by the xml and a title for each os.
The columns should contain the segments names

For example we take 7603 OS

Than list all the os in a list that have some compatibility. On each OS line we make a cross with each segment column we make a check with 100%. high chance and less chance compatible.

This list will be very powerful tool to determine if a XDF can work with more than on OS or with other OS segments

I am really excited about the new features. Great work so far.
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

0.10.8

You can now disable autorefresh for CVN list and Fileinfo list. If list updating was reason for slowdown, this should fix it.

Added support for OS swap.

Still thinking about segment compatibility list, how it should be implemented?
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

joukoy wrote: Still thinking about segment compatibility list, how it should be implemented?
You can open file Segments\extractedsegments.xml with excel.
Then you can filter for example: XmlFile: p01-p59, Segindex: 3 => you have all TransCal segments listed and you can compare sizes & addresses.
Is this good enough?

Edit: Segments extracted with old version have true/false in stock-column, you should remove Segments -folder and extract all again.
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

0.10.9
More speed hacks.
Fix: remember last BIN-folder in fileinfo and extract segments
Post Reply