Code
Search code…
Fix Darklight Conflict press start screen Both compute shaders that bridge the CPU-direct-write VDP1 framebuffer texture to the displayed render target (vdp1_write_f) and back to CPU- readable memory (vdp1_read_f) hardcoded a (512, 256) bounds check and, in vdp1_read_f, a matching stride of 512 for the output buffer index. This silently discarded/mislaid any pixel beyond X=512, i.e. the right half of the true 1024x256 Hi-Res VDP1 framebuffer, regardless of how correctly the surrounding C-side buffers were sized (see the vdp1.c/ commongl.c/vdp1_compute.c fixes). Replaced both hardcoded limits with imageSize() of the actual bound texture, so the shader adapts to whichever VDP1 mode is active instead of assuming 512x256.
Sega Saturn Emulated Hardware
You can read about the Sega Saturn Console and is components here.
Building
CMake
The CMake system has been refined to build the full Yabause stack.
you have to download CMake and run it in the root of the first CMakeLists.txt. Currently in /yabause/CMakeLists.txt.
Platforms
Since CMake is a true cross platform build tool you can build on plenty of platforms and easily add new ones.
Currently used are:
- Windows
- Linux (Debian)
QT Version
You can set the CMake flag YAB_USE_QT5 to build a Standalone version which requires you to have QT5 installed
LibRetro - RetroArch Version
For this you need to se the CMake flag KRONOS_LIBRETRO_CORE. This will build a version of the core consuming LibRetro and there fore can be used with LibRetro compatible front-ends like RetroArch (which is what i test against)
Old make build script (obsolete)
The old build script is still there for reference. It contains custom build code for various platforms and is the base reference for newer entries in the CMake code. It is still though considered obsolete.
For retroarch core:
- mkdir build_retro; cd build_retro;
- make -j4 -C ../yabause/src/libretro/ generate-files
- make -j4 -C ../yabause/src/libretro/
- then execute retroarch -L ../yabause/src/libretro/kronos_libretro.so path_to_your_iso
Pre-Build Versions
Older Builds
Older Windows builds can be found here!
Platform Notes
RetroArch
Is the Frontend which is used for manual tests
Windows
Works quite well on a modern Hardware.
Raspberry Pi 4 Raspberian OS
Has currently various problems running and is not usable.
- The Shaders are too complex and Mesa can not handle that. It will fail with a driver crash with Mesa 19.2
- Code is to demanding on the CPU by now even with frameskip 5 there is no acceptable framerate even on 2d games.
Outdated Reference Documentation
Contributing
To generate a changelog, add in your commits the [ChangeLog] tag. Changelog will be extracted like this
git shortlog --grep=Changelog --since "01 Jan 2020"