forked from FozzTexx/Coleco-Adam-Source
-
Notifications
You must be signed in to change notification settings - Fork 0
/
img0064.txt
58 lines (56 loc) · 3.5 KB
/
img0064.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
FILE: EOSABS:EOS TF HEWLETT-PACKARD: A_uOS OO (c) Coleco 1983Conf identiai Sat, 8 Sep 1984, 23.39 PAGE 60
LOCATION OBJECT CODE LINE SOURCE LINE
2265 ;
2266 ;
2267 ;
2268 ; Used to fill a table of values for the 2 controllers
2269 ; Does some debouncing if called twice insuccession
2270 ;
2271 ; NOTE - Does not return at bottom of code, return ts in middie
2272 ; Interupts will be off for a while when cal! to DECODE is performec.
2273 ;
2274 ; Callers - This has different input parameters than OS-7 and
2278: ; the controller map ts ordered differently.
2276 ;
2277 :
2278 :;Stack Usage:
2279 : will use 4 words (2 pushes, 2 call)
2280 ;
2281 ;Calis:
2282 ; _DECODER
2283 ; DEBOUNCE
2284 ; READ_N_DEBOUNCE (a routine that is nested itn _POLLER)
2285 ;
2286 ;Input Parameters:
2287 ; IX - pointer to ist byte of users controller map (10 bytes)
2288 ; A - controller enabled and spinner enable
2289 ; bit O - set if want controller O enabled
2290 ; bit 1 - set if want controller t enabled
2291 ; bit 7 - set if want spinner enabled for controllers which are enabled
2292 ;
2293 ;Returns:
2294 ;
2295 ; Data in users controller map is like this off of entry IX value
2296 ; IX+O - joystick O
2297 ; IX+1 - fire O
2298 ; IX+2 - arm O
2299 ; IX+3 keyboard O
2300 ; IX+4 - spinner count O
2301 ; IX+5 - joystick 1
2302 ; IX+6 - fire 1 |
2303 ; IX+7 - arm 1
2304 ; IX+8 - keyboard 1
2305 ; IX+9 - spinner count 1
2306 ;
2307 ; IX - points to 1 byte past users data table of highest enabled controller
2308 ;
2309 ;
2310 ; all but IY - destroyed
2311 ;
2312 ;Date:
2313 ; 9/24/83 11:14 JKL
2314 ;
2315
<OOO1> 2316 CONTROLLER O MASK EQU O1H
<OO0O1> 2317 CONTROLLER 1 BIT EQU 1
<OOO7> 2318 SPINNER ENABLE BIT EQU 7