Notices
ECU Flash

Found: code that transfers injector times to the hardware

Old Apr 21, 2009, 01:30 PM
  #1  
Evolved Member
Thread Starter
 
jcsbanks's Avatar
 
Join Date: May 2006
Location: UK
Posts: 2,399
Likes: 0
Received 5 Likes on 4 Posts
Found: code that transfers injector times to the hardware

Code:
ROM:0000D7B8 sub_D7B8:                               ; CODE XREF: T2Gmajordiv1_hugesub+A60p
ROM:0000D7B8                                         ; sub_27178+46p
ROM:0000D7B8                                         ; DATA XREF: KNOCK_KNOCK:off_24F6Co
ROM:0000D7B8                                         ; sub_2734A:off_273DCo
ROM:0000D7B8                 sts.l   pr, @-r15
ROM:0000D7BA                 mov.l   r14, @-r15
ROM:0000D7BC                 mov     r15, r14
ROM:0000D7BE                 mov.l   r1, @-r15
ROM:0000D7C0                 mov.l   r2, @-r15
ROM:0000D7C2                 mov     r5, r2          ; mask
ROM:0000D7C4                 mov     r4, r1          ; injtime
ROM:0000D7C6                 mov.l   @(h'240,pc), r10 ; [0000DA08] = int_disable
ROM:0000D7C8                 jsr     @r10 ; int_disable
ROM:0000D7CA                 nop
ROM:0000D7CC                 extu.w  r1, r1
ROM:0000D7CE                 extu.w  r1, r10
ROM:0000D7D0                 tst     r10, r10
ROM:0000D7D2                 bt      loc_D85C
ROM:0000D7D4                 mov     #-1, r13
ROM:0000D7D6                 add     r1, r13
ROM:0000D7D8                 extu.w  r2, r0
ROM:0000D7DA                 tst     #1, r0
ROM:0000D7DC                 bt      loc_D7EE
ROM:0000D7DE                 mov.l   @(h'94,pc), r10 ; [0000D874] = DCNT8K
ROM:0000D7E0                 mov.w   r13, @r10
ROM:0000D7E2                 mov.w   @(h'88,pc), r0 ; [0000D86E] = h'400
ROM:0000D7E4                 mov.l   @(h'23C,pc), r10 ; [0000DA24] = DSTR
ROM:0000D7E6                 mov.w   @r10, r10
ROM:0000D7E8                 or      r0, r10
ROM:0000D7EA                 mov.l   @(h'238,pc), r11 ; [0000DA24] = DSTR
ROM:0000D7EC                 mov.w   r10, @r11
ROM:0000D7EE
ROM:0000D7EE loc_D7EE:                               ; CODE XREF: sub_D7B8+24j
ROM:0000D7EE                 extu.w  r2, r0
ROM:0000D7F0                 tst     #2, r0
ROM:0000D7F2                 bt      loc_D804
ROM:0000D7F4                 mov.l   @(h'80,pc), r10 ; [0000D878] = DCNT8L
ROM:0000D7F6                 mov.w   r13, @r10
ROM:0000D7F8                 mov.w   @(h'74,pc), r0 ; [0000D870] = h'800
ROM:0000D7FA                 mov.l   @(h'228,pc), r10 ; [0000DA24] = DSTR
ROM:0000D7FC                 mov.w   @r10, r10
ROM:0000D7FE                 or      r0, r10
ROM:0000D800                 mov.l   @(h'220,pc), r11 ; [0000DA24] = DSTR
ROM:0000D802                 mov.w   r10, @r11
ROM:0000D804
ROM:0000D804 loc_D804:                               ; CODE XREF: sub_D7B8+3Aj
ROM:0000D804                 extu.w  r2, r0
ROM:0000D806                 tst     #4, r0
ROM:0000D808                 bt      loc_D81A
ROM:0000D80A                 mov.l   @(h'200,pc), r10 ; [0000DA0C] = DCNT8M
ROM:0000D80C                 mov.w   r13, @r10
ROM:0000D80E                 mov.w   @(h'60,pc), r0 ; [0000D872] = h'1000
ROM:0000D810                 mov.l   @(h'210,pc), r10 ; [0000DA24] = DSTR
ROM:0000D812                 mov.w   @r10, r10
ROM:0000D814                 or      r0, r10
ROM:0000D816                 mov.l   @(h'20C,pc), r11 ; [0000DA24] = DSTR
ROM:0000D818                 mov.w   r10, @r11
ROM:0000D81A
ROM:0000D81A loc_D81A:                               ; CODE XREF: sub_D7B8+50j
ROM:0000D81A                 extu.w  r2, r0
ROM:0000D81C                 tst     #8, r0
ROM:0000D81E                 bt      loc_D830
ROM:0000D820                 mov.l   @(h'1EC,pc), r10 ; [0000DA10] = DCNT8N
ROM:0000D822                 mov.w   r13, @r10
ROM:0000D824                 mov.w   @(h'1CE,pc), r0 ; [0000D9F6] = h'2000
ROM:0000D826                 mov.l   @(h'1FC,pc), r10 ; [0000DA24] = DSTR
ROM:0000D828                 mov.w   @r10, r10
ROM:0000D82A                 or      r0, r10
ROM:0000D82C                 mov.l   @(h'1F4,pc), r11 ; [0000DA24] = DSTR
ROM:0000D82E                 mov.w   r10, @r11
ROM:0000D830
ROM:0000D830 loc_D830:                               ; CODE XREF: sub_D7B8+66j
ROM:0000D830                 extu.w  r2, r0
ROM:0000D832                 tst     #h'10, r0
ROM:0000D834                 bt      loc_D846
ROM:0000D836                 mov.l   @(h'1DC,pc), r10 ; [0000DA14] = DCNT8O
ROM:0000D838                 mov.w   r13, @r10
ROM:0000D83A                 mov.w   @(h'1BA,pc), r0 ; [0000D9F8] = h'4000
ROM:0000D83C                 mov.l   @(h'1E4,pc), r10 ; [0000DA24] = DSTR
ROM:0000D83E                 mov.w   @r10, r10
ROM:0000D840                 or      r0, r10
ROM:0000D842                 mov.l   @(h'1E0,pc), r11 ; [0000DA24] = DSTR
ROM:0000D844                 mov.w   r10, @r11
ROM:0000D846
ROM:0000D846 loc_D846:                               ; CODE XREF: sub_D7B8+7Cj
ROM:0000D846                 extu.w  r2, r0
ROM:0000D848                 tst     #h'20, r0
ROM:0000D84A                 bt      loc_D85C
ROM:0000D84C                 mov.l   @(h'1C8,pc), r10 ; [0000DA18] = DCNT8P
ROM:0000D84E                 mov.w   r13, @r10
ROM:0000D850                 mov.w   @(h'1A6,pc), r0 ; [0000D9FA] = h'FFFF8000
ROM:0000D852                 mov.l   @(h'1D0,pc), r10 ; [0000DA24] = DSTR
ROM:0000D854                 mov.w   @r10, r10
ROM:0000D856                 or      r0, r10
ROM:0000D858                 mov.l   @(h'1C8,pc), r11 ; [0000DA24] = DSTR
ROM:0000D85A                 mov.w   r10, @r11
ROM:0000D85C
ROM:0000D85C loc_D85C:                               ; CODE XREF: sub_D7B8+1Aj
ROM:0000D85C                                         ; sub_D7B8+92j
ROM:0000D85C                 mov.l   @(h'1D0,pc), r10 ; [0000DA30] = int_enable
ROM:0000D85E                 jsr     @r10 ; int_enable
ROM:0000D860                 nop
ROM:0000D862                 mov.l   @r15+, r2
ROM:0000D864                 mov.l   @r15+, r1
ROM:0000D866                 mov.l   @r15+, r14
ROM:0000D868                 lds.l   @r15+, pr
ROM:0000D86A                 rts
ROM:0000D86C                 nop
ROM:0000D86C ; End of function sub_D7B8
Found it through the MUT DA-DD disable commands (thanks acamus). In there DA is subtracted from the request ID and a mask of 1,2,4,8 is looked up. This gets pushed around inside the rabbit hole until it finds the above routine

Just found it, will think about the implications. I wonder what we could do with this... 8 injectors, individual fuel trim, must not get carried away. I know it is not a V6, but the 0x10 and 0x20 mask are there just in case
Old Apr 21, 2009, 02:44 PM
  #2  
Evolved Member
 
Mattjin's Avatar
 
Join Date: Apr 2008
Location: Sydney, Australia
Posts: 604
Likes: 0
Received 0 Likes on 0 Posts
You could always verify it with the V6 roms. I have been pulling apart a Ralliart Magna 3.5L rom lately.

I am pretty sure most of the ECU's have the two injector pins spare. I know mine does! Maybe the code could be done to stage extra injectors..... so a built in extra injector controller. Getting carried away here too.... :-)
Old Apr 21, 2009, 04:37 PM
  #3  
Evolved Member
iTrader: (5)
 
THUB's Avatar
 
Join Date: Jun 2007
Location: Lombard IL
Posts: 552
Likes: 0
Received 0 Likes on 0 Posts
Im actually a big fan of times when genious is allowed to get carried away. I'll be lurking... having little or no idea what I'm looking at.
Old Apr 22, 2009, 09:33 AM
  #4  
EvoM Community Team
iTrader: (15)
 
fostytou's Avatar
 
Join Date: Sep 2006
Location: Aurora, IL
Posts: 3,143
Received 6 Likes on 6 Posts
Originally Posted by Mattjin
You could always verify it with the V6 roms. I have been pulling apart a Ralliart Magna 3.5L rom lately.

I am pretty sure most of the ECU's have the two injector pins spare. I know mine does! Maybe the code could be done to stage extra injectors..... so a built in extra injector controller. Getting carried away here too.... :-)
Injector based methanol injection? I've had a pipe dream about a secondary methanol fuel system since I got rid of my DSM.
Old Apr 22, 2009, 12:07 PM
  #5  
Evolving Member
iTrader: (1)
 
evodood's Avatar
 
Join Date: Jan 2007
Location: cali
Posts: 247
Likes: 0
Received 0 Likes on 0 Posts
I don't understand this. Does this "injector time" have anything to do with the injector latencies?
Old Apr 22, 2009, 12:26 PM
  #6  
Evolved Member
Thread Starter
 
jcsbanks's Avatar
 
Join Date: May 2006
Location: UK
Posts: 2,399
Likes: 0
Received 5 Likes on 4 Posts
The latencies are added before this routine is called which actually sends the pulse to the injectors.
Old Apr 22, 2009, 09:46 PM
  #7  
Evolved Member
 
acamus's Avatar
 
Join Date: Mar 2008
Location: Lattitude 48.38°, Longitude 17.58°, Altitude 146m = Slovakia, for common dude
Posts: 730
Likes: 0
Received 2 Likes on 2 Posts
What ROM ID is the code excerpt from?
Old Apr 23, 2009, 02:22 AM
  #8  
Evolved Member
Thread Starter
 
jcsbanks's Avatar
 
Join Date: May 2006
Location: UK
Posts: 2,399
Likes: 0
Received 5 Likes on 4 Posts
88570008.
Old Apr 23, 2009, 05:42 AM
  #9  
Evolved Member
iTrader: (9)
 
C6C6CH3vo's Avatar
 
Join Date: Feb 2005
Location: sc
Posts: 4,223
Likes: 0
Received 4 Likes on 4 Posts
J Banks is actually Dr. Hrishimotto Naggsuzuki, from Mitsu Heavy, EFI. Just kidding.

I see potential independant cyl fuel managment. This would ideal in conjunction with four WBO2 sensors (which can be plumbed prior to turbine without excessive pressure).
Old Apr 23, 2009, 07:25 AM
  #10  
Evolved Member
Thread Starter
 
jcsbanks's Avatar
 
Join Date: May 2006
Location: UK
Posts: 2,399
Likes: 0
Received 5 Likes on 4 Posts
Well the Dr bit is right

Trouble with WBO2 sensors is they are so huge sitting in our runners. Maybe 4 EGT probes would be better?
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
mrfred
ECU Flash
316
Apr 24, 2016 10:24 AM
rrstlevo
Project Cars / Build Threads
109
Mar 25, 2016 12:06 PM
jcsbanks
ECU Flash
64
Sep 19, 2009 01:34 PM
DangerousDan
04-06 Lancer Ralliart How To Requests / Questions / Tips
43
Sep 14, 2008 05:58 PM
jcsbanks
ECU Flash
20
Feb 14, 2007 09:48 AM


Thread Tools
Search this Thread
Quick Reply: Found: code that transfers injector times to the hardware



All times are GMT -7. The time now is 06:26 PM.