------------------------------------------------------------------- __________ __ ___. Open \______ \ ____ ____ | | _\_ |__ _______ ___ Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ \/ \/ \/ \/ \/ $Id$ Copyright (C) 2002 by Robert E. Hak ------------------------------------------------------------------- Rockbox FAQ ----------- Q1. What is a FAQ? A1. A rare small animal of the species 'Textius Electronicus'. It is known for its helpful attitude and vicious misspellings. Q2. What is Rockbox? What is it's purpose? A2. The purpose of this project is to write an Open Source replacement firmware for the Archos Jukebox 6000, Studio 20 and Recorder MP3 players. Q3. I want to write code for my Archos, how do I proceed? A3. First make sure to read the file CONTRIBUTING in the firmware directory on Sourceforge. See http://bjorn.haxx.se/rockbox/firmware/CONTRIBUTING if you do not want to have to wade through the CVS directories. Q4: Whats CVS? A4: Concurrent Versions System (http://www.cvshome.org). We have a small help page about how to use this to get, update and commit files on the web at http://bjorn.haxx.se/rockbox/cvs.html Q5. What exactly is the CONTRIBUTING file? A5. Just like the name implies, it lists conventions that the project follows, and in turn asks you to follow, for the formating of source code in general. Q6. Okay, so I read CONTRIBUTING and although I don't agree with all your conventions, I am going to be sensible and follow them anyway. Now what? A6. Start by reading up on the information about the jukeboxes on our web page. Then go into CVS and look at the code we've written. Then take what you need and start writing. Q7. Okay, so how do I submit a patch? A7. Run: "diff -u oldfile newfile > patchfile" against the file(s) you have changed. Then mail the output to any member of the development team and we will take it under consideration. (Please remember that all submissions are not automatically accepted, this is nothing personal.) Of if you would like to run the diff against the current cvs code: cvs diff -ub [file(s)] Q8. I want to join the development team, but don't have a SourceForge account, what should I do? A8. Head on over to http://sourceforge.net/account/register.php and create an account for yourself. Q9. Do you have a mailing list? A9. Sure do! The list is rockbox@cool.haxx.se. To subscribe, you need to send a message to majordomo@cool.haxx.se with the words "subscribe rockbox" in the body. Q10. Great you have a mailing list! Is there anyway for me to catch up on past posts? A10. Check out the archives at: http://bjorn.haxx.se/rockbox/mail.cgi Q11. How can I meet the developers working on the project? A11. One way is by visiting us on IRC. Head on over to the server irc.openprojects.net, and then join "#rockbox". There is usually at least one person there. If you don't see any activity, feel free to post questions anyway, serveral of us log the channel and will get you answers when we unidle. Q12: Wow, you guys talk on IRC alot? I wish I had been around for those conversations to see what happened. A12: We are glad you mentioned that! http://bjorn.haxx.se/rockbox/irc happens to have a list of various logs we have recorded of events in the channel. Feel free to read up, and ask questions on what you find. Q13. What is this "SourceForge" you keep mentioning? A13. http://www.sourceforge.net Q14. Can the changes or the software that Rockbox suggests or offers possibly damage my Archos Player? A14. All firmware mods that are presented are still highly experimental. Try them at your own risk. We offer no guarantee that this software, or the hardware modifications we show, will not damage your player or void your warranty. That said, we have not been able to damage any of our units by modifying only the firmware. You can accidentally password protect your harddisk, but there are ways around that. (See below.) Q15. I want to see what the inside of my player looks like, but I would really like to avoid voiding my warranty. Is there anything you can suggest? A15. We have a collection of photos of both the player and recorder. Look at http://bjorn.haxx.se/rockbox/internals/ Q16. What exactly are you trying to achieve with this line of development? (A.K.A. whats your purpose for being here?) A16. Firstly, we wouldn't start something like this if we didn't simply enjoy it profusely. This is great fun! Secondly, we feel the firmware is lacking some features and contain a number of annoying bugs that we want to fix. Some ideas would include (in no particular order): - No pause between songs - Mid-song resume - Mid-playlist resume - No-scan playlists - Unlimited playlist size - Autobuild playlists (ie: "all songs in this directory tree") - Auto-continue play in the next directory - Current folder and all sub-folder random play - Full disk random play - REAL random - Multi song queue - Faster scroll speed - More cool features with the wire remote control (including controlling your Archos from your car radio (req hw mod)) - Support playing of other files types (ie: Ogg Vorbis support) - Support for megabass switch (req hw mod) - Player control via USB - Memory expansion? Note: Just because something is on this list, does not mean that it is technically feasible. (But hey we can dream) And something not being on the list does not mean it isn't a neat idea. Bring it to the list. Q17. I don't see you mentioning other file types on your list of ideas. What about supporting those? A17. Pessimist's Answer: At the current time we belive this is not very likely The Micronas chip (MAS3507) decoder in the archos does not natively support decoding and there is very little program space in the player to implement it ourselves. The alternative would be to write a software decoder as part of the RockBox firmware. However, as much as we love our players, the computing power of the Archos (SH1 microcontroller) is not fully sufficent for this need. Optimist's Answer: We can play any format if only we can write code for the DSP to decode it. The MAS 3507 (and 3587) are generic DSPs that simply have MP3 codecs in ROM. We can download new codecs in them and we will be the first to celebrate if we can get OGG or FLAC or anything into these DSPs. Unfortunately, we have no docs or tools for writing new MAS DSP code and Intermetall is very secretive about it. If anyone can help, please get in touch! Q18. What about supporting playing of WMA files? A18. Dear Mr. Gates, you have two options. Re-read question #17, or go buy your own project. Q19. When do you think there will be a version available for my Archos? A19. We recently released version 1.1, so head on over to http://bjorn.haxx.se/rockbox/download.html and pull it down. This versions major changes/improvements include: - Recorder support - Playlist support (max 10000 files, approx 1000 files/sec load time) - Scrolling Make sure to read the release notes. (http://bjorn.haxx.se/rockbox/download/rockbox-1.1-notes.txt). Q20. What do you plan to add to coming versions? A20. We have a rough idea of which features we plan/expect/hope to be included in which versions. Once again, remember that none of this is written in stone (noticing a pattern yet?) Version 1.2 UI improvements Version 1.3 Resume, persistent settings, autobuild playlists, UI improvements Q21. I tried one of your firmware files and now I can't access my harddisk! When I turn on my jukebox, it says: Part. Error Pls Chck HD A21. Your harddisk has been password protected. We're not 100% sure why it happens, but you can unlock it yourself. Look at: http://rockbox.sourceforge.net/rockbox/lock.html Q22: This FAQ doesn't answer the question I have. What should I do? A22: You have a couple options here. You could forget the question, find an easier question, or accept '42' as the answer no matter what. We don't really recommend any of these (though I do opt for '42' often myself). What we do recommend is stopping by IRC, reading http://bjorn.haxx.se/rockbox to see if the question was answered else where and just not included here, or ultimatly dropping an email to the mailing list (rockbox@cool.haxx.se) or the FAQ maintainer listed on the project homepage. Q23: Are there other ways to contact the developers? A23: Yes. Q24: Are you going to tell us what they are? A24: No. Post to the mailing list and we will get back to you. Q25: But I _really_ want to talk with you in person. A25: I'm sorry. My girlfriend/boyfriend/pet says I'm not allowed to, and the doctors here won't let me have pens or pencils. They say its some rule about us not having sharp objects. I'm sorry. Now please stop calling me here. Q26: Will you ever port Quake II to the Archos? A26: If you ask that again, I'm sending your address and phone number to the guy that mailed us with question #23. Q27: Umm, was that sarcasm? A27: That's it, I'm mailing him now. Q28: Is this legal? I mean, I'd just hate to see something like that challenged under the DMCA in all its ridiculousness. Any thoughts or ideas? A28: We believe we are in the green on this. We are not violating anyone's copyright and we are not circumventing any copy protection scheme. This has been a big point for the project since its inception. Some people wanted us to distribute patched versions of the original firmware, but seeing as that _would_ have violated Archos' copyright, we didn't follow that course of action. Q29: On the website [and various information postings] you state "Every tiny bit was reverse engineered, disassembled and then re-written from scratch". If it was rewritten from scratch then why was it first reverse-engineered and disassembled? Instead this sounds more like someone disassembled it then used the understanding that they gained to create a new version, which is not quite the same as "from scratch". A29: Don't confuse the terms. Reverse engineering means examining a product to find out how it works. Disassembling the firmware is merely one tool used in that examination. Oscilloscopes and logic analyzers are other tools we have used. We have written every single byte of the Rockbox firmware. But we could not have written the software without first researching how the hardware was put together, i.e. reverse engineer it. All of this is completely legal. If you define "from scratch" as writing software without first researching the surrounding interfaces, then no software has ever been written from scratch. Q30: Wait a minute here. You have released version 1.0, but not a single one of the ideas you have spoken about is actually implimented! Calling this version 1.0 is really misleading. Whats the story?! A30: In simple terms, the first release is called 1.0 because it has a basic working feature set that works and has no known bugs. That is what 1.0 means. It is true that Rockbox 1.0 lacks most of the feature set that every sane user wants. However, we never said it was more feature-complete or better in any way then the original firmware at this early point. This first release was done as a proof of concept that our ideas are moving in the right direction. We also hope that it helps bring the project some attention, and some additional developers. Adding the missing features is just a matter of time (and that time goes faster if you, yes you, help too). Q31: I've heard talk of a 'Rolo'. What is that? (Or 'All you ever wanted to know about Rockbox boot loaders') A31: The developers have discussed the possibility of a boot loader. (Mainly because having one sounds cool, and isn't Rolo just a great name?) The idea would be that a user could use the load to choose between different verions of Rockbox or the Archo firmware itself. We do not have an expected date on this. (As a matter of fact, developement on it has not even started yet). Q32: I was thinking about making the USB a bit more usable. What are the chances of using the USB port to [play games / share files / list the device as something other then a hard drive / sell my soul to you for a nickel]. What do you think? A32: You really don't want to know what I think, it involves road flares, microwave ovens and shaved cats. Enough said. But regarding the USB portion of your question, this is not feasible. First, any ideas regarding special communications over the USB port will not work because we have no control over the USB port itself. We are capable of dectecting if it is in use (so we know which mode to switch to) but that is it. Second, if you would like to have your Archos as a harddrive for another device, know that this will not work either. The Archos unit is a slave. Most other USB devices are slaves as well. So without some master involved there can be no communication. Sorry. Now about your soul. Would you settle for 3 cents and a small wad of belly button lint?