mirror of
https://github.com/pret/pokegold-spaceworld.git
synced 2026-10-01 12:56:45 -05:00
Merge branch 'master' into build_more_roms
This commit is contained in:
34
Makefile
34
Makefile
@@ -15,7 +15,8 @@ RGBFIX := rgbfix
|
||||
RGBASMFLAGS := -h -E -i $(BUILD)/
|
||||
tools/gfx :=
|
||||
tools/make_shim :=
|
||||
sort_sym := $(PYTHON3) tools/sort_sym.py
|
||||
sort_sym := tools/sort_symfile.sh
|
||||
#sort_sym := $(PYTHON3) tools/sort_sym.py
|
||||
|
||||
ROM := poke$(BUILD_NAME)-spaceworld.gb
|
||||
ROMS := $(foreach r, gold gold_debug silver silver_debug, poke$(r)-spaceworld.gb)
|
||||
@@ -40,11 +41,20 @@ GFX := $(patsubst %.png, $(BUILD)/%.2bpp, \
|
||||
.SECONDEXPANSION:
|
||||
|
||||
.PHONY: all
|
||||
all: $(ROM) $(CORRECTEDROM)
|
||||
all: $(ROM) $(CORRECTEDROM) compare
|
||||
|
||||
.PHONY: compare
|
||||
compare: $(ROMS)
|
||||
$(MD5) roms.md5
|
||||
|
||||
.PHONY: tools
|
||||
tools tools/pkmncompress tools/gfx:
|
||||
$(MAKE) -C tools/
|
||||
|
||||
.PHONY: coverage
|
||||
coverage: tools/disasm_coverage.py $(ROM)
|
||||
$(PYTHON3) $< -m $(ROM:.gb=.map) -b 0x40
|
||||
|
||||
# Remove files generated by the build process.
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@@ -57,10 +67,14 @@ mostlyclean:
|
||||
rm -rf $(ROMS) $(OBJS) $(ROMS:.gb=.sym) $(ROMS:.gb=.map) $(CORRECTEDROMS)
|
||||
find . \( -iname '*.d' \) -exec rm {} +
|
||||
|
||||
$(ROM): $(OBJS)
|
||||
$(ROM): $(OBJS) | $(BASEROM)
|
||||
$(RGBLINK) -d -n $(@:.gb=.sym) -m $(@:.gb=.map) -O $(BASEROM) -o $@ $^
|
||||
$(RGBFIX) -f lh -k 01 -l 0x33 -m 0x03 -p 0 -r 3 -t "POKEMON2$(GAME_VERSION)" $@
|
||||
-$(sort_sym) $(@:.gb=.sym)
|
||||
$(sort_sym) $(@:.gb=.sym)
|
||||
|
||||
$(BASEROM):
|
||||
@echo "Please obtain a copy of Gold_debug.sgb and put it in this directory as $@"
|
||||
@exit 1
|
||||
|
||||
$(BUILD)/shim.asm: tools/make_shim $(SHIM) tools/make_shim | $$(dir $$@)
|
||||
tools/make_shim -w $(filter-out $<, $^) > $@
|
||||
@@ -68,10 +82,6 @@ $(CORRECTEDROM): %-correctheader.gb: %.gb
|
||||
cp $< $@
|
||||
$(RGBFIX) -f hg -m 0x10 $@
|
||||
|
||||
.PHONY: coverage
|
||||
coverage: $(ROM)
|
||||
$(PYTHON3) tools/disasm_coverage.py -m $(ROM:.gb=.map) -b 0x40
|
||||
|
||||
$(BUILD)/gfx.o: | $(GFX)
|
||||
$(BUILD)/%.o: $(BUILD)/%.asm | $$(dir $$@)
|
||||
$(RGBASM) $(RGBASMFLAGS) -M $(@:.o=.d) $(OUTPUT_OPTION) $<
|
||||
@@ -114,12 +124,12 @@ $(BUILD)/%.tilemap: %.png | $$(dir $$@)
|
||||
-include $(call rwildcard, $(BUILD)/, *.d)
|
||||
|
||||
#gold: ; @$(MAKE) GAME_VERSION=GOLD
|
||||
gold_debug: ; @$(MAKE) GAME_VERSION=GOLD DEBUG=1
|
||||
#gold_debug: ; @$(MAKE) GAME_VERSION=GOLD DEBUG=1
|
||||
#silver: ; @$(MAKE) GAME_VERSION=SILVER
|
||||
#silver_debug: ; @$(MAKE) GAME_VERSION=SILVER DEBUG=1
|
||||
compare: ;
|
||||
#compare: ;
|
||||
# @$(MAKE) GAME_VERSION=GOLD COMPARE=1
|
||||
@$(MAKE) GAME_VERSION=GOLD DEBUG=1 COMPARE=1
|
||||
# @$(MAKE) GAME_VERSION=GOLD DEBUG=1 COMPARE=1
|
||||
# @$(MAKE) GAME_VERSION=SILVER COMPARE=1
|
||||
# @$(MAKE) GAME_VERSION=SILVER DEBUG=1 COMPARE=1
|
||||
@$(MD5) roms.md5
|
||||
# @$(MD5) roms.md5
|
||||
|
||||
@@ -17,8 +17,21 @@ INCLUDE "data/trainers/party_pointers.inc"
|
||||
|
||||
if def(GOLD)
|
||||
HayatoGroup::
|
||||
; Leftover Youngster data from Red/Blue
|
||||
db 11, MON_KORATTA, MON_ARBO, 0
|
||||
db 14, MON_ONISUZUME, 0
|
||||
db 10, MON_KORATTA, MON_KORATTA, MON_ZUBAT, 0
|
||||
db 14, MON_KORATTA, MON_ARBO, MON_ZUBAT, 0
|
||||
db 15, MON_KORATTA, MON_ONISUZUME, 0
|
||||
db 17, MON_YADON, 0
|
||||
db 14, MON_ARBO, MON_SAND, 0
|
||||
db 21, MON_NIDORAN_M, 0
|
||||
db 21, MON_ARBO, 0
|
||||
db 19, MON_SAND, MON_ZUBAT, 0
|
||||
db 17, MON_KORATTA, MON_KORATTA, MON_RATTA, 0
|
||||
db 18, MON_NIDORAN_M, MON_NIDORINO, 0
|
||||
db 17, MON_ONISUZUME, MON_KORATTA, MON_KORATTA, MON_ONISUZUME, 0
|
||||
|
||||
SECTION "Trainer Parties 1 TEMPORARY", ROMX[$51BF],BANK[$E]
|
||||
AkaneGroup::
|
||||
BugCatcherBoyGroup::
|
||||
; BUG_CATCHER_BOY_JUNICHI
|
||||
@@ -98,31 +111,114 @@ OkeraGroup::
|
||||
db 19, MON_KORATTA, MON_DIGDA, MON_ARBO, MON_SAND, 0
|
||||
db 29, MON_NIDORAN_M, MON_NIDORINO, 0
|
||||
|
||||
SECTION "Trainer Parties 4 TEMPORARY", ROMX[$52B4],BANK[$E]
|
||||
MikanGroup::
|
||||
; Leftover Jr.Trainer♀ data from Red/Blue
|
||||
db 19, MON_TOSAKINTO, 0
|
||||
db 16, MON_KORATTA, MON_PIKACHU, 0
|
||||
db 16, MON_POPPO, MON_POPPO, MON_POPPO, 0
|
||||
db 22, MON_FUSHIGIDANE, 0
|
||||
db 18, MON_NAZONOKUSA, MON_MADATSUBOMI, MON_NAZONOKUSA, MON_MADATSUBOMI, 0
|
||||
db 23, MON_NYARTH, 0
|
||||
db 20, MON_PIKACHU, MON_PIPPI, 0
|
||||
db 21, MON_POPPO, MON_PIGEON, 0
|
||||
db 21, MON_PURIN, MON_POPPO, MON_NYARTH, 0
|
||||
db 22, MON_NAZONOKUSA, MON_FUSHIGIDANE, 0
|
||||
db 24, MON_FUSHIGIDANE, MON_FUSHIGISOU, 0
|
||||
db 24, MON_POPPO, MON_NYARTH, MON_KORATTA, MON_PIKACHU, MON_NYARTH, 0
|
||||
db 30, MON_NYOROMO, MON_NYOROMO, 0
|
||||
db 27, MON_POPPO, MON_NYARTH, MON_POPPO, MON_PIGEON, 0
|
||||
db 28, MON_TOSAKINTO, MON_NYOROMO, MON_TATTU, 0
|
||||
db 31, MON_TOSAKINTO, MON_AZUMAO, 0
|
||||
db 22, MON_MADATSUBOMI, MON_PIPPI, 0
|
||||
db 20, MON_NYARTH, MON_NAZONOKUSA, MON_POPPO, 0
|
||||
db 19, MON_POPPO, MON_KORATTA, MON_KORATTA, MON_MADATSUBOMI, 0
|
||||
db 28, MON_KUSAIHANA, MON_NAZONOKUSA, MON_NAZONOKUSA, 0
|
||||
db 29, MON_PIKACHU, MON_RAICHU, 0
|
||||
db 33, MON_PIPPI, 0
|
||||
db 29, MON_MADATSUBOMI, MON_NAZONOKUSA, MON_MONJARA, 0
|
||||
db 30, MON_MENOKURAGE, MON_TATTU, MON_PAWOU, 0
|
||||
|
||||
SECTION "Trainer Parties 5 TEMPORARY", ROMX[$5320],BANK[$E]
|
||||
BlueGroup::
|
||||
; Leftover Pokémaniac data from Red/Blue
|
||||
db 30, MON_SIHORN, MON_BERORINGA, 0
|
||||
db 20, MON_KARAKARA, MON_YADON, 0
|
||||
db 20, MON_YADON, MON_YADON, MON_YADON, 0
|
||||
db 22, MON_HITOKAGE, MON_KARAKARA, 0
|
||||
db 25, MON_YADON, 0
|
||||
db 40, MON_LIZARDO, MON_LAPLACE, MON_BERORINGA, 0
|
||||
db 23, MON_KARAKARA, MON_YADON, 0
|
||||
|
||||
SECTION "Trainer Parties 6 TEMPORARY", ROMX[$533D],BANK[$E]
|
||||
GamaGroup::
|
||||
; Leftover Super Nerd data from Red/Blue
|
||||
db 11, MON_COIL, MON_BIRIRIDAMA, 0
|
||||
db 12, MON_BETBETER, MON_BIRIRIDAMA, MON_DOGARS, 0
|
||||
db 20, MON_BIRIRIDAMA, MON_DOGARS, MON_BIRIRIDAMA, MON_COIL, 0
|
||||
db 22, MON_BETBETER, MON_BETBETON, MON_BETBETER, 0
|
||||
db 26, MON_DOGARS, 0
|
||||
db 22, MON_DOGARS, MON_COIL, MON_MATADOGAS, 0
|
||||
db 20, MON_COIL, MON_COIL, MON_DOGARS, MON_COIL, 0
|
||||
db 24, MON_COIL, MON_BIRIRIDAMA, 0
|
||||
db 36, MON_ROKON, MON_ROKON, MON_KYUKON, 0
|
||||
db 34, MON_PONYTA, MON_HITOKAGE, MON_ROKON, MON_GARDIE, 0
|
||||
db 41, MON_GALLOP, 0
|
||||
db 37, MON_GARDIE, MON_ROKON, 0
|
||||
|
||||
SECTION "Trainer Parties 7 TEMPORARY", ROMX[$5375],BANK[$E]
|
||||
RivalGroup::
|
||||
db 5, DEX_KURUSU, 0
|
||||
db 5, DEX_HAPPA, 0
|
||||
db 5, DEX_HONOGUMA, 0
|
||||
; Leftover Hiker data from Red/Blue
|
||||
db 10, MON_ISITSUBUTE, MON_ISITSUBUTE, MON_IWARK, 0
|
||||
db 15, MON_WANRIKY, MON_ISITSUBUTE, 0
|
||||
db 13, MON_ISITSUBUTE, MON_ISITSUBUTE, MON_WANRIKY, MON_ISITSUBUTE, 0
|
||||
db 17, MON_IWARK, 0
|
||||
db 21, MON_ISITSUBUTE, MON_IWARK, 0
|
||||
db 20, MON_ISITSUBUTE, MON_WANRIKY, MON_ISITSUBUTE, 0
|
||||
db 21, MON_ISITSUBUTE, MON_IWARK, 0
|
||||
db 19, MON_IWARK, MON_GOLONE, 0
|
||||
db 21, MON_ISITSUBUTE, MON_ISITSUBUTE, MON_GOLONE, 0
|
||||
db 25, MON_ISITSUBUTE, 0
|
||||
db 20, MON_WANRIKY, MON_IWARK, 0
|
||||
db 19, MON_ISITSUBUTE, MON_WANRIKY, MON_ISITSUBUTE, MON_ISITSUBUTE, 0
|
||||
db 20, MON_IWARK, MON_IWARK, MON_ISITSUBUTE, 0
|
||||
db 21, MON_ISITSUBUTE, MON_GOLONE, 0
|
||||
|
||||
SECTION "Trainer Parties 8 TEMPORARY", ROMX[$53BC],BANK[$E]
|
||||
OkidoGroup::
|
||||
; Leftover Biker data from Red/Blue
|
||||
db 28, MON_DOGARS, MON_DOGARS, MON_DOGARS, 0
|
||||
db 29, MON_DOGARS, MON_BETBETER, 0
|
||||
db 25, MON_DOGARS, MON_DOGARS, MON_MATADOGAS, MON_DOGARS, MON_BETBETER, 0
|
||||
db 28, MON_DOGARS, MON_BETBETER, MON_MATADOGAS, 0
|
||||
db 29, MON_BETBETER, MON_DOGARS, 0
|
||||
db 33, MON_MATADOGAS, 0
|
||||
db 26, MON_BETBETER, MON_BETBETER, MON_BETBETER, MON_BETBETER, 0
|
||||
db 28, MON_MATADOGAS, MON_DOGARS, MON_MATADOGAS, 0
|
||||
db 33, MON_BETBETON, 0
|
||||
db 29, MON_BIRIRIDAMA, MON_BIRIRIDAMA, 0
|
||||
db 29, MON_MATADOGAS, MON_BETBETON, 0
|
||||
db 25, MON_DOGARS, MON_MATADOGAS, MON_DOGARS, MON_DOGARS, MON_MATADOGAS, 0
|
||||
db 26, MON_DOGARS, MON_DOGARS, MON_BETBETER, MON_DOGARS, 0
|
||||
db 28, MON_BETBETER, MON_BETBETER, MON_DOGARS, 0
|
||||
db 29, MON_DOGARS, MON_BETBETON, 0
|
||||
|
||||
SECTION "Trainer Parties 9 TEMPORARY", ROMX[$5404],BANK[$E]
|
||||
SakakiGroup::
|
||||
; Leftover Burglar data from Red/Blue
|
||||
db 29, MON_GARDIE, MON_ROKON, 0
|
||||
db 33, MON_GARDIE, 0
|
||||
db 28, MON_ROKON, MON_HITOKAGE, MON_PONYTA, 0
|
||||
db 36, MON_GARDIE, MON_ROKON, MON_KYUKON, 0
|
||||
db 41, MON_PONYTA, 0
|
||||
db 37, MON_ROKON, MON_GARDIE, 0
|
||||
db 34, MON_HITOKAGE, MON_LIZARDO, 0
|
||||
db 38, MON_KYUKON, 0
|
||||
db 34, MON_GARDIE, MON_PONYTA, 0
|
||||
|
||||
SECTION "Trainer Parties 10 TEMPORARY", ROMX[$5427],BANK[$E]
|
||||
ProtagonistGroup::
|
||||
; Leftover Engineer data from Red/Blue
|
||||
db 21, MON_BIRIRIDAMA, MON_COIL, 0
|
||||
db 21, MON_COIL, 0
|
||||
db 18, MON_COIL, MON_COIL, MON_RARECOIL, 0
|
||||
|
||||
SECTION "Trainer Parties 11 TEMPORARY", ROMX[$5433],BANK[$E]
|
||||
SibaGroup::
|
||||
KasumiGroup::
|
||||
FisherGroup::
|
||||
@@ -249,7 +345,6 @@ BikerGroup::
|
||||
db 38, MON_GHOST, 0
|
||||
db 33, MON_GHOS, MON_GHOS, MON_GHOST, 0
|
||||
|
||||
SECTION "Trainer Parties 31 TEMPORARY", ROMX[$5956],BANK[$E]
|
||||
RockClimberGroup::
|
||||
; Leftover Agatha data from Red/Blue
|
||||
db -1, 56, MON_GANGAR, 56, MON_GOLBAT, 55, MON_GHOST, 58, MON_ARBOK, 60, MON_GANGAR, 0
|
||||
|
||||
@@ -4,22 +4,61 @@ SECTION "Main Menu Definition", ROMX[$5418], BANK[$01]
|
||||
|
||||
MainMenuHeader:
|
||||
db $40
|
||||
db $00, $00, $07, $0d
|
||||
dw .data
|
||||
menu_coords 0, 0, 13, 7
|
||||
dw .MenuData
|
||||
db 1 ; default option
|
||||
|
||||
.data
|
||||
.MenuData: ; 01:5420
|
||||
db $80
|
||||
db 0 ; number of options
|
||||
|
||||
dw $5461
|
||||
db 0 ; items
|
||||
dw MainMenuItems
|
||||
db $8a, $1f
|
||||
dw MainMenuStrings
|
||||
dw .Strings
|
||||
|
||||
MainMenuStrings: ; 01:5428
|
||||
db "つづきから はじめる@"
|
||||
db "さいしょから はじめる@"
|
||||
db "せっていを かえる@"
|
||||
db "#を あそぶ@"
|
||||
db "じかんセット@"
|
||||
; 01:5457
|
||||
.Strings: ; 01:5428
|
||||
db "つづきから はじめる@"
|
||||
db "さいしょから はじめる@"
|
||||
db "せっていを かえる@"
|
||||
db "#を あそぶ@"
|
||||
db "じかんセット@"
|
||||
|
||||
MainMenuJumptable: ; 01:5457
|
||||
dw $547c
|
||||
dw $555c
|
||||
dw $5cf3
|
||||
dw $555c
|
||||
dw $5473
|
||||
|
||||
CONTINUE EQU 0
|
||||
NEW_GAME EQU 1
|
||||
OPTION EQU 2
|
||||
PLAY_POKEMON EQU 3
|
||||
SET_TIME EQU 4
|
||||
|
||||
MainMenuItems:
|
||||
|
||||
NewGameMenu:
|
||||
db 2
|
||||
db NEW_GAME
|
||||
db OPTION
|
||||
db -1
|
||||
|
||||
ContinueMenu:
|
||||
db 3
|
||||
db CONTINUE
|
||||
db NEW_GAME
|
||||
db OPTION
|
||||
db -1
|
||||
|
||||
PlayPokemonMenu:
|
||||
db 2
|
||||
db PLAY_POKEMON
|
||||
db OPTION
|
||||
db -1
|
||||
|
||||
PlayPokemonSetTimeMenu:
|
||||
db 3
|
||||
db PLAY_POKEMON
|
||||
db OPTION
|
||||
db SET_TIME
|
||||
db -1
|
||||
|
||||
10
tools/sort_symfile.sh
Executable file
10
tools/sort_symfile.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
sed $1 \
|
||||
-e "s/^..:[0-3]/0_ROM0@&/g" \
|
||||
-e "s/^..:[4-7]/1_ROMX@&/g" \
|
||||
-e "s/^..:[8-9]/2_VRAM@&/g" \
|
||||
-e "s/^..:[A-B]/3_SRAM@&/g" \
|
||||
-e "s/^00:[C-D]/4_WRAM0@&/g" \
|
||||
-e "s/^..:[D-D]/5_WRAMX@&/g" \
|
||||
| sort -o $1
|
||||
sed -i $1 -e "s/^\w*@//g"
|
||||
Reference in New Issue
Block a user