No$gba v2.8 released - with DSi emulation

Discussion in 'NDS - Emulation and Homebrew' started by drwhojan, Feb 2, 2015.

  1. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    Martin Korth and his new version of No$gba v2.8 released - with DSi emulation

    Download Free by his site:

    No$gba 2.8 Changelog: 02 Feb 2015

    If you can please make a donation to his page!.

    Just uploaded no$gba v2.8. The new version is now having real non-experimental DSi emulation. And it's more or less working with DSi software. So far, it's tested with two DSi cartridges, and two DSiware programs:
    System Flaw (cartridge): Works, but the camera emulation is showing only a dummy picture with snow (which is making the game unplayable, since it misuses the camera as gyro sensor).
    Cooking Coach (cartridge): Hangs for whatever reason. It doesn't seem to be related to DSi I/O ports, so it might be some more basic problem, like some of the new/bigger memory regions not being properly emulated yet, or some memory not being initialized as how the DSi firmware would do it) (running the game in NDS mode works, the problem occurs only in DSi mode.
    DSi Browser (DSiware): Boots, but complains about non-emulated WLAN access point.
    Flipnote Studio (DSiware): Hangs for whatever reason, might be the same problem as with cooking coach. Would be great if anybody figures out what is causing the problems!

    DSi emulation requires a copy of the lower 32K-halves of the ARM7/ARM9 BIOSes (BIOSDSI7.ROM and BIOSDSI9.ROM). And don't forget to enable DSi emulation (default is still set to NDS mode, for better compatibility with games like Cooking Coach).
    PS. Some advice on how to capture camera pictures under windows would be nice! I need something with good backwards compatibility (which would be probably directshow), and it should be something that can be implemented by plain source code (without code from external libraries).
    02 Feb 2015 - version 2.8
    - help: updated gbatek standalone version 2.8 (with fairly complete dsi specs)
    - dsi: no$gba is now having (more or less) working non-experimental DSi support
    - dsi/cartloader: auto-encrypts modcrypt area if needed (requires good sha1hmac)
    - gba/snap: fixed skipping empty-nds-chunks in gba-snapshots (thanks shiny.exe)
    - newmem: avoids borland tasm32/tlink32 linker-error on "arm_memxlat_non_tcm"
    - dsi/help: added list of known regions/countries (only europe is known yet)
    - dsi/help: better ndma description (logical/physical blocks, and repeat modes)
    - wifi/help: added new DSi access points specs (wpa/wpa2, and proxy settings)
    - wifi/help: added formerly unknown NDS access points specs (mtu, ssid length)
    - dsi/help: added average microphone specs for ARM7 side (A/D side is unknown)
    - dsi/emu: supports fake camera access (outputting some dummy snow picture)
    - dma: added warning on unsupported dma/ndma types (wifi,sd/mmc,aes,mic,mainmem)
    - debug: fixed $profiler_id indices for dma-channel/mode names
    - dsi/emu: supports basic aes and sd/mmc init (32bit 44xxh, 16bit 48xxh/49xxh)
    - dsi/emu: supports i2c access (8bit 450xh) and gpio access (16bit 4C0xh)
    - dsi/emu: supports new touchscreen controller (different SPI protocol as NDS)
    - dsi/help: added description for new touchscreen controller (position/status)
    - dsi/help: added notes on touchscreen in nds mode (no pressure & temperature)
    - dsi/help: identified the dsi cameras as Aptina MT9V113 image sensors
    - dsi/help: added initialization/transfer flowcharts for cameras on ARM9 side
    - dsi/help: added initialization flowchart for Aptina cameras on ARM7 side
    - dsi/help: added initialization flowchart for Unknown cameras on ARM7 side
    - dsi/help: added undocumented aptina regs, and aptina REV3 additions
    - dsi/help: added general dsi notes (eg. dsi detection) and info on exploits
    - dsi/help: added notes on basic differences to NDS mode (changed details)
    - dsi/help: added info about (mostly unknown) eMMC encryption (via CID register)
    - dsi/help: added behaviour of SPI powerman (with differences in DSi/NDS modes)
    - gba/nds/dsi/help: added BIOS RAM info (initial RAM content and IRQ/SWI usage)
    - nds/help: cart header[06Eh] Secure Area Delay, and ROMCTRL.Bit28 gap CLKs
    - nds/help: info on rom chip id bit31 cart protocol variant (gap/repeat/delay)
    - xboo: supports dumping carts with rom chip id bit31=1 (protocol differences)
    - dsi/debug: added tty.log options for I2C commands and NDS cartridge commands
    - dsi/debug: prevents warnings on bigger New WRAM areas (unlike 32K for NDS)
    - dsi/debug/emu: allows bigger DSi7/DSi9 bios regions (bigger than NDS7/NDS9)
    - dsi/emu: allows reading/writing more scfg registers (as far as used by games)
    - dsi/emu: initializes more scfg regs on reset (with suspected/guessed values)
    - dsi/i2c/help: added Aptina MT9V113 camera specs (i2c registers and variables)
    - dsi/i2c/help: added many details on bptwl chip (led/volume/misc controller)
    - dsi/help: described power-button modes (auto-reset, irq, forced-power-off)
    - dsi/help: major corrections to I2C control reg, added I2C signals chapter
    - dsi/help: added details like headphone-connect bit, game-cart-insert-bit
    - dsi/cartloader: bugfixed cartloader odd modcrypt lengths (eg. cooking coach)
    - dsi/help: added GPIO specs (data in/out/direction, irq edge/enable)
    - dsi/help: removed dsi cart protocol, instead added cmd_3Dh notes in ds chapter
    - dsi/help: hardware/software info on wiring the eMMC chip to PC card readers
    - dsi/help: info on sd/mmc I/O (from TC6387XB datasheet, tmio_mmc, dsi dumps)
    - dsi/help: added specs for sd/mmc protocols (commands, repsonses, registers)

    Attached Files:

  2. someonewhodied

    someonewhodied Lazy Person

    Sep 21, 2008
    United States

    what year is it?

    cool though.
  3. ShadowOne333

    ShadowOne333 GBAtemp Guru

    Jan 17, 2013
    Does this mean that DSiWare games will now be playable via emulator?
    Margen67 and drwhojan like this.
  4. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    Very much a shame though for NO$Zoomer :( RIP! .

    Seams so, But now the games lately are been re-released now with full DSI data included, search more up on google .

    Anyone can ask him / himself here ->

    It's a Emulator site where Matrin is himself, I think he look for some testers and and help on his questions in the text too.
    Margen67 likes this.
  5. Foxi4

    Foxi4 On the hunt...

    pip Reporter
    Sep 13, 2009
    Gaming Grotto
    DSi Mode in emulation? Amazing, this is great for homebrew devs!
  6. T3GZdev

    T3GZdev head of T3GZdev

    Apr 21, 2010
    United States
    interesting. updates for SandboxEngineDSi-Hybrid shall come soon.
    Margen67 and drwhojan like this.
  7. AsPika2219

    AsPika2219 Pikachu going beach!

    Jun 17, 2010
    Cats City
    Oh! Yeah! I hope more DSI games will dumped soon! :yaynds: Coming soon, get ready for 3DS games! B-)
    pandavova likes this.
  8. FAST6191

    FAST6191 Techromancer

    pip Reporter
    Nov 21, 2005
    United Kingdom
    Always nice to see a no$gba update.
    drwhojan likes this.
  9. GamerzHell9137

    GamerzHell9137 GBAtemp Psycho!

    Nov 1, 2011
    Bosnia and Herzegovina
    Awesome :grog:
    Margen67 and drwhojan like this.
  10. zoogie

    zoogie playing around in the dsiware

    Nov 30, 2014
    Micronesia, Federated States of
    Anybody know how to dump their dsi bios?

    NEVERMIND. Appears to work with the basic ds ones. (and op, the gamer version doesn't have dsi mode --please upload the debug version)

    oh btw,

    Capture.PNG Capture.PNG

    yip, martin korth is still God : )
  11. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    Now added Debugger to first post :) Enjoy .

    (Note) They is a false positive depending on what AV program you are using, just report it. They don't like the UPX packer this emulator is was packed in .
  12. Mylink5

    Mylink5 GBAtemp Fan

    Dec 22, 2010
    Do we have to have it on "DSi Retail" or "DSi Debug" mode? Because in the retail they don't work, and in the debug the program crashes :(
    Wolfgange likes this.
  13. ultimatetemper

    ultimatetemper GBAtemp Fan

    Dec 30, 2010
    Still no working local wifi on DS emulator (something like VBAlink)
    I think that would be the last big accomplishment of DS emulation, then go to 3DS emulation.
    Margen67 likes this.
  14. yuyuyup

    yuyuyup GBAtemp Psycho!

    Apr 30, 2006
    United States
    USA MTN timezone
    Seven years, DSiware unpirated. Nintendo, you better be paying the guys who held that together (regardless of lack of interest being a factor preventing piracy)
    TipsPROmayB and Margen67 like this.
  15. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    Anyone would like me to add into the Emulator the EX5 Excelerator ?

    Got a little rusty over the year, but still have the documents .

    Attached Upx , But offsets need some change in location from v2.7C to 2.8 , Just search for first few values easy - er.

    Here some stuff, have fun editing :)

    EDIT: fix v2.8 in below post .

    Attached UPX for editing emu .

    Attached Files:

    • upx.rar
      File size:
      81.6 KB
    Margen67 likes this.
  16. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    Right worked it out for no$gba v2.8 , Here is a very good workout to try with EX5 also !.

    NO$GBA v2.8 upx:
    CMD command and ->
    CD C:\ - or path ?
    first Unpack , second repack
    upx -d NO$GBA.EXE
    upx NO$GBA.EXE
    Hex Editor
    Fix some Games, Rune factory a harvest moon est, pokemon black/white 2 summery screen's freeze fix .
    0x0005834D 80BDD40900 -> 80BDD40800
    0x0005835D 01000000C3E9 -> 01010000C3E9
    Bigger Screen
    0x00034F6F 00010000C7 -> B8010000C7
    0X00034F79 C00000007514C7 -> 4A0100007514C7
    Frame skips
    0x0005626D 0A730A -> 0B720A
    0X0005842C 01E8138CFFFF2B05 -> 00E8138CFFFF2B05
    Software Sound
    0x000660F1 0102566F -> 0202566F
    Bright Sunlight
    0x00066201 0002536F6C -> 0202536F6C
    Fresh .ini file
    Patch in before repacking, Needed.
    RAM 0X0042EC00
    Decompressed EMU 0X0002EC00
    -> 66 89 3D 01 6D 46 00 66 89 15 03 6D 46 00 66 A3 05 6D 46 00
    -> C7 05 01 6D 46 00 6B 58 89 0E 66 C7 05 05 6D 46 00 F7 DE 90
    NO$GBA 2.8 EX5
    898518090000 - Normaly second one listed.
    Ram Address 0x0045865B
    Emu address 0x0005825B + 09 -> E920260D0090 Hooks to Ram 0X0052AC80
    Add to Compressed Emu only at 0x00026480 ->
    66 81 FD 00 80 73 05 C1 E8 01 EB 03 C1 E8 01 89 85 18 09 00 00 E9 C7 D9 F2 FF
    E9C8D9F2FF loop's back to 0x00458662
    AUT to try: 66 81 FE 00 80 7D 03 C1 E8 02 EB 03 C1 EB 02 89 85 18 09 00 00 E9 C7 D9 F2 FF
    NO$GBA v2.8_Modified Attached .

    Attached Files:

    Margen67 likes this.
  17. Clarky

    Clarky Don't you know who I think I am?

    Oct 4, 2007
    United States
    most impressive
    Margen67, drwhojan and endoverend like this.
  18. Digital.One.Entity

    Digital.One.Entity Banned

    Jan 19, 2015
    United States
    Right Here
    Margen67 likes this.
  19. zoogie

    zoogie playing around in the dsiware

    Nov 30, 2014
    Micronesia, Federated States of
    That was my face too when I realized that the srl's dumped from the twln partition of the 3ds also work. ;)
  20. drwhojan

    drwhojan GBAtemp Psycho!

    Jul 14, 2009
    United Kingdom
    Where I Am!
    NO$GBA 2.6a

    00000655 0A -> 10
    66 89 3D 37 F4 45 00 66 89 15 39 F4 45 00 66 A3 3B F4 45 00
    C7 05 37 F4 45 00 E2 B5 5B 5D 66 C7 05 3B F4 45 00 E5 0F 90

    Attached Files:

    Margen67 and Digital.One.Entity like this.