• Please review our updated Terms and Rules here

4004 sim4-01 development systems

Dwight Elvey

Veteran Member
Joined
Jun 20, 2003
Messages
5,078
Location
Santa Cruz
For those that might have a SIM4-01 or a SIM4-02 with a MP7-03 programmer card, I've located the original AD542 EPROM. If you have the normal EPROM set AD540, 541 and 543, those are only used for 1702A chips and will damage 1702 chips for programming. They need shorter pulses and more rest time between programming pulses.
I don't know which versions of the MP7 programmers this will work with. I know that the MP7-03 has the timing for both A and nonA chips. Older versions may have modified timing for the A type so be careful as I know some of the older programmer cards had modifications to do 1702As faster.
I've finally located a 542 for the 1702. I believe this has code to go with the 540 and 541 to program 1702 ( non-A ). My understanding is that it will program 1702A chips as well but will be quite slow.
The MP7-03 has two different inputs used to trigger the pulse generators for the 1702 chips programming.
I need to disassemble it to make sure it works with the released versions of 540 and 541.
This has taken years to locate.
The code for 540, 541 and 543 is in the 4004 users manual on Bitsavers. It is assumed by 1973 that you'll not be getting any 1702 (nonA) EPROMs to program. Reading doesn't care which you have to read.
If anyone is interested, let me know.
 
For those that might have a SIM4-01 or a SIM4-02 with a MP7-03 programmer card, I've located the original AD542 EPROM.
If anyone is interested, let me know.
Dwight, you happen to know that I'm interested, because you and I have corresponded on the Pittman 4004 SIM-4 ROM-based assembler, which eventually uses the MP7 programmer boards to program a ROM with the assembled code. You certainly should add your ROM binary and your disassembly to your github archive of the Pittman assembler and MP7 ROMs. And, to the same archived ROMs and disassembly at bitsavers.org under components/intel/MCS4. As I already carry on my Web site, the Pittman assembler and your various 4004 discussions in this forum and with me, on my Web page as below, I'll be glad to obtain the ROM image and also disassemble it.


More places for these codes and more discussions are better.

Herb Johnson
retrotechnology.com
 
I've still not taken the time to debug address error on my SYM4-01. I need to do that before reading the AD542 EPROM.
On a separate subject, I was looking at the description of the stack in the instruction manual on bitsavers. I was looking at the description of the stack in the programmers manual. I can see why it is so confusing as to how the stack works. The main users manual is much clearer.
"The address register contains four 12 bit registers; one register is used as the program counter and stores the instruction address, the other 3 registers make up the push down stack. Initially any one of the 4 registers can be used as the program counter to store the instruction address. ----"
It doesn't say it is always using the same register of the 4 for the current program counter, it says and of the 4 could be used. I doubt there is even one specific one used after reset, why bother. Note the "Initially any one of the 4 registers".
So, you have 4 registers and at any one time, one is being used at the current program counter. The other 3 used by the JMS to keep track of the return. The Programmers Instruction manual does a poor job of describing the fact that there are "4 registers", not that any of the 3 could be used as the stack at any one time and those 3 are only important to the current running program. One can intentionally do a 4th JMS or 5th JMS and overwrite the initial return addresses with a new ones as the returns are later done.
The programmers Instruction Manual does a really poor job of describing this. This is why I make the distinction that a program written for the 4004 may not run as intended if run on a 4040. They are different.
I'll get to the AD-542 soon Herb. It is only important if one wants to program a non-A 1702, using the programmer card with the 2 programming sets of pulse timers.
Dwight
 
Back
Top