Results 1 to 15 of 511

Thread: Corvette CCM Reverse Engineering Anyone?

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #11
    LT1 specialist steveo's Avatar
    Join Date
    Aug 2013
    Posts
    4,041
    i wrote this sub as a better way of accomplishing a series of single byte modifications to the EEPROM with minimal aldl overhead

    after this sub is in ram each instruction from flashhack need only contain: JMP subroutine_address value address

    it adheres to the standards of the datasheet - erase, delay 10 ms, write, delay 10 ms, compare, and loops if the write is incorrect

    i wrote it to be relocatable with no extended addressing except for the static upload addresses (first few lines) so should work for EE, the CCM, or any 68hcwhatever with onboard eeprom.

    .. it's also only 43 bytes so can be easily uploaded in a single mode 6 command

    Code:
            ; LOAD CONFIG:
    3C      ; PSHX  - save existing X register
    B6 $value_storage_loc ; LDAA xxxx - load value to program into A
    FE $address_storage_loc ; LDX xxxx - load eeprom offset to program into X
    
            ; ERASE:
    C6 16   ; LDAB 0x16 - program mode ELAT/BYTE/ERASE
    8D 0A   ; BSR +10  - call program subroutine
    
            ; PROGRAM:
    C6 16   ; LDAB 0x02 - program mode ELAT
    8D 06   ; BSR +6  - call program subroutine
    
            ; VERIFY:
    A1 00   ; CMPA,X - compare A (value) with memory at X (destination)
    26 F4   ; BNE -12 (to ERASE) if compare fails.
    
            ; COMPLETE:
    38      ; PULX  - restore X register
    39      ; RTS return
            
            ; PROGRAM (start subroutine)
    F7 103B ; STAB 0x103B  - set eeprom control register from B
    A7 00   ; STAA,x  - store A (value) at X (location) (write byte)
    CA 01   ; ORA 0x01 - set EPGM (bit 1) in B
    F7 103B ; STAB 0x103B  - set eeprom control register from B
    
            ; DELAY
    3C      ; PSHX - save X register
    CE 0D06 ; LDX 0xD06 - loop total exec time approx 10ms @ 2mhz clock (6 cycles in loop)
    09      ; DEX  - x--
    26 FD   ; BNE -3 > 0
    38      ; PULX  - restore X register
            ; COMPLETE
    7F 013B ; CLR eeprom control register
    
    39      ; RTS return
            ; PROGRAM (end subroutine)

Similar Threads

  1. car bogs down when switching into reverse/D
    By CAMMED LT1 in forum GM EFI Systems
    Replies: 4
    Last Post: 09-27-2021, 12:34 AM
  2. 12212156 code reverse engineering project in Ghidra
    By dzidaV8 in forum OBDII Tuning
    Replies: 8
    Last Post: 01-13-2020, 11:04 AM
  3. Help!! 93 Lt1 6M Reverse lockout
    By noeysuarez in forum GM EFI Systems
    Replies: 3
    Last Post: 09-14-2017, 08:17 AM
  4. 4l60e reverse boost valve location and procedure
    By JTodd in forum Introductions
    Replies: 1
    Last Post: 04-19-2013, 01:20 AM
  5. T56 reverse lockout options with TBI PCM
    By CDeeZ in forum GM EFI Systems
    Replies: 1
    Last Post: 02-26-2013, 05:06 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •