Greetings!
I am reposting my question here as well, originally asked on https://eab.abime.net/showthread.php?t=121966 but I got no answers, hope somebody here might have an idea.
I am in the process of assembling a brand new Amiga 4000D computer.
- Brand new motherboard
- Brand new BFG9060 (paired with a 68060 rev6 CPU)
- 2MB of ChipRAM (not new)
- Brand new FastATA 4000 MK-VII CF/SATA/SSD Black Edition card.
- Brand new Corsair SF750 PSU with the PSU adapter made by a.mi.goun for ATX 3.0
I have connected a CF-IDE Adapter with a CF card where AmigaOS 3.2.3 is preinstalled (this is the preinstalled CF card from AmigaStore.eu).
This setup works correctly when I connect the CF adapter to the motherboard IDE connector.
But when I switch the IDE cable from the motherboard IDE port to the FastATA port, after the very first write operation occurrs, if I reboot the computer, the filesystem where the copy operation happend becomes corrupted. This is a copy operation executed from a Shell window i.e.:
copy file1.txt file1.bak
everything looks good after the copy, I can even open the new file. But after I reboot, the filesystem is not accessible anymore.
Read operations cause no problems whatsoever.
Interestingly, when I execute a copy operation from a Workbench window (select file, right click -> Icons -> Copy), I get a "Seek error" message and the copy doesn't even finish (as opposed to when executed from Shell).
At first I didn't have the FastATA drivers installed, so I thought that might be the reason, but even after I installed them it is the same.
FastATA Perf tool reports it is running in PIO4 by default. I tried first to lower it to PIO 3, and then even PIO=0 (I pass it as an argument in the Startup-Sequence script to the FastATA driver), but even in PIO=0 the same corruption happens.
Later I found this website: https://grimore.org/fuss/amiga#makin...ide_amigaos_32
I have added the DOWNGRADE keyword to LoadModule, and I moved the FastATA driver load after invoking LoadModule (but before SetPatch)
When the system booted with this script, the first thing I did was open FastATAPerfs, and verify if PIO is indeed 0, all looked good.
The same copy operation still causes the same problem.
I have also tried to set all partitions of my CF card have with the following attributes:
- MaxTransfer=0x1FE00
- Mask=0xFFFFFFFE
That also did not help.
I have also installed MMULib, so that I can use the MuSetCacheMode command to prevent buffered writes and switch to WRITETHROUGH mode. At the same time I also passed the NO32BIT flag (this was a suggestion from Gemini) to the FastATA driver. Below is the relevant part from Startup-Sequence:
With MMULib in place, I confirmed the two memory regions of the BFG9060 were no longer CopyBack (had no flags at all, MMULib changelog describes this as being in WRITETHROUGH mode, which should be slower, but avoids any potential caching issues).
All in all, this still causes the same problem. It is not random, it feels like a software issue, but no clue what I should be doing.
Any hints would be much appreciated.
I am reposting my question here as well, originally asked on https://eab.abime.net/showthread.php?t=121966 but I got no answers, hope somebody here might have an idea.
I am in the process of assembling a brand new Amiga 4000D computer.
- Brand new motherboard
- Brand new BFG9060 (paired with a 68060 rev6 CPU)
- 2MB of ChipRAM (not new)
- Brand new FastATA 4000 MK-VII CF/SATA/SSD Black Edition card.
- Brand new Corsair SF750 PSU with the PSU adapter made by a.mi.goun for ATX 3.0
I have connected a CF-IDE Adapter with a CF card where AmigaOS 3.2.3 is preinstalled (this is the preinstalled CF card from AmigaStore.eu).
This setup works correctly when I connect the CF adapter to the motherboard IDE connector.
But when I switch the IDE cable from the motherboard IDE port to the FastATA port, after the very first write operation occurrs, if I reboot the computer, the filesystem where the copy operation happend becomes corrupted. This is a copy operation executed from a Shell window i.e.:
copy file1.txt file1.bak
everything looks good after the copy, I can even open the new file. But after I reboot, the filesystem is not accessible anymore.
Read operations cause no problems whatsoever.
Interestingly, when I execute a copy operation from a Workbench window (select file, right click -> Icons -> Copy), I get a "Seek error" message and the copy doesn't even finish (as opposed to when executed from Shell).
At first I didn't have the FastATA drivers installed, so I thought that might be the reason, but even after I installed them it is the same.
FastATA Perf tool reports it is running in PIO4 by default. I tried first to lower it to PIO 3, and then even PIO=0 (I pass it as an argument in the Startup-Sequence script to the FastATA driver), but even in PIO=0 the same corruption happens.
Later I found this website: https://grimore.org/fuss/amiga#makin...ide_amigaos_32
I have added the DOWNGRADE keyword to LoadModule, and I moved the FastATA driver load after invoking LoadModule (but before SetPatch)
When the system booted with this script, the first thing I did was open FastATAPerfs, and verify if PIO is indeed 0, all looked good.
The same copy operation still causes the same problem.
I have also tried to set all partitions of my CF card have with the following attributes:
- MaxTransfer=0x1FE00
- Mask=0xFFFFFFFE
That also did not help.
I have also installed MMULib, so that I can use the MuSetCacheMode command to prevent buffered writes and switch to WRITETHROUGH mode. At the same time I also passed the NO32BIT flag (this was a suggestion from Gemini) to the FastATA driver. Below is the relevant part from Startup-Sequence:
Code:
SetPatch >NIL:
MuFastZero
MuSetCacheMode FROM 0x08000000 SIZE 0x08000000 WRITETHROUGH
;------------------- ROM CheckInstall Section ------------------------
Version exec.library version 48 >NIL:
If Warn
Version exec.library version 47 >NIL:
If Warn
LoadModule L:System-Startup ROMUPDATE DOWNGRADE
Else
Version strap version 47 >NIL:
If Warn
LoadModule DOWNGRADE L:Ram-Handler L:Shell-Seg L:System-Startup Libs:dos.library Libs:gadtools.library Libs:graphics.library Libs:intuition.library Libs:Modules/bootmenu >NIL:
Else
Version exec.library revision 9 >NIL:
If Warn
LoadModule DOWNGRADE L:Ram-Handler L:System-Startup Libs:intuition.library Libs:Modules/bootmenu >NIL:
EndIf
Version exec.library revision 11 >NIL:
If Warn
LoadModule DOWNGRADE L:Ram-Handler L:System-Startup Libs:intuition.library Libs:Modules/bootmenu >NIL:
EndIf
EndIf
EndIf
EndIf
Version ram-handler 47 >NIL:
If Warn
C:RequestChoice "WARNING!" "Required V47+ ROM modules not found.*NPlease check installation or try a cold reboot." "OK" >NIL:
QUIT
EndIf
C:CheckLMB
If WARN
SYS:Prefs/FastATAPrefs
EndIf
If EXISTS C:FastATA.driver
C:FastATA.driver PIO=0 NO32BIT QUIET
EndIf
With MMULib in place, I confirmed the two memory regions of the BFG9060 were no longer CopyBack (had no flags at all, MMULib changelog describes this as being in WRITETHROUGH mode, which should be slower, but avoids any potential caching issues).
All in all, this still causes the same problem. It is not random, it feels like a software issue, but no clue what I should be doing.
Any hints would be much appreciated.