summaryrefslogtreecommitdiff
path: root/lib/rbcodec/codecs/cRSID
diff options
context:
space:
mode:
authorWolfram Sang <wsa@the-dreams.de>2023-01-19 22:53:26 +0100
committerSolomon Peachy <pizza@shaftnet.org>2023-02-07 09:19:32 -0500
commit70ce734ecebaca83ef9c42447666837d3fbc028e (patch)
tree80055521c945fc21c2d3b079b3380a2e776e2466 /lib/rbcodec/codecs/cRSID
parent15c0f0576e73d714a09bcc9c09e93e80e330237d (diff)
downloadrockbox-70ce734ecebaca83ef9c42447666837d3fbc028e.tar.gz
rockbox-70ce734ecebaca83ef9c42447666837d3fbc028e.zip
codec: sid: use cRSID as a library for playing SID files
Change-Id: Iee70933e47ff8df8f26c9a63112de4da4a8e6c17
Diffstat (limited to 'lib/rbcodec/codecs/cRSID')
-rw-r--r--lib/rbcodec/codecs/cRSID/README.rockbox19
-rw-r--r--lib/rbcodec/codecs/cRSID/SOURCES1
-rw-r--r--lib/rbcodec/codecs/cRSID/cRSID.make16
3 files changed, 36 insertions, 0 deletions
diff --git a/lib/rbcodec/codecs/cRSID/README.rockbox b/lib/rbcodec/codecs/cRSID/README.rockbox
new file mode 100644
index 0000000000..b95151aa09
--- /dev/null
+++ b/lib/rbcodec/codecs/cRSID/README.rockbox
@@ -0,0 +1,19 @@
1Some notes about cRSID usage in Rockbox
2by Ninja (Wolfram Sang) in 2023
3
4The cRSID codebase is from v1.0. The only change made was a separation of the
5cRSID header into a public and private one, so it could be compiled as a
6library. You can find it as a separate commit in the git repository. This
7likely needs to be updated whenever a newer version of cRSID shall be used.
8
9Currently, newer versions of cRSID are available but they have been discarded.
10v1.1 mainly adds a high quality playback mode using 7x oversampling. This is
11too much for a Sansa Clip. Because the old playback mode still exists, it might
12be possible to add a runtime option to let the user choose. As a first step
13however, it was decided to give the user a working codec without having to deal
14with options. v1.2 mainly adds a SDL-based GUI player, no bigger changes in SID
15emulation. Staying with v1.0 also keeps the codec size significantly lower
16(~50KB for v1.0 vs ~90KB for v1.2 on the Sansa Clip).
17
18cRSID Releases can be found here:
19https://csdb.dk/search/?seinsel=releases&search=crsid
diff --git a/lib/rbcodec/codecs/cRSID/SOURCES b/lib/rbcodec/codecs/cRSID/SOURCES
new file mode 100644
index 0000000000..203c9dfbd1
--- /dev/null
+++ b/lib/rbcodec/codecs/cRSID/SOURCES
@@ -0,0 +1 @@
libcRSID.c
diff --git a/lib/rbcodec/codecs/cRSID/cRSID.make b/lib/rbcodec/codecs/cRSID/cRSID.make
new file mode 100644
index 0000000000..2d5acb8b20
--- /dev/null
+++ b/lib/rbcodec/codecs/cRSID/cRSID.make
@@ -0,0 +1,16 @@
1# __________ __ ___.
2# Open \______ \ ____ ____ | | _\_ |__ _______ ___
3# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
6# \/ \/ \/ \/ \/
7
8# cRSID
9CRSID := $(CODECDIR)/cRSID.a
10CRSID_SRC := $(call preprocess, $(RBCODECLIB_DIR)/codecs/cRSID/SOURCES)
11CRSID_OBJ := $(call c2obj, $(CRSID_SRC))
12OTHER_SRC += $(CRSID_SRC)
13
14$(CRSID): $(CRSID_OBJ)
15 $(SILENT)$(shell rm -f $@)
16 $(call PRINTS,AR $(@F))$(AR) rcs $@ $^ >/dev/null