Will it run Doom?
 100%  [ 11 ]
 0%  [ 0 ]
Total Votes : 11

I'm working on a new ultra-simple (yet still somewhat practical) cpu architecture. It's a 6-bit analog system, with 4 working registers, 64 bytes of RAM and 64 bytes of Program ROM. The end goal of this architecture is to create the most possible programmer freedom within these 64 bytes, while keeping the datapath and controller as simple as possible.

I've done some z80 programming, so I know the instruction set but I want some feedback from experienced developers to see if I am missing any vital instructions, or if things you'd like to do are overly cumbersome. General feedback is also greatly appreciated.

Instruction Set:

As with z80, registers are A,B,C,D.
A is the accumulator register, so ADD, SUB, and CP instructions are applied with it as the second operand, and stored into A
B is used for loop counters, with DJNZ
C is used for return addresses when a CALL instruction is executed, and is copied back into CP when a RET is executed
D is a pointer register, it is used to access values in calculated addresses

New instructions compared to z80 are carry-conditional instructions (CLD, CEX, CINC, CDEC). They are only executed if the carry is '1'.

There are no bitwise instructions, as the underlying analog hardware is not well suited to implement these. Though if you think these are essential, I can try to fit them in.
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot 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