*****************************************************************************
*                                                                           *
*                                                                           *
*      HELP FOR INTEL MICROCONTROLLERS (informal document)                  *
*                                                                           *
*                                                                           *
*****************************************************************************


 The data to be programmed to the device start at 0000h in the User's RAM.
 This corresponds to the device address 2000h. For example if you want to
 program the lower interrupt vectors (the device addresses are 2000h through
 2013h) put the lower interrupt vectors data at addresses 0000h through 0013h
 in the User's RAM.

 Be sure that your data in the User's RAM is allocated correctly.

 The device is 16 bits wide (1 word), and therefore it is programmed in words.
 The default screen on DATA I/O programmers is 16 bits data width (word).
 It may be more convenient to select Data Word Width = 8 and then follow the
 memory map in Intel's User's Guide.


    ----------------------------------------------------------------------
   | Examples of using 16 bits wide data (word) and 8 bits wide           |
   | data (byte):                                                         |
   |                                                                      |
   |   Want to program :  11 hex at address 2002 hex (device address)     |
   |                      22 hex at address 2003 hex (device address)     |
   |                                                                      |
   |   Notice that the Intel's (byte) notation is used above.             |
   |                                                                      |
   |   You can do it in two ways:                                         |
   |                                                                      |
   |     1. Using 16 bits (word) data width (DATA I/O default).           |
   |                                                                      |
   |        Go to 'EDIT PROGRAMMER MEMORY' screen. The field 'Edit data   |
   |        word width' has highlighted 16. This is the default.          |
   |        If 4, 8 or 32 is highlighted, chage it to 16 and depress      |
   |        Enter (Return) key.                                           |
   |        Go to the address 0001hex (it is in words now!) and put       |
   |        the value 2211 hex in it.                                     |
   |                                                                      |
   |     2. Using 8 bits (word) data width.                               |
   |                                                                      |
   |        Go to 'EDIT PROGRAMMER MEMORY' screen. Change the field       |
   |        'Edit data word width' to 8 and depress Enter (Return) key.   |
   |        Go to the the address 0002 hex and put the value 11 hex in it.|
   |        the go to the address 0003 hex and put the value 22 hex in it.|
   |                                                                      |
    ----------------------------------------------------------------------

 Try to switch between 16 bits (word) data width and 8 bits (word)
 data width to see the how the data is stored. Intel 16 bit data
 files store the most significant bytes (MSB) at odd-byte location
 and the least significant byte (LSB) at even byte location.
 This device does not need to have the Byte Swap Option enabled
 (UniSite version 2.5 or later).

    ____________________________________________________________________
   |                                                                     |
   |  Example:                                                           |
   |                                                                     |
   |                      11h is at adr. 0002h (even byte)               |
   |                      22h is at adr. 0003h (odd byte)                |
   |                                       |                             |
   |                                   byte address                      |
   |                                                                     |
   |  Those two bytes are combined in a word in Intel's file:            |
   |                                                                     |
   |                      2211 at adr. 0001h                             |
   |                       | |           |                               |
   |                       M L       word address                        |
   |                       S S                                           |
   |                       B B                                           |
   |                                                                     |
    ---------------------------------------------------------------------

             RESERVED LOCATIONS AND VECTORS IN PROGRAMER'S USER RAM
            --------------------------------------------------------

 Adr. (in words, DATA I/O)  Adr. (in bytes, Intel)  Intel Required Data
 ------------------------   ---------------------   --------------------

    0000h - 0009h            0000h through 0013h    interrupt vectors (lower)
            000Ah            0015h   and   0014h    FFh, FFh (reserved)
            000Bh            0017h   and   0016h    FFh, FFh (also see note #1)
            000Ch            0019h   and   0018h    **h, CCB or CCB0 byte
            000Dh            001Bh   and   001Ah    **h, **h or CCB1 byte
            000Eh            001Dh   and   001Ch    **h, FFh  (reserved)
            000Fh            001Fh   and   001Eh    **h, FFh  (reserved)
    0010h - 0017h            0020h through 002Fh    security key
    0018h - 001Fh            0030h through 003Fh    interrupt vectors (upper)
    0020h - 002Eh            0040h through 005Dh    PTS vectors
    002Fh - 003Fh            005Eh through 007Fh    all FFh (reserved)


 To see where the reserved locations and vectors are in the device
 memory map, simply add 2000 hex to the address in the table above.

    ----------------------------------------------------------------------
   |   Example:                                                           |
   |                                                                      |
   |   PTS vectors are located in the User's RAM at:                      |
   |                                                                      |
   |   0020h - 002Eh (word addresses) or at 0040h - 005Dh (byte addresses)|
   |                                                                      |
   |   PTS vectors are located in the User's RAM at:                      |
   |                                                                      |
   |   2020h - 202Eh (word addresses) or at 2040h - 205Dh (byte addresses)|
    ----------------------------------------------------------------------

 Locations marked as **h are also reserved locations and it is the
 user's responsibility to fill these locations with the required data.


 Consult the Manufacturer's specifications for further information.

 Note 1: To enable  CDE (clock detect enable bit) fill these locations
 with 0Ch, DEh.  Refer to the device spec. sheet for detailed
 information (CDE bit is implemented only on some 196XX family
 members).

 This device is a microcontroller with security bit programming
 capability. To secure the device, enable Security bit programming in
 the Program Memory Device Options screen. If this feature is enabled,
 lock bits of CCB (CCB0) are to be programmed regardless of value
 CCB (CCB0) byte.






