| ||
Shopping Cart Download Website |
Home | Products | Teensy | Blog | Forum |
You are here: MP3 Player User Photo Gallery Derek Joos, ATAPI Lessons Learned |
|
This is an archived copy of the work done
by Brad Baird, Tom Freestone, Derek Joos, Steve Saunders, and Ryan
Woodings
to attempt to add ATAPI support to the PJRC MP3 player.
This is their original web
page.
It seemed like a good idea to archive a copy, since these student web
pages
usually disappear after a while. Here is
the final code they wrote.
Lessons
Learned: Lesson One: For those contemplating this type of project in the future, please carefully consider some comments from Hale Landis of ATA-ATAPI.com:
Lesson
Two: Don't fry your kit, hard drives, personal computers and/or body parts in the process of the project.
Figure 1 Varying Types of Smoke Emitting Hardware Lesson
Three: Don't write your firmware in assembly code. If it is written in C, there is a wider variety of available programming tools to aid in the debugging and coding. Lesson
Four: You need a really good understanding of the ATA and ATAPI interfaces. In order to speak "ATAPI," a casual perusal of the ATA/ATAPI-4 standard is not sufficient to gain adequate proficiency. Lesson Five: The player architecture needs to be flexible in order to support the myriad of storage media used by ATAPI devices. For instance, most CD-ROMs adhere to the ISO-9660 format and don't come with a native FAT32 file system. On the other hand, an Iomega zip disk, while also ATAPI based, comes FAT-32 ready. |