Intranet Catprocess
  1. news...
  2. about Blackvoxel
  3. download
  4. manual
  5. videos
  6. about us
  1. Rsr/Wsr - Special register access

    Affected Flags
    C V N Z
    * *
    * *

    rsr : read special registers
    wsr : write special register

    These instructions are used to read and write some special internal registers of the processor. You can read and write into the status flags, program counter, interrupt pending register. * The status flags are not affected by these instruction unless you the wsr instruction to write to the status flag register.

    Forms and variants

    regnum = special internal register number
    rx = destination register number

    Form Effect
    rsr.l #regnum,rx
    Special register #regnum -> rx
    wsr.l #regnum,rx
    Special register #regnum <- rx

    Special Register numbers :

    Special
    register
    Effect
    0
    Processor version and subversion (read only)
    16 bits higher : Version
    16 bits lower  : Subversion
    1
    Status flag (r/w). Read the page about the status flag register for informations about this register.
    2 Program counter (r/w)
    Writing make a jump.
    Value can be read to make relative adress operations.
    3 Interrupt pending register (r/w). Each bit is for one of the 16 interrupt levels.
    A bit set two one mean the interrupt is triggerd.
    4 Last used index register (r/w). The last used index register contains the 4 bits of the last used index register (with the move instruction). This register is used by the inclr register. The 4 bits of this register are part of the status register. But this command provide more direct access.

    Instruction encoding

    I = Special register number
    D = Source register 2
    Instruction Op
    Code
    Cycles Encoding
    rsr.l rx 40 6 01000000 IIIIDDDD
    wsr.l rx 80 6 10000000 IIIIDDDD

    Code Examples

    // Example : todo...
    
    
              
     
     
  2. Google+