Inheritance diagram for RomRep::HondaEcu:
Public Member Functions | |
HondaEcu (String *type) | |
HondaEcu (unsigned char rom __gc[], int length, int obd, bool vtec, int nummaps, String *type) | |
virtual | ~HondaEcu () |
virtual int | addMapPair (MapLocs *fmap, MapLocs *imap, String *fuelName, String *ignName, int x, int y, int copyIndex, bool copyContents) |
virtual void | setTwoByteRpm (int highloc, int lowloc, int rpm)=0 |
virtual int | getTwoByteRpm (int highloc, int lowloc)=0 |
Gets the RPM that adheres to revcount/dec. | |
virtual void | setByte (int loc, int val) |
Sets the byte. | |
virtual ByteChange * | setByteEx (int loc, int val) |
Sets the byte and returns the RomRep.ByteChange. | |
virtual unsigned char | getByte (int loc) |
Gets the byte at the address. | |
virtual int | setChecksum () |
virtual int | getWidth () |
Returns the width of the maps. | |
virtual int | getHeight () |
Returns the height of the maps. | |
virtual int | getNumMaps () |
Returns the number of maps. 1 means there is 1 fuel and 1 ignition map. | |
virtual FuelMap * | getFuelMap (int index) |
virtual Map * | getIgnitionMap (int index) |
virtual Map * | getMap (int mode, int index) |
virtual HeaderCalculator * | getHeaderCalculator (int mode, int index, bool column) |
virtual ByteChange * | setMultiplierEx (int mapnum, int column, int val) |
Sets a multiplier in the specified mapnum (index). | |
virtual void | setMultiplier (int mapnum, int column, int val) |
Sets a multiplier in the specified mapnum (index). | |
virtual String * | getRowHeader (int mode, int mapindex, int row) |
virtual String * | getColHeader (int mode, int map, int column) |
virtual int | getChecksumAddy () |
Gets CheckSum Address. | |
virtual int | getChecksumLen () |
unsigned char | get2DArray (unsigned char array __gc[], int loc, int x, int y) __gc[ |
unsigned char unsigned char | getArray (unsigned char array __gc[], int loc, int len) __gc[] |
virtual int | getRpmScalarValue (int row, bool fuel, bool vtec) |
Returns value in the rpm scalar (usually contained in each map). | |
virtual String * | getType () |
Gets the name of the ROM file (i.e. JDM Pr3-58). | |
virtual unsigned char | getFile () __gc[] |
virtual int | getLength () |
gets the length of the file | |
virtual int | getLastNaCol () |
virtual float | getLambdaMap (int index) __gc[ |
Returns the float (afr) representation of the target afr map. | |
virtual float virtual RomRep::ByteChange * | setAfrCellEx (int x, int y, float val, int index) |
Sets the target afr. | |
virtual float | getAfrCell (int x, int y, int index) |
Gets the target afr. | |
int | getAfrMapLoc (int index) |
gets the afr map's location | |
virtual float | calcTPS (int raw)=0 |
virtual int | calcTPS (float percentage)=0 |
virtual float | calcTemp (int raw, bool sae)=0 |
virtual int | calcTemp (float temp, bool sae)=0 |
virtual float | calcRpm (int raw)=0 |
virtual int | calcRpm (float rpm)=0 |
Public Attributes | |
__event ByteChangeHandler * | OnByteChanged |
__event TargetAfrChangeHandler * | OnTargetAfrChanged |
Static Public Attributes | |
static int | headlen = 10 |
Protected Member Functions | |
void | setArray (unsigned char array __gc[], int loc, int len) |
sets an array of bytes | |
virtual int | Checksum () |
returns the checksum | |
virtual HeaderCalculator * | GetRowHeaderCalculator (RomRep::Map *map)=0 |
virtual HeaderCalculator * | GetColumnHeaderCalculator (RomRep::Map *map)=0 |
virtual void | edit_MapEvent (Object *sender, MapChangeArgs *args) |
called when there is a MapEvent (user edits a map) | |
virtual FuelMap * | createFuelMap (int xx, int yy, int index, String *mapname, RomRep::MapLocs *maploc, unsigned char map __gc[,], unsigned char mlt __gc[], bool vtec)=0 |
virtual Map * | createIgnitionMap (int xx, int yy, int index, String *mapname, RomRep::MapLocs *maploc, unsigned char map __gc[,], bool vtec)=0 |
virtual void | setupMaps (MapLocs *mapinfo[]) |
void | ByteChanged (RomRep::ByteChange *bc) |
void | AfrChanged (int xx, int yy, float afr, int index) |
virtual float | calculateAfr (unsigned char raw)=0 |
virtual unsigned char | calculateAfr (float afr)=0 |
Protected Attributes | |
unsigned char thefile | __gc [] |
int | flen |
int | x |
int | y |
FuelMap * | fuelmaps [] |
Map * | ignmaps [] |
ByteChangeNotifyList * | bcList |
int target_afr_loc | __gc [] |
String * | type |
int | obd |
int | nummaps |
bool | vtec |
int | checksumaddy |
int | checksumlen |
int | lastNACol |
The inde of the last NA column for the dev roms. |
|
|
|
Child classes will deal with setting up the maps in their constructor because we dont know what type of maps must be set up. Basic Constructor |
|
|
|
|
|
|
|
|
|
Calculates the raw value fromf RPM. If there are more than one format of rpm value, assume it is the most common format (i.e. the 2 byte value) Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Calculates the RPM. If there are more than one format of rpm value, assume it is the most common format (i.e. the 2 byte value) Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
returns the checksum
|
|
You must override this method so this base class can properly setup the maps. If mapname == null, the function must give the map a name. C++ Example from the VT0Ecu class:
RomRep::FuelMap* RomRep::VT0Ecu::createFuelMap(int xx, int yy, int index, String* mapname, RomRep::MapLocs* maploc,unsigned char map __gc[,], unsigned char mlt __gc[], bool vtec) { if(index == 0) vtec = false; else if(index == 1) vtec = true; //now call the constructor to the map you need to create FuelMap* fm = new VT0FuelMap(xx, yy, maploc, map, maploc->mapLoc+(xx*yy), mlt,thefile,0, maploc->mapRevScalarLoc,vtec); if(mapname != NULL) fm->setName(mapname); else if(index == 0) fm->setName("Low Fuel"); else if(index == 1) fm->setName("VTEC Fuel"); else //if(index >1) fm->setName(String::Concat("Fuel: ",index.ToString())); return fm; } Implemented in RomRep::EuroPw0Dev, RomRep::EuroPw0ITB, RomRep::JdmPr3Dev, RomRep::JdmPr3ITB, RomRep::JdmPw0Dev, RomRep::JdmPw0ITB, RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
must override this method so this base class can properly setup the maps. If mapname == null, the function must give the map a name. see createFuelMap() for an example Implemented in RomRep::EuroPw0Dev, RomRep::EuroPw0ITB, RomRep::JdmPr3Dev, RomRep::JdmPr3ITB, RomRep::JdmPw0Dev, RomRep::JdmPw0ITB, RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
called when there is a MapEvent (user edits a map)
|
|
Gets 2D array from the ROM file. loc is the location of the first byte in the array |
|
Gets the target afr.
|
|
gets the afr map's location
|
|
Gets a 1D array loc is the location of the first byte in the array |
|
Gets the byte at the address.
|
|
Gets CheckSum Address.
|
|
|
|
Gets a column header. map == 0 for non vtec, 1 for vtec |
|
Implemented in RomRep::EuroPw0Dev, RomRep::EuroPw0ITB, RomRep::JdmPr3Dev, RomRep::JdmPr3ITB, RomRep::JdmPw0Dev, RomRep::JdmPw0ITB, RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
|
|
Returns the RomRep.FuelMap of your choosing. Indexed from 0. Number of elements is getNumMaps(); Index of maps can be found by looking at the tabs in the main rom window. Left most map is index 0 and so on. |
|
|
|
Returns the height of the maps.
|
|
Returns the ignition map: RomRep.Map of your choosing. Indexed from 0. Number of elements is getNumMaps(); Index of maps can be found by looking at the tabs in the main rom window. Left most map is index 0 and so on. |
|
Returns the float (afr) representation of the target afr map.
|
|
gets the length of the last non-boost column in the maps. Only really functional on dev roms Reimplemented in RomRep::EuroPw0ITB, RomRep::JdmPr3ITB, and RomRep::JdmPw0ITB. |
|
gets the length of the file
|
|
|
|
Returns the number of maps. 1 means there is 1 fuel and 1 ignition map.
|
|
Gets a row header. map == 0 for non vtec, 1 for vtec |
|
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Returns value in the rpm scalar (usually contained in each map).
Reimplemented in RomRep::VT0Ecu. |
|
Gets the RPM that adheres to revcount/dec.
Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Gets the name of the ROM file (i.e. JDM Pr3-58).
|
|
Returns the width of the maps.
|
|
Sets the target afr.
Reimplemented in RomRep::GhdPm6, and RomRep::Pm6. |
|
sets an array of bytes
|
|
Sets the byte.
|
|
Sets the byte and returns the RomRep.ByteChange.
|
|
|
|
Sets a multiplier in the specified mapnum (index).
|
|
Sets a multiplier in the specified mapnum (index).
|
|
loc is the location of the FIRST (low) byte in the value. Sets the RPM into ROM Implemented in RomRep::VT0Ecu, and RomRep::Pm6Ng. |
|
Sets up the fuel and ignition maps for the ROM. This MUST be called by any class that directly extends HondaEcu or the maps will not get set up.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The inde of the last NA column for the dev roms. the column and row header strings x = nummaps; x == 0 is the nonvtec maps, x == 1 is the vtec maps |
|
|
|
|
|
|
|
|
|
|
|
Reimplemented in RomRep::VT0Ecu. |
|
|
|
|