Files
SNES-CIC-Disassembly/dissassembly/3195a-dis.txt
T
2020-04-07 08:27:46 -07:00

600 lines
9.3 KiB
Plaintext

;; NOTE: this chip has the opcodes for sc/rc and coma/nega swapped,
;; compared to the other chips!
;; RESET
000: 00 nop
040: 30 ldi 0
060: 20 lbli 0
070: 46 out
078: 55 in
07c: 67 ska 3
07e: 87 t 007
03f: 75 lbmi 1
05f: 55 in
06f: 66 ska 2
077: e7 t 067
07b: 21 lbli 1
07d: 31 ldi 1
03e: 70 ad
01f: 43 xd
04f: df t 05f
067: 32 ldi 2
073: 21 lbli 1
079: 46 out
03c: 00 nop
05e: 30 ldi 0
02f: 46 out
057: 3d ldi d
06b: 01 adi 1
075: eb t 06b
03a: 00 nop
01d: 00 nop
00e: b0 t 030
007: 31 ldi 1
043: 21 lbli 1
061: 46 out
030: 7d 00 tml 200
06c: 31 ldi 1
076: 5c lxa
03b: 74 lbmi 0
05d: 7c c7 tml 147
017: 75 lbmi 1
04b: 7c c7 tml 147
032: 7c f4 tml 174
00c: 55 in
046: 65 ska 1
023: a8 t 028
051: 92 t 012
028: 30 ldi 0
054: 41 x
06a: 46 out
035: 00 nop
01a: 55 in
00d: 47 out0
006: 4a s
003: 75 lbmi 1
041: 7c 83 tml 103
050: 74 lbmi 0
068: 60 skm 0
074: e3 t 063
07a: 7c f4 tml 174
01e: 61 skm 1
00f: 92 t 012
047: db t 05b
063: 7c f4 tml 174
038: 61 skm 1
05c: b7 t 037
06e: 92 t 012
037: 00 nop
05b: 5d xax
06d: 01 adi 1
036: ca t 04a
01b: 7c 80 tml 100
026: 7d de tml 35e
049: 27 lbli 7
024: 40 l
052: 10 skai 0
029: f6 t 076
014: ec t 06c
04a: 5d xax
025: bb t 03b
012: 7c 83 tml 103
004: 90 t 010
042: 30 ldi 0
021: b9 t 039
010: 21 lbli 1
048: 30 ldi 0
064: 00 nop
072: e4 t 064
039: 21 lbli 1
01c: 46 out
04e: 7c f3 tml 173
053: 7c 80 tml 100
034: 7c f3 tml 173
02d: 92 t 012
;;{{{
016: 00 nop
00b: 00 nop
045: 00 nop
022: 00 nop
011: 00 nop
008: 00 nop
044: 00 nop
062: 00 nop
031: 00 nop
018: 00 nop
04c: 00 nop
066: 00 nop
033: 00 nop
059: 00 nop
02c: 00 nop
056: 00 nop
02b: 00 nop
055: 00 nop
02a: 00 nop
015: 00 nop
00a: 00 nop
005: 00 nop
002: 00 nop
001: 00 nop
07f: 80 t 000
;;}}}
;; RUN HOST
100: 7c 83 tml 103
160: ef t 16f
170: 31 ldi 1
178: 21 lbli 1
17c: 00 nop
17e: 00 nop
13f: 00 nop
15f: cf t 14f
16f: 30 ldi 0
177: 21 lbli 1
17b: 46 out
17d: 00 nop
13e: 00 nop
11f: 00 nop
14f: 46 out
167: 4c rit
;; WAIT A BIT
;; P13 = 0, P12 = 0: 0.6s
;; P13 = 0, P12 = 1: 0.4s
;; P13 = 1, P12 = 0: 0.8s
;; P13 = 1, P12 = 1: 1.0s
173: 21 lbli 1
179: 55 in ; A := P1
13c: 66 ska 2
15e: 8e t 10e ; if A.2 {
12f: 67 ska 3
157: ba t 13a ; if A.3
16b: 35 ldi 5 ; A := 5
175: d8 t 158 ; else
13a: 32 ldi 2 ; A := 2
11d: d8 t 158
; } else {
10e: 67 ska 3
107: b0 t 130 ; if A.3
143: 34 ldi 4 ; A := 4
161: d8 t 158 ; else
130: 33 ldi 3 ; A := 3
; }
158: 4a s ; [H:1] := A
;; WAIT 0.6 OR SO SECONDS
16c: 74 lbmi 0 ; H := 0
176: 2b lbli b ; L := 0
13b: 30 ldi 0
15d: 42 xi
12e: bb t 13b
117: 2f lbli f
14b: 38 ldi 8
165: 41 x
132: 2c lbli c
119: 49 sc
10c: 30 ldi 0
146: 73 adcsk
123: e5 t 165
151: 42 xi
128: 8c t 10c
;;
154: 21 lbli 1 ; L := 1
16a: 40 l ; H := [0:1]
135: 0f adi f
11a: 4c rit
10d: 4a s
106: ec t 16c
;; SKIP NEXT INSTRUCTION IF LOCK
103: 20 lbli 0
141: 55 in
120: 67 ska 3
150: 8f t 10f
168: 4d ritsk
;; H := "OTHER SIDE"
174: 74 lbmi 0
17a: 7c 83 tml 103
11e: 75 lbmi 1
10f: 4c rit
;; [H:0] := NEXT STREAM BIT
147: 5d xax
163: 5c lxa
171: 57 xal
138: 40 l ; A := [H:X]
15c: 20 lbli 0 ; L := 0
16e: 4a s
137: 69 rm 1
15b: 6a rm 2
16d: 6b rm 3 ; [H:0] := [H:X].0
136: 4c rit
;;{{{
11b: 00 nop
14d: 00 nop
126: 00 nop
113: 00 nop
149: 00 nop
124: 00 nop
152: 00 nop
129: 00 nop
114: 00 nop
14a: 00 nop
125: 00 nop
112: 00 nop
109: 00 nop
104: 00 nop
142: 00 nop
121: 00 nop
110: 00 nop
148: 00 nop
164: 00 nop
172: 00 nop
139: 00 nop
11c: 00 nop
14e: 00 nop
127: 00 nop
153: 00 nop
169: 00 nop
134: 00 nop
15a: 00 nop
12d: 00 nop
116: 00 nop
10b: 00 nop
145: 00 nop
122: 00 nop
111: 00 nop
108: 00 nop
144: 00 nop
162: 00 nop
131: 00 nop
118: 00 nop
14c: 00 nop
166: 00 nop
133: 00 nop
159: 00 nop
12c: 00 nop
156: 00 nop
12b: 00 nop
155: 00 nop
12a: 00 nop
115: 00 nop
10a: 00 nop
105: 00 nop
102: 00 nop
101: 00 nop
17f: 80 t 100
;;}}}
;; INIT STREAM
200: 7c 83 tml 103
260: 8e t 20e
270: 75 lbmi 1
278: 21 lbli 1
27c: 31 ldi 1
27e: 63 skm 3
23f: 30 ldi 0
25f: 7d 80 tml 300
277: 31 ldi 1
27b: 60 skm 0
27d: 30 ldi 0
23e: 7d 80 tml 300
24f: 31 ldi 1
267: 61 skm 1
273: 30 ldi 0
279: 7d 80 tml 300
25e: 31 ldi 1
22f: 62 skm 2
257: 30 ldi 0
26b: 7d 80 tml 300
23a: 00 nop
21d: b5 t 235
20e: 75 lbmi 1
207: 21 lbli 1
243: 3f ldi f
261: 41 x
230: 7d f7 tml 377
26c: 65 ska 1
276: 6b rm 3
23b: 00 nop
25d: 7d f7 tml 377
217: 65 ska 1
24b: 68 rm 0
265: 00 nop
232: 7d f7 tml 377
20c: 65 ska 1
246: 69 rm 1
223: 00 nop
251: 7d f7 tml 377
254: 65 ska 1
26a: 6a rm 2
235: 74 lbmi 0
21a: 21 lbli 1
20d: 3e ldi e
206: 3f ldi f
203: 42 xi
241: 32 ldi 2
220: 37 ldi 7
250: 42 xi
268: 33 ldi 3
274: 3b ldi b
27a: 42 xi
23d: 34 ldi 4
21e: 3e ldi e
20f: 42 xi
247: 3f ldi f
263: 42 xi
271: 38 ldi 8
238: 42 xi
25c: 32 ldi 2
26e: 42 xi
237: 37 ldi 7
25b: 42 xi
26d: 3d ldi d
236: 42 xi
21b: 37 ldi 7
24d: 42 xi
226: 38 ldi 8
213: 42 xi
249: 3e ldi e
224: 42 xi
252: 3e ldi e
229: 42 xi
214: 31 ldi 1
24a: 42 xi
225: 35 ldi 5
212: 41 x
209: 75 lbmi 1
204: 22 lbli 2
242: 35 ldi 5
221: 37 ldi 7
210: 42 xi
248: 3e ldi e
264: 3b ldi b
272: 42 xi
239: 35 ldi 5
21c: 3d ldi d
24e: 42 xi
227: 31 ldi 1
253: 42 xi
269: 32 ldi 2
234: 42 xi
25a: 31 ldi 1
22d: 42 xi
216: 37 ldi 7
20b: 42 xi
245: 3e ldi e
222: 42 xi
211: 36 ldi 6
208: 42 xi
244: 37 ldi 7
262: 42 xi
231: 3a ldi a
218: 42 xi
24c: 37 ldi 7
266: 42 xi
233: 31 ldi 1
259: 42 xi
22c: 35 ldi 5
256: 41 x
22b: 4c rit
;;{{{
255: 00 nop
22a: 00 nop
215: 00 nop
20a: 00 nop
205: 00 nop
202: 00 nop
201: 00 nop
27f: 80 t 200
;;}}}
;; OUTPUT STREAM ID BIT
300: 20 lbli 0
340: 4a s
360: 30 ldi 0
370: 41 x
378: 46 out
37c: 00 nop
37e: 00 nop
33f: 47 out0
35f: 21 lbli 1
36f: 4c rit
;; INPUT STREAM ID BIT
377: 20 lbli 0
37b: 00 nop
37d: 00 nop
33e: 00 nop
31f: 00 nop
34f: 00 nop
367: 55 in
373: 00 nop
379: 21 lbli 1
33c: 4c rit
;; MANGLE BOTH
35e: 74 lbmi 0
32f: 7d f5 tml 375
36b: 75 lbmi 1
;; MANGLE ONE
375: 2f lbli f
33a: 40 l
31d: 5c lxa
30e: 49 sc
307: 21 lbli 1
343: 72 adc
361: 4a s
330: 52 li
358: 72 adc
36c: 44 coma
376: 42 xi
33b: 73 adcsk
35d: 42 xi
32e: 70 ad
317: 4a s
34b: 52 li
365: 48 rc
332: 72 adc
319: 42 xi
30c: 08 adi 8
346: 72 adc
323: 42 xi
351: 01 adi 1
328: 00 nop
354: 72 adc
36a: 4a s
335: 52 li
31a: d1 t 351
30d: 5d xax
306: 0f adi f
303: 4c rit
341: 9d t 31d
;;{{{
320: 00 nop
350: 00 nop
368: 00 nop
374: 00 nop
37a: 00 nop
33d: 00 nop
31e: 00 nop
30f: 00 nop
347: 00 nop
363: 00 nop
371: 00 nop
338: 00 nop
35c: 00 nop
36e: 00 nop
337: 00 nop
35b: 00 nop
36d: 00 nop
336: 00 nop
31b: 00 nop
34d: 00 nop
326: 00 nop
313: 00 nop
349: 00 nop
324: 00 nop
352: 00 nop
329: 00 nop
314: 00 nop
34a: 00 nop
325: 00 nop
312: 00 nop
309: 00 nop
304: 00 nop
342: 00 nop
321: 00 nop
310: 00 nop
348: 00 nop
364: 00 nop
372: 00 nop
339: 00 nop
31c: 00 nop
34e: 00 nop
327: 00 nop
353: 00 nop
369: 00 nop
334: 00 nop
35a: 00 nop
32d: 00 nop
316: 00 nop
30b: 00 nop
345: 00 nop
322: 00 nop
311: 00 nop
308: 00 nop
344: 00 nop
362: 00 nop
331: 00 nop
318: 00 nop
34c: 00 nop
366: 00 nop
333: 00 nop
359: 00 nop
32c: 00 nop
356: 00 nop
32b: 00 nop
355: 00 nop
32a: 00 nop
315: 00 nop
30a: 00 nop
305: 00 nop
302: 00 nop
301: 00 nop
37f: 80 t 300
;;}}}
;; vi:fdm=marker:cms=;;%s:fdo=: