Members Login
Username 
 
Password 
    Remember Me  
Post Info TOPIC: Greetings from Central Florida


Newbie

Status: Offline
Posts: 2
Date:
Greetings from Central Florida


Hello all,

I found this sight while looking for general information on my new '07 GSX-R600, I read a little bit and found quite a bit of good information here.  While I may or may not be hacking my ECU anytime soon - this is the sort of thing I really love to do and I think I am pretty good at it.  I have been working in the engineering field my whole working life and currently work for a major defense contractor.  I have BSEE and a MSSE (Systems Engeering).  I have designed many different embedded devices and while I would consider myself a hardware guy I know several Motorola assembly languages (6800, 6809, HC05, HC11) and a have coded for the 8051 class of microcontrollers, I primarily write code in LabVIEW these days which is a good "hackers" tool.  I have reverse engineered many different devices and data streams including a Detroit Diesel DDEC (Yacht Engine ECU) and some other things that I can't talk about.  A long time ago I completely disassembled and modifed an AMI BIOS for a single board computer which involved circumvention of the security features and coding a patch into an unused area of the ROM.  Anyway if you think my talents would be useful I am certainly interested - really cool site and lots of good work done here !!

Chris

__________________


Guru

Status: Offline
Posts: 963
Date:

Welcome. You sound like our kind of member. Plans are to add the GSXRs to the list of bikes that can be flashed in the near future. Maybe we can talk you into helping us disassemble some of that code. Unfortunately the code is probably RISC. Like you I grew up on Motorola and hand assembled my first 6800 code when I was 17. Compared to that RISC is an abomination from hell ;)

I'm sure your familiar with a motorola statement like BRSET 2, portA, loc_69. (Branch if bit2 set to loc_69).

In the 32bit risc language used by Denso the equivalent to that single line of code is


TST 2, portA ;logical AND portA with 00000010b and SET the True flag if the result is 0 (you heard me right)
MOVT r0 ;move the true flag to register 0, r0 = 1 if bit was clr, 0 if bit was set
ADD #-1,r0 ;makes r0 = 0 if bit was clear, FF if bit was set.
NEG r0 ;makes r0 = 0 if bit was clear, 1 if bit was set.
CMP/EQ #1, r0 ;test for 1 i.e. was portA bit set
BT loc_69 ;branch if true


How friggin insane is that? I'm sure a lot of it has to do with the C (or whatever) compiler they used but still what a pain in the ass.

__________________


Newbie

Status: Offline
Posts: 2
Date:

sounds pretty cool - I have never been a big fan of writing in high level languages for embedded applications - thats one way you end up with spaghetti code when you disassemble it - one things for sure, it sounds very challenging - always good to do stuff like that to stretch the grey matter a bit.  I have worked a little with ARM processors in a PALM and my GameBoy - and also believe it or not the Dec Alpha - so I do have a bit of RISC experience  - and happily I understood  both your code examples without any trouble smile.gif

Chris

__________________
Page 1 of 1  sorted by
 
Quick Reply

Please log in to post quick replies.

Tweet this page Post to Digg Post to Del.icio.us


Create your own FREE Forum
Report Abuse
Powered by ActiveBoard