Notable differences from upstream:
* Did not use the same #include setup for the new byuu apu and instead chose to do things more traditionally, as the latter is also much easier to deal with in Visual Studio than just including .cpp files into other .cpp files...
* MSU1 support not included (I see no need for this in a plugin meant to be used for original SNES music).
* The dynamic rate control on the APU not included (I also see no need for it in this plugin).
* The extra resamplers I added in were removed as the original hermite resampler was folded into a single non-inhertiable resampler.
* Bits of cleanup.
| ... | ... |
@@ -1,19 +1,14 @@ |
| 1 | 1 |
set(HEADERS |
| 2 | 2 |
snes9x/65c816.h |
| 3 | 3 |
snes9x/apu/apu.h |
| 4 |
- snes9x/apu/blargg_common.h |
|
| 5 |
- snes9x/apu/blargg_config.h |
|
| 6 |
- snes9x/apu/blargg_endian.h |
|
| 7 |
- snes9x/apu/bspline_resampler.h |
|
| 8 |
- snes9x/apu/hermite_resampler.h |
|
| 9 |
- snes9x/apu/linear_resampler.h |
|
| 10 |
- snes9x/apu/osculating_resampler.h |
|
| 4 |
+ snes9x/apu/bapu/dsp/blargg_common.h |
|
| 5 |
+ snes9x/apu/bapu/dsp/blargg_config.h |
|
| 6 |
+ snes9x/apu/bapu/dsp/blargg_endian.h |
|
| 7 |
+ snes9x/apu/bapu/dsp/sdsp.hpp |
|
| 8 |
+ snes9x/apu/bapu/dsp/SPC_DSP.h |
|
| 9 |
+ snes9x/apu/bapu/smp/smp.hpp |
|
| 10 |
+ snes9x/apu/bapu/snes/snes.hpp |
|
| 11 | 11 |
snes9x/apu/resampler.h |
| 12 |
- snes9x/apu/ring_buffer.h |
|
| 13 |
- snes9x/apu/sinc_resampler.h |
|
| 14 |
- snes9x/apu/SNES_SPC.h |
|
| 15 |
- snes9x/apu/SPC_CPU.h |
|
| 16 |
- snes9x/apu/SPC_DSP.h |
|
| 17 | 12 |
snes9x/cpuaddr.h |
| 18 | 13 |
snes9x/cpuexec.h |
| 19 | 14 |
snes9x/cpumacro.h |
| ... | ... |
@@ -28,9 +23,14 @@ set(HEADERS |
| 28 | 23 |
XSFConfigDialog_SNSF.h) |
| 29 | 24 |
set(SNES9X_SOURCES |
| 30 | 25 |
snes9x/apu/apu.cpp |
| 31 |
- snes9x/apu/SNES_SPC.cpp |
|
| 32 |
- snes9x/apu/SNES_SPC_misc.cpp |
|
| 33 |
- snes9x/apu/SPC_DSP.cpp |
|
| 26 |
+ snes9x/apu/bapu/dsp/sdsp.cpp |
|
| 27 |
+ snes9x/apu/bapu/dsp/SPC_DSP.cpp |
|
| 28 |
+ snes9x/apu/bapu/smp/algorithms.cpp |
|
| 29 |
+ snes9x/apu/bapu/smp/core.cpp |
|
| 30 |
+ snes9x/apu/bapu/smp/iplrom.cpp |
|
| 31 |
+ snes9x/apu/bapu/smp/memory.cpp |
|
| 32 |
+ snes9x/apu/bapu/smp/smp.cpp |
|
| 33 |
+ snes9x/apu/bapu/smp/timing.cpp |
|
| 34 | 34 |
snes9x/cpu.cpp |
| 35 | 35 |
snes9x/cpuexec.cpp |
| 36 | 36 |
snes9x/cpuops.cpp |
| ... | ... |
@@ -56,6 +56,6 @@ set_target_properties(in_snsf PROPERTIES PREFIX "") |
| 56 | 56 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS})
|
| 57 | 57 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES})
|
| 58 | 58 |
target_compile_options(in_snsf PUBLIC |
| 59 |
- $<$<CXX_COMPILER_ID:MSVC>:/wd4127 /wd4245 /wd6385 /wd6386 /wd26453 /wd26495 /wd26812 /wd26819>) |
|
| 59 |
+ $<$<CXX_COMPILER_ID:MSVC>:/wd4127 /wd4245 /wd4389 /wd6385 /wd6386 /wd26439 /wd26453 /wd26495 /wd26812 /wd26819>) |
|
| 60 | 60 |
target_link_libraries(in_snsf |
| 61 | 61 |
in_xsf_framework) |
* These were mostly copied from the old Makefile.
* The files including wxWidgets need -Wno-old-style-cast done in the code via pragmas because I do not want to disable that warning for the rest of the files. (It might've been overkill for some places where wxWidgets was included, but whatever.)
| ... | ... |
@@ -26,7 +26,7 @@ set(HEADERS |
| 26 | 26 |
snes9x/snes9x.h |
| 27 | 27 |
XSFConfig_SNSF.h |
| 28 | 28 |
XSFConfigDialog_SNSF.h) |
| 29 |
-set(SOURCES |
|
| 29 |
+set(SNES9X_SOURCES |
|
| 30 | 30 |
snes9x/apu/apu.cpp |
| 31 | 31 |
snes9x/apu/SNES_SPC.cpp |
| 32 | 32 |
snes9x/apu/SNES_SPC_misc.cpp |
| ... | ... |
@@ -38,12 +38,21 @@ set(SOURCES |
| 38 | 38 |
snes9x/globals.cpp |
| 39 | 39 |
snes9x/memmap.cpp |
| 40 | 40 |
snes9x/ppu.cpp |
| 41 |
- snes9x/sdd1.cpp |
|
| 41 |
+ snes9x/sdd1.cpp) |
|
| 42 |
+set(SOURCES |
|
| 43 |
+ ${SNES9X_SOURCES}
|
|
| 42 | 44 |
XSFConfig_SNSF.cpp |
| 43 | 45 |
XSFConfigDialog_SNSF.cpp |
| 44 | 46 |
XSFPlayer_SNSF.cpp) |
| 45 | 47 |
|
| 48 |
+set(SNES9X_COMPILE_OPTIONS |
|
| 49 |
+ $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:-Wno-implicit-fallthrough -Wno-shift-negative-value>) |
|
| 50 |
+ |
|
| 51 |
+set_source_files_properties(${SNES9X_SOURCES} PROPERTIES
|
|
| 52 |
+ COMPILE_OPTIONS "${SNES9X_COMPILE_OPTIONS}")
|
|
| 53 |
+ |
|
| 46 | 54 |
add_library(in_snsf SHARED ${HEADERS} ${SOURCES})
|
| 55 |
+set_target_properties(in_snsf PROPERTIES PREFIX "") |
|
| 47 | 56 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS})
|
| 48 | 57 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES})
|
| 49 | 58 |
target_compile_options(in_snsf PUBLIC |
* Removes the configuration dialog boxes that used my DialogBuilder.
* Move default configuration values to be inlined within the headers.
* Moved 2SF's and GSF's XSFConfig classes to their own headers to accommodate the new wxWidgets dialog boxes.
* Make it so NCSF's SoundView dialog can be toggled on or off from the configuration dialog box.
| ... | ... |
@@ -24,7 +24,8 @@ set(HEADERS |
| 24 | 24 |
snes9x/ppu.h |
| 25 | 25 |
snes9x/sdd1.h |
| 26 | 26 |
snes9x/snes9x.h |
| 27 |
- XSFConfig_SNSF.h) |
|
| 27 |
+ XSFConfig_SNSF.h |
|
| 28 |
+ XSFConfigDialog_SNSF.h) |
|
| 28 | 29 |
set(SOURCES |
| 29 | 30 |
snes9x/apu/apu.cpp |
| 30 | 31 |
snes9x/apu/SNES_SPC.cpp |
| ... | ... |
@@ -39,6 +40,7 @@ set(SOURCES |
| 39 | 40 |
snes9x/ppu.cpp |
| 40 | 41 |
snes9x/sdd1.cpp |
| 41 | 42 |
XSFConfig_SNSF.cpp |
| 43 |
+ XSFConfigDialog_SNSF.cpp |
|
| 42 | 44 |
XSFPlayer_SNSF.cpp) |
| 43 | 45 |
|
| 44 | 46 |
add_library(in_snsf SHARED ${HEADERS} ${SOURCES})
|
* Fix the ones in my code where I could use a proper type or valid casts.
* Ignore the designer-time and compiler-time warnings in vendor code or in my code where I am unable to suppress them via casting.
(Most of these were ignored already before introducing the CMake scripts, because they were in vendor code or were annoying to deal with.)
| ... | ... |
@@ -44,5 +44,7 @@ set(SOURCES |
| 44 | 44 |
add_library(in_snsf SHARED ${HEADERS} ${SOURCES})
|
| 45 | 45 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS})
|
| 46 | 46 |
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES})
|
| 47 |
+target_compile_options(in_snsf PUBLIC |
|
| 48 |
+ $<$<CXX_COMPILER_ID:MSVC>:/wd4127 /wd4245 /wd6385 /wd6386 /wd26453 /wd26495 /wd26812 /wd26819>) |
|
| 47 | 49 |
target_link_libraries(in_snsf |
| 48 | 50 |
in_xsf_framework) |
(One downside here, zlib's CMake script renames its zconf.h... which in turn means that the submodule now thinks there are uncommitted changes. :/)
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,48 @@ |
| 1 |
+set(HEADERS |
|
| 2 |
+ snes9x/65c816.h |
|
| 3 |
+ snes9x/apu/apu.h |
|
| 4 |
+ snes9x/apu/blargg_common.h |
|
| 5 |
+ snes9x/apu/blargg_config.h |
|
| 6 |
+ snes9x/apu/blargg_endian.h |
|
| 7 |
+ snes9x/apu/bspline_resampler.h |
|
| 8 |
+ snes9x/apu/hermite_resampler.h |
|
| 9 |
+ snes9x/apu/linear_resampler.h |
|
| 10 |
+ snes9x/apu/osculating_resampler.h |
|
| 11 |
+ snes9x/apu/resampler.h |
|
| 12 |
+ snes9x/apu/ring_buffer.h |
|
| 13 |
+ snes9x/apu/sinc_resampler.h |
|
| 14 |
+ snes9x/apu/SNES_SPC.h |
|
| 15 |
+ snes9x/apu/SPC_CPU.h |
|
| 16 |
+ snes9x/apu/SPC_DSP.h |
|
| 17 |
+ snes9x/cpuaddr.h |
|
| 18 |
+ snes9x/cpuexec.h |
|
| 19 |
+ snes9x/cpumacro.h |
|
| 20 |
+ snes9x/dma.h |
|
| 21 |
+ snes9x/getset.h |
|
| 22 |
+ snes9x/memmap.h |
|
| 23 |
+ snes9x/port.h |
|
| 24 |
+ snes9x/ppu.h |
|
| 25 |
+ snes9x/sdd1.h |
|
| 26 |
+ snes9x/snes9x.h |
|
| 27 |
+ XSFConfig_SNSF.h) |
|
| 28 |
+set(SOURCES |
|
| 29 |
+ snes9x/apu/apu.cpp |
|
| 30 |
+ snes9x/apu/SNES_SPC.cpp |
|
| 31 |
+ snes9x/apu/SNES_SPC_misc.cpp |
|
| 32 |
+ snes9x/apu/SPC_DSP.cpp |
|
| 33 |
+ snes9x/cpu.cpp |
|
| 34 |
+ snes9x/cpuexec.cpp |
|
| 35 |
+ snes9x/cpuops.cpp |
|
| 36 |
+ snes9x/dma.cpp |
|
| 37 |
+ snes9x/globals.cpp |
|
| 38 |
+ snes9x/memmap.cpp |
|
| 39 |
+ snes9x/ppu.cpp |
|
| 40 |
+ snes9x/sdd1.cpp |
|
| 41 |
+ XSFConfig_SNSF.cpp |
|
| 42 |
+ XSFPlayer_SNSF.cpp) |
|
| 43 |
+ |
|
| 44 |
+add_library(in_snsf SHARED ${HEADERS} ${SOURCES})
|
|
| 45 |
+source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS})
|
|
| 46 |
+source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES})
|
|
| 47 |
+target_link_libraries(in_snsf |
|
| 48 |
+ in_xsf_framework) |