EmuCR Feeds
Email Us

EmuCR:OpenMSX OpenMSX Git (2026/10/12) is compiled. OpenMSX is an open source MSX emulator which is free according to the Debian Free Software Guidelines, available under the GNU General Public License.For copyright reasons the emulator cannot be distributed with original BIOS ROM images. OpenMSX includes C-BIOS a minimal implementation of the MSX BIOS, allowing to play quite some games without the need to have an original MSX BIOS ROM image. You can also use your own BIOS ROM image if you please.

OpenMSX Git Changelog:
* Minor tweaks to release notes.
* Merge branch 'makoto-experiment'
* YM2608: fix possible assert on switching prescale
* Makoto.xml: drop 'experimental' tag
* YM2608: (de-)serialization bug fix
* Makoto: split audio and emu path
* Makoto.xml: increase the default volume
* Bugfix: revert c9672ecf8
* Makoto: match extension XML layout to peers
* YM2608: normalize FM amplitude and retarget Makoto volumes
* Makoto: drop dedicated documentation
* Makoto: trim user and internal docs for merge
* Makoto: drop experiment Contrib tests before merge
* YM2608: fold remaining 3rdparty bits into src/sound
* YM2608: keep CSM off the sample loop and rescale timer deadlines
* YM2608: fix CSM one-shot, soft reset, ADPCM IRQ, and prescale timers
* YM2608: drop unused AdpcmBChannel::keyOnOff declaration
* YM2608: use scoped enums and drop updatePrescale
* YM2608: align serialize keys and drop rebuildable irqMask
* YM2608: adopt camelCase / PascalCase naming
* YM2608: stop storing registers in adpcm_a_channel
* YM2608: put engine types in ym2608 namespace
* various small cleanups
* YM2608: move .cc-only helpers and serialize out of the header
* YM2608: drop function banners that only restate the name
* YM2608: put constexpr constants on the types that own them
* YM2608: use unsigned for channel, operator, and timer indices
* YM2608: stop marking output_4op const so feedback is ordinary state
* YM2608: use bool for 1-bit flags and key/timer enables
* YM2608: match openMSX if/else braces and Type& spacing
* YM2608: let each FM channel own its operators
* YM2608: drop stored back-pointers in favor of OUTER
* YM2608: rename fm_engine_base to fm_engine
* YM2608: let the FM engine own the timers
* YM2608: let the FM engine own the IRQ pin
* YM2608: drop contextTime and pass EmuTime instead
* YM2608: give each ADPCM engine its own memory
* YM2608: fold the OPNA engines into the chip sources
* YM2608: tidy savestate load after dropping emuClock
* YM2608: stop serializing FM and SSG resampler clocks
* AY8910: sync the stream inside setClockFrequency()
* sound: keep chip sample time when only the host resampler changes
* Fix Makoto experiment integration and restore validation coverage
* ymfm: serialize FM and ADPCM-A arrays as collections
* ymfm: pack channel and operator members to drop internal padding
* ymfm: hide YM2608 busy helpers and refresh a few comments
* ymfm: shrink remaining state and operator-cache fields
* ymfm: shrink the FM channel and operator state fields
* ymfm: shrink the ADPCM channel state fields
* ymfm: drop leftover OUTPUTS, busy masking, and ADPCM-A address helpers
* ymfm: remove the unused OPM phase-step table
* ymfm: drop the unused host sync and busy interface hooks
* ymfm: replace the local clamp() helper with std::clamp
* ymfm: hoist FM and ADPCM-B pan writes out of the sample loop
* ymfm: use a compile-time sine table
* ymfm: null an FM buffer whose pan bits are both clear
* ymfm: bake the ADPCM-B output shift into the sample
* ymfm: make adpcm_a_channel::clock() return void
* ymfm: drop the unused ADPCM address-shift argument
* ymfm: reduce the ADPCM-B interpolator to one multiply
* ymfm: unpack the FM algorithm routing in the output plan
* ymfm: construct each FM channel with its four operators
* ymfm: pass the channel offset into fm_operator::prepare()
* ymfm: make the leftover protected members private
* ymfm: drop the unused ADPCM-A OUTPUTS and identity channel_offset()
* ymfm: key CSM only on FM channel 2
* ymfm: set each operator's channel offset at construction
* ymfm: give the ADPCM channels the interface directly
* ymfm: correct stale claims in the patch log
* ymfm: remove the unused fm_operator offset getters
* ymfm: store the ADPCM channels by value
* ymfm: store the FM channels and operators by value
* ymfm: pass the registers to the fm_channel buffer setup
* ymfm: pass the registers to fm_operator::prepare()
* ymfm: drop the unused channel number from fm_channel::keyonoff()
* ymfm: wire the operators from a constexpr map
* ymfm: remove unused register accessors
* ymfm: trim unused access classes and includes
* ymfm: drop the envelope divider template parameter
* ymfm: trim the algorithm routing table to the eight OPNA entries
* ymfm: clear the SSG-EG inversion in prepare() instead of every sample
* ymfm: remove the unused DAC floating-point helpers
* ymfm: write the FM channel output straight to the buffer
* ymfm: replace the FM output shift argument with a constant
* ymfm: remove the unreachable clamp in the FM output stage
* ymfm: remove the dead ADPCM-A engine clock
* ymfm: hoist the ADPCM-B decode state and position step
* ymfm: read the LFO rate once per buffer
* ymfm: hoist the LFO AM shift out of the sample loop
* ymfm: cache the LFO PM sensitivity per operator
* ymfm: hoist the ADPCM-B level and pan out of the sample loop
* ymfm: rescale the ADPCM-A sample only on a clock tick
* ymfm: hoist the ADPCM-A volume and pan out of the sample loop
* ymfm: drop the null operator checks in the channel loops
* ymfm: cache the SSG-EG and LFO AM enable bits per operator
* ymfm: remove the OPL key-scale-level remnants from the operator cache
* ymfm: state the envelope counter invariant in advance_eg_counter()
* ymfm: remove unused accessors and the owner back-reference
* ymfm: drop the unused STATUS_IRQ status bit
* ymfm: fold fm_registers_base into opna_registers
* ymfm: drop the RegisterType template parameter
* ymfm: move opna_registers into ymfm_fm.h
* ymfm: drop the EG_HAS_* / DYNAMIC_OPS feature flags
* ymfm: fold the IsOpnA template parameter
* ymfm: remove voice paths OPNA cannot reach
* ymfm: hoist per-buffer constant registers out of the FM output loop
* ymfm: generate one channel for the whole buffer before the next
* ymfm: skip mixing channels that stay silent for a whole buffer
* ymfm: remove debug code
* WIP: use openMSX serialize() in ymfm
* WIP: remove the parts we no longer use
* WIP: minimal edits to suppress compiler warnings
* WIP: tweaks related to write and updateStream
* WIP: restructure
* Document channel-loop and ownership experiment results
* Split channel rendering by engine and finish owned-code style cleanup
* Serialize Makoto control fields natively and simplify sound ownership
* Fix optimized OPNA template linkage and remove redundant wrappers
* Isolate Makoto IRQ regression from BIOS and VDP activity
* Own the Makoto YM2608 control layer and write native mixer buffers
* Use native Makoto audio streams and address review feedback
* Refine Makoto integration and correct hardware-verified RAM transfers
* Address Makoto mixing, silence and initial state-format review
* Remove Makoto summer filter after blind listening and CPU comparison
* Harden Makoto benchmark reports and use SHA-256 test checksums
* Refine Makoto timers, debugger, rhythm samples and channel processing
* Refine Makoto model from designer details and address integration review
* Initialize YMFM operator cache explicitly
* Tidy Makoto source and test whitespace
* Add experimental SuperSoniqs Makoto YM2608 extension

Download: OpenMSX Git (2026/10/12) x64
Source: Here



Random Related Topic Refresh Related Topic

Random Related Topic Loading...

0 Comments

Post a Comment

Can't post a comment? Try This!