Support for TZX tape format.
This commit is contained in:
@@ -56,6 +56,7 @@
|
||||
<ClCompile Include="osd.c" />
|
||||
<ClCompile Include="spi.c" />
|
||||
<ClCompile Include="tos.c" />
|
||||
<ClCompile Include="tzx2wav.c" />
|
||||
<ClCompile Include="user_io.c" />
|
||||
<ClCompile Include="x86.c" />
|
||||
</ItemGroup>
|
||||
@@ -85,6 +86,7 @@
|
||||
<ClInclude Include="osd.h" />
|
||||
<ClInclude Include="spi.h" />
|
||||
<ClInclude Include="tos.h" />
|
||||
<ClInclude Include="tzx2wav.h" />
|
||||
<ClInclude Include="user_io.h" />
|
||||
<ClInclude Include="x86.h" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -68,6 +68,9 @@
|
||||
<ClCompile Include="x86.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="tzx2wav.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="archie.h">
|
||||
@@ -151,6 +154,9 @@
|
||||
<ClInclude Include="x86.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="tzx2wav.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="build.sh" />
|
||||
|
||||
31
user_io.c
31
user_io.c
@@ -20,6 +20,7 @@
|
||||
#include "config.h"
|
||||
#include "menu.h"
|
||||
#include "x86.h"
|
||||
#include "tzx2wav.h"
|
||||
|
||||
#define BREAK 0x8000
|
||||
|
||||
@@ -656,20 +657,32 @@ int user_io_file_tx(char* name, unsigned char index)
|
||||
spi8(0xff);
|
||||
DisableFpga();
|
||||
|
||||
while (bytes2send)
|
||||
if (strlen(f.name) > 4 && !strcasecmp(f.name + strlen(f.name) - 4, ".tzx"))
|
||||
{
|
||||
iprintf(".");
|
||||
|
||||
uint16_t chunk = (bytes2send>512) ? 512 : bytes2send;
|
||||
|
||||
FileReadSec(&f, buf);
|
||||
|
||||
printf("Processing TZX...\n");
|
||||
|
||||
EnableFpga();
|
||||
spi8(UIO_FILE_TX_DAT);
|
||||
spi_write(buf, chunk, fio_size);
|
||||
tzx2csw(&f);
|
||||
DisableFpga();
|
||||
}
|
||||
else
|
||||
{
|
||||
while (bytes2send)
|
||||
{
|
||||
iprintf(".");
|
||||
|
||||
bytes2send -= chunk;
|
||||
uint16_t chunk = (bytes2send > 512) ? 512 : bytes2send;
|
||||
|
||||
FileReadSec(&f, buf);
|
||||
|
||||
EnableFpga();
|
||||
spi8(UIO_FILE_TX_DAT);
|
||||
spi_write(buf, chunk, fio_size);
|
||||
DisableFpga();
|
||||
|
||||
bytes2send -= chunk;
|
||||
}
|
||||
}
|
||||
|
||||
FileClose(&f);
|
||||
|
||||
Reference in New Issue
Block a user