Statistics: Posted by marantz2600 — Wed Feb 28, 2024 2:58 am
Statistics: Posted by marantz2600 — Wed Feb 28, 2024 2:45 am
Statistics: Posted by antus — Mon Feb 26, 2024 9:00 pm
Code:
$ ./dj1850.py vspeed.log 88291002344DFFPCM: Vehicle Speed-- STATUSVehicle Speed = 104.6015625 KPH$ ./dj1850.py rpm-and-map.log 101CD317D33AB9Engine RPM-Speed-MAPRPM = 1844.75Vehicle Speed = 47.6484375 KPH Engine RPM-Speed-MAP = 58$ cat rpm-and-map.log 10 1C D3 17 D3 3A B9 $ cat vspeed.log 88 29 10 02 34 4D FF
Statistics: Posted by marantz2600 — Sat Feb 24, 2024 12:27 pm
Statistics: Posted by jakka — Mon Feb 12, 2024 1:32 am
Statistics: Posted by jakka — Sun Feb 11, 2024 7:24 pm
Statistics: Posted by Tre-Cool — Sun Jan 14, 2024 1:12 pm
Statistics: Posted by ben_att — Sat Jan 13, 2024 7:30 pm
Statistics: Posted by Tre-Cool — Tue Dec 26, 2023 3:05 pm
Statistics: Posted by Gampy — Mon Nov 27, 2023 8:15 pm
Statistics: Posted by Gampy — Wed Nov 22, 2023 4:40 pm
Statistics: Posted by Gampy — Wed Nov 22, 2023 3:57 pm
Statistics: Posted by antus — Wed Nov 22, 2023 2:48 pm
Statistics: Posted by ProfessWRX — Wed Nov 22, 2023 2:22 pm
There are notes about what changed and why in the commits on the branch, but in general we're tracking what works, not what does not.Ah I thought there was a record of breaks and builds you guys kept.
Statistics: Posted by antus — Thu Nov 16, 2023 7:46 am
Code:
| =============== S U B R O U T I N E =======================================|| Intel Flash Unlock| Tested on, | AB28F400B (512k)| AB28F800B (1m)|| Uses| d1 - Scratch|IntelFlashUnlock:#if defined P08 move.w #0x0F, (REG_FFF408).w | Hardware Setup move.w #0x05, (REG_FFF4C8).w | Hardware Setup#endif move.w #0x0007, (SIM_CSBARBT).w | $FFFFFA48 move.w #0x6820, (SIM_CSORBT).w | $FFFFFA4A move.w #0x0007, (SIM_CSBAR0).w | $FFFFFA4C | Unlock move.w #0x7060, (SIM_CSOR0).w | $FFFFFA4E | Enable +12v Vpp#if defined P08 bset #VPP_BIT, (HARDWARE_IO).w | Does not work on P01, needed for P08#else move.w (HARDWARE_IO).w, %d1 | Move Vpp Latch Address value to register bset #VPP_BIT, %d1 | Set Vpp Latch Bit move.w %d1, (HARDWARE_IO).w | Move modified value back to Latch Address#endif move.w #32767, %d1 | 32768 loopsIntelFlashUnlockWait: | Allow Vpp ripple to settle bsr.w ResetWatchdog | Scratch the dog bsr.w WasteTime | Twiddle thumbs dbf %d1, IntelFlashUnlockWait | If False Decrement and Branch nop | This nop is for P04 sizing/alignment <<<<<<<<<<<<<<<<<<<<<<<<<<<<< IT WORKS WITH IT HERE rts| =============== S U B R O U T I N E =======================================|| Intel Flash Lock| Tested on,| AB28F400B (512k)| AB28F800B (1m)|| Uses| d1 - Scratch|IntelFlashLock: move.w #0x0007, (SIM_CSBARBT).w | $FFFFFA48 move.w #0x6820, (SIM_CSORBT).w | $FFFFFA4A move.w #0x0007, (SIM_CSBAR0).w | $FFFFFA4C | Lock move.w #0x1060, (SIM_CSOR0).w | $FFFFFA4E | Disable +12v Vpp#if defined P08 bclr #VPP_BIT, (HARDWARE_IO).w | Does not work on P01, needed for P08#else move.w (HARDWARE_IO).w, %d1 | Move Vpp Latch Address value to register bclr #VPP_BIT, %d1 | Set Vpp Latch Bit move.w %d1, (HARDWARE_IO).w | Move modified value back to Latch Address#endif rts| =============== S U B R O U T I N E =======================================|| Intel Flash Erase Sector by Address| Tested on,| AB28F400B (512k)| AB28F800B (1m)|| Entry| a0 - Sector Address to Erase|| Exit| d0 - Status 0=Ok, 1=Fail|| Uses| d1 - Scratch| d2 - Loop Index|IntelEraseSector: bsr.w IntelFlashUnlock | nop | This nop is for P04 sizing/alignment <<<<<<<<<<<<<<<<<<<<<<<<<<<<< IT FAILS WITH IT HERE move.w #CLEAR_STATUS_REGISTER, (%a0) | 0x5050 Clear State Machine Status Register move.w #INTEL_ERASE_CMD, (%a0) | 0x2020 Set State Machine into Erase Mode move.w #ERASE_RESUME_CONFIRM, (%a0) | 0xD0D0 Confirm Command Erase - Start Erase move.w #READ_STATUS_REGISTER, (%a0) | 0x7070 Set State Machine into Read Status Mode, until commanded otherwise, see below move.l #6553600, %d2 | Erase Loop Timeout index, run away prevention, leave big, allow each PCM to respond in it's own timeIntelEraseSectorNotReady: bsr.w ResetWatchdog | Scratch the dog move.w (%a0), %d1 | Move State Machine Status to register, it is still in Read Status Mode btst #0x007, %d1 | Test Status - If bit 7 is set, it is Ready (done). bne.s IntelEraseSectorReady | Status Success - Jump to IntelEraseSectorReady subq.l #1, %d2 | Decrement index bne.s IntelEraseSectorNotReady | Fail Status Check, Test again moveq #2, %d0 | Set Error Code 2 = Timeout error cmpi #0, %d2 | Did Timeout occure ? beq.s IntelEraseSectorDone | Yes, Done, FailureIntelEraseSectorReady: moveq #0, %d0 | Set Success (if Status passes) andi.w #0x0E8, %d1 | Mask 1110 1000 cmp.w #0x080, %d1 | Check status beq.s IntelEraseSectorDone | Pass ?, Done, Success moveq #1, %d0 | Set FailureIntelEraseSectorDone: move.w #READ_ARRAY_CMD, (%a0) | 0xFFFF Take State Machine out of Read Status Mode move.w #READ_ARRAY_CMD, (%a0) | 0xFFFF Return to Normal Read Array mode bsr.w IntelFlashLock rts
Statistics: Posted by Gampy — Thu Nov 16, 2023 1:04 am
Statistics: Posted by antus — Wed Nov 15, 2023 4:42 pm
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 3:38 pm
Statistics: Posted by Gampy — Wed Nov 15, 2023 3:01 pm
Statistics: Posted by antus — Wed Nov 15, 2023 2:54 pm
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 2:42 pm
Code:
ROM:0000006E cmpi.w #$3D03,d0 ; Compare ImmediateROM:00000072 beq.w sProcessOSID ; Branch if EqualROM:00000076 cmpi.w #$3D05,d0 ; Compare ImmediateROM:0000007A beq.w sProcessEraseSector ; Branch if EqualROM:0000007E lsr.w #8,d0 ; Logical Shift RightROM:00000080 cmpi.b #$34,d0 ; '4' ; Compare ImmediateROM:00000084 beq.w sProcessMode34 ; Branch if EqualROM:00000088 cmpi.b #$35,d0 ; '5' ; Compare ImmediateROM:0000008C beq.w sProcessMode35 ; Branch if EqualROM:00000090 cmpi.b #$36,d0 ; '6' ; Compare ImmediateROM:00000090 ; ---------------------------------------------------------------------------ROM:00000094 dc.b $67ROM:00000095 dc.b $FFROM:00000096 dc.b 0 <-----------Something's wrong with this.ROM:00000097 dc.b 0ROM:00000098 dc.b 4ROM:00000099 dc.b $56 ; VROM:0000009A ; ---------------------------------------------------------------------------ROM:0000009A cmpi.b #$20,d0 ; ' ' ; Compare ImmediateROM:0000009E bne.s sMainLoop ; Branch if Not EqualROM:000000A0 movea.l #unk_FF8796,a0 ; Move AddressROM:000000A6 move.w #4,d0 ; Move Data from Source to DestinationROM:000000AA bsr.w sVPW_Send ; Branch to SubroutineROM:000000AE bsr.w sWasteTime ; Branch to SubroutineROM:000000B2 reset ; Reset External DevicesROM:000000B4
Code:
cmpi.b #Mode_36, %d0 | Is it mode 0x36 (Tool sending data to write, either to RAM or Flash) beq.l ProcessMode36 | Process it cmpi.b #Halt_20, %d0 | Is it mode 0x20 (return to normal comms)
Statistics: Posted by Gampy — Wed Nov 15, 2023 2:29 pm
Code:
RAM:00FF8036 loc_FF8036: ; CODE XREF: RAM:00FF80A2↓jRAM:00FF8036 ; RAM:00FF80F2↓j ...RAM:00FF8036 13FC 0000 00FF B3A9 move.b #0,(byte_FFB3A9).lRAM:00FF803E 6100 007A bsr.w sub_FF80BARAM:00FF8042 6100 05E2 bsr.w sub_FF8626RAM:00FF8046 6100 008C bsr.w sub_FF80D4RAM:00FF804A 7000 moveq #0,d0RAM:00FF804C 1039 00FF B3A9 move.b (byte_FFB3A9).l,d0RAM:00FF8052 E188 lsl.l #8,d0RAM:00FF8054 1039 00FF B3AA move.b (byte_FFB3AA).l,d0RAM:00FF805A 0C40 3D00 cmpi.w #$3D00,d0RAM:00FF805E 6700 007E beq.w loc_FF80DERAM:00FF8062 0C40 3D01 cmpi.w #$3D01,d0RAM:00FF8066 6700 015A beq.w loc_FF81C2RAM:00FF806A 0C40 3D02 cmpi.w #$3D02,d0RAM:00FF806E 6700 00BE beq.w loc_FF812ERAM:00FF8072 0C40 3D03 cmpi.w #$3D03,d0RAM:00FF8076 6700 007E beq.w loc_FF80F6RAM:00FF807A 0C40 3D05 cmpi.w #$3D05,d0RAM:00FF807E 6700 01D4 beq.w loc_FF8254RAM:00FF8082 E048 lsr.w #8,d0RAM:00FF8084 0C00 0034 cmpi.b #$34,d0 ; '4'RAM:00FF8088 6700 0422 beq.w loc_FF84ACRAM:00FF808C 0C00 0035 cmpi.b #$35,d0 ; '5'RAM:00FF8090 6700 042C beq.w loc_FF84BERAM:00FF8094 0C00 0036 cmpi.b #$36,d0 ; '6'RAM:00FF8098 67FF 0000 0456 beq.l loc_FF84F0 <------RAM:00FF809E 0C00 0020 cmpi.b #$20,d0 ; ' 'RAM:00FF80A2 6692 bne.s loc_FF8036RAM:00FF80A4 207C 00FF B39A movea.l #unk_FFB39A,a0RAM:00FF80AA 303C 0004 move.w #4,d0RAM:00FF80AE 6100 051C bsr.w sub_FF85CCRAM:00FF80B2 6100 0020 bsr.w sub_FF80D4RAM:00FF80B6 4E70 reset
Statistics: Posted by antus — Wed Nov 15, 2023 2:27 pm
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 12:45 pm
Code:
ROM:0000006E cmpi.w #$3D03,d0 ; Compare ImmediateROM:00000072 beq.w sProcessOSID ; Branch if EqualROM:00000076 cmpi.w #$3D05,d0 ; Compare ImmediateROM:0000007A beq.w sProcessEraseSector ; Branch if EqualROM:0000007E lsr.w #8,d0 ; Logical Shift RightROM:00000080 cmpi.b #$34,d0 ; '4' ; Compare ImmediateROM:00000084 beq.w sProcessMode34 ; Branch if EqualROM:00000088 cmpi.b #$35,d0 ; '5' ; Compare ImmediateROM:0000008C beq.w sProcessMode35 ; Branch if EqualROM:00000090 cmpi.b #$36,d0 ; '6' ; Compare ImmediateROM:00000090 ; ---------------------------------------------------------------------------ROM:00000094 dc.b $67ROM:00000095 dc.b $FFROM:00000096 dc.b 0 <-----------Something's wrong with this.ROM:00000097 dc.b 0ROM:00000098 dc.b 4ROM:00000099 dc.b $56 ; VROM:0000009A ; ---------------------------------------------------------------------------ROM:0000009A cmpi.b #$20,d0 ; ' ' ; Compare ImmediateROM:0000009E bne.s sMainLoop ; Branch if Not EqualROM:000000A0 movea.l #unk_FF8796,a0 ; Move AddressROM:000000A6 move.w #4,d0 ; Move Data from Source to DestinationROM:000000AA bsr.w sVPW_Send ; Branch to SubroutineROM:000000AE bsr.w sWasteTime ; Branch to SubroutineROM:000000B2 reset ; Reset External DevicesROM:000000B4
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 12:43 pm
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 10:10 am
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 9:48 am
Statistics: Posted by antus — Wed Nov 15, 2023 9:37 am
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 9:11 am
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 9:09 am
Statistics: Posted by antus — Wed Nov 15, 2023 7:56 am
Statistics: Posted by ProfessWRX — Wed Nov 15, 2023 2:14 am
Statistics: Posted by kur4o — Tue Nov 14, 2023 6:34 am
Statistics: Posted by ProfessWRX — Tue Nov 14, 2023 3:34 am
Statistics: Posted by ProfessWRX — Tue Nov 14, 2023 3:24 am