PrevueCLI is a command-line interface (CLI) for Prevue Channel listings written in Swift. The program was briefly discontinued in late-2020, however was later made open-source in 2023 under the BSD license.
Download links: Windows, Mac, Linux, Source
Extract PrevueCLI to a directory of your choosing.
Navigate to that directory with a terminal and run. A list of options should appear:
send <.prevuecommand file>
: Sends the commands in the specified .prevuecommand file.convertCurdayDatToListings <curday.dat file> <directory>
: Converts a curday.dat file to the channels.csv and programs.csv listings format (can unpack PowerPack 2.0 if necessary)convertXMLTVToListings <xmltv.xml file <directory> [max channel number]
: Converts an XMLTV file to the channels.csv and programs.csv listings format. If no max channel number is specified, the default is 100.convertCommandFileToBinary <.prevuecommand file> <binary>
: Converts the commands in the specified .prevuecommand file to their satellite data representationconvertBinaryToCommandFile <binary commands> <.prevuecommand file>
: Converts commands in satellite data format to a .prevuecommand file.printCommandSchema
: Prints all of the supported commands and their syntax details.printJulianDay
: Prints today’s Julian day (0-255)repl
: Opens a REPL interface, where you can type in commands to be sent interactively.Assuming you followed the ‘Obtaining listings data’ guide, execute PrevueCLI but with the option ConvertXMLTVToListings
:
prevuecli ConvertXMLTVToListings '<location>\xmltv.xml' ./listings <1-500>
<location>
will be where your xmltv.xml file is located, ./listings
is the folder where it’ll convert the individual channels and programs into compatible CSV files, and <1-500>
is the maximum number of channels that will be converted. As mentioned previously, 100 channels will be parsed if a number is not given, which means that only 100 channels from the XMLTV document will be converted and appear with every scroll. (100 is also the maximum amount of channels acceptable by the Atari EPG Jr. software.)
Finished parsing 250 channels.
Depending on your xmltv.xml file, you may not have that many channels. Typically a number around 1-500 is alright, however anything past that will either result in the command not getting sent or could result in the Prevue software crashing. If the command results in parsing 500 channels or higher, you may need to adjust the number of channels or manually edit the channels.csv
file to remove a large amount of channels.
Here is a sample .prevuecommand file that sends the New Look Configuration command, current date and time, and listings (if they exist.)
# Sample.prevuecommand
destinations:
- TCPDataDestination: {host: "127.0.0.1", port: 1234}
commands:
- BoxOnCommand: {selectCode: "*"}
- NewLookConfigurationCommand: {displayFormat: grid, textAdFlag: satellite, clockCmd: 2}
- CurrentClockCommand: {}
- CurrentDSTCommand: {}
- ListingsCommand: {channelsFilePath: "listings/channels.csv", programsFilePath: "listings/programs.csv", forAtari: false, omitSpecialCharacters: false}
- BoxOffCommand: {}
NOTE: if using the latest PrevueCLI release, replace channelsFilePath: "listings/channels.csv", programsFilePath: "listings/programs.csv"
with listingsDirectoryPath: "listings"
.
Saving: Select and copy all of the commands listed, paste them into a blank text document and save as ‘Sample.prevuecommand’.
These steps assume that you have followed the instructions for whatever version of the Prevue Channel/EPG software you are attempting to setup/emulate:
Make sure either WinUAE or FS-UAE is running in the background and is on the selected serial/TCP port as specified in your PrevueCommand file (or configuration). Then, use the send
option:
PrevueCLI send Sample.prevuecommand
ListingsCommand
.ListingsCommand
.