Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SIDPLAYFP(1)			 User Programs			  SIDPLAYFP(1)

NAME
       sidplayfp - a C64 and SID chip emulator for playing Commodore 64	music.

SYNOPSIS
       sidplayfp [OPTIONS] datafile

DESCRIPTION
       Sidplayfp is a music player that	emulates various components from a
       Commodore 64 (C64) computer.  The result	is a program which can load
       and execute C64 machine code programs which produce music and sound.
       Sidplayfp has been designed for accuracy	which results in a quite high
       CPU usage.  Additional playback modes have, however, been provided to
       allow playback on low-spec machines at the cost of said accuracy.

OPTIONS
       -h, --help
	   Display help.

       -h, --help-debug
	   Display additional options helpful for debugging.

       -fo<a|b>	<num>
	   Set	fade-out time in seconds (default: 0).	Ends a(fter) or	starts
	   b(efore) actual song	end time, the specified	number of seconds  wil
	   be  added  to  the  tune length when	after. If not specified	starts
	   after.  Mostly useful for looping tunes.

       -f<num>
	   Set audio output frequency in Hz (default: 48000).

       -nf No filter emulation.	 This will reduce CPU overhead at the cost  of
	   reduced emulation quality.

       -s  Stereo  playback.   If  the tune is identified as stereo then sid 1
	   and 2 become	the left and right channels respectively.   For	 three
	   sid tunes the chips are mixed as left, center and right.

       -m  Mono	playback.

       -v|q[level]
	   Verbose  or	quiet  (no time	display) console output	while playing.
	   Can include an optional level, defaults to 1.

       -b<num>
	   Set start  time  in	[mins:]secs[.milli]  format  (compatible  with
	   sid2wav).

       -ds<addr>
	   Force  dual	sid  environment  by adding a second chip at specified
	   address.  This forces emulation of 2	sid-chips for stereo  playback
	   even	 if datafile is	identified as only being mono.	This occurs in
	   the case of the stereo prg format as	currently there	is no  way  to
	   identify  them.  Stereo MUS and SID files are however automatically
	   detected.  The second sid may be installed in the 0xD420-0xD7FF  or
	   0xDE00-0xDFFF   address   range.   Address  may   be	 specified  in
	   exadecimal (e.g -ds0xd420) or decimal (e.g.	-ds54304) format.

       -ts<addr>
	   Add a third chip at specified address.  The sid may be installed in
	   the 0xD420-0xD7FF or	0xDE00-0xDFFF address range.  Address may   be
	   specified in	exadecimal (e.g	-ts0xd440) or decimal (e.g.  -ts54336)
	   format.

       -u<num>
	   Mute	 a  channel.   May be used more	than one time.	Channel	1 to 3
	   are for the first SID chip while channels from 4 to 6 are  for  the
	   second one and 7 to 9 for the third.

       -g<num>
	   Mute	samples.  May be used more than	one time, 1 for	the first SID,
	   2 for the second one	and 3 for the third.

       -p<num>
	   Set	bit  precision for file	saving.	The default is 16 to create 16
	   bit signed samples, but can be set to  32  (32  bit	float).	 Other
	   values will cause invalid output.

       -o<num>
	   Select start	track number (default: preset).

       -o<l|s> [num]
	   Option 'l' will select continuous track looping while 's' will play
	   only	 the  current  track  ignoring the others.  The	options	can be
	   combined and	 may  include  the  track  selection.	The  following
	   variations	are  possible:	-ol<num>:  will	 loop  selected	 track
	   allowing moving to another one; -os<num>: will play selected	 track
	   and then stop; -ols<num>: will loop selected	track;

       -t<num>
	   Set play length in [mins:]secs[.milli] format (0 is endless).

       -v<n|p>[f]
	   Set	VIC  clock  speed.  'n'	is NTSC	(America, 60Hz)	and 'p'	is PAL
	   (Europe, 50Hz).  Providing an 'f' will prevent  speed  fixing  that
	   tries   to  compensate  automatically  for  the  speed  difference.
	   Removing speed  fixing  simulates  what  happens  on	 a  real  C64.
	   Options can be written as: -vnf or -vn -vf.

       -m<o|n>[f]
	   Set	SID  chip model.  'o' is the old 6581 and 'n' is the new 8580.
	   Providing an	'f' will force the selected model overriding  the  one
	   specified by	the tune.

       --digiboost
	   Enable  digiboost  hack  for	 8580 model so the digi	samples	become
	   audible.

       -r<i|r>[f]
	   Set resampling mode.	 'i' is	interpolation (less expensive) and 'r'
	   resampling  (accurate).   Providing	an  'f'	 will  provide	faster
	   resampling  sacrificing quality.  Fast resampling is	available only
	   for reSID emulation.	 Options can be	written	as: -rif or -ri	-rf.

       -w, --wav[name]
	   Create WAV-file.  The default output	filename is  <datafile>[n].wav
	   where  [n]  is the tune number should there be more than one	in the
	   sid.	 This allows  batch  conversion	 of  sid  tunes	 without  them
	   overwriting	each  other.   By  providing  a	name it	is possible to
	   override this default behavior.  The	output	file  will  be	<name>
	   with	 no  tune  number  added and the extension .wav	appended if no
	   extension is	given.

       --au[name]
	   Create AU-file.  The	default	output filename	 is  <datafile>[n].au.
	   Same	notes as the wav file applies.

       --resid
	   Use VICE's original reSID emulation engine.

       --residfp
	   Use reSIDfp emulation engine.

       --hardsid
	   Use HardSID device.

       --exsid
	   Use exSID device.

       --usbsid
	   Use USBSID-Pico device.

       --cpu-debug
	   Display  CPU	 register and assembly dumps, available	only for debug
	   builds.

       --delay=[num]
	   Simulate C64	power on delay as number of CPU	 cycles.   If  greater
	   than	8191 the delay will be random.	This is	the default.

       --fcurve=<num>|auto
	   Controls  the  filter  curve	in the ReSIDfp emulation.  Ranges from
	   0.0 (light) to 1.0 (dark), the default value	is  0.5.   If  set  to
	   auto	 it  will  choose a predefined value for 6581 depending	on the
	   tune	author.

       --frange=<num>|auto
	   If available	controls the filter range for the 6581 in the  ReSIDfp
	   emulation.	Ranges	from  0.0  (light)  to 1.0 (dark), the default
	   value is 0.5.  If set to auto it will choose	a predefined value for
	   6581	depending on the tune author.

       -cw<w|a|s>
	   Set the strength (width)  of	 combined  waveforms.	'w'  for  weak
	   (thin)  waves,  'a'	for  average  waves, and 's' for strong	(wide)
	   waves.

       --noaudio
	   Run without an audio	output device.

       --nosid
	   Run without sid emulation.

       --none
	   Run with no audio output device and no sid emulation.

Key bindings
       1-9 Mute/unmute voice.

       q,w,e
	   Mute/unmute samples.

       f   Toggle filter.

       p   Pause/unpause playback.

       Esc Quit	player.

       Up/Down Arrows
	   Increase/reset playback speed.

       Left/Right Arrows
	   Move	to previous/next subtune.

       Home/End	Arrows
	   Go to first/last subtune.

ENVIRONMENT VARIABLES
       HVSC_BASE
	   The path to the HVSC	base directory.	If specified the songlength DB
	   will	be loaded from here and	relative SID tune paths	are accepted.

FILES
       sidplayfp.ini
	   The configuration file. See sidplayfp.ini(5)	for further details.

       kernal
	   The C64 Kernal ROM dump file.

       basic
	   The C64 BASIC ROM dump file.

       chargen
	   The C64 Character Generator ROM dump	file.

BUGS
       The     upstream	    bug	    tracker	can	 be	 found	    at
       <https://github.com/libsidplayfp/sidplayfp/issues/>.

SEE ALSO
       sidplayfp.ini(5)

NOTES
       ROM dumps are not embedded due to copyright issues and must be supplied
       by   the	  user.	   Check   the	 sidplayfp.ini(5)   documentation  for
       configuration details and default search	paths.

AUTHORS
       Leandro Nini
	   Current maintainer.

       Simon White
	   Wrote the original Sidplay2.

       Dag Lem
	   Wrote the reSID emulation engine.

       Antti S.	Lankila
	   Wrote the reSIDfp emulation engine as a fork	of reSID 0.16.

       The Vice	team
	   Large part of the emulation is based	on the VICE's code.

       Andr Fachat
	   Wrote the original reloc65 utility.

       Michael Schwendt
	   Wrote the original SidTune library and MD5 class (based on work  by
	   L. Peter Deutsch).

       Mikko Kilponen
	   Wrote the original man page.

RESOURCES
       Home page: <https://github.com/libsidplayfp/>
       Sidplay2	homepage: <http://sidplay2.sourceforge.net/>
       High Voltage Sid	Collection (HVSC): <http://hvsc.c64.org/>

COPYING
       Copyright (C) 2000-2004 Simon White
       Copyright (C) 2007-2010 Antti Lankila
       Copyright (C) 2009-2015 VICE Project
       Copyright (C) 2010-2024 Leandro Nini

       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.

       This  program  is  distributed  in the hope that	it will	be useful, but
       WITHOUT	ANY  WARRANTY;	without	  even	 the   implied	 warranty   of
       MERCHANTABILITY	or  FITNESS  FOR  A  PARTICULAR	 PURPOSE.  See the GNU
       General Public License for more details.

       You should have received	a copy of the GNU General Public License along
       with this program; if not, write	to the Free Software Foundation, Inc.,
       51 Franklin Street, Fifth Floor,	Boston,	MA  02110-1301,	USA.

perl v5.38.2			  2025-12-23			  SIDPLAYFP(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=sidplayfp&sektion=1&manpath=FreeBSD+Ports+15.0.quarterly>

home | help