http://problemkaputt.de/unlaunch.htm
Alongsides, I've also uploaded two more updates: no$gba v2.9a (gba/nds/dsi emulator/debugger) and wifiboot v2.2 (for wifi uploading software from pc to dsi). Links are found on the above webpage - using that three projects together is giving a nice development environment (eg. use unlaunch to boot wifiboot, and then wifi upload your homebrew dsi software from no$gba to dsi).
Code: Select all
unlaunch.dsi v1.0 - 24 Jul 2018
- co-releases: no$gba v2.9a and wifiboot v2.2
- webpage: new unlaunch.htm page, with more installation info, new forum, etc.
- speedup: uses DMA for SD/MMC-read, SDIO-write, and AES-read/write, ROM read
- rearranged EXMEMCNT init, ensures ARM9 IPC IRQ enabled before waiting for it
- installer: uses fill_copy_list (instead of relying on carthdr copy in ram)
- installer: stores no$gba footer at eMMC offset FF800h (if it's zerofilled)
- installer: omits FAT writing if FAT unchanged (as so on unlaunch updating)
- installer: disables BPTWL powerbutton auto-reset during install_now
- sdmmc/sdio: removed pre-wait and soft-timeouts, instead checks hw error bits
- initializes SOUNDBIAS (maybe better in case games don't do that themselves)
- moved GIFs to separate non-lz77 memory block (avoid double compression)
- verifies camera chip id and emmc cid/csd with warning if unknown hardware
- added Y button hotkey: load NDS/DSi title from ROM-cartridge slot
- rom loader: cartpower, romctrl, 4004012h/14h, load chip id and secure areas
- rom speedup: uses 1000h-byte blocksize for faster 1t-rom loading
- rom speedup: forces fast mrom timings for mrom carts with wrong cart header
- rom speedup: forces less slow 1t-rom timings for actual 1t-rom carts
- rom speedup: forces reduced secure area delay of 8ms for 1t-rom carts
- rom speedup: uses slot-swap-reset-trick (instead slow power-off/on)
- rom speedup: crops hardcoded cart power-on delays to 1ms/1ms/0ms/1ms
- more accurate modcrypt (old was overcomplicated, and bugged on size=0)
- supports place_aes_keys (maybe needed for jpg/camera or verdata stuff)
- sets POSTFLG register (needed for NDS titles like EragonDemo, DownloadPlay)
- moved twlcfg/wlfirm/hwinfo elsewhere (reloc to 2000400h only for DSi titles)
- resumes default BPTWL powerbutton mode (unless when booting nds-titles)
- enter_nds_mode: reloc 2FFFxxxh to 23FFxxxh, set 4MB-RAM, NDS-ROM, ARM9 67MHz
- enter_nds_mode: set NDS-TSC-touchscr mode, init NDS-Wifi, NDS-SNDEXCNT
Code: Select all
wifiboot v2.2 - 24 Jul 2018
- renamed asm source/binaries from dslink+dswifi to wifiboot+wificore
- rearranged EXMEMCNT init, ensures ARM9 IPC IRQ enabled before waiting for it
- adjusts BPTWL powerbutton mode for wifiboot itself and booted nds/dsi titles
- enter_nds_mode: reloc 2FFFxxxh to 23FFxxxh, set 4MB-RAM, NDS-ROM, ARM9 67MHz
- enter_nds_mode: set NDS-TSC-touchscr mode, NDS-SNDEXCNT
Code: Select all
no$gba v2.9a - 24 Jul 2018
- emu/dsi/clk: supports ARM9 134MHz mode (but waitstates are too fast for now)
- bios/help: swi waitbyloop timings for arm7/arm9 rom/cache nds/dsi 67mhz/134mhz
- cart/emu: supports ds cart reset tricks (via toggling scfg_mc_msb or exmemcnt)
- dsi/emu/help: scfg_clk.bit7 is read-only on arm9 (value mirrored from arm7)
- dsi/help: added notes on 'flipnote lenny (or whatever it is called)' exploit
- dsi/help: solved unknown last bytes in boot info block (SHA1 on 60h-byte area)
- dsi/mmc-image: alternately accepts no$gba-footer at emmc offset FF800h
- nds/dsi/cart/help: romctrl notes on (in-)official ways to reset cartridges
- nds/dsi/cart/help: romctrl notes on wrong and slow 1t-rom timings cart header
- dsi/debug: reformatted scfg7/scfg9 iomap windows, with new scfg details
- dsi/teak/help: added offical names for bits in ar/arp/stt/mod (from .dll)
- dsi/teak/help: many new stt/mod/ar/arp/cfgi/a0e/vtr details (thanks wwylele)