Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-11-02 | small cleanup | aliaspider | |
2014-11-02 | implement rom loading from memory. | aliaspider | |
2014-11-01 | add missing optimization $(DEFS) to FLAGS | aliaspider | |
2014-11-01 | Add Android JNI Makefiles and Makefile.common | twinaphex | |
2014-11-01 | (Griffin) Add Griffin option, enable by default | twinaphex | |
2014-10-31 | add a perf counter. | aliaspider | |
2014-10-30 | remove snapshot.c snaporig.c dependencies. | aliaspider | |
2014-10-30 | (PSP) fix build | aliaspider | |
2014-10-30 | remove some unused functions/files | aliaspider | |
2014-10-30 | New Makefile | twinaphex | |
2014-10-29 | remove more C++ code. | aliaspider | |
2014-10-29 | start moving everything to C | aliaspider | |
2014-10-29 | cleanups (cont.) | aliaspider | |
2014-10-28 | cleanups (cont.) | aliaspider | |
2014-10-28 | del some more | aliaspider | |
2014-10-28 | remove more stuff | aliaspider | |
2014-10-28 | initial libretro port. | aliaspider | |
2013-02-12 | Reimplement grouped multipart cheat codes on top of Snes9x's cheat data. | Nebuleon Fumika | |
2013-02-04 | Fully integrate BassAceGold's libraries, finally. The README still states ↵ | Nebuleon Fumika | |
that 1.2 is required to overwrite 0.13's stuff; really, 0.13 is needed only for `gcc`. So the sequence goes 0.13's `gcc` -> 1.2 -> BassAceGold's libraries -> make `libds2a.a`. DMA function names changed to match BassAceGold's. | |||
2013-02-04 | Release 1.28 after disabling the controller status sync hack. | Nebuleon Fumika | |
2013-02-03 | Synchronise the controller status more spread out inside a rendered frame: | Nebuleon Fumika | |
* before rendering a background; * before rendering sprites; * while rendering more than 128 samples of audio at once ("Prefer fluid video"); * after every 16 scanlines of CPU execution instead of every 1; * while waiting for an audio buffer to become available; * while killing time between frames with fast-forward disabled. Controller presses and releases are now combined in a DS button bitfield using a shorter 32-bit algorithm. See entry.cpp:NDSSFCAccumulateJoypad and #define ACCUMULATE_JOYPAD in the source. This is still not suitable for playing platformers frame-perfectly, but it's much better than half a second of latency to press or release a button, and one still needs to press buttons a bit more than just light taps. I'd say 50 milliseconds is the latency now. Platformers requiring more precision can be played with frameskip 0. DMA does not require double-buffered displaying, so synchronise the controller more often by disabling double-buffered displaying again. | |||
2013-02-03 | Fix a name clash between Snes9x's dma.h and the DS2 dma.h by renaming the ↵ | Nebuleon Fumika | |
DS2 dma.h to ds2_dma.h. Add preliminary support for drawing emulated screens with DS2 DMA. | |||
2013-01-19 | Remove unneeded volatility, enabling more optimisations. Sound volatility is ↵ | Nebuleon Fumika | |
#define'd away, GUI volatility is simply removed. | |||
2013-01-18 | Revert "Reinstate timer-interrupt audio." | Nebuleon Fumika | |
This reverts commit 944d9a729455de435c3d200752308ceedf250196. Conflicts: source/nds/entry.cpp | |||
2013-01-17 | Reinstate timer-interrupt audio. | Nebuleon Fumika | |
This reverts commit 0d048d05ee50625f15d5235d362df6ee71903fc5. | |||
2013-01-13 | Delete server.cpp and netplay.cpp. | Nebuleon Fumika | |
2013-01-13 | Revert timer-interrupt audio, but not optimisations done since then. Get the ↵ | Nebuleon Fumika | |
controller status every scanline again. | |||
2013-01-12 | Peel loops, aka only unroll loops if their number of iterations is a ↵ | Nebuleon Fumika | |
compile-time constant. | |||
2013-01-12 | Loop unrolling sucks. It was adding loads of instructions per audio sample. | Nebuleon Fumika | |
2013-01-12 | Remove redundant writes to support reverse stereo. Define ↵ | Nebuleon Fumika | |
FOREVER_FORWARD_STEREO. | |||
2013-01-11 | Stop constantly testing for 16-bit and stereo in sound handlers. Define ↵ | Nebuleon Fumika | |
FOREVER_16_BIT_SOUND and FOREVER_STEREO and use them throughout the code. This is essentially commit 6b36e79013d4c9273a96a9783a2bccdb516f174a, but for sound instead of graphics. | |||
2013-01-08 | Revert "Reinstate FAST_ALIGNED_LSB_WORD_ACCESS for 24-bit jumps." That's in ↵ | Nebuleon Fumika | |
port.h now. This reverts commit 3dd99ccae465c370613ded10794749d6253bfe8c. | |||
2013-01-08 | Reinstate FAST_ALIGNED_LSB_WORD_ACCESS for 24-bit jumps. | Nebuleon Fumika | |
2013-01-08 | Reinstate SNES Open Bus. It was making Secret of Mana's introduction screen ↵ | Nebuleon Fumika | |
sound like a NES with a rusty audio controller. | |||
2013-01-08 | Remove Open Bus again. Stop synchronising controls so often, now that the ↵ | Nebuleon Fumika | |
audio variable latency problem is fixed. | |||
2013-01-02 | Release 1.13. | Nebuleon Fumika | |
2013-01-01 | Remove unused files. This reduces the plugin's size by 214 KB. | Nebuleon Fumika | |
unicode.c, unicode.h, charsets.c, charsets.h: UTF-8 is universally used in CATSFC. Drop unused support for GBK/SJIS encodings. | |||
2012-12-31 | Release 1.12. | Nebuleon Fumika | |
2012-12-30 | 'make release' is now a thing. It makes the .zip file for a release. | Nebuleon Fumika | |
2012-12-24 | Merge branch 'optimisation' | Nebuleon Fumika | |
2012-12-23 | Various optimisations in the CPU emulation. | Nebuleon Fumika | |
Run the opcode as a tail call from the address calculation. This cuts on the needed return instructions. Pass the opcode address as a parameter; this keeps it in a register most of the time and avoids memory stores. | |||
2012-12-22 | Preliminary Snes9x-based cheat code support. Not tested, because the file ↵ | Nebuleon Fumika | |
selection interface freezes when it gets to the folder containing Mightymo's cheat files, whereas it did not do this before with the converted Mightymo cheats. (335 files -> 679, though.) | |||
2012-12-21 | Eliminate the latency of button press recognition, which was bad enough to ↵ | Nebuleon Fumika | |
lose keys entirely sometimes, and could otherwise delay a button press or release by 200 ms. This was the entire reason I created the fork, and I finally did it! It syncs the controls every scanline of a frame, which costs about 60,000 MIPS instructions per frame to deal with. Luckily, the processor runs at 396 MHz, which means the cost of checking the controls is 1% of the CPU's power. | |||
2012-12-20 | Remove the SNES Open Bus behaviour by default. Also simplify translation again. | Nebuleon Fumika | |
SNES Open Bus is a quirk of the memory subsystem that allow reads of invalid addresses to return the last byte read from memory. However, it is seldom needed by a game, and it costs 1 to 3 MIPS instructions per SNES instruction to emulate. If you need SNES Open Bus, you can remove -DNO_OPEN_BUS from the Makefile. | |||
2012-12-20 | Add back the -mlong-calls optimisation. It shortens the plugin's code a bit. | Nebuleon Fumika | |
2012-12-19 | Raise the CPU's clock speed to 396 MHz while loading ROMs. | Nebuleon Fumika | |
Also raise the CPU's clock speed to 396 MHz by default, instead of 360 MHz, when emulating a ROM. | |||
2012-12-19 | Delete offsets.cpp, which is for a standalone tool that is unrelated to the ↵ | Nebuleon Fumika | |
emulator. | |||
2012-12-18 | Un-inline a bunch of stuff. | Nebuleon Fumika | |
With the MIPS instruction cache, this means that two consecutive SNES CPU instructions using e.g. the same addressing style or the same opcode have a chance that the second one will use the first one's code and that it will be cached. | |||
2012-12-17 | Remove more unneeded files. | Nebuleon Fumika | |
2012-12-17 | Makefile overhaul. | Nebuleon Fumika | |