Page 1 of 1

Running Coconizer via ADFFS, possible?

Posted: Sat Jun 09, 2018 4:01 pm
by Vanfanel
Hi Jon

I have found this copy of the free program Coconizer 1.3 for Risc OS:
http://ftp.uni-stuttgart.de/pub/systems ... onizer.zip

Is it possible to run it via ADFFS? What "!Run" file should I try it with?
Since the Cononizer sound modules are already supported, it must be easy I believe.

Thanks!

Re: Running Coconizer via ADFFS, possible?

Posted: Sun Jun 10, 2018 11:42 am
by JonAbbott
Vanfanel wrote: Sat Jun 09, 2018 4:01 pm What "!Run" file should I try it with?
You'll need to modify its !Run to start/stop the JIT before/after any 26bit apps/Modules.

Re: Running Coconizer via ADFFS, possible?

Posted: Sun Jun 10, 2018 4:34 pm
by Vanfanel
How's that done exactly? GOARM3JIT? Have you tried Cononizer already? Since you tried the player module, maybe you tried the program itself too.

Re: Running Coconizer via ADFFS, possible?

Posted: Mon Jun 11, 2018 12:20 am
by JonAbbott
Vanfanel wrote: Sun Jun 10, 2018 4:34 pm How's that done exactly? GOARM3JIT?
Yes, its documented in !Help, or just look at another script.
Vanfanel wrote: Sun Jun 10, 2018 4:34 pm Have you tried Coconizer already? Since you tried the player module, maybe you tried the program itself too.
Coconizer is only used by Arcturus, so I've never looked at it or attempted to make it 26/32bit neutral.

Re: Running Coconizer via ADFFS, possible?

Posted: Fri Jun 15, 2018 6:46 pm
by Vanfanel
@Jon: I tried adding
GOARM3JIT 0

to the top of it's !Run file, and also tried moving it to a position just before RunImage is run. In both bases I get "Internal Error: Abort on data transfer at &0120E484"

I have tried adding "winpslot" and "JITMEMORYA" lines from Arcturus before the GOARM3JIT call, but I get aborts on data transfer, too. Any new ideas are welcome.

Re: Running Coconizer via ADFFS, possible?

Posted: Sat Jun 16, 2018 9:22 am
by JonAbbott
Vanfanel wrote: Fri Jun 15, 2018 6:46 pm I get "Internal Error: Abort on data transfer at &0120E484"
It's trying to access an illegal address then, so possibly has a bug in the code or is self-modifiying in an elevated CPU mode - there will be an SWI OS_EnterOS somewhere early in the code.
Vanfanel wrote: Fri Jun 15, 2018 6:46 pm I have tried adding "winpslot" and "JITMEMORYA" lines from Arcturus before the GOARM3JIT call
The WimpSlot isn't required, it will just get 8MB if not set by the Obey or code itself. The JITMEMORYA lines from Arcturus definitely won't be required as they're specific to each program and used to change instructions during the JIT encoder stage.

At this point you need to start inspecting the registers and code around where it crashed to determine why it crashed and how to fix the issue. If ADFFS doesn't trap the abort and report it, then *SHOWREGS will contain the registers, PC and CPU mode the abort occurred in.