Maker Pro
Maker Pro

1702A EPROM Programmer Trouble Shooting

L

logjam

Jan 1, 1970
0
I can program a completely erased 0x00 PROM to completely 0xFF.

I can "program" a completely erased 0x00 PROM to completely 0x00. I
did this to check for stuck bits, etc.

This is driving me crazy. It may be a timing issue? I am making a
small PCB to adapt the 0v to -47v programming voltages that the
programmer uses for my logic analyzer. Would anyone here know where I
could find a programming protocol for the 1702? I would like to check
my timing against a data sheet.

Sometimes a PROM will have one good byte, then 00, good byte, 00, and
sometimes a byte will not be good. Other times several bytes in a row
are good. I know the programmer can do all of the bits or none of the
bits (those two experiments). At the end is a listing of a few tests.

It can also address all memory locations in the PROM.

I got this ASCII picture off of chipdir. I added the voltages
measured at the chip during programming. They are pulsed during
programming like the should be.



+--()--+
A2 | 1 24| Vdd -47v
A1 | 2 23| Vcc 0v
A0 | 3 22| Vcc 0v
Data Out 1 (LSB) | 4 21| A3
Data out 2 | 5 20| A4
Data out 3 | 6 19| A5
Data out 4 | 7 18| A6
Data out 5 | 8 17| A7
Data out 6 | 9 16| Vgg -37v
Data out 7 |10 15| Vbb 12v
Data out 8 |11 14| /CS 0v
0v Vcc |12 13| Program -45v
+------+

Here is a result of a few programming attempts.

The columns are: 1-memory location, 2-source data, 3-4-5-data
written, 6-source data again

FF00 8D AE FE FF 8D
FF01 22 FE FE FE 22
FF02 24 00 00 24 24
FF03 FC FE FE FE FC
FF04 C6 00 00 C6 C6
FF05 7F FE FE FF 7F
FF06 D1 00 00 D1 D1
FF07 F3 F2 F2 F3 F3
FF08 F4 00 00 F4 F4
FF09 F0 F4 F4 F4 F0
FF0A 01 00 00 01 01
FF0B 24 24 24 24 24
FF0C 74 00 00 74 74
FF0D 39 7C 7C 7D 39
FF0E 01 00 00 01 01
FF0F 8D 8C 8C 8D 8D
FF10 EF 00 00 EF EF
FF11 C0 EE EE EE C0
FF12 30 00 00 30 30
FF13 2B 3A 3A 3B 2B
FF14 3C 00 00 3C 3C
FF15 C1 FC FC FD C1
FF16 09 00 00 09 09
FF17 2F 2E 2E 2F 2F
FF18 0A 00 00 0A 0A
FF19 C1 CA CA CB C1
FF1A 11 00 00 11 11
FF1B 2B 3A 3A 3B 2B
FF1C 34 00 00 34 34
FF1D C1 F4 F4 F5 C1
FF1E 16 00 00 16 16
FF1F 2E 3E 3E 3E 2E
FF20 30 F0 F6 F6 30
FF21 C0 FE FE FE C0
FF22 07 00 00 07 07
FF23 39 7E 7E 7F 39
FF24 F6 00 00 F6 F6
FF25 F0 F6 F6 F6 F0
FF26 00 00 00 00 00
FF27 57 56 56 57 57
FF28 39 00 00 39 39
FF29 8D BC BC BD 8D
FF2A D5 00 00 D5 D5
FF2B C0 D4 D4 D4 C0
FF2C 53 00 00 53 53
FF2D 26 76 76 76 26
FF2E FA 00 00 FA FA
FF2F 8D FE FE FF 8D
FF30 CF 00 00 CF CF
FF31 C1 DE DE DF C1
FF32 39 00 00 39 39
FF33 27 3E 3E 3F 27
FF34 1C 00 00 1C 1C
FF35 C1 DC DC DD C1
FF36 31 00 00 31 31
FF37 26 36 36 36 26
FF38 F0 00 00 F0 F0
FF39 4F FE FE FF 4F
FF3A 8D 00 00 8D 8D
FF3B 17 9E 9E 9F 17
FF3C C0 00 00 C0 C0
FF3D 02 C2 C2 C2 02
FF3E D7 00 00 D7 D7
FF3F F9 FE FE FF F9
FF40 8D 28 FE FF 8D
FF41 20 FE FE FF 20
FF42 8D 00 00 8D 8D
FF43 0F FE FE FF 0F
FF44 7A 00 00 7A 7A
FF45 00 7A 7A 7A 00
FF46 F9 00 00 F9 F9
FF47 27 FE FE FF 27
FF48 05 00 00 05 05
FF49 E7 E6 E6 E7 E7
FF4A 00 00 00 00 00
FF4B 08 08 08 08 08
FF4C 20 00 00 20 20
FF4D F4 F4 F4 F4 F4
FF4E 4C 00 00 4C 4C
FF4F 27 6E 6E 6F 27
FF50 D8 00 00 D8 D8
FF51 20 F8 F8 F8 20
FF52 58 00 00 58 58
FF53 8D DC DC DD 8D
FF54 BA 00 00 BA BA
FF55 58 FA FA FA 58
FF56 58 00 00 58 58
FF57 58 58 58 58 58
FF58 58 00 00 58 58
FF59 1B 5A 5A 5B 1B
FF5A D7 00 00 D7 D7
FF5B F8 FE FE FE F8
FF5C 8D 00 00 8D 8D
FF5D B1 BC BC BD B1
FF5E 1B 00 00 1B 1B
FF5F DB DA DA DB DB
FF60 F8 F8 FA FE F8
FF61 39 FE FE FF 39
FF62 8D 00 00 8D 8D
FF63 EF EE EE EF EF
FF64 D7 00 00 D7 D7
FF65 FA FE FE FE FA
FF66 8D 00 00 8D 8D
FF67 EB EE EE EF EB
FF68 D7 00 00 D7 D7
FF69 FB FE FE FF FB
FF6A DE 00 00 DE DE
FF6B FA FE FE FE FA
FF6C 39 00 00 39 39
FF6D 16 3E 3E 3F 16
FF6E 54 00 00 54 54
FF6F 54 54 54 54 54
FF70 54 00 00 54 54
FF71 54 D6 D6 D6 54
FF72 8D 00 00 8D 8D
FF73 01 8C 8C 8D 01
FF74 16 00 00 16 16
FF75 C4 D6 D6 D6 C4
FF76 0F 00 00 0F 0F
FF77 CB CE CE CF CB
FF78 30 00 00 30 30
FF79 C1 F0 F0 F1 C1
FF7A 39 00 00 39 39
FF7B 23 3A 3A 3B 23
FF7C 04 00 00 04 04
FF7D CB CE CE CF CB
FF7E 07 00 00 07 07
FF7F 01 06 06 07 01
FF80 01 00 8C 8D 01
FF81 8C FE FE FF 8C
FF82 C6 00 00 C6 C6
FF83 20 FE FE FE 20
FF84 37 00 00 37 37
FF85 8D BE BE BF 8D
FF86 9D 00 00 9D 9D
FF87 57 DE DE DF 57
FF88 24 00 00 24 24
FF89 FB FE FE FF FB
FF8A 33 00 00 33 33
FF8B F7 F6 F6 F7 F7
FF8C F0 00 00 F0 F0
FF8D 01 F0 F0 F1 01
FF8E 39 00 00 39 39
FF8F DE FE FE FE DE
FF90 FA 00 00 FA FA
FF91 08 FA FA FA 08
FF92 DF 00 00 DF DF
FF93 FA FE FE FE FA
FF94 96 00 00 96 96
FF95 FA FE FE FE FA
FF96 8D 00 00 8D 8D
FF97 D5 DC DC DD D5
FF98 96 00 00 96 96
FF99 FB FE FE FF FB
FF9A 8D 00 00 8D 8D
FF9B D1 DC DC DD D1
FF9C 8C 00 00 8C 8C
FF9D 8D 8C 8C 8D 8D
FF9E C3 00 00 C3 C3
FF9F 8D CE CE CF 8D
FFA0 E1 00 E6 E7 E1
FFA1 A6 FE FE FE A6
FFA2 00 00 00 00 00
FFA3 8D DE DE DF 8D
FFA4 C8 00 00 C8 C8
FFA5 8D CC CC CD 8D
FFA6 DB 00 00 DB DB
FFA7 8D DE DE DF 8D
FFA8 AA 00 00 AA AA
FFA9 E7 EE EE EF E7
FFAA 00 00 00 00 00
FFAB 9E 9E 9E 9E 9E
FFAC F6 00 00 F6 F6
FFAD C6 F6 F6 F6 C6
FFAE 0D 00 00 0D 0D
FFAF 8D 8C 8C 8D 8D
FFB0 D0 00 00 D0 D0
FFB1 C6 DE DE DE C6
FFB2 0A 00 00 0A 0A
FFB3 8D 8E AE AF 8D
FFB4 CC 00 00 CC CC
FFB5 C6 CE CE CE C6
FFB6 2E 00 00 2E 2E
FFB7 8D AE AE AF 8D
FFB8 C8 00 00 C8 C8
FFB9 BD FC FC FD BD
FFBA FF 00 00 FF FF
FFBB 00 FE FE FE 00
FFBC 17 00 00 17 17
FFBD 8D 9E 9E 9F 8D
FFBE C3 00 00 C3 C3
FFBF 81 C2 C2 C3 81
FFC0 4C 00 6E 6E 4C
FFC1 27 EE EE EF 27
FFC2 8C 00 00 8C 8C
FFC3 81 8C 8C 8D 81
FFC4 4A 00 00 4A 4A
FFC5 26 6E 6E 6E 26
FFC6 04 00 00 04 04
FFC7 8D 8C 8C 8D 8D
FFC8 99 00 00 99 99
FFC9 6E FE FE FE 6E
FFCA 00 00 00 00 00
FFCB 81 80 80 81 81
FFCC 4D 00 00 4D 4D
FFCD 27 6E 6E 6F 27
FFCE CE 00 00 CE CE
FFCF 81 CE CE CF 81
FFD0 4E 00 00 4E 4E
FFD1 27 6E 6E 6F 27
FFD2 BC 00 00 BC BC
FFD3 81 BC BC BD 81
FFD4 50 00 00 50 50
FFD5 26 76 76 76 26
FFD6 D4 00 00 D4 D4
FFD7 3B FE FE FF 3B
FFD8 8E 00 00 8E 8E
FFD9 00 8E 8E 8E 00
FFDA F3 00 00 F3 F3
FFDB C6 F6 F6 F6 C6
FFDC 03 00 00 03 03
FFDD 37 36 36 37 37
FFDE 37 00 00 37 37
FFDF F7 F6 F6 F7 F7
FFE0 F0 00 F0 F0 F0
FFE1 00 FE FE FE 00
FFE2 F6 00 00 F6 F6
FFE3 F0 FE FE FE F0
FFE4 02 00 00 02 02
FFE5 2B 2A 2A 2B 2B
FFE6 19 00 00 19 19
FFE7 C4 DC DC DC C4
FFE8 04 00 00 04 04
FFE9 CA CE CE CE CA
FFEA D1 00 00 D1 D1
FFEB F7 F6 F6 F7 F7
FFEC F0 00 00 F0 F0
FFED 00 F0 F0 F0 00
FFEE 9F 00 00 9F 9F
FFEF F6 FE FE FE F6
FFF0 9F 00 00 9F 9F
FFF1 FA FE FE FE FA
FFF2 D6 00 00 D6 D6
FFF3 F2 F6 F6 F6 F2
FFF4 2B 00 00 2B 2B
FFF5 0A 2A 2A 2A 0A
FFF6 20 00 00 20 20
FFF7 B3 B2 B2 B3 B3
FFF8 01 00 00 01 01
FFF9 00 00 00 00 00
FFFA FF 00 00 FF FF
FFFB EE FE FE FE EE
FFFC 01 00 00 01 01
FFFD 04 04 04 04 04
FFFE FF 00 00 FF FF
FFFF D8 FE FE FE D8
 
R

Robert Baer

Jan 1, 1970
0
logjam said:
I can program a completely erased 0x00 PROM to completely 0xFF.

I can "program" a completely erased 0x00 PROM to completely 0x00. I
did this to check for stuck bits, etc.

This is driving me crazy. It may be a timing issue? I am making a
small PCB to adapt the 0v to -47v programming voltages that the
programmer uses for my logic analyzer. Would anyone here know where I
could find a programming protocol for the 1702? I would like to check
my timing against a data sheet.

Sometimes a PROM will have one good byte, then 00, good byte, 00, and
sometimes a byte will not be good. Other times several bytes in a row
are good. I know the programmer can do all of the bits or none of the
bits (those two experiments). At the end is a listing of a few tests.

It can also address all memory locations in the PROM.

I got this ASCII picture off of chipdir. I added the voltages
measured at the chip during programming. They are pulsed during
programming like the should be.



+--()--+
A2 | 1 24| Vdd -47v
A1 | 2 23| Vcc 0v
A0 | 3 22| Vcc 0v
Data Out 1 (LSB) | 4 21| A3
Data out 2 | 5 20| A4
Data out 3 | 6 19| A5
Data out 4 | 7 18| A6
Data out 5 | 8 17| A7
Data out 6 | 9 16| Vgg -37v
Data out 7 |10 15| Vbb 12v
Data out 8 |11 14| /CS 0v
0v Vcc |12 13| Program -45v
+------+

Here is a result of a few programming attempts.

The columns are: 1-memory location, 2-source data, 3-4-5-data
written, 6-source data again

FF00 8D AE FE FF 8D
FF01 22 FE FE FE 22
FF02 24 00 00 24 24
FF03 FC FE FE FE FC
FF04 C6 00 00 C6 C6
FF05 7F FE FE FF 7F
FF06 D1 00 00 D1 D1
FF07 F3 F2 F2 F3 F3
FF08 F4 00 00 F4 F4
FF09 F0 F4 F4 F4 F0
FF0A 01 00 00 01 01
FF0B 24 24 24 24 24
FF0C 74 00 00 74 74
FF0D 39 7C 7C 7D 39
FF0E 01 00 00 01 01
FF0F 8D 8C 8C 8D 8D
FF10 EF 00 00 EF EF
FF11 C0 EE EE EE C0
FF12 30 00 00 30 30
FF13 2B 3A 3A 3B 2B
FF14 3C 00 00 3C 3C
FF15 C1 FC FC FD C1
FF16 09 00 00 09 09
FF17 2F 2E 2E 2F 2F
FF18 0A 00 00 0A 0A
FF19 C1 CA CA CB C1
FF1A 11 00 00 11 11
FF1B 2B 3A 3A 3B 2B
FF1C 34 00 00 34 34
FF1D C1 F4 F4 F5 C1
FF1E 16 00 00 16 16
FF1F 2E 3E 3E 3E 2E
FF20 30 F0 F6 F6 30
FF21 C0 FE FE FE C0
FF22 07 00 00 07 07
FF23 39 7E 7E 7F 39
FF24 F6 00 00 F6 F6
FF25 F0 F6 F6 F6 F0
FF26 00 00 00 00 00
FF27 57 56 56 57 57
FF28 39 00 00 39 39
FF29 8D BC BC BD 8D
FF2A D5 00 00 D5 D5
FF2B C0 D4 D4 D4 C0
FF2C 53 00 00 53 53
FF2D 26 76 76 76 26
FF2E FA 00 00 FA FA
FF2F 8D FE FE FF 8D
FF30 CF 00 00 CF CF
FF31 C1 DE DE DF C1
FF32 39 00 00 39 39
FF33 27 3E 3E 3F 27
FF34 1C 00 00 1C 1C
FF35 C1 DC DC DD C1
FF36 31 00 00 31 31
FF37 26 36 36 36 26
FF38 F0 00 00 F0 F0
FF39 4F FE FE FF 4F
FF3A 8D 00 00 8D 8D
FF3B 17 9E 9E 9F 17
FF3C C0 00 00 C0 C0
FF3D 02 C2 C2 C2 02
FF3E D7 00 00 D7 D7
FF3F F9 FE FE FF F9
FF40 8D 28 FE FF 8D
FF41 20 FE FE FF 20
FF42 8D 00 00 8D 8D
FF43 0F FE FE FF 0F
FF44 7A 00 00 7A 7A
FF45 00 7A 7A 7A 00
FF46 F9 00 00 F9 F9
FF47 27 FE FE FF 27
FF48 05 00 00 05 05
FF49 E7 E6 E6 E7 E7
FF4A 00 00 00 00 00
FF4B 08 08 08 08 08
FF4C 20 00 00 20 20
FF4D F4 F4 F4 F4 F4
FF4E 4C 00 00 4C 4C
FF4F 27 6E 6E 6F 27
FF50 D8 00 00 D8 D8
FF51 20 F8 F8 F8 20
FF52 58 00 00 58 58
FF53 8D DC DC DD 8D
FF54 BA 00 00 BA BA
FF55 58 FA FA FA 58
FF56 58 00 00 58 58
FF57 58 58 58 58 58
FF58 58 00 00 58 58
FF59 1B 5A 5A 5B 1B
FF5A D7 00 00 D7 D7
FF5B F8 FE FE FE F8
FF5C 8D 00 00 8D 8D
FF5D B1 BC BC BD B1
FF5E 1B 00 00 1B 1B
FF5F DB DA DA DB DB
FF60 F8 F8 FA FE F8
FF61 39 FE FE FF 39
FF62 8D 00 00 8D 8D
FF63 EF EE EE EF EF
FF64 D7 00 00 D7 D7
FF65 FA FE FE FE FA
FF66 8D 00 00 8D 8D
FF67 EB EE EE EF EB
FF68 D7 00 00 D7 D7
FF69 FB FE FE FF FB
FF6A DE 00 00 DE DE
FF6B FA FE FE FE FA
FF6C 39 00 00 39 39
FF6D 16 3E 3E 3F 16
FF6E 54 00 00 54 54
FF6F 54 54 54 54 54
FF70 54 00 00 54 54
FF71 54 D6 D6 D6 54
FF72 8D 00 00 8D 8D
FF73 01 8C 8C 8D 01
FF74 16 00 00 16 16
FF75 C4 D6 D6 D6 C4
FF76 0F 00 00 0F 0F
FF77 CB CE CE CF CB
FF78 30 00 00 30 30
FF79 C1 F0 F0 F1 C1
FF7A 39 00 00 39 39
FF7B 23 3A 3A 3B 23
FF7C 04 00 00 04 04
FF7D CB CE CE CF CB
FF7E 07 00 00 07 07
FF7F 01 06 06 07 01
FF80 01 00 8C 8D 01
FF81 8C FE FE FF 8C
FF82 C6 00 00 C6 C6
FF83 20 FE FE FE 20
FF84 37 00 00 37 37
FF85 8D BE BE BF 8D
FF86 9D 00 00 9D 9D
FF87 57 DE DE DF 57
FF88 24 00 00 24 24
FF89 FB FE FE FF FB
FF8A 33 00 00 33 33
FF8B F7 F6 F6 F7 F7
FF8C F0 00 00 F0 F0
FF8D 01 F0 F0 F1 01
FF8E 39 00 00 39 39
FF8F DE FE FE FE DE
FF90 FA 00 00 FA FA
FF91 08 FA FA FA 08
FF92 DF 00 00 DF DF
FF93 FA FE FE FE FA
FF94 96 00 00 96 96
FF95 FA FE FE FE FA
FF96 8D 00 00 8D 8D
FF97 D5 DC DC DD D5
FF98 96 00 00 96 96
FF99 FB FE FE FF FB
FF9A 8D 00 00 8D 8D
FF9B D1 DC DC DD D1
FF9C 8C 00 00 8C 8C
FF9D 8D 8C 8C 8D 8D
FF9E C3 00 00 C3 C3
FF9F 8D CE CE CF 8D
FFA0 E1 00 E6 E7 E1
FFA1 A6 FE FE FE A6
FFA2 00 00 00 00 00
FFA3 8D DE DE DF 8D
FFA4 C8 00 00 C8 C8
FFA5 8D CC CC CD 8D
FFA6 DB 00 00 DB DB
FFA7 8D DE DE DF 8D
FFA8 AA 00 00 AA AA
FFA9 E7 EE EE EF E7
FFAA 00 00 00 00 00
FFAB 9E 9E 9E 9E 9E
FFAC F6 00 00 F6 F6
FFAD C6 F6 F6 F6 C6
FFAE 0D 00 00 0D 0D
FFAF 8D 8C 8C 8D 8D
FFB0 D0 00 00 D0 D0
FFB1 C6 DE DE DE C6
FFB2 0A 00 00 0A 0A
FFB3 8D 8E AE AF 8D
FFB4 CC 00 00 CC CC
FFB5 C6 CE CE CE C6
FFB6 2E 00 00 2E 2E
FFB7 8D AE AE AF 8D
FFB8 C8 00 00 C8 C8
FFB9 BD FC FC FD BD
FFBA FF 00 00 FF FF
FFBB 00 FE FE FE 00
FFBC 17 00 00 17 17
FFBD 8D 9E 9E 9F 8D
FFBE C3 00 00 C3 C3
FFBF 81 C2 C2 C3 81
FFC0 4C 00 6E 6E 4C
FFC1 27 EE EE EF 27
FFC2 8C 00 00 8C 8C
FFC3 81 8C 8C 8D 81
FFC4 4A 00 00 4A 4A
FFC5 26 6E 6E 6E 26
FFC6 04 00 00 04 04
FFC7 8D 8C 8C 8D 8D
FFC8 99 00 00 99 99
FFC9 6E FE FE FE 6E
FFCA 00 00 00 00 00
FFCB 81 80 80 81 81
FFCC 4D 00 00 4D 4D
FFCD 27 6E 6E 6F 27
FFCE CE 00 00 CE CE
FFCF 81 CE CE CF 81
FFD0 4E 00 00 4E 4E
FFD1 27 6E 6E 6F 27
FFD2 BC 00 00 BC BC
FFD3 81 BC BC BD 81
FFD4 50 00 00 50 50
FFD5 26 76 76 76 26
FFD6 D4 00 00 D4 D4
FFD7 3B FE FE FF 3B
FFD8 8E 00 00 8E 8E
FFD9 00 8E 8E 8E 00
FFDA F3 00 00 F3 F3
FFDB C6 F6 F6 F6 C6
FFDC 03 00 00 03 03
FFDD 37 36 36 37 37
FFDE 37 00 00 37 37
FFDF F7 F6 F6 F7 F7
FFE0 F0 00 F0 F0 F0
FFE1 00 FE FE FE 00
FFE2 F6 00 00 F6 F6
FFE3 F0 FE FE FE F0
FFE4 02 00 00 02 02
FFE5 2B 2A 2A 2B 2B
FFE6 19 00 00 19 19
FFE7 C4 DC DC DC C4
FFE8 04 00 00 04 04
FFE9 CA CE CE CE CA
FFEA D1 00 00 D1 D1
FFEB F7 F6 F6 F7 F7
FFEC F0 00 00 F0 F0
FFED 00 F0 F0 F0 00
FFEE 9F 00 00 9F 9F
FFEF F6 FE FE FE F6
FFF0 9F 00 00 9F 9F
FFF1 FA FE FE FE FA
FFF2 D6 00 00 D6 D6
FFF3 F2 F6 F6 F6 F2
FFF4 2B 00 00 2B 2B
FFF5 0A 2A 2A 2A 0A
FFF6 20 00 00 20 20
FFF7 B3 B2 B2 B3 B3
FFF8 01 00 00 01 01
FFF9 00 00 00 00 00
FFFA FF 00 00 FF FF
FFFB EE FE FE FE EE
FFFC 01 00 00 01 01
FFFD 04 04 04 04 04
FFFE FF 00 00 FF FF
FFFF D8 FE FE FE D8
It has been ages,so i do not remember the best and fastest method;
however i do remember that there were many schemes, even some (fairly
good ones) from Intel, but the best and fastest method guarranteed that
every bit got what it needed and no more (that is why it was so fast).
I think the basic scheme was: program a bit once, and read - if OK,
program 4 more times; if bad read, program 2nd time and read - if OK,
program 8 more times.
Net result was 5 total program pulses for each "initial" pulse
required to get a good read.
Most bits took the 5 ties; on rare occasion one would need more.
I think that was derived from a 5 time-constant charge curve.
Note only bits that have to be "set" (ie programmed) need this; all
others can be ignored providing a blank check was done beforehand.
 
T

Tim Shoppa

Jan 1, 1970
0
I can program a completely erased 0x00 PROM to completely 0xFF.

I can "program" a completely erased 0x00 PROM to completely 0x00. I
did this to check for stuck bits, etc.

This is driving me crazy. It may be a timing issue? I am making a
small PCB to adapt the 0v to -47v programming voltages that the
programmer uses for my logic analyzer. Would anyone here know where I
could find a programming protocol for the 1702? I would like to check
my timing against a data sheet.

Sometimes a PROM will have one good byte, then 00, good byte, 00, and
sometimes a byte will not be good. Other times several bytes in a row
are good. I know the programmer can do all of the bits or none of the
bits (those two experiments). At the end is a listing of a few tests.

It can also address all memory locations in the PROM.

You can find the 1702A programming algorithm at

http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/C-160_memDesignHb_May77.pdf

on page 7-17. It's quite a bit more funky than the comparatively
modern 2704/2708/2716 etc. algorithms, in that you are supposed to put
the complement of the address in for a while and then the true form of
the address, etc.

One gotcha that may have found you here: do not fully program byte 0,
then fully program byte 1, etc. You have to do the first program of
byte 0, then the first program of byte 1, ... up through the end, and
then you start back over at byte 0 and repeat for 32 times in total.
From my homebrew 1702A programmers (this goes back thirty years), I
remeber a discussion of "charge migration" occuring if you did too
much programming in one area of the device and not enough in others.
This is somehow related to the voodoo of putting the complement of the
address in before the address and the 32 overall cycles. This might
explain some of the spotty programming success you have.

I can also tell you, you really do want to keep the duty cycle less
than 20 percent. I remember getting impatient, adjusting the one-shots
in my programmer (yes, it was a bunch of one shots!) for a higher duty
cycle, and then seeing a distinct red glow through the quartz window
on top of the device before all the magic smoke got out :).

I dragged out that old programmer about a decade ago when I got a
hankering to revive a lot of my S-100 stuff.

Tim.
 
J

joseph2k

Jan 1, 1970
0
logjam said:
I can program a completely erased 0x00 PROM to completely 0xFF.

I can "program" a completely erased 0x00 PROM to completely 0x00. I
did this to check for stuck bits, etc.

This is driving me crazy. It may be a timing issue? I am making a
small PCB to adapt the 0v to -47v programming voltages that the
programmer uses for my logic analyzer. Would anyone here know where I
could find a programming protocol for the 1702? I would like to check
my timing against a data sheet.

Sometimes a PROM will have one good byte, then 00, good byte, 00, and
sometimes a byte will not be good. Other times several bytes in a row
are good. I know the programmer can do all of the bits or none of the
bits (those two experiments). At the end is a listing of a few tests.

It can also address all memory locations in the PROM.

I got this ASCII picture off of chipdir. I added the voltages
measured at the chip during programming. They are pulsed during
programming like the should be.



+--()--+
A2 | 1 24| Vdd -47v
A1 | 2 23| Vcc 0v
A0 | 3 22| Vcc 0v
Data Out 1 (LSB) | 4 21| A3
Data out 2 | 5 20| A4
Data out 3 | 6 19| A5
Data out 4 | 7 18| A6
Data out 5 | 8 17| A7
Data out 6 | 9 16| Vgg -37v
Data out 7 |10 15| Vbb 12v
Data out 8 |11 14| /CS 0v
0v Vcc |12 13| Program -45v
+------+

Here is a result of a few programming attempts.
<snip>

Found this page, it leads to a datasheet for a 1702A which was a little
different programming wise:

www.jmargolin.com/patents/eprom.htm
 
V

vasile

Jan 1, 1970
0
Are torturing yourself delibelately ?
I'm quite old but the first EPROM I have programmed was 2716 with Vpp
at 12.5V
and some russian 2708 with Vpp at 24V
Do you like tubes too ?
:)
greetings,
Vasile
 
L

logjam

Jan 1, 1970
0
The programmer had A0 and D0 stuck high "most" of the time. The
solder joint has been fixed and I have been happily burning 1702A 256
byte EPROMs. : D
 
R

Rich Grise

Jan 1, 1970
0
The programmer had A0 and D0 stuck high "most" of the time. The
solder joint has been fixed and I have been happily burning 1702A 256
byte EPROMs. : D

Congrats, but why 1702s? Did you just have a thousand of them you need
to use up or something? :)

Thanks,
Rich
 
L

logjam

Jan 1, 1970
0
Congrats, but why 1702s? Did you just have a thousand of them you need
to use up or something? :)

Thanks,
Rich

I build replica Altair 8800 computer kits. The replica ROM card needs
1702s! : ) I pay about $4 for these 256 byte chips! : )

Grant
 
R

Robert Baer

Jan 1, 1970
0
logjam said:
I build replica Altair 8800 computer kits. The replica ROM card needs
1702s! : ) I pay about $4 for these 256 byte chips! : )

Grant
Back in those daze, for the (Santa Clara Valley) Homebrew Computer
Club (remember Gordon French who started it?), i made (it seems)
hundreds of the front panel boards; clones that included de-glitching
fixes and got rid of a lot of jumpers (final run had zero jumers as i
remember).
Sold them at cost to everyone that wanted them, many went to the
group in LA for re-sale.
Got my nose pinched by whatshisname at Altair for selling (at cost)
copies of their BASIC with reversed assembly listing; the idiot claimed
it was patented (*no* software could be patented then) and his wording
was not that far from blackmail (as i remember).
He also complained about the clone boards, but i sucessfully argued
that my boards were different and better (ie a different design).
Had to stop seling or giving away the BASIC stuff, tho.
 
R

Rich Grise

Jan 1, 1970
0
Back in those daze, for the (Santa Clara Valley) Homebrew Computer
Club (remember Gordon French who started it?), i made (it seems) hundreds
of the front panel boards; clones that included de-glitching fixes and got
rid of a lot of jumpers (final run had zero jumers as i remember).
Sold them at cost to everyone that wanted them, many went to the
group in LA for re-sale.
Got my nose pinched by whatshisname at Altair for selling (at cost)
copies of their BASIC with reversed assembly listing; the idiot claimed it
was patented (*no* software could be patented then) and his wording was
not that far from blackmail (as i remember).
He also complained about the clone boards, but i sucessfully argued
that my boards were different and better (ie a different design).
Had to stop seling or giving away the BASIC stuff, tho.

Well, that _is_ the honorable thing to do. Software might or might not be
patentable (I think it shouldn't be), but it _is_ copyright, i.e., owned
by the writer, essentially automatically. You wrote it, you own the
copyright. I feel a little guilty every time I use one of my stolen
programs, but it usually passes. ;-)

Cheers!
Rich
 
Top