-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Joakim L. Gilje edited this page Apr 15, 2021
·
5 revisions
Welcome to the reveller wiki!
Start the frontend using
sidplayer-frontend -player {full path for player} -rootpath {root directory for SID files}
The frontend communicates with JSON replies using a websocket connection. Replies regarding state and current status are broadcasted to all connected clients. An action request is defined as
{"action": string, "argument": string}
. Not all actions take an argument. Similarly, reply messages are defined as {"type": string, "data": string}
. Complex arguments/data are string-serialized JSON data.
Actions are commands sent from a client to the frontend.
- ls (argument): list contents of directory. returns a lsReply
- load (argument): loads a SID file into player
- song (argument): switches subsong of current SID file
- stop: stop playback
- play: start playback
- state: returns a StateReply
- currentHeader: returns a SidFile reply for the currently loaded file
- search: returns search results
- lsReply
- path: the path that was requested for the ls action
- directories: subdirectories at this path
- sidfiles: SID files at this path
- StateReply
- file: currently loaded SID file
- state: play or stop
- song: currently selected subsong
- SidFile: This reply contains the SID header. Read http://cpansearch.perl.org/src/LALA/Audio-SID-3.11/SID_file_format.txt for a detailed description.
- Type: PSID (PlaySID) or RSID (RealSid)
- Version
- DataOffset
- LoadAddress
- InitAddress
- PlayAddress
- Songs
- StartSong
- Speed (array of size 32), values is either "0" or "1"
- Name (max size 32)
- Author (max size 32)
- Released (max size 32)
- Flags (type SidFlags)
- StartPage uint8
- PageLength uint8
- Hz
- SidFlags: For details, refer to the SID header spec.
- InternalPlayer bool
- ComputePlayer bool
- C64Compatible bool
- PlaySIDSamples bool
- BASIC_ROM bool
- Speed string
- SIDModel string