ICS Wizzo IDEFS for A5000/A4 (+A3020/A4000...) improves CF card support!

Arc/RPCs, peripherals, RISCOS operating system & ARM kit eg GP2x, BeagleBoard
steve3000
Posts: 1711
Joined: Sun Nov 25, 2012 12:43 am

Re: ICS Wizzo IDEFS for A5000/A4 (+A3020/A4000...) improves CF card support!

Postby steve3000 » Fri Oct 20, 2017 8:26 pm

sirbod wrote:The source has a 30 sec timeout for reads, so is it actually waiting 30 seconds before reporting the error?

Yes, at least 30 seconds. It felt like longer, but maybe I was impatient, or possibly it tries more than once...?

sirbod
Posts: 742
Joined: Mon Apr 09, 2012 8:44 am
Location: Essex
Contact:

Re: ICS Wizzo IDEFS for A5000/A4 (+A3020/A4000...) improves CF card support!

Postby sirbod » Fri Oct 20, 2017 8:36 pm

steve3000 wrote:Yes, at least 30 seconds. It felt like longer, but maybe I was impatient, or possibly it tries more than once...?

See what it does if you remove the timeout, I've not tested this but hopefully you'll get just one hit:

Code: Select all

DIM temp% 8
P%=temp%
[OPT 2
SUBS R0,R0,#1
STR R0,[R12,#504]
]
C%=!temp%
D%=temp%?6
E%=temp%?7

SYS "OS_Module",18,"ADFS" TO ,,,A%
S%=!(A%-4)

DIM adfs% S%
FOR L%=0 TO S% STEP 4
  Z%=A%!L%:X%=?(A%+L%+6):Y%?(A%+L%+7)
  IF Z%=C% AND X%=D% AND Y%=E% THEN
    adfs%!L%=&E1A00000
    PRINT "Read timeout removed ("+STR$~L%+")"
  ELSE
    adfs%!L%=Z%
  ENDIF
NEXT

OSCLI "SAVE $.ADFS "+STR$~adfs%+"+"+STR$~S%
*SetType $.ADFS Module


EDIT: There are four occurrences of Disc error 23, we need to figure out which one is being generated:
adfs13 #1
adfs13 #2
adfs14 #1
adfs14 #2

I suspect it might be adfs13 #1

EDIT 2: There's actually a bug in adfs13 #1 as the STR R5,WinTickCount should occur inside the loop which starts after the next line, labelled 10. As it stands, should the whole transfer take more than 10 seconds, it will generate Disc Error 23.


Return to “hardware”

Who is online

Users browsing this forum: Bing [Bot] and 4 guests