My MCS-8 8008 CPU tester

Post new topic   Reply to topic    CPU-World.com forums Forum Index -> News
View previous topic :: View next topic  
Author Message
MHz



Joined: 13 Nov 2009
Posts: 271

PostPosted: Thu Jun 23, 2016 1:08 am    Post subject: My MCS-8 8008 CPU tester Reply with quote

Hi,
I would like to present o project of 8008 CPU tester that I built for myself. Main idea was to gather some practice in 8008 programming. The other to test cpus that I have. Effect of those ideas is below.

Features:
- Two clock speed: 800 kHz and 500 kHz,
- Autorecognition of selected speed,
- Two types of clock timing: skew (fully meets technical specification requirements) and symmetric (simplified, not fully meets timing requirements). It is possible to choose any combination of clock speed and timing type.
- Digitally synthetized clock,
- Build in 16x8 led display for presenting information,
- Includes pseudo random numer generator,
- On board negative voltage regulator– it uses additional 7909 regulator for more stable voltage,
- Two buttons user interface,
- Firmware counts 4 programs,
- Power supply from mini usb port (5V 1A),
- Board size is 10 cm x 10 cm.


There are four programs burned in the eeprom memory:
1. Moving sentence: there is a sentence moving from right to the left displayed. It is “MCS 8008 @ 800 KHz ok” or “MCS 8008 @ 500 KHz ok” depending on selected clock speed. Using button it is possible to make it move faster or slower.

2. Sparks: led diodes are displayed randomly. Using button it is possible to display more of them at the time.

3. Moving ball: a point is moving on the display and bounce off the edges. There is also randomly selected point that is an additional obstacle for the ball. Using buttons it is possible to change the position of the obstacle.

4. Hypnotising worms: this program includes two effects. First is an alternate turning on and off of the left and right display. The length of the on and off period changes over time. Second effect displays moving lines.


The software is burned in 2kB eeprom memory. Almost half of it is occupied by display sending procedure. Eeprom itself is nice chip. It is in ceramic case which is unusual for this type of chip.

Writing program was really enjoyable. Assembler language for MCS-8 differs from other assemblers for other microcontrollers. For example there are separate commands for moving data between registers (LBA, LBA …) instead of one command that required pointing source and destination registers. The CPU has only 7 working registers and no external RAM so it was not easy to make it work as I planned but finally I managed to implement almost all software functions. The only one missing is the second obstacle for moving ball program.

I tested all of my 8008 cpus on this board – all worked properly.
Now the project is completed. I gained a lot of knowledge about functioning and programming 8008 system. It turned out for example, that IO bus a derivative of memory address lower 8 bits or that starting procedure is done using interrupt (it is really tricky solution).

I ordered few more boards for this project. If anyone would like to buy this tester the price of mounted system is 65$ including shipping.
Back to top
View user's profile Send private message  
Display posts from previous:   
Post new topic   Reply to topic    CPU-World.com forums Forum Index -> News All times are GMT - 5 Hours
Page 1 of 1
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum

Powered by phpBB © 2001 phpBB Group