पुराने गेम कंसोल को सॉफ़्टवेयर में कैसे पुनर्जीवित किया जाता है: एमुलेटर आर्किटेक्चर — इंटरप्रेटर, JIT डायनामिक रीकॉम्पाइलेशन, Fastmem और साइकिल एक्यूरेसी