-
Notifications
You must be signed in to change notification settings - Fork 482
Expand file tree
/
Copy pathp4.s
More file actions
198 lines (178 loc) · 1.81 KB
/
p4.s
File metadata and controls
198 lines (178 loc) · 1.81 KB
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
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
" p4
stickcont: 0
" display stick
lac ball1+x
lrss 6
xor o142000 " setx
dac 15 i
lac ball1+y
lrss 6
xor o164000 " sety
dac 15 i
lac qcos
lrss 8
sma
jmp 1f
cma
tad d1
xor o2000 " minus
1:
xor o100000 " vecx hold
dac 15 i
lac qsin
lrss 8
sma
jmp 1f
cma
tad d1
xor o2000 " minus
1:
xor o124000 " vecy vis
dac 15 i
" rotation
lac .pb i
rtl
sma rar
jmp 2f
" coarse rotation
sma
jmp 1f
szl
jmp 3f
jms rotate; mcsin; ccos
jmp 3f
1:
snl
jmp 3f
jms rotate; csin; ccos
jmp 3f
" fine rotation
2:
sma
jmp 1f
szl
jmp 3f
jms rotate; mfsin; fcos
jmp 3f
1:
snl
jmp 3f
jms rotate; fsin; fcos
3:
" strike
lac .pb i
rtl; ral
sma ral
jmp 1f
lac qcos
dac ball1+vx
lac qsin
dac ball1+vy
jmp stickcont i
1: sma
jmp stickcont i
lac qcos
lrss 1
dac ball1+vx
lac qsin
lrss 1
dac ball1+vy
jmp stickcont i
rotate: 0
lac rotate i
dac 9f+t+1
lac 9f+t+1 i
dac 9f+t
isz rotate
lac rotate i
dac 9f+t+1
lac 9f+t+1 i
dac 9f+t+1
isz rotate
lac qsin
gsm
dac .+3
lac 9f+t+1
muls; ..; llss 2
dac 9f+t+2
lac qcos
gsm
dac .+3
lac 9f+t
muls; ..; llss 2
tad 9f+t+2
dac 9f+t+3
lac qsin
gsm
dac .+3
lac 9f+t
muls; ..; llss 2
cma
dac 9f+t+2
lac qcos
gsm
dac .+3
lac 9f+t+1
muls; ..; llss 2
tad 9f+t+2
dac qcos
lac 9f+t+3
dac qsin
jmp rotate i
t = t+4
prad: 02000
pocketlr: 0
lac ball1+sflg
sna
jmp 2f
-1
tad prad
cma
tad bottest
tad ball1+y
spa
jmp 3f
lac prad
tad toptest
tad ball1+y
sma
jmp 3f
-1
tad middle
cma
tad ball1+y
sma
cma
tad prad
sma
jmp 3f
2:
isz pocketlr
jmp pocketlr i
3:
-1
dac ball1+sflg
jmp pocketlr i
pockettb: 0
lac ball1+sflg
sna
jmp 2f
-1
tad prad
cma
tad lefttest
tad ball1+x
spa
jmp 3f
lac prad
tad righttest
tad ball1+x
sma
jmp 3f
2:
isz pockettb
jmp pockettb i
3:
-1
dac ball1+sflg
jmp pockettb i