Jump to content

doublec

Members+
  • Posts

    52
  • Joined

  • Last visited

Posts posted by doublec

  1. DSEmu 0.4.10 is now available:

     

    http://www.double.co.nz/nintendo_ds/dsemu.html

     

    This has a few new DS graphics features implemented incuding sprites and 8 bit modes. The sprite support has resulted in a few more demos running that are actually playable.

     

    I've posted about the various fixes at my weblog:

     

    http://www.dsdeveloper.co.nz/2006/01/dsemu-0410-is-out.html

     

    Unfortunately the annoying thumb emulation bug is still there but I've put a workaround in place. Hopefully I'll be able to fix that in the near future as its the major reason why some demo's crash or black screen.

  2. I maybe wrong but the the tetris games use an X/Y method that doesn't work on hardware. They check bits in the standard key register whereas they should be checking for them in the ARM7-only keys register. They were probably written in the early pre-hardware emulator days. Can anyone confirm if they work on hardware?

     

    DSEmu implements both the hardware scheme and that used by the tetris games to be backwards compatible. Although I may stop the compatibility one day if it proves to be a problem.

  3. Have you seen the list that Robbbert posted of the games he tested? A few there run. Which games does 0.0.1a run that 0.4.7 doesn't? What information has 0.46 written in stead of 0.4.7? I looked at www.emuforum.de but it seems to be down.

     

    Dualis or IDeaS might be a better choice for you.

  4. At the usual place: http://www.double.co.nz/nintendo_ds/dsemu.html

     

    * Support for the X and Y keys have been added. This can be configured using the Options/Configuration menu option. The code for this was contributed by Normmatt.

    * Many fixes to key handling. Anything but A and B keys were very buggy in previous builds. My 'keys' demo from my tutorials now works correctly and Space Invaders is now playable.

    * Support for GBA games was re-added. It was removed when I first took up support of DSEmu until I understood the code better. It is now back in and will be maintained.

    * The FIFO registers have been implemented. This is an important feature for DSLinux and a step towards support for the commercial downloadable demos.

    * Various bug fixes in graphics code.

    * The compuational accelerator registers have been implemented. Again, a steps towards support for the commerical downloadable demos. Contributed by Julien Hamaide.

    * Workaround for 'console scramble'. There has been an issue since DevkitPro R14 which causes text output using the console output routines to be scrambled. I implemented a workaround in 0.4.6 but it didn't work for homebrew programs built with previous versions. I've been unable to fix the problem so far, so I added a 'Unscramble console text' option in the Options/Configuration menu option. If you run a game and the text appears scrambled, check or uncheck this, and it should correct the problem when you press 'Ok'. I hope to fix this in 0.4.8.

     

    0.4.8 is going to have concerted effort to track down the known bugs rather than working on new features.

  5. Sorry about the delay in replying - I have limited internet access and don't get to surf the web very often, so don't panic if you don't hear from me for a few days. Or buy me a phone or DSL connection :thumbsup1:

     

    The logo's look nice and you are obviously good at making them, but I'd like something more DS specific. Think about integrating something to do with the DS, or the touchscreen, wireless, microphone, etc. Something that defines what's unique about it.

     

    Age means nothing to me so don't worry about that.

  6. There is a problem with Thumb code emulation. GPFerror noticed that some of his demos don't run on dsemu if compiled with '-mthumb' but do if recompiled with '-mthumb-interwork'. For the former all that would happen is a black screen. This may be the reason why some of the demos give only a black screen.

     

    I'm currently looking into this, to hopefully fix it for the 0.4.7 release.

  7. VRAMmap is initialized in MMUMaininit in dsmmumain.c. It is initialized to nulls and then modified by writes to the VRAM registers. This is a recent change to get memory mapping working correctly (from 0.4.6). If you look at the MMUMainremapVRAM_BANK_A, etc functions you'll see where the initialization is done. Not all of it is implemented as I'm unsure how things like extended palletes, image textures, etc work.

     

    I have noticed some demos don't map the VRAM by writing to the registers. I wrote a simple test of this and when writing to the memory area (VRAM_A for example), the write appears to work but when you read the value back you get 0x00, not what you wrote. So I assumed that there is no default mapping.

     

    This may not be the case for sprites, or may not be the general case and only happened to be the case for the one that I tested of course.

     

    Prior to me doing the VRAM mapping code sprites did not work correctly either so there may be something more fundamental wrong.

  8. FIFO support is completed and added to the darcs repository. There are a few bugs I want to try and stamp out and then 0.4.7 will be released. Some of the E3 demos run further now, but it looks like the hardware divide and squareroot registers may need to be implemented to get them further along. I tested a couple of GBA demo's with the recently re-added GBA support and they worked fine.

  9. I've updated the darcs repository with some new patches. These include X/Y key support contributed by Normmatt, partial FIFO support, some key handling fixes and GBA support re-enabled. Although the latter probably does not work, it's re-enabled for others to work on. When FIFO support is completed I'll release 0.4.7, including any other patches for other contributers.

×
×
  • Create New...