#
# Copy from xpdf of table 5 of AN2026A, "In-System Serial Programming (ISSPTM)
# Protocol", "Revision C"
# Copyright 2002-2005 Cypress Semiconductor Corporation.
#

Initialize-1    110010100000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000110111101110000000011111011110110000000001111001
111100000111010111100111110010000001111111011110101000000001111101111010000000011111100111
110111000000011111011111001001100001111101111101001000000111110111100000000100111111011111
000000000001111101111111100010010111
Initialize-2    110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111011110101000
0000011111011110100000000111111001111101110000000111110111110010011000011111011111010010000001111001111
101000000001111110111100000000011011111011111000000000001111101111111100010010111
Initialize-3 3V    110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011111000010
100011111101111100111111000111110111110100011000011111011111111000100101110000000000000000000000110111
101110000000011111011110100000000111111101111010100000000111110111101100000100011111011111000011000001
1111011111001111010101111101111101000110000111110111101110001000011111011111111000100101110000000000000
000000000110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011
111000010100011111101111100111111001111110111110100011000011111011111111000100101110000000000000000000
000110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011111000
0110000011111011111001111010001111101111101000110000111110111101110001000011111011111111000100101110000
000000000000000000
Intialize-3 5V    110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011111000010
1000111111011111001111111001111101111101000110000111110111111110001001011100000000000000000000001101111
011100000000111110111101000000001111111011110101000000001111101111011000001000111110111110000110000011
111011111001111010101111101111101000110000111110111101110001000011111011111111000100101110000000000000
000000000110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011
111000010100011111101111100111111101111110111110100011000011111011111111000100101110000000000000000000
000110111101110000000011111011110100000000111111101111010100000000111110111101100000100011111011111000
0110000011111011111001111010001111101111101000110000111110111101110001000011111011111111000100101110000
000000000000000000
SET-BLOCK-
NUM    10011111010dddddddd111
where dddddddd=block #
CHECKSUM
-SETUP     110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111
(CY8C27xxx)    011110101000000001111101111010000000011111100111110111000000011111011111001001100001111101
111101001000000111100111110100000000011111011110000000001111111101111100000000000111110111
1111100010010111
CHECKSUM
-SETUP     110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111
(CY8C21x23/    011110101000000001111101111010000000011111100111110111000000011111011111001001100001111101
CY8C24xxx/    111101001000000111100111110100100000011111011110000000001111111101111100000000000111110111
CY8C24xxxA    1111100010010111
)
CHECKSUM    110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111
-SETUP     011110101000000001111101111010000000011111100111110110000000011111011111001001100001111101
(CY8C21x34)    111101001000000111100111110101000000011111011110000000001111111101111100000000000111110111
1111100010010111
CHECKSUM
-SETUP     110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111
(CY8C22xxx)    011110101000000001111101111010000000011111100111110111000000011111011111001001100001111101
111101001000000111100111110100010000011111011110000000001111111101111100000000000111110111
1111100010010111
VERIFY-
SETUP    110111101110000000011111011110110000000001111001111100000111010111100111110010000001111111
011110101000000001111101111010000000011111100111110111000000011111011111001001100001111101
111101001000000111110111100000000000111111011111000000000001111101111111100010010111
PROGRAM-
BLOCK     100111111000101010011110011111110010101101111101111011100000000111110111101100000000011110
(CY8C21xxx/    011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
CY8C22xxx/    111101110000000111110111110010011000011111011111010010000001111101111000000000010111110111
CY8C24xxx/    11000000000001111101111111100010010111
CY8C24xxxA
)
PROGRAM-
BLOCK     100111111000001010111110011111110010101101111101111011100000000111110111101100000000011110
(CY8C27xxx)    011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
111101110000000111110111110010011000011111011111010010000001111101111000000000010111110111
11000000000001111101111111100010010111
READ-BYTE    10110aaaaaaZDDDDDDDDZ1
where DDDDDDDD= data out, aaaaaa=address (6 bits)
ERASE    100111111000001010111110011111110010101101111101111011100000000111110111101100000000011110
011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
111101110000000111110111110010011000011111011111010010000001111101111000000000101111110111
11000000000001111101111111100010010111
ID-SETUP    110111101110001000011111011100000000000101111101111011100000000111110111101100000000011110
011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
111101110000000111110111110010011000011111011111010010000001111001111101000000000111110111
100000000011011111011111000000000001111101111111100010010111
SECURE 
(CY8C21xxx/    100111111000101010011110011111110010101101111101111011100000000111110111101100000000011110
CY8C22xxx/    011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
CY8C24xxx/    111101110000000111110111110010011000011111011111010010000001111101111000000000100111110111
CY8C24xxxA    11000000000001111101111111100010010111
)
SECURE 
(CY8C27xxx)    100111111000001010111110011111110010101101111101111011100000000111110111101100000000011110
011111000001110101111001111100100000011111110111101010000000011111011110100000000111111001
111101110000000111110111110010011000011111011111010010000001111101111000000000100111110111
11000000000001111101111111100010010111
WRITE-
BYTE    10010aaaaaadddddddd111
where dddddddd= data in, aaaaaa=address (6 bits)
READ-    10111111001ZDDDDDDDDZ110111111000ZDDDDDDDDZ1
CHECKSUM    where DDDDDDDDDDDDDDDD= Device Checksum data out
READ-ID-WORD (CY8C27143)
10111111000ZLLLLLLLLZ110111111001ZLLLLHLLHZ1
READ-ID-WORD (CY8C27243)
10111111000ZLLLLLLLLZ110111111001ZLLLLHLHLZ1
READ-ID-WORD (CY8C27443)
10111111000ZLLLLLLLLZ110111111001ZLLLLHLHHZ1
READ-ID-WORD (CY8C27543)
10111111000ZLLLLLLLLZ110111111001ZLLLLHHLLZ1
READ-ID-WORD (CY8C27643)
10111111000ZLLLLLLLLZ110111111001ZLLLLHHLHZ1
READ-ID-WORD (CY8C24123)1
10111111000ZLLLLLLLLZ110111111001ZLLLHLLHLZ1
READ-ID-WORD (CY8C24223)1
10111111000ZLLLLLLLLZ110111111001ZLLLHLLHHZ1
READ-ID-WORD (CY8C24423)1
10111111000ZLLLLLLLLZ110111111001ZLLLHLHLLZ1
READ-ID-WORD (CY8C22113)
10111111000ZLLLLLLLLZ110111111001ZLLLLHHHHZ1
READ-ID-WORD (CY8C22213)
10111111000ZLLLLLLLLZ110111111001ZLLLHLLLLZ1
READ-ID-WORD (CY8C21123) 
10111111000ZLLLLLLLLZ110111111001ZLLLHLHHHZ1
READ-ID-WORD (CY8C21223) 
10111111000ZLLLLLLLLZ110111111001ZLLLHHLLLZ1
READ-ID-WORD (CY8C21323) 
10111111000ZLLLLLLLLZ110111111001ZLLLHHLLHZ1
READ-ID-WORD (CY8C21234)
10111111000ZLLLLLLLLZ110111111001ZLLHHLHHLZ1
READ-ID-WORD (CY8C21334)
10111111000ZLLLLLLLLZ110111111001ZLLHHLHHHZ1
READ-ID-WORD (CY8C21434)
10111111000ZLLLLLLLLZ110111111001ZLLHHHLLLZ1
READ-ID-WORD (CY8C21534) 
10111111000ZLLLLLLLLZ110111111001ZLHLLLLLLZ1
READ-ID-WORD (CY8C21634) 
10111111000ZLLLLLLLLZ110111111001ZLHLLHLLHZ1
