annotate mainboot.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 97ec271a513f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
bbfa7bf69620 Small fixes to skeleton
Mike Pavone <pavone@retrodev.com>
parents: 1
diff changeset
1 org $FF0000
1
ea41003cfa70 Improvements to skeleton
Mike Pavone <pavone@retrodev.com>
parents: 0
diff changeset
2 incbin security.bin
2
bbfa7bf69620 Small fixes to skeleton
Mike Pavone <pavone@retrodev.com>
parents: 1
diff changeset
3 Main
3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
4 ;background and sprite test
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
5
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
6 ButtonState equ $FFFFEFF0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
7 ButtonStateNew equ ButtonState+2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
8
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
9 CRAMXferSizeCmd equ $9304
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
10 StaticColors equ 12
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
11
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
12 USE_HINT equ 0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
13
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
14 Start
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
15 bsr ReadPad
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
16
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
17 btst.b #7, (ButtonState).w
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
18 bne LoadSLO
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
19
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
20 move.l #$C00000, a4
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
21 move.l #$c00004, a5
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
22
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
23 move.l #$0, a7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
24
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
25 lea BgFile, a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
26 bsr FileByNameSimple
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
27
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
28 move.w #$8104, (a5) ;turn off display
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
29 move.w #$8200, (a5) ;Table A = 0000
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
30 move.w #$8400, (a5) ;Table B = 0000
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
31 move.w #$857C, (a5) ;Sprite Table = F800
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
32 move.w #$8B00, (a5) ;set full screen vertical and horizontal scrolling
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
33 move.w #$8D3F, (a5) ;H Scroll = FC00
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
34 move.w #$9001, (a5) ;64x32 scroll tables
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
35
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
36
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
37
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
38 lea $200000, a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
39 move.w (a0)+, d0 ;size in words
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
40 move.w (a0)+, d1 ;width in cells
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
41 move.w (a0)+, d2 ;height in cells
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
42 move.w d2, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
43
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
44 subq #1, d0 ;adjust for 68K dbra routine
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
45 move.w #$8f02, (a5) ;autoincrement = 2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
46 move.l #$50200000, (a5);beginning of background tile area
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
47 CopyTiles:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
48 move.w (a0)+, (a4) ;copy tiles to VRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
49 dbra d0, CopyTiles
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
50
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
51 move.l #$40000000, d4 ;beginning of Plane A Name table
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
52 move.l #$00800000, d5 ;delta between lines
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
53 move.w #$81, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
54 subq #1, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
55 subq #1, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
56 move.w d1, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
57 WriteNamesY:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
58 move.l d4, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
59 move.w d3, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
60
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
61 WriteNamesX:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
62 move.w d6, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
63 addq #1, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
64 dbra d1, WriteNamesX
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
65
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
66 add.l d5, d4
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
67 dbra d2, WriteNamesY
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
68
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
69 move.l #$C0000000, (a5) ;setup writes to CRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
70 moveq #(StaticColors-1), d0 ;copy first 12 colors (static pallete)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
71 CopyColors:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
72 move.w (a0)+, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
73 dbra d0, CopyColors
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
74
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
75 move.w d7, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
76 lsl.w #5, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
77 subq #1, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
78 lea PalData(pc), a1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
79 ;sub.l #2, a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
80 .copypallines:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
81 move.l (a0)+, (a1)+
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
82 dbra d0, .copypallines
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
83
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
84
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
85 move.l #$60000010, (a5) ;setup writes to VSRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
86 move.w #$0, (a4) ;vscroll = 0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
87
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
88 move.l #$7C000003, (a5) ;setup writes to HScroll Table FC00
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
89 move.w #0, (a4) ;Plane A&B HScroll = 0;
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
90 move.w #0, (a4) ;
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
91
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
92 move.l #$78000003, (a5) ;clear sprite table
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
93 move.l #0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
94 move.l #0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
95
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
96 move.w #$8114, (a5) ;turn on DMA
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
97
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
98 bsr InitSprites
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
99 bsr AddSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
100
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
101 move.w #$0, (a0)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
102
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
103 bsr LoadSpritePal
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
104 bsr InitFrameBigSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
105 moveq #0, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
106 bsr ChangeFrameBigSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
107
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
108
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
109
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
110
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
111 move.l #$C0180080, d5 ;setup DMA command word
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
112
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
113 move.w #CRAMXferSizeCmd, (a5) ;set Transfer length
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
114 move.w #$9400, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
115
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
116 move.w #$8114, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
117 move.w #$8174, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
118
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
119
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
120
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
121 lea VINT(pc), a1 ;setup VINT handler
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
122 jsr $368
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
123
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
124 if USE_HINT
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
125 lea HINT(pc), a1 ;setup HINT handler and turn on HINTs
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
126 jsr $314
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
127
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
128 move.w #$8014, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
129 move.w #$8A00, (a5) ;HINT occurs on every line
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
130 endif
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
131
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
132 move.w #$8174, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
133
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
134
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
135
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
136 Loop:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
137 if USE_HINT
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
138 bra Loop
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
139 endif
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
140 WaitTop:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
141 cmpi.b #$FF, 4(a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
142 bne.s WaitTop
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
143
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
144 LineDone:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
145 move.b 4(a5), d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
146 WaitNextLine:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
147 cmp.b 4(a5), d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
148 beq WaitNextLine
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
149
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
150
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
151
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
152 HINT:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
153 ;move.w d6, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
154 ;move.l d5, (a5) ;start DMA
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
155 ;move.w d7, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
156 move.l d6, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
157 move.l d7, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
158 move.w #CRAMXferSizeCmd, (a5) ;set Transfer length
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
159 move.w #$9400, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
160
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
161 if USE_HINT
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
162 rte
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
163 endif
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
164
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
165 cmp.b #223, 4(a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
166 beq WaitTop
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
167
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
168 bra LineDone
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
169
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
170 VINT:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
171 move.b #1, $A12000 ;trigger interrupt on Sub CPU
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
172 if USE_HINT
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
173 move.w #$8144, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
174 endif
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
175 bsr SpriteCopyVRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
176
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
177 bsr ReadPad
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
178
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
179 bsr Player1Vint
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
180
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
181 move.l PalData, d7 ;setup DMA source address
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
182 move.w #$9500, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
183 ror.l #1, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
184 move.b d7, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
185 move.w d6, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
186 ror.l #8, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
187 move.b d7, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
188 add.w #$100, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
189 move.w d6,(a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
190 ror.l #8, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
191 move.b d7, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
192 add.w #$100, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
193 and.b #$7F, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
194 move.w d6,(a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
195
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
196 ;move.l d5, (a5) ;do DMA for first line
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
197
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
198 move.w #CRAMXferSizeCmd, (a5) ;set Transfer length
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
199 move.w #$9400, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
200
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
201 move.w #$8114, d6 ;VDP commands to turn screen on and off during HBlank
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
202 swap d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
203 swap d5
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
204 move.w d5, d6
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
205 swap d5
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
206 move.w d5, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
207 swap d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
208 move.w #$8174, d7
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
209 if USE_HINT
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
210 move.w d7, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
211 endif
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
212 rte
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
213
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
214 LoadSpritePal:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
215 move.l #$C0200000, (a5)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
216 moveq #$F, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
217 lea SpriteData, a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
218 PalLoop:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
219 move.w (a0)+, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
220 dbra d0, PalLoop
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
221 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
222
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
223 PalAddress:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
224 dc.l 0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
225
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
226 Player1Vint:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
227 move.b (ButtonState).w, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
228 move.b (ButtonStateNew).w, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
229
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
230 moveq #0, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
231 move.w d0, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
232
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
233 btst #5, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
234 bne ScrollRight
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
235
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
236 btst #7, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
237 bne ScrollLeft
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
238
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
239 btst #4, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
240 bne IncrementFrame
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
241
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
242
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
243 btst #6, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
244 bne DecrementFrame
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
245
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
246 btst #2, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
247 beq PlayerShipNotLeft
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
248 subq #1, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
249 PlayerShipNotLeft:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
250
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
251 btst #3, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
252 beq PlayerShipNotRight
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
253 addq #1, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
254 PlayerShipNotRight:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
255
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
256 btst #0, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
257 beq PlayerShipNotDown
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
258 subq #1, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
259 PlayerShipNotDown:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
260
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
261 btst #1, d2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
262 beq PlayerShipNotUp
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
263 addq #1, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
264 PlayerShipNotUp:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
265
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
266 bsr MoveBigSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
267
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
268 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
269 IncrementFrame:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
270 move.w (PlayerShipFrame), d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
271 addq #1, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
272 move.w d3, (PlayerShipFrame)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
273 bsr ChangeFrameBigSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
274
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
275 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
276
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
277 DecrementFrame:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
278
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
279 move.w (PlayerShipFrame), d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
280 subq #1, d3
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
281 move.w d3, (PlayerShipFrame)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
282 bsr ChangeFrameBigSprite
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
283
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
284 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
285
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
286 ScrollRight:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
287 move.w (ScrollValue), d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
288 subq #1, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
289 move.l #$7C000003, (a5) ;setup writes to HScroll Table FC00
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
290 move.w d0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
291 move.w d0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
292 move.w d0, (ScrollValue)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
293
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
294 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
295
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
296 ScrollLeft:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
297 move.w (ScrollValue), d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
298 addq #1, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
299 move.l #$7C000003, (a5) ;setup writes to HScroll Table FC00
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
300 move.w d0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
301 move.w d0, (a4)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
302 move.w d0, (ScrollValue)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
303
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
304 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
305
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
306 include sprites.s68
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
307
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
308 PlayerShipFrame:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
309 dc.w 0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
310
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
311
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
312 ScrollValue:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
313 dc.w 0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
314
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
315 ReadPad:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
316 move.b #$FF, $a10003 ;set TH for controller A
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
317 move.b $a10003, d0 ;CBRLUD
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
318 andi.b #$3F, d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
319 move.b #0, $a10003
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
320 move.b $a10003, d1 ;SA00UD
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
321 andi.b #$30, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
322 lsl.b #2, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
323 or.b d1, d0 ;SACBRLUD
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
324 not.b d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
325 move.b (ButtonState).w, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
326 eor.b d0, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
327 and.b d0, d1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
328 move.b d0, (ButtonState).w
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
329 move.b d1, (ButtonStateNew).w
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
330
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
331 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
332
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
333 FileByNameSimple:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
334 move.b #0, $a1200e
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
335 lea $a12010, a1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
336 .copyname
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
337 move.b (a0), (a1)+
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
338 tst.b (a0)+
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
339 bne .copyname
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
340
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
341 bset #1, $A12003; give SUB CPU control of WordRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
342
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
343 .waitready
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
344 tst.b $a1200f
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
345 beq .waitready
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
346
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
347
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
348 move.b #3, $a1200e
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
349
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
350 .waitdone
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
351 cmp.b #$FF, $a1200f
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
352 beq .notfound
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
353 tst.b $a1200f
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
354 bne .waitdone
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
355
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
356 bclr #1, $a12003; get control of WordRAM
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
357 rts
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
358
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
359 .notfound
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
360 bra .notfound
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
361
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
362 LoadSLO:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
363 lea LoaderFile(pc), a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
364 bsr FileByNameSimple
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
365 move.w #(.copyEnd-.copy-1), d0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
366 lea .copy(pc), a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
367 lea ($FFFF8000).w, a1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
368 move.l a1, a2
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
369 .copycopy
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
370 move.b (a0)+, (a1)+
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
371 dbra d0, .copycopy
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
372 move.w #$2000, d0; more than enough for slo.bin
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
373 lea $200000, a0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
374 lea $FF0000, a1
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
375 jmp (a2)
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
376 .copy
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
377 move.b (a0)+, (a1)+
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
378 dbra d0, .copy
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
379 jmp $FF0000
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
380 .copyEnd
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
381
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
382 SpriteData:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
383 incbin bultest.bin
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
384 BgFile:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
385 dc.b "LOGO.BIN",0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
386 LoaderFile:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
387 dc.b "SLO.BIN",0
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
388
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
389 PalData:
97ec271a513f Bunch of changes
Mike Pavone <pavone@retrodev.com>
parents: 2
diff changeset
390