Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] [Moved]: 8 bit computer questions

Status
Not open for further replies.
Hi,

I corrected my quote text in post #18. Now it makes more sense. Hopefully.

Klaus
 
  • Like
Reactions: Hurst

    Hurst

    Points: 2
    Helpful Answer Positive Rating
Yes it made more sense.
 

on my CPU I want it to run geos its the old commodore 64

I remember Geos. The disk came with my C-64. It's a simple imitation of the Macintosh GUI. It was fun to try out for a while. However it's hard to picture doing serious work with it.

It had a word processor. The fonts were low resolution. It had a drawing program, also low resolution. Printouts were low resolution, from my dot matrix printer. No color, everything is b&w.

It won't be easy to get your homemade CPU to act like a C-64. The C-64 has a specific location for screen memory, and scores of other functions. The Geos software was aware of these locations, and it cooperated with them. It knew where to jump to internal routines that execute tasks. Some jobs were performed by auxiliary IC's, and some by the CPU. Your homemade CPU has to respond in all the same ways as a C-64. If your CPU makes one unexpected move, then a crash is likely.
 

Good to know
 

If you just wanted to recreate a C64 it might be more interesting to build a
standard intel board and run one of the emulators you can download online.
I think most of a basic (early) PC can now be had on a single chip so it
probably wouldn't be too hard to achieve.
On the other hand you could go the whole hog and build your own cpu
There are some useful 74 series ALU's if I remember rightly.
That could be a fun project if you have a couple of decades to spare!
 
  • Like
Reactions: Hurst

    Hurst

    Points: 2
    Helpful Answer Positive Rating
Hi,

If you just wanted to recreate a C64 i
.. or program it into an FPGA...

Klaus
 
  • Like
Reactions: Hurst

    Hurst

    Points: 2
    Helpful Answer Positive Rating
K, I mostly doing this to show everyone I can, I'm 15 so I have alot of years left...

- - - Updated - - -

Quick question where can I get a 8 bit alu, because I just realized its very primitive.
 

Quick question where can I get a 8 bit alu, because I just realized its very primitive.

ALU is both hardware and software blended together. The CPU instructions will be decoded and converted into microcodes and executed. You need to design your instruction set and plan how they will be executed. Ultimately all instructions can be converted into NAND and NOR but I am not sure whether you can buy an off the shelf ALU.
 

K, I'm realizing that's my alu can only add and subtract...

- - - Updated - - -

Also do you have an American version of that link that isn't UK, dont get me wrong I love the UK, home of yogscast, but I really would like it to be a USA link.
 

Thank you, this helps my 8 bit computer... My dream goal is to build a 2.2 trillion bit computer using just ICs.

- - - Updated - - -

Do you guys know where I can get the pinout of a NES CPU
 

K, I'm realizing that's my alu can only add and subtract....

But if it cannot do jumps, both conditional and unconditional, it will be useless. I believe that too is part of the ALU.
 

I think your right, and I think it can jump but still
 

The function of an ALU is to reduce all arithmetic operations to additions and/or subtractions.
(It also identifies the relevant logic to those operations - (equality, zero etc)
In TTL a 74181 would be an example of an ALU. It operates on 2x4bit words (and is cascadable
for 12/16 bits etc)

- - - Updated - - -

According to wikipedia the NES uses a "Ricoh CPU based on the 6502 core"
I would read that as "not necessarily the same as a 6502" as I don't know the hardware
but it is worth noting I think.
 

The function of an ALU is to reduce all arithmetic operations to additions and/or subtractions.

You are correct: addition is one of the fundamental operations. Integer operation is carried out by ALU. Subtraction is carried out first by complementing (2's or 1's; that depends) and then adding.

Integer multiplication is also done by ALU. Multiplication of two 8 bit numbers will produce a 16 bit integer and the result will be stored in the accumulator and the user has to find some way to store the result.

Integer division is difficult and needs table lookup and both remainder and dividend are available to the user.

Addition and subtraction produce carry /borrow that need to be handled by the user.

Bit shift and rotate are also done by ALU. I have forgotten all that ALU does but the list is long.

There are numeric coprocessors that can do sine, cosine, tangent, logarithm, exponential etc etc. They are not done by ALU.

All arithmetic operations cannot be reduced to additions and /or subtractions. Many of the above functions are carried out by table lookups (Pade approximations).
 
K this helps much. I'm going to make the CPU work with the NES
 

So for the time being this is solved because I'm changing my focus to making my own CNC machine and I'm going to come back to this later since for the CNC machine I know where all the parts I need are... Thanks for your time and effort to help me on the 8 bit computer...

Thanks, Hurst.
 

I would like to suggest 8085, 8088 or 8086 for your design. Good luck.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top