aboutsummaryrefslogtreecommitdiff
path: root/bootloaders/diskloader/src/ThinFAT.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'bootloaders/diskloader/src/ThinFAT.cpp')
-rw-r--r--bootloaders/diskloader/src/ThinFAT.cpp130
1 files changed, 0 insertions, 130 deletions
diff --git a/bootloaders/diskloader/src/ThinFAT.cpp b/bootloaders/diskloader/src/ThinFAT.cpp
deleted file mode 100644
index c238741..0000000
--- a/bootloaders/diskloader/src/ThinFAT.cpp
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-/* Copyright (c) 2011, Peter Barrett
-**
-** Permission to use, copy, modify, and/or distribute this software for
-** any purpose with or without fee is hereby granted, provided that the
-** above copyright notice and this permission notice appear in all copies.
-**
-** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
-** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
-** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
-** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
-** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
-** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
-** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
-** SOFTWARE.
-*/
-
-#include "Platform.h"
-
-#ifdef MSC_ENABLED
-
-extern const u8 Sector_0[] PROGMEM;
-extern const u8 Sector_1[] PROGMEM;
-extern const u8 Sector_2[] PROGMEM;
-extern const u8 Sector_3[] PROGMEM;
-extern const u8 Sector_Size[] PROGMEM;
-
-
-const u8 Sector_0[27] =
-{
- 0xEB,0x3C,0x90,
- FAT_OEM_NAME,
- 0x00,0x02, // Bytes per sector 512
- 0x40, // Sectors per Cluster 32k per cluster
- 0x01,0x00, // Reserved sectors
- 0x02, // FATSs
- 0x10,0x00, // root entries
- 4+64,0x00, // number of sectors: 30k file
- 0xF8, // Media type fixed
- 0x01,0x00, // Sectors per FAT
- 0x01,0x00, // Sectors per head
- 0x01,//0x00, // Heads per cylinder
- //0x00,0x00,0x00,0x00, // Hidden
- //0x00,0x00,0x00,0x00, // long number of sectors
- //0x00,0x00, // Ext flags
- // 38 bytes
-};
-
-// FAT12 clusters for 32k file
-const u8 Sector_1[] =
-{
-#if 0
- 0xF8,0xFF,0xFF,
- 0xFF,0x0F//,0x00
-#endif
-};
-
-const u8 Sector_2[] =
-{
-};
-
-const u8 Sector_3[] =
-{
-#if 0
- FAT_FILE_NAME, 0x00,0x00,0x00,0x00,0x00, // Uppercase name please
- 0x43,0x3E,0x43,0x3E,0x00,0x00,0xAB,0x8C,0x40,0x3E,0x02,0x00,0x00,0x80,//0x00,0x00
- // 0x00,0x00,
-#endif
-
-#ifdef FAT_DISK_LABEL
- FAT_DISK_LABEL,0x28
-#endif
-};
-
-#if 0
-const u8 Sector_Size[] =
-{
- 0,
- sizeof(Sector_0),
- sizeof(Sector_0) + sizeof(Sector_1),
- sizeof(Sector_0) + sizeof(Sector_1) + sizeof(Sector_2),
- sizeof(Sector_0) + sizeof(Sector_1) + sizeof(Sector_2) + sizeof(Sector_3)
-};
-#endif
-
-const u8* LBAToROM(u8 b)
-{
- b -= 4;
- return (const u8*)(b << 9);
-}
-
-void SendSector(u8 b)
-{
- if (b == 0)
- {
- u8 n = sizeof(Sector_0);
- Transfer(MSC_TX | TRANSFER_PGM,Sector_0,n);
- Transfer(MSC_TX | TRANSFER_ZERO,0,512-n);
- return;
- }
-
- if ((b < 4) || (b >= 64))
- {
- Transfer(MSC_TX | TRANSFER_ZERO,0,512);
- return;
- }
-
- // Copy body of file from ROM
- Transfer(MSC_TX | TRANSFER_PGM,LBAToROM(b),512);
-}
-
-#define GENERATE_INVALID_ROM_ADDRESS 60
-
-void RecvSector(u8 lba)
-{
- if ((lba < 4) || (lba >= 64))
- lba = GENERATE_INVALID_ROM_ADDRESS; // Only care about the first 30k
-
- // Write sectors to flash
- u16 addr = (u16)LBAToROM(lba); // may generate out of range addresses, Program will fix
- u8 i = 4; // 4x128 is a sector
- while (i--)
- {
- Program(MSC_RX,addr,128);
- addr += 128;
- }
-}
-
-#endif \ No newline at end of file