As of now, PSoC3 does not support Mass Storage. However it is quite possible to implement a Mass storage yourself. All you need to do is change the descriptor table in the file USBFS_descriptor.c file. Refer the document available here for Mass storage descriptors, http://www.usb.org/developers/devclass_docs/usbmassbulk_10.pdf . Once you have the right descriptors the device will enumerate as a Mass storage device. You can use the BULK endpoints to transfer data upstream and downstream, but the question is what is the size of data that you are going to transfer? Where will you store it ?
But once you edit the descriptors in the file, a clean and build might regenerate the USB component code. To Supress this you need set the parameter "Supress API generation" to TRUE.
I hope this helps.
Maybe, somebody is interested to try the new SGPIO components (found under the "Concepts"-tab) to attach an SATA-harddisk to build an USB-Harddrive. Is there anyone familar with the SATA-protocols?
That sounds like a quite useful application..