ThunderPeel2001 Posted December 31, 2008 (edited) At 2am Pacific Standard Time, 31st December 2008, every single 30GB Zune on the planet ceased to function. No-one knows why, not even Microsoft. Happy freaking New Year! (Merriments of the New Year variety to my fellow thumbs ) Edited January 1, 2009 by ThunderPeel2001 Share this post Link to post Share on other sites
DanJW Posted December 31, 2008 It's the Millennium Bug! It's late. Share this post Link to post Share on other sites
lawlypop Posted December 31, 2008 Has anyone even found out what made them screw up like that? Talk about a horrible way to start off the year. Share this post Link to post Share on other sites
Nappi Posted December 31, 2008 That is pretty hilarious. Has anyone even found out what made them screw up like that? http://gizmodo.com/5121822/official-fix-for-the-zune-30-fail Share this post Link to post Share on other sites
Karimi Posted January 1, 2009 First post of the new year !!! ? Share this post Link to post Share on other sites
ThunderPeel2001 Posted January 1, 2009 Freaky or what, eh? It's the YK9 bug... on a tiny selection of devices. It's all fixed now though (it was something to do with how the last day of a leap year is handled). They automatically started working again on their own. How bizarre! Share this post Link to post Share on other sites
DanJW Posted January 1, 2009 Talking of Microsoft... This year's Royal Institution Christmas Lectures were about computing. I caught my mother watching them and she found it fascinating - I don't think she'd ever really wondered how computers work before. Anyway, Bill Gates joined in via satellite link, to answer kids' questions (although he evaded a lot and didn't really say anything very much in the end). If you're not familiar with the Christmas Lectures I highly recommend them. They are aimed at secondary school children, although the science is a lot more 'truthful' then most stuff on school curriculums and explains things that most teachers would struggle with. Plus they do entertaining experiments like swing a huge steel pendulum an inch away from the lecturer's face (to demonstrate the predictable nature of classical physics). In any case I always enjoy them. Share this post Link to post Share on other sites
lawlypop Posted January 2, 2009 If anyone is interested...here's the source code as to why the Zunes all crashed. while (days > 365) { if (IsLeapYear(year)) { if (days > 366) { days -= 366; year += 1; } } else { days -= 365; year += 1; } } Basically, who ever programmed this part of the Zune didn't put in while (days >= 365). So when it became December 31st (day 365) it got stuck since they did not include that final day into their loop statement. I believe this method was for checking to see if the year was a leap year or not. Which ever Zune owners had this version of the firmware got a very unhappy surprise on December 31st! Share this post Link to post Share on other sites
David Posted January 2, 2009 Excellent use of pastie, by the way. I used to use it all the time, and then forgot it existed. Share this post Link to post Share on other sites
lawlypop Posted January 2, 2009 Excellent use of pastie, by the way. I used to use it all the time, and then forgot it existed. Yes! The site is really clean and a good place to read code. Very nice on the eyes. Share this post Link to post Share on other sites
Noyb Posted January 3, 2009 Wouldn't the problem be in the condition "if (days > 366)" and not the while loop? It should be "if (days >= 366)" The function ConvertDays is supposed to convert an internal count of how many days have elapsed since the beginning of the origin year into the components of a standard month/day/year format. It begins by calculating the year, starting its count at the origin year. If days contains more days than the current year has, then it subtracts the number of days in that year (365 if a leap year, 366 if not) from days, and adds one to the year. This runs until the number of remaining days is less than the number of days in that year. However, in the leap year test it only subtracts from days and updates the year for the next loop if the day count is greater than 366. So when the current day is the last day of a leap year, then days would be equal to 366, causing the program to be stuck in an infinite loop. Days would not be updated, since days is not greater than 366, but the outer while loop would still run since days is greater than 365. Share this post Link to post Share on other sites
Scrobbs Posted January 3, 2009 Talking of Microsoft...This year's Royal Institution Christmas Lectures were about computing. I caught my mother watching them and she found it fascinating - I don't think she'd ever really wondered how computers work before. Anyway, Bill Gates joined in via satellite link, to answer kids' questions (although he evaded a lot and didn't really say anything very much in the end). If you're not familiar with the Christmas Lectures I highly recommend them. They are aimed at secondary school children, although the science is a lot more 'truthful' then most stuff on school curriculums and explains things that most teachers would struggle with. Plus they do entertaining experiments like swing a huge steel pendulum an inch away from the lecturer's face (to demonstrate the predictable nature of classical physics). In any case I always enjoy them. Yep, they are tops. I saw a couple - and thanks for reminding me. The episodes are available from all good newsgroups. Share this post Link to post Share on other sites
Cigol Posted January 3, 2009 You can download copies of the ones on evolution directly from Richard Dawkins website. The best bit is when he calls in Douglas Adams to read from one of Hitchhikers books. Share this post Link to post Share on other sites