AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     reason code:
             0 Copy
             1 Move (rename)
             2 Delete
             3 Set access
             4 Set type
             5 Count
             6 Move (by copying/deleting)
             7 Copy local (within directory)
             8 Stamp files
             9 Find file
     R2 =     options
     R3 =     *pointer* to reason dependent data
     R4 =     length of data (including terminating "\0" for strings)

This SWI sends any remaining leafnames with Message_FilerAddSelection, then starts the selected operation by constructing and sending Message_FilerAction. Reason dependent data is always a pointer, even for word sized data. Usually the data is a destination pathname.

See PRM 2, page 506.
FilerAction 0 (Copy)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     0 (Copy)
     R2 =     options
     R3 =     null terminated destination directory
     R4 =     length (including terminating null)
FilerAction 1 (Rename)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     1 (Rename)
     R2 =     options
     R3 =     null terminated destination directory
     R4 =     length (including terminating null)
FilerAction 2 (Delete)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     2 (Delete)
     R2 =     options
     R3 =     unused
     R4 =     0
FilerAction 3 (Set access)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     3 (Set access)
     R2 =     options
     R3 =     *pointer* to word giving access
     R4 =     4

The high 2 bytes of the word give the mask, the low 2 bytes the value.

New access =     (Old access BIC mask) ORR (Value AND mask)
FilerAction 4 (Set type)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     4 (Set type)
     R2 =     options
     R3 =     *pointer* to word giving numeric filetype
     R4 =     4
FilerAction 5 (Count)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     5 (Count)
     R2 =     options
     R3 =     unused
     R4 =     0
FilerAction 6 (Move)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     6 (Move)
     R2 =     options
     R3 =     null terminated destination directory
     R4 =     length (including terminating null)
FilerAction 7 (Copy local)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     7 (Copy local)
     R2 =     options
     R3 =     null terminated destination object name
     R4 =     length (including terminating null)
FilerAction 8 (Stamp)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     8 (Stamp)
     R2 =     options
     R3 =     unused
     R4 =     0
FilerAction 9 (Find)
=>     R0 =     handle of the task Filer_Action just started.
     R1 =     9 (Find)
     R2 =     options
     R3 =     null terminated name to find
     R4 =     length (including terminating null)

[sh-index] Back to list of manuals