ROM LayOut

Memory Mode

The H8s are in Mode 4 Extended Max
ROM Enabled, with a 16-Bit External Bus
(You can check this by looking at Pins 81-83)


Address Space

The ROM is Loaded to 10000-2FFFF.

Mirrored Space

10000-13FFF is copied to 0-3FFF.
This allows this lower 4KB to accessed from page 1 or 2 with a single instruction.
And negates the need of changing the page register when accessing addresses out of the current page.

Generally Mitsu uses this space for settings and maps.
Basically everything you edit in EcuFlash is in this lower 4KB.



Mode 4 Extended Max

Page 0:
   0 - 1FF Vector Table
   200 - 3FFF On Chip ROM 16K
   4000 - EE7F Unused
   EE80 - FE7F On Chip RAM 4K
   FE80 - FFFF On Chip Registers 384 Bytes
Page 1:
   10000 - 1FFFF On Chip ROM 64K
Page 2:
   20000 - 2FFFF On Chip ROM 64k

0-3FFF and 10000-3FFF are identical, so I will start my list at 10000.
This list is for the EM2055, but all H8s have these items in the same general area.


Interrupt Vector Addresses



Interrupt Vector Pointer Addresses
Memory address that is loaded with address to sub-routine.



Identification and Global ROM Settings
ROM and Calibration Id,  Periphery Bits,
and Global Flags that Enable/Disable things like Closed Loop, etc.



Constants and 1D Data.
Injector Size, MAF Size, RevLimit, etc.



2D and 3D Maps and Tables.
Fuel, Timing, etc.


Start of Code


Math and Table LookUp Sub-routines.



Port and Timers Setup, Inputs and Outputs.



OBD2 and Emissions Tests



Flash Kernel
Loaded to RAM and Executed when a Flash is about to take place.



Main Operating Loop and its sub-routines.


End of Code


Map Axis



Pointers to Maps.
Address to important maps contained here.
Each address is repeated eight times.



MUT Table.

  1. No comments yet.

Comments are closed.