2. Daniel Stenberg
3. Embedded systems developer 4. Open source hacker 5. Gadgets Gadgets don't do what we want them to 6. People like to customize things 7. Enter portable music players 2001 Not so fancy 8. How hard can it be? Bjrn Stenberg Linus Nielsen Feltzing Daniel Stenberg Stockholm Sweden, Dec 2001 9. more Freedom Games Music formats Speed Customization Applications 10. And not the least What must not be forgotten... 11. Sandisk Sansa c100, Onda VX747, SanDisk Sansa Fuze, Sandisk Sansa Clip v1, iAudio M5, Archos FM Recorder, Cowon iAudio 7, iAudio X5, Apple iPod Mini 2nd gen, Apple iPod color/photo, Archos Recorder V2, Onda VX767, Logik Dax, Philips GoGear HDD6300, Samsung YH-925, Olympus M-Robe 500, Apple iPod 3rd gen, SanDisk Sansa c200, Tatung Elio, Archos Ondio FM, iriver H100/H115, Archos Recorder, Apple iPod Nano 2nd gen, iriver H120/H140, Archos Ondio SP, iriver H10 5GB, Philips GoGear SA9200, Philips GoGear HDD1800, Sandisk Sansa m200, Toshiba Gigabeat F/X, SanDisk Sansa e200 v2, Archos Jukebox 5000, Samsung YH-820, Apple iPod Nano 1st gen, iriver H320/H340, Creative ZVM, Apple iPod 4th gen gray, Cowon D2, Meizu M6, Archos Jukebox 6000, Toshiba Gigabeat S, Apple iPod Video 60 GB, Olympus M-Robe 100, Apple iPod 1st and 2nd gen, Samsung YH-920, Apple iPod Video 30 GB, Apple iPod Mini 1st gen, iAudio M3, Sandisk Sansa c200v2, iriver H10 20GB, Philips GoGear HDD1600, SanDisk Sansa e200 52 models and counting 12. make great towers! 13. How to hack an mp3 player Or at least a general description how we've done it so far... 14. Community involve many people! Time consuming Tedious Lots of work 15. Physical components
16. Hi-Res scan PCB and publish 17. beep connections 18. Identify components
19. - custom branded chips 20. SoC is primary 21. What is inside a typical device?
22. USB 23. Sound Codec 24. RAM (usually 32MB) 25. Flash (NOR for the program) 26. Flash (NAND these days for everything) 27. HDD (for storage) 28. FM tuner 29. LCD (greyscale, 16bit color, touch, ) 30. Remote 31. Buttons, pads, wheels...
32. Learn how components work
33. Not always available 34. NDAs like crazy 35. Parts of chips are sublicensed and thus under different licenses/NDAs 36. Manufacturers like secrets 37. This is growing harder and harder 38. Why do graphics chips in the PC world go in the opposite direction? 39. HW tools
40. BDM 41. UART 42. USB 43. Upgrade format
44. How to create a custom upgrade? 45. Checksums? 46. Scrambled/ encrypted? 47. Digitally signed? 48. Analyze! Inspect many variations 49. Disassemble
50. tricky non-standard" CPU/DSP cores (calmrisc16) 51. Objdump is your friend 52. IDA Pro is expensive 53. Safe test of own code
54. Load to RAM 55. Load with HW tools 56. Inject into original / binary-patch 57. Buffer overflow triggered 58. Write Bootloader
59. Button code 60. Disk/flash access code 61. Early Rockbox
62. Make it upgradable on the device 63. Try it 64. Make main Rockbox run:
67. FM tuner 68. 69. All others involved
70. Mailing lists 71. Forums 72. Talk. Chat. Test. Report. Help. Share knowledge. Describe progress. Distribute wisdom. 73. Do not expect fast results! 74. So why not your own player?
75. SW is basically done without costs, HW is not 76. Lyre builds player(s) to run Rockbox 77. Rockbox the OS
78. Small 79. Written from scratch 80. Cooperative multitasking with priorities 81. Message queues 82. UI with graphics methods 83. Loadable plugins 84. Loadable codecs 85. Themeable looks 86. Rockbox Development
87. We build our own cross-compiler 88. SVN 89. Build your own binary in 30 minutes from scratch 90. Mostly C, small parts in assembler 91. Maintain functionality
92. Distributed build system (150 builds in 4 minutes) 93. Downloadable binaries after every commit 94. Bug tracker 95. Playback
96. Gapless playback 97. 5-band fully-parametric equalizer, and crossfeed 98. High-resolution volume control 99. Advanced crossfading 100. Cuesheet support 101. Album Art Support 102. Accessability
103. Unicode support with fonts 104. Multilingual interface 105. Optional spoken interface 106. Target-specific detailed 200+ pages manual! 107. Non-playback (aka rubbish)
108. 100 plugins/apps 109. Games, including Doom 110. Emulators 111. MPEG videos 112. View pictures 113. and more! 114. People like skinning 115. Standing on the shoulders...
116. The Team
117. 900K lines of code 118. IRC 119. Distributed decisions 120. Rockbox Steering Board 121. We meet at devcons!
122. Policies
123. Legal 124. Real name policy 125. No anonymous contributions 126. We discourage piracy 127. Easy to install
128. Linux, Windows and Mac 129. It rocks!
Top Related