Calculator User Manual
Table Of Contents
- Read This First
 - Contents
 - Figures
 - Tables
 - Examples
 - Cautions
 - Introduction
 - Architectural Overview
 - Central Processing Unit
 - Memory and I/O Spaces
 - Program Control
 - Addressing Modes
 - Assembly Language Instructions
- Instruction Set Summary
 - How To Use the Instruction Descriptions
 - Instruction Descriptions
- ABS
 - ABS
 - ADD
 - ADD
 - ADD
 - ADD
 - ADDC
 - ADDC
 - ADDS
 - ADDS
 - ADDT
 - ADDT
 - ADRK
 - AND
 - AND
 - AND
 - APAC
 - APAC
 - B
 - BACC
 - BANZ
 - BANZ
 - BCND
 - BCND
 - BIT
 - BIT
 - BITT
 - BITT
 - BLDD
 - BLDD
 - BLDD
 - BLDD
 - BLDD
 - BLPD
 - BLPD
 - BLPD
 - BLPD
 - CALA
 - CALL
 - CC
 - CC
 - CLRC
 - CLRC
 - CMPL
 - CMPR
 - DMOV
 - DMOV
 - IDLE
 - IN
 - IN
 - INTR
 - LACC
 - LACC
 - LACC
 - LACL
 - LACL
 - LACL
 - LACT
 - LACT
 - LAR
 - LAR
 - LAR
 - LDP
 - LDP
 - LPH
 - LPH
 - LST
 - LST
 - LST
 - LST
 - LT
 - LT
 - LTA
 - LTA
 - LTD
 - LTD
 - LTD
 - LTP
 - LTP
 - LTS
 - LTS
 - MAC
 - MAC
 - MAC
 - MAC
 - MACD
 - MACD
 - MACD
 - MACD
 - MACD
 - MAR
 - MAR
 - MPY
 - MPY
 - MPY
 - MPYA
 - MPYA
 - MPYS
 - MPYS
 - MPYU
 - MPYU
 - NEG
 - NEG
 - NMI
 - NOP
 - NORM
 - NORM
 - NORM
 - OR
 - OR
 - OR
 - OUT
 - OUT
 - PAC
 - POP
 - POP
 - POPD
 - POPD
 - PSHD
 - PSHD
 - PUSH
 - RET
 - RETC
 - ROL
 - ROR
 - RPT
 - RPT
 - SACH
 - SACH
 - SACL
 - SACL
 - SAR
 - SAR
 - SBRK
 - SETC
 - SETC
 - SFL
 - SFR
 - SFR
 - SPAC
 - SPH
 - SPH
 - SPL
 - SPL
 - SPLK
 - SPLK
 - SPM
 - SQRA
 - SQRA
 - SQRS
 - SQRS
 - SST
 - SST
 - SUB
 - SUB
 - SUB
 - SUB
 - SUBB
 - SUBB
 - SUBC
 - SUBC
 - SUBS
 - SUBS
 - SUBT
 - SUBT
 - TBLR
 - TBLR
 - TBLR
 - TBLW
 - TBLW
 - TBLW
 - TRAP
 - XOR
 - XOR
 - XOR
 - ZALR
 - ZALR
 
 
 - On-Chip Peripherals
 - Synchronous Serial Port
 - Asynchronous Serial Port
 - TMS320C209
 - Register Summary
 - TMS320C1x/C2x/C2xx/C5x Instruction Set Comparison
 - Program Examples
 - Submitting ROM Codes to TI
 - Design Considerations for Using XDS510 Emulator
- E.1 Designing Your Target System’s Emulator Connector (14-Pin Header)
 - E.2 Bus Protocol
 - E.3 Emulator Cable Pod
 - E.4 Emulator Cable Pod Signal Timing
 - E.5 Emulation Timing Calculations
 - E.6 Connections Between the Emulator and the Target System
 - E.7 Physical Dimensions for the 14-Pin Emulator Connector
 - E.8 Emulation Design Considerations
 
 - Glossary
 - Index
 

Task-Specific Program Code
C-11
Program Examples
Example C–7. Implementing a HOLD Operation (hold.asm)
* File: hold.asm *
* Function: HOLD test code *
* Check for HOLDA toggle for HOLD requests in MODE 0 *
* Check for XF toggle on HOLD/INT1 requests in MODE 1 *
.title ” HOLD Test ” ; Title
.mmregs
icr .set 0FFECh ; Interrupt control register in I/O space
icrshdw .set 060h ; scratch pad location
* Interrupt vectors
.text
reset B main ; 0–reset , Branch to main program on reset
int1h B int1_hold ; 1–external interrupt 1 or HOLD
.space 40*16
*********Interrupt service routine ISR for HOLD logic*************************
main: splk #0001h,imr
clrc intm
wait: b wait
int1_hold:
; Perform any desired context save
ldp #0
in icrshdw, icr ; save the contents of ICR register
lacl #010h ; load ACC with mask for MODE bit
and icrshdw ; Filter out all bits except MODE bit
bcnd int1,neq ; Branch if MODE bit is 1, else in HOLD mode
lacc imr, 0 ; load ACC with interrupt mask register
splk #1, imr ; mask all interrupts except interrupt1/HOLD
idle ; enter HOLD mode, issues HOLDA
; and the busses will be in tristate
splk #1, ifr ; Clear HOLD/INT1 flag to prevent
; re–entering HOLD mode
sacl imr ; restore interrupt mask register
; Perform necessary context restore
clrc intm ; enable all interrupts
ret ; return from HOLD interrupt
int1: nop ; Replace this with desired INT1 interrupt
nop ; service routine
setc xf ; Dummy toggle to check the loop entry
clrc xf ; in MODE 1
splk #0001,ifr
clrc intm ; enable all interrupts
ret ; return from interrupts










