mtabachenko
7f21832b5d
core:
...
-fix texture caching
2008-12-31 20:13:19 +00:00
MightyMax
3fde410ecb
MMU_write32: replaced comparison heavy (two per case: >=,<) if-chain with a switch/case (only one if can be true at any time)
2008-12-31 20:00:14 +00:00
shashClp
b47d95082d
Reapplying the changes, as fixing was just looking
...
the changes and adding a cast, as it was in the
past. Avoid reverts when the fix is as simple as this
one and everyone will be happier :)
2008-12-31 18:10:43 +00:00
riccardom
475d0151cc
Revert revision 1338 "Reduce code required for some flag calculations in two opcode's. (Shouldn't break things but best too do more testing before adding to release branch)." because it broke compilation on linux.
2008-12-31 17:34:03 +00:00
yabause
8284e81037
Removed zero_private from distributed files
2008-12-31 14:54:59 +00:00
mtabachenko
7c7cd504d2
core:
...
- fix BGs;
2008-12-31 14:07:09 +00:00
normmatt234
ed782533b8
Reduce code required for some flag calculations in two opcode's. (Shouldn't break things but best too do more testing before adding to release branch).
2008-12-31 11:24:55 +00:00
zeromus
462b1fd1cd
someone got pushed off the aboutbox list.
2008-12-31 11:12:42 +00:00
zeromus
030cd2a604
overhaul changelog. tried to collapse, reconcile, and merge changes to create a list which will be useful for a press release, since the previous list had been nearly abandoned due to too much happening, and while I was at it I scrounged for good changes back to 0.8. This might be a controversial move, but it is a valuable asset, and i spent a few hours doing it. someone still needs to get all the gtk and cocoa changes in there; i skipped over all of it because I dont know enough about the builds.
2008-12-31 11:11:25 +00:00
zeromus
850882cf01
fix SBC bug in thumb (same bug as the one normatt fixed in arm in r923)
2008-12-31 09:50:11 +00:00
zeromus
2cc03b0a97
- fix bug with 512 tall BG
...
- remove zero_private junk file
2008-12-31 05:30:31 +00:00
yabause
8272bc6f4e
More files in "make dist"
2008-12-30 22:51:42 +00:00
riccardom
8eb3f15f11
Make some data const.
2008-12-30 19:38:40 +00:00
zeromus
1312875f80
disable bios loading. this was for our testing and not for general consumption. we will make it solid in 0.91
2008-12-30 19:32:49 +00:00
zeromus
65b8130f34
removing old code from gpu
2008-12-30 18:55:32 +00:00
riccardom
38069dd9bc
Fix compile error for not gtk.
2008-12-30 18:41:56 +00:00
riccardom
6191ccbdca
Remove variables not used warnings.
2008-12-30 17:34:40 +00:00
riccardom
a363735acc
I know you would hate me but these functions are too big to be inlined by gcc.
...
Does it make any difference in windows? if so feel free to revert.
2008-12-30 17:30:28 +00:00
riccardom
5f19ca6fd4
Fix "format not a string literal, argument types not checked" warnings.
2008-12-30 17:12:01 +00:00
riccardom
00f4c97cca
Fix "enumeration value not handled in switch" warnings.
2008-12-30 17:11:24 +00:00
riccardom
9d46a3b9e4
Rework conditionals in execsqrt() and execdiv() so that gcc stop saying that ret, den and num can be used uninitialized. I assume that all the possibile value of the test are already there otherwise these changes are wrong! :)
2008-12-30 16:32:26 +00:00
riccardom
d7d19e4a7d
Make a couple of functions static.
2008-12-30 16:16:31 +00:00
yabause
6a4b9900a5
one more file to "make dist"
2008-12-30 16:13:35 +00:00
riccardom
ba0adfcf7e
Cleanup packed attribute headers for gcc.
2008-12-30 16:09:24 +00:00
mtabachenko
ffca57c181
remove INFO()
2008-12-30 15:42:33 +00:00
riccardom
9cb3b76e74
Ok, This stuff is not used and that's not very elegant but that would be at least a leak and this shut up gcc.
2008-12-30 15:40:12 +00:00
riccardom
fcf045ac18
Fixup gcc warnings:
...
- add missing header include for DecryptSecureArea declaration
- make some functions static
- put under if 0 stuff currently not used
2008-12-30 15:38:23 +00:00
riccardom
9e8f19ebf9
The name should be const.
2008-12-30 15:35:57 +00:00
riccardom
ecd509166f
Fix screen corruption by missing memory zero'ing.
2008-12-30 15:31:39 +00:00
riccardom
d386158e49
Fix up ARM9_struct definition.
2008-12-30 13:43:32 +00:00
luigi__
d1502f5bee
The clear alpha is now the one selected by the game.
...
Removed the stencil blitting stuff, as it doesn't take care of whether the rear-plane is opaque or not (I left it commented if you've a good reason for re-enabling it).
2008-12-30 12:39:20 +00:00
luigi__
879586c4fa
The color effects are now correctly applied to the 3D layer.
...
3D/2D blending is now performed by the 2D core. This gives a speedup when the blending isn't enabled because the GetLine func doesn't have to perform any blending now.
2008-12-30 12:31:47 +00:00
zeromus
3c4f23cd39
- fix vs2005 project after asm file removal
...
- fix error in new fadein/fadeout table usage (pixels werent masked by 0x7FFF causing table overruns)
2008-12-30 05:01:30 +00:00
shashClp
2b345daffd
- Minimal fix to proper GFXFIFO parameter number handling
2008-12-30 04:22:33 +00:00
shashClp
9b770347c3
- Removed custom memcpy routines as they're slower than
...
the libc ones (check profiling numbers on the developers
list).
2008-12-30 02:32:48 +00:00
mtabachenko
e6b450ed9c
core:
...
- rewrited and moved memcpy_fast to new file (.asm) for compiling x86/x64 versions (sorry, if I broke others ports... check it please)
2008-12-30 00:37:38 +00:00
luigi__
a94765be35
Added tables to optimize fading.
...
The special effect for sprites was always blending, which broke fading on sprites. Fixed.
The fading is now applied to the backdrop color.
Fixed a bit the windows.
2008-12-29 22:11:26 +00:00
yabause
e9574701fb
Fixed automake files after removal of dev-cpp files.
2008-12-29 16:23:53 +00:00
riccardom
4ce84965f7
Cleanup a bit NDS_Reset().
2008-12-29 13:17:58 +00:00
riccardom
d3f1925769
Make a function static.
2008-12-29 13:06:42 +00:00
riccardom
1ffc0bc78a
Fix a couple of warnings.
2008-12-29 13:05:09 +00:00
yabause
7d0da6ca97
Fixed the sprintf problem.
...
See http://permalink.gmane.org/gmane.linux.debian.devel.general/135067
for details.
Thanks to debian games team for reporting :)
2008-12-29 12:50:55 +00:00
yabause
cfd9b3523c
Fixed compilation for linux:
...
- template stuff should be in .h files
- for some reason you can't use a static function pointer
as a template parameter
2008-12-29 12:44:15 +00:00
zeromus
be25d014cd
use template and forceinline magic to speed up rotated bgs. amounts to ~1fps on nsmb ingame. this helps so much because the gpu functions pass around TONS of parameters through bunches of functions and function pointers. there is much more to be done here, but anything tricky should wait for next release
2008-12-29 08:24:00 +00:00
zeromus
9e04b4eceb
fixed sprite window inefficiencies. Big speedup; major speedup in SPP. I do not know a good sprite window test case, so i had to test it by turning on sprite window for SPP in a hacky way, so keep your eyes peeled for problems. But even if there are problems, the old way of handling sprite window was unacceptable.
2008-12-29 07:26:15 +00:00
zeromus
b4a3551b1c
switch back to using templates for mmu 7/9 splitting. to make it worth the trouble, i also split the embedded bios functions in the same way
2008-12-29 01:32:58 +00:00
luigi__
b85473360b
Changed the types of the precalc tables as suggested by zeromus.
2008-12-28 23:56:05 +00:00
luigi__
e80bb110b3
A few optimizations to the ADPCM sound decoding func.
2008-12-28 23:40:15 +00:00
zeromus
e407e945a5
major speedup to 3d by using a different pixel format for retrieving opengl framebuffer!
2008-12-28 23:22:35 +00:00
gecko_reverse
008523a5ff
fixed compilation on osx
2008-12-28 20:12:44 +00:00
mtabachenko
84e6371f2d
fix compilation for windows
2008-12-28 19:03:27 +00:00
yabause
e074ab18e0
Fixing compilation for linux.
2008-12-28 19:01:21 +00:00
luigi__
49b10c65e3
Texturing shouldn't break anymore when changing the 3D core.
2008-12-28 18:53:22 +00:00
luigi__
a78eba5604
If OpenGL has already been inited, it won't be inited a second time now.
2008-12-28 18:33:36 +00:00
luigi__
bea0b2c795
Fixed a bug with 3D core hot swapping when no ROM has been loaded.
2008-12-28 17:49:11 +00:00
luigi__
8cec94c1f1
Fixed a bug with 3D core hot swapping when no ROM has been loaded.
2008-12-28 17:47:34 +00:00
luigi__
baad85f605
The 3D settings dialog is now hooked up and fully functional. 3D core hot swapping seems to work correctly.
2008-12-28 17:35:14 +00:00
luigi__
a6187cb610
Added a 3D settings dialog for changing the 3D core.
...
Added a French version of the Firmware settings dialog.
2008-12-28 17:11:54 +00:00
luigi__
2146d19203
Added NDS_3D_ChangeCore for hot swapping between 3D cores, because I plan to write a software renderer someday.
...
The OpenGL shaders are now properly released on close.
Added "OGL" before the names of the OpenGL core funcs for clarity.
2008-12-28 17:00:42 +00:00
riccardom
8445c48bad
Add parentheses to macro parameters where needed.
2008-12-28 16:54:54 +00:00
mtabachenko
d40eab9ef2
core:
...
- changes in reads/writes MMU;
2008-12-28 16:18:47 +00:00
riccardom
d0a6539d3b
Give a name to a global struct to shut up this gcc warning:
...
gfx3d.cpp:162: warning: non-local variable ‘<anonymous struct> tempVertInfo’ uses anonymous type
2008-12-28 15:10:31 +00:00
riccardom
eb6f949ff7
Put not used functions under if 0 for now.
2008-12-28 15:03:59 +00:00
riccardom
24a5daf63d
Made two functions static a put parentheses around | operand as suggested by gcc.
2008-12-28 15:01:16 +00:00
riccardom
b1a044fb7c
Fix some unused variable warnings by ifdefing code and made some functions static.
2008-12-28 14:53:57 +00:00
shashClp
029a5e0edb
[2471938] Applied patch attached on this issue.
...
- This is too from the infamous r1196, which I already
said was useless and stupid.
2008-12-28 14:27:17 +00:00
luigi__
3ed852c240
The recent ROM names are now compacted using PathCompactPath, instead of being cut to 128 characters.
2008-12-28 12:13:19 +00:00
zeromus
5a940dc2be
- add IDM_DEFSIZE to resource.h (luigi__ will have merge issues).
...
- add code to use bios if the bios files exist. this code is preliminary. it seems to freeze games right now. to use this, make sure BiosNds7.ROM and BiosNds9.ROM exist in the application startup working directory. this is probably not a good way to do it, but it is a start.
- fix recently created spu issues with adpcm and psg.
- change execute = FALSE; to emu_pause(); so that other things can be done or disabled in one place.
- analyze performance of MatrixIdentity for speedup.
- accept crazymax's correction to my matrix caching. that was boneheaded, sorry!
2008-12-28 02:27:13 +00:00
luigi__
70a8af9942
The duplicating bug of the recent ROMs menu should now be definitively gone.
2008-12-28 00:11:32 +00:00
luigi__
5babff7a65
Added a few missing menu items to the French & Danish menus.
...
Added a new option to resize the window to its default size.
Better menu item names for the French menu.
2008-12-28 00:06:21 +00:00
mtabachenko
58d2d84b0a
fix matrixes cache handle in some games. zeromus check it
2008-12-27 23:49:08 +00:00
luigi__
969274cc97
Choosing Danish as language would save French instead of Danish. Fixed.
2008-12-27 23:42:50 +00:00
luigi__
56c37c2aee
Better recent ROMs menu with a Clear option and fixed the bug where all the recent ROM items were duplicated when changing the language.
2008-12-27 23:13:03 +00:00
luigi__
24e2b77086
Removed the proc variables for execdiv and execsqrt since the ARM7 deosn't have the div/sqrt funcs.
2008-12-27 19:19:06 +00:00
mtabachenko
a99ef67d0a
core:
...
- fix in 3D capturing;
2008-12-27 11:09:16 +00:00
mtabachenko
43cd2fd665
core:
...
- more accurate IPC FIFO & Geometry Commands FIFO;
2008-12-27 09:24:05 +00:00
zeromus
93af0a8e36
fix repeating dma. the incremented source and dest address werent being written back into the internal dma control variables. this fixes nsmb parallaxing backgrounds. we still have a rather large BUG in that the updated dma registers can't be read back by the game software. wait until next version to retool the dma control logic.
2008-12-27 08:10:45 +00:00
zeromus
7ba70e0b9d
add 3d layer h-scrolling
2008-12-27 06:47:18 +00:00
zeromus
71a93841c9
minor speedup in gfx3d: build verts directly into the main vertex list instead of a 32B temp struct which needs to be copied each time a poly is completed.
2008-12-27 05:58:37 +00:00
zeromus
de0120d6bb
revert my recent changes to backupmem autodetection. it fixed some games and broke others. I am disinclined to change it too close to a release.
2008-12-27 05:34:59 +00:00
zeromus
e72264ea71
minor optimizations to gpu and gfx3d:
...
- sprwin was too big (256x256 instead of 256x192)
- line render buffer initializer was a per pixel loop instead of a 256 wide memset
2008-12-27 03:49:18 +00:00
zeromus
6247af54cb
speedup to spu: having two cores is a bit extravagant.. but i fixed it so the core spu doesnt actually do any mixing (only incrementing of sample counters)
2008-12-27 02:42:54 +00:00
luigi__
639a42445c
The default language upon first launch is now really English, not French.
...
The menus are now better, though still not perfect.
Removed "HMENU menu" as it was useless due to "HMENU mainMenu".
2008-12-27 01:12:40 +00:00
zeromus
56dbd54982
- various minuscule gfx3d speedups via caching logical values derived from ds values
...
- very large speedup during opengl by caching projection matrices and not changing unless the game does.
2008-12-27 00:57:13 +00:00
luigi__
0b5e1927c1
The default window position is now CW_USEDEFAULT instead of 0, so upon the first launch the window isn't placed in the top-left corner.
2008-12-27 00:49:51 +00:00
zeromus
ac130aeb14
add the sqrt and div timing to savestates
2008-12-26 23:03:28 +00:00
zeromus
a2aa2c34e5
- comment out that assert which strikes arm7less homebrews
...
- speed up GetLine() by 2x. this affected GetLineCaptured(), which I havent tested.
2008-12-26 22:57:48 +00:00
shashClp
662077bb31
- Fix for the Dead'n'furious "black screen" bug.
2008-12-26 21:38:43 +00:00
luigi__
4e2965c416
Oh, stupid of me : I was wrong with div/sqrt cycles again. They must be doubled to be 33mhz units, ie 13 cycles in 33mhz would be 26 cycles for nds.cycles.
2008-12-26 21:03:53 +00:00
zeromus
214798c3c1
fix an issue which could cause an invalid SWI in thumb mode to crash the emulator
2008-12-26 20:05:43 +00:00
luigi__
026bbe304d
Oops, I forgot that the div/sqrt cycles are in 33 mhz units, not 66mhz units...
2008-12-26 17:35:28 +00:00
luigi__
99edea516b
Division and sqrt now take the right time before completing.
...
This seems to fix the teleport bug in SM64DS.
2008-12-26 16:29:36 +00:00
zeromus
56ba7941a1
change backupmem autodetection to catch more cases of unusual usage patterns
2008-12-26 08:24:26 +00:00
zeromus
2d7891cbec
so, some of my changes broke homebrew game loading. i fixed that.
2008-12-26 05:49:54 +00:00
zeromus
5ee96233be
[ 2394336 ] - desmume does not compile with dev-cpp
...
fixed: dev-cpp support is removed since there is nobody around to support it.
2008-12-25 23:08:50 +00:00
yabause
bfb928f20c
Added more file to "make dist" and remove gtk/globals.h
...
that is now gone.
2008-12-25 21:53:58 +00:00
yabause
8dfa1f8226
Fixed compilation with autotools script and for case sensitive
...
platforms.
2008-12-25 21:44:09 +00:00
riccardom
ad8b289c11
Rename the help menu Help from ? like usual gtk programs.
2008-12-25 21:21:00 +00:00
zeromus
6215573ac3
fix vs2008 build
2008-12-25 21:17:25 +00:00
riccardom
9a07979ccf
Kill globals.h and move needed includes and defintion in main.cpp which was its only user.
2008-12-25 21:04:46 +00:00
zeromus
f1c135e929
- add secure area decryption from ndstool (little endian host only)
...
- change how the portable packed structure declarations are made
- reorganize and cleanup changelog
2008-12-25 20:43:59 +00:00
riccardom
296e5e217d
cast to int to avoid gcc signed vs unsigned comparison warnings as already done in the code.
2008-12-24 16:29:01 +00:00
mtabachenko
da8e3f28ea
winport:
...
- fix IO registers tools (fix and add new registers)
2008-12-24 13:18:33 +00:00
luigi__
e366145188
Added my name
2008-12-24 11:08:35 +00:00
luigi__
4f4ccab0ca
Added my name
2008-12-24 11:07:14 +00:00
mtabachenko
9b5d0bd045
core:
...
- fix debug log in MMU;
2008-12-24 10:27:39 +00:00
gecko_reverse
e45499646c
fixed PPC compilation errors
2008-12-24 02:21:46 +00:00
mtabachenko
ae56e34cc5
winport:
...
- fix compilation with define EXPERIMENTAL_WIFI (winsock2)
2008-12-24 01:37:18 +00:00
mtabachenko
693df94cb6
core:
...
- Add functions for a lid open/close. Holding key (default "Backspace" in Windows port) while game is freeze/non freeze
2008-12-24 00:25:48 +00:00
riccardom
068adfadbd
u32 needs l lenght modifier.
2008-12-23 23:02:46 +00:00
riccardom
155374e579
Fix missing indentation.
2008-12-23 22:49:46 +00:00
riccardom
9fa53576a5
Fix most compile warnings with --enable-hardcore.
2008-12-23 22:41:37 +00:00
mtabachenko
c7caead1ff
core:
...
-fix gxstat register;
2008-12-23 22:03:35 +00:00
luigi__
75041c7196
MMU.fw.data is now entirely cleared to zero (instead of the first 512 bytes) before anything (NDS_CreateDummyFirmware)
2008-12-23 21:44:07 +00:00
yabause
01b2c8076f
Dirty fix for the bad context bug.
...
Instead of fixing it, we're trapping the error and disabling 3D.
2008-12-23 21:20:13 +00:00
mtabachenko
5d48cdbca9
core:
...
- added to capture display support for 3D and blend sources A+B capturing;
2008-12-23 21:16:27 +00:00
mtabachenko
0eff66ec25
oops :) sorry, forgot
2008-12-23 12:56:52 +00:00
luigi__
ad845549e1
Fixed a compilation error. silly of me :(
2008-12-23 11:48:27 +00:00
mtabachenko
a2e95b9bab
forgot file :(
2008-12-23 11:42:33 +00:00
luigi__
5c5c64d089
Fixed a bit the shadows, they don't cause any more glitches when overlapping translucent polygons
2008-12-23 11:39:23 +00:00
mtabachenko
9decebf56f
core:
...
- fix BMP sprite;
2008-12-23 11:08:25 +00:00
yabause
3d2a8101f0
Adding manpages from debian, not sure why they were
...
added there at first.
2008-12-22 23:53:34 +00:00
luigi__
a6bf874f44
Fixed 16-bit and 32-bit accesses to the VRAM regs
...
Added basic support for the VRAMSTAT, WRAMCNT, WRAMSTAT and EXMEMCNT regs (writes to these regs now write the appropriate values at the other side)
2008-12-22 10:45:25 +00:00
mtabachenko
87036ecdd1
core:
...
- fixed silly bug in VRAM mapping (typo)
2008-12-21 20:22:56 +00:00
luigi__
b06345976f
Corrected a small mistake with WFC profile #3 .
2008-12-21 15:47:42 +00:00
mtabachenko
0d05310058
core:
...
- temporally fix in VRAM mapping and add BGx scroll;
2008-12-20 11:44:07 +00:00
luigi__
6e39973723
Added the 3 WFC profiles with their CRC16's, now Mario Kart boots a bit more (the next problem for it seems to be a DMA timing problem).
2008-12-19 18:10:03 +00:00
luigi__
7a64ad3286
Added the flag OFN_NOCHANGEDIR when opening a file (prevents changing the working directory).
...
This prevents the config file from being exported to the ROM folder, resulting in config saving problems.
2008-12-19 16:27:01 +00:00
luigi__
aef05f28ed
Added more values to the default firmware (mostly Wifi settings)
2008-12-19 15:33:06 +00:00
mtabachenko
6b49906cf5
core:
...
- fixed Master Brightness (this is fix games with black screens ex. "Pirates of the Caribbean At Worlds End");
2008-12-18 13:16:21 +00:00
mtabachenko
27786f835d
core:
...
- fix capture display (fixed blinking with both 3D screens ex.Sonic Rush, Metroid Prime etc)
2008-12-18 00:36:54 +00:00
yabause
c5a37f52b9
Added the movie thing and its dependencies into autotools scripts.
2008-12-17 23:45:07 +00:00
mtabachenko
8cef0b268c
typo fix
2008-12-16 17:17:23 +00:00
mtabachenko
cdcd88725c
core:
...
- fixed in 3D render and added simulation Geometry FIFO;
2008-12-16 16:54:50 +00:00
riccardom
014f42d293
Make functions without declaration static and remove unused i variables.
2008-12-15 21:25:46 +00:00
mtabachenko
ff328543a0
core:
...
- cleanup gfx3d.cpp;
2008-12-14 19:48:43 +00:00
shashClp
70fe9c0f86
Removing credits for a persons work is something that I won't tolerate, more when it's my work.
...
It's OK to add more people, but not removing them. Also, as a general comment, that speed "improvement"
is completely stupid.
2008-12-14 18:14:47 +00:00
luigi__
ac7e151964
minor optimization to lighting formula
2008-12-14 16:32:19 +00:00
mtabachenko
36da3ccf07
core:
...
- 1st step for MMU split for procs (speedup);
- some changes in FIFO;
2008-12-14 14:56:26 +00:00
zeromus
9e8dada75e
change arm9 sqrt and div. sqrt should be more precise, and the register access is more straightforward.
2008-12-14 00:29:51 +00:00
luigi__
51e8d353da
Fixed ARM9 hardware division when the denom is zero (see http://nocash.emubase.de/gbatek.htm#dsmaths )
2008-12-13 20:30:31 +00:00
luigi__
bb3be34cb9
Fixed a few bugs with looping feature (looped sounds now play corectly when using PAlib)
...
Changed interpolation to cosine interpolation (makes transitions smoother)
2008-12-10 18:31:56 +00:00
zeromus
0501a23279
fix windows build (fs-windows.cpp moved)
2008-12-08 22:03:57 +00:00
yabause
54c97f1624
Started to fix "make dist" as we should release sometime soon.
...
This commit broke the visual studio compilation as I moved
fs-windows.cpp back in "src".
I also removed some old files from gtk dir.
2008-12-08 21:57:05 +00:00
yabause
2a6fa23065
Fixed compilation on linux.
2008-12-08 20:27:09 +00:00
luigi__
e40813eece
Fixed texturing when using fixed pipeline (thanks to zeromus for reporting this bug)
2008-12-08 18:07:40 +00:00
mtabachenko
f41d634d5a
core:
...
- some fixes;
2008-12-08 13:11:05 +00:00
mtabachenko
f04f80ba20
core:
...
- fix VRAM mapping control (now this correct, in future need only add WRAM mapping);
2008-12-08 12:31:43 +00:00
mtabachenko
626e94e493
- exclude check address range in VRAM (may crash in some games :( );
2008-12-08 10:18:50 +00:00
mtabachenko
445c953371
core:
...
- fix VRAM bug (ex. NSMB fixed background missing on map)
2008-12-08 09:15:40 +00:00