2 # The system-independent files:
4 SRC_CPSKER
= cpsker.asm cpsdef.asm cpsmit.asm cpscom.asm cpspk1.asm \
5 cpspk2.asm cpsrem.asm cpsser.asm cpstt.asm cpscpm.asm \
6 cpswld.asm cpscmd.asm cpsutl.asm cpsdat.asm cpxlnk.asm
8 # The system-dependent files:
10 SRC_SYSDEP
= cpxtyp.asm cpxlnk.asm cpxcom.asm cpxswt.asm cpxvdu.asm
14 SRC_SYSTEM
= cpxsys.asm cpxtor.asm cpxnor.asm cpxmrl.asm cpxsb.asm \
15 cpxcif.asm cpxhea.asm cpxapp.asm cpxpcw.asm cpxbbi.asm cpxbee.asm \
16 cpxsyo.asm cpxtm4.asm cpxgni.asm cpxpro.asm cpxz80.asm cpxac.asm
28 ifeq "$(OS)" "Windows_NT"
35 ifeq ($(PLATFORM
),Linux
)
36 CPMBIN
= /usr
/local
/lib
/cpm
/bin80
41 AS
= $(CPMEMU
) $(CPMBIN
)/m80.com
42 LINK
= $(CPMEMU
) $(CPMBIN
)/l80.com
45 @COMMAND
="$(AS) =$<"; \
46 OUTPUT
=$$(mktemp
); echo
$${COMMAND}; \
47 $${COMMAND} > $${OUTPUT}; \
48 grep
-q
'No Fatal error(s).$$' $${OUTPUT}; ERROR
=$$?
; \
49 if
[ "$${ERROR}" != "0" ]; then cat
$${OUTPUT}; rm $@
; fi
; \
58 all: kerm411.com cpxtyp.prn cpsker.prn
61 kerm411.com
: cpsker.rel cpxtyp.rel
62 $(LINK
) -/P
:100,cpsker
,cpsker
/N
/X
/E
63 $(LINK
) -/P
:$(OVLADR
),cpxtyp
,cpxtyp
/N
/X
/E
64 $(CPMEMU
) mload.com
-kerm411.com
=cpsker.hex
,cpxtyp.hex
66 # grep -v -P '^(\x1A)|(:..7)|(:00....01)' cpsker.hex >kerm411.hex
67 # grep -v -P '^\x1A' cpxtyp.hex >>kerm411.hex
68 # objcopy -I ihex -O binary kerm411.hex kerm411.com
71 cpxtyp.rel
: $(SRC_SYSDEP
) $(SRC_SYSTEM
)
72 cpsker.rel
: $(SRC_CPSKER
)
73 cpxtyp.prn
: $(SRC_SYSDEP
) $(SRC_SYSTEM
)
74 cpsker.prn
: $(SRC_CPSKER
)
77 $(LINK
) -/P
:100,mload
,mload
/N
/E
80 echo
-e
'aseg\r' >tmp.mac
81 cat mload.asm
>>tmp.mac
82 @COMMAND
="$(AS) -mload=tmp.mac"; \
83 OUTPUT
=$$(mktemp
); echo
$${COMMAND}; \
84 $${COMMAND} > $${OUTPUT}; \
85 grep
-q
'No Fatal error(s).$$' $${OUTPUT}; ERROR
=$$?
; \
86 if
[ "$${ERROR}" != "0" ]; then cat
$${OUTPUT}; rm $@
; fi
; \
92 @COMMAND
="$(AS) =$<"; \
93 OUTPUT
=$$(mktemp
); echo
$${COMMAND}; \
94 $${COMMAND} | tee
$${OUTPUT}; \
95 grep
-q
'No Fatal error(s).$$' $${OUTPUT}; ERROR
=$$?
; \
96 if
[ "$${ERROR}" != "0" ]; then cat
$${OUTPUT}; rm $@
; fi
; \
102 @COMMAND
="$(AS) ,$@=$<"; \
103 OUTPUT
=$$(mktemp
); echo
$${COMMAND}; \
104 $${COMMAND} > $${OUTPUT}; \
105 grep
-q
'No Fatal error(s).$$' $${OUTPUT}; ERROR
=$$?
; \
106 if
[ "$${ERROR}" != "0" ]; then cat
$${OUTPUT}; fi
; \
113 ## zxcc l80.com -$<,$@/N/E