Segment Swap utility

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
kostia111
Posts: 47
Joined: Mon Oct 21, 2019 4:58 am

Re: Segment Swap utility

Post by kostia111 »

maybe so ?
universal XML
for files of different lengths but with the same header.
I often have to work with segments

it would also be very convenient to extract segments
to a folder called as OS
and then just segments
here with such a template
12598219.00
12598439.02
---------------------
12610597.07

it seems to me so much more convenient
Attachments
999.JPG
999.JPG (62.13 KiB) Viewed 3336 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 »

kostia111 wrote:Good afternoon !
I want to check the checksums
file which consists of one segment
file = segment
for example this
I already broke my head
trying to write xml
there is no way to indicate
that segment address is the beginning - the end of the file
Good morning.

Beginning of file - end of file:
0-0@
User avatar
joukoy
Posts: 392
Joined: Tue Dec 17, 2019 3:27 am
cars: Pontiac Firebird 1978

Re: Segment Swap utility

Post by joukoy »

I think this is how you need to setup it?

Btw. did you try to click small buttons right side of all address fields?

Edit: checksum store address is skipped automatically when calculating.
uvp-2020-05-29-segment.jpg
uvp-2020-05-29-segment.jpg (48.45 KiB) Viewed 3323 times
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

kostia111 wrote:Good afternoon !
I want to check the checksums
file which consists of one segment
file = segment
for example this
I already broke my head
trying to write xml
there is no way to indicate
that segment address is the beginning - the end of the file

I have already start making xmls for various segments, but it is still far from complete. Too many segments varieties and still getting some errors.

Here is the beta I have currently.
XML_seg_v1.rar
(5.1 KiB) Downloaded 339 times
Autodetect is supposed to identify the segments so you just needs to open the file and see how it goes. It is setup to identify much more data types than the already made xmls.


Can you share some stock segments library. I need alot of them to make a cvn list and add support to autodetect.


Hint you can open all files in a folder including subfolders via file info tab. Much easier when you are working with lots of files.
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

joukoy wrote:Version 0.11.11
Started support for configurable table search.
Not finished yet, need more functions etc, but basic functions work.

Extract attached files to XML -folder (same file tree times with different name), hit "Show info for files..." and select some V6 bnaries.
You should get data to [Searched Tables]

Config:
Settings -> Edit Table Search

Nice start for search xml. I even managed to configure some more table search for spark tables for v6.

It seems a lot of work is needed, The search is so more case dependent that I doubt we can cover all cases, but some basic search config will be awesome.

I figured the first 4 fields config, but I am lost for the others. Some hints will be awesome.

For searching we might need to rip the start address of the 3d subroutines, and than use that start address in the search field as a variable.

For example search for variables fields at the very start. We need 5 in total for now. 1 of the variable will have 2 different locations in the bin.

Than use the variables later in the search.

20 7C [X X X X] 4E B9 [Y Y Y Y]

YYYY = variable 1

or 20 7C [X X X X] 4E B9 [Z Z Z Z]

ZZZZ = variable 2


Now the search is harcdcoded for 3d tables with that row field.

Might make a skip sign when a field is not used and adding negative values for distance fields, If the value needed is in front of the search hit.
kostia111
Posts: 47
Joined: Mon Oct 21, 2019 4:58 am

Re: Segment Swap utility

Post by kostia111 »

Thanks for the quick response
I practically do not work with calibrations
north american cars
my specialty is opel
Last edited by kostia111 on Sun May 31, 2020 4:45 am, edited 1 time in total.
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:
Nice start for search xml. I even managed to configure some more table search for spark tables for v6.

It seems a lot of work is needed, The search is so more case dependent that I doubt we can cover all cases, but some basic search config will be awesome.

I figured the first 4 fields config, but I am lost for the others. Some hints will be awesome.

For searching we might need to rip the start address of the 3d subroutines, and than use that start address in the search field as a variable.

For example search for variables fields at the very start. We need 5 in total for now. 1 of the variable will have 2 different locations in the bin.

Than use the variables later in the search.

20 7C [X X X X] 4E B9 [Y Y Y Y]

YYYY = variable 1

or 20 7C [X X X X] 4E B9 [Z Z Z Z]

ZZZZ = variable 2


Now the search is harcdcoded for 3d tables with that row field.

Might make a skip sign when a field is not used and adding negative values for distance fields, If the value needed is in front of the search hit.
Ok, I will rewrite search almost completely
Don't use time for configs, format will change.
kur4o
Posts: 948
Joined: Sun Apr 10, 2016 9:20 pm

Re: Segment Swap utility

Post by kur4o »

I did play some more with the old config with ls1 and managed to generate some list based on table size. It looks like some tables are unique size and very easy to identify.


After looking at v8 code we might need some more search options like
wild character * , range [5-10], or defined [5,6,9]

Some example for the *

30 38 [AB B6] 32 38 [AB B8] 74 19 20 7C

30 38 [* *] 32 38 [* *] 74 19 20 7C


30 38 [* *] 32 38 [* *] 74 [10-19] 20 7C

The ** is ram location for table lookup values. We also might need to print these values.
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:I did play some more with the old config with ls1 and managed to generate some list based on table size. It looks like some tables are unique size and very easy to identify.


After looking at v8 code we might need some more search options like
wild character * , range [5-10], or defined [5,6,9]

Some example for the *

30 38 [AB B6] 32 38 [AB B8] 74 19 20 7C

30 38 [* *] 32 38 [* *] 74 19 20 7C


30 38 [* *] 32 38 [* *] 74 [10-19] 20 7C

The ** is ram location for table lookup values. We also might need to print these values.
Version 0.12.0
You can now have search strings like:
30 38 * * 32 38 * * 74 10-19 20 7C
30 38 * * 32 38 * * 74 10/15/20 20 7C

Variables:
30 38 var1:4 32 38 * * 74 10-19 20 7C
Or in "items": var1:3:b (3 bytes from searched address, beginning of searched data)
Edit:
othervar:0:e (0 bytes from searched address, end of searched data)

Items:
30 38 item1:4:hex 32 38 * * 74 10-19 20 7C
in "items": item1:3:4:hex
Attachments
SearchTables-V6-96-97.zip
(496 Bytes) Downloaded 164 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 »

0.12.1
Hit counter to table search
Post Reply