<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[esxDOS BBS — FAT32 file system corruption when DMA is enabled]]></title>
	<link rel="self" href="https://board.esxdos.org/extern.php?action=feed&amp;tid=686&amp;type=atom" />
	<updated>2020-08-24T18:10:12Z</updated>
	<generator>PunBB</generator>
	<id>https://board.esxdos.org/viewtopic.php?id=686</id>
		<entry>
			<title type="html"><![CDATA[Re: FAT32 file system corruption when DMA is enabled]]></title>
			<link rel="alternate" href="https://board.esxdos.org/viewtopic.php?pid=1730#p1730" />
			<content type="html"><![CDATA[<p>A port 0x0b mapping of the dma was added specifically for compatibility with the mb02, datagear, mb03.&nbsp; When it is enabled, the internal dma gets used instead of the external one.</p><p>Using port 0x0b places the dma in z80 compatibility mode so dma transfers should work fine using this port.&nbsp; However there are a couple of issues:</p><p>1)&nbsp; The East German z80 dma clone that was used in the datagear and possibly others is not 100% compatible with the z80 dma.&nbsp; In particular, a Czech magazine published a how-to on programming the z80 dma that contained a bug and this got spread around.&nbsp; The bug causes the dma transfer to start before it is initialized but on the E German dma, the command is ignored.&nbsp; The Next is following the z80 dma currently and I think the mb03 may be following the E German clone on this issue.&nbsp; As long as the dma is properly programmed there shouldn&#039;t be an issue with dma transfers.</p><p>2) There are some edge cases in timing that are different in comparison to the z80 dma.&nbsp; These show up in some demos where copies to screen may be shifted out of position.&nbsp; This shouldn&#039;t affect dma transfers which are not timing sensitive at all.&nbsp; In the mb03 these timing differences were fixed but in the zx next we&#039;re waiting to make the fixes until the dma sees an upgrade.</p><p>So I am wondering if bug #1 might be the issue with dma transfers?&nbsp; The offending dma command is:</p><p>$C0 WR3, enable=1</p><p>which starts a dma operation on z80 dma chips.&nbsp; It can be removed without any consequences.</p>]]></content>
			<author>
				<name><![CDATA[Alcoholics Anonymous]]></name>
				<uri>https://board.esxdos.org/profile.php?id=181</uri>
			</author>
			<updated>2020-08-24T18:10:12Z</updated>
			<id>https://board.esxdos.org/viewtopic.php?pid=1730#p1730</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: FAT32 file system corruption when DMA is enabled]]></title>
			<link rel="alternate" href="https://board.esxdos.org/viewtopic.php?pid=1595#p1595" />
			<content type="html"><![CDATA[<p>Hi,</p><p>Actually I was under the impression that esxDOS&#039; DMA driver didn&#039;t work <strong>at all</strong> on the Next, so that&#039;s news to me. Please see <a href="https://www.specnext.com/forum/viewtopic.php?f=6&amp;t=1713">https://www.specnext.com/forum/viewtopi … amp;t=1713</a> for more information.</p><p>PS. Moved to the Next section.</p>]]></content>
			<author>
				<name><![CDATA[lordcoxis]]></name>
				<uri>https://board.esxdos.org/profile.php?id=2</uri>
			</author>
			<updated>2020-05-30T17:45:49Z</updated>
			<id>https://board.esxdos.org/viewtopic.php?pid=1595#p1595</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[FAT32 file system corruption when DMA is enabled]]></title>
			<link rel="alternate" href="https://board.esxdos.org/viewtopic.php?pid=1594#p1594" />
			<content type="html"><![CDATA[<p>Setup:<br />1. ZX Spectrum Next (personality mode - ZX Spectrum 128)<br />2. FlashAIR SDXC 64GB (FAT32)<br />3. esxDOS 0.8.8 with DMA support enabled<br />4. new browser with LFN support (<a href="https://spectrumcomputing.co.uk/forums/viewtopic.php?p=37349&amp;fbclid=IwAR3K9X0DERyl-gXT67UjYEVJNyIoH8mkeX4IuKvo4s8zblyh63PsEjgjLX4#p37349">https://spectrumcomputing.co.uk/forums/ … LX4#p37349</a>)</p><p>Symptoms:<br />When DMA support for esxDOS is enabled in ESXDOS.CFG the file system gets corrupted when saving data to SD card. Reading is unaffected.</p><p>Example:<br />The new browser with LFN support saves memory dump to TMP/BROWSE.NMI file on SD card during start. In DMA enabled mode instead of BROWSE.NMI file there is bunch of files created with sizes of 1GB each and corrupted file names:</p><p><span class="postimg"><img src="https://i.imgur.com/7cb5emi.png" alt="https://i.imgur.com/7cb5emi.png" /></span></p><p>Workaround:<br />Disable DMA support in ESXDOS.CFG</p>]]></content>
			<author>
				<name><![CDATA[bukem]]></name>
				<uri>https://board.esxdos.org/profile.php?id=508</uri>
			</author>
			<updated>2020-05-30T14:11:20Z</updated>
			<id>https://board.esxdos.org/viewtopic.php?pid=1594#p1594</id>
		</entry>
</feed>
