Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dosbox OPL 3. #91

Merged
merged 9 commits into from
Aug 31, 2021
Merged

dosbox OPL 3. #91

merged 9 commits into from
Aug 31, 2021

Conversation

Raffaello
Copy link
Owner

@Raffaello Raffaello commented Aug 30, 2021

Fixes #90

@Raffaello Raffaello added the bug Something isn't working label Aug 30, 2021
@Raffaello Raffaello added this to the AdLib milestone Aug 30, 2021
@Raffaello Raffaello self-assigned this Aug 30, 2021
@Raffaello Raffaello added this to In progress in OPL via automation Aug 30, 2021
@todo
Copy link

todo bot commented Aug 30, 2021

@Raffaello Raffaello linked an issue Aug 30, 2021 that may be closed by this pull request
@Raffaello Raffaello changed the title dosbox OPL 3. Fixes #90 dosbox OPL 3. Aug 30, 2021
* detect chip example, not really working

* code review

* code review
@Raffaello Raffaello merged commit 10f8608 into adlib Aug 31, 2021
OPL automation moved this from In progress to Done Aug 31, 2021
@Raffaello Raffaello deleted the adlib-dosbox-opl3 branch August 31, 2021 14:27
Raffaello added a commit that referenced this pull request Dec 27, 2021
* Fixes #2

* Fixes #1

* wip, working on GCC only

* [WIP] PC Speaker. 8 channels.. damn

* PC Speaker examples

* GCC compile annotation

* [wip]

* [wip]

* PC Speaker minor refactor

* update .gitignore

* remove out dir

* clean ups

* update PC Speaker (#6)

* update PC Speaker

* refactor wave generators into generators

* Wave Generators tests

* fix wave generator functions type

* refactor TestWaveGenerator

* refactor TestWaveGenerator

* replace std::function with a switch on the enum

* PCSpeaker refactor

* PCSPeaker refactor, duration test failing

* fix PCSpeaker duration and create base duration test

* PCSpeaker duration tests

* PCSpeakerTest refactor

* linting

* PCSpeaker::callback refactor

* PCSpeaker::readbuffer refactor

* PCSpeaker add signed unsiged format

* draft 32bit audio

* restore static_assert

* linting

* generators linting

* generators add comment

* PCSpeaker remove volume

* update .gitignore

* remove binaries

* update README

* adlib files update

* [WIP] structuring hardware opl

* [WIP] woodyopl implementation

* woodyopl namespace

* case sensitive OPL.* files

* [WIP] namespace woody | SurroundOPL

* TestSurroundOPL

* CMake test macro

* [WIP] hardware pc-speaker, adlib

* move OPL interface into woody namespace

* OPLChip int32_t replaces intptr_t type

* [WIP] skeleton of scummvm opl emulation

* correct typo

* Adlib files (#20)

* endianness compile time detection and function for 16 32 bits

* remove sdl2 dependecy from files namespace

* cleanups

* doc iff xmidi files

* [WIP] files namespace tests

* [WIP] read File .XMI

* [WIP[ ADL

* [WIP] XMI File

* [WIP] XMI File

* XMI File timbre

* [WIP] ADL v1,v2,v3 detect version

* update README

* [WIP] ADLFile reading

* XMI read TIMB chunk fix

* tests fix

* code review

* code review

* cleanup

* [WIP] ADLDriver

* [WIP] ADL Driver init

* add spdlog dependency

* OPL refactor, ADLDriver class definition

* [WIP] ADLDriver

* [WIP] ADLDriver

* ADLFile fix v3 header reading

* [WIP] ADLDrv demo

* [WIP] adli sound. OPL broken

* OPL Emulation interface and sound generation (#23)

* [WIP] init opl re-work

* revert OPL to woody/OPL

* [WIP] ScummVM EmulatedOPL, mame opl2

* [WIP] OPL MAME

* [WIP] scummvm OPL MAME compiling

* [WIP] scummvm OPL MAME compiling

* [WIP] scummvm ADLDriver

* [WIP] ADLDriver scummvm

* [WIP] SoundPC with ADLDriver

* [WIP] todo

* [WIP] ADLDriver sound

* [WIP] todo

* TestMame basic

* [WIP] Test ADLDriver

* [WIP] Test ADLDrv

* Test ADLDrv

* [WIP] Adlib sound

* add tests

* add more tests

* Algorithms tests, [WIP] SDL2Mixer implementation

* [WIP] clean ups

* remove woody namespace

* remove woody namespace

* [WIP] ...

* clean ups

* sdplog cleanups

* [wip]

* mame OPL 440Hz test

* [WIP] restore adl dir for testing

* sound_adlip test restore

* hardware/opl/woody restore

* Revert "remove woody namespace"

This reverts commit 77071bb.

* [WIP] ADLFiles data ptr fix. first OPL sound (wrong and soft)

* [WIP] SDL2Mixer query Audio device retrieving output rate

* ADLFile fixes (#24)

* [WIP] init

* ADLFile fixes

* MockMixer and fix ADLDriver tests

* using MockMixer

* code review

* code review

* code review

* DosBox OPL Emulation (#26)

* [WIP] init

* DOSBox OPL2

* DOSBoxTest

* DOSBox DUAL_OPL2 stereo demo

* DOSBox OPL3 stereo demo

* Fix ADLFile and ADLDriver

* [WIP] ADLDriver

* ARRAYCLEAR test

* code review

* Nuked OPL (#50)

* [WIP] init

* refactor demos

* nuked, but not stereo

* [WIP] comments

* nuked alway stereo. fixes

* code review

* ADLFile test fixes

* restore woody OPL

* woody namespace, driver and emulator (#55)

* restore woody OPL

* [WIP] init

* [WIP] WoodyEmuOPL extends EmulatedOPL

* SurroundOPL extends EmulatedOPL

* woody OPLs tests

* [WIP] ADLDriver demos

* woody opls not working with emulated opl

* code review

* [WIP] ADLDriver debug

* [wip] ADLDriver

* Adlib files drivers scummvm (#60)

* [wip] comparing with scummvm original code

* [wip] comparing with scummvm original code

* [wip]

* [wip]

* [wip]

* woody original working

* wip

* [restore woody]

* woody working

* SDL2 Mixer Implementation through SCUMMVM (#67)

* init

* [wip] build ok

* SDLMixer MixerManager

* [WIP] sdl2mixer demo

* sdl2mixer demo

* remove drivers::scummvm contents

* clean ups

* Westwood ADL Driver (#21)

* [WIP] ADLDriver

* [WIP] ADL Driver init

* add spdlog dependency

* OPL refactor, ADLDriver class definition

* [WIP] ADLDriver

* [WIP] ADLDriver

* ADLFile fix v3 header reading

* [WIP] ADLDrv demo

* [WIP] adli sound. OPL broken

* OPL Emulation interface and sound generation (#23)

* [WIP] init opl re-work

* revert OPL to woody/OPL

* [WIP] ScummVM EmulatedOPL, mame opl2

* [WIP] OPL MAME

* [WIP] scummvm OPL MAME compiling

* [WIP] scummvm OPL MAME compiling

* [WIP] scummvm ADLDriver

* [WIP] ADLDriver scummvm

* [WIP] SoundPC with ADLDriver

* [WIP] todo

* [WIP] ADLDriver sound

* [WIP] todo

* TestMame basic

* [WIP] Test ADLDriver

* [WIP] Test ADLDrv

* Test ADLDrv

* [WIP] Adlib sound

* add tests

* add more tests

* Algorithms tests, [WIP] SDL2Mixer implementation

* [WIP] clean ups

* remove woody namespace

* remove woody namespace

* [WIP] ...

* clean ups

* sdplog cleanups

* [wip]

* mame OPL 440Hz test

* [WIP] restore adl dir for testing

* sound_adlip test restore

* hardware/opl/woody restore

* Revert "remove woody namespace"

This reverts commit 77071bb.

* [WIP] ADLFiles data ptr fix. first OPL sound (wrong and soft)

* [WIP] SDL2Mixer query Audio device retrieving output rate

* ADLFile fixes (#24)

* [WIP] init

* ADLFile fixes

* MockMixer and fix ADLDriver tests

* using MockMixer

* code review

* code review

* code review

* DosBox OPL Emulation (#26)

* [WIP] init

* DOSBox OPL2

* DOSBoxTest

* DOSBox DUAL_OPL2 stereo demo

* DOSBox OPL3 stereo demo

* Fix ADLFile and ADLDriver

* [WIP] ADLDriver

* ARRAYCLEAR test

* code review

* Nuked OPL (#50)

* [WIP] init

* refactor demos

* nuked, but not stereo

* [WIP] comments

* nuked alway stereo. fixes

* code review

* ADLFile test fixes

* restore woody OPL

* woody namespace, driver and emulator (#55)

* restore woody OPL

* [WIP] init

* [WIP] WoodyEmuOPL extends EmulatedOPL

* SurroundOPL extends EmulatedOPL

* woody OPLs tests

* [WIP] ADLDriver demos

* woody opls not working with emulated opl

* code review

* [WIP] ADLDriver debug

* [wip] ADLDriver

* Adlib files drivers scummvm (#60)

* [wip] comparing with scummvm original code

* [wip] comparing with scummvm original code

* [wip]

* [wip]

* [wip]

* woody original working

* wip

* [restore woody]

* woody working

* SDL2 Mixer Implementation through SCUMMVM (#67)

* init

* [wip] build ok

* SDLMixer MixerManager

* [WIP] sdl2mixer demo

* sdl2mixer demo

* remove drivers::scummvm contents

* cleanups (#76)

* FIX #66

* demos clean up

* FIX #65

* FIX #56

* FIX #73

* FIX #31

* Adlib ADL file, driver cleanups (#77)

* ADL files driver refactor

* ADL files driver refactor

* cleanups

* clean ups

* adjust adlfile offsets

* code review

* warning cleanups

* Adlib adl woody merge. Fix#75 (#79)

* wrapper woody opl to scummvm

* WoodyOPL connected to scumm

* clean ups

* code review

* Adlib refactor. Fixes #68 (#80)

* getMillis as utils. Fix #68

* getMillis as utils. Fix #68

* Adlib opl config (#81)

* refactor, test Config class

* code rev

* TestWoodyOPL basic

* sonic drivers static lib (#87)

* sonic-drivers-static lib

* code review

* library ADLIB/OPL usage examples (#85)

* [WIP] init

* opl example

* opl example

* opl example

* code rev

* using delay function

* code review

* code rev

* code rev

* code rev

* Adlib ADL example (#89)

* [WIP] init

* ADL example

* code rev

* code rev

* dosbox OPL 3. (#91)

* init

* fix output. but seems at higher pitch

* code review

* [wip]

* [wip]

* detect chip example, not really working (#92)

* detect chip example, not really working

* code review

* code review

* [wip]

* temporary fix

* code rev

* remove functor parametrizing version using meta_version struct (#96)

* remove functor parametrizing version using meta_version struct

* code review

* code review

* code review

* typedef struct convention definition

* MID files. (#95)

* [wip] init

* [WIP] init

* [WIP] MIDFile, VLQ function

* [WIP] saving progress...

* [WIP] saving progress

* MIDFile read

* update midi test

* refactor File read methods

* code review

* MAME OPL3 (#101)

* [wip] refactor

* Adlib mame opl3 ymfm (#102)

* [WIP] init

* [WIP] MameOPL

* [WIP] MameOPL3 old code half-working

* [WIP] mame opl3 sample rate not configurable.

* Miles Driver implementation for playing XMI midi files (#103)

* [WIP] init

* [WIP] MIDFile Total time

* midi doc

* [WIP] Xmidi test, AIL ADV reading

* ADLIB.ADV reading

* [WIP] init AILDriverFile class

* ADLIB.DRV extract DDT

* BNK files struct

* add miles doc

* reorganized docs

* clean up code and miles driver as fixtures

* VLQ move to utils algorithm. Fix #100

* [WIP] Disk renderer mixer

* [WIP] OPL Disk Renderer

* WAVFile basic implementation (#105)

* WAVFile basic implementation

* refactor WAVFile

* removed cached duplicate file with case sensitive difference

* WAVFile

* WAVFile

* doc add RIFF and Wave file specifications

* doc add RIFF and Wave file specifications

* code review

* SB doc. code review

* VOCFile basic implementation (#106)

* [WIP] VOC docs

* [WIP] VOCFile init

* [WIP] VOCFile data block type 0

* [WIP] VOCFile data block

* [WIP]

* VOCDriver (#107)

* [WIP] VOCDriver

* VOCDriver

* [WIP] VOCDriver, working double the freq when play for mono VOC

* VOCDriver 8-bit PCM mono

* 8 bit 16 bit integer conversion

* VOCFile playing block 9

* VOCFile playing block 9. Fixes

* VOCFile playing block 9. Fixes

* code review

* code review

* VOC example

* code review

* WAVDriver (#113)

* [WIP] WAVDriver init

* WAVDriver example

* code reivew

* code review

* some namespace refactors (#117)

* [FIX] VOCFile block 9

* [WIP] ..

* move ADLFile into files::westwood namespace

* move XMIFile to files::miles namespace

* MIDI/XMI parsing (#120)

* [WIP] MIDI event parser experimental

* [WIP]MIDParser text meta event parsed

* MIDParser in text version

* [WIP] MIDParser

* multi-thread parsing processing

* comment code

* code review

* MIDParser midi ticks

* MIDParser precise timer not synchonrized

* [WIP] XMIParser init

* decode_xmi_VLQ

* [WIP] XMIParser

* [WIP]XMI midi events parser

* XML Parser, missing clock and delay tempo to implement in the displayTrack method

* audio::MIDI namespace (#121)

* [WIP] init. midi types definitions

* [WIP] MIDFile/parser refactor

* MIDIParser remove dependency from MIDFile

* MIDFile cleanups

* [WIP] XMIFile refactor

* code review

* [WIP] XMIFile refactor/enhanchement planning

* [WIP] XMIFile revert fix

* [WIP] XMIFile revert fix

* [WIP] need to fix the XMI fixtures

* [WIP] need to fix the XMI fixtures. build fix

* XMIFile fixture fix

* code review

* remove old types MIDI structs

* code review

* XMIDriver

* Adlib mame opl3 ymfm miles drv xmimid parsing audio midi (#131)

* [WIP] init. midi types definitions

* [WIP] MIDFile/parser refactor

* MIDIParser remove dependency from MIDFile

* MIDFile cleanups

* [WIP] XMIFile refactor

* code review

* [WIP] XMIFile refactor/enhanchement planning

* [WIP] XMIFile revert fix

* [WIP] XMIFile revert fix

* [WIP] need to fix the XMI fixtures

* [WIP] need to fix the XMI fixtures. build fix

* XMIFile fixture fix

* code review

* remove old types MIDI structs

* code review

* XMIDriver

* comment code

* code review

* Sound PCM Driver unification with a Sound audio class. Fixes #114 (#144)

* [WIP] Sound class creation and used for WAV file

* refactor WAVDriver to use Sound

* VOCFile return Sound object

* PCMDriver unification for digital sounds

* remove obsolete voc-example

* remove obsolete VOCDriver

* PCMDriver review

* review PCMDriver

* code rev

* code review

* pcm-exmaple code review

* Enhanching PCMDriver, Sound (#145)

* [WIP] refactor PCMDriver, not working

* [WIP] SoundStream, PCMDriver enhanchement

* code review

* code rev

* code rev

* adding generic isplaying method

* doxygen comments

* code rev

* opl-example review

* update .gitignore

* code rev

* CI (#157)

* ci

* VOCFile fixes

* Alogrithm::decode_xmi_VLQ fixes

* bot

* add codacy badge

* update readme

* sonarcloud

* Create LICENSE (#158)

* update ci

* disabling bot

* disabling bot renaming file

* Create codeql-analysis.yml (#159)

* Create codeql-analysis.yml

* code analysis

* codeQl detached ci task

* add CI linux

* fix src PCSpeaker.cpp namefile

* linux build fix

* fix linux build

* ci linux sdl_audio not available, skip test

* patch ci linux

* patch ci linux

* patch ci linux
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
OPL
Done
Development

Successfully merging this pull request may close these issues.

dosbox opl3 doesn't work with dune0.adl file
1 participant