Searched Projects

Tags: 16 Bit

project.name
49 Stars     5948 Views
Everything is working great in this build!  So I will be taking about a week break from this.
Well except single pixel drawing on GPU but more on that later.

I included a Hello World program and a screen clear test program running by default.
But I would love to see what programs people can come up with. So definitely fork this and make your own programs for it, and link them in the comments below!

Also I am working on adding more instructions for the cpu and the gpu, let me know what might be useful in the comments and definitely check my in progress updates below!

I am running into an issue with per pixel drawing giving a contention error which doesn't make sense as i have tested the chip. unless the rgb screen col and row pins are also outputs i don't get what is going on.

For now though i'm taking a break from that and working on implementing some more of the OPs.

Here is a list of instructions. I'll add descriptions soon.
Anything with a * before it is not implemented yet.
0 NOP [0]
1 JMP [1]
2 SETA [10]
3 SETB [11]
4 LDA [100]
5 LDB [101]
6 WRA [110]
7 WRB [111]

*8 IA [1000]
*9 IB [1001]
*10 DA [1010]
*11 DB [1011]
*12 SLA [1100]
*13 SLB [1101]
*14 SRA [1110]
*15 SRB [1111]

16 ADD [1 0000]
17 SUB [1 0001]
18 MUL [1 0010]
19 DIV [1 0011]

20 EQL [1 0100]
21 NEQL [1 0101]
22 GRT [1 0110]
23 LSS [1 0111]
24 GRQL [1 1000]
25 LEQL [1 1001]

26 SSP [1 1010]
27 PUSH [1 1011]
28 POP [1 1100]
29 LTS [1 1101]

*30 PROC [1 1110]
*31 EPROC [1 1111]

32 SAS [10 0000]

project.name
4 Stars     176 Views

Asynchronous 16 - Segment Array

Asynchronous 16 - Segment Array

Instructions

Set both buttons to off (RED). Now reset the sequencer and turn on button 1 and 2 (set to GREEN). 

Button 1 controls the data fed to the displays.

OFF = Clear all displays ON = Programmed message

Button 2 controls the clock.

To change the message, dump the core or reset the EEPROM and rewrite the suitable data for the 16-Segment Displays. If the new message contains lesser or more letters/numbers to show, make suitable changes to the Sequencer and change the number of displays used.


project.name
2 Stars     135 Views
User:


About the Combinox R1:

This is the third 16-bit CPU I have made. Its new name was inspired by the new combinational code. It is also my first computer to feature a graphics and base ten display. As a result of its brand new architecture, code, and clock it is much faster than my previous CPUs. 


Directions for use:

Choose the desired EEPROM program and insert it into the slot. First press the "RESET" button. Now press the "ON" button and enjoy your program.


Descriptions of programs:

blank: A blank EEPROM to be coded.

count up forever: Counts up by one until it reaches 65,535 then loops back to 0.

2+2: adds 2+2 and displays the output to the number display

transfer from keyboard to display: Displays the ascii value of whatever key is being entered on the keyboard.

random noise: Displays random noise on the screen.

Fibonacci: calculates the Fibonacci sequence 


Credits:

Sanderokian Stfetoneri - clock

Sanderokian Stfetoneri - 16 bit division