FA: Kinetic RiscPC RO 4.02 128Mb 4Gb HD

FA: Kinetic RiscPC RO 4.02 128Mb 4Gb HD

Post by Jonathan Overett Somnie » Tue, 20 Jun 2006 06:55:21


I've listed the above for auction this evening. Please see

Anyone who's interested in collecting should note I'm in the Lewisham
area. Thanks for looking.



1. Help : Toolbox App crashes on RO 4.02 - OK on 3.70

Hi everyone,

I am writing a (moderately large) schematic editor app in C using the
toolbox and have found from a willing tester that it will not run under RO
4.02 (which I do not have yet unfortunately, nor do I have physical access
to one in this neck of the woods). He has confirmed OK on a second 3.7
machine similar to the one I am writing it on.

Modules requested by the !Run are

UtilityModule 3.10
FilterManager 0.09
BorderUtils 0.02
Toolbox 1.23
Window 1.15
Menu 0.15
Iconbar 1.08
ProgInfo 0.05
SaveAs 0.03
ColourMenu 0.10
Scale 0.03
DCS 1.06

It must be fairly drastic as it crashes with "no stack for trap handler etc"
even before the iconbar icon is created/shown (set to auto-create/show). The
iconbar icon is the only thing set to get autocreated, although there is a
2-entry menu attached with Quit and ProgInfo on it. The app's main window
and menu are created manually using toolbox_create_object in the icon's
Toolbox_ObjectAutoCreated event handler, but is not actually shown until the
icon is clicked or a file is loaded.

Fraid I don't know too much about debugging this kind of thing as I am a
relative newcomer to Wimp/C programming.

We have determined (by installing temporary error boxes) that it is getting
through all the event and message registering, loading some line-font data
etc. and is actually arriving OK at the poll loop, containing:

    /////////////////////////////////// poll loop
    while (TRUE)
     if(!nulls_on || (tool != 'N' && tool != 'F'))
         window_set_pointer(0, mainwin_id, 0, 0, 0); // arrow
     else window_set_pointer(0, mainwin_id, "cross", 8, 5); // crosshair/

     _kernel_swi(OS_ReadMonotonicTime, &regs, &regs);
     centiseconds = regs.r[0];
     earliest = centiseconds + 4;
     event_poll_idle(&event_code, &poll_block, earliest, 0);

Not very nice having pointer-setting in there I know, but was done to get
round another problem. Pretty minimal and standard otherwise I think.

Does anyone know of any 'standard' traps that I may be falling into, or is
it more likely to be something obscure that I will need access to a RO4
equipped machine to find?

TIA for any help that can be offered.


Howard Dawson Audio
16 Copeman Rd.
Norwich NR11 6JL.
Tel/Fax: 01263 734361

Internet: http://www.argonet.co.uk/business/hsdawson

2. overriding DEL's Y/N/R option

3. Problem with !Boot RO 4.02

4. Lexmark 5700 on sale for $199 at Staples!!

5. EIDE ZIP and RO 4.02

6. Syslog Utility

7. WTD: SCSI card for RiscPC RiscOS 3.6 - 4.02 Compatible

8. 4Gb H.D.'s - Can some one confirm that they are compatible?

9. RiscTV on RISCOS 4.02

10. RISC OS 4.02

11. FS: RiscOS 4.02 Upgrade pack

12. Tasks Display RISC-OS 4.02