Commit Graph
66 Commits
Author SHA1 Message Date
twinaphex f740bca1e9 Move audiostream file to core/hw/aica and get rid of oslib/ in
general
2015-12-28 16:17:03 +01:00
twinaphex dd5e223830 Get rid of now unneeded PaletteUpdateHack 2015-12-28 15:07:40 +01:00
twinaphex 71f5a05d6a Simplify audiostream code 2015-12-28 13:47:58 +01:00
twinaphex fc251659d7 Create reicast_audio_buffer_size core option 2015-12-28 13:39:17 +01:00
twinaphex 0e4656554c Turn mipmapping into core option 2015-12-27 15:55:45 +01:00
twinaphex f8eb58ac16 Fix Street Fighter Alpha 3 with 'AICA interrupt hack' - backported from
https://code.google.com/p/nulldc/source/detail?r=108
2015-12-27 10:43:21 +01:00
twinaphex ed7b976935 add hack for Capcom Vs SNK 2 that fixes the 2D sprite graphics
glitches
2015-12-26 18:49:27 +01:00
twinaphex 03f893c832 Look up game now - detect if it's Marvel Vs Capcom 2, and if so,
set dynarec type to 'generic_recompiler'
2015-12-26 18:23:22 +01:00
twinaphex 0ff4ecd0fc Make reios char variables public extern 2015-12-26 18:04:21 +01:00
twinaphex 3c5b515cff always attempt to grab 1ST_READ.BIN regardless of whether reios
is used or not
2015-12-26 15:06:09 +01:00
twinaphex fb4b4d1533 Ability to switch between 'dynamic recompiler' and 'generic recompiler'
now (generic-recompiler is just another name for rec-cpp). Use 'generic
recompiler' for playing Marvel Vs Capcom 2 without crashes. Also gets
us further ingame in Shenmue 1
2015-12-24 15:04:18 +01:00
twinaphex 2fae4a2508 Add dynarec type setting 2015-12-24 09:55:56 +01:00
twinaphex 3f35380a7b get rid of hardcoded slash in data paths - would not work for
Windows
2015-12-22 07:43:42 +01:00
twinaphex 3a83011cbf Create settings.QueueRender, default to false - Daytona USA 2001
was stuttering pretty badly, by always invoking rend_single_frame
when we call rend_start_render, we get the correct framerate back
 (around 59.8/59.7 for most 60Hz games).
Will turn this into a core option later
2015-12-22 01:48:01 +01:00
twinaphex 29014a4926 Cleanups 2015-12-18 23:56:31 +01:00
twinaphex 5a2b3b7c77 Move stuff around 2015-12-18 23:52:52 +01:00
twinaphex 55d4fb8f21 Get rid of config code 2015-12-18 07:08:40 +01:00
twinaphex 93dcd892a2 Cleanups 2015-12-18 06:54:30 +01:00
twinaphex f658fc1434 No longer use HOST_OS - use __linux__ for Linux (and Android),
use __MACH__ for OSX and iOS, use _WIN32 for Windows
2015-12-15 22:41:55 +01:00
twinaphex fc8e1f0d97 Add libretro defaults 2015-12-13 17:44:18 +01:00
twinaphex 537e2488b3 Move functions around 2015-10-21 18:20:12 +02:00
twinaphex 6076a4d5fd Cleanups 2015-10-20 08:18:53 +02:00
twinaphex 428a5e600a Take out some platform-specific ifdefs 2015-10-20 00:25:29 +02:00
twinaphex fbbd48e27d Remove some PANDORA ifdefs 2015-10-18 18:14:22 +02:00
twinaphex 1a5f620b77 Remove some more files 2015-10-17 23:28:09 +02:00
twinaphex e1bab7a6fc Get rid of more unnecessary stuff 2015-10-13 00:15:44 +02:00
twinaphex 82ad7f13ee Remove everything we don't need for libretro 2015-10-12 23:17:32 +02:00
Jan Holthuis 4267d51f90 stdclass: Make path getter function names more verbose 2015-09-02 15:49:00 +02:00
Jan Holthuis b6d0cddcaa stdclass: Add support for separate config/data dirs and system wide dirs
This adds support for separate config and data dirs.

On Linux, these will be compliant XDG Basedir Specification, i.e.
XDG_CONFIG_HOME and XDG_CONFIG_DIRS (or XDG_DATA_HOME and XDG_DATA_DIRS
respectively). On all other platforms, there currently just set to the
homedir path (so no previous behaviour has been changed).

If reicast wants to read and write a data file, it just calls
get_data_path("/samplefile.txt"). If it does not need to write to
that file, it just uses get_data_path("/samplefile.txt", false). That
way, we can also use system-wide dirs (like /usr/share/reicast on
linux), that the user usually doesn't have write access to.

The same applies for config file, where you use get_config_path(args)
respectively.
2015-09-02 15:48:53 +02:00
Stefanos Kornilios Mitsis Poiitidis f065bc5289 Merge pull request #744 from reicast/feat/improved-speed-sync
sync: Also sync to video if too fast
2015-08-24 13:47:51 +02:00
Jan Holthuis 7e854f6544 nulldc: Remove some hardcoded values 2015-08-22 17:24:29 +02:00
Stefanos Kornilios Mitsis Poiitidis 67ecd6d9f9 vmem: Automatic fallback to slowpath if alloc fails
This consolidates some of the work done for TARGET_NO_NVMEM and
feat/no-direct-memmap. If nvmem is disabled at compile time or alloc
fails _nvmem_enabled() will return false. Various other fixes
and cleanups all around.
2015-08-12 03:09:44 +02:00
Stefanos Kornilios Mitsis Poiitidis 3703b15c3a sync: Also sync to video if too fast
config:pvr.SynchronousRendering controls this feature

Not quite perfect, but should reduce the issues
with too fast hardware
2015-08-11 23:55:51 +02:00
Stefanos Kornilios Mitsis Poiitidis 7feeec0ceb naomi: Refactor cart logic to naomi_cart 2015-08-11 19:13:11 +02:00
Stefanos Kornilios Mitsis Poiitidis 7d0d2ba572 naomi: Initial support for TARGET_NAOMI, windows only
- Import naomi code from nullDC, modify and cleanup
- Only unprotected dimm-board support, custom lst files
- Still a compile option
- Boots naomi bios and some games, no input yet
2015-08-11 19:13:11 +02:00
Stefanos Kornilios Mitsis Poiitidis dfc341a5fe softrend: OpenMP support, fix present overflow during untiling
- Uses vertical slicing
- Efficiency wins are best for 2-3 rendering threads
2015-08-11 00:26:02 -04:00
Stefanos Kornilios Mitsis Poiitidis 0343feffa6 Merge pull request #714 from reicast/wip/nacl-and-emscripten
NaCL & Emscripten targets

- CPU_GENERIC
- TARGET_NO_THREADS
- TARGET_NO_NIXPROF
- TARGET_NO_EXCEPTIONS
- TARGET_NO_NVMEM
- TARGET_BOUNDED_EXECUTION
- TARGET_NO_COREIO_HTTP
2015-08-03 11:28:29 +02:00
Gabriel Corona 9ff72a731f Remove function declaration in the middle of a function 2015-07-31 20:32:11 +02:00
~skmp 376a36bf57 Emscripten: Hacky support, can boot bios
- Add TARGET_BOUNDED_EXECUTION, TARGET_EMSCRIPTEN
- Add emscripten makefile

Of course, there's no jit at this point
2015-07-29 04:08:08 +02:00
Stefanos Kornilios Mitsis Poiitidis 9cf9bacd13 build: Refactor HOST_NO_REC everywhere 2015-07-25 13:19:26 +02:00
TwistedUmbrella e3744446f5 Support return to external launcher, Prep for linux
This adds the ability to simply close the emulator when launched
externally and prevents changes designed for linux from generating
conflicting controller configurations on Android (and may be needed for
iOS as well).
2015-06-28 11:29:34 -04:00
Stefanos Kornilios Mitsis Poiitidis 9c2a4dc5a4 iOS fixes 2015-05-16 01:04:30 -07:00
Stefanos Kornilios Mitsis Poiitidis 6547d80095 Fixes for android, cleanup context.cpp 2015-05-16 08:18:46 +02:00
Stefanos Kornilios Mitsis Poiitidis 65ca1382d8 Merge remote-tracking branch 'remotes/origin/skmp/ios-wip' into feat/segfault-context-consolidation
Android/windows builds fine again. Android not tested yet, iOS/OSX not compiled yet
2015-05-16 07:12:19 +02:00
Stefanos Kornilios Mitsis Poiitidis 64b2fcbb1c Disable glCheck by default, move to validate:OpenGlChecks config 2015-04-12 22:48:16 +02:00
Stefanos Kornilios Mitsis Poiitidis 0c04adba67 reios: Add support for elf booting 2015-03-22 01:30:19 +01:00
Stefanos Kornilios Mitsis Poiitidis cca8558d08 Add Serial Console option (debug.SerialConsoleEnable) for KOS, etc 2015-02-25 20:56:58 +01:00
Stefanos Kornilios Mitsis Poiitidis f2c07917c7 Partially working dyna for iOS. Very few games working atm.
This works, but is extremelly hacky. Must be started without attached debugger, lldb doesn't want to let go of EXC_BAD_ADDRESS, but reicast really depends on it getting delivered as SIGSEGV/SIGBUS. Also xcode has a really bad day upon seeing the jit code. Oh well.

There's some dynarec bug that causes color corruption on bios logo/boot triagles, TA crash on ikaruga and infinitive loop on crazy taxi. I'd guess some fp-memory-write thingy, abi, or smth. Too bad.

- Force code to compile in arm mode (arm jit -> thumb mem functions is complicated)
- SIGILL, SIGBUS. Works w/o Mach exceptions and EXC_BAD_ADDRESS
- Code buffers move to __TEXT, munmapped && memmapped to actually work
- Primitive input. Button + start, or left (works to get out of bios date screen)
- Fixup emitter for thumb2/interworking (didn't work though, reverted to arm cc)
- Block Manager: Disable mem saving / page fault alloc-on-demand logic
- Move cycle counter to r11, r9 is not clean on iOS. Remove r11 from reg alloc list
- Cache flushes for iOS
- log to log.txt
- load game.chd
2015-01-18 23:52:12 -08:00
Stefanos Kornilios Mitsis Poiitidis 25eee26ce5 First steps towards a HLE bios implementation
This is very simplistic, but can already boot and run many games

Known working so far
- Dead Or Alive 2 LE
- Head Hunter
- Marvel VS Capcom 2

Not working
- (Almost) all others
2014-12-29 22:05:35 +01:00
Stefanos Kornilios Mitsis Poiitidis 56ebda10a9 ios interpreter works, bios runs w/ 3d visulals
THIS IS A MESS. Sorry @angelXwind :p. We'll have to clean up and merge for r8, but most of the nasty work is there.

What works:
- full init, memalloc, mprotects, etc
- boot
- gles2

What doesn't:
- Exceptions for page faults
  - Breaks texture cache
  - Breaks dynarec because of fastpath
  - segfaults don't work, needs special mach exc_server magic that still eludes me after 5 hours
- Dynarecs. RWX issues, and broken buffer mappings. Also some minnor linking stuff (most of it is taken care of)
- Audio. I just killed it off.
- All of the ui. Was getting in the way of me not knowing how to edit story boards...
- Input

Also, merged branch 'skmp/mac86-hackport' into skmp/ios-wip

Have fun~
2014-12-17 10:19:44 -08:00