End of RC2016/10

This evening some people of the local hackerspace “B+ Westland” visit my place to look at the 4004 project. We have study some assembly code for the 4004. This was very nice.

20161031_220015-1

We have look at the result of my project and we have also study some other project’s from other people.

This is the end of the RetroChallenge 2016/10. I wish I have more progress the last month, but I am still happy with the result. This week I go to make/finish some little program’s to do the challenge for the Roborama-game’s of the Dutch Computer Club next weekend.

Here is my goal not to win, but to do the challenge.

 

 

 

 

 

 

Keep moving the Intel 4004

Last week i have a very little time so I couls only make some little progress. I have program some little routine’s for the 4004 processor in assembly to make some little demo’s

 

Next week I hope to have some more time so I can work on some bigger programm’s. With this bigger program’s I could run the Roborama challenge on November 5 2016.

I have so much to do in so less time !!

But, during this Retrochallenge 2016/10 I have a lot of fun. Working with the assembly for Intel 4004 processor is a nice challenge for my. I keep going during the next couple month’s.

I would thank’s the organization of the Retrochallenge to motivate me to work on this project.

 

Working in 4-bit’s

It’s a nice challenge to program the Intel 4004 processor. All the registers and accu are 4 bit wide. So when you want to make a little delay I need at least 4 register’s to create a nice wait-delay. This hole weekend I study and work at my program with a couple of subroutine’s.

code_t

I make a lot off progress and hope I can finish next weekend the main program to run 2 or 3 challenge’s for the Roborama game’s on 5 November at the Robotica club.

Happy Programming the Intel c4004 !

 

Robot car

I want to show you the robot car I have build for the Intel 4004 processor. The frame-work fot the robot is a vero-board print. Mounting 2 motor’s under it, a line-following sensor strip in the front and a powerpack an motordriver on the top of the print. A voltage meter fot the level of the LiPo accu’s complete the frame-work.

20161015_144845

On the 4002 RAM I have 4 output pin’s. These are connected to the motordriver. 2 Bit’s for direction for the 2 motor’s and two bit’s to set the motor ON or OFF. On the 4001 ROM I have 4 input pin’s. Tree of them are connected to the line-following sensor en the last one is connected to a press-button on the back of the robot-frame-work. I can use this one for start or stopping the robot in the program for example. After testing the hole setup it is time to program some stuff in 4004-assembly to finish the Robot-game’s.

First I must go to describe very good the goal of the game for myself.

Halfway the Retrochallenge 2016/10 and still a lot of things to do. Let’s GO !!

 

Running 4004 on 736 kHz

Last day’s I have work on the speed of the Intel 4004 microprocessor. In the Propeller assembly program I have do a lot of tuning and debugging and now I run at a clock speed of the 4004 processor of 736 kHz. This is very nice. Also I have test the I/O at this speed. It work’s !!

Now I go to build my 4004 system on a robot car.

Setup my Intel 4004 system

A couple years ago I get a white ceramic gold pinned Intel 4004 processor. I was so happy to have it and I put it in a very nice box. Later I ask myself: “Could it work”. Or a better question: “Could I bring this 4004 processor  to live”.

2 Years ago a read the blog from Frank Buss and this was my start to build around and program the Intel 4004 processor. Frank Buss use a Pic-processor to clock the 4004 and also hold the ROM image with the program for the 4004 processor. I have make some project’s with the Propellerchip from Parallax and decide to use this chip as clock and also as ROM, but the ROM-image for the 4004 I store on a SD-cart. So when I want to change a program for the 4004 I need to change the file on the SD-cart. On a vero bord I build a system for the 4004. I use a couple 16-pin’s ZIF-socket for the 4001, 4002 and 4004.

2016_1005_b

There are 3 powersupply’s, the first is a 15 Volt for the MCS-4 chipset and the second is a 3.3 Volt for the Propellerchip. There are some glue-chip’s to convert the 15 Volt from the MCS-3 chipset to the 3.3 Volt of the Propellerchip. And at the left under side there is the SD-cart in it’s holder.

The Intel 4004 processor is a 4 bit processor with a 4-bit multiplexed adres bus. An 4001 ROM contain’s 256 byte memory and 4-bit’s I/O. You could connect 16 ROM’s to the system wich give’s you a 4K memory.  A 4002 RAM hold’s 4 bank’s of 20 4-bit’s memory’s and 4-bit output. And there is a 4003 serial in, paralel output chip. This 4 chip’s are called together the MCS-4 chipset.

I decide to use only the originel MCS-4 chip’s added with the propellerchip with act as ROM for the 4004-program. The I/O from the 4004 to the real world I want to do with the 4001 and 4002.  This bring’s me to a big problem. The normal around these time’s of the 4004 you send your papertape with the program for the ROM to Intel and the make them. Include the metal-mask setting’s for the I/O. You must to specify the pin’s for Input or Output. When I want to use a real ROM as input of my system I need a 4001 which have NOT the internal numer of zero (because the system start on ROM page-0 witch is the propellerchip) but the I/O pin’s set to Input. So I search on the internet for 4001-ROM chip’s. I buy 10 of them and first I read the internal page-number. 6 of the 10 have the number-zero so the are useless for me. The other 4001-ROM’s I tested to write to and read from the I/O and at least 1 4001-ROM have 4 Input’s.

So I have a 4004 microprocessor, a good 4001 ROM with 4 Input pin’s and a 4002 RAM with 4 Output pin’s. With this I could build a system to control a robot.

 

 

 

i4004 Project

During the  RetroChallenge 2016/10 I go to work at my i4004 project. Last year I have build a system around the first Intel processor, the Intel C4004. Mayby 15 year’s ago I get a white ceramic gold pinnend Intel 4004 processor. All the time it was stored in a box and 2 year’s ago I start to think to bring the processor to live.

A cople year’s ago I read the blog writen by Frank Buss and this was for me the start to build also a system around the i4004.

The first step of the Challenge I want to use to documentate the status of my project and set the goal’s.

i4004_low