USB composite device example program, drag-and-drop flash writer.

Dependencies:   SWD USBDevice mbed BaseDAP

RomDisk.cpp

Committer:
va009039
Date:
2013-09-17
Revision:
0:2385683c867a

File content as of revision 0:2385683c867a:

// RomDisk.cpp 2013/9/17
#include "mbed.h"
#include "RomDisk.h"

RomDisk::RomDisk()
{
    _sectors = 128; // 64KB(512*128)
}

int RomDisk::read(uint8_t * data, uint32_t block)
{
    SectorIndex* p = const_cast<SectorIndex*>(sector_index);
    while(p->data) {
        if (p->block == block) {
            memcpy(data, p->data, 512);
            return 0;
        }
        p++;    
    }
    memset(data, 0x00, 512);
    return 0;   
}

int RomDisk::write(const uint8_t * data, uint32_t block)
{
    return 0;
}

uint32_t RomDisk::sectors()
{
    return _sectors;
}

bool RomDisk::is_data(uint32_t block)
{
    return block >= 40;
}