No$gba 2.5 released

Discussion in 'User Submitted News' started by dualscreenman, Oct 4, 2007.

  1. dualscreenman

    dualscreenman GBAtemp Fan

    Dec 29, 2005
    United States
    Rockin' the DSman Party-Van
    No$gba - nocash gameboy advance / nintendo ds emulator

    - help: updated gbatek standalone version 2.5 (about one hundred news since 2.3)
    - vram viewer: supports extended palettes in bg map windows (eg. magnetica demo)
    - nds/help: added ds 3d overview chapter (basics on geometry/rendering engines)
    - nds/help: added ds technical data chapter (containing some basic overview)
    - nds/help: replaced ds various chapter by new ds memory control/timing chapter
    - nds/sound: fixed major unreported bug in 80x86 code sound_bias SWI function
    - nds/3d/help: corrected shininess formula (ie. fixed that max cos 2 angle mess)
    - nds/3d/help: added caution: specular reflection WON'T WORK on camera rotation
    - nds/3d/help: maths basics of vector-by-vector multiply (and purposes thereof)
    - nds/3d/softlight: allows light+color nonsense double def (eg castlevania clip)
    - nds/3d/softlight: much better light-accuracy, and now supports shininess_table
    - nds/3d/softlight: lighting fully calculated by software (without opengl light)
    - nds/timing: split timings for nds7 (fast access) and trashy nds9 (slow access)
    - nds/timing: split addr_clks_table to CODE/DATA addr_clkc_table/addr_clkd_table
    - nds/timing: emulates "half" cycles on 66MHz/nds9 (tcm/cache and n32/2 thumb)
    - nds/timing: emulates nds7 exmemstat gba-slot timing bits (like nds9 exmemcnt)
    - nds/timing/help: added detailed/tested nds7/nds9 code/data memory-timing chart
    - nds/timing/cache: allows more CPU load on bios/mainram when cache is enabled
    - nds/timing: emulates shared N32 access time for two NDS9 thumb 16bit opcodes
    - cpu/speedup: precalculates opcode-timings on interseg-jumps (usually faster)
    - cpu/speedup: faster conditional opcode handling (maybe yet another 3% faster)
    - cpu/speedup: thumb: uses 16bit reads (3% faster on non-32bit-aligned addr's)
    - cpu/speedup: replaced dumb jmp exec_opcode by exec_opcode_mac (ca. 10% faster)
    - cpu/speedup: added more code alignments in cpu-core (not significantly faster)
    - nds/help: added note that 66MHz-nds9 actually runs MUCH SLOWER than 33MHz-nds7
    - nds/cpu: emulates superslow nds9 memory access time (bios,wram,vram,oam,etc)
    - nds/cpu: emulates operand-independend ARM9 multiply time (eg. slow thumb time)
    - nds/wram: emulates wramcnt mapping (no idea if it's used by any games though)
    - nds/3d: adjusted z-rounding (avoid opengl-clip-plane in club house games demo)
    - cpu: emulates cp15-trace-id, debug: disass auto-comments on trace-id and bist
    - nds/help: fixed key1 [scratch] writeback lsw/msw are exchanged (thanks simon)
    - nds/help: cp15 info on trace-id, bist, cache debug/test, supported cache cmds
    - cheat: fixed occasional crash on delete cheat (push/pop) (thanks Hiei Youkai)
    - thanks: rockmanrotties for submarine (timing) and clubhouse (clip) bugreports

    My commentary:
    OpenGL lighting was improved, but the improvement came at the cost in speed in most of the games that use 3D. This slowdown was remedied by several CPU emulation speedups, but it is still quite present.

    It should be noted that the infamous "transparency bug" (it was actually a rendering timing bug) has been fixed, and 2D games afflicted by the bug run faster as a result. In addition, we now know that there is a true, 3D transparency bug that appears in games that use 2D backgrounds and 3D models such as New Super Mario Bros. Mr. Korth currently doesn't have the hardware (He lacks a 3D card and relies on a software driver) to test any fix for the bug.

    It should also be noted that GBAtek has been updated! Changes include Action Replay DS and Codebreaker DS documentation courtesy of Kodewerx.

    In conclusion, things are looking good for the 2.5 series, and I hope we can see a lot more improvements in upcoming versions.
  2. rhyguy

    rhyguy GBAtemp Maniac

    Jul 21, 2007
    does this mean faster nsmb?
  3. dualscreenman

    dualscreenman GBAtemp Fan

    Dec 29, 2005
    United States
    Rockin' the DSman Party-Van
    The transparency bug in NSMB wasn't fixed, it was discovered to be a different transparency bug altogether.
  4. Dirtie

    Dirtie :'D

    Former Staff
    Sep 9, 2003
    New Zealand
    mr korth needs a new pc or something [​IMG]
    it seems he devs on extremely outdated hardware
  5. kazumi213

    kazumi213 GBAtemp Regular

    Oct 16, 2006
    Pokemon D/P saves cannot be loaded since v2.4d, probably due to Wi-Fi changes introduced on that version.
  6. dualscreenman

    dualscreenman GBAtemp Fan

    Dec 29, 2005
    United States
    Rockin' the DSman Party-Van
    After talking to him, we've found his embedded video chip has no 3D acceleration whatsoever. [​IMG] Maybe donations are in order... But I'm broke so you can expect me to donate. [​IMG]