MonADKリリース

しばらくリリースしてなかったのでMonaADKをリリースしました。Mona0.3.0alpha5相当の内容に刷新されています。CVSに入っているMonaはCDブート前提なので、Monaで使っているfatwriteというツールを使うためにはFDブート版Monaをまずは作らなければなりません。具体的には以下のようにファイルを編集します。

src/servers/file/main.cpp

    /* true/false boot from CD/FD */
    Initialize(false);

src/kernel/Makefile

install : all
	$(INSTALL) $(BOOT1) $(BINDIR)
	$(INSTALL) $(BOOT2) $(BINDIR)/iso/LOADER.BIN
	$(INSTALL) $(KERNEL) $(BINDIR)/iso/KERNEL.BIN

bin/Makefile

TARGET = mona.img

ROOT_FILES     = `cd iso; ls *.*`
SVR_FILES      = `cd iso; ls SERVERS/*.*`
APP_FILES      = `cd iso; ls APPS/*.E* APPS/*.MSH`
LIB_FILES      = `cd iso; ls LIBS/*.*`
BAYGUI_FILES   = `cd iso; ls APPS/BAYGUI/*.E*`
MONAFRMS_FILES = `cd iso; ls APPS/MONAFRMS/*.E*`

all:
	cd iso/SERVERS; rm -f PROCESS.BIN FILE.BIN MONITOR.BIN
	cp fat_template.img $(TARGET)
	./fat_write $(TARGET) --mbr firstboot.bin
	./fat_write $(TARGET) --mkdir SERVERS
	./fat_write $(TARGET) --mkdir APPS
	./fat_write $(TARGET) --mkdir APPS/MONAFRMS
	./fat_write $(TARGET) --mkdir APPS/BAYGUI
	./fat_write $(TARGET) --mkdir LIBS
	./fat_write $(TARGET) ../src/servers/file/FILE.BIN FILE.BIN
	./fat_write $(TARGET) ../src/servers/process/PROCESS.BIN PROCESS.BIN
	./fat_write $(TARGET) ../src/servers/moniter/MONITOR.BIN MONITOR.BIN
	@for file in $(ROOT_FILES) $(SVR_FILES) $(APP_FILES) $(LIB_FILES) $(BAYGUI_FILES) $(MONAFRMS_FILES); \
	do \
	  echo "Writing: "$$file"..."; ./fat_write $(TARGET) iso/$$file $$file; \
	done
	@cd iso; for dir in APPS/BAYGUI/*.APP APPS/MONAFRMS/*.APP ; \
	do \
	  echo "Creating: "$$dir"..."; ../fat_write ../$(TARGET) --mkdir $$dir; \
	  for file in $$dir/*.*; do echo "Writing: "$$file"..."; ../fat_write ../$(TARGET) $$file $$file; done; \
	done
	@echo "Done."

mona.iso: $(TARGET)
	cp $< iso
	mkisofs -v -iso-level 1 -b $< -o $@ iso
	rm -f iso/$<

write:
	dd if=$(TARGET) of=/dev/fd0

clean:
	rm -f $(TARGET) mona.iso
	rm -f iso/*.BIN
	rm -f iso/MONA-12.M*
	rm -rf iso/APPS/*.*
	rm -rf iso/APPS/MONAFRMS
	rm -rf iso/APPS/BAYGUI
	rm -rf iso/SERVERS/*.*
	rm -rf iso/LIBS

BayGUIのリファクタリングにともない、旧来のソースファイルは若干変更が必要になることがありますのでご了承ください。