Author Topic: updated to v0.2.99.12: jan_klaassen's mega super double extra special version  (Read 6585 times)

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Latest version downloads: https://www.dropbox.com/sh/0g887qtvkbo28s8/AADstKj6xQJgwnJl3AwUTxgpa?dl=0

Requires Windows 7 or higher.
« Last Edit: January 14, 2018, 07:05:13 am by jan_klaassen »

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Changelog
« Reply #1 on: November 26, 2017, 07:04:30 am »
changes in 0.2.99.12:
  • added optional filter callback for excluding directories from rom search paths
  • changed default rom path
  • changed thread communication timeout to warning instead of error
  • fixed point filter in dx9 blitter
  • fixed misaligned scanlines with softx in dx9 blitter
  • include shader source even when using precompiled shaders (fix SM1.4 and LUT computation)
  • fix initial window size when fixed-size softfx enabled
  • small colour correction cleanup

changes in 0.2.99.11:
  • improved handling of Alt/F10 keys for shortcut assignment
  • fixed load game error messages not generated when rom paths are empty
  • improved exception handling
  • fixed error message when optional neo geo bios not found has text twice

changes in 0.2.99.10:
  • changed some default settings
  • added guru meditation box for recoverable errors (uses yellow text in place of red)
  • tweaked some safety checks, added some new ones for dx9 blitter and icc parser
  • updated documentation

changes in 0.2.99.9:
  • changed default display colour profile to sRGB

changes in 0.2.99.8:
  • fix resizing window to smaller than original image size in dx9 blitter with multipass effects
  • fix dx9 blitter SM1.4 shader support (only used for SM1.4 level hardware)
  • enable dx9 blitter compatibility for legacy gpu support (AKA SM1.4 shaders compiled as SM2.0)
  • add high performance version of overlay shader (used in combination with legacy gpu shaders)
  • add colour controls to dx9 blitter
  • add proper gamma correction to dx9 blitter (old gamma controls are disabled)
  • add colour correction to dx9 blitter
  • perform cubic filter in linearised RGB (except when running on PS1.4 hardware)
  • precompile shaders for faster initialisation (VS build only, SM1.4 is unavailable when this is enabled)
  • removed menu option for fm interpolation (should always be on)
  • fixed sound not switching off when opening record input / save state dialog
  • fixed clearing inputs (crashed when built with gcc)
  • fixed version/info string generation with gcc
  • updated documentation

changes in 0.2.99.7:
  • when in fullscreen, treat WM_PAINT differently for ddraw/d3d7 and dx9 blitters (due to device lost state changes)
  • added to (still preliminary) documentation

changes in 0.2.99.6:
  • now using a pdf file for documentation
  • fix record input & save state options not pausing the emulation
  • fix using the menu to unpause
  • fix burn version number dependencies in the makefiles

changes in 0.2.99.5:
  • addressed a rounding problem in the cubic filter's vertex shaders (fixes a glitch in the cubic filter at some sizes)
  • changed the way some compile-time constants are used (speeds up / simplifies build process)
  • changed the way the cpuid instruction is invoked to use compiler intrinsics
  • updated cpu detection / info in system info dialog
  • never ask exclusive keyboard access
  • fixed legacy blitter system info crash
  • fixed dx9 blitter behaviour when in fullscreen mode and the screen becomes unavailable
« Last Edit: January 14, 2018, 06:56:52 am by jan_klaassen »

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Details
« Reply #2 on: November 26, 2017, 07:06:25 am »
Changes, improvements, and new stuff:

dx9 blitter:
  • arbitrily scalable scanlines with cubic filter (much like previous versions, except the pattern is different and the scaling isn't locked).
  • more realistic regular scanlines with cubic filter (scanlines get thinner as well as more intense, the pattern is different and more realistic).
  • CRT similation blitter (scanlines are sharp in the center and blurry in the corners, the scanlines are the result of calculations approximating the the electron beam sweeping across the screen and not just a pattern, so this also has arbitrary scaling).
  • inclusion of softfx, including in combination with the cubic filter and/or scanlines.

switches to the most appropriate refresh rate available, e.g. uses 50Hz if available for PAL consoles.

new, scalable overlay (inludes new fonts/icons, controls for all players or just player 1, and frame count/time/graph for input recordings).

dsound3 audio output that uses a synchronisation object for more efficiency and accurate timing.

support for full cd rom rips in raw format.

MIDI input:
  • digital buttons
  • encoders
  • more to do

fixes several long standing problems:
  • translations -- messages constructed at runtime and printf limitations could lead to awkward translations.
  • cross-platform error messages (with optional platform specific enhancement).
  • cross-platform zip file access.
  • uses cross-platform file system access everywhere.
  • recursive file searches

new file format for savestates/input recordings:
  • fully cross-platform
  • includes metadata for platform/fba version
  • includes metadata to detect differences in the games that the savestate versioning doesn't catch.
  • includes converter for old format
  • includes backup feature

when playing back input recording, allows to switch from playback to recording at any time.

new cross-platform command line interface.

windows gui
  • streamlined menus making fba easier to use
  • multithreaded gui (emulation doesn't stop when dialogs or menus are used)
  • assignable keyboard shortcuts for menu options, as well as aliases on game controllers (while a game is running)
  • full support for multiple displays, for both fullscreen and desktop, including portrait mode and audio routing (e.g. for a TV)
  • audio dsp module that hosts vst2 plugins (e.g. equalisers, enhancers, spectral analysis)
  • toolbar that displays marquees and coin counters when emulating mvs multislot
  • reworked load game dialog with various display/search options, favourite display, tagging (the tag database is part of the cross-platform code)
  • supports both png and jpeg images for flyers and uses optimised resizing for size reduction (custom algorithm) or enlarging (catmull-rom)

PGM emulation:
  • improved cpu scheduling and sound synchronisation, added overclock capability (to some games)
  • fixed the ICS2015 emulation so that it's in line with the (available, incomplete) documentation
  • changed the ICS2015 emulation so that it interpolates at the actual sample rate, and added a cubic interpolator

More screenshots here: http://http://neo-source.com/index.php?topic=3125.msg24329#msg24329

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Updated to v0.2.99.8.

Note that the icc profile parser still needs work, particularly on the display gamma/transfer functions and safety/error checking.

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
On my machine the new version is crashing with no error messages. I will see if I can set up a dev enviroment and see if that gives any more info

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Could be the defaults for the colour stuff, as that's not very robust yet when something is wrong. Does it work with the attached fba.ini?

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
Yes, using that .ini worked

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Great. I will update the download quickly then, with that as the default.

What does the help ? system information thingie say about your monitor(s)? The default in that build is to use the monitor's EDID to get colour information, and the system info uses the same code.

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
I think these are the relevant bits. My monitor is kind of old and shitty, which might not help:

Code: [Select]
Installed displays and display adapters:
    HP HP 2159 Series Wide LCD Monitor on NVIDIA GeForce GTX 1060 6GB
        Serial no: CZQ91403JV
        Display is in landscape prientation
        Display size ~48x27cm, Gamma 2.20
        Preferred mode 1920x1080, 60.000 Hz (477x268mm, 148.500 MHz)
        Max. bandwidth 170 MHz, H sync 24-94 KHz, V sync 48-76 Hz
        white x 0.313, red x 0.648, green x 0.282, blue x 0.143
              y 0.329,     y 0.339,       y 0.603,      y 0.070

<snip>

 Module settings:    Using D3DSWAPEFFECT_COPY to present the image
                        Colour settings: hue shift    0?
                                         saturation 155%
                                         contrast   100%
                        Correcting colours, intent is absolute
                            source: Generic CRT [ɣ = 2.45, Tcp = D65]
                            target: from EDID
                        Correcting for display gamma of 1.90




Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Thanks, yeah, esp. the top part was what I was wondering about. It seems to detect your monitor just fine, and that information looks correct (not always a given, manufacturers are sometimes sloppy with the edid stuff).

So maybe it's some other part of the defaults that's causing it to crash.

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
a VS2017 debug repeatedly throws this in the console:

Code: [Select]
* Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...
*** initialising zip support...
  * Scanning roms\...


but did show the first use dialog before it did that.

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
It does that for each (sub-) directory of the rom path. But normally only once.

I uploaded a binary for v2.99.9 (same url). Can you check if this one is OK without an fba.ini file present?

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
Still crashes without the ini present. I just noticed that it's not actually crashing as it's still showing in task manager, it's just not responsive at all or if it is, it's not showing anything. It's at 0% CPU so it can't be doing much

Offline kev

  • FBA Dev
  • ******
  • Posts: 319
  • Karma: +35/-0
I just tried a reboot and that works ok without the ini now. How weird!

Offline jan_klaassen

  • FBA Dev
  • ******
  • Posts: 315
  • Karma: +10/-0
Quaint. BYW it looks like the repeating message only happens when the rom paths aren't configured yet.