Close
0%
0%

PERSEUS-8 homemade 6502 computer

The PERSEUS-8 is the enhanced version of the minimum configuration type the PERSEUS-7 6502 computer

Similar projects worth following
In 2020, I developed the PERSEUS-7, a minimum configuration version standalone computer with the 6502 CPU. On the PERSEUS-7, It can run software up to 1kB, but I need more memory space to implement simplified floating point interpreters and so on. Therefore, I started to develop PERSEUS-8 as an extended version of the PERSEUS-7. The features of the PERSEUS-8 are as follows.
(1) The DMA address setting, which was 10 bits in the PERSEUS-7, is now 16 bits for the entire the 6502 CPU space.
(2) Implemented 16kB of battery-backed RAM so that the software is always saved. 8kB of it can be switched with PROM.
(3) The single step control circuit uses the same circuit as the proven PERSEUS-7.
(4) The enclosure has almost the same outline as the PERSEUS-3, but both sides of the main board are accessible.

1. Concept

Since this computer uses a CPU that is about 45 years old, it cannot compete at all with today's computers in terms of performance. However, I wanted the PERSEUS-8 to have functions and appearance that would remind us of concepts that today's computers has lost. Figure 1 shows the appearance of PERSEUS-8.

Fig.1  Appearance of PERSEUS-8

2. Enclosure

The enclosure of the PERSEUS-8 is assembled cut out of aluminum materials. I used 2mm thick aluminum sheets and 15mm and 10mm aluminum angles. Only the bottom plate is made of 1mm thick aluminum. M3 screws and nuts were used to fix each part. This method is quite tedious, but it allows me to design my own free will. The outside dimensions without handles and rubber legs are WHD: 300 x 88 x 310 mm. The front panel was sandpapered for a hairline finish, and the side and top panels were painted with gray lacquer spray. Figure 2 shows the enclosure components before assembly. 

Fig.2  Enclosure components of PERSEUS-8 before assembling 

The following video shows the assembly of the enclosure.

3. Hardware configuration

Figure 3 shows the hardware block diagram and Fig.4 shows the main board of PERSEUS-8. When the CPU is set to the halt state by the front panel switch, the memory address and data can be set with Direct Memory Access (DMA) by the toggle switches on the front panel for programming. In this state, single-step operation is possible. The single-step control circuit performs these controls. The schematics (PERSEUS-8_schematics_01.pdf) are on the attached files.

Fig.4   Main board of PERSEUS-8

4. CPU

The CPU is the R6502A, the same as the PERSEUS-7, but driven at the highest clock speed of 2MHz.

5. Memory

The memory devices are two 64 k bit SRAMs (HM6264BLSP-10L). The total memory capacity is 16 k bytes. Of these, 8 k bytes were mapped to the zero page area side and 8 k bytes to the vector area side. The SRAMs were backed up by a 3.6V, 70mAh Ni-MH battery, the same method used in the PERSEUS-3. The supply current of the memory IC in the backup state is only 0.56 µA. It has a proven track record of retaining memory contents stably for 10 years. The memory protection switch was installed on the front panel this time, as it was difficult to use on the main board of PERSEUS-3. For the ROM, four 16kbit type 2716 PROMs that can be programmed with a homemade PROM programmer can be mounted. The ROMs can be selected between the RAM on the vector space side by a switch on the main board.

6. Panel switches and LEDs

Figure 5 shows the front panel switches and LEDs. 

Fig. 5   Panel switches and LEDs of PERSEUS-8

Sixteen address switches are connected to address bus though 3-state buffers (74HC244). Eight data switches are also connected to data bus though 3-state buffers (74HC244). The address LED displays the execution address of the CPU, not the address set by the DMA. This is almost the same circuit as PERSEUS-7 except for the address bus width. In the serial interface, there are LEDs on the transmit/receive signals so that you can directly recognize the communication status.

7. Single step execution 

Figure 6 shows the single step control circuit and Fig.7 shows the corresponding timing chart. The single-step circuit was designed to be as simple as possible by referring to the references [1],[2]. In R6502, there is no halt signal, but since the CPU sends out a SYNC signal in the first machine cycle M1 of each instruction, this can be used to disable the RDY signal given to the CPU to create a single step execution. The following is a description of how it works.

Figure 7 is the case of a single-step operation of an instruction that takes two clock cycles to complete the shortest machine cycles. The timing values in Fig.7 are based on actual measurements using an oscilloscope.

When the RUN/HALT switch on the panel is set to the HALT side, the...

Read more »

PERSEUS-8_Power_supply_schematic_01.JPG

Power supply schematic of PERSEUS-8

JPEG Image - 1.18 MB - 05/21/2021 at 22:42

Preview
Download

Source_code_MEMORY_TEST-1_1_0.pdf

Marching memory test program for PERSEUS-8

Adobe Portable Document Format - 26.60 kB - 05/02/2021 at 13:08

Preview
Download

IMG_1577.jpg

Inside of PERSEUS-8

JPEG Image - 3.67 MB - 05/02/2021 at 13:04

Preview
Download

IMG_1578.JPG

Back side of PERSEUS-8

JPEG Image - 1.81 MB - 05/02/2021 at 13:03

Preview
Download

PERSEUS-8_schematics_01.pdf

PDF version schematics of PERSEUS-8

Adobe Portable Document Format - 350.11 kB - 04/19/2021 at 09:29

Preview
Download

View all 9 files

  • 1 × R6502A Microprocessors, Microcontrollers, DSPs / Microprocessors (MPUs)
  • 2 × HM6264BLSP-10L Memory ICs / Static RAM (SRAM)
  • 4 × D2716-1
  • 2 × MC68B50P Microprocessors, Microcontrollers, DSPs / IO Controllers
  • 3 × SN74HC00N Logic ICs / Gates and Inverters

View all 14 components

  • PERSEUS-8 project log

    Mitsuru Yamada05/02/2021 at 13:55 0 comments

    1. The article was first posted on Apr. 17, 2021

    2. Revised on May 2, 2021

          Added a photo of the back panel and power supply in Fig. 9 and its explanation in Chapter 9.

          Added the source code for the marching memory test (Source_code_MEMORY_TEST-1_1_0.pdf) to the attachment.

          Added an inside overall picture (IMG_1577.jpg) and a back side picture (IMG_1578.jpg) to the attachment.

    3. Revised on May 22, 2021

         Added the schematic of power supply (PERSEUS-8_Power_supply_schematic_01.JPG) to the attachment.

    4. Revised on May 28,2021

         Added the video (Floating-point arithmetic on homemade computer PERSEUS-8) to the detail.

View project log

Enjoy this project?

Share

Discussions

hitlp wrote 05/21/2021 at 13:44 point

Hello, Mitsuru. I don't know if you care, but can you share the computer's power schematics? :-)

  Are you sure? yes | no

Mitsuru Yamada wrote 05/22/2021 at 00:51 point

Thanks. I have added the schematic of power supply section on attached files. Now I am continuing to work on making floating point calculation software on this computer.

  Are you sure? yes | no

j_mclay wrote 04/30/2021 at 11:47 point

Beautiful hardware.

  Are you sure? yes | no

Mitsuru Yamada wrote 04/30/2021 at 13:18 point

Thanks. Now I've finished the power supply and back panel part, and I'm working on the utility program. Please wait until this part is released. 

  Are you sure? yes | no

don.vukovic wrote 04/28/2021 at 16:27 point

Brings back many memories, I built my first 6502 with 2K of RAM, 4k EPROM and 6850 Serial chip, In 1976 !  I always wanted to add a front panel like the Altair 8800, but the cost was too much for a mere college student.

  Are you sure? yes | no

Mitsuru Yamada wrote 04/29/2021 at 00:57 point

Thank you for your comment. I also built my first such computer myself in 1980 when I was a student, using an MC6802. However, this was not very practical in the end, because I made the address setting toggle switches on the panel only for 8 bits, and I did not add LEDs for indicate step execution address. The current series solves those problems, and I am enjoying debugging with toggle switches comfortably.

  Are you sure? yes | no

geiss.kh wrote 04/24/2021 at 06:48 point

a nice traditional project ... i love it ... where did you get the wirewrap ic sockets ... i my working time i did many things with wrap wires ...

greetings from north-sweden

  Are you sure? yes | no

Mitsuru Yamada wrote 04/24/2021 at 08:18 point

Thanks. I used to get wire-wrapping IC sockets made by OMRON in Japan through the Japanese Internet shop. However, I just checked again and it seems OMRON stopped accepting orders for anything other than the single inline type in March of this year. Digi-key seems to have Preci-Dip sockets available.

  Are you sure? yes | no

geiss.kh wrote 04/24/2021 at 11:34 point

thank you for the Info i will have a look there ....

  Are you sure? yes | no

t.rohner wrote 04/29/2021 at 05:56 point

I have a bunch of those sockets around from back in the eighties. If you pay for the shippment, i could send them. I had a Ohio scientific superboard, then a PET2001 with cassette tape.(6502 computers) Later i built a Z80 based MicroProfessor clone with wire wrap. We used Z80 at my workplace and a programmer wrote a macroassembler for it. Later we switched to 68000 for robotics controllers. I wrapped a prototype for it... what a wire chaos.

  Are you sure? yes | no

Mitsuru Yamada wrote 04/29/2021 at 08:46 point

Thank you for help us about IC sockets getting. As for me, the single inline type is still available in Japanese shop, so I will buy that. The DIP type is also likely to be in circulation stock for a while. If that becomes impossible, I may consult you. Recently I found out about the Ohio scientific superboard computer on the net, but back in the 1970s I had no idea about it in Japan.

  Are you sure? yes | no

Dan Maloney wrote 04/21/2021 at 17:15 point

Wrote this up for the blog, BTW. Should publish soon. Amazing work again!

  Are you sure? yes | no

Mitsuru Yamada wrote 04/22/2021 at 08:23 point

I deeply thank you for publishing the introductory article on PERSEUS-8. I believe that we need such a computer as a device to understand the very basic principles of computers. I also hope that readers will find it new and exciting as a fun subject to build.

  Are you sure? yes | no

Ken Yap wrote 04/22/2021 at 10:25 point

👍 and after making something like this you feel like you have really built something.

  Are you sure? yes | no

Brian Decker wrote 04/22/2021 at 10:52 point

Mr. Yamada- thank you for sharing your work with us and setting an example of quality that we should strive for in our own projects. 

  Are you sure? yes | no

Steve L wrote 04/20/2021 at 23:48 point

Big points for making a rack mount from scratch.  It isn’t “hard core” homebrew if it’s not wire-wrap. This is not my electronic design but I wire wrapped it: http://juliepalooza.com/sl/pdp8e.htm. I did it about 20 years ago and it still works fine.

  Are you sure? yes | no

Mitsuru Yamada wrote 04/21/2021 at 00:38 point

Thanks. With scratch building, I like the idea of being able to completely realize my own design, I first tried that over 40 years ago when I built the shortwave receiver in the link: https://www.youtube.com/watch?v=oWgypUsDFcE&t=17s .Wire wrapping is nice because it's easy to modify the circuit. Your PDP-8 is very complete.

  Are you sure? yes | no

Cees Meijer wrote 04/20/2021 at 19:44 point

Very nice. Of course there are many 6502 SBC projects, but your housing is absolutely magnificent!

  Are you sure? yes | no

Mitsuru Yamada wrote 04/21/2021 at 00:33 point

Thanks! I don't use a PC for software development environment, but develop software up to several KB in size using only the toggle switch input on this panel and single-step debugging. Therefore, I designed the panel in such a way that it will keep me motivated.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates