From 2f34377d0352ed5aae777f813bbbadcffacbb579 Mon Sep 17 00:00:00 2001 From: waker Date: Wed, 19 Aug 2009 22:45:01 +0200 Subject: passed make distcheck; 0.1.0 release --- .../libsidplay/src/xsid/Makefile.am | 7 - .../libsidplay/src/xsid/Makefile.in | 424 --------------- .../libsidplay/src/xsid/xsid.cpp | 598 --------------------- .../sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.h | 288 ---------- 4 files changed, 1317 deletions(-) delete mode 100644 libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.am delete mode 100644 libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.in delete mode 100644 libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.cpp delete mode 100644 libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.h (limited to 'libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid') diff --git a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.am b/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.am deleted file mode 100644 index 4c7caf6a..00000000 --- a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.am +++ /dev/null @@ -1,7 +0,0 @@ - -noinst_LTLIBRARIES = libxsid.la - -libxsid_la_SOURCES = xsid.cpp xsid.h - -# Remove bad default includes -DEFAULT_INCLUDES= diff --git a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.in b/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.in deleted file mode 100644 index aafad807..00000000 --- a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/Makefile.in +++ /dev/null @@ -1,424 +0,0 @@ -# Makefile.in generated by automake 1.7.1 from Makefile.am. -# @configure_input@ - -# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. - -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -host_triplet = @host@ -ACLOCAL = @ACLOCAL@ -ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -ECHO = @ECHO@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIBVERSION = @LIBVERSION@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SID_HAVE_BOOL = @SID_HAVE_BOOL@ -SID_HAVE_STDBOOL_H = @SID_HAVE_STDBOOL_H@ -SID_SIZEOF_CHAR = @SID_SIZEOF_CHAR@ -SID_SIZEOF_INT = @SID_SIZEOF_INT@ -SID_SIZEOF_LONG_INT = @SID_SIZEOF_LONG_INT@ -SID_SIZEOF_SHORT_INT = @SID_SIZEOF_SHORT_INT@ -SID_WORDS_ENDIANESS = @SID_WORDS_ENDIANESS@ -STRIP = @STRIP@ -VERSION = @VERSION@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ -am__include = @am__include@ -am__quote = @am__quote@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builders = @builders@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ - -noinst_LTLIBRARIES = libxsid.la - -libxsid_la_SOURCES = xsid.cpp xsid.h - -# Remove bad default includes -DEFAULT_INCLUDES = -subdir = src/xsid -mkinstalldirs = $(SHELL) $(top_srcdir)/unix/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/unix/config.h -CONFIG_CLEAN_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) - -libxsid_la_LDFLAGS = -libxsid_la_LIBADD = -am_libxsid_la_OBJECTS = xsid.lo -libxsid_la_OBJECTS = $(am_libxsid_la_OBJECTS) -depcomp = $(SHELL) $(top_srcdir)/unix/depcomp -am__depfiles_maybe = depfiles -@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/xsid.Plo -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \ - $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -DIST_SOURCES = $(libxsid_la_SOURCES) -DIST_COMMON = Makefile.am Makefile.in -SOURCES = $(libxsid_la_SOURCES) - -all: all-am - -.SUFFIXES: -.SUFFIXES: .cpp .lo .o .obj -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4) - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/xsid/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" = "$$p" && dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libxsid.la: $(libxsid_la_OBJECTS) $(libxsid_la_DEPENDENCIES) - $(CXXLINK) $(libxsid_la_LDFLAGS) $(libxsid_la_OBJECTS) $(libxsid_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) core *.core - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsid.Plo@am__quote@ - -distclean-depend: - -rm -rf ./$(DEPDIR) - -.cpp.o: -@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ -@am__fastdepCXX_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \ -@am__fastdepCXX_TRUE@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \ -@am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ -@am__fastdepCXX_TRUE@ fi -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$< - -.cpp.obj: -@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ -@am__fastdepCXX_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`; \ -@am__fastdepCXX_TRUE@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \ -@am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ -@am__fastdepCXX_TRUE@ fi -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'` - -.cpp.lo: -@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ -@am__fastdepCXX_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \ -@am__fastdepCXX_TRUE@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \ -@am__fastdepCXX_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ -@am__fastdepCXX_TRUE@ fi -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$< - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: - -ETAGS = etags -ETAGSFLAGS = - -CTAGS = ctags -CTAGSFLAGS = - -tags: TAGS - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$tags$$unique" \ - || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique - -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) - -top_distdir = ../.. -distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkinstalldirs) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(LTLIBRARIES) - -installdirs: - -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-am - -distclean-am: clean-am distclean-compile distclean-depend \ - distclean-generic distclean-libtool distclean-tags - -dvi: dvi-am - -dvi-am: - -info: info-am - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES ctags distclean \ - distclean-compile distclean-depend distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am info \ - info-am install install-am install-data install-data-am \ - install-exec install-exec-am install-info install-info-am \ - install-man install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.cpp b/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.cpp deleted file mode 100644 index 29b5c909..00000000 --- a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.cpp +++ /dev/null @@ -1,598 +0,0 @@ -/*************************************************************************** - xsid.cpp - Support for Playsids Extended - Registers - ------------------- - begin : Tue Jun 20 2000 - copyright : (C) 2000 by Simon White - email : s_a_white@email.com - ***************************************************************************/ - -/*************************************************************************** - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - ***************************************************************************/ -/*************************************************************************** - * $Log: xsid.cpp,v $ - * Revision 1.20 2002/07/17 21:19:54 s_a_white - * Minor non sid sample mode fixes. - * - * Revision 1.19 2002/02/21 20:26:13 s_a_white - * Nolonger default to Galway Mode when Noise samples init incorrectly. Fixes - * VARIOUS/S-Z/Zyron/Bouncy_Balls.sid (HVSC). - * - * Revision 1.18 2002/02/17 16:34:39 s_a_white - * New reset interface - * - * Revision 1.17 2002/01/28 19:31:42 s_a_white - * PSID sample improvements. - * - * Revision 1.16 2001/10/02 18:03:03 s_a_white - * Support updated sidbuilder class interface. - * - * Revision 1.15 2001/09/17 18:36:41 s_a_white - * Changed object construction to prevent multiple resets. - * - * Revision 1.14 2001/07/14 12:59:53 s_a_white - * XSID effeciency increased. Now uses new component classes and event - * generation. - * - * Revision 1.13 2001/03/25 19:51:23 s_a_white - * Performance update. - * - * Revision 1.12 2001/03/19 23:40:19 s_a_white - * Removed repeat definition of state for debug mode. - * - * Revision 1.11 2001/03/09 22:27:13 s_a_white - * Speed optimisation update. - * - * Revision 1.10 2001/03/01 23:45:58 s_a_white - * Combined both through sid and non-through sid modes. Can be selected - * at runtime now. - * - * Revision 1.9 2001/02/21 21:46:34 s_a_white - * 0x1d = 0 now fixed. Limit checking on sid volume. This helps us determine - * even better what the sample offset should be (fixes Skate and Die). - * - * Revision 1.8 2001/02/07 21:02:30 s_a_white - * Supported for delaying samples for frame simulation. New alogarithm to - * better guess original tunes volume when playing samples. - * - * Revision 1.7 2000/12/12 22:51:01 s_a_white - * Bug Fix #122033. - * - ***************************************************************************/ - -#include -#include -#include "sidendian.h" -#include "xsid.h" - - -// Convert from 4 bit resolution to 8 bits -/* Rev 2.0.5 (saw) - Removed for a more non-linear equivalent - which better models the SIDS master volume register -const int8_t XSID::sampleConvertTable[16] = -{ - '\x80', '\x91', '\xa2', '\xb3', '\xc4', '\xd5', '\xe6', '\xf7', - '\x08', '\x19', '\x2a', '\x3b', '\x4c', '\x5d', '\x6e', '\x7f' -}; -*/ -const int8_t XSID::sampleConvertTable[16] = -{ - '\x80', '\x94', '\xa9', '\xbc', '\xce', '\xe1', '\xf2', '\x03', - '\x1b', '\x2a', '\x3b', '\x49', '\x58', '\x66', '\x73', '\x7f' -}; - -const char *XSID::credit = -{ - "xSID (Extended SID) Engine:\0" - "\tCopyright (C) 2000 Simon White \0" -}; - - -channel::channel (const char * const name, EventContext *context, XSID *xsid) -:m_name(name), - m_context(*context), - m_xsid(*xsid), - sampleEvent(this), - galwayEvent(this) -{ - memset (reg, 0, sizeof (reg)); - active = true; - reset (); -} - -void channel::reset () -{ - galVolume = 0; // This is left to free run until reset - mode = FM_NONE; - free (); -} - -void channel::free () -{ - active = false; - cycleCount = 0; - sampleLimit = 0; - // Set XSID to stopped state - reg[convertAddr (0x1d)] = 0; - silence (); -} - -inline int8_t channel::output () -{ - outputs++; - return sample; -} - -void channel::checkForInit () -{ // Check to see mode of operation - // See xsid documentation - switch (reg[convertAddr (0x1d)]) - { - case 0xFF: - case 0xFE: - case 0xFC: - sampleInit (); - break; - case 0xFD: - if (!active) - return; - free (); // Stop - // Calculate the sample offset - m_xsid.sampleOffsetCalc (); - break; - case 0x00: - break; - default: - galwayInit (); - } -} - -void channel::sampleInit () -{ - uint8_t *r; - if (active && (mode == FM_GALWAY)) - return; - -#ifdef XSID_DEBUG - printf ("XSID [%s]: Sample Init\n", m_name); - if (active && (mode == FM_HUELS)) - printf ("XSID [%s]: Stopping Playing Sample\n", m_name); -#endif - - // Check all important parameters are legal - r = ®[convertAddr (0x1d)]; - volShift = (uint_least8_t) (0 - (int8_t) r[0]) >> 1; - r[0] = 0; - // Use endian_16 as can't g - r = ®[convertAddr (0x1e)]; - address = endian_16 (r[1], r[0]); - r = ®[convertAddr (0x3d)]; - samEndAddr = endian_16 (r[1], r[0]); - if (samEndAddr <= address) return; - samScale = reg[convertAddr (0x5f)]; - r = ®[convertAddr (0x5d)]; - samPeriod = endian_16 (r[1], r[0]) >> samScale; - if (!samPeriod) - { // Stop this channel - reg[convertAddr (0x1d)] = 0xfd; - checkForInit (); - return; - } - - // Load the other parameters - samNibble = 0; - samRepeat = reg[convertAddr (0x3f)]; - samOrder = reg[convertAddr (0x7d)]; - r = ®[convertAddr (0x7e)]; - samRepeatAddr = endian_16 (r[1], r[0]); - cycleCount = samPeriod; - - // Support Galway Samples, but that - // mode it setup only when as Galway - // Noise sequence begins - if (mode == FM_NONE) - mode = FM_HUELS; - - active = true; - cycles = 0; - outputs = 0; - - sampleLimit = 8 >> volShift; - sample = sampleCalculate (); - - // Calculate the sample offset - m_xsid.sampleOffsetCalc (); - -#ifdef XSID_DEBUG -# if XSID_DEBUG > 1 - printf ("XSID [%s]: Sample Start Address: 0x%04x\n", m_name, address); - printf ("XSID [%s]: Sample End Address: 0x%04x\n", m_name, samEndAddr); - printf ("XSID [%s]: Sample Repeat Address: 0x%04x\n", m_name, samRepeatAddr); - printf ("XSID [%s]: Sample Period: %u\n", m_name, samPeriod); - printf ("XSID [%s]: Sample Repeat: %u\n", m_name, samRepeat); - printf ("XSID [%s]: Sample Order: %u\n", m_name, samOrder); -# endif - printf ("XSID [%s]: Sample Start\n", m_name); -#endif // XSID_DEBUG - - // Schedule a sample update - m_context.schedule (&m_xsid, 0); - m_context.schedule (&sampleEvent, cycleCount); -} - -void channel::sampleClock () -{ - cycleCount = samPeriod; - if (address >= samEndAddr) - { - if (samRepeat != 0xFF) - { - if (samRepeat) - samRepeat--; - else - samRepeatAddr = address; - } - - address = samRepeatAddr; - if (address >= samEndAddr) - { // The sequence has completed - uint8_t &status = reg[convertAddr (0x1d)]; - if (!status) - status = 0xfd; - if (status != 0xfd) - active = false; -#ifdef XSID_DEBUG - printf ("XSID [%s]: Sample Stop (%lu Cycles, %lu Outputs)\n", - m_name, cycles, outputs); - if (status != 0xfd) - printf ("XSID [%s]: Starting Delayed Sequence\n", m_name); -#endif - checkForInit (); - return; - } - } - - // We have reached the required sample - // So now we need to extract the right nibble - sample = sampleCalculate (); - cycles += cycleCount; - // Schedule a sample update - m_context.schedule (&sampleEvent, cycleCount); - m_context.schedule (&m_xsid, 0); -} - -int8_t channel::sampleCalculate () -{ - uint_least8_t tempSample = m_xsid.readMemByte (address); - if (samOrder == SO_LOWHIGH) - { - if (samScale == 0) - { - if (samNibble != 0) - tempSample >>= 4; - } - // AND 15 further below. - } - else // if (samOrder == SO_HIGHLOW) - { - if (samScale == 0) - { - if (samNibble == 0) - tempSample >>= 4; - } - else // if (samScale != 0) - tempSample >>= 4; - // AND 15 further below. - } - - // Move to next address - address += samNibble; - samNibble ^= 1; - return (int8_t) ((tempSample & 0x0f) - 0x08) >> volShift; -} - -void channel::galwayInit() -{ - uint8_t *r; - if (active) - return; - -#ifdef XSID_DEBUG - printf ("XSID [%s]: Galway Init\n", m_name); -#endif - - // Check all important parameters are legal - r = ®[convertAddr (0x1d)]; - galTones = r[0]; - r[0] = 0; - galInitLength = reg[convertAddr (0x3d)]; - if (!galInitLength) return; - galLoopWait = reg[convertAddr (0x3f)]; - if (!galLoopWait) return; - galNullWait = reg[convertAddr (0x5d)]; - if (!galNullWait) return; - - // Load the other parameters - r = ®[convertAddr(0x1e)]; - address = endian_16 (r[1], r[0]); - volShift = reg[convertAddr (0x3e)] & 0x0f; - mode = FM_GALWAY; - active = true; - cycles = 0; - outputs = 0; - - sampleLimit = 8; - sample = (int8_t) galVolume - 8; - galwayTonePeriod (); - - // Calculate the sample offset - m_xsid.sampleOffsetCalc (); - -#ifdef XSID_DEBUG - printf ("XSID [%s]: Galway Start\n", m_name); -#endif - - // Schedule a sample update - m_context.schedule (&m_xsid, 0); - m_context.schedule (&galwayEvent, cycleCount); -} - -void channel::galwayClock () -{ - if (--galLength) - cycleCount = samPeriod; - else if (galTones == 0xff) - { // The sequence has completed - uint8_t &status = reg[convertAddr (0x1d)]; - if (!status) - status = 0xfd; - if (status != 0xfd) - active = false; -#ifdef XSID_DEBUG - printf ("XSID [%s]: Galway Stop (%lu Cycles, %lu Outputs)\n", - m_name, cycles, outputs); - if (status != 0xfd) - printf ("XSID [%s]: Starting Delayed Sequence\n", m_name); -#endif - checkForInit (); - return; - } - else - galwayTonePeriod (); - - // See Galway Example... - galVolume += volShift; - galVolume &= 0x0f; - sample = (int8_t) galVolume - 8; - cycles += cycleCount; - m_context.schedule (&galwayEvent, cycleCount); - m_context.schedule (&m_xsid, 0); -} - -void channel::galwayTonePeriod () -{ // Calculate the number of cycles over which sample should last - galLength = galInitLength; - samPeriod = m_xsid.readMemByte (address + galTones); - samPeriod *= galLoopWait; - samPeriod += galNullWait; - cycleCount = samPeriod; -#if XSID_DEBUG > 2 - printf ("XSID [%s]: Galway Settings\n", m_name); - printf ("XSID [%s]: Length %u, LoopWait %u, NullWait %u\n", - m_name, galLength, galLoopWait, galNullWait); - printf ("XSID [%s]: Tones %u, Data %u\n", - m_name, galTones, m_xsid.readMemByte (address + galTones)); -#endif - galTones--; -} - -void channel::silence () -{ - sample = 0; - m_context.cancel (&sampleEvent); - m_context.cancel (&galwayEvent); - m_context.schedule (&m_xsid, 0); -} - - -XSID::XSID (EventContext *context) -:sidemu(NULL), - Event("xSID"), - ch4("CH4", context, this), - ch5("CH5", context, this), - muted(false), - suppressed(false), - wasRunning(false) -{ - sidSamples (true); -} - -void XSID::reset (uint8_t) -{ - ch4.reset (); - ch5.reset (); - suppressed = false; - wasRunning = false; -} - -void XSID::event (void) -{ - if (ch4 || ch5) - { - setSidData0x18 (); - wasRunning = true; - } - else if (wasRunning) - { - recallSidData0x18 (); - wasRunning = false; - } -} - -// Use Suppress to delay the samples and start them later -// Effectivly allows running samples in a frame based mode. -void XSID::suppress (bool enable) -{ - // @FIXME@: Mute Temporary Hack - suppressed = enable; - if (!suppressed) - { // Get the channels running -#if XSID_DEBUG - printf ("XSID: Un-suppressing\n"); -#endif - ch4.checkForInit (); - ch5.checkForInit (); - } -#if XSID_DEBUG - else - printf ("XSID: Suppressing\n"); -#endif -} - -// By muting samples they will start and play the at the -// appropriate time but no sound is produced. Un-muting -// will cause sound output from the current play position. -void XSID::mute (bool enable) -{ - if (!muted && enable && wasRunning) - recallSidData0x18 (); - muted = enable; -} - -void XSID::write (uint_least16_t addr, uint8_t data) -{ - channel *ch; - uint8_t tempAddr; - - // Make sure address is legal - if ((addr & 0xfe8c) ^ 0x000c) - return; - - ch = &ch4; - if (addr & 0x0100) - ch = &ch5; - - tempAddr = (uint8_t) addr; - ch->write (tempAddr, data); -#if XSID_DEBUG > 1 - printf ("XSID: Addr 0x%02x, Data 0x%02x\n", tempAddr, data); -#endif - - if (tempAddr == 0x1d) - { - if (suppressed) - { -#if XSID_DEBUG - printf ("XSID: Initialise Suppressed\n"); -#endif - return; - } - ch->checkForInit (); - } -} - -int8_t XSID::sampleOutput (void) -{ - int8_t sample; - sample = ch4.output (); - sample += ch5.output (); - // Automatically compensated for by C64 code - //return (sample >> 1); - return sample; -} - -void XSID::setSidData0x18 (void) -{ - if (!_sidSamples || muted) - return; - - uint8_t data = (sidData0x18 & 0xf0); - data |= ((sampleOffset + sampleOutput ()) & 0x0f); - -#ifdef XSID_DEBUG - if ((sampleOffset + sampleOutput ()) > 0x0f) - { - printf ("XSID: Sample Wrapped [offset %u, sample %d]\n", - sampleOffset, sampleOutput ()); - } -# if XSID_DEBUG > 1 - printf ("XSID: Writing Sample to SID Volume [0x%02x]\n", data); -# endif -#endif // XSID_DEBUG - - writeMemByte (data); -} - -void XSID::recallSidData0x18 (void) -{ // Rev 2.0.5 (saw) - Changed to recall volume differently depending on mode - // Normally after samples volume should be restored to half volume, - // however, Galway Tunes sound horrible and seem to require setting back to - // the original volume. Setting back to the original volume for normal - // samples can have nasty pulsing effects - if (ch4.isGalway ()) - { - if (_sidSamples && !muted) - writeMemByte (sidData0x18); - } - else - setSidData0x18 (); -} - -void XSID::sampleOffsetCalc (void) -{ - // Try to determine a sensible offset between voice - // and sample volumes. - uint_least8_t lower = ch4.limit () + ch5.limit (); - uint_least8_t upper; - - // Both channels seem to be off. Keep current offset! - if (!lower) - return; - - sampleOffset = sidData0x18 & 0x0f; - - // Is possible to compensate for both channels - // set to 4 bits here, but should never happen. - if (lower > 8) - lower >>= 1; - upper = 0x0f - lower + 1; - - // Check against limits - if (sampleOffset < lower) - sampleOffset = lower; - else if (sampleOffset > upper) - sampleOffset = upper; - -#ifdef XSID_DEBUG - printf ("XSID: Sample Offset %d based on channel(s) ", sampleOffset); - if (ch4) - printf ("4 "); - if (ch5) - printf ("5"); - printf ("\n"); -#endif // XSID_DEBUG -} - -bool XSID::storeSidData0x18 (uint8_t data) -{ - sidData0x18 = data; - if (ch4 || ch5) - { // Force volume to be changed at next clock - sampleOffsetCalc (); - if (_sidSamples) - { -#if XSID_DEBUG - printf ("XSID: SID Volume Changed Externally (Corrected).\n"); -#endif - return true; - } - } - writeMemByte (sidData0x18); - return false; -} diff --git a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.h b/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.h deleted file mode 100644 index 98171d73..00000000 --- a/libsidplay2/sidplay-libs-2.1.0/libsidplay/src/xsid/xsid.h +++ /dev/null @@ -1,288 +0,0 @@ -/*************************************************************************** - xsid.h - Support for Playsids Extended - Registers - ------------------- - begin : Tue Jun 20 2000 - copyright : (C) 2000 by Simon White - email : s_a_white@email.com - ***************************************************************************/ - -/*************************************************************************** - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - ***************************************************************************/ -/*************************************************************************** - * $Log: xsid.h,v $ - * Revision 1.21 2002/09/23 19:42:52 s_a_white - * Fixed intel compiler warnings. - * - * Revision 1.20 2002/07/17 19:18:17 s_a_white - * Changed bad #if to #ifdef - * - * Revision 1.19 2002/02/21 20:26:13 s_a_white - * Nolonger default to Galway Mode when Noise samples init incorrectly. Fixes - * VARIOUS/S-Z/Zyron/Bouncy_Balls.sid (HVSC). - * - * Revision 1.18 2002/02/17 16:34:39 s_a_white - * New reset interface - * - * Revision 1.17 2001/11/16 19:22:04 s_a_white - * Removed compiler warning for unused parameter. - * - * Revision 1.16 2001/10/18 22:36:16 s_a_white - * GCC3 fixes. - * - * Revision 1.15 2001/07/14 16:48:35 s_a_white - * Sync with sidbuilder class project. - * - * Revision 1.14 2001/07/14 12:59:39 s_a_white - * XSID effeciency increased. Now uses new component classes and event - * generation. - * - * Revision 1.13 2001/04/20 22:21:06 s_a_white - * inlined updateSidData0x18. - * - * Revision 1.12 2001/03/25 19:51:23 s_a_white - * Performance update. - * - * Revision 1.11 2001/03/19 23:40:46 s_a_white - * Better support for global debug. - * - * Revision 1.10 2001/03/09 22:27:13 s_a_white - * Speed optimisation update. - * - * Revision 1.9 2001/03/01 23:45:58 s_a_white - * Combined both through sid and non-through sid modes. Can be selected - * at runtime now. - * - * Revision 1.8 2001/02/21 21:46:34 s_a_white - * 0x1d = 0 now fixed. Limit checking on sid volume. This helps us determine - * even better what the sample offset should be (fixes Skate and Die). - * - * Revision 1.7 2001/02/07 21:02:30 s_a_white - * Supported for delaying samples for frame simulation. New alogarithm to - * better guess original tunes volume when playing samples. - * - * Revision 1.6 2000/12/12 22:51:01 s_a_white - * Bug Fix #122033. - * - ***************************************************************************/ - -/* -Effectively there is only 1 channel, which can either perform Galway Noise -or Sampling. However, to achieve all the effects on a C64, 2 sampling -channels are required. No divide by 2 is required and is compensated for -automatically in the C64 machine code. - -Confirmed by Warren Pilkington using the tune Turbo Outrun: -A new sample must interrupt an existing sample running on the same channel. - -Confirmed by Michael Schwendt and Antonia Vera using the tune Game Over: -A Galway Sample or Noise sequence cannot interrupt any other. However -the last of these new requested sequences will be played after the current -sequence ends. - -Lastly playing samples through the SIDs volume is not as clean as playing -them on their own channel. Playing through the SID will effect the volume -of the other channels and this will be most noticable at low frequencies. -These effects are however present in the original SID music. - -Some SIDs put values directly into the volume register. Others play samples -with respect to the current volume. We can't for definate know which the author -has chosen originally. We must just make a guess based on what the volume -is initially at the start of a sample sequence and from the details xSID has been -programmed with. -*/ - -#ifndef _xsid_h_ -#define _xsid_h_ - -#include "config.h" -#include "sidbuilder.h" -#include "event.h" - -// XSID configuration settings -//#define XSID_DEBUG 1 - -// Support global debug option -#ifdef DEBUG -# ifndef XSID_DEBUG -# define XSID_DEBUG DEBUG -# endif -#endif - -#ifdef XSID_DEBUG -# include -#endif - -class XSID; -class channel -{ -private: - // General - const char * const m_name; - EventContext &m_context; - XSID &m_xsid; - friend class XSID; - - class SampleEvent: public Event - { - private: - channel &m_ch; - void event (void) { m_ch.sampleClock (); } - - public: - SampleEvent (channel *ch) - :Event("xSID Sample"), - m_ch(*ch) {} - } sampleEvent; - friend class SampleEvent; - - class GalwayEvent: public Event - { - private: - channel &m_ch; - void event (void) { m_ch.galwayClock (); } - - public: - GalwayEvent (channel *ch) - :Event("xSID Galway"), - m_ch(*ch) {} - } galwayEvent; - friend class GalwayEvent; - - uint8_t reg[0x10]; - enum {FM_NONE = 0, FM_HUELS, FM_GALWAY} mode; - bool active; - uint_least16_t address; - uint_least16_t cycleCount; // Counts to zero and triggers! - uint_least8_t volShift; - uint_least8_t sampleLimit; - int8_t sample; - - // Sample Section - uint_least8_t samRepeat; - uint_least8_t samScale; - enum {SO_LOWHIGH = 0, SO_HIGHLOW = 1}; - uint_least8_t samOrder; - uint_least8_t samNibble; - uint_least16_t samEndAddr; - uint_least16_t samRepeatAddr; - uint_least16_t samPeriod; - - // Galway Section - uint_least8_t galTones; - uint_least8_t galInitLength; - uint_least8_t galLength; - uint_least8_t galVolume; - uint_least8_t galLoopWait; - uint_least8_t galNullWait; - - // For Debugging - event_clock_t cycles; - event_clock_t outputs; - -private: - channel (const char * const name, EventContext *context, XSID *xsid); - void free (void); - void silence (void); - void sampleInit (void); - void sampleClock (void); - void galwayInit (void); - void galwayClock (void); - - // Compress address to not leave so many spaces - uint_least8_t convertAddr(uint_least8_t addr) - { return (((addr) & 0x3) | ((addr) >> 3) & 0x0c); } - - void reset (void); - uint8_t read (uint_least8_t addr) - { return reg[convertAddr (addr)]; } - void write (uint_least8_t addr, uint8_t data) - { reg[convertAddr (addr)] = data; } - int8_t output (void); - bool isGalway (void) - { return mode == FM_GALWAY; } - - uint_least8_t limit (void) - { return sampleLimit; } - - inline void checkForInit (void); - inline int8_t sampleCalculate (void); - inline void galwayTonePeriod (void); - - // Used to indicate if channel is running - operator bool() const { return (active); } -}; - - -class XSID: public sidemu, private Event -{ - friend class channel; - -private: - channel ch4; - channel ch5; - bool muted; - bool suppressed; - static const char *credit; - - uint8_t sidData0x18; - bool _sidSamples; - int8_t sampleOffset; - static const int8_t sampleConvertTable[16]; - bool wasRunning; - -private: - void event (void); - void checkForInit (channel *ch); - inline void setSidData0x18 (void); - inline void recallSidData0x18 (void); - int8_t sampleOutput (void); - void sampleOffsetCalc (void); - virtual uint8_t readMemByte (uint_least16_t addr) = 0; - virtual void writeMemByte (uint8_t data) = 0; - -public: - XSID (EventContext *context); - - // Standard calls - void reset () { sidemu::reset (); } - void reset (uint8_t); - uint8_t read (uint_least8_t) { return 0; } - void write (uint_least8_t, uint8_t) { ; } - const char *credits (void) {return credit;} - - // Specialist calls - uint8_t read (uint_least16_t) { return 0; } - void write (uint_least16_t addr, uint8_t data); - int_least32_t output (uint_least8_t bits = 16); - void mute (bool enable); - bool isMuted (void) { return muted; } - void suppress (bool enable); - - void sidSamples (bool enable) - { _sidSamples = enable; } - // Return whether we care it was changed. - bool storeSidData0x18 (uint8_t data); -}; - - -/*************************************************************************** - * Inline functions - **************************************************************************/ - -inline int_least32_t XSID::output (uint_least8_t bits) -{ - int_least32_t sample; - if (_sidSamples || muted) - return 0; - sample = sampleConvertTable[sampleOutput () + 8]; - return sample << (bits - 8); -} - -#endif // _xsid_h_ -- cgit v1.2.3