Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB

Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB (https://www.ft86club.com/forums/index.php)
-   Software Tuning (https://www.ft86club.com/forums/forumdisplay.php?f=88)
-   -   ROM Table Discovery & Definitions (https://www.ft86club.com/forums/showthread.php?t=90566)

Kodename47 06-24-2015 04:51 AM

ROM Table Discovery & Definitions
 
Seeing as there isn't a specific thread for this I thought I'd start one rather than tagging it in the middle of the Tactrix threads.

I decided to try WinOLS with some success, however I was wondering if those with IDA could look through and determine if these tables are of any use and what they do.

It seems that WinOLS is fairly good at determining the actual tables and has a go at formulating the expressions, as well as allowing you to view them in a table or 3D format you would be familiar with.

Below are the 10 largest tables that are not yet defined, on my definition at least, for ZA1JA02G. I haven't looked at the A01G but so far the 2 are the same.

@Td-d
@ztan

I'll post the same over on Romraider to see if they can be of any assistance.

Addresses:
Code:

<table name="Alpha 1" storageaddress="1070B8">
              <table type="X Axis" storageaddress="106FF0" />
              <table type="Y Axis" storageaddress="10703C" />
            </table>
 
<table name="Alpha 2" storageaddress="102518">
              <table type="X Axis" storageaddress="102458" />
              <table type="Y Axis" storageaddress="1024B4" />
            </table>
 
<table name="Alpha 3" storageaddress="100948">
              <table type="X Axis" storageaddress="1008A8" />
              <table type="Y Axis" storageaddress="1008D4" />
            </table>
 
<table name="Alpha 4" storageaddress="100644">
              <table type="X Axis" storageaddress="1005B8" />
              <table type="Y Axis" storageaddress="100600" />
            </table>
 
<table name="Alpha 5" storageaddress="11AC4C">
              <table type="X Axis" storageaddress="11ABC8" />
              <table type="Y Axis" storageaddress="11AC08" />
            </table>
 
<table name="Alpha 6" storageaddress="10B488">
              <table type="X Axis" storageaddress="108E48" />
              <table type="Y Axis" storageaddress="109018" />
            </table>
 
<table name="Alpha 7" storageaddress="10B274">
              <table type="X Axis" storageaddress="108E48" />
              <table type="Y Axis" storageaddress="109018" />
            </table>
 
<table name="Alpha 8" storageaddress="10AFE8">
              <table type="X Axis" storageaddress="108E48" />
              <table type="Y Axis" storageaddress="109018" />
            </table>
 
<table name="Alpha 9" storageaddress="10AD2C">
              <table type="X Axis" storageaddress="108E48" />
              <table type="Y Axis" storageaddress="109018" />
            </table>

<table name="Alpha 10" storageaddress="10AA70">
              <table type="X Axis" storageaddress="108E48" />
              <table type="Y Axis" storageaddress="109018" />
            </table>

Table Data:
Code:

<table type="3D" name="Alpha 1" category="Alpha" storagetype="uint8" endian="big" sizex="19" sizey="31" userlevel="3">
      <scaling units="Unknown" expression="x*0.392157" to_byte="x/0.392157" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Throttle Position" storagetype="float" endian="little" logparam="E52">
        <scaling units="Degrees" expression="x" to_byte="x" format="#" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="X Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="#" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 2" category="Alpha" storagetype="uint16" endian="big" sizex="23" sizey="25" userlevel="3">
      <scaling units="Unknown" expression="x*0.009321" to_byte="x/0.009321" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" >
        <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="X Axis" name="Engine Speed" storagetype="float" endian="little" >
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 3" category="Alpha" storagetype="uint16" endian="big" sizex="11" sizey="29" userlevel="3">
      <scaling units="Unknown" expression="x*0.0125" to_byte="x/0.0125" format="0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little" logparam="E52">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 4" category="Alpha" storagetype="uint16" endian="big" sizex="18" sizey="17" userlevel="3">
      <scaling units="Unknown" expression="x*0.012089" to_byte="x/0.012089" format="0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little" logparam="E52">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="P8">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 5" category="Alpha" storagetype="uint16" endian="big" sizex="16" sizey="17" userlevel="3">
      <scaling units="Unknown" expression="x*0.001907" to_byte="x/0.001907" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="E52">
        <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="X Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 6" category="Alpha" storagetype="uint16" endian="big" sizex="14" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x*0.003053" to_byte="x/0.003053" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little" logparam="E52">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 7" category="Alpha" storagetype="uint16" endian="big" sizex="14" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x*0.003053" to_byte="x/0.003053" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little" logparam="E52">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 8" category="Alpha" storagetype="uint16" endian="big" sizex="14" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x*0.12207" to_byte="x/0.12207" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little" logparam="E52">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 9" category="Alpha" storagetype="uint16" endian="big" sizex="14" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x*0.12207" to_byte="x/0.12207" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little" logparam="E52">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="3D" name="Alpha 10" category="Alpha" storagetype="uint16" endian="big" sizex="14" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x*0.12207" to_byte="x/0.12207" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little" logparam="E52">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>


ztan 06-24-2015 07:07 AM

I'll have a look in IDA.
Last tried to use WinOLS in 2006...

ztan 06-24-2015 09:35 AM

Unpicking "Alpha 1":

From addresses given:
Code:

ROM:00106FF0 flt_106FF0:    .float 800.0, 1200.0, 1600.0, 2000.0, 2400.0, 2800.0, 3200.0, 3600.0, 4000.0, 4400.0
ROM:00106FF0                                        ; DATA XREF: ROM:000B2EF8o
ROM:00106FF0                .float 4800.0, 5200.0, 5600.0, 6000.0, 6400.0, 6800.0, 7000.0, 7200.0, 7400.0
ROM:0010703C flt_10703C:    .float 8.0, 10.0, 12.0, 14.0, 16.0, 18.0, 20.0, 22.0, 24.0, 26.0
ROM:0010703C                                        ; DATA XREF: ROM:000B2EFCo
ROM:0010703C                .float 28.0, 30.0, 32.0, 34.0, 36.0, 38.0, 40.0, 42.0, 44.0, 46.0
ROM:0010703C                .float 48.0, 50.0, 52.0, 54.0, 57.0, 60.0, 65.0, 70.0, 75.0, 80.0
ROM:0010703C                .float 85.0
ROM:001070B8 byte_1070B8:    .datab.b h'13, h'FF    ; DATA XREF: ROM:000B2F00o
ROM:001070B8                .data.b h'B9
ROM:001070B8                .datab.b h'12, h'FF
ROM:001070B8                .data.b h'7F, h'DF
.....592 values

Following the xref from the x-axis (RPM) to B2EF8:

Code:

ROM:000B2EF4 stru_B2EF4:    Table_type <h'13, 0, h'1F> ; DATA XREF: sub_4FFD2+1Co
ROM:000B2EF4                                        ; ROM:off_500C4o
ROM:000B2EF8                .data.l flt_106FF0  ;x-axis
ROM:000B2EFC                .data.l flt_10703C  ; y-axis
ROM:000B2F00                .data.l byte_1070B8  ;data
ROM:000B2F04                .data.w h'400  ;data length (byte)
ROM:000B2F06                .data.w 0
ROM:000B2F08                .float 0.39215687 ;data scalar
ROM:000B2F0C                .float 0.0  ;data offset

Following the xref from the table definition to 4FFD2:

Code:

ROM:0004FFD2 sub_4FFD2:                              ; CODE XREF: sub_4FEBE+Ep
ROM:0004FFD2                movmu.l r14, @-r15      ; Move Multi-register Upper part
ROM:0004FFD4                fmov.s  fr14, @-r15    ; Floating-point move single precision
ROM:0004FFD6                fmov.s  fr15, @-r15    ; Floating-point move single precision
ROM:0004FFD8                stc.l  gbr, @-r15      ; Store Control Register Long
ROM:0004FFDA                movi20  #dword_FFF89B8C, r0 ; 20-bit immediate data transfer
ROM:0004FFDE                ldc    r0, gbr        ; Load to Control Register
ROM:0004FFE0                mov.l  #RAM_RPM, r2    ; Move Immediate Long Data
ROM:0004FFE2                fmov.s  @R2, fr14      ; Floating-point move single precision
ROM:0004FFE4                mov.l  #RAM_Throttle, r2 ; Move Immediate Long Data
ROM:0004FFE6                fmov.s  @R2, fr15      ; Floating-point move single precision
ROM:0004FFE8                mov.l  #sub_53FA0, r2  ; Move Immediate Long Data
ROM:0004FFEA                jsr/n  @R2 ; sub_53FA0 ; Jump to Subroutine with No delay slot
ROM:0004FFEC                extu.b  r0, r14        ; Extend as Unsigned (Byte)
ROM:0004FFEE                mov.l  #stru_B2EF4, r4 ; Move Immediate Long Data
ROM:0004FFF0                movi20  #Pull3D, r2    ; 20-bit immediate data transfer
ROM:0004FFF4                fmov    fr14, fr4      ; Floating-point move
ROM:0004FFF6                jsr    @R2 ; Pull3D    ; Jump to Subroutine
ROM:0004FFF8                fmov    fr15, fr5      ; Floating-point move
ROM:0004FFFA                movi20  #dword_FFF89B8C, r6 ; 20-bit immediate data transfer
ROM:0004FFFE                fmov.s  fr0, @r6        ; Floating-point move single precision

We find the x-axis is RPM, y-axis is Throttle, value pulled from the table is stored in FFF89B8C (I don't know what this is yet).

Kodename47 06-24-2015 01:30 PM

*Thanks, I've updated the code. I figured it would be something like that as the table looks like this:
https://dl.dropboxusercontent.com/u/...lub/Alpha1.jpg

Seems to have higher numbers in the lower torque areas.

As more are found I'll update the 1st post.

Kodename47 06-24-2015 09:25 PM

Some more ;)

Addresses:

Code:

<table name="Alpha 11" storageaddress="103310">
              <table type="X Axis" storageaddress="1032D0" />
              <table type="Y Axis" storageaddress="1032F4" />
            </table>

<table name="Alpha 12" storageaddress="103498">
              <table type="X Axis" storageaddress="103470" />
              <table type="Y Axis" storageaddress="103484" />
            </table>

    <table name="Alpha 13" storageaddress="104634">
      <table type="Y Axis" storageaddress="1045E8" />
    </table>
    <table name="Alpha 14" storageaddress="104B70">
      <table type="Y Axis" storageaddress="104AA8" />
    </table>

    <table name="Alpha 15" storageaddress="104D28">
      <table type="Y Axis" storageaddress="104CC0" />
    </table>

<table name="Alpha 16" storageaddress="1138A4">
              <table type="X Axis" storageaddress="113854" />
              <table type="Y Axis" storageaddress="113880" />
            </table>

<table name="Alpha 17" storageaddress="1139BC">
              <table type="X Axis" storageaddress="11396C" />
              <table type="Y Axis" storageaddress="113998" />
            </table>

<table name="Alpha 18" storageaddress="113E74">
              <table type="X Axis" storageaddress="113E24" />
              <table type="Y Axis" storageaddress="113E54" />
            </table>

<table name="Alpha 19" storageaddress="13D52C">
              <table type="X Axis" storageaddress="13D4B8" />
              <table type="Y Axis" storageaddress="13D4F8" />
            </table>

<table name="Alpha 20" storageaddress="11BCBC">
              <table type="X Axis" storageaddress="11BC3C" />
              <table type="Y Axis" storageaddress="11BC78" />
            </table>

Data:
Code:

<table type="3D" name="Alpha 11" category="Alpha" storagetype="uint16" endian="big" sizex="9" sizey="7" userlevel="3">
      <scaling units="Unknown" expression="x*0.002929" to_byte="x/0.002929" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little" logparam="E52">
        <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="P8">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 12" category="Alpha" storagetype="uint16" endian="big" sizex="5" sizey="5" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little">
        <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="P8">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="2D" name="Alpha 13" category="Alpha" storagetype="uint16" endian="big" sizey="19" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="2D" name="Alpha 14" category="Alpha" storagetype="float" endian="big" sizey="50" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="P8">
        <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="2D" name="Alpha 15" category="Alpha" storagetype="float" endian="big" sizey="26" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" logparam="P8">
        <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 16" category="Alpha" storagetype="uint16" endian="big" sizex="11" sizey="9" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" >
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 17" category="Alpha" storagetype="uint16" endian="big" sizex="11" sizey="9" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" >
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 18" category="Alpha" storagetype="uint16" endian="big" sizex="12" sizey="8" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Load" storagetype="float" endian="little">
        <scaling units="g/rev" expression="x" to_byte="x" format="0.00" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" >
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 19" category="Alpha" storagetype="float" endian="big" sizex="16" sizey="13" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little">
        <scaling units="Unknown" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" >
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>

<table type="3D" name="Alpha 20" category="Alpha" storagetype="uint16" endian="big" sizex="15" sizey="7" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.0" fineincrement=".01" coarseincrement=".1" />
      <table type="X Axis" name="Unknown" storagetype="float" endian="little">
        <scaling units="Degrees?" expression="x" to_byte="x" format="0" fineincrement=".001" coarseincrement="0.01" />
      </table>
      <table type="Y Axis" name="Unknown" storagetype="float" endian="little" >
        <scaling units="Degrees?" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>


Kodename47 06-27-2015 05:46 AM

Rather than just picking random tables I have been overlooking the entire ROM, I found these 4 2D tables all in the same portion of the hex dump. They seem to correspond to RPM so I wonder if these are cylinder comp tables of some sort. When viewed as a chart they vary quite a bit.

Code:

    <table name="Alpha 21" storageaddress="11E61C">
      <table type="Y Axis" storageaddress="11E5E0" />
    </table>
    <table name="Alpha 22" storageaddress="11E694">
      <table type="Y Axis" storageaddress="11E658" />
    </table>
    <table name="Alpha 23" storageaddress="11E70C">
      <table type="Y Axis" storageaddress="11E6D0" />
    </table>
    <table name="Alpha 24" storageaddress="11E784">
      <table type="Y Axis" storageaddress="11E748" />
    </table>

Code:

<table type="2D" name="Alpha 21" category="Alpha" storagetype="float" endian="big" sizey="15" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="2D" name="Alpha 22" category="Alpha" storagetype="float" endian="big" sizey="15" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="2D" name="Alpha 23" category="Alpha" storagetype="float" endian="big" sizey="15" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>
<table type="2D" name="Alpha 24" category="Alpha" storagetype="float" endian="big" sizey="15" userlevel="3">
      <scaling units="Unknown" expression="x" to_byte="x" format="0.00" fineincrement=".01" coarseincrement=".1" />
      <table type="Y Axis" name="Engine Speed" storagetype="float" endian="little" logparam="P8">
        <scaling units="RPM" expression="x" to_byte="x" format="0" fineincrement="50" coarseincrement="100" />
      </table>
          </table>


aagun 06-29-2015 11:45 PM

i dont know what it is but i wanna learn all about it

aagun 07-02-2015 10:06 PM

i need help here

i tried find FFF106FF0

it is same but not analyze

Code:

OM:00106FF0 dword_106FF0:  .data.l h'44480000, h'44960000, h'44C80000, h'44FA0000
ROM:00106FF0                                        ; DATA XREF: ROM:000B2EF8o
ROM:00106FF0                .data.l h'45160000, h'452F0000, h'45480000, h'45610000
ROM:00106FF0                .data.l h'457A0000, h'45898000, h'45960000, h'45A28000
ROM:00106FF0                .data.l h'45AF0000, h'45BB8000, h'45C80000, h'45D48000
ROM:00106FF0                .data.l h'45DAC000, h'45E10000, h'45E74000

Quote:

Originally Posted by ztan (Post 2297848)
Unpicking "Alpha 1":

From addresses given:
Code:

ROM:00106FF0 flt_106FF0:    .float 800.0, 1200.0, 1600.0, 2000.0, 2400.0, 2800.0, 3200.0, 3600.0, 4000.0, 4400.0
ROM:00106FF0                                        ; DATA XREF: ROM:000B2EF8o
ROM:00106FF0                .float 4800.0, 5200.0, 5600.0, 6000.0, 6400.0, 6800.0, 7000.0, 7200.0, 7400.0
ROM:0010703C flt_10703C:    .float 8.0, 10.0, 12.0, 14.0, 16.0, 18.0, 20.0, 22.0, 24.0, 26.0
ROM:0010703C                                        ; DATA XREF: ROM:000B2EFCo
ROM:0010703C                .float 28.0, 30.0, 32.0, 34.0, 36.0, 38.0, 40.0, 42.0, 44.0, 46.0
ROM:0010703C                .float 48.0, 50.0, 52.0, 54.0, 57.0, 60.0, 65.0, 70.0, 75.0, 80.0
ROM:0010703C                .float 85.0
ROM:001070B8 byte_1070B8:    .datab.b h'13, h'FF    ; DATA XREF: ROM:000B2F00o
ROM:001070B8                .data.b h'B9
ROM:001070B8                .datab.b h'12, h'FF
ROM:001070B8                .data.b h'7F, h'DF
.....592 values

Following the xref from the x-axis (RPM) to B2EF8:



ztan 07-03-2015 07:09 PM

Quote:

Originally Posted by aagun (Post 2308066)
i need help here

i tried find FFF106FF0

it is same but not analyze

Go to >Options>Setup data types (Alt-D)
An option box will come up with data type rotations that you want included in the data carousel - check "float". Pressing "d" in IDA will change the data type.

To change the line of numbers into an array, press "*" and enter the length of the array.

burdickjp 07-06-2015 11:50 PM

So this data is available on the CANBUS:
http://www.ft86club.com/forums/showthread.php?t=91170

I want it on my Tactrix. How do we go about getting it?

steve99 07-07-2015 01:20 AM

Quote:

Originally Posted by bur****jp (Post 2311973)
So this data is available on the CANBUS:
http://www.ft86club.com/forums/showthread.php?t=91170

I want it on my Tactrix. How do we go about getting it?

you would need to either sniff the can buss to get the data or get someone to trawl the ecu code to see if its stored in ecu ram addresses.

I suspect what the oft guys did was aquired a device that performes those read functions then sniffed the can buss data requests and coppied requests into oft.

burdickjp 07-07-2015 01:40 AM

Quote:

Originally Posted by steve99 (Post 2312071)
I suspect what the oft guys did was aquired a device that performes those read functions then sniffed the can buss data requests and coppied requests into oft.

We could do similarly by copying the OFT requests. I don't like that, though. I don't think that's a very ethical way of accomplishing it.

ztan 07-09-2015 08:48 AM

Quote:

Originally Posted by bur****jp (Post 2312088)
We could do similarly by copying the OFT requests. I don't like that, though. I don't think that's a very ethical way of accomplishing it.

Vishnu, EcuTek have all got their parameters by either disassembling the ROM or sniffing the CAN bus. Ethical would be buying the info from Toyota or Subaru, but they aren't selling.

I had a look at this briefly a couple of years ago, sniffing Techstream requests on CAN:

http://www.romraider.com/forum/viewt...8475&start=296

burdickjp 07-09-2015 10:19 AM

Quote:

Originally Posted by ztan (Post 2315033)
Vishnu, EcuTek have all got their parameters by either disassembling the ROM or sniffing the CAN bus. Ethical would be buying the info from Toyota or Subaru, but they aren't selling.

I had a look at this briefly a couple of years ago, sniffing Techstream requests on CAN:

http://www.romraider.com/forum/viewt...8475&start=296

That thread actually had this a few posts from where you linked in:
Quote:

Originally Posted by ztan
Lots of potential being seen:

ECU 0x07E8

CAN-ID 0x01
01 Calculated load
04 05 MAF
0B 0C Engine speed
0D Vehicle speed
32 Oil Temp

CAN-ID 0x03
07 Ignition advance

CAN-ID 0x37
09 0A FLKC
0B 0C FBKC

CAN-ID 0x41
06 07 Accel position

VSC module 0x07B8

CAN-ID 0x05
0B 0C Real engine torque

CAN-ID 0x47
01 Lateral G
02 Front/Rear G
03 Yaw rate
04 05 Steering wheel angle

Is it possible to get standalone engine + VSC logging with the OP2.0?



All times are GMT -4. The time now is 10:19 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
User Alert System provided by Advanced User Tagging v3.3.0 (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.


Garage vBulletin Plugins by Drive Thru Online, Inc.