/************************************************/
/* EEPROM location for 7188/8000 Modbus library */
/*                                              */
/* First  update [2006/Jul/04] by Kevin         */
/* Latest update [2006/Aug/15] by Kevin         */
/************************************************/
/*
[2006/Jul/17] by Kevin
    1. Add block1, offset 0x50~0x51
    2. Add block4, all
    3. Add block5, offset 0x00~0x3F

[2006/Aug/16] by Kevin
    1. Add block1, offset 0x07~0x08
*/

Following EEPROM location are applied to 
    Modbus library 1.6.6 or later
    I/O library 1.5.3 or later
    
====== Block 0 =====================================================
//Store COM port function (for 7188/8000)

====== Block 1 =====================================================
// System (for 7188/8000)
0x00~0x01:  Modbus Lib version=123~nnn: version 1.2.3
0x02:       NetID=0x00~0xFF
0x03:       Station Per COM port=0x00~0xFF
0x04:       Freeze I/O Config=0 or <>0
0x05~0x06   I/O scan Lib version=123~nnn: version 1.2.3
0x07~0x08   CPU reset events (0~65535)
0x09~0x0F


//COM port configuration (for 7188/8000)
[Enable mode]   [Timeout]  [Reserved]
    0x10:       0x11~0x12    0x13       (COM1)
    0x14:       0x15~0x16    0x17       (COM2)
    0x18:       0x19~0x1A    0x1B       (COM3)
    0x1C:       0x1D~0x1E    0x1F       (COM4)
    0x20:       0x21~0x22    0x23       (COM5)
    0x24:       0x15~0x26    0x27       (COM6)
    0x28:       0x19~0x2A    0x2B       (COM7)
    0x2C:       0x1D~0x2E    0x2F       (COM8)
    
    
// I/O Module Basic information (for I-8000 only)
[ModuleType] [NameOfModule] [Reserved] [Reserved]
    0x30        0x31          0x32        0x33    (Slot0)
    0x34        0x35          0x36        0x37    (Slot1)
    0x38        0x39          0x3A        0x3B    (Slot2)
    0x3C        0x3D          0x3E        0x3F    (Slot3)
    0x40        0x41          0x42        0x43    (Slot4)
    0x44        0x45          0x46        0x47    (Slot5)
    0x48        0x49          0x4A        0x4B    (Slot6)
    0x4C        0x4D          0x4E        0x4F    (Slot7)
    
//
0x50~0X51: Watch dog timer for AO and DO safe value.
           Range=0~65535
           <5 : Disable safe value
           5~65535: Enable safe value
           unit: second.

====== Block 2 =====================================================
// I/O Module Range Code  (for I-8000 only)
Each channel uses 1 bytes(0x00~0x7F)

0x00~0x0F:  Ch0~Ch15 (Slot0)
0x10~0x1F:  Ch0~Ch15 (Slot1)
0x20~0x2F:  Ch0~Ch15 (Slot2)
0x30~0x3F:  Ch0~Ch15 (Slot3)
0x40~0x4F:  Ch0~Ch15 (Slot4)
0x50~0x5F:  Ch0~Ch15 (Slot5)
0x60~0x6F:  Ch0~Ch15 (Slot6)
0x70~0x7F:  Ch0~Ch15 (Slot7)


// 87K DI counter enable/disable  (for I-8000 only)
Each channel uses 1 bytes(True or False)

0x80~0x8F:  Ch0~Ch15 (Slot0) 
0x90~0x9F:  Ch0~Ch15 (Slot1)
0xA0~0xAF:  Ch0~Ch15 (Slot2)
0xB0~0xBF:  Ch0~Ch15 (Slot3)
0xC0~0xCF:  Ch0~Ch15 (Slot4)
0xD0~0xDF:  Ch0~Ch15 (Slot5)
0xE0~0xEF:  Ch0~Ch15 (Slot6)
0xF0~0xFF:  Ch0~Ch15 (Slot7)

====== Block 3 =====================================================
// AI/AO offset value (for I-8000 only)
Each channel uses 2 bytes(-32768~+32767)

0x00~0x1F:  Ch0~Ch15 (Slot0)
0x20~0x3F:  Ch0~Ch15 (Slot1)
0x40~0x5F:  Ch0~Ch15 (Slot2)
0x60~0x7F:  Ch0~Ch15 (Slot3)
0x80~0x9F:  Ch0~Ch15 (Slot4)
0xA0~0xBF:  Ch0~Ch15 (Slot5)
0xC0~0xDF:  Ch0~Ch15 (Slot6)
0xE0~0xFF:  Ch0~Ch15 (Slot7)

====== Block 4 =====================================================
//AO Power on value  (128 bytes)
0x00~0x0F:  Ch0~Ch15 (Slot0)
0x10~0x1F:  Ch0~Ch15 (Slot1)
0x20~0x2F:  Ch0~Ch15 (Slot2)
0x30~0x3F:  Ch0~Ch15 (Slot3)
0x40~0x4F:  Ch0~Ch15 (Slot4)
0x50~0x5F:  Ch0~Ch15 (Slot5)
0x60~0x6F:  Ch0~Ch15 (Slot6)
0x70~0x7F:  Ch0~Ch15 (Slot7)

//AO Safe value      (128 bytes)
0x80~0x8F:  Ch0~Ch15 (Slot0)
0x90~0x9F:  Ch0~Ch15 (Slot1)
0xA0~0xAF:  Ch0~Ch15 (Slot2)
0xB0~0xBF:  Ch0~Ch15 (Slot3)
0xC0~0xCF:  Ch0~Ch15 (Slot4)
0xD0~0xDF:  Ch0~Ch15 (Slot5)
0xE0~0xEF:  Ch0~Ch15 (Slot6)
0xF0~0xFF:  Ch0~Ch15 (Slot7)

====== Block 5 =====================================================
//DO Power on value  (32 bytes)
0x00~0x03:  Ch0~Ch31 (Slot0)
0x04~0x07:  Ch0~Ch31 (Slot1)
0x08~0x0B:  Ch0~Ch31 (Slot2)
0x0C~0x0F:  Ch0~Ch31 (Slot3)
0x10~0x13:  Ch0~Ch31 (Slot4)
0x14~0x17:  Ch0~Ch31 (Slot5)
0x18~0x1B:  Ch0~Ch31 (Slot6)
0x1C~0x1F:  Ch0~Ch31 (Slot7)

//DO Power on value  (32 bytes)
0x20~0x23:  Ch0~Ch31 (Slot0)
0x24~0x27:  Ch0~Ch31 (Slot1)
0x28~0x2B:  Ch0~Ch31 (Slot2)
0x2C~0x2F:  Ch0~Ch31 (Slot3)
0x30~0x33:  Ch0~Ch31 (Slot4)
0x34~0x37:  Ch0~Ch31 (Slot5)
0x38~0x3B:  Ch0~Ch31 (Slot6)
0x3C~0x3F:  Ch0~Ch31 (Slot7)

not used

====== Block 6 =====================================================
not used

====== Block 7 =====================================================
//Store IP, Mask, Gateway (for 7188E/8000E only)
*/



/*
====== Register Mapping ============================================

=== iMemory_IO_DO ===
0x13C: Write DO Power on value to EEPROM
0x13D: Write DO Safe value     to EEPROM
0x13E: Write AO Power on value to EEPROM
0x13F: Write AO Safe value     to EEPROM

//DO Power on value (320~575)
0x140~0x15F: Ch0~Ch31 (Slot0)
0x160~0x17F: Ch0~Ch31 (Slot1)
0x180~0x19F: Ch0~Ch31 (Slot2)
0x1A0~0x1BF: Ch0~Ch31 (Slot3)
0x1C0~0x1DF: Ch0~Ch31 (Slot4)
0x1E0~0x1FF: Ch0~Ch31 (Slot5)
0x200~0x21F: Ch0~Ch31 (Slot6)
0x220~0x23F: Ch0~Ch31 (Slot7)

//DO Safe value (576~831)
0x240~0x25F: Ch0~Ch31 (Slot0)
0x260~0x27F: Ch0~Ch31 (Slot1)
0x280~0x29F: Ch0~Ch31 (Slot2)
0x2A0~0x2BF: Ch0~Ch31 (Slot3)
0x2C0~0x2DF: Ch0~Ch31 (Slot4)
0x2E0~0x2FF: Ch0~Ch31 (Slot5)
0x300~0x31F: Ch0~Ch31 (Slot6)
0x320~0x33F: Ch0~Ch31 (Slot7)


=== iMemory_IO_AO ===
//AO Power on value (320~383)
0x140~0x147: Ch0~Ch7 (Slot0)
0x148~0x14F: Ch0~Ch7 (Slot1)
0x150~0x157: Ch0~Ch7 (Slot2)
0x158~0x15F: Ch0~Ch7 (Slot3)
0x160~0x167: Ch0~Ch7 (Slot4)
0x168~0x16F: Ch0~Ch7 (Slot5)
0x170~0x177: Ch0~Ch7 (Slot6)
0x178~0x17F: Ch0~Ch7 (Slot7)

//AO Safe value (384~447)
0x180~0x187: Ch0~Ch7 (Slot0)
0x188~0x18F: Ch0~Ch7 (Slot1)
0x190~0x197: Ch0~Ch7 (Slot2)
0x198~0x19F: Ch0~Ch7 (Slot3)
0x1A0~0x1A7: Ch0~Ch7 (Slot4)
0x1A8~0x1AF: Ch0~Ch7 (Slot5)
0x1B0~0x1B7: Ch0~Ch7 (Slot6)
0x1B8~0x1BF: Ch0~Ch7 (Slot7)


*/