Commit Graph

16 Commits

Author SHA1 Message Date
Aaron Culliney
8dd82642d3 Refactor : rename audio subsystem initialization and shutdown functions 2015-06-14 15:05:44 -07:00
Aaron Culliney
59e95a19b1 Refactor : add annotations to a few more functions 2015-06-14 14:56:53 -07:00
Aaron Culliney
33a13abbc2 Refactor : Better segregation and modularization of the audio backend functions 2015-06-14 14:46:15 -07:00
Aaron Culliney
ec4ff3de10 Refactor : shuffle moar macros into mockingboard.c 2015-06-14 14:07:33 -07:00
Aaron Culliney
af1c6bf159 Refactor : audio system functions return nonzero on failure 2015-06-14 14:07:33 -07:00
Aaron Culliney
c8834a91e3 Refactor: Rename and remove some macros and variables 2015-06-14 14:07:33 -07:00
Aaron Culliney
27a3fea005 Refactor : kill ds-shim.h 2015-06-14 14:07:33 -07:00
Aaron Culliney
93a578d40a Refactor : remove and rename certain globals 2015-06-14 14:07:33 -07:00
Aaron Culliney
4d0ca2b6e3 Refactor : move another function to mockingboard module 2015-06-14 14:07:33 -07:00
Aaron Culliney
7263e161e4 Refactor : LONG -> long 2015-06-14 14:07:32 -07:00
Aaron Culliney
109dfa855b Refactor : DWORD -> unsigned long 2015-06-14 14:07:32 -07:00
Aaron Culliney
7051e6d906 Refactor : SHORT -> int16_t 2015-06-14 14:07:32 -07:00
Aaron Culliney
87e7ec24ff Refactor HRESULT -> int 2015-06-14 14:07:32 -07:00
Aaron Culliney
f234de116f Refactor speaker system to prevent audio glitches and to support CPU automatic speed switching
Squashed commit of the following:

    REFACTOR : fix comments, logging, and rename some variables
    REFACTOR : fix up some commentary, clean deadc0de
    REFACTOR : mostly fix all the audio glitches
        - amplitudes of samples are gradually shifted to zero when speaker has fallen silent
        - simplifies speaker state machine
        - fullspeed mode only enqueues quiet samples
    REFACTOR : fix up a number of other functions and comments
    REFACTOR : clean up code to submit normal speed wave buffer to OpenAL
    Move some initializations to the cpu_thread()
    REFACTOR : properly reset the speaker cycles access counter so we don't underflow and assert
    REFACTOR : should never get a split buffer from our soundcore implementation
    Fix warning from gcc ... static array size needs to be computed from integer values
    REFACTOR : gcc (but not clang) complains about these, so just make them preprocessor defines
    REFACTOR : use unsigned long long because we don't actually care that this counter is 64bit
    REFACTOR : remainder_buffer and miscellaneous tweaks
        - Adds implementation commentary to document remainder_buffer purpose
        - Also adds sample average for square wave boundary in case where remainder_buffer not used (whole-sample boundary)
        - Variable renaming and code shuffling
    REFACTOR : do not dynamically alloc remainder buffer
        - Never attribute to cache-coherancy bugs what is a simple thread race =P
    REFACTOR : comments and whitespace
    REFACTOR : rename public speaker API functions
    REFACTOR : clean up public speaker API
    REFACTOR : tabs to spaces
    REFACTOR : moar deadc0de clean up and renaming
    REFACTOR : remove deadc0de paths from soundcore
    REFACTOR : fully excise soundtype stuff now that we only support soundcard output
    Move a file static to function scope
    REFACTOR : rename more variables and remove deadc0de
    REFACTOR : samples_buffer naming and change to explict int16_t
    REFACTOR : removed deadc0de and shuffled code locations
    REFACTOR : remainder buffer naming and clarify type
    REFACTOR : move joystick timing to VM module and remove header visibility
    REFACTOR : clarify speaker variable name
    REFACTOR : clarify cycle counting codepaths
    REFACTOR : VBL/timing interfaces
        - eliminates passing around a common global
    REFACTOR : names and comments
    HACK around volume issue
    REFACTOR : rename speaker feedback variable
    REFACTOR : rename global total cycle count
    REFACTOR : rename a constant
    Fix test builds
    REFACTOR: rename to is_fullspeed
    REFACTOR : local variable naming changes
    REFACTOR : migrate cycle timing variables to correct location and remove header visibility
    Allow fullspeed codepath to update speaker
    REFACTOR : remove deadc0de paths in prep for cleanup
    REFACTOR : speaker now manages its own VM entry point
2015-01-31 13:57:10 -08:00
Aaron Culliney
8621b1ac53 Refactor: macro should be capitalized 2014-09-06 19:47:59 -07:00
asc
3abd2e87aa Refactor to use GNU build tools
* Added configure.ac and non-recursive Makefile.am
    * Modularized source into subdirectories
    * Simplified header inclusion
2014-01-22 20:51:50 -08:00