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)
-   -   D00C lc/ffs? (https://www.ft86club.com/forums/showthread.php?t=91400)

Wayno 07-14-2015 01:44 AM

Isolating the code would be easy. Just take an OFT A01G rom, copy any different tables from a stock A01G to the OFT rom, then compare the two.

Adding handles to the code and finding room for it in the new format roms would be the problem. If it was easy they would have done it as part of releasing the OTS D00 roms.

ztan 07-14-2015 02:31 AM

Quote:

Originally Posted by Wayno (Post 2320320)
Isolating the code would be easy. Just take an OFT A01G rom, copy any different tables from a stock A01G to the OFT rom, then compare the two.

Adding handles to the code and finding room for it in the new format roms would be the problem. If it was easy they would have done it as part of releasing the OTS D00 roms.

The hook for Launch Control in A01G is at 066344:

Original A01G:
Code:

ROM:00066344                mov.l  #flt_10C524, r6 ; Loads value at 664a4 (10c524) into r6
ROM:00066344                                        ; 0664a4 hook for lc/ffs
ROM:00066346                fmov.s  @r6, fr8        ; Loads value at r6 (7450) into fr8

OFT:
Code:

ROM:00066344                mov.l  off_664A4, r2 ; loc_BAD00 ; Loads value at 664a4 (0bad00) into r6
ROM:00066346                jsr/n  @R2            ; Jumps to new subroutine at 0BAD00
ROM:00066346                                        ; Rev limit returned in fr8

0BAD00 lookup revlimit for LC:
Code:

ROM:000BAD00 loc_BAD00:                              ; DATA XREF: ROM:00066344o
ROM:000BAD00                                        ; ROM:off_664A4o
ROM:000BAD00                mov.l  @(h'3C,pc), r0  ; Move Immediate Long Data
ROM:000BAD02                fmov.s  @r0, fr9        ; Floating-point move single precision
ROM:000BAD04                mova    flt_BAD50, r0  ; Move Effective Address
ROM:000BAD06                fmov.s  @r0, fr8        ; Floating-point move single precision
ROM:000BAD08                mov.l  @(h'38,pc), r0  ; Move Immediate Long Data
ROM:000BAD0A                mov.b  @r0, r0        ; Move Byte Data
ROM:000BAD0C                cmp/eq  #1, r0          ; Compare: Equal
ROM:000BAD0E                bf/s    loc_BAD1E      ; Branch of False with Delay Slot
ROM:000BAD10                nop                    ; No Operation
ROM:000BAD12                fcmp/gt fr9, fr8        ; Floating-point compare greater than
ROM:000BAD14                bt/s    loc_BAD24      ; Branch if True with Delay Slot
ROM:000BAD16                nop                    ; No Operation
ROM:000BAD18                mova    off_BAD58, r0  ; Move Effective Address
ROM:000BAD1A                bra    loc_BAD2C      ; Branch
ROM:000BAD1C                nop                    ; No Operation
ROM:000BAD1E ; ---------------------------------------------------------------------------
ROM:000BAD1E
ROM:000BAD1E loc_BAD1E:                              ; CODE XREF: ROM:000BAD0Ej
ROM:000BAD1E                fcmp/gt fr8, fr9        ; Floating-point compare greater than
ROM:000BAD20                bt/s    loc_BAD2A      ; Branch if True with Delay Slot
ROM:000BAD22                nop                    ; No Operation
ROM:000BAD24
ROM:000BAD24 loc_BAD24:                              ; CODE XREF: ROM:000BAD14j
ROM:000BAD24                mova    flt_BAD54, r0  ; Move Effective Address
ROM:000BAD26                bra    loc_BAD2C      ; Branch
ROM:000BAD28                nop                    ; No Operation
ROM:000BAD2A ; ---------------------------------------------------------------------------
ROM:000BAD2A
ROM:000BAD2A loc_BAD2A:                              ; CODE XREF: ROM:000BAD20j
ROM:000BAD2A                mova    off_BAD4C, r0 ; byte_0 ; Move Effective Address
ROM:000BAD2C
ROM:000BAD2C loc_BAD2C:                              ; CODE XREF: ROM:000BAD1Aj
ROM:000BAD2C                                        ; ROM:000BAD26j
ROM:000BAD2C                fmov.s  @r0, fr8        ; Floating-point move single precision
ROM:000BAD2E                fadd    fr8, fr14      ; Floating-point add
ROM:000BAD30                mov.l  @(dword_14,pc), r6 ; Move Immediate Long Data
ROM:000BAD32                fmov.s  @r6, fr8        ; Floating-point move single precision
ROM:000BAD34                rts/n                  ; Return from Subroutine with No delay slot
ROM:000BAD36 ; ---------------------------------------------------------------------------
ROM:000BAD36                nop                    ; No Operation
ROM:000BAD38                nop                    ; No Operation
ROM:000BAD3A                nop                    ; No Operation
ROM:000BAD3C                nop                    ; No Operation
ROM:000BAD3E                nop                    ; No Operation
ROM:000BAD3E ; ---------------------------------------------------------------------------
ROM:000BAD40                .data.l RAM_VEH_Speed
ROM:000BAD44                .data.l unk_FFF8939B
ROM:000BAD48                .data.l flt_10C524      ; Rev limiter ref
ROM:000BAD4C off_BAD4C:      .data.l byte_0          ; DATA XREF: ROM:loc_BAD2Ao
ROM:000BAD50 flt_BAD50:      .float 10.0            ; DATA XREF: ROM:000BAD04o
ROM:000BAD54 flt_BAD54:      .float 2000.0          ; DATA XREF: ROM:loc_BAD24o
ROM:000BAD58 off_BAD58:      .float byte_0          ; DATA XREF: ROM:000BAD18o



All times are GMT -4. The time now is 07:31 PM.

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


Garage vBulletin Plugins by Drive Thru Online, Inc.