home *** CD-ROM | disk | FTP | other *** search
- "TASM TMS32025 Assembler."
- /* This is the instruction set definition table
- /* for the TMS32025 version of TASM.
- /* Bob Stricklin
- /*
- /* See TASM manual for info on table structure.
- /*
- /*INSTR ARGS OPCODE BYTES MOD CLASS SHIFT MASK */
- /*-------------------------------------------*/
-
- /* Generate opcodes high byte first */
- .MSFIRST
- /* Don't use '*' as the wild card since it is used for indirect addressing */
- /* In this table '@' is the wild card indicating where expression may appear*/
- .ALTWILD
- .WORDADDRS
- .NOARGSHIFT
-
- /* Addressing mode definitions.
- /* Value gets OR'd in to the opcode if the
- /* addressing mode is recognized
- /* Note: no special classes are defined, so if this
- /* table is used for TMS32020, invalid instructions
- /* will not result in errors (no BR0+/- addressing mode (for example)
- /*
- .REGSET *BR0+ F0 1
- .REGSET *BR0- C0 1
- .REGSET *0+ E0 1
- .REGSET *0- D0 1
- .REGSET *+ A0 1
- .REGSET *- 90 1
- .REGSET * 80 1
-
-
-
-
- ABS "" CE1B 2 NOP 1
-
- ADD !,@,@ 0088 2 T1 1 8 0F00
- ADD !,@ 0080 2 T1 1 8 0F00
- ADD ! 0080 2 NOP 1
- ADD @,@ 0000 2 TDMA 1 8 0F00
- ADD @ 0000 2 T1 1 0 007F
-
- ADDC !,@ 4388 2 T1 1 0 0007
- ADDC ! 4380 2 NOP 1
- ADDC @ 4300 2 T1 1 0 007F
-
- ADDH !,@ 4888 2 T1 1 0 0007
- ADDH ! 4880 2 NOP 1
- ADDH @ 4800 2 T1 1 0 007F
-
- ADDK @ CC00 2 T1 1 0 00FF ;8 bit constant
-
- ADDS !,@ 4988 2 T1 1 0 0007
- ADDS ! 4980 2 NOP 1
- ADDS @ 4900 2 T1 1 0 007F
-
- ADDT !,@ 4A88 2 T1 1 0 0007
- ADDT ! 4A80 2 NOP 1
- ADDT @ 4A00 2 T1 1 0 007F
-
- ADLK @,@ D002 4 TLK 1 8 0F00
- ADLK @ D002 4 TLK 1
-
- ADRK @ 7E00 2 T1 1 0 00FF ;8 bit constant
-
- AND !,@ 4E88 2 T1 1 0 0007
- AND ! 4E80 2 NOP 1
- AND @ 4E00 2 T1 1 0 007F
-
- ANDK @,@ D004 4 TLK 1 8 0F00
- ANDK @ D004 4 TLK 1
-
- APAC "" CE15 2 NOP 1
-
- B @,!,@ FF88 4 TLK 1 0 07
- B @,! FF80 4 SWAP 1
- B @ FF80 4 SWAP 1
-
- BACC "" CE25 2 NOP 1
-
- BANZ @,!,@ FB88 4 TLK 1 0 07
- BANZ @,! FB80 4 SWAP 1
- BANZ @ FB80 4 SWAP 1
-
- BBNZ @,!,@ F988 4 TLK 1 0 07
- BBNZ @,! F980 4 SWAP 1
- BBNZ @ F980 4 SWAP 1
-
- BBZ @,!,@ F888 4 TLK 1 0 07
- BBZ @,! F880 4 SWAP 1
- BBZ @ F880 4 SWAP 1
-
- BC @,!,@ 5E88 4 TLK 1 0 07
- BC @,! 5E80 4 SWAP 1
- BC @ 5E80 4 SWAP 1
-
- BGEZ @,!,@ F488 4 TLK 1 0 07
- BGEZ @,! F480 4 SWAP 1
- BGEZ @ F480 4 SWAP 1
-
- BGZ @,!,@ F188 4 TLK 1 0 07
- BGZ @,! F180 4 SWAP 1
- BGZ @ F180 4 SWAP 1
-
- BIOZ @,!,@ FA88 4 TLK 1 0 07
- BIOZ @,! FA80 4 SWAP 1
- BIOZ @ FA80 4 SWAP 1
-
- BIT !,@,@ 9088 2 T1 1 18 0F00 ;8 bit shift, 1=invert
- BIT !,@ 9080 2 T1 1 18 0F00
- BIT @,@ 9000 2 TDMA 1 18 0F00
-
- BITT !,@ 5788 2 T1 1 0 07
- BITT ! 5780 2 T1 1
- BITT @ 5700 2 T1 1 0 7F
-
- BLEZ @,!,@ F288 4 TLK 1 0 07
- BLEZ @,! F280 4 SWAP 1
- BLEZ @ F280 4 SWAP 1
-
- BLKD @,!,@ FD88 4 TLK 1 0 07
- BLKD @,! FD80 4 TLK 1 0 07
- BLKD @,@ FD00 4 TLK 1 0 FF
-
- BLKP @,!,@ FC88 4 TLK 1 0 07
- BLKP @,! FC80 4 TLK 1 0 07
- BLKP @,@ FC00 4 TLK 1 0 FF
-
- BLZ @,!,@ F388 4 TLK 1 0 07
- BLZ @,! F380 4 SWAP 1
- BLZ @ F380 4 SWAP 1
-
- BNC @,!,@ 5F88 4 TLK 1 0 07
- BNC @,! 5F80 4 SWAP 1
- BNC @ 5F80 4 SWAP 1
-
- BNV @,!,@ F788 4 TLK 1 0 07
- BNV @,! F780 4 SWAP 1
- BNV @ F780 4 SWAP 1
-
- BNZ @,!,@ F588 4 TLK 1 0 07
- BNZ @,! F580 4 SWAP 1
- BNZ @ F580 4 SWAP 1
-
- BV @,!,@ F088 4 TLK 1 0 07
- BV @,! F080 4 SWAP 1
- BV @ F080 4 SWAP 1
-
- BZ @,!,@ F688 4 TLK 1 0 07
- BZ @,! F680 4 SWAP 1
- BZ @ F680 4 SWAP 1
-
- CALA "" CE24 2 NOP 1
-
- CALL @,!,@ FE88 4 TLK 1 0 07
- CALL @,! FE80 4 SWAP 1
- CALL @ FE80 4 SWAP 1
-
- CMPL "" CE27 2 NOP 1
-
- CMPR @ CE50 2 T1 1 0 03 ;2 BIT CONTANT
-
- CNFD "" CE04 2 NOP 1
-
- CNFP "" CE05 2 NOP 1
-
- CONF "" CE3C 2 T1 4 0 03 ; c26 ONLY
-
- DINT "" CE01 2 NOP 1
-
- DMOV !,@ 5688 2 T1 1 0 07
- DMOV ! 5680 2 NOP 1
- DMOV @ 5600 2 T1 1 0 007F
-
- EINT "" CE00 2 NOP 1
-
- FORT @ CE0E 2 T1 1 0 01
-
- IDLE "" CE1F 2 NOP 1
-
- IN !,@,@ 8088 2 T1 1 8 0F00
- IN !,@ 8080 2 T1 1 8 0F00
- IN @,@ 8000 2 TDMA 1 8 0F00
-
- LAC !,@,@ 2088 2 T1 1 8 0F00
- LAC !,@ 2080 2 T1 1 8 0F00
- LAC ! 2080 2 NOP 1
- LAC @,@ 2000 2 TDMA 1 8 0F00
- LAC @ 2000 2 T1 1 0 007F
-
- LACK @ CA00 2 T1 1 0 00FF ;tested for -25
-
- LACT !,@ 4288 2 T1 1 0 07
- LACT ! 4280 2 NOP 1
- LACT @ 4200 2 T1 1 0 007F
-
- LALK @,@ D001 4 TLK 1 8 0F00
- LALK @ D001 4 TLK 1
-
- LAR @,!,@ 3088 2 TAR 1 0 07
- LAR @,! 3080 2 TAR 1 0 07
- LAR @,@ 3000 2 TAR 1 0 7F
-
- LARK @,@ C000 2 TAR 1 0 00FF
- LARP @ 5588 2 T1 1 0 0007
-
- LDP !,@ 5288 2 T1 1 0 07
- LDP ! 5280 2 NOP 1
- LDP @ 5200 2 T1 1 0 007F
-
- LDPK @ C800 2 T1 1 0 01FF ;9 bit constant
-
- LPH !,@ 5388 2 T1 1 0 07
- LPH ! 5380 2 NOP 1
- LPH @ 5300 2 T1 1 0 7F
-
- LRLK @,@ D000 4 T5 1 8 0700 ;<arp>, <const16>
-
- LST !,@ 5088 2 T1 1 0 07
- LST ! 5080 2 NOP 1
- LST @ 5000 2 T1 1 0 7F
-
- LST1 !,@ 5188 2 T1 1 0 07
- LST1 ! 5180 2 NOP 1
- LST1 @ 5100 2 T1 1 0 7F
-
- LT !,@ 3C88 2 T1 1 0 07
- LT ! 3C80 2 NOP 1
- LT @ 3C00 2 T1 1 0 7F
-
- LTA !,@ 3D88 2 T1 1 0 07
- LTA ! 3D80 2 NOP 1
- LTA @ 3D00 2 T1 1 0 7F
-
- LTD !,@ 3F88 2 T1 1 0 07
- LTD ! 3F80 2 NOP 1
- LTD @ 3F00 2 T1 1 0 7F
-
- LTP !,@ 3E88 2 T1 1 0 07
- LTP ! 3E80 2 NOP 1
- LTP @ 3E00 2 T1 1 0 7F
-
- LTS !,@ 5B88 2 T1 1 0 07
- LTS ! 5B80 2 NOP 1
- LTS @ 5B00 2 T1 1 0 7F
-
- MAC @,!,@ 5D88 4 TLK 1 0 07
- MAC @,! 5D80 4 TLK 1 0 07
- MAC @,@ 5D00 4 TLK 1 0 7F
-
- MACD @,!,@ 5C88 4 TLK 1 0 07
- MACD @,! 5C80 4 TLK 1 0 07
- MACD @,@ 5C00 4 TLK 1 0 7F
-
- MAR !,@ 5588 2 T1 1 0 07
- MAR ! 5580 2 NOP 1
- MAR @ 5500 2 T1 1 0 7F
-
- MPY !,@ 3888 2 T1 1 0 07
- MPY ! 3880 2 NOP 1
- MPY @ 3800 2 T1 1 0 7F
-
- MPYA !,@ 3A88 2 T1 1 0 07
- MPYA ! 3A80 2 NOP 1
- MPYA @ 3A00 2 T1 1 0 7F
-
- MPYK @ A000 2 T1 1 0 1FFF ;13 BIT CONTSTANT
-
- MPYS !,@ 3B88 2 T1 1 0 07
- MPYS ! 3B80 2 NOP 1
- MPYS @ 3B00 2 T1 1 0 7F
-
- MPYU !,@ CF88 2 T1 1 0 07
- MPYU ! CF80 2 NOP 1
- MPYU @ CF00 2 T1 1 0 7F
-
- NEG "" CE23 2 NOP 1
-
- NOP "" 5500 2 NOP 1
-
- NORM ! CE82 2 NOP 1 ; C25
- NORM "" CEA2 2 NOP 1 ; C20
-
- OR !,@ 4D88 2 T1 1 0 07
- OR ! 4D80 2 NOP 1
- OR @ 4D00 2 T1 1 0 7F
-
- ORK @,@ D005 4 TLK 1 8 0F00
- ORK @ D005 4 TLK 1
-
- OUT !,@,@ E088 2 T1 1 8 0F00
- OUT !,@ E080 2 T1 1 8 0F00
- OUT @,@ E000 2 TDMA 1 8 0F00
-
- PAC "" CE14 2 NOP 1
-
- POP "" CE1D 2 NOP 1
-
- POPD !,@ 7A88 2 T1 1 0 07
- POPD ! 7A80 2 NOP 1
- POPD @ 7A00 2 T1 1 0 7F
-
- PSHD !,@ 5488 2 T1 1 0 07
- PSHD ! 5480 2 NOP 1
- PSHD @ 5400 2 T1 1 0 7F
-
- PUSH "" CE1C 2 NOP 1
- RC "" CE30 2 NOP 1
- RET "" CE26 2 NOP 1
- RFSM "" CE36 2 NOP 1
- RHM "" CE38 2 NOP 1
- ROL "" CE34 2 NOP 1
- ROR "" CE35 2 NOP 1
- ROVM "" CE02 2 NOP 1
-
- RPT !,@ 4B88 2 T1 1 0 07
- RPT ! 4B80 2 NOP 1
- RPT @ 4B00 2 T1 1 0 7F
-
- RPTK @ CB00 2 T1 1 0 00FF ;8 bit constant
-
- RSXM "" CE06 2 NOP 1
- RTC "" CE32 2 NOP 1
- RTXM "" CE20 2 NOP 1
- RXF "" CE0C 2 NOP 1
-
- /* shift count for SACH can only be 0,1, or 4 FOR 32020
- /* 0-7 FOR 320c25. For now, build the table specifically for the 320C25
- SACH !,@,@ 6888 2 T1 1 8 0700
- SACH !,@ 6880 2 T1 1 8 0700
- SACH ! 6880 2 NOP 1
- SACH @,@ 6800 2 TDMA 1 8 0700
- SACH @ 6800 2 T1 1 0 007F
-
- SACL !,@,@ 6088 2 T1 1 8 0700
- SACL !,@ 6080 2 T1 1 8 0700
- SACL ! 6080 2 NOP 1
- SACL @,@ 6000 2 TDMA 1 8 0700
- SACL @ 6000 2 T1 1 0 007F
-
- SAR @,!,@ 7088 2 TAR 1 0 0007
- SAR @,! 7080 2 TAR 1 0 0007
- SAR @,@ 7000 2 TAR 1 0 007F
-
- SBLK @,@ D003 4 TLK 1 8 0F00
- SBLK @ D003 4 TLK 1
-
- SBRK @ 7F00 2 T1 1 0 00FF
-
- SC "" CE31 2 NOP 1
- SFL "" CE18 2 NOP 1
- SFR "" CE19 2 NOP 1
- SFSM "" CE37 2 NOP 1
- SHM "" CE39 2 NOP 1
- SOVM "" CE03 2 NOP 1
- SPAC "" CE16 2 NOP 1
-
- SPH !,@ 7D88 2 T1 1 0 07
- SPH ! 7D80 2 NOP 1
- SPH @ 7D00 2 T1 1 0 7F
-
- SPL !,@ 7C88 2 T1 1 0 07
- SPL ! 7C80 2 NOP 1
- SPL @ 7C00 2 T1 1 0 7F
-
- SPM @ CE08 2 T1 1 0 03 ;2 bit constant
-
- SQRA !,@ 3988 2 T1 1 0 07
- SQRA ! 3980 2 NOP 1
- SQRA @ 3900 2 T1 1 0 7F
-
- SQRS !,@ 5A88 2 T1 1 0 07
- SQRS ! 5A80 2 NOP 1
- SQRS @ 5A00 2 T1 1 0 7F
-
- SST !,@ 7888 2 T1 1 0 07
- SST ! 7880 2 NOP 1
- SST @ 7800 2 T1 1 0 7F
-
- SST1 !,@ 7988 2 T1 1 0 07
- SST1 ! 7980 2 NOP 1
- SST1 @ 7900 2 T1 1 0 7F
-
- SSXM "" CE07 2 NOP 1
- STC "" CE33 2 NOP 1
- STXM "" CE21 2 NOP 1
-
-
- SUB !,@,@ 1088 2 T1 1 8 0F00
- SUB !,@ 1080 2 T1 1 8 0F00
- SUB ! 1080 2 NOP 1
- SUB @,@ 1000 2 TDMA 1 8 0F00
- SUB @ 1000 2 T1 1 0 007F
-
- SUBB !,@ 4F88 2 T1 1 0 07
- SUBB ! 4F80 2 NOP 1
- SUBB @ 4F00 2 T1 1 0 7F
-
- SUBC !,@ 4788 2 T1 1 0 07
- SUBC ! 4780 2 NOP 1
- SUBC @ 4700 2 T1 1 0 7F
-
- SUBH !,@ 4488 2 T1 1 0 07
- SUBH ! 4480 2 NOP 1
- SUBH @ 4400 2 T1 1 0 7F
-
- SUBK @ CD00 2 T1 1 0 00FF
-
- SUBS !,@ 4588 2 T1 1 0 07
- SUBS ! 4580 2 NOP 1
- SUBS @ 4500 2 T1 1 0 7F
-
- SUBT !,@ 4688 2 T1 1 0 07
- SUBT ! 4680 2 NOP 1
- SUBT @ 4600 2 T1 1 0 7F
-
- SXF "" CE0D 2 NOP 1
-
- TBLR !,@ 5888 2 T1 1 0 07
- TBLR ! 5880 2 NOP 1
- TBLR @ 5800 2 T1 1 0 7F
-
- TBLW !,@ 5988 2 T1 1 0 07
- TBLW ! 5980 2 NOP 1
- TBLW @ 5900 2 T1 1 0 7F
-
- TRAP "" CE1E 2 NOP 1
-
- XOR !,@ 4C88 2 T1 1 0 07
- XOR ! 4C80 2 NOP 1
- XOR @ 4C00 2 T1 1 0 7F
-
- XORK @,@ D006 4 TLK 1 8 0F00
- XORK @ D006 4 TLK 1
-
- ZAC "" CA00 2 NOP 1
-
- ZALH !,@ 4088 2 T1 1 0 07
- ZALH ! 4080 2 NOP 1
- ZALH @ 4000 2 T1 1 0 7F
-
- ZALR !,@ 7B88 2 T1 1 0 07
- ZALR ! 7B80 2 NOP 1
- ZALR @ 7B00 2 T1 1 0 7F
-
- ZALS !,@ 4188 2 T1 1 0 07
- ZALS ! 4180 2 NOP 1
- ZALS @ 4100 2 T1 1 0 7F
-
-