It's versioned 2.68 and ADFSUtils isn't present, so yes it should be possible.danielj wrote:Can we not just use ADFS from 3.19 and patch that?
EDIT: A pre-patched version is attached to the OP
It's versioned 2.68 and ADFSUtils isn't present, so yes it should be possible.danielj wrote:Can we not just use ADFS from 3.19 and patch that?
If there's one thing that gets my goat up, it's profiteering on the need for 3rd party IDE modules and mouse/keyboard adapters! This is really my main drive behind resolving these issues. On the keyboard/mouse adapter front, I have designed boards based on other designs and purchased bulk parts to make them, I just haven't had the time to test the design or look into possible SMD manufacturing instead. I could really use someone to come on board with me to get that moving.danielj wrote:
Really great work on this Jon It will also bring down the price of 8-bit IDE minipodules
Spooky, I've been up since 5am compiling a post on just this very subject.danielj wrote: Is "re-rolling" the OS for burning onto new ROMs fairly straightforward? It looks like it needs to go onto 27c800s (I think the Amiga community use these reasonably frequently, and they seem to be reasonably available).
I've tested ADFS268 on my A3020 this evening - I can confirm that this modified ADFS is working nicely with all the CF cards that I've got, including some *inexpensive* fleabay 512Mb Cisco CF cards that I could never previously get to work on any RISC OS system. I've also tested the following CF cards in the A3020 with ADFS268: a pair of Sandisk 512Mb cards, a Lexar Platinum 40x 512Mb, and a Transcend 80x 512Mb - all working, though my tests have not been exhaustive. In the case of the Cisco, and Transcend cards, these previously failed with Disc error 23, but ADFS268 has fixed this problem.sirbod wrote:Can I assume from the one person that's downloaded the pre-patched ADFS268, that all the SD/CF compatibility issues pre RiscPC are now resolved?
I investigated this a few years ago and found the above fix which was to strap -IOCS16 to an adjacent pin on the adapter which was at 0v (i.e. pin 32 to pin 30). The other thing to be aware of with CF cards is that they can stop the NIC from working and I posted details of the fix for that here:sirbod wrote: SATA->IDE is a different issue.
...
This can only be resolved with a hardware solution, one option is to use an adapter that does control -IOCS16. I've looked at dozens on eBay today and even though they say they support PIO, none of them visually appear to control -IOCS16, the pin appears to have no connection.
...
A more drastic option is to modify the RiscPC motherboard, by removing the pull up resistor on -IOCS16 and grounding it instead to force 16 bit transfers. Alternatively, modify an IDE cable to do the pull down.
...
This is all just a theory mind you, something that would need testing by someone more electronically minded than myself.
It should really be pulled down via a 1k8 resistor as its TTL 5v. I have previously tested both pull-down and grounding and found it's not always consistent, in that it sometimes works and other times doesn't. Unfortunately, I've not had any free time to investigate further since fixing both Disc Error 20 and 21, which may also play a factor.IanB wrote:I investigated this a few years ago and found the above fix which was to strap -IOCS16 to an adjacent pin on the adapter which was at 0v (i.e. pin 32 to pin 30).
That is very useful to know, I'm not sure how I missed your original post on the subject but it will save me investigating the issue further. I'm planning on making a small board to go between the motherboard and IDE cable, so a fix can be retroactively applied without modifying either the adapter or the motherboard.IanB wrote:"The problem is caused by the "Ready" signal on Pin 27 of the IDE interface which is shared with the network card. It's probably meant to be pulled high weakly and driven low by open drain outputs on the network and IDE interface, however it looks like the adapters and some CF card are driving it high which causes any network card that makes use of that signal to fail.
However, the fix is fairly straightforward and that is to put a diode in the Ready line between the CF cards and the IDE socket on the RISC PC with the cathode of the diode (banded end) towards the CF card.
I used a schottky diode as that had a lower voltage drop but any small signal diode like a 1N4148 should work. I found it easier to cut wire 27 of the IDE cable to fit the diode rather than modify the PCB."
Just posting an update to say that the ROM patch is now included as standard in the ROOL hard disc image. I.e. future visitors to this thread should probably download the patch from there instead of using whatever crusty old version I have on my website!sirbod wrote: ↑Thu Nov 30, 2017 8:38 amCan I also presume that Disc Error 23 does not occur on A7000/RiscPC, meaning all the compatibility issues are resolved by Jeffrey's beta ROMpatch, or the patcher in the OP? Jeffrey's updated ROMpatch should be used in preference, as it hangs off TickerV instead of stalling the CPU.
Is this for the 5th Column rom socket? It will take a 28-pin eprom with the link set correctly.
Loading the patched ADFS 2.68 in the OP should get them working, admittedly not much use unless you boot from floppy first.
Digging this thread up: I found these fixes very helpful when trying to get a Castle IDE podule working with a CF, any CF at all, on an A440 with RISC OS 3.11.sirbod wrote: ↑Wed Nov 08, 2017 7:53 am I've been looking at these issues on a RiscPC and have now tested dozens of SD/CF/SATA devices on the native IDE with stock ADFS in RISC OS 3.70.
(snip)
Fix Disc Error 20 and 23 on A3020, A4000, A5000 - use ADFS268 attached below in preference to thisCode: Select all
REM Live patch ADFS pre RiscPC for Disc Error 20 / 23 ...
An IDE podule that provides the ADFS hooks? The only time I've heard of this before was PhilB's Amazing Ethernet/storage/etc podule.