You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
Merge pull request #424 from roukaour/master
Rename a routine and some maps; remove all code from main.asm
This commit is contained in:
6
FAQ.md
6
FAQ.md
@@ -8,6 +8,7 @@
|
|||||||
- [Can't build ROM; "Segmentation fault" from `rgbgfx`](#cant-build-rom-segmentation-fault-from-rgbgfx)
|
- [Can't build ROM; "Segmentation fault" from `rgbgfx`](#cant-build-rom-segmentation-fault-from-rgbgfx)
|
||||||
- [Can't build ROM; "Section is too big" or "Unable to place section in bank"](#cant-build-rom-section-is-too-big-or-unable-to-place-section-in-bank)
|
- [Can't build ROM; "Section is too big" or "Unable to place section in bank"](#cant-build-rom-section-is-too-big-or-unable-to-place-section-in-bank)
|
||||||
- [How do I edit maps?](#how-do-i-edit-maps)
|
- [How do I edit maps?](#how-do-i-edit-maps)
|
||||||
|
- [How do I write new features?](#how-do-i-write-new-features)
|
||||||
- [I need more help!](#i-need-more-help)
|
- [I need more help!](#i-need-more-help)
|
||||||
|
|
||||||
|
|
||||||
@@ -38,6 +39,11 @@ If you added or changed any code, it has to fit in the **memory banks**. The 2MB
|
|||||||
For `asm` scripts, read [docs/map_scripts.md](docs/map_scripts.md). For `blk` layouts, try [crowdmap](crowdmap) or [Polished Map](polished-map).
|
For `asm` scripts, read [docs/map_scripts.md](docs/map_scripts.md). For `blk` layouts, try [crowdmap](crowdmap) or [Polished Map](polished-map).
|
||||||
|
|
||||||
|
|
||||||
|
## How do I write new features?
|
||||||
|
|
||||||
|
There are a number of special-purpose scripting languages used for different purposes, as described in [docs](docs/). For more general features, you'll need to code directly in assembly language. See [docs/assembly_programming.md](docs/assembly_programming.md).
|
||||||
|
|
||||||
|
|
||||||
## I need more help!
|
## I need more help!
|
||||||
|
|
||||||
Try asking on IRC or Discord (see [README.md](README.md)).
|
Try asking on IRC or Discord (see [README.md](README.md)).
|
||||||
|
@@ -1166,7 +1166,7 @@ Cry_Weepinbell: ; f35ca
|
|||||||
musicheader 1, 8, Cry_Weepinbell_Ch8
|
musicheader 1, 8, Cry_Weepinbell_Ch8
|
||||||
; f35d3
|
; f35d3
|
||||||
|
|
||||||
Unknown_Cry_Ch5: ; f35d3
|
Unused_Cry_Ch5: ; f35d3
|
||||||
sound_duty 0, 0, 3, 3
|
sound_duty 0, 0, 3, 3
|
||||||
sound __, 16, $e0, $0780
|
sound __, 16, $e0, $0780
|
||||||
sound __, 16, $f0, $0784
|
sound __, 16, $f0, $0784
|
||||||
@@ -1177,7 +1177,7 @@ Unknown_Cry_Ch5: ; f35d3
|
|||||||
endchannel
|
endchannel
|
||||||
; f35ee
|
; f35ee
|
||||||
|
|
||||||
Unknown_Cry_Ch6: ; f35ee
|
Unused_Cry_Ch6: ; f35ee
|
||||||
sound_duty 1, 1, 0, 0
|
sound_duty 1, 1, 0, 0
|
||||||
sound __, 16, $a0, $0741
|
sound __, 16, $a0, $0741
|
||||||
sound __, 16, $b0, $0743
|
sound __, 16, $b0, $0743
|
||||||
@@ -1188,7 +1188,7 @@ Unknown_Cry_Ch6: ; f35ee
|
|||||||
endchannel
|
endchannel
|
||||||
; f3609
|
; f3609
|
||||||
|
|
||||||
Unknown_Cry_Ch8: ; f3609
|
Unused_Cry_Ch8: ; f3609
|
||||||
noise __, 3, $f2, $4c
|
noise __, 3, $f2, $4c
|
||||||
noise __, 7, $e0, $3a
|
noise __, 7, $e0, $3a
|
||||||
noise __, 16, $d0, $3a
|
noise __, 16, $d0, $3a
|
||||||
|
@@ -968,14 +968,14 @@ Sfx_Fanfare2: ; f0d56
|
|||||||
musicheader 1, 8, Sfx_Fanfare2_Ch8
|
musicheader 1, 8, Sfx_Fanfare2_Ch8
|
||||||
; f0d5f
|
; f0d5f
|
||||||
|
|
||||||
UnknownSfx: ; f0d5f
|
UnusedSfx: ; f0d5f
|
||||||
musicheader 4, 5, UnknownSfx_Ch5
|
musicheader 4, 5, UnusedSfx_Ch5
|
||||||
musicheader 1, 6, UnknownSfx_Ch6
|
musicheader 1, 6, UnusedSfx_Ch6
|
||||||
musicheader 1, 7, UnknownSfx_Ch7
|
musicheader 1, 7, UnusedSfx_Ch7
|
||||||
musicheader 1, 8, UnknownSfx_Ch8
|
musicheader 1, 8, UnusedSfx_Ch8
|
||||||
; f0d6b
|
; f0d6b
|
||||||
|
|
||||||
UnknownSfx_Ch5: ; f0d6b
|
UnusedSfx_Ch5: ; f0d6b
|
||||||
togglesfx
|
togglesfx
|
||||||
tempo 124
|
tempo 124
|
||||||
volume $77
|
volume $77
|
||||||
@@ -1000,7 +1000,7 @@ UnknownSfx_Ch5: ; f0d6b
|
|||||||
endchannel
|
endchannel
|
||||||
; f0d8a
|
; f0d8a
|
||||||
|
|
||||||
UnknownSfx_Ch6: ; f0d8a
|
UnusedSfx_Ch6: ; f0d8a
|
||||||
togglesfx
|
togglesfx
|
||||||
vibrato $8, $27
|
vibrato $8, $27
|
||||||
dutycycle $2
|
dutycycle $2
|
||||||
@@ -1025,7 +1025,7 @@ UnknownSfx_Ch6: ; f0d8a
|
|||||||
endchannel
|
endchannel
|
||||||
; f0da6
|
; f0da6
|
||||||
|
|
||||||
UnknownSfx_Ch7: ; f0da6
|
UnusedSfx_Ch7: ; f0da6
|
||||||
togglesfx
|
togglesfx
|
||||||
notetype $c, $25
|
notetype $c, $25
|
||||||
octave 4
|
octave 4
|
||||||
@@ -1041,7 +1041,7 @@ UnknownSfx_Ch7: ; f0da6
|
|||||||
endchannel
|
endchannel
|
||||||
; f0db6
|
; f0db6
|
||||||
|
|
||||||
UnknownSfx_Ch8: ; f0db6
|
UnusedSfx_Ch8: ; f0db6
|
||||||
togglesfx
|
togglesfx
|
||||||
sfxtogglenoise $4
|
sfxtogglenoise $4
|
||||||
notetype $c
|
notetype $c
|
||||||
|
@@ -2573,11 +2573,11 @@ WinTrainerBattle: ; 3cfa4
|
|||||||
.CheckMaxedOutMomMoney: ; 3d0b1
|
.CheckMaxedOutMomMoney: ; 3d0b1
|
||||||
ld hl, wMomsMoney + 2
|
ld hl, wMomsMoney + 2
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
cp 999999 % $100
|
cp MAX_MONEY % $100
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
sbc 999999 / $100 % $100
|
sbc MAX_MONEY / $100 % $100
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
sbc 999999 / $10000 % $100
|
sbc MAX_MONEY / $10000 % $100
|
||||||
ret
|
ret
|
||||||
; 3d0be
|
; 3d0be
|
||||||
|
|
||||||
@@ -2602,17 +2602,17 @@ AddBattleMoneyToAccount: ; 3d0be
|
|||||||
jr nz, .loop
|
jr nz, .loop
|
||||||
pop hl
|
pop hl
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
cp 999999 % $100
|
cp MAX_MONEY % $100
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
sbc 999999 / $100 % $100
|
sbc MAX_MONEY / $100 % $100
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
sbc 999999 / $10000 % $100
|
sbc MAX_MONEY / $10000 % $100
|
||||||
ret c
|
ret c
|
||||||
ld [hl], 999999 / $10000 % $100
|
ld [hl], MAX_MONEY / $10000 % $100
|
||||||
inc hl
|
inc hl
|
||||||
ld [hl], 999999 / $100 % $100
|
ld [hl], MAX_MONEY / $100 % $100
|
||||||
inc hl
|
inc hl
|
||||||
ld [hl], 999999 % $100
|
ld [hl], MAX_MONEY % $100
|
||||||
ret
|
ret
|
||||||
; 3d0ea
|
; 3d0ea
|
||||||
|
|
||||||
@@ -7009,14 +7009,14 @@ ApplyStatLevelMultiplier: ; 3ecb7
|
|||||||
|
|
||||||
; Cap at 999.
|
; Cap at 999.
|
||||||
ld a, [hQuotient + 2]
|
ld a, [hQuotient + 2]
|
||||||
sub 999 % $100
|
sub MAX_STAT_VALUE % $100
|
||||||
ld a, [hQuotient + 1]
|
ld a, [hQuotient + 1]
|
||||||
sbc 999 / $100
|
sbc MAX_STAT_VALUE / $100
|
||||||
jp c, .okay3
|
jp c, .okay3
|
||||||
|
|
||||||
ld a, 999 / $100
|
ld a, MAX_STAT_VALUE / $100
|
||||||
ld [hQuotient + 1], a
|
ld [hQuotient + 1], a
|
||||||
ld a, 999 % $100
|
ld a, MAX_STAT_VALUE % $100
|
||||||
ld [hQuotient + 2], a
|
ld [hQuotient + 2], a
|
||||||
|
|
||||||
.okay3
|
.okay3
|
||||||
@@ -7132,13 +7132,13 @@ BoostStat: ; 3ed7c
|
|||||||
|
|
||||||
; Cap at 999.
|
; Cap at 999.
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
sub 999 % $100
|
sub MAX_STAT_VALUE % $100
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
sbc 999 / $100
|
sbc MAX_STAT_VALUE / $100
|
||||||
ret c
|
ret c
|
||||||
ld a, 999 / $100
|
ld a, MAX_STAT_VALUE / $100
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
ld a, 999 % $100
|
ld a, MAX_STAT_VALUE % $100
|
||||||
ld [hld], a
|
ld [hld], a
|
||||||
ret
|
ret
|
||||||
; 3ed9f
|
; 3ed9f
|
||||||
@@ -9135,10 +9135,10 @@ AddLastMobileBattleToLinkRecord: ; 3fa42
|
|||||||
dec hl
|
dec hl
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
inc hl
|
inc hl
|
||||||
cp 9999 / $100
|
cp MAX_LINK_RECORD / $100
|
||||||
ret c
|
ret c
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
cp 9999 % $100
|
cp MAX_LINK_RECORD % $100
|
||||||
ret
|
ret
|
||||||
; 3fac8
|
; 3fac8
|
||||||
|
|
||||||
|
@@ -5651,10 +5651,10 @@ CheckIfStatCanBeRaised: ; 361ef
|
|||||||
.no_carry
|
.no_carry
|
||||||
pop bc
|
pop bc
|
||||||
ld a, [hld]
|
ld a, [hld]
|
||||||
sub 999 % $100
|
sub MAX_STAT_VALUE % $100
|
||||||
jr nz, .not_already_max
|
jr nz, .not_already_max
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
sbc 999 / $100
|
sbc MAX_STAT_VALUE / $100
|
||||||
jp z, .stats_already_max
|
jp z, .stats_already_max
|
||||||
.not_already_max
|
.not_already_max
|
||||||
ld a, [hBattleTurn]
|
ld a, [hBattleTurn]
|
||||||
@@ -6417,14 +6417,14 @@ CalcStats: ; 3661d
|
|||||||
|
|
||||||
.check_maxed_out
|
.check_maxed_out
|
||||||
ld a, [hQuotient + 2]
|
ld a, [hQuotient + 2]
|
||||||
cp 999 % $100
|
cp MAX_STAT_VALUE % $100
|
||||||
ld a, b
|
ld a, b
|
||||||
sbc 999 / $100
|
sbc MAX_STAT_VALUE / $100
|
||||||
jr c, .not_maxed_out
|
jr c, .not_maxed_out
|
||||||
|
|
||||||
ld a, 999 % $100
|
ld a, MAX_STAT_VALUE % $100
|
||||||
ld [hQuotient + 2], a
|
ld [hQuotient + 2], a
|
||||||
ld a, 999 / $100
|
ld a, MAX_STAT_VALUE / $100
|
||||||
ld [hQuotient + 1], a
|
ld [hQuotient + 1], a
|
||||||
|
|
||||||
.not_maxed_out
|
.not_maxed_out
|
||||||
|
@@ -263,7 +263,6 @@ MoveFDDescription:
|
|||||||
MoveFEDescription:
|
MoveFEDescription:
|
||||||
MoveFFDescription:
|
MoveFFDescription:
|
||||||
Move00Description:
|
Move00Description:
|
||||||
UnknownMoveDescription:
|
|
||||||
db "?@"
|
db "?@"
|
||||||
|
|
||||||
PoundDescription:
|
PoundDescription:
|
||||||
|
@@ -54,6 +54,8 @@ NUM_STATS EQU const_value
|
|||||||
STAT_MIN_NORMAL EQU 5
|
STAT_MIN_NORMAL EQU 5
|
||||||
STAT_MIN_HP EQU 10
|
STAT_MIN_HP EQU 10
|
||||||
|
|
||||||
|
MAX_STAT_VALUE EQU 999
|
||||||
|
|
||||||
; shiny dvs
|
; shiny dvs
|
||||||
ATKDEFDV_SHINY EQU $EA
|
ATKDEFDV_SHINY EQU $EA
|
||||||
SPDSPCDV_SHINY EQU $AA
|
SPDSPCDV_SHINY EQU $AA
|
||||||
|
@@ -145,11 +145,11 @@
|
|||||||
const EVENT_ILEX_FOREST_HIDDEN_ETHER
|
const EVENT_ILEX_FOREST_HIDDEN_ETHER
|
||||||
const EVENT_ILEX_FOREST_HIDDEN_SUPER_POTION
|
const EVENT_ILEX_FOREST_HIDDEN_SUPER_POTION
|
||||||
const EVENT_ILEX_FOREST_HIDDEN_FULL_HEAL
|
const EVENT_ILEX_FOREST_HIDDEN_FULL_HEAL
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_HIDDEN_PARLYZ_HEAL
|
const EVENT_GOLDENROD_UNDERGROUND_HIDDEN_PARLYZ_HEAL
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_HIDDEN_SUPER_POTION
|
const EVENT_GOLDENROD_UNDERGROUND_HIDDEN_SUPER_POTION
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_HIDDEN_ANTIDOTE
|
const EVENT_GOLDENROD_UNDERGROUND_HIDDEN_ANTIDOTE
|
||||||
const EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_HIDDEN_MAX_POTION
|
const EVENT_GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES_HIDDEN_MAX_POTION
|
||||||
const EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_HIDDEN_REVIVE
|
const EVENT_GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES_HIDDEN_REVIVE
|
||||||
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_HIDDEN_HYPER_POTION
|
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_HIDDEN_HYPER_POTION
|
||||||
const EVENT_MOUNT_MORTAR_1F_INSIDE_HIDDEN_MAX_REPEL
|
const EVENT_MOUNT_MORTAR_1F_INSIDE_HIDDEN_MAX_REPEL
|
||||||
const EVENT_MOUNT_MORTAR_2F_INSIDE_HIDDEN_FULL_RESTORE
|
const EVENT_MOUNT_MORTAR_2F_INSIDE_HIDDEN_FULL_RESTORE
|
||||||
@@ -238,8 +238,8 @@
|
|||||||
const EVENT_GOT_TM29_PSYCHIC
|
const EVENT_GOT_TM29_PSYCHIC
|
||||||
; Kanto hidden items
|
; Kanto hidden items
|
||||||
const EVENT_DIGLETTS_CAVE_HIDDEN_MAX_REVIVE
|
const EVENT_DIGLETTS_CAVE_HIDDEN_MAX_REVIVE
|
||||||
const EVENT_UNDERGROUND_HIDDEN_FULL_RESTORE
|
const EVENT_UNDERGROUND_PATH_HIDDEN_FULL_RESTORE
|
||||||
const EVENT_UNDERGROUND_HIDDEN_X_SPECIAL
|
const EVENT_UNDERGROUND_PATH_HIDDEN_X_SPECIAL
|
||||||
const EVENT_ROCK_TUNNEL_1F_HIDDEN_X_ACCURACY
|
const EVENT_ROCK_TUNNEL_1F_HIDDEN_X_ACCURACY
|
||||||
const EVENT_ROCK_TUNNEL_1F_HIDDEN_X_DEFEND
|
const EVENT_ROCK_TUNNEL_1F_HIDDEN_X_DEFEND
|
||||||
const EVENT_ROCK_TUNNEL_B1F_HIDDEN_MAX_POTION
|
const EVENT_ROCK_TUNNEL_B1F_HIDDEN_MAX_POTION
|
||||||
@@ -787,10 +787,10 @@
|
|||||||
const EVENT_LEARNED_SLOWPOKETAIL
|
const EVENT_LEARNED_SLOWPOKETAIL
|
||||||
const EVENT_LEARNED_RATICATE_TAIL
|
const EVENT_LEARNED_RATICATE_TAIL
|
||||||
const EVENT_OPENED_DOOR_TO_GIOVANNIS_OFFICE
|
const EVENT_OPENED_DOOR_TO_GIOVANNIS_OFFICE
|
||||||
const EVENT_WAREHOUSE_LAYOUT_1
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1
|
||||||
const EVENT_WAREHOUSE_LAYOUT_2
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2
|
||||||
const EVENT_WAREHOUSE_LAYOUT_3
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3
|
||||||
const EVENT_WAREHOUSE_BLOCKED_OFF
|
const EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_BLOCKED_OFF
|
||||||
const EVENT_LEFT_MONS_WITH_CONTEST_OFFICER
|
const EVENT_LEFT_MONS_WITH_CONTEST_OFFICER
|
||||||
const EVENT_WILLS_ROOM_ENTRANCE_CLOSED
|
const EVENT_WILLS_ROOM_ENTRANCE_CLOSED
|
||||||
const EVENT_WILLS_ROOM_EXIT_OPEN
|
const EVENT_WILLS_ROOM_EXIT_OPEN
|
||||||
@@ -1691,7 +1691,7 @@
|
|||||||
const EVENT_TIN_TOWER_8F_MAX_ELIXER
|
const EVENT_TIN_TOWER_8F_MAX_ELIXER
|
||||||
const EVENT_TIN_TOWER_8F_FULL_RESTORE
|
const EVENT_TIN_TOWER_8F_FULL_RESTORE
|
||||||
const EVENT_TEAM_ROCKET_BASE_B3F_ULTRA_BALL
|
const EVENT_TEAM_ROCKET_BASE_B3F_ULTRA_BALL
|
||||||
const EVENT_UNDERGROUND_WAREHOUSE_ULTRA_BALL
|
const EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_ULTRA_BALL
|
||||||
const EVENT_BURNED_TOWER_1F_HP_UP
|
const EVENT_BURNED_TOWER_1F_HP_UP
|
||||||
const EVENT_BURNED_TOWER_B1F_TM_ENDURE
|
const EVENT_BURNED_TOWER_B1F_TM_ENDURE
|
||||||
const EVENT_NATIONAL_PARK_PARLYZ_HEAL
|
const EVENT_NATIONAL_PARK_PARLYZ_HEAL
|
||||||
@@ -1720,15 +1720,15 @@
|
|||||||
const EVENT_TEAM_ROCKET_BASE_B3F_FULL_HEAL
|
const EVENT_TEAM_ROCKET_BASE_B3F_FULL_HEAL
|
||||||
const EVENT_TEAM_ROCKET_BASE_B3F_ICE_HEAL
|
const EVENT_TEAM_ROCKET_BASE_B3F_ICE_HEAL
|
||||||
const EVENT_ILEX_FOREST_REVIVE
|
const EVENT_ILEX_FOREST_REVIVE
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_COIN_CASE
|
const EVENT_GOLDENROD_UNDERGROUND_COIN_CASE
|
||||||
const EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_SMOKE_BALL
|
const EVENT_GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES_SMOKE_BALL
|
||||||
const EVENT_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES_FULL_HEAL
|
const EVENT_GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES_FULL_HEAL
|
||||||
const EVENT_GOLDENROD_DEPT_STORE_B1F_ETHER
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_ETHER
|
||||||
const EVENT_GOLDENROD_DEPT_STORE_B1F_AMULET_COIN
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_AMULET_COIN
|
||||||
const EVENT_GOLDENROD_DEPT_STORE_B1F_BURN_HEAL
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_BURN_HEAL
|
||||||
const EVENT_GOLDENROD_DEPT_STORE_B1F_ULTRA_BALL
|
const EVENT_GOLDENROD_DEPT_STORE_B1F_ULTRA_BALL
|
||||||
const EVENT_UNDERGROUND_WAREHOUSE_MAX_ETHER
|
const EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_MAX_ETHER
|
||||||
const EVENT_UNDERGROUND_WAREHOUSE_TM_SLEEP_TALK
|
const EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_TM_SLEEP_TALK
|
||||||
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_ETHER
|
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_ETHER
|
||||||
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_REVIVE
|
const EVENT_MOUNT_MORTAR_1F_OUTSIDE_REVIVE
|
||||||
const EVENT_MOUNT_MORTAR_1F_INSIDE_ESCAPE_ROPE
|
const EVENT_MOUNT_MORTAR_1F_INSIDE_ESCAPE_ROPE
|
||||||
@@ -1800,7 +1800,7 @@
|
|||||||
const EVENT_RIVAL_CHERRYGROVE_CITY
|
const EVENT_RIVAL_CHERRYGROVE_CITY
|
||||||
const EVENT_RIVAL_AZALEA_TOWN
|
const EVENT_RIVAL_AZALEA_TOWN
|
||||||
const EVENT_RIVAL_TEAM_ROCKET_BASE
|
const EVENT_RIVAL_TEAM_ROCKET_BASE
|
||||||
const EVENT_RIVAL_UNDERGROUND_PATH
|
const EVENT_RIVAL_GOLDENROD_UNDERGROUND
|
||||||
const EVENT_RIVAL_VICTORY_ROAD
|
const EVENT_RIVAL_VICTORY_ROAD
|
||||||
const EVENT_RIVAL_OLIVINE_CITY
|
const EVENT_RIVAL_OLIVINE_CITY
|
||||||
const EVENT_RIVAL_SPROUT_TOWER
|
const EVENT_RIVAL_SPROUT_TOWER
|
||||||
@@ -1945,10 +1945,10 @@
|
|||||||
const EVENT_OPENED_MT_SILVER
|
const EVENT_OPENED_MT_SILVER
|
||||||
const EVENT_FOUGHT_SNORLAX ; 750
|
const EVENT_FOUGHT_SNORLAX ; 750
|
||||||
const EVENT_LAKE_OF_RAGE_RED_GYARADOS
|
const EVENT_LAKE_OF_RAGE_RED_GYARADOS
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_GRANNY
|
const EVENT_GOLDENROD_UNDERGROUND_GRANNY
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_GRAMPS
|
const EVENT_GOLDENROD_UNDERGROUND_GRAMPS
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_OLDER_HAIRCUT_BROTHER
|
const EVENT_GOLDENROD_UNDERGROUND_OLDER_HAIRCUT_BROTHER
|
||||||
const EVENT_WAREHOUSE_ENTRANCE_YOUNGER_HAIRCUT_BROTHER
|
const EVENT_GOLDENROD_UNDERGROUND_YOUNGER_HAIRCUT_BROTHER
|
||||||
const EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
|
const EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
|
||||||
const EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_GYM
|
const EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_GYM
|
||||||
const EVENT_ROUTE_32_FRIEDA_OF_FRIDAY
|
const EVENT_ROUTE_32_FRIEDA_OF_FRIDAY
|
||||||
|
@@ -63,7 +63,7 @@ KANTO_LANDMARK EQU const_value
|
|||||||
const ROUTE_24 ; 38
|
const ROUTE_24 ; 38
|
||||||
const ROUTE_25 ; 39
|
const ROUTE_25 ; 39
|
||||||
const ROUTE_5 ; 3a
|
const ROUTE_5 ; 3a
|
||||||
const UNDERGROUND ; 3b
|
const UNDERGROUND_PATH ; 3b
|
||||||
const ROUTE_6 ; 3c
|
const ROUTE_6 ; 3c
|
||||||
const VERMILION_CITY ; 3d
|
const VERMILION_CITY ; 3d
|
||||||
const DIGLETTS_CAVE ; 3e
|
const DIGLETTS_CAVE ; 3e
|
||||||
|
@@ -102,10 +102,10 @@ endm
|
|||||||
mapgroup TEAM_ROCKET_BASE_B2F, 9, 15 ; 50
|
mapgroup TEAM_ROCKET_BASE_B2F, 9, 15 ; 50
|
||||||
mapgroup TEAM_ROCKET_BASE_B3F, 9, 15 ; 51
|
mapgroup TEAM_ROCKET_BASE_B3F, 9, 15 ; 51
|
||||||
mapgroup ILEX_FOREST, 27, 15 ; 52
|
mapgroup ILEX_FOREST, 27, 15 ; 52
|
||||||
mapgroup WAREHOUSE_ENTRANCE, 18, 15 ; 53
|
mapgroup GOLDENROD_UNDERGROUND, 18, 15 ; 53
|
||||||
mapgroup UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, 18, 15 ; 54
|
mapgroup GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES, 18, 15 ; 54
|
||||||
mapgroup GOLDENROD_DEPT_STORE_B1F, 9, 10 ; 55
|
mapgroup GOLDENROD_DEPT_STORE_B1F, 9, 10 ; 55
|
||||||
mapgroup UNDERGROUND_WAREHOUSE, 9, 10 ; 56
|
mapgroup GOLDENROD_UNDERGROUND_WAREHOUSE, 9, 10 ; 56
|
||||||
mapgroup MOUNT_MORTAR_1F_OUTSIDE, 18, 20 ; 57
|
mapgroup MOUNT_MORTAR_1F_OUTSIDE, 18, 20 ; 57
|
||||||
mapgroup MOUNT_MORTAR_1F_INSIDE, 27, 20 ; 58
|
mapgroup MOUNT_MORTAR_1F_INSIDE, 27, 20 ; 58
|
||||||
mapgroup MOUNT_MORTAR_2F_INSIDE, 18, 20 ; 59
|
mapgroup MOUNT_MORTAR_2F_INSIDE, 18, 20 ; 59
|
||||||
@@ -135,7 +135,7 @@ endm
|
|||||||
mapgroup TOHJO_FALLS, 9, 15 ; 83
|
mapgroup TOHJO_FALLS, 9, 15 ; 83
|
||||||
mapgroup DIGLETTS_CAVE, 18, 10 ; 84
|
mapgroup DIGLETTS_CAVE, 18, 10 ; 84
|
||||||
mapgroup MOUNT_MOON, 9, 15 ; 85
|
mapgroup MOUNT_MOON, 9, 15 ; 85
|
||||||
mapgroup UNDERGROUND, 14, 3 ; 86
|
mapgroup UNDERGROUND_PATH, 14, 3 ; 86
|
||||||
mapgroup ROCK_TUNNEL_1F, 18, 15 ; 87
|
mapgroup ROCK_TUNNEL_1F, 18, 15 ; 87
|
||||||
mapgroup ROCK_TUNNEL_B1F, 18, 15 ; 88
|
mapgroup ROCK_TUNNEL_B1F, 18, 15 ; 88
|
||||||
mapgroup SAFARI_ZONE_FUCHSIA_GATE_BETA, 4, 5 ; 89
|
mapgroup SAFARI_ZONE_FUCHSIA_GATE_BETA, 4, 5 ; 89
|
||||||
@@ -278,7 +278,7 @@ endm
|
|||||||
mapgroup VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
|
mapgroup VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
|
||||||
mapgroup VERMILION_GYM, 9, 5 ; 11
|
mapgroup VERMILION_GYM, 9, 5 ; 11
|
||||||
mapgroup ROUTE_6_SAFFRON_GATE, 4, 5 ; 12
|
mapgroup ROUTE_6_SAFFRON_GATE, 4, 5 ; 12
|
||||||
mapgroup ROUTE_6_UNDERGROUND_ENTRANCE, 4, 4 ; 13
|
mapgroup ROUTE_6_UNDERGROUND_PATH_ENTRANCE, 4, 4 ; 13
|
||||||
|
|
||||||
newgroup ; 13
|
newgroup ; 13
|
||||||
|
|
||||||
@@ -469,7 +469,7 @@ endm
|
|||||||
mapgroup SILPH_CO_1F, 4, 8 ; 10
|
mapgroup SILPH_CO_1F, 4, 8 ; 10
|
||||||
mapgroup COPYCATS_HOUSE_1F, 4, 4 ; 11
|
mapgroup COPYCATS_HOUSE_1F, 4, 4 ; 11
|
||||||
mapgroup COPYCATS_HOUSE_2F, 3, 5 ; 12
|
mapgroup COPYCATS_HOUSE_2F, 3, 5 ; 12
|
||||||
mapgroup ROUTE_5_UNDERGROUND_ENTRANCE, 4, 4 ; 13
|
mapgroup ROUTE_5_UNDERGROUND_PATH_ENTRANCE, 4, 4 ; 13
|
||||||
mapgroup ROUTE_5_SAFFRON_CITY_GATE, 4, 5 ; 14
|
mapgroup ROUTE_5_SAFFRON_CITY_GATE, 4, 5 ; 14
|
||||||
mapgroup ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, 4, 4 ; 15
|
mapgroup ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, 4, 4 ; 15
|
||||||
|
|
||||||
|
@@ -89,10 +89,14 @@ HOF_MON_LENGTH = 1 + 2 + 2 + 1 + (PKMN_NAME_LENGTH +- 1) ; species, id, dvs, lev
|
|||||||
HOF_LENGTH = 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; win count, party, terminator
|
HOF_LENGTH = 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; win count, party, terminator
|
||||||
NUM_HOF_TEAMS = 30
|
NUM_HOF_TEAMS = 30
|
||||||
|
|
||||||
|
MAX_LINK_RECORD EQU 9999
|
||||||
|
|
||||||
|
|
||||||
; significant money values
|
; significant money values
|
||||||
START_MONEY EQU 3000
|
START_MONEY EQU 3000
|
||||||
MOM_MONEY EQU 2300
|
MOM_MONEY EQU 2300
|
||||||
|
MAX_MONEY EQU 999999
|
||||||
|
MAX_COINS EQU 9999
|
||||||
|
|
||||||
|
|
||||||
; ChangeHappiness arguments (see data/happiness_changes.asm)
|
; ChangeHappiness arguments (see data/happiness_changes.asm)
|
||||||
|
@@ -73,7 +73,7 @@ MapScenes:: ; 4d01e
|
|||||||
scene_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FSceneID
|
scene_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FSceneID
|
||||||
scene_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FSceneID
|
scene_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FSceneID
|
||||||
scene_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FSceneID
|
scene_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FSceneID
|
||||||
scene_def UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, wUndergroundPathSwitchRoomEntrancesSceneID
|
scene_def GOLDENROD_UNDERGROUND_SWITCH_ROOM_ENTRANCES, wGoldenrodUndergroundSwitchRoomEntrancesSceneID
|
||||||
scene_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3SceneID
|
scene_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3SceneID
|
||||||
scene_def VICTORY_ROAD, wVictoryRoadSceneID
|
scene_def VICTORY_ROAD, wVictoryRoadSceneID
|
||||||
scene_def DRAGONS_DEN_B1F, wDragonsDenB1FSceneID
|
scene_def DRAGONS_DEN_B1F, wDragonsDenB1FSceneID
|
||||||
|
@@ -4,7 +4,9 @@ INCLUDE "includes.asm"
|
|||||||
SECTION "Egg Moves", ROMX
|
SECTION "Egg Moves", ROMX
|
||||||
|
|
||||||
; All instances of Charm, Steel Wing, Sweet Scent, and Lovely Kiss were
|
; All instances of Charm, Steel Wing, Sweet Scent, and Lovely Kiss were
|
||||||
; removed from egg move lists in Crystal, because they are also TMs.
|
; removed from egg move lists in Crystal.
|
||||||
|
; Sweet Scent and Steel Wing were redundant since they're TMs, and
|
||||||
|
; Charm and Lovely Kiss were unobtainable.
|
||||||
|
|
||||||
; Staryu's egg moves were removed in Crystal, because Staryu is genderless
|
; Staryu's egg moves were removed in Crystal, because Staryu is genderless
|
||||||
; and can only breed with Ditto.
|
; and can only breed with Ditto.
|
||||||
|
15
docs/assembly_programming.md
Normal file
15
docs/assembly_programming.md
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# Assembly Programming
|
||||||
|
|
||||||
|
- [**RGBDS documentation**](rgbds-doc): Includes information on the RGBDS tools and the assembly language syntax.
|
||||||
|
- [**Pan Docs**](pan-docs): Everything You Always Wanted To Know About GAMEBOY (but were afraid to ask).
|
||||||
|
- [**GameBoy Programming Manual](gb-manual): The official GameBoy programming and hardware manual by Nintendo.
|
||||||
|
- [**GameBoy Opcode Summary**](gb-opcodes): Describes the opcodes of GameBoy assembly language.
|
||||||
|
- [**GameBoy Memory Map**](gb-memory-map): Describes the GameBoy Color address space.
|
||||||
|
- [**awesome-gbdev**](awesome-gbdev): A curated list of Game Boy development resources such as tools, docs, emulators, related projects and open-source ROMs.
|
||||||
|
|
||||||
|
[rgbds-doc]: https://rednex.github.io/
|
||||||
|
[pan-docs]: http://bgb.bircd.org/pandocs.htm
|
||||||
|
[gb-manual]: https://ia801906.us.archive.org/19/items/GameBoyProgManVer1.1/GameBoyProgManVer1.1.pdf
|
||||||
|
[gb-opcodes]: http://www.devrs.com/gb/files/opcodes.html
|
||||||
|
[gb-memory-map]: http://gameboy.mongenel.com/dmg/asmmemmap.html
|
||||||
|
[awesome-gbdev]: https://github.com/avivace/awesome-gbdev
|
@@ -60,7 +60,7 @@ Predef_StartBattle: ; 8c20f
|
|||||||
call UpdateSprites
|
call UpdateSprites
|
||||||
call DelayFrame
|
call DelayFrame
|
||||||
call .NonMobile_LoadPokeballTiles
|
call .NonMobile_LoadPokeballTiles
|
||||||
call BattleStart_LoadEDTile
|
call BattleStart_CopyTilemapAtOnce
|
||||||
jr .resume
|
jr .resume
|
||||||
|
|
||||||
.mobile
|
.mobile
|
||||||
@@ -663,7 +663,7 @@ StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc)
|
|||||||
ld a, $1
|
ld a, $1
|
||||||
ld [hCGBPalUpdate], a
|
ld [hCGBPalUpdate], a
|
||||||
call DelayFrame
|
call DelayFrame
|
||||||
call BattleStart_LoadEDTile
|
call BattleStart_CopyTilemapAtOnce
|
||||||
|
|
||||||
.nextscene ; 8c673 (23:4673)
|
.nextscene ; 8c673 (23:4673)
|
||||||
call StartTrainerBattle_NextScene
|
call StartTrainerBattle_NextScene
|
||||||
|
@@ -1185,14 +1185,14 @@ CardFlip_CheckWinCondition: ; e0637
|
|||||||
|
|
||||||
.IsCoinCaseFull: ; e0833
|
.IsCoinCaseFull: ; e0833
|
||||||
ld a, [Coins]
|
ld a, [Coins]
|
||||||
cp 9999 / $100
|
cp MAX_COINS / $100
|
||||||
jr c, .less
|
jr c, .less
|
||||||
jr z, .check_low
|
jr z, .check_low
|
||||||
jr .more
|
jr .more
|
||||||
|
|
||||||
.check_low
|
.check_low
|
||||||
ld a, [Coins + 1]
|
ld a, [Coins + 1]
|
||||||
cp 9999 % $100
|
cp MAX_COINS % $100
|
||||||
jr c, .less
|
jr c, .less
|
||||||
|
|
||||||
.more
|
.more
|
||||||
|
@@ -307,7 +307,7 @@ Function8bec:
|
|||||||
ld a, [EnemySafeguardCount] ; value
|
ld a, [EnemySafeguardCount] ; value
|
||||||
and $3
|
and $3
|
||||||
call FillBoxCGB
|
call FillBoxCGB
|
||||||
call LoadEDTile
|
call CopyTilemapAtOnce
|
||||||
ret
|
ret
|
||||||
|
|
||||||
ApplyMonOrTrainerPals:
|
ApplyMonOrTrainerPals:
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
_Diploma: ; 1dd702
|
_Diploma: ; 1dd702
|
||||||
call PlaceDiplomaOnScreen
|
call PlaceDiplomaOnScreen
|
||||||
call WaitPressAorB_BlinkCursor
|
call WaitPressAorB_BlinkCursor
|
||||||
|
@@ -78,7 +78,7 @@ ReturnFromMapSetupScript:: ; b8000
|
|||||||
ret z
|
ret z
|
||||||
cp LAV_RADIO_TOWER
|
cp LAV_RADIO_TOWER
|
||||||
ret z
|
ret z
|
||||||
cp UNDERGROUND
|
cp UNDERGROUND_PATH
|
||||||
ret z
|
ret z
|
||||||
cp INDIGO_PLATEAU
|
cp INDIGO_PLATEAU
|
||||||
ret z
|
ret z
|
||||||
|
@@ -2147,8 +2147,8 @@ GetHealingItemAmount: ; f395 (3:7395)
|
|||||||
dbw HYPER_POTION, 200
|
dbw HYPER_POTION, 200
|
||||||
dbw SUPER_POTION, 50
|
dbw SUPER_POTION, 50
|
||||||
dbw POTION, 20
|
dbw POTION, 20
|
||||||
dbw MAX_POTION, 999
|
dbw MAX_POTION, MAX_STAT_VALUE
|
||||||
dbw FULL_RESTORE, 999
|
dbw FULL_RESTORE, MAX_STAT_VALUE
|
||||||
dbw MOOMOO_MILK, 100
|
dbw MOOMOO_MILK, 100
|
||||||
dbw BERRY, 10
|
dbw BERRY, 10
|
||||||
dbw GOLD_BERRY, 30
|
dbw GOLD_BERRY, 30
|
||||||
@@ -3314,5 +3314,3 @@ GetMthMoveOfCurrentMon: ; f969
|
|||||||
add hl, bc
|
add hl, bc
|
||||||
ret
|
ret
|
||||||
; f971
|
; f971
|
||||||
|
|
||||||
INCLUDE "engine/pokeball_wobble.asm"
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user