Browse code

Add the binary generation script

Pawel Jablonski authored on 18/03/2023 17:51:29
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,103 @@
1
+UROM_DIR = ../urom
2
+ASM_DIR = ../asm
3
+EMU_DIR = ../emu
4
+
5
+ifeq ($(OS),Windows_NT)
6
+	UROM_EXE = urom.exe
7
+	ASM_EXE = asm.exe
8
+	EMU_EXE = emu.exe
9
+	
10
+	LIB_DIR = ../lib
11
+else
12
+	UROM_EXE = urom
13
+	ASM_EXE = asm
14
+	EMU_EXE = emu
15
+endif
16
+
17
+ROM_DIR = ../rom
18
+ROM_BIN = rom.bin
19
+ROM_MAP = rom.map
20
+
21
+FS_DIR = ../fs
22
+FS_APP = app
23
+FS_FILE = file
24
+
25
+#IO_SRC_DIR = ../io/firmware/src
26
+#IO_HEX = io.hex
27
+
28
+.PHONY: all
29
+all: urom rom fs io
30
+
31
+urom: tools
32
+	rm -rf urom
33
+	mkdir -p urom
34
+
35
+ifeq ($(OS),Windows_NT)
36
+ifdef WINE
37
+	cd urom; \
38
+	$(WINE) ../tools/$(UROM_EXE)
39
+else
40
+	cd urom; \
41
+	../tools/$(UROM_EXE)
42
+endif
43
+else
44
+	cd urom; \
45
+	../tools/$(UROM_EXE)
46
+endif
47
+
48
+rom: tools
49
+	rm -rf rom
50
+	$(MAKE) -C $(ROM_DIR)
51
+	mkdir -p rom
52
+	cp $(ROM_DIR)/$(ROM_BIN) rom
53
+	cp $(ROM_DIR)/$(ROM_MAP) rom
54
+
55
+fs: tools
56
+	rm -rf fs
57
+	$(MAKE) -C $(FS_DIR)
58
+	mkdir -p fs
59
+	cp -r $(FS_DIR)/$(FS_APP) fs
60
+	cp -r $(FS_DIR)/$(FS_FILE) fs
61
+
62
+io:
63
+	#rm -rf io
64
+	#$(MAKE) -C $(IO_SRC_DIR)
65
+	#mkdir -p io
66
+	#cp $(IO_SRC)/$(IO_HEX) $(IO_DST)/
67
+
68
+tools: tools_urom tools_asm tools_emu
69
+	rm -rf tools
70
+	mkdir -p tools
71
+	cp $(UROM_DIR)/src/$(UROM_EXE) tools
72
+	cp $(ASM_DIR)/src/$(ASM_EXE) tools
73
+	cp $(EMU_DIR)/src/$(EMU_EXE) tools
74
+	
75
+ifeq ($(OS),Windows_NT)
76
+	cp -r $(LIB_DIR)/* tools
77
+endif
78
+
79
+.PHONY: tools_asm
80
+tools_asm:
81
+	$(MAKE) -C $(ASM_DIR) src
82
+
83
+.PHONY: tools_emu
84
+tools_emu:
85
+	$(MAKE) -C $(EMU_DIR) src
86
+
87
+.PHONY: tools_urom
88
+tools_urom:
89
+	$(MAKE) -C $(UROM_DIR) src
90
+
91
+.PHONY: clean
92
+clean:
93
+	$(MAKE) -C $(ROM_DIR) clean
94
+	$(MAKE) -C $(UROM_DIR) clean
95
+	$(MAKE) -C $(ASM_DIR) clean
96
+	$(MAKE) -C $(EMU_DIR) clean
97
+	$(MAKE) -C $(FS_DIR) clean
98
+	
99
+	rm -rf tools
100
+	rm -rf urom
101
+	rm -rf rom
102
+	rm -rf fs
103
+	rm -rf io