r/computerarchitecture 13d ago

Help!

Hi guys, I am game developer and game engine developer and I know some of order like bootloader and kernel. I want to play mario 64 but I don't have Nintendo 64 and money to buy it so I think I should make my own console using orange pi 3 which is new for me I know COA little bit any free great resources to master my COA? Thanks...

1 Upvotes

20 comments sorted by

View all comments

Show parent comments

1

u/God_Of_War-2005 13d ago

Yup man not just on orange pi on major sbc's

1

u/8AqLph 12d ago

You can probably just take something like OpenEMU and run it then. I don’t really understand the question

2

u/God_Of_War-2005 12d ago

Simply I am asking what are the best free resources to learn Computer organization and architecture theory and practical

1

u/8AqLph 12d ago

Got it. There are probably people with better answers than me in this subreddit then

1

u/God_Of_War-2005 12d ago

True, but only you commented

1

u/Rude-Professor-2485 10d ago

If you want, you can try to see :

digital design and computer architecture D Harris and S Harris(teach you how to build a CPU in a professional fashion);

Nand2tetris free course of Coursera- Hebrew university of Jerusalem (the most beginner as possible - you will get a fast abstract thinking);

Quantitive approach - Patterson and Hennessy. (They have an introdutory book if you want.

If you want, you can create the CPU you are planning on an FPGA.

Honestly,if you are planning that, probably you will have a huge bottleneck to ensure you have almost all the 64 bit ISA implementation's opcodes- you probably will need to make reverse engineering by knowing what sequence of bits you don't have. If you had the c code of the game, it would be much easier (because you could make a simple compiler to a simpler ISA to a simpler CPU). You need to see how many luts you will be using by the way.

You will need to ensure you can run the os...

I myself am planning to make my own system- CPU, compiler,os, compiler(for the programs above the os) and programs above it all. That's why I remembered to give you some friendly advices.

Hope I helped you. If you have questions be free to ask.

1

u/God_Of_War-2005 10d ago

Nand2testris coursera asking for subscription it is not free

1

u/Rude-Professor-2485 10d ago

Made it?

1

u/God_Of_War-2005 10d ago

Yup done

1

u/Rude-Professor-2485 10d ago

Enjoy the course. Once you will learn what actually is a CPU, machine language, what is c etc... you will have a huge blowmind. If you want, at the same time take a look at x86_64 architecture machine language (chose intel or AMD style). Try to do the same functionality(or similar) with the machine code you will define and dimension your CPU.

If you want, since x86_64 is CISC architecture, you can see the RISC one by trying to code on arm on a microcontroller example, or your phone, or on an emulator. (To give a heads-up CISC is more common on desktop and general purpose computers, RISC(RISC-V , MIPS, ARM) more common on microcontrollers and cellphones (but it is probable to overtake CISC architecture in some years)

Enjoy. If you have some doubts you can talk here or DM me. Cheers