summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile18
-rw-r--r--filesystem.mk12
-rw-r--r--pokediamond.rsf2
3 files changed, 19 insertions, 13 deletions
diff --git a/Makefile b/Makefile
index ff18771a..a6e7de2e 100644
--- a/Makefile
+++ b/Makefile
@@ -204,6 +204,7 @@ JSONPROC = $(TOOLS_DIR)/jsonproc/jsonproc
GFX = $(TOOLS_DIR)/nitrogfx/nitrogfx
MWASMARM_PATCHER = $(TOOLS_DIR)/mwasmarm_patcher/mwasmarm_patcher$(EXE) -q
MAKEBANNER = $(WINE) $(TOOLS_DIR)/bin/makebanner.exe
+MAKEROM = $(WIND) $(TOOLS_DIR)/bin/makerom.exe
TOOLDIRS = $(filter-out $(TOOLS_DIR)/mwccarm $(TOOLS_DIR)/bin,$(wildcard $(TOOLS_DIR)/*))
TOOLBASE = $(TOOLDIRS:$(TOOLS_DIR)/%=%)
@@ -300,6 +301,11 @@ $(ELF): $(BUILD_DIR)/$(LD_SCRIPT) $(O_FILES) $(BINFILES) $(BUILD_DIR)/pokediamon
$(ROM): $(ELF)
$(OBJCOPY) -O binary --gap-fill=0xFF --pad-to=0x04000000 $< $@
+# TODO: Rules for Pearl
+# FIXME: Computed secure area CRC in header is incorrect due to first 8 bytes of header not actually being "encryObj"
+#$(ROM): pokediamond.rsf $(BUILD_DIR)/pokediamond_bnr.bin $(SBINFILES) $(HOSTFS_FILES)
+# $(MAKEROM) -DNITROFS_FILES="$(NITROFS_FILES)" $< $@
+
# Make sure build directory exists before compiling anything
DUMMY != mkdir -p $(ALL_DIRS)
@@ -318,18 +324,6 @@ DUMMY != mkdir -p $(ALL_DIRS)
%.png: ;
%.pal: ;
-%.narc:
- $(KNARC) -d $(basename $@)/ -p $@
-
-%.arc:
- $(KNARC) -d $(basename $@)/ -p $@
-
-files/poketool/personal/pms.narc: ;
-
-files/poketool/personal/growtbl.narc: $(wildcard files/poketool/personal/growtbl/*.txt)
- $(MAKE) -C $(<D)
- $(NARCCOMP) -o $@ -p 255 $(^:%.txt=%.bin)
-
######################## Misc #######################
$(BUILD_DIR)/pokediamond_bnr.bin: pokediamond.bsf graphics/icon.4bpp graphics/icon.gbapal
diff --git a/filesystem.mk b/filesystem.mk
index e5d2731d..b43877db 100644
--- a/filesystem.mk
+++ b/filesystem.mk
@@ -273,3 +273,15 @@ NITROFS_FILES = $(NITROFS_FILES:poketool/personal/personal.narc=poketool/persona
endif
HOSTFS_FILES = $(NITROFS_FILES:%=files/%)
+
+%.narc:
+ $(KNARC) -d $(basename $@)/ -p $@
+
+%.arc:
+ $(KNARC) -d $(basename $@)/ -p $@
+
+files/poketool/personal/pms.narc: ;
+
+files/poketool/personal/growtbl.narc: $(wildcard files/poketool/personal/growtbl/*.txt)
+ $(MAKE) -C $(<D)
+ $(NARCCOMP) -o $@ -p 255 $(^:%.txt=%.bin)
diff --git a/pokediamond.rsf b/pokediamond.rsf
index 8a0db36a..b3549147 100644
--- a/pokediamond.rsf
+++ b/pokediamond.rsf
@@ -29,5 +29,5 @@ RomSpec
{
Segment All
HostRoot files/
- File data/UTF16.dat data/area00light.txt data/area01light.txt data/area02light.txt data/battle_win.NSCR data/btower_canm.resdat data/btower_celact.cldat data/btower_cell.resdat data/btower_chr.resdat data/btower_pal.resdat data/cell0.NCGR data/cell0.NCLR data/clact_default.NANR data/crystal.nsbmd data/demo_climax.narc data/dp_areawindow.NCGR data/dp_areawindow.NCLR data/dt_test_celact.txt data/dt_test_res_cell.txt data/dt_test_res_cellanm.txt data/dt_test_res_char.txt data/dt_test_res_multi.txt data/dt_test_res_multianm.txt data/dt_test_res_pltt.txt data/dun_sea.nsbtx data/eoo.dat data/exdata.dat data/field_cutin.narc data/fld_anime0.bin data/fld_anime1.bin data/fld_anime10.bin data/fld_anime2.bin data/fld_anime3.bin data/fld_anime4.bin data/fld_anime5.bin data/fld_anime6.bin data/fld_anime7.bin data/fld_anime8.bin data/fld_anime9.bin data/fs_kanban.nsbca data/ground0.NCGR data/ground0.NCLR data/ground0.NSCR data/kemu_itpconv.dat data/lake_anim.nsbtx data/miniasahamabe.nsbtx data/miniasasea.nsbtx data/minihamabe.nsbtx data/minimum.nsbtx data/minirhana.nsbtx data/namein.narc data/nfont.NCGR data/nfont.NCLR data/pc.nsbca data/plist_canm.resdat data/plist_cell.resdat data/plist_chr.resdat data/plist_h.cldat data/plist_pal.resdat data/porucase_canm.resdat data/porucase_celact.cldat data/porucase_cell.resdat data/porucase_chr.resdat data/porucase_pal.resdat data/pst_canm.resdat data/pst_cell.resdat data/pst_chr.resdat data/pst_h.cldat data/pst_pal.resdat data/shop_canm.resdat data/shop_cell.resdat data/shop_chr.resdat data/shop_h.cldat data/shop_pal.resdat data/slot.narc data/smptm_koori.NANR data/smptm_koori.NCER data/smptm_koori.NCGR data/smptm_koori.NCLR data/smptm_nemuri.NANR data/smptm_nemuri.NCER data/smptm_nemuri.NCGR data/smptm_nemuri.NCLR data/t3_fl_b.nsbtx data/t3_fl_p.nsbtx data/t3_fl_r.nsbtx data/t3_fl_y.nsbtx data/test.atr data/tmap_block.dat data/tmap_flags.dat data/tmapn_canm.resdat data/tmapn_celact.cldat data/tmapn_celact.txt data/tmapn_cell.resdat data/tmapn_chr.resdat data/tmapn_pal.resdat data/tmapn_res_canm.txt data/tmapn_res_cell.txt data/tmapn_res_chr.txt data/tmapn_res_pal.txt data/tradelist.narc data/trapmark.narc data/ug_anim.narc data/ug_base_cur.nsbmd data/ug_boygirl.NCGR data/ug_boygirl.NCLR data/ug_fossil.narc data/ug_hero.NANR data/ug_hero.NCER data/ug_hole.NANR data/ug_hole.NCER data/ug_hole.NCGR data/ug_parts.narc data/ug_radar.narc data/ug_trap.narc data/ugeffect_obj_graphic.narc data/uground_cell.resdat data/uground_cellanm.resdat data/uground_char.resdat data/uground_char2.resdat data/uground_clact.cldat data/uground_pltt.resdat data/uground_pltt2.resdat data/underg_radar.narc data/utility.bin data/weather_sys.narc data/wifi.ncgr data/wifinote.narc data/wifip2pmatch.narc data/wm.ncgr data/wm.nclr data/sound/sound_data.sdat msgdata/msg.narc msgdata/scenario/scr_msg.narc poketool/pokegra/height.narc poketool/pokegra/height_o.narc poketool/pokegra/otherpoke.narc poketool/pokegra/poke_shadow.narc poketool/pokegra/poke_shadow_ofx.narc poketool/pokegra/poke_yofs.narc poketool/pokegra/pokegra.narc poketool/trgra/trbgra.narc poketool/trgra/trfgra.narc poketool/personal/personal.narc poketool/personal/evo.narc poketool/personal/growtbl.narc poketool/personal/pms.narc poketool/personal/wotbl.narc poketool/trainer/trdata.narc poketool/trainer/trpoke.narc poketool/trmsg/trtbl.narc poketool/trmsg/trtblofs.narc battle/graphic/b_bag_gra.narc battle/graphic/b_plist_gra.narc battle/graphic/batt_bg.narc battle/graphic/batt_obj.narc battle/graphic/vs_demo_gra.narc wazaeffect/we.arc wazaeffect/we_sub.narc battle/skill/be_seq.narc battle/skill/sub_seq.narc battle/skill/waza_seq.narc wazaeffect/effectclact/wecell.narc wazaeffect/effectclact/wecellanm.narc wazaeffect/effectclact/wechar.narc wazaeffect/effectclact/wepltt.narc poketool/waza/waza_tbl.narc fielddata/script/scr_seq_release.narc graphic/bag_gra.narc graphic/box.narc graphic/btower.narc graphic/config_gra.narc graphic/demo_trade.narc graphic/dendou_demo.narc graphic/dendou_pc.narc graphic/ending.narc graphic/ev_pokeselect.narc graphic/f_note_gra.narc graphic/field_board.narc graphic/field_encounteffect.narc graphic/fld_comact.narc graphic/font.narc graphic/fontoam.narc graphic/hiden_effect.narc graphic/imageclip.narc graphic/mail_gra.narc graphic/menu_gra.narc graphic/mysign.narc graphic/mystery.narc graphic/ntag_gra.narc graphic/nutmixer.narc graphic/oekaki.narc graphic/opening.narc graphic/plist_gra.narc graphic/pmsi.narc graphic/poketch.narc graphic/poru_gra.narc graphic/poruact.narc graphic/porudemo.narc graphic/pst_gra.narc graphic/ranking.narc graphic/record.narc graphic/shop_gra.narc graphic/tmap_gra.narc graphic/touch_subwindow.narc graphic/trainer_case.narc graphic/unionroom.narc graphic/waza_oshie_gra.narc graphic/winframe.narc graphic/worldtrade.narc itemtool/itemdata/item_data.narc itemtool/itemdata/item_icon.narc itemtool/itemdata/nuts_data.narc poketool/icongra/poke_icon.narc poketool/pokefoot/pokefoot.narc data/mmodel/mmodel.narc data/mmodel/fldeff.narc wazaeffect/effectdata/ball_particle.narc wazaeffect/effectdata/waza_particle.narc wazaeffect/pt_debug/debug_particle.narc fielddata/eventdata/zone_event_release.narc fielddata/encountdata/d_enc_data.narc fielddata/encountdata/p_enc_data.narc fielddata/build_model/build_model.narc fielddata/build_model/build_model_matshp.dat fielddata/mapmatrix/map_matrix.narc fielddata/areadata/area_data.narc fielddata/areadata/area_build_model/area_build.narc fielddata/areadata/area_build_model/areabm_texset.narc fielddata/areadata/area_map_tex/map_tex_set.narc fielddata/areadata/area_move_model/move_model_list.narc fielddata/land_data/land_data_release.narc contest/graphic/contest_bg.narc contest/graphic/contest_obj.narc contest/data/contest_data.narc particledata/particledata.narc application/zukanlist/zkn_data/zukan_data.narc application/wifi_earth/wifi_earth.narc application/wifi_earth/wifi_earth_place.narc demo/title/titledemo.narc application/custom_ball/data/cb_data.narc demo/egg/data/egg_data.narc demo/egg/data/particle/egg_demo_particle.narc fielddata/mm_list/move_model_list.narc pokeanime/poke_anm.narc battle/tr_ai/tr_ai_seq.narc arc/bm_anime.narc arc/bm_anime_list.narc arc/encdata_ex.narc arc/ppark.narc arc/ship_demo.narc arc/tv.narc fielddata/maptable/mapname.bin poketool/pokezukan.narc poketool/shinzukan.narc poketool/pokeanm/pokeanm.narc fielddata/pokemon_trade/fld_trade.narc demo/shinka/data/particle/shinka_demo_particle.narc demo/intro/intro.narc demo/intro/intro_tv.narc demo/title/op_demo.narc demo/syoujyou/syoujyou.narc battle/b_tower/btdpm.narc battle/b_tower/btdtr.narc application/zukanlist/zkn_data/zukan_enc_diamond.narc application/zukanlist/zkn_data/zukan_enc_pearl.narc resource/eng/trial/trial.narc resource/eng/zukan/zukan.narc dwc/utility.bin
+ File $(NITROFS_FILES)
}