Riscster is a RISC OS compatible client for Napster, the online mp3 music community. The Napster community allows users to share mp3's directly, with the napster server providing search and chat facilities.
It was based on gnap, a GPL'd linux client, although there isn't much gnap code left since gnap 'disagreed' with the cooperative multitasking of RISC OS.
It was started and mostly done over the Easter holidays before A-Levels, and probably shouldn't have been.
Support
=======
Riscter currently supports a subset of the Napster protocol which provides the basic functionality of logging in and downloading from other users.
That's really a lie because Riscster actually supports the opennap protocol. The Napster protocol is proprietory, but some nice people experimented and documented it, and made clients and servers for real operating systems. These are the opennap people and I am indebted to them.
Bugs
====
Yes, lots. If you discover any then please either i. Download the source and fix them or ii. Tell me or someone else about them so they can fix them.
Various people have been very kind in giving up time to beta test this software, but unfortunately it is unlikely that every possible situation has been tested, with the internet being the unpredictable and complex monster that it is.
Requirements
============
If you can play or decode and play mp3's then you should be able to run Riscster, so basically any RISC PC or A7000. The only combination that has been tested to date is a RISC PC (RISC OS 4) with and without a StrongARM. If it does/doesn't work on your machine then please let me know so I can update this and/or fix the code. Nevertheless, long filename support is useful for mp3's and users are advised to upgrade to RISC OS 4 because it's worth it.
Memory requirements are minimal.
NB: I can't play MP3's in RT since I don't have a StrongARM yet... yes have pity.
Basic Instructions
==================
Install by dragging both !Riscster and !MP3's to a convenient place. !MP3's must be seen and in a read/write partition.
I'd recommend putting !MP3's somewhere where long filenames are supported, like a '+' formatted ADFS disc or perhaps RAFS if you don't have RISC OS <4, but of course you _do_ have RISC OS 4 don't you ;).
Double click !Riscster and click menu over the iconbar icon. Select console to bring up the console if you wish to see exactly what Riscster is doing, then select Connect and fill in the relevant details to create a new account.
Click 'Connect' and then wait until the message of the day appears in the console and the search and disconnect options are ungreyed on the menu.
If the server is busy the login process may take a while. If everything seems to lock up then you can try disconnecting and reconnecting.
To search for an mp3 enter the relevant details into the search window. Set the maximum results to about 10 which should be plenty.
Choose an mp3 from the list which appears below and click menu over the most suitable, then click download in this window. Hopefully after a short while, the progress bar should begin to climb. You can download up to 5 files concurrently. You can also download from users who are behind firewalls, something which most of the linux clients can't do and the Mac client didn't do until recently... see, who said RISC OS software is behind ;)
Compiling
=========
You need OSLib. Any RISC OS C compiler should work. Email me if you are stuck.
Current TODO list
=================
Implement file sharing.
Better error handling.
Resolve server rather than assuming IP.
Better documentation.
Not supported (yet)
=============
Sharing (i.e. uploading), you can only download ATM.
Chat (a bit silly really when there are plenty of methods of chat over the internet without napster).
Operation behind a firewall.
Credits
=======
Coding, templates, general:
Rob Dimond (Drobe Software)
Testing:
Chris Egan
Thanks:
Friendly people on c.s.a.programming, notably Mr. David Ruck.
The numerous unofficial documenters of the Napster protocol:
Ben Byer
JT
Evan Martin
Colten Edwards
Ryan Dahl (author of gnap).
Colin Plumb (author of MD5 code used).
Josh Guilfoyle (author of gnapster).
Nick Burrett (porter of GCC to RISC OS).
Disclaimer
==========
Napster Inc's official message is, at the time of release:
PLEASE NOTE: Napster, Inc. makes no representations or warranties regarding MP3 files possessed by Napster users. Thousands of MP3 files have been authorised for distribution over the Internet by copyright owners; however, Napster users should understand that MP3 files may have been created without copyright owner authorisation. Neither the MP3 file format not the Napster software indicates whether a particular MP3 file has been authorised for copying or distribution. Copying or distributing unauthorised MP3 files may violate United States and/or foreign copyright laws. Compliance with copyright law remains your responsibility.
I similarly disclaim responsibility for whatever use this software is put to.
It is YOUR responsibility to ensure that you have a legal right to anything that you download through Riscster.
Licence (Whoo hoo it's GNU!)
=======
Napster client for RISC OS
Copyright (C) 2000 Robert Dimond
Portions are based on gnap by Ryan Dahl and public domain MD5 code is included written by Colin Plumb.
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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA