doublec Posted July 6, 2005 Share Posted July 6, 2005 I keep the dsemu Darcs repository updated between releases for those who want to try out features between releases or to hack on the code. Details are here: http://www.double.co.nz/nintendo_ds/dsemu.html#source Recently I pushed a partial implementation of the IPCSYNC register. This is used by the Nintendo Downloadable E3 demos to synchronise actions between the ARM7 and ARM9. I'll post on this thread as I add things to the darcs repository. Currently working on: - Finishing IPCSYNC. Raising interrupts when the register changes is all that needs to be done.- Fixing implementation of coprocessor 15 memory regions. The memory access routines do not take into account the fact that the regions can be changed. This affects ARM9 memory access.- Implement FIFO registers.- Try to get dslinux further along its boot process. Still looking into what is lacking in the DS graphics support. Any requests for features? I can shuffle the order of things around if there is interest. Link to comment Share on other sites More sharing options...
Robert Posted July 6, 2005 Share Posted July 6, 2005 I don't know anything much on the technical side, here's my list: * Get X and Y keys working * Get graphics working better to whatever level you are able to do * At one stage dsemu could play GBA demos, this hasn't worked for a while. Although not important (there are other GBA emus around), the real DS can play them, so any DS emu should be able to as well. * Is it possible to read a rom's header info to determine if it's a GBA or DS (wifi) or DS (passme), or whatever else? Rather than manually loading GBA or DS? * Be able to support passthrough (PME / DS.GBA / NDS.GBA) demos * Sound * Is it possible to somehow automatically determine what kind of touchscreen support is needed (different ndslibs) and work accordingly? I'll post more if I think of something.Hope it's not too much. Link to comment Share on other sites More sharing options...
doublec Posted July 7, 2005 Author Share Posted July 7, 2005 Thanks for that. The GBA emulation is broken because I don't build the gba DLL file. I'll be including that in the next release or two. Hopefully I haven't broken anything in that area. I can determine if things are a gba or ds file I think, I'll have a play with it. The touchscreen support should work whether ndslib1 or 2 is being used. I've implemented the lower level touchscreen support (the serial access to the touch screen controller) which all touchscreen access goes through eventually. My initial stab at this should work for ndslib as I specifically implement the access protocol they are using to talk to the touchscreen controller. Other libraries will probably work. Some do things slightly differently and I'll be more completely implementing the touchscreen controller soon. I recently downloaded the docs for it so hope to be able to fully emulate it. On the good news front, I got DSLinux partially booting yesterday. It runs up to the point of mounting the root partition and then fails there. This required lots of fixes to the ARM9 instruction emulations. The code is in the darcs repository. DSLinux does lots of stuff with interrupts and cpsr manipulations that most homebrew demos don't so it's a good test. There are still a few problems in the emulation of some arm instructions so I may need to write some test cases of all the instructions to iron things out. It'll be good for regression testing changes to the emulator too. So I'm pretty much working in the following order: 1. Fix ARM instruction emulation bugs.2. Get X/Y working3. Finish touchscreen implementation4. Put GBA back in the emulator. 5. Fix up graphics issues.6. Improve debugger7. Sound, and other stuff. I'm pretty fluid though, so the list may change. Number 1 will take a while so it'll be a bit longer for the next release. I need to write some short ARM snippets that execute every emulated instruction to test they all work right. Link to comment Share on other sites More sharing options...
Federelli Posted July 10, 2005 Share Posted July 10, 2005 That's a nice list of things to do . Keep up the great work . Link to comment Share on other sites More sharing options...
doublec Posted July 10, 2005 Author Share Posted July 10, 2005 I've released 0.4.5 with some fixes before I start the things mentioned above. It contains a speed improvement, various bug fixes, and partial mode 5 support. Finally Space Invaders 0.2 runs! But quite slowly unfortunately. Something to work on. Link to comment Share on other sites More sharing options...
Robert Posted July 10, 2005 Share Posted July 10, 2005 I'll have a look when I get back home, in about 9 hours. I'm hoping someone will make a news item in the meantime. Link to comment Share on other sites More sharing options...
Saq Posted July 10, 2005 Share Posted July 10, 2005 cool, i like playing Space Invaders. Nice work doublec Link to comment Share on other sites More sharing options...
doublec Posted July 19, 2005 Author Share Posted July 19, 2005 I've added to the darcs repository for dsemu code that more correctly implements the vram bank mappings. This change allows the latest WinS to work correctly, including both screens and keyboard. Unfortunately some demo's that didn't work before but partially ran now crash so I'm tracking that down before I release a new version. I've also got submitted patches that will go in the next version for x/y key support and a logging window for the GUI. Link to comment Share on other sites More sharing options...
Normmatt Posted July 20, 2005 Share Posted July 20, 2005 nice progress although looking through the debugger i noticed the opcode MCR outputs pF instead of p15 which it should output they are the same but still just looks wrong Link to comment Share on other sites More sharing options...
Robert Posted July 20, 2005 Share Posted July 20, 2005 Nice work Chris keep up the good work. Submitted patches? People sending you code? That sounds good. Link to comment Share on other sites More sharing options...
BoazAdreal Posted July 20, 2005 Share Posted July 20, 2005 Whoa! Accepting patchs from other coders?! That is an awesome idea! Just make sure to let people know what you are tackling and what you would want others to fix. That way you and us coders don't both do the same thing at the same time. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now