Ok and what line does blends out the injection?
ode:00008610 ; =============== S U B R O U T I N E ======================================= code:00008610 code:00008610 code:00008610 Motorsport_Features_Code: ; CODE XREF: MAP_Sensor_Read:Jmp_M_Sprt_Code↑p code:00008610 code:00008610 ; FUNCTION CHUNK AT code:0000866C SIZE 0000000C BYTES code:00008610 code:00008610 C0 82 push DPL ; Data Pointer, Low Byte code:00008612 C0 83 push DPH ; Data Pointer, High Byte code:00008614 E5 3A mov A, RAM_RPM_1 ; Move (Op1 <- Op2) code:00008616 code:00008616 Hard_RPM_Limit: ; Spark Cut RPM Limit code:00008616 B4 C8 00 cjne A, #0xC8, code_8619 code:00008619 code:00008619 code_8619: ; CODE XREF: Motorsport_Features_Code:Hard_RPM_Limit↑j code:00008619 50 26 jnc NLS_Limiter_Crank_Angle ; -If at RPM limit go to mod crank angle code:00008619 ; -If below RPM limit go to launch control code code:0000861B code:0000861B W_Speed_LC: ; Speed for launch control code:0000861B 90 01 70 mov DPTR, #0x170 ; Speed in 2 km/h code:0000861B ; XRAM=XVMESS code:0000861E E0 movx A, @DPTR ; Move from/to external RAM code:0000861F B4 02 0C cjne A, #2, code_862E ; -If below wheel speed go to launch control code:0000861F ; -If above wheel speed go to NLS code code:00008622 80 48 sjmp LC_Ign_Cut_RPM ; Short jump code:00008624 ; --------------------------------------------------------------------------- code:00008624 code:00008624 code_8624: ; CODE XREF: Motorsport_Features_Code+66↓j code:00008624 B4 71 00 cjne A, #0x71, code_8627 ; 'q' ; Launch control IGN retard RPM code:00008627 code:00008627 code_8627: ; CODE XREF: Motorsport_Features_Code:code_8624↑j code:00008627 40 1B jc code_8644 ; Jump if Carry is set code:00008629 code:00008629 LC_Ign_Deg: ; Launch control IGN angle code:00008629 75 53 29 mov ZWOUT, #0x29 ; ')' code:0000862C 80 16 sjmp code_8644 ; Short jump code:0000862E ; --------------------------------------------------------------------------- code:0000862E code:0000862E code_862E: ; CODE XREF: Motorsport_Features_Code+F↑j code:0000862E E5 D9 mov A, ADDAT ; If ECU pin 39 is supplied with 12v go to NLS code. code:00008630 B4 FF 11 cjne A, #0xFF, code_8644 ; Compare Operands and JNE code:00008633 78 EC mov R0, #0xEC ; Move (Op1 <- Op2) code:00008635 code:00008635 NLS_Min_TPS: ; min TPS for NLS code:00008635 B6 C0 00 cjne @R0, #0xC0, code_8638 code:00008638 code:00008638 code_8638: ; CODE XREF: Motorsport_Features_Code:NLS_Min_TPS↑j code:00008638 40 0A jc code_8644 ; -If below this TPS % go to normal operation code:00008638 ; -If above go to NLS RPM compare code:0000863A E5 3A mov A, RAM_RPM_1 ; Move (Op1 <- Op2) code:0000863C code:0000863C NLS_MIN_RPM: ; min RPM for NLS code:0000863C B4 C8 00 cjne A, #0xC8, code_863F code:0000863F code:0000863F code_863F: ; CODE XREF: Motorsport_Features_Code:NLS_MIN_RPM↑j code:0000863F 40 03 jc code_8644 ; -If below this RPM go to normal operation code:0000863F ; -If above this ROM go to crank angle Degree (spark cut) code:00008641 code:00008641 NLS_Limiter_Crank_Angle: ; CODE XREF: Motorsport_Features_Code:code_8619↑j code:00008641 ; Motorsport_Features_Code:code_8674↓j code:00008641 75 53 52 mov ZWOUT, #0x52 ; 'R' ; IGN angle for NLS/Spark revlimit code:00008644 code:00008644 code_8644: ; CODE XREF: Motorsport_Features_Code:code_8627↑j code:00008644 ; Motorsport_Features_Code+1C↑j ... code:00008644 30 FC 0F jnb P5.4, code_8656 ; Jump if no knock detected. If knock detected go to RPM check. code:00008644 ; -Knock signal from Boost processor code:00008647 50 0B jnc code_8654 ; Jump if Carry is clear code:00008649 E5 3A mov A, RAM_RPM_1 ; Move (Op1 <- Op2) code:0000864B code:0000864B Spark_Cut_Knock_Dis: ; Spark Cut RPM Limit with knock disable code:0000864B B4 B1 00 cjne A, #0xB1, code_864E code:0000864E code:0000864E code_864E: ; CODE XREF: Motorsport_Features_Code:Spark_Cut_Knock_Dis↑j code:0000864E 50 04 jnc code_8654 ; -If above this RPM knock control is disabled code:0000864E ; -If below this RPM knock control is enabled code:00008650 C2 EF clr P4.7 ; Knock disable is sent to boost processor code:00008652 80 02 sjmp code_8656 ; Short jump code:00008654 ; --------------------------------------------------------------------------- code:00008654 code:00008654 code_8654: ; CODE XREF: Motorsport_Features_Code+37↑j code:00008654 ; Motorsport_Features_Code:code_864E↑j code:00008654 D2 EF setb P4.7 ; Knock enable is sent to boost processor. code:00008656 code:00008656 code_8656: ; CODE XREF: Motorsport_Features_Code:code_8644↑j code:00008656 ; Motorsport_Features_Code+42↑j code:00008656 C3 clr C ; Clear Operand (0) code:00008657 E5 53 mov A, ZWOUT ; Move (Op1 <- Op2) code:00008659 95 58 subb A, SW ; Subtract Second Operand from Acc with Borrow code:0000865B D0 83 pop DPH ; Data Pointer, High Byte code:0000865D D0 82 pop DPL ; Data Pointer, Low Byte code:0000865F 22 ret ; Return from subroutine code:0000865F ; End of function Motorsport_Features_Code code:0000865F code:0000866C ; --------------------------------------------------------------------------- code:0000866C ; START OF FUNCTION CHUNK FOR Motorsport_Features_Code code:0000866C code:0000866C LC_Ign_Cut_RPM: ; CODE XREF: Motorsport_Features_Code+12↑j code:0000866C 75 F0 B4 mov B, #0xB4 ; Launch control IGN cut RPM code:0000866F E5 3A mov A, RAM_RPM_1 ; Move (Op1 <- Op2) code:00008671 B5 F0 00 cjne A, B, code_8674 ; B-Register code:00008674 code:00008674 code_8674: ; CODE XREF: Motorsport_Features_Code+61↑j code:00008674 50 CB jnc NLS_Limiter_Crank_Angle ; Jump if Carry is clear code:00008676 80 AC sjmp code_8624 ; Short jump code:00008676 ; END OF FUNCTION CHUNK FOR Motorsport_Features_Code code:00008676 ; ---------------------------------------------------------------------------
)))))

de:00007E70 ; --------------------------------------------------------------------------- code:00007E70 This is soft launch control. (Fuel Cut) code:00007E70 To enable change 74 0A 93 at 0x399F to 02 7E 70. code:00007E70 code:00007E70 Soft_Launch_Control_Code: ; Wheel speed signal from X-ram 0x0170 code:00007E70 75 A0 01 mov P2, #1 code:00007E73 78 70 mov R0, #0x70 ; 'p' ; Move (Op1 <- Op2) code:00007E75 E2 movx A, @R0 ; Move from/to external RAM code:00007E76 75 A0 04 mov P2, #4 ; Slimming factor from FNMXTL 0x041A code:00007E79 78 1A mov R0, #0x1A ; Move (Op1 <- Op2) code:00007E7B B4 02 19 cjne A, #2, code_7E97 ; Speed for launch control #2 code:00007E7E E5 39 mov A, EGR_Temp ; Move (Op1 <- Op2) code:00007E80 75 F0 0A mov B, #0xA ; B-Register code:00007E83 A4 mul AB ; Multiply Acc by B code:00007E84 FB mov R3, A ; Move (Op1 <- Op2) code:00007E85 AA F0 mov R2, B ; B-Register code:00007E87 74 40 mov A, #0x40 ; '@' ; Move (Op1 <- Op2) code:00007E89 9B subb A, R3 ; Subtract Second Operand from Acc with Borrow code:00007E8A FB mov R3, A ; Move (Op1 <- Op2) code:00007E8B 74 0D mov A, #0xD ; Move (Op1 <- Op2) code:00007E8D 9A subb A, R2 ; Subtract Second Operand from Acc with Borrow code:00007E8E FA mov R2, A ; Move (Op1 <- Op2) code:00007E8F 08 inc R0 ; Increment Operand code:00007E90 F2 movx @R0, A ; Move from/to external RAM code:00007E91 08 inc R0 ; Increment Operand code:00007E92 EB mov A, R3 ; Move (Op1 <- Op2) code:00007E93 F2 movx @R0, A ; Move from/to external RAM code:00007E94 02 39 AB ljmp code_39AB ; Long Jump code:00007E97 ; --------------------------------------------------------------------------- code:00007E97 code:00007E97 code_7E97: ; CODE XREF: code:00007E7B↑j code:00007E97 74 0A mov A, #0xA ; Move (Op1 <- Op2) code:00007E99 93 movc A, @A+DPTR ; Move code byte relative to second op to Acc code:00007E9A 02 39 A2 ljmp code_39A2 ; Long Jump code:00007E9A ; ---------------------------------------------------------------------------
code:0000860A 09 AA Soft_LC_RPM: .word 0x9AA
that is the "hidden" code, but I'm curious how this code reflect fuel cut limit at 0x860A? 



... he give as example how to use stock fuel cut procedure. He give example by calculation. and if you know values there is no problem to use it. But main from this is that there is no need to write new procedure, we can use stock one and change values for RPM limit to new values, depending on our needs.
code:00007E70 ; --------------------------------------------------------------------------- code:00007E70 ; START OF FUNCTION CHUNK FOR code_2130 code:00007E70 code:00007E70 Soft_Launch_Control: ; CODE XREF: code_2130+186F↑j code:00007E70 75 A0 01 mov P2, #1 ; Port 2 code:00007E73 78 70 mov R0, #0x70 ; 'p' ; Move (Op1 <- Op2) code:00007E75 E2 movx A, @R0 ; Move from/to external RAM code:00007E76 75 A0 04 mov P2, #4 ; Port 2 code:00007E79 78 1A mov R0, #0x1A ; Move (Op1 <- Op2) code:00007E7B B4 03 00 cjne A, #3, code_7E7E ; Compare Operands and JNE code:00007E7E code:00007E7E code_7E7E: ; CODE XREF: code_2130+5D4B↑j code:00007E7E 50 03 jnc code_7E83 ; Jump if Carry is clear code:00007E80 90 86 00 mov DPTR, #0x8600 ; Move (Op1 <- Op2) code:00007E83 code:00007E83 code_7E83: ; CODE XREF: code_2130:code_7E7E↑j code:00007E83 74 0A mov A, #0xA ; Move (Op1 <- Op2) code:00007E85 93 movc A, @A+DPTR ; Move code byte relative to second op to Acc code:00007E86 FA mov R2, A ; Move (Op1 <- Op2) code:00007E87 08 inc R0 ; Increment Operand code:00007E88 F2 movx @R0, A ; Move from/to external RAM code:00007E89 74 0B mov A, #0xB ; Move (Op1 <- Op2) code:00007E8B 93 movc A, @A+DPTR ; Move code byte relative to second op to Acc code:00007E8C FB mov R3, A ; Move (Op1 <- Op2) code:00007E8D 08 inc R0 ; Increment Operand code:00007E8E F2 movx @R0, A ; Move from/to external RAM code:00007E8F 50 03 jnc code_7E94 ; Jump if Carry is clear code:00007E91 90 83 8B mov DPTR, #0x838B ; Move (Op1 <- Op2) code:00007E94 code:00007E94 code_7E94: ; CODE XREF: code_2130+5D5F↑j code:00007E94 02 39 AB ljmp code_39AB ; Long Jump code:00007E94 ; END OF FUNCTION CHUNK FOR code_2130 code:00007E94 ; ---------------------------------------------------------------------------
code:0000399F 02 7E 70 ljmp Soft_Launch_Control ; Long Jump
This version does the same like other version and Yes it reflect fuel cut limit at 0x860A, but still don't have flat shifting RPM limit. Little more logic is needed. Do not hurry so much with the ready decisions, they are for certain needs, but they do not solve everything. If we want LC and flat shifting fuel cut limit we must adjust a little bit this ready solutions.


We process personal data about users of our site, through the use of cookies and other technologies, to deliver our services, personalize advertising, and to analyze site activity. We may share certain information about our users with our advertising and analytics partners. For additional details, refer to our Privacy Policy.
By clicking "I AGREE" below, you agree to our Privacy Policy and our personal data processing and cookie practices as described therein. You also acknowledge that this forum may be hosted outside your country and you consent to the collection, storage, and processing of your data in the country where this forum is hosted.
Comment