Mercurial > repos > ghero
annotate directcolor.s68 @ 15:3e2e3129a619 default tip
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 08 Sep 2013 17:25:27 -0700 |
parents | 30f1d4c90900 |
children |
rev | line source |
---|---|
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
1 dc.l $0, start |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
2 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
3 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
4 ;$10 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
5 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
6 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
7 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
8 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
9 ;$20 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
10 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
11 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
12 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
13 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
14 ;$30 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
15 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
16 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
17 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
18 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
19 ;$40 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
20 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
21 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
22 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
23 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
24 ;$50 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
25 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
26 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
27 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
28 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
29 ;$60 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
30 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
31 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
32 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
33 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
34 ;$70 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
35 dc.l HINT |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
36 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
37 dc.l VINT |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
38 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
39 ;$80 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
40 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
41 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
42 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
43 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
44 ;$90 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
45 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
46 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
47 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
48 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
49 ;$A0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
50 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
51 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
52 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
53 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
54 ;$B0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
55 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
56 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
57 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
58 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
59 ;$C0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
60 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
61 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
62 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
63 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
64 ;$D0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
65 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
66 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
67 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
68 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
69 ;$E0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
70 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
71 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
72 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
73 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
74 ;$F0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
75 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
76 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
77 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
78 dc.l empty_handler |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
79 dc.b "SEGA" |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
80 empty_handler: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
81 rte |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
82 start: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
83 ;background and sprite test |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
84 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
85 ButtonState equ $FFFFEFF0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
86 ButtonStateNew equ ButtonState+2 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
87 PalAddress equ ButtonStateNew+2 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
88 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
89 CRAMXferSizeCmd equ $9308 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
90 CRAMDMACmd equ $C0000080 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
91 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
92 move.b #$40, $A10009 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
93 move.l #$C00000, a4 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
94 move.l #$c00004, a5 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
95 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
96 move.l #$0, a7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
97 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
98 move.w #$8004, (a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
99 move.w #$8104, (a5) ;turn off display |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
100 ;move.w #$8200, (a5) ;Table A = 0000 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
101 ;move.w #$8400, (a5) ;Table B = 0000 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
102 ;move.w #$857C, (a5) ;Sprite Table = F800 |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
103 move.w #$8B00, (a5) ;set full screen vertical and horizontal scrolling |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
104 move.w #$8C01, (a5) ;H40 mode, no shadow/hilight, no interlace |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
105 ;move.w #$8D3F, (a5) ;H Scroll = FC00 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
106 ;move.w #$9001, (a5) ;64x32 scroll tables |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
107 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
108 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
109 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
110 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
111 |
13
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
112 ;move #$2300, SR |
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
113 move.b #0, $a10003 |
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
114 WaitStart: |
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
115 btst.b #5, $a10003 |
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
116 bne.s WaitStart |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
117 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
118 Top: |
13
30f1d4c90900
Get direct color sample working
Mike Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
119 |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
120 lea BgData(pc), a0 ;set DMA source address |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
121 move.l a0, d7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
122 sub.l #258, d7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
123 move.w #$9500, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
124 ror.l #1, d7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
125 move.b d7, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
126 move.w d6, (a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
127 ror.l #8, d7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
128 move.b d7, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
129 add.w #$100, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
130 move.w d6,(a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
131 ror.l #8, d7 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
132 move.b d7, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
133 add.w #$100, d6 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
134 and.b #$7F, d6 |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
135 ;move.w d6,(a5) |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
136 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
137 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
138 |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
139 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
140 move.l #$94AE9342, (a5) ;set DMA length |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
141 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
142 move.w #$8F00, (a5) ;set auto-increment to 0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
143 |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
144 move.w #$8144, (a5) ;display on, DMA off |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
145 move.l #$40000000, (a5) ;Setup VRAM writes |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
146 |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
147 |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
148 addq #1, a5 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
149 WaitVBlank: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
150 btst.b #3, (a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
151 beq.s WaitVBlank |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
152 WaitActive: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
153 btst.b #3, (a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
154 bne.s WaitActive |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
155 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
156 move.l d0, (a4) ;fill FIFO |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
157 move.l d0, (a4) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
158 move.w d0, (a4) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
159 subq #1, a5 |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
160 move.w #$8114, (a5) ;display off, DMA on |
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
161 nop ;let FIFO drain |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
162 nop |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
163 nop |
15
3e2e3129a619
Re-arrange some VDP writes so that the address register gets setup properly for the FIFO-fill while still avoiding a freeze
Mike Pavone <pavone@retrodev.com>
parents:
13
diff
changeset
|
164 move.w d6, (a5) ;finish setting DMA source |
11
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
165 move.l #$C0000080, (a5) |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
166 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
167 bra Top |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
168 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
169 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
170 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
171 HINT: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
172 rte |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
173 VINT: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
174 bsr ReadPad |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
175 rte |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
176 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
177 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
178 ReadPad: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
179 move.b #$FF, $a10003 ;set TH for controller A |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
180 move.b $a10003, d0 ;CBRLUD |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
181 andi.b #$3F, d0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
182 move.b #0, $a10003 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
183 move.b $a10003, d1 ;SA00UD |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
184 andi.b #$30, d1 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
185 lsl.b #2, d1 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
186 or.b d1, d0 ;SACBRLUD |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
187 not.b d0 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
188 move.b (ButtonState).w, d1 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
189 eor.b d0, d1 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
190 and.b d0, d1 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
191 move.b d0, (ButtonState).w |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
192 move.b d1, (ButtonStateNew).w |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
193 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
194 rts |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
195 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
196 |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
197 BgData: |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
198 incbin dcolor.bin |
19226d79f839
Add direct color DMA demo and converter
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
199 |