forked from z88dk/z88dk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ti.txt
166 lines (130 loc) · 4.77 KB
/
ti.txt
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
-------------------------------------------------------------------------------
Compiling for the Ti82, Ti83(+), Ti85 and Ti86 ; By Henk Poley ; 05-jun-2001
-------------------------------------------------------------------------------
general compilation command:
zcc [+..] [-startup=..] [-o..] [-l..] [flags] file(s)
[+..]
- Config file to load:
Ti82
Ti82ansi
Ti83
Ti83ansi
Ti8x
Ti8xansi
Ti85
Ti85ansi
Ti86
Ti86ansi
[-startup=..]
- Startup header to use (see below for values)
[-o..]
- Binary output file (standard a.bin)
[-l..]
- Link this library (see zcc.html for others):
tigray82
tigray83
tigray83p
tigray85
tigray86
[flags]
- For other flags see compile.txt
file(s)
- File(s) to compile
-------------------------------------------------------------------------------
Ti82:
compiles for CrASH (always)
#pragma string name xxx
- program description, max 22 characters (approx)
#pragma output nostreams
- If you just don't use the streams at all (no text and file-stuff)
#pragma output atexit
- If you use the atexit() command (uses 64 bytes extra stack).
-------------------------------------------------------------------------------
Ti83:
zcc [+..] [-startup=..] [-o..] [-l..] file(s)
-startup =
n - Primary shell(s); compatible shell(s)
(Primary shell merely means it's the smallest implementation
for that shell, that uses full capabilities of the shell)
1 - Ion; Ti-Explorer (default)
2 - Venus;
3 - ZES;
4 - Anova; SOS
5 - Ti-Explorer, AShell; SOS, Anova (same as 6)
6 - AShell, Ti-Explorer; SOS, Anova (same as 5)
7 - SOS; Anova
8 - Venus Explorer (VE); Venus
9 - Ion, Ti-Explorer; ZASMLOAD, plain TIOS
10 - Plain TIOS, ZASMLOAD
#pragma string name xxx
- program description, max 22 characters (approx)
#pragma data icon xx,xx,xx;
- shell icon 5 (Anova), 7 (VE), or 8 (rest) bytes long.
Bigger icons won't brake anything, they are just displayed truncated
(with most of the shells). Standard icon is "C+".
#pragma output nostreams
- If you just don't use the streams at all (no text and file-stuff)
#pragma output atexit
- If you use the atexit() command (uses 64 bytes extra stack).
-------------------------------------------------------------------------------
Ti83+ (Second Edition):
zcc -startup =
n - Primary shell, compatible shells
(Primary shell merely means it's the smallest implementation
for that shell, that uses full capabilities of the shell)
1 - Ion (default)
2 - MirageOS without quit key
3 - MirageOS with quit key - *dangerous* (possibly)
4 - TSE Kernel
#pragma string name xxx
- program description, max 22 characters (approx)
#pragma data icon xx,xx,xx;
- shell icon 8 bytes long. Standard icon is "C+".
#pragma data mirage_icon xx,xx,xx;
- Icon for MirageOS, 16 bytes long. Standard icon is a 'map' with
"C+" written on it.
#pragma output GimmeSpeed
- Will switch the Ti83+ Second Edition to 15MHz during runtime.
Setting this when compiling for the normal Ti83+ won't brake
anything. It will return to the shell at the normal 6MHz.
This won't work when using grayscale, until there is made a
"high speed" IM2 grayscale interrupt...
NOTE: Only works with ROM v1.13 and higher.
#pragma output StackNeeded = nnn;
- External Data Required for virtual stack.
TSE uses this value, it is standard set to 400 bytes, which equals
to the normal stackspace of the Ti83+. When you think your program
uses more or less than that, try a bit to find the best value.
#pragma output nostreams
- If you just don't use the streams at all (no text and file-stuff)
#pragma output atexit
- If you use the atexit() command (uses 64 bytes extra stack).
-------------------------------------------------------------------------------
Ti85:
compiles for Rigel (always)
#pragma string name xxx
- program description
#pragma output nostreams
- If you just don't use the streams at all (no text and file-stuff)
#pragma output atexit
- If you use the atexit() command (uses 64 bytes extra stack).
-------------------------------------------------------------------------------
Ti86:
zcc -startup =
n - Primary shell(s); compatible shell(s)
(Primary shell merely means it's the smallest implementation
for that shell, that uses full capabilities of the shell)
1 - LASM (default)
2 - ASE, Rascal, emanon, etc.
3 - zap2000
4 - emanon
5 - Embedded LargeLd - !!!EXPERIMENTAL!!!
10 - asm() executable
#pragma string name xxx
- program description
#pragma data icon xx,xx,xx;
- shell icon 8 bytes long. Standard icon is "C+".
#pragma output nostreams
- If you just don't use the streams at all (no text and file-stuff)
#pragma output atexit
- If you use the atexit() command (uses 64 bytes extra stack).