comparison level1/mc09/modules/makefile @ 3116:174eb9eda7b1

New port "mc09" for Multicomp09, an FPGA-based 6809 machine Include new commands/descriptor for mc09 clock and SD controller
author Neal Crook <foofoobedoo@gmail.com>
date Sat, 17 Oct 2015 21:21:11 +0100
parents
children 35fb39e4b218
comparison
equal deleted inserted replaced
3115:460fdd304adf 3116:174eb9eda7b1
1 include ../port.mak
2
3 vpath %.asm $(LEVEL1)/modules
4
5 AFLAGS += -I$(LEVEL1)/modules
6
7 CLOCKELIM = -DRTCElim=1
8 CLOCKDISTO2 = -DRTCDsto2=1
9 CLOCKDISTO4 = -DRTCDsto4=1
10 CLOCKBNB = -DRTCBB=1
11 CLOCKSMART = -DRTCSmart=1 -DMPIFlag=1
12 CLOCKHARRIS = -DRTCHarrs=1
13 CLOCKCLOUD9 = -DRTCCloud9=1
14 CLOCKSOFT = -DRTCSoft=1
15 CLOCKMESSEMU = -DRTCMessEmu=1
16 CLOCKJVEMU = -DRTCJVEmu=1
17 TC3FLAGS = $(AFLAGS) -DTC3=1 $(FLAGS)
18 IDEFLAGS = $(AFLAGS) -DIDE=1 $(FLAGS)
19 SDFLAGS = $(AFLAGS) -DCOCOSDC=1 -DITTYP=128 $(FLAGS)
20
21 DEPENDS = ./makefile
22 TPB = $(3RDPARTY)/booters
23
24 BOOTERS = boot_1773_6ms boot_1773_30ms \
25 boot_burke boot_rampak boot_wd1002 boot_dw \
26 boot_tc3 boot_ide boot_rom boot_dw_becker \
27 boot_dw_arduino boot_dw_coco1 boot_sdc
28 BOOTTRACK = rel $(BOOTERS)
29 KERNEL = krn krnp2 wbug
30 SYSMODS = ioman init sysgo_dd sysgo_h0 rominfo rominfo_pak vectors
31 CLOCKS = clock_60hz clock_50hz mc09clock_50hz\
32 clock2_elim clock2_disto2 clock2_disto4 clock2_bnb \
33 clock2_smart clock2_harris clock2_cloud9 clock2_soft \
34 clock2_messemu clock2_jvemu clock2_dw
35
36 RBF = rbf.mn \
37 rbdw.dr dwio.sb dwio_coco1.sb dwio_becker.sb dwio_arduino.sb \
38 mc09sdc.dr rb1773.dr rb1773_scii_ff74.dr rb1773_scii_ff58.dr \
39 ddd0_35s.dd d0_35s.dd d1_35s.dd d2_35s.dd d3_35s.dd \
40 ddd0_40d.dd d0_40d.dd d1_40d.dd d2_40d.dd \
41 ddd0_80d.dd d0_80d.dd d1_80d.dd d2_80d.dd \
42 dds0_80d.dd s0_80d.dd s1_80d.dd s2_80d.dd s3_80d.dd \
43 ddx0.dd x0.dd x1.dd x2.dd x3.dd \
44 rbsuper.dr lltc3.dr llide.dr llcocosdc.dr \
45 ddi0_ide.dd i0_ide.dd i1_ide.dd ih_ide.dd \
46 dds0_tc3.dd s0_tc3.dd s1_tc3.dd s2_tc3.dd s3_tc3.dd s4_tc3.dd \
47 s5_tc3.dd s6_tc3.dd sh_tc3.dd \
48 ddsd0_cocosdc.dd sd0_cocosdc.dd sd1_cocosdc.dd
49
50 SCF = scf.mn \
51 sc6551.dr vrn.dr scbbp.dr scbbt.dr scdwp.dr sspak.dr vtio.dr \
52 covdg.io cohr.io co80.io \
53 nil.dd p_scbbp.dd p_scdwp.dd pipe.dd ssp.dd \
54 term_scbbt.dt term_sc6551.dt t1_scbbt.dd t2_sc6551.dd t3_sc6551.dd \
55 mc6850.dr term_mc6850.dt term_mc6850_t0.dt term_mc6850_t1.dt \
56 term_vdg.dt term_hr.dt term_80.dt \
57 scdwv.dr term_scdwv.dt n_scdwv.dd n1_scdwv.dd n2_scdwv.dd \
58 n3_scdwv.dd n4_scdwv.dd n5_scdwv.dd n6_scdwv.dd n7_scdwv.dd \
59 n8_scdwv.dd n9_scdwv.dd n10_scdwv.dd n11_scdwv.dd n12_scdwv.dd \
60 n13_scdwv.dd midi_scdwv.dd \
61 term_z_scdwv.dt z1_scdwv.dd z2_scdwv.dd z3_scdwv.dd z4_scdwv.dd z5_scdwv.dd \
62 z6_scdwv.dd z7_scdwv.dd
63
64 PIPE = pipeman.mn \
65 piper.dr \
66 pipe.dd
67
68 RFM = rfm.mn rfmdrv.dr ddy0.dd y0.dd y1.dd y2.dd y3.dd
69
70 ALLOBJS = $(BOOTTRACK) $(KERNEL) $(SYSMODS) $(CLOCKS) $(RBF) $(SCF) $(PIPE) $(RFM)
71
72 all: $(ALLOBJS)
73
74 # Kernel
75 krn krnp2:
76 $(CD) kernel; make $@
77 $(OS9COPY) kernel/$@ .
78
79 # Special cases
80
81 rominfo_pak: rominfo.asm
82 $(AS) $(ASOUT)$@ $< $(AFLAGS) -DROMPak=1
83
84 # TC^3 SCSI Booter
85 boot_tc3: boot_scsi.asm
86 $(AS) $(ASOUT)$@ $< $(TC3FLAGS)
87
88 # SuperIDE/Glenside IDE Booter
89 boot_ide: boot_ide.asm
90 $(AS) $(ASOUT)$@ $< $(IDEFLAGS)
91
92 # CoCo SDC Booter
93 boot_sdc: boot_sdc.asm
94 $(AS) $(ASOUT)$@ $< $(SDFLAGS)
95
96 # DriveWire Becker Booter
97 boot_dw_becker: boot_dw.asm
98 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBECKER=1
99
100 # DriveWire Becker Submodule
101 dwio_becker.sb: dwio.asm
102 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBECKER=1
103
104 # DriveWire Arduino Booter
105 boot_dw_arduino: boot_dw.asm
106 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DARDUINO=1
107
108 # DriveWire Arduino Submodule
109 dwio_arduino.sb: dwio.asm
110 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DARDUINO=1
111
112 # DriveWire CoCo1 Booter
113 boot_dw_coco1: boot_dw.asm
114 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1
115
116 # DriveWire CoCo1 Submodule
117 dwio_coco1.sb: dwio.asm
118 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DBAUD38400=1
119
120 # DriveWire 3
121 boot_1773_6ms: boot_1773.asm
122 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=0
123
124 boot_1773_30ms: boot_1773.asm
125 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DSTEP=3
126
127 rb1773_scii_ff74.dr: rb1773.asm
128 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1
129
130 rb1773_scii_ff58.dr: rb1773.asm
131 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DSCII=1 -DSCIIALT=1
132
133 # TC^3 SCSI Driver
134 lltc3.dr: llscsi.asm
135 $(AS) $(ASOUT)$@ $< $(TC3FLAGS)
136
137 # IDE Driver
138 llide.dr: llide.asm
139 $(AS) $(ASOUT)$@ $< $(IDEFLAGS)
140
141 # Floppy descriptors
142 SSDD35 = -DCyls=35 -DSides=1 -DSectTrk=18 -DSectTrk0=18 \
143 -DInterlv=3 -DSAS=8 -DDensity=1
144 DSDD40 = -DCyls=40 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
145 -DInterlv=3 -DSAS=8 -DDensity=1
146 DSDD80 = -DCyls=80 -DSides=2 -DSectTrk=18 -DSectTrk0=18 \
147 -DInterlv=3 -DSAS=8 -DDensity=1 -DD35
148
149 # HDB-DOS for SuperDriver
150 HDBDOS = -DHB $(SSDD35) -DITDNS=8 $(ID0)
151
152 ddd0_35s.dd: rb1773desc.asm
153 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0 -DDD=1
154
155 d0_35s.dd: rb1773desc.asm
156 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=0
157
158 d1_35s.dd: rb1773desc.asm
159 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=1
160
161 d2_35s.dd: rb1773desc.asm
162 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=2
163
164 d3_35s.dd: rb1773desc.asm
165 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(SSDD35) -DDNum=3
166
167 ddd0_40d.dd: rb1773desc.asm
168 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0 -DDD=1
169
170 d0_40d.dd: rb1773desc.asm
171 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=0
172
173 d1_40d.dd: rb1773desc.asm
174 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=1
175
176 d2_40d.dd: rb1773desc.asm
177 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD40) -DDNum=2
178
179 ddd0_80d.dd: rb1773desc.asm
180 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0 -DDD=1
181
182 d0_80d.dd: rb1773desc.asm
183 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=0
184
185 d1_80d.dd: rb1773desc.asm
186 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=1
187
188 d2_80d.dd: rb1773desc.asm
189 $(AS) $< $(ASOUT)$@ $(AFLAGS) $(DSDD80) -DDNum=2
190
191 # OFFSET is the high 16 bits of the 24-bit block address
192 # where the disk image starts on the SDcard. It must match
193 # the value used in the create_sd_image script. Needs to be
194 # expressed in DECIMAL here (at least, I don't know how to pass
195 # it in and have it treated as hex)
196 dds0_80d.dd: mc09sdcdesc.asm
197 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DDD=1 -DOFFSET=640
198
199 s0_80d.dd: mc09sdcdesc.asm
200 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0 -DOFFSET=640
201
202 s1_80d.dd: mc09sdcdesc.asm
203 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1 -DOFFSET=656
204
205 s2_80d.dd: mc09sdcdesc.asm
206 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2 -DOFFSET=672
207
208 s3_80d.dd: mc09sdcdesc.asm
209 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3 -DOFFSET=688
210
211 # Serial ports for mc09
212 term_mc6850_t0.dt: term_mc6850.asm
213 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DTNum=0 -DHwBASE=0xFFD2
214
215 term_mc6850_t1.dt: term_mc6850.asm
216 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DTNum=1 -DHwBASE=0xFFD4
217
218
219
220
221 # DriveWire 3 SCF descriptors
222 term_scdwv.dt: scdwvdesc.asm
223 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=0
224
225 n_scdwv.dd: scdwvdesc.asm
226 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=255
227
228 n1_scdwv.dd: scdwvdesc.asm
229 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=1
230
231 n2_scdwv.dd: scdwvdesc.asm
232 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=2
233
234 n3_scdwv.dd: scdwvdesc.asm
235 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=3
236
237 n4_scdwv.dd: scdwvdesc.asm
238 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=4
239
240 n5_scdwv.dd: scdwvdesc.asm
241 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=5
242
243 n6_scdwv.dd: scdwvdesc.asm
244 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=6
245
246 n7_scdwv.dd: scdwvdesc.asm
247 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=7
248
249 n8_scdwv.dd: scdwvdesc.asm
250 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=8
251
252 n9_scdwv.dd: scdwvdesc.asm
253 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=9
254
255 n10_scdwv.dd: scdwvdesc.asm
256 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=10
257
258 n11_scdwv.dd: scdwvdesc.asm
259 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=11
260
261 n12_scdwv.dd: scdwvdesc.asm
262 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=12
263
264 n13_scdwv.dd: scdwvdesc.asm
265 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=13
266
267 midi_scdwv.dd: scdwvdesc.asm
268 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=14
269
270 term_z_scdwv.dt: scdwvdesc.asm
271 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=16
272
273 z1_scdwv.dd: scdwvdesc.asm
274 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=17
275
276 z2_scdwv.dd: scdwvdesc.asm
277 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=18
278
279 z3_scdwv.dd: scdwvdesc.asm
280 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=19
281
282 z4_scdwv.dd: scdwvdesc.asm
283 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=20
284
285 z5_scdwv.dd: scdwvdesc.asm
286 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=21
287
288 z6_scdwv.dd: scdwvdesc.asm
289 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=22
290
291 z7_scdwv.dd: scdwvdesc.asm
292 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DAddr=23
293
294 # DriveWire 3 RBF descriptors
295 ddx0.dd: dwdesc.asm
296 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
297
298 x0.dd: dwdesc.asm
299 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
300
301 x1.dd: dwdesc.asm
302 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
303
304 x2.dd: dwdesc.asm
305 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
306
307 x3.dd: dwdesc.asm
308 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
309
310 # TC^3 SCSI Descriptors
311 dds0_tc3.dd: superdesc.asm
312 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) -DDD=1
313
314 s0_tc3.dd: superdesc.asm
315 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID0) $(SCSI_HD)
316
317 s1_tc3.dd: superdesc.asm
318 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID1) $(SCSI_HD)
319
320 s2_tc3.dd: superdesc.asm
321 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID2) $(SCSI_HD)
322
323 s3_tc3.dd: superdesc.asm
324 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID3) $(SCSI_HD)
325
326 s4_tc3.dd: superdesc.asm
327 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID4) $(SCSI_HD)
328
329 s5_tc3.dd: superdesc.asm
330 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID5) $(SCSI_HD)
331
332 s6_tc3.dd: superdesc.asm
333 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(ID6) $(SCSI_HD)
334
335 sh_tc3.dd: superdesc.asm
336 $(AS) $(ASOUT)$@ $< $(TC3FLAGS) $(HDBDOS)
337
338 # IDE Descriptors
339 ddi0_ide.dd: superdesc.asm
340 $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER) -DDD=1
341
342 i0_ide.dd: superdesc.asm
343 $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(MASTER)
344
345 i1_ide.dd: superdesc.asm
346 $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(SLAVE)
347
348 ih_ide.dd: superdesc.asm
349 $(AS) $(ASOUT)$@ $< $(IDEFLAGS) $(HDBDOS)
350
351 # CoCo SDC Descriptors
352 ddsd0_cocosdc.dd: superdesc.asm
353 $(AS) $(ASOUT)$@ $< $(SDFLAGS) -DDD=1
354
355 sd0_cocosdc.dd: superdesc.asm
356 $(AS) $(ASOUT)$@ $< $(SDFLAGS) -DITDRV=0
357
358 sd1_cocosdc.dd: superdesc.asm
359 $(AS) $(ASOUT)$@ $< $(SDFLAGS) -DITDRV=1
360
361 # RFM descriptors
362 ddy0.dd: rfmdesc.asm
363 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDD=1 -DDNum=0
364
365 y0.dd: rfmdesc.asm
366 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=0
367
368 y1.dd: rfmdesc.asm
369 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=1
370
371 y2.dd: rfmdesc.asm
372 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=2
373
374 y3.dd: rfmdesc.asm
375 $(AS) $< $(ASOUT)$@ $(AFLAGS) -DDNum=3
376
377 rel: rel.asm
378 $(AS) $(AFLAGS) $(ASOUT)$@ $<
379
380 sysgo_dd: sysgo.asm
381 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DDD=1
382
383 sysgo_h0: sysgo.asm
384 $(AS) $(AFLAGS) $(ASOUT)$@ $<
385
386 # Clocks
387 clock_60hz: clock.asm
388 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=60
389
390 clock_50hz: clock.asm
391 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50
392
393 mc09clock_50hz: mc09clock.asm
394 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DPwrLnFrq=50
395
396 clock2_bnb: clock2_ds1315.asm
397 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DBNB=1
398
399 clock2_cloud9: clock2_ds1315.asm
400 $(AS) $(AFLAGS) $(ASOUT)$@ $< -DCLOUD9=1
401
402 clean:
403 $(CD) kernel; make $@
404 $(RM) $(ALLOBJS)
405
406 showobjs:
407 @$(ECHO) $(ALLOBJS)
408
409 showboottrack:
410 @$(ECHO) $(BOOTTRACK)
411
412 showkernel:
413 @$(ECHO) $(KERNEL)
414
415 showsysmods:
416 @$(ECHO) $(SYSMODS)
417
418 showclocks:
419 @$(ECHO) $(CLOCKS)
420
421 showrbf:
422 @$(ECHO) $(RBF)
423
424 showscf:
425 @$(ECHO) $(SCF)
426
427 showpipe:
428 @$(ECHO) $(PIPE)
429
430 identify:
431 $(IDENT_SHORT) $(ALLOBJS)
432
433