(08-01-2012, 09:56 PM)montcer9012 Wrote: I am not a programming, but once you understand how computer work you may understand the emulation work. Here is an example:
A PC works like a building; imagine it is the mayor one of a town called PC and the Mayor is the CPU.
First, the building of the Mayor need some corridors where people can walk. Logically, those corridors toke people some place; and on every office buildings exist different departments where each one have some work to do. Those workers are the process. So, those corridors connect all departments and the building it self; this is the motherboard.
So, after one department got job to do, it have to inform the mayor waiting for his approval. Remember that on the motherboard exist different pieces and every one need the Mayor approval; what they do? they must go to the mayor office but for that they need to wait they turn on a lobby called RAM.
After every person is seen by the Mayor they are considered done.
This is a very superficial and simple look of the main work on a computer cause it is much more complex; either way, that example is the most important thing about the computer and how it work.
So about the main question; how do people make those programs like JPCSP or PCSx2?.
First, they have to understand how does work the console they are trying to emulate (PS:1, PS:2, PSP, etc).
Second, start the emulation process; this means make an computer language that toke the game process (Different to a PC process due the different machine are going on) and delivery it to the correct part of the PC that will work it. E.g: Toke the sounds and redirect it to the sound car.
Third, decide on what language emulate it cause the process are on a binary code (That is the language of most CPU) and depending of the OS (Which is the one that communicate whit the CPU) they must work on hexadecimal code, Java, C++, etc.
As i say, this is a very simple concept of the whole subject cause it is much complex. The tip for make a working emulator? Understand how work the console cause you will know about programming but if you don't know how make the console process work on a PC, you are on zero.
Thx for the comment, but what if I want to Understand those log thingies that always appear when jpcsp crashes? if I understand Java, am i going to understand those logs? or is it far more complex than that?