 
 
     The  ASSX  assembler  supports the UBICOM SX family of com-
munication  controllers.   The  processor  family  includes  the
SX18/20/28/42/52 variations.  
 
SX REGISTER SET 
The following is a list of the SX registers used by ASSX.  
        W       -       8-bit working register
        M       -       mode register
The  following  is  a list of the SX special function registers.
(Not all are present in all SX processors.) 
Address
-------
 0x00   INDF    -       indirect addressing register
 0x01   RTCC    -       real time clock/counter
 0x02   PC      -       program counter
 0x03   STATUS  -       ALU status bits
 0x04   FSR     -       File Select Register
 0x05   RA      -       Port RA data register
 0x06   RB      -       Port RB data register
 0x07   RC      -       Port RC data register
 0x08   RD      -       Port RD data register
 0x09   RE      -       Port RE data register
 
SX INSTRUCTION SET 
     The following list specifies the format for each addressing
mode supported by ASSX:  
        W               the working register
        M               the MODE register
        fr              a memory address
                        for a file register
        fr.bit          a memory address
                        for a file register
                        with bit selection (0-7)
        !               Non-memory-mapped register
                        designator prefix
        #lit            immediate data
        label           branch label or value
The terms fr, data, lit, and label may all be expressions.  
     The  following  tables  list all SX mnemonics recognized by
the ASSX assembler.  Note that the argument ordering is dst,src. 
 
Logical Operation Instructions 
        and   fr,W      and   W,fr      and   W,#lit
        or    fr,W      or    W,fr      or    W,#lit
        xor   fr,W      xor   W,fr      xor   W,#lit
        not   fr
Arithmetic and Shift Instructions 
        add   fr,W      add    W,fr
        clr   fr        clr    W        clr    !WDT
        dec   fr        decsz  fr
        inc   fr        incsz  fr
        rl    fr        rr     fr
        sub   fr,W      swap   fr
Bitwise Operation Instructions 
        clrb  fr.bit    setb   fr.bit
        sb    fr.bit    snb    fr.bit
Data Movement Instructions 
        mov   fr,W      mov   W,fr      mov   W,fr-W
        mov   W,#lit    mov   M,#lit
        mov   W,M       mov   M,W
        mov   W,/fr     Move Complement of fr to W
        mov   W,--fr    Move (fr - 1) to W
        mov   W,++fr    Move (fr + 1) to W
        mov   W,<>fr    Rotate fr Right through Carry
                        and move to W
        mov   W,<>fr    Swap High/Low Nibbles of fr
                        and move to W
        mov   !rx,W     Move Data Between W
                        and Control Register
        mov   !option,W Move W to OPTION Register
        movsz W,--fr    Move (fr - 1) to W
                        and Skip if Zero
        movsz W,++fr    Move (fr + 1) to W
                        and Skip if Zero
        test  fr        Test fr for Zero
Program Control Instructions 
        call    label   PC<7:0> <- label
        jmp     label   PC<8:0> <- label
        nop             No Operation
        ret             Return from Subroutine
        retp            Return from Subroutine
                        Across Page Boundary
        reti            Return from interrupt
        retiw           Return from Interrupt
                        and add W to RTCC
        retw    lit     Return from Subroutine
                        with Literal in W
System Control Instructions 
        bank    label   Load Bank Number
        iread           Read Word from
                        Instruction Memory
        page    label   Load Page Number
        sleep           Power Down Mode
Equivalent Assembler Mnemonics 
        clc             Clear Carry Flag
        clz             Clear Zero Flag
        sc              Set Carry Flag
        sz              Set Zero Flag
        jmp   W         Jump Indirect W
        jmp   PC+W      Jump Indirect W Relative
        mode  #lit      Move immediate to MODE Register
        not   W         Complement W
        skip            Skip Next Instruction
  
 ...  Exit the ASxxxx Documentation
...  Exit the ASxxxx Documentation