|
|
@@ -57,10 +57,10 @@ extern "C" {
|
|
|
|
|
|
#ifndef PLATFORM_HAS_ROM_DRIVE
|
|
|
// Dummy defines for platforms without ROM drive support
|
|
|
-#define AZPLATFORM_ROMDRIVE_PAGE_SIZE 1024
|
|
|
-uint32_t azplatform_get_romdrive_maxsize() { return 0; }
|
|
|
-bool azplatform_read_romdrive(uint8_t *dest, uint32_t start, uint32_t count) { return false; }
|
|
|
-bool azplatform_write_romdrive(const uint8_t *data, uint32_t start, uint32_t count) { return false; }
|
|
|
+#define PLATFORM_ROMDRIVE_PAGE_SIZE 1024
|
|
|
+uint32_t platform_get_romdrive_maxsize() { return 0; }
|
|
|
+bool platform_read_romdrive(uint8_t *dest, uint32_t start, uint32_t count) { return false; }
|
|
|
+bool platform_write_romdrive(const uint8_t *data, uint32_t start, uint32_t count) { return false; }
|
|
|
#endif
|
|
|
|
|
|
#ifndef PLATFORM_SCSIPHY_HAS_NONBLOCKING_READ
|
|
|
@@ -98,7 +98,7 @@ struct romdrive_hdr_t {
|
|
|
// Check if the romdrive is present
|
|
|
static bool check_romdrive(romdrive_hdr_t *hdr)
|
|
|
{
|
|
|
- if (!azplatform_read_romdrive((uint8_t*)hdr, 0, sizeof(romdrive_hdr_t)))
|
|
|
+ if (!platform_read_romdrive((uint8_t*)hdr, 0, sizeof(romdrive_hdr_t)))
|
|
|
{
|
|
|
return false;
|
|
|
}
|
|
|
@@ -120,7 +120,7 @@ static bool check_romdrive(romdrive_hdr_t *hdr)
|
|
|
bool scsiDiskProgramRomDrive(const char *filename, int scsi_id, int blocksize, S2S_CFG_TYPE type)
|
|
|
{
|
|
|
#ifndef PLATFORM_HAS_ROM_DRIVE
|
|
|
- azlog("---- Platform does not support ROM drive");
|
|
|
+ bluelog("---- Platform does not support ROM drive");
|
|
|
return false;
|
|
|
#endif
|
|
|
|
|
|
@@ -132,7 +132,7 @@ bool scsiDiskProgramRomDrive(const char *filename, int scsi_id, int blocksize, S
|
|
|
}
|
|
|
|
|
|
uint64_t filesize = file.size();
|
|
|
- uint32_t maxsize = azplatform_get_romdrive_maxsize() - AZPLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
+ uint32_t maxsize = platform_get_romdrive_maxsize() - PLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
|
|
|
bluelog("---- SCSI ID: ", scsi_id, " blocksize ", blocksize, " type ", (int)type);
|
|
|
bluelog("---- ROM drive maximum size is ", (int)maxsize,
|
|
|
@@ -153,7 +153,7 @@ bool scsiDiskProgramRomDrive(const char *filename, int scsi_id, int blocksize, S
|
|
|
hdr.drivetype = type;
|
|
|
|
|
|
// Program the drive metadata header
|
|
|
- if (!azplatform_write_romdrive((const uint8_t*)&hdr, 0, AZPLATFORM_ROMDRIVE_PAGE_SIZE))
|
|
|
+ if (!platform_write_romdrive((const uint8_t*)&hdr, 0, PLATFORM_ROMDRIVE_PAGE_SIZE))
|
|
|
{
|
|
|
bluelog("---- Failed to program ROM drive header");
|
|
|
file.close();
|
|
|
@@ -161,7 +161,7 @@ bool scsiDiskProgramRomDrive(const char *filename, int scsi_id, int blocksize, S
|
|
|
}
|
|
|
|
|
|
// Program the drive contents
|
|
|
- uint32_t pages = (filesize + AZPLATFORM_ROMDRIVE_PAGE_SIZE - 1) / AZPLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
+ uint32_t pages = (filesize + PLATFORM_ROMDRIVE_PAGE_SIZE - 1) / PLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
for (uint32_t i = 0; i < pages; i++)
|
|
|
{
|
|
|
if (i % 2)
|
|
|
@@ -169,8 +169,8 @@ bool scsiDiskProgramRomDrive(const char *filename, int scsi_id, int blocksize, S
|
|
|
else
|
|
|
LED_OFF();
|
|
|
|
|
|
- if (file.read(scsiDev.data, AZPLATFORM_ROMDRIVE_PAGE_SIZE) <= 0 ||
|
|
|
- !azplatform_write_romdrive(scsiDev.data, (i + 1) * AZPLATFORM_ROMDRIVE_PAGE_SIZE, AZPLATFORM_ROMDRIVE_PAGE_SIZE))
|
|
|
+ if (file.read(scsiDev.data, PLATFORM_ROMDRIVE_PAGE_SIZE) <= 0 ||
|
|
|
+ !platform_write_romdrive(scsiDev.data, (i + 1) * PLATFORM_ROMDRIVE_PAGE_SIZE, PLATFORM_ROMDRIVE_PAGE_SIZE))
|
|
|
{
|
|
|
bluelog("---- Failed to program ROM drive page ", (int)i);
|
|
|
file.close();
|
|
|
@@ -204,7 +204,7 @@ bool scsiDiskActivateRomDrive()
|
|
|
return false;
|
|
|
#endif
|
|
|
|
|
|
- uint32_t maxsize = azplatform_get_romdrive_maxsize() - AZPLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
+ uint32_t maxsize = platform_get_romdrive_maxsize() - PLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
bluelog("-- Platform supports ROM drive up to ", (int)(maxsize / 1024), " kB");
|
|
|
|
|
|
romdrive_hdr_t hdr = {};
|
|
|
@@ -468,8 +468,8 @@ public:
|
|
|
{
|
|
|
uint32_t sectorcount = count / SD_SECTOR_SIZE;
|
|
|
assert((uint64_t)sectorcount * SD_SECTOR_SIZE == count);
|
|
|
- uint32_t start = m_cursector * SD_SECTOR_SIZE + AZPLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
- if (azplatform_read_romdrive((uint8_t*)buf, start, count))
|
|
|
+ uint32_t start = m_cursector * SD_SECTOR_SIZE + PLATFORM_ROMDRIVE_PAGE_SIZE;
|
|
|
+ if (platform_read_romdrive((uint8_t*)buf, start, count))
|
|
|
{
|
|
|
m_cursector += sectorcount;
|
|
|
return count;
|
|
|
@@ -1529,7 +1529,7 @@ void diskDataOut()
|
|
|
// when buffer space is freed.
|
|
|
uint8_t *buf = &scsiDev.data[start];
|
|
|
g_disk_transfer.sd_transfer_start = start;
|
|
|
- // azdbg("SD write ", (int)start, " + ", (int)len, " ", bytearray(buf, len));
|
|
|
+ // bluedbg("SD write ", (int)start, " + ", (int)len, " ", bytearray(buf, len));
|
|
|
bluescsiplatform_set_sd_callback(&diskDataOut_callback, buf);
|
|
|
if (img.file.write(buf, len) != len)
|
|
|
{
|