Using the RISC User Toolbox with RISC OS

David Spencer updates the RISC User Toolbox to work with RISC OS.

Since details of RISC OS became available, we have endeavoured to make all our programs fully compatible with it (as well as with Arthur). However, the RISC User Toolbox was started well before RISC OS was announced, and is not fully compatible as it stands. Most of the commands do however function correctly, there being only two problems. Firstly, the disassembler incorrectly shows the destination of branch instructions, and secondly, the command *DEDITF (invoke the disc editor at the start of a named file) does not work. Adding the listing given here to the complete Toolbox source program resolves the first problem, and partly cures the second. The amendments also change the title of the module to 'Toolbox' (instead of 'RiscUserToolbox'). This allows *HELP TOOLBOX to be used.

E-FORMAT DISCS

The 'E' format for discs uses a scatter map technique to allow files to be split in several chunks. Because of this, the *DEDITF command, will not work with 'E' format discs, even with the amendments included (although no harm we result if you try it). The other disc editor commands, DEDIT and DEDITT, work as before. However, care should be exercised when using any disc editor on an 'E' format disc, as the layout of these discs is more complex than that of the other formats. This, coupled with the fact that files are no longer stored in a single contiguous block, makes it all too easy to accidentally destroy a 'sensitive' area of the disc, and possibly render that disc totally unrecoverable.
170 EQUS "Toolbox":EQUB 0
6025 MOV R5,R1:MOV R1,#1:MOV R0,#15
6026 SWI "OS_Byte":MOV R1,R5
10470 MOV R0,#32:ADD R1,R12,#1024
10570 ADD R1,R1,#64
10605 SWI &117:SWI &110
10606 MOV R0,#8:BL sndnull
10880 .swi8 STMFD R13!,{R14}
10890 SWI "Debugger_Disassemble"
10900 LDMFD R13!,{PC}

Delete lines 10910 to 11060.