AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Dynamite_MidExtend     Inserts or deletes bytes at a given offset within a block
On entry     R0 =     address of block anchor
     R1 =     offset within block to add or remove bytes
     R2 =     signed number of bytes to add
On exit     R0 preserved
     R1 =     address of block, which may have moved
Interrupts     Interrupt status is not defined
     Fast interrupts are enabled
Processor mode     Processor is in SVC mode
Re-entrancy     SWI is not re-entrant
Use     This call will, depending on whether R2 is positive or negative, insert or remove bytes from a Dynamite block starting at the offset given in R1.  This may of course cause the block's size to change. Always after a call to Dynamite_MidExtend, the data that was previously at offset R1 is moved to offset R1+R2.
     The diagrams below show the effects of inserting or removing bytes from a block:


     Diagram 1: Inserting bytes


     Diagram 2: Removing bytes

     This SWI may cause blocks to move within the Dynamite heap.
Related SWIs     Dynamite_Resize

[sh-index] Back to list of manuals