SX/B Aliases |
SX Registers
SX18 | SX20 | SX28 | SX48 | SX52 | |||||
• IND | Indirect Register | $00 | |||||||
• RTCC | Real Time Clock/Counter | $01 | |||||||
• PC | Program Counter | $02 | |||||||
• STATUS | Status Register | $03 | |||||||
• PA2 | Page Select bit 2 | STATUS.7 | |||||||
• PA1 | Page Select bit 1 | STATUS.6 | |||||||
• PA0 | Page Select bit 0 | STATUS.5 | |||||||
• TO | Time Out | STATUS.4 | |||||||
• PD | Power Down | STATUS.3 | |||||||
• Z | Zero | STATUS.2 | |||||||
• DC | Digit Carry | STATUS.1 | |||||||
• C | Carry | STATUS.0 | |||||||
• FSR | File Select Register | $04 | |||||||
• RA | Port A | $05 | |||||||
• RB | Port B | $06 | |||||||
• RC | Port C | $07 | |||||||
• RD | Port D | $08 | |||||||
• RE | Port E | $09 | |||||||
• RBC | Ports B & C as 16-bit entity | $06 (LSB) + $07 (MSB) | |||||||
• RCD | Ports C & D as 16-bit entity | $07 (LSB) + $08 (MSB) | |||||||
• RDE | Ports D & E as 16-bit entity | $08 (LSB) + $09 (MSB) | |||||||
• PORTA | Port A | $05 | |||||||
• PORTB | Port B | $06 | |||||||
• PORTC | Port C | $07 | |||||||
• PORTD | Port D | $08 | |||||||
• PORTE | Port E | $09 | |||||||
• TRIS_A | Data Direction register for RA | ||||||||
• TRIS_B | Data Direction register for RB | ||||||||
• TRIS_C | Data Direction register for RC | ||||||||
• TRIS_D | Data Direction register for RD | ||||||||
• TRIS_E | Data Direction register for RE | ||||||||
• PLP_A 1 | Pull-Up resistor enable for RA | ||||||||
• PLP_B 1 | Pull-Up resistor enable for RB | ||||||||
• PLP_C 1 | Pull-Up resistor enable for RC | ||||||||
• PLP_D 1 | Pull-Up resistor enable for RD | ||||||||
• PLP_E 1 | Pull-Up resistor enable for RE | ||||||||
• LVL_A 1 | TTL/CMOS select for RA | ||||||||
• LVL_B 1 | TTL/CMOS select for RB | ||||||||
• LVL_C 1 | TTL/CMOS select for RC | ||||||||
• LVL_D 1 | TTL/CMOS select for RD | ||||||||
• LVL_E 1 | TTL/CMOS select for RE | ||||||||
• ST_B 1 | Schmitt-Trigger enable for RB | ||||||||
• ST_C 1 | Schmitt-Trigger enable for RC | ||||||||
• ST_D 1 | Schmitt-Trigger enable for RD | ||||||||
• ST_E 1 | Schmitt-Trigger enable for RE | ||||||||
• WKEN_B 1 | Wake Up enable register | ||||||||
• WKED_B 1 | Wake Up edge select register | ||||||||
• WKPND_B 1, 2 | MIWU pending register | ||||||||
• CMP_B 1, 2 | Comparator enable register | ||||||||
• T1CPL | Low byte of Timer T1 capture register | ||||||||
• T1CPH | High byte of Timer T1 capture register | ||||||||
• T1R1CML | Low byte of Timer T1 compare register 1 | ||||||||
• T1R1CMH | High byte of Timer T1 compare register 1 | ||||||||
• T1R2CML | Low byte of Timer T1 compare register 2 | ||||||||
• T1R2CMH | High byte of Timer T1 compare register 2 | ||||||||
• T1CNTA | Timer T1 control register A | ||||||||
• T1CNTB | Timer T1 control register B | ||||||||
• T2CPL | Low byte of Timer T2 capture register | ||||||||
• T2CPH | High byte of Timer T2 capture register | ||||||||
• T2R1CML | Low byte of Timer T2 compare register 1 | ||||||||
• T2R1CMH | High byte of Timer T2 compare register 1 | ||||||||
• T2R2CML | Low byte of Timer T2 compare register 2 | ||||||||
• T2R2CMH | High byte of Timer T2 compare register 2 | ||||||||
• T2CNTA | Timer T2 control register A | ||||||||
• T2CNTB | Timer T2 control register B | ||||||||
• MODE | Mode register | ||||||||
• M | Mode register | ||||||||
• OPTION | Option register |
SX/B Variables
SX18 | SX20 | SX28 | SX48 | SX52 | |||||
• __RAM() | Provides access to any RAM address | $00 | |||||||
• __PARAM1 | First byte parameter | $08 / $0A * | |||||||
• __PARAM2 | Second byte parameter | $09 / $0B * | |||||||
• __PARAM3 | Third byte parameter | $0A / $0C * | |||||||
• __PARAM4 | Fourth byte parameter | $0B / $0E * | |||||||
• __WPARAM12 | First word parameter | $08,09 / $0A,$0B * | |||||||
• __WPARAM23 | Second word parameter | $09,$0A / $0B,$0C * | |||||||
• __WPARAM34 | Third word parameter | $0A,$0B / $0C,$0D * | |||||||
• __REMAINDER | Remainder after a division | $08 / $0A * | |||||||
• __WREMAINDER | Remainder after a division | $08,$09 / $0A,$0B * | |||||||
• __PARAMCNT | Number of parameters passed to subroutine | $0C / $0E * | |||||||
• __INTPARAMFSR | Save/Restore location of "M" and __PARAMx | $F5 | |||||||
• __TRISA † | TRIS_A copy | $FA | |||||||
• __TRISB † | TRIS_B copy | $FB | |||||||
• __TRISC † | TRIS_C copy | $FC | |||||||
• __TRISD † | TRIS_D copy | $FD | |||||||
• __TRISE † | TRIS_E copy | $FE |
SX/B Constants
SX18 | SX20 | SX28 | SX48 | SX52 | |||||
• __FREQMHZ | Frequency (in MHz) as set in FREQ directive. |
* Note: Location depends on module used: SX18/20/28 or
SX48/52
† Note: These registers must not be modified by the
programmer, otherwise some SX/B instructions will be adversely affected.