This is the first Nintendo DS emulator for Android with a dynarec. Right now the NDS emulator is in beta so there are many bugs and it runs slow. However, I'll try and update it frequently so it gets much better!
What I've been working on
Right now, the emulator emulates both CPUs on a single thread. First it emulates the ARM9 CPU for a while, then emulates the ARM9 CPU for a while. The problem is that switching between emulating the two is extremely slow, since I basically have to flush all the registers into memory and then reload them. I've been trying to emulate the CPUs on separate threads, but right now, there's two problems. Syncing the threads is way too slow. On the interpreter, which I'm using since it's much easier to debug, multithreading basically gives no performance improvement. I'm pretty sure this is caused by a bug in my code, since there's literally no possible way to write this faster. I'm using a spinlock, and using a bigger time slice causes certain images on the screen to flash, since the graphics hardware isn't being update enough. The other problem is that exophase's dynarec isn't exactly built for multiple threads. Each thread needs its own separate copy of each data structure, but the dynarec has global variables everywhere. I'm thinking of literally copy-pasting the code. So basically, if you didn't understand any of that, I've been rewriting a lot of code, and at least, in theory, it should give a big speed boost.
Frequently Asked Questions (FAQ):https://docs.google.com/document/pub?id=1GHzr1oMy7zx3ui2AmOd0nev_qLQsUm85fb151TNKc-MDo not use save states as long term saves. Use in game saves instead. There is no guarantee that save states will work in later updates. In game saves will work. If someone emails me complaining that save states are broken in a later update, I'll just laugh and delete it.
Please email me if you have any problems. I can't really fix bugs if you just post a 1 star review saying it's bad.
Other functions to be added
-Microphone
How to play?
Save your roms in the SD card and launch Dsoid. You will see a black screen showing the stuff in your device. This is the built in file explorer. Use the file explorer to navigate to your roms and select a rom to start playing! The touch button at the middle top of your screen enable/disable on screen control buttons. Refer to the FAQ should you have questions.
Based off of desmume and exophase's dynarec
Email for sourceयह एक dynarec साथ Android के लिए पहली Nintendo डी एस एमुलेटर है. अभी एनडीएस emulator है बीटा में है तो कई कीड़े हैं और यह धीमी गति से चलाता है. हालांकि, मैं कोशिश करता हूँ और यह काफी बेहतर हो जाता है अक्सर तो यह अद्यतन!
मैं पर काम कर रहा है क्या
अभी, एम्यूलेटर एक ही धागे पर दोनों CPUs के emulates. पहले यह थोड़ी देर के लिए ARM9 सीपीयू emulates, तो थोड़ी देर के लिए ARM9 सीपीयू emulates. समस्या यह है कि मैं मूल रूप से स्मृति में सभी रजिस्टरों फ्लश और फिर उन्हें फिर से लोड करने के बाद से दो नकल के बीच स्विच, अत्यंत धीमी है. मैं अलग धागे पर CPU अनुकरण करने की कोशिश कर रहा है, लेकिन अब ठीक है, दो समस्याओं वहाँ किया गया है. धागे सिंक कर रहा है जिस तरह से बहुत धीमी है. यह डिबग करने के लिए बहुत आसान है क्योंकि मैं उपयोग कर रहा हूँ जो दुभाषिया, पर, बहु सूत्रण मूल रूप से कोई अच्छा प्रदर्शन करता है. इस तेजी से लिखने के लिए कोई संभव तरीका सचमुच नहीं है, क्योंकि मैं यह मेरे कोड में एक बग के कारण होता है पूरा यकीन है. ग्राफिक्स हार्डवेयर पर्याप्त अद्यतन नहीं किया जा रहा है, जब से मैं एक spinlock का उपयोग कर, और एक बड़ा समय टुकड़ा का उपयोग कर फ्लैश करने के लिए स्क्रीन पर कुछ छवियों का कारण बनता रहा हूँ. अन्य समस्या exophase के dynarec वास्तव में कई धागे के लिए नहीं बनाया गया है. प्रत्येक धागा प्रत्येक डेटा संरचना की अपनी अलग प्रतिलिपि की जरूरत है, लेकिन dynarec हर जगह वैश्विक चर है. मैं सचमुच कोड कॉपी पेस्ट करने की सोच रहा हूँ. तुम उस के किसी भी समझ में नहीं आया तो तो बुनियादी तौर पर, मैं कोड का एक बहुत कुछ नए सिरे से लिखना कर रहा है, और कम से कम सिद्धांत रूप में, यह एक बड़ा गति को बढ़ावा देना चाहिए.
अक्सर पूछे जाने वाले प्रश्न (एफएक्यू):https://docs.google.com/document/pub?id=1GHzr1oMy7zx3ui2AmOd0nev_qLQsUm85fb151TNKc-Mलंबी अवधि की बचत होती है के रूप में राज्यों को बचाने का उपयोग न करें. खेल में प्रयोग के बजाय बचाता है. बचाने राज्यों बाद में अद्यतन में काम करेंगे कि वहाँ कोई गारंटी नहीं है. खेल में काम करेंगे बचाता है. किसी ईमेल मुझे बचाने के लिए राज्यों को एक बाद में अद्यतन में टूट रहे हैं कि शिकायत करते हैं, तो मैं सिर्फ हँसते हैं और इसे हटा देंगे.
यदि आपको कोई समस्या हो तो मुझे ईमेल करें. आप सिर्फ यह बुरा कह एक 1 सितारा समीक्षा के बाद अगर मैं वास्तव में कीड़े को ठीक नहीं कर सकते हैं.
अन्य कार्यों को जोड़ा जाएगा
-माइक्रोफोन
खेलने के लिए कैसे?
एसडी कार्ड और प्रक्षेपण Dsoid में अपने रोम सहेजें. आप अपने डिवाइस में सामान दिखा रहा है एक काली स्क्रीन देखेंगे. यह फाइल एक्सप्लोरर में निर्मित है. आपके रोम में नेविगेट और खेल शुरू करने के लिए एक रॉम का चयन करने के लिए फाइल एक्सप्लोरर का उपयोग करें! अपनी स्क्रीन के बीच शीर्ष पर स्पर्श बटन सक्षम / स्क्रीन नियंत्रण बटन को निष्क्रिय कर देते हैं. आप प्रश्न हैं चाहिए पूछे जाने वाले प्रश्न का संदर्भ लें.
Desmume और exophase के dynarec के बंद आधारित
स्रोत के लिए ईमेल