Skip to content

0.0.94

Compare
Choose a tag to compare
@ranma ranma released this 26 Jun 16:07
· 461 commits to master since this release

Bugfixes:

  • gbsplay:

    • cpu emulation fixes:
      • RLCA/RLA/RRCA/RRA did not set ZF
      • fix botched SBC zero flag handling
      • fix slight bug in ADC/SBC
      • fix INC/DEC SP, CP A and half-carry flag in DEC
      • fix PUSH/POP AF
      • fix cycle timing for conditional branches
      • fix cycle timing for LD HLSP/LD SPHL and 16bit ALU ops
      • halt with global interrupt flag disabled can still be interrupted
    • fix error on midi plugout where a write to the file could occur
      before the file was opened
    • fix garbled screen on exit in verbose mode (gbsplay -v)
    • fix status display: respect channel in left/right total volume
    • fix impulse generator: generate a header file at compile-time
    • restore mute settings after every apu_reset
  • build process:

    • fix test target during parallel builds (make -j)
    • support building with MSYS2
    • fix ShellCheck warnings

Removals:

Enhancements:

  • gbsplay:

    • more accurate sound and other HW emulation:
      • calculate LFSR correctly
      • play first nibble on DAC-channel from fresh buffer
      • correct noise channel speed
      • use more DMG-like DC-offsets
      • more accurate cpu cycle accounting
      • remove DC offset from DAC-channel
      • more accurate channel gating
      • support read-back of timer registers and NR52
      • fix length counter and trigger logic
      • improved sequencer correctness
      • volume envelope is only clocked when channel is running
      • support reading the scanline counter
    • show text written to link port (only if text detected, for test roms)
    • show register contents in verbose mode (gbsplay -v)
    • add basic GBR file support
    • basic support for plain GB roms
    • support ugetab int vector extension (gbs spec 1.04u)
    • add 'iodumper' plugout for testing
    • add support for blargg-gb-tests debug output
    • midi exporter:
      • track DAC and running status for channel 1-3
      • fix channel trigger handling
      • call note_off/note_on when volume changes between zero/non-zero
      • export portamenti as separate notes
      • honor APU reset (stop all notes)
      • end pending notes when closing track
      • emit pan control messages
    • new alternative midi exporter
    • enable new gcc compiler warnings
    • clarified GPL version as "GPL v1 or later"
  • build process:

    • add V=1 make option for verbose compiling ("make V=1")
    • add gbsplay mime entry to install step and run update-mime-database
    • add gbsplay.desktop file in install step

Documentation:

  • describe plugouts in manpage
  • updated contact info
  • adhere to the common manpage styleguide, see