mirror of
https://github.com/hsoft/collapseos.git
synced 2024-12-26 17:08:05 +11:00
95ab1ad588
Working in "blk/" folder from a modern system is harder than it should be. Moving blocks around is a bit awkward, grepping is a bit less convenient than it could be, git blame has troubles following, etc. In this commit, we modify blkpack and blkunpack to work with single text files with blocks being separated by a special markup. I think this will make the code significantly more convenient to work into.
40 lines
679 B
Makefile
40 lines
679 B
Makefile
# See /doc/hw/8086/pcat.txt
|
|
TARGET = disk.bin
|
|
BASE = ../../..
|
|
CDIR = $(BASE)/cvm
|
|
BLKPACK = $(BASE)/tools/blkpack
|
|
STAGE = $(CDIR)/stage
|
|
EMUL = $(BASE)/emul/8086/pcat
|
|
|
|
.PHONY: all
|
|
all: $(TARGET)
|
|
os.bin: xcomp.fs $(STAGE) blkfs
|
|
$(STAGE) blkfs < xcomp.fs > $@
|
|
|
|
$(BLKPACK):
|
|
$(MAKE) -C $(BASE)/tools
|
|
|
|
blkfs: $(BLKPACK)
|
|
cat $(BASE)/blk.fs blk.fs | $(BLKPACK) > $@
|
|
|
|
$(STAGE):
|
|
$(MAKE) -C $(CDIR) stage
|
|
|
|
mbr.bin: mbr.fs $(STAGE) blkfs
|
|
cat mbr.fs | $(STAGE) blkfs > $@
|
|
|
|
$(TARGET): mbr.bin os.bin
|
|
cat mbr.bin os.bin > $@
|
|
dd if=blkfs of=$@ bs=512 seek=16
|
|
|
|
$(EMUL):
|
|
$(MAKE) -C $(BASE)/emul/8086
|
|
|
|
.PHONY: emul
|
|
emul: $(TARGET) $(EMUL)
|
|
$(EMUL) $(TARGET)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm *.bin
|