aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/msp430/itc430core.asm
blob: 1d84882002a82a02071962b9be891772ecfb704f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
; --------------------------------------
; include all assembly primitves first

.include "words/execute.asm"
.include "words/lit.asm"
.include "words/exit.asm"
.include "words/variable.asm"
.include "words/constant.asm"

.include "words/do-variable.asm"
.include "words/do-constant.asm"
.include "words/do-does.asm"
.include "words/user.asm"

; ----------------------------------------------------------------------
; STACK OPERATIONS

.include "words/dup.asm"
.include "words/qdup.asm"
.include "words/drop.asm"
.include "words/swap.asm"
.include "words/over.asm"
.include "words/rot.asm"
.include "words/nip.asm"
.include "words/tuck.asm"

.include "words/to-r.asm"
.include "words/r-from.asm"
.include "words/r-fetch.asm"
.include "words/2-to-r.asm"
.include "words/2-r-from.asm"

.include "words/sp-fetch.asm"
.include "words/sp-store.asm"
.include "words/rp-fetch.asm"
.include "words/rp-store.asm"


; ----------------------------------------------------------------------
; MEMORY OPERATIONS

.include "words/fetch.asm"
.include "words/store.asm"
.include "words/c-fetch.asm"
.include "words/c-store.asm"


; ----------------------------------------------------------------------
; ARITHMETIC OPERATIONS

.include "words/plus.asm"
.include "words/plus-store.asm"
.include "words/m-plus.asm"
.include "words/minus.asm"
.include "words/and.asm"
.include "words/or.asm"
.include "words/xor.asm"
.include "words/invert.asm"
.include "words/negate.asm"
.include "words/1-plus.asm"
.include "words/1-minus.asm"
.include "words/byte-swap.asm"
.include "words/2-star.asm"
.include "words/2-slash.asm"
.include "words/lshift.asm"
.include "words/rshift.asm"

; ----------------------------------------------------------------------
; COMPARISON OPERATIONS 

.include "words/zero-equal.asm"
.include "words/zero-less.asm"
.include "words/equal.asm"
.include "words/not-equal.asm"
.include "words/less.asm"
.include "words/greater.asm"
.include "words/u-less.asm"
.include "words/u-greater.asm"

; ----------------------------------------------------------------------
; LOOP AND BRANCH OPERATIONS 

.include "words/branch.asm"
.include "words/q-branch.asm"
.include "words/do-do.asm"
.include "words/do-loop.asm"
.include "words/do-plusloop.asm"
.include "words/i.asm"
.include "words/j.asm"
.include "words/unloop.asm"

; ----------------------------------------------------------------------
; MULTIPLY AND DIVIDE

.include "words/um-star.asm"
.include "words/um-slash-mod.asm"

; ----------------------------------------------------------------------
; BLOCK AND STRING OPERATIONS

.include "words/fill.asm"
.include "words/cmove.asm"
.include "words/cmove-up.asm"
.include "words/cskip.asm"
.include "words/cscan.asm"
.include "words/s-equal.asm"

; ----------------------------------------------------------------------
; ALIGNMENT AND PORTABILITY OPERATORS 
; Many of these are synonyms for other words,
; and so are defined as CODE words.
.include "words/align.asm"
.include "words/aligned.asm"
.include "words/cellplus.asm"
.include "words/cells.asm"
.include "words/to-body.asm"
.include "words/up.asm"

; --------------------------------------------
; Interrupt routines
;
.if WANT_INTERRUPTS==1
.include "words/int-on.asm"
.include "words/int-off.asm"
.include "words/int-trap.asm"
.include "words/int-fetch.asm"
.include "words/int-store.asm"
.include "words/isr-exec.asm"
.endif