Merge pull request #542 from mid-kid/master

Miscellaneous fixes
This commit is contained in:
yenatch 2018-07-19 00:46:59 -04:00 committed by GitHub
commit 2d73d040d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
19 changed files with 348 additions and 314 deletions

View File

@ -364,6 +364,7 @@ Sfx_Shine:
Sfx_Unknown5F:
musicheader 3, 5, Sfx_Unknown5F_Ch5
musicheader 1, 6, Sfx_Unknown5F_Ch6
Sfx_Sandstorm:
musicheader 1, 8, Sfx_Sandstorm_Ch8

View File

@ -2,9 +2,12 @@
; Control characters (see home/text.asm)
charmap "<NULL>", $00
charmap "<PLAY_G>", $14 ; "<PLAYER>くん" or "<PLAYER>ちゃん"; same as "<PLAYER>" in English
charmap "<MOBILE>", $15
charmap "<CR>", $16
charmap "¯", $1f ; soft linebreak
charmap "<LNBRK>", $22
charmap "<LF>", $22
charmap "<POKE>", $24 ; "<PO><KE>"
charmap "%", $25 ; soft linebreak in landmark names
charmap "<RED>", $38 ; wRedsName

View File

@ -119,8 +119,14 @@ CMDQUEUE_05 EQU 5
CMDQUEUE_ENTRY_SIZE EQU 6
CMDQUEUE_CAPACITY EQU 4
; command queue types
CMDQUEUE_STONETABLE EQU 2
; HandleQueuedCommand.Jumptable indexes (see engine/overworld/events.asm)
const_def
const CMDQUEUE_NULL
const CMDQUEUE_NULL2
const CMDQUEUE_STONETABLE
const CMDQUEUE_TYPE3
const CMDQUEUE_TYPE4
NUM_CMDQUEUE_TYPES EQU const_value
; elevfloor macro values
; ElevatorFloorNames indexes (see data/events/elevator_floors.asm)

View File

@ -12,4 +12,4 @@ NonTrainerCallerNames:
.bill: db "BILL:@"
.elm: db "PROF.ELM:@"
.bikeshop: db "BIKE SHOP:@"
.buena: db "BUENA:<LNBRK> DISC JOCKEY@"
.buena: db "BUENA:<LF> DISC JOCKEY@"

View File

@ -1550,7 +1550,7 @@ AI_Smart_Spite:
dec [hl]
ret
Function_0x38d16
Function_0x38d16:
jp AIDiscourageMove
AI_Smart_DestinyBond:

View File

@ -8578,7 +8578,7 @@ ReadAndPrintLinkBattleRecord:
db " 0 0 0@"
.Format:
db " --- <LNBRK>"
db " --- <LF>"
db " - - -@"
.Record:
db "<PLAYER>'s RECORD@"

View File

@ -284,7 +284,7 @@ RunBattleAnimCommand:
.loop
call GetBattleAnimByte
cp $ff
cp anim_ret_command
jr nz, .not_done_with_anim
; Return from a subroutine.

View File

@ -270,7 +270,7 @@ ReadBTTrainerParty:
; Check the nicknames for illegal characters, and replace bad nicknames
; with their species names.
ld de, wBT_OTTempMon1Name ; $c643
ld de, wBT_OTTempMon1Name
ld c, MON_NAME_LENGTH
farcall CheckStringForErrors
jr nc, .skip_mon_1
@ -280,44 +280,44 @@ ReadBTTrainerParty:
call GetPokemonName
ld l, e
ld h, d
ld de, wBT_OTTempMon1Name ; $c643
ld de, wBT_OTTempMon1Name
ld bc, MON_NAME_LENGTH
call CopyBytes
.skip_mon_1
ld de, wBT_OTTempMon2Name ; $c67e
ld de, wBT_OTTempMon2Name
ld c, MON_NAME_LENGTH
farcall CheckStringForErrors
jr nc, .skip_mon_2
ld a, [wBT_OTTempMon2] ; [$c64e]
ld a, [wBT_OTTempMon2]
ld [wNamedObjectIndexBuffer], a
call GetPokemonName
ld l, e
ld h, d
ld de, wBT_OTTempMon2Name ; $c67e
ld de, wBT_OTTempMon2Name
ld bc, MON_NAME_LENGTH
call CopyBytes
.skip_mon_2
ld de, wBT_OTTempMon3Name ; $c686 + 51 = $c6b9
ld de, wBT_OTTempMon3Name
ld c, MON_NAME_LENGTH
farcall CheckStringForErrors
jr nc, .skip_mon_3
ld a, [wBT_OTTempMon3] ; [$c689]
ld a, [wBT_OTTempMon3]
ld [wNamedObjectIndexBuffer], a
call GetPokemonName
ld l, e
ld h, d
ld de, wBT_OTTempMon3Name ; $c686 + 51 = $c6b9
ld de, wBT_OTTempMon3Name
ld bc, MON_NAME_LENGTH
call CopyBytes
.skip_mon_3
; Add the terminator character to each of these names
ld a, "@"
ld [wBT_OTTempMon1NameEnd - 1], a ; $c64d
ld [wBT_OTTempMon2NameEnd - 1], a ; $c688
ld [wBT_OTTempMon3NameEnd - 1], a ; $c68a + 57 = $c6c3
ld [wBT_OTTempMon1NameEnd - 1], a
ld [wBT_OTTempMon2NameEnd - 1], a
ld [wBT_OTTempMon3NameEnd - 1], a
; Fix errors in the movesets
call CheckBTMonMovesForErrors
; Repair the trainer name if needed, then copy it to wOTPlayerName

View File

@ -61,20 +61,20 @@ _OptionsMenu:
ret
StringOptions:
db "TEXT SPEED<LNBRK>"
db " :<LNBRK>"
db "BATTLE SCENE<LNBRK>"
db " :<LNBRK>"
db "BATTLE STYLE<LNBRK>"
db " :<LNBRK>"
db "SOUND<LNBRK>"
db " :<LNBRK>"
db "PRINT<LNBRK>"
db " :<LNBRK>"
db "MENU ACCOUNT<LNBRK>"
db " :<LNBRK>"
db "FRAME<LNBRK>"
db " :TYPE<LNBRK>"
db "TEXT SPEED<LF>"
db " :<LF>"
db "BATTLE SCENE<LF>"
db " :<LF>"
db "BATTLE STYLE<LF>"
db " :<LF>"
db "SOUND<LF>"
db " :<LF>"
db "PRINT<LF>"
db " :<LF>"
db "MENU ACCOUNT<LF>"
db " :<LF>"
db "FRAME<LF>"
db " :TYPE<LF>"
db "CANCEL@"
GetOptionPointer:

View File

@ -1336,8 +1336,8 @@ DoBikeStep::
ClearCmdQueue::
ld hl, wCmdQueue
ld de, 6
ld c, 4
ld de, CMDQUEUE_ENTRY_SIZE
ld c, CMDQUEUE_CAPACITY
xor a
.loop
ld [hl], a
@ -1443,7 +1443,7 @@ HandleQueuedCommand:
ld hl, CMDQUEUE_TYPE
add hl, bc
ld a, [hl]
cp 5
cp NUM_CMDQUEUE_TYPES
jr c, .okay
xor a

View File

@ -1317,7 +1317,7 @@ Pokedex_DrawUnownModeBG:
call Pokedex_PlaceFrontpicAtHL
ld de, 0
ld b, 0
ld c, 26
ld c, NUM_UNOWN
.loop
ld hl, wUnownDex
add hl, de
@ -2486,11 +2486,11 @@ Pokedex_LoadUnownFont:
ld a, BANK(UnownFont)
call FarCopyBytes
ld hl, sScratch + $188
ld bc, 27 tiles
ld bc, (NUM_UNOWN + 1) tiles
call Pokedex_InvertTiles
ld de, sScratch + $188
ld hl, vTiles2 tile $40
lb bc, BANK(Pokedex_LoadUnownFont), 27
lb bc, BANK(Pokedex_LoadUnownFont), NUM_UNOWN + 1
call Request2bpp
call CloseSRAM
ret

View File

@ -5,14 +5,14 @@ TownMap_ConvertLineBreakCharacters:
cp "@"
jr z, .end
cp "%"
jr z, .line_break
jr z, .line_feed
cp "¯"
jr z, .line_break
jr z, .line_feed
inc hl
jr .loop
.line_break
ld [hl], "<LNBRK>"
.line_feed
ld [hl], "<LF>"
.end
ld de, wStringBuffer1

View File

@ -178,26 +178,30 @@ NextChar::
CheckDict::
dict: MACRO
if \1 == 0
if \1 == "<NULL>"
and a
else
cp \1
endc
jp z, \2
ENDM
dict2: MACRO
cp \1
if STRSUB("\2", 1, 1) == "\""
; Replace a character with another one
jr nz, ._\@
ld a, \2
._\@:
elif STRSUB("\2", 1, 1) == "."
; Locals can use a short jump
jr z, \2
else
jp z, \2
endc
ENDM
dict TX_DAY, DayOfWeekChar
dict "<MOBILE>", MobileScriptChar
dict "<LINE>", LineChar
dict "<NEXT>", NextLineChar
dict TX_FAR, TextFar
dict TX_START, NullChar
dict "<CR>", CarriageReturnChar
dict "<NULL>", NullChar
dict "<SCROLL>", _ContTextNoPause
dict "<_CONT>", _ContText
dict "<PARA>", Paragraph
@ -215,7 +219,7 @@ ENDM
dict "<TM>", TMChar
dict "<TRAINER>", TrainerChar
dict "<KOUGEKI>", PlaceKougeki
dict "<LNBRK>", LineBreakChar
dict "<LF>", LineFeedChar
dict "<CONT>", ContText
dict "<……>", SixDotsChar
dict "<DONE>", DoneText
@ -223,17 +227,14 @@ ENDM
dict "<PKMN>", PlacePKMN
dict "<POKE>", PlacePOKE
dict "%", NextChar
dict2 "¯", " "
dict "¯", " "
dict "<DEXEND>", PlaceDexEnd
dict "<TARGET>", PlaceMoveTargetsName
dict "<USER>", PlaceMoveUsersName
dict "<ENEMY>", PlaceEnemysName
dict "<PLAY_G>", PlaceGenderedPlayerName
cp "゚"
jr z, .place ; should be .diacritic
cp "゙"
jr z, .place ; should be .diacritic
dict "゚", .place ; should be .diacritic
dict "゙", .place ; should be .diacritic
jr .not_diacritic
.diacritic
@ -276,10 +277,10 @@ ENDM
call PrintLetterDelay
jp NextChar
DayOfWeekChar::
MobileScriptChar::
ld c, l
ld b, h
farcall Function17f036
farcall RunMobileScript
jp PlaceNextChar
print_name: MACRO
@ -409,14 +410,14 @@ NextLineChar::
push hl
jp NextChar
LineBreakChar::
LineFeedChar::
pop hl
ld bc, SCREEN_WIDTH
add hl, bc
push hl
jp NextChar
TextFar::
CarriageReturnChar::
pop hl
push de
ld bc, -wTileMap + $10000
@ -681,32 +682,32 @@ DoTextUntilTerminator::
TextCommands::
; entries correspond to TX_* constants (see macros/scripts/text.asm)
dw Text_TX ; TX_START
dw Text_TX_RAM ; TX_RAM
dw Text_TX_BCD ; TX_BCD
dw Text_TX_MOVE ; TX_MOVE
dw Text_TX_BOX ; TX_BOX
dw Text_TX_LOW ; TX_LOW
dw Text_WAIT_BUTTON ; WAIT_BUTTON
dw Text_TX_SCROLL ; TX_SCROLL
dw Text_START_ASM ; START_ASM
dw Text_TX_NUM ; TX_NUM
dw Text_TX_EXIT ; TX_EXIT
dw Text_PlaySound ; TX_SOUND_DEX_FANFARE_50_79
dw Text_TX_DOTS ; TX_DOTS
dw Text_LINK_WAIT_BUTTON ; TX_LINK_WAIT_BUTTON
dw Text_PlaySound ; TX_SOUND_DEX_FANFARE_20_49
dw Text_PlaySound ; TX_SOUND_ITEM
dw Text_PlaySound ; TX_SOUND_CAUGHT_MON
dw Text_PlaySound ; TX_SOUND_DEX_FANFARE_80_109
dw Text_PlaySound ; TX_SOUND_FANFARE
dw Text_PlaySound ; TX_SOUND_SLOT_MACHINE_START
dw Text_TX_STRINGBUFFER ; TX_STRINGBUFFER
dw Text_TX_DAY ; TX_DAY
dw Text_TX_FAR ; TX_FAR
dw TextCommand_START ; TX_START
dw TextCommand_RAM ; TX_RAM
dw TextCommand_BCD ; TX_BCD
dw TextCommand_MOVE ; TX_MOVE
dw TextCommand_BOX ; TX_BOX
dw TextCommand_LOW ; TX_LOW
dw TextCommand_WAIT_BUTTON ; TX_WAIT_BUTTON
dw TextCommand_SCROLL ; TX_SCROLL
dw TextCommand_START_ASM ; TX_START_ASM
dw TextCommand_NUM ; TX_NUM
dw TextCommand_EXIT ; TX_EXIT
dw TextCommand_SOUND ; TX_SOUND_DEX_FANFARE_50_79
dw TextCommand_DOTS ; TX_DOTS
dw TextCommand_LINK_WAIT_BUTTON ; TX_LINK_WAIT_BUTTON
dw TextCommand_SOUND ; TX_SOUND_DEX_FANFARE_20_49
dw TextCommand_SOUND ; TX_SOUND_ITEM
dw TextCommand_SOUND ; TX_SOUND_CAUGHT_MON
dw TextCommand_SOUND ; TX_SOUND_DEX_FANFARE_80_109
dw TextCommand_SOUND ; TX_SOUND_FANFARE
dw TextCommand_SOUND ; TX_SOUND_SLOT_MACHINE_START
dw TextCommand_STRINGBUFFER ; TX_STRINGBUFFER
dw TextCommand_DAY ; TX_DAY
dw TextCommand_FAR ; TX_FAR
Text_TX::
; TX
TextCommand_START::
; text_start
; write text until "@"
; [$00]["...@"]
@ -720,7 +721,7 @@ Text_TX::
inc hl
ret
Text_TX_RAM::
TextCommand_RAM::
; text_from_ram
; write text from a ram address
; little endian
@ -737,7 +738,7 @@ Text_TX_RAM::
pop hl
ret
Text_TX_FAR::
TextCommand_FAR::
; text_jump
; write text from a different bank
; little endian
@ -766,8 +767,8 @@ Text_TX_FAR::
ld [MBC3RomBank], a
ret
Text_TX_BCD::
; TX_BCD
TextCommand_BCD::
; text_bcd
; write bcd from address, typically ram
; [$02][addr][flags]
; flags: see PrintBCDNumber
@ -787,8 +788,8 @@ Text_TX_BCD::
pop hl
ret
Text_TX_MOVE::
; TX_MOVE
TextCommand_MOVE::
; text_move
; move to a new tile
; [$03][addr]
@ -800,8 +801,8 @@ Text_TX_MOVE::
ld b, a
ret
Text_TX_BOX::
; TX_BOX
TextCommand_BOX::
; text_box
; draw a box
; little endian
; [$04][addr][height][width]
@ -821,25 +822,25 @@ Text_TX_BOX::
pop hl
ret
Text_TX_LOW::
; TX_LOW
TextCommand_LOW::
; text_low
; write text at (1,16)
; [$05]
bccoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2
ret
Text_WAIT_BUTTON::
; TX_WAITBUTTON
TextCommand_WAIT_BUTTON::
; text_waitbutton
; wait for button press
; show arrow
; [06]
ld a, [wLinkMode]
cp LINK_COLOSSEUM
jp z, Text_LINK_WAIT_BUTTON
jp z, TextCommand_LINK_WAIT_BUTTON
cp LINK_MOBILE
jp z, Text_LINK_WAIT_BUTTON
jp z, TextCommand_LINK_WAIT_BUTTON
push hl
call LoadBlinkingCursor
@ -850,7 +851,8 @@ Text_WAIT_BUTTON::
pop hl
ret
Text_TX_SCROLL::
TextCommand_SCROLL::
; text_scroll
; pushes text up two lines and sets the BC cursor to the border tile
; below the first character column of the text box.
push hl
@ -861,8 +863,8 @@ Text_TX_SCROLL::
bccoord TEXTBOX_INNERX, TEXTBOX_INNERY + 2
ret
Text_START_ASM::
; TX_ASM
TextCommand_START_ASM::
; start_asm
bit 7, h
jr nz, .not_rom
@ -873,8 +875,8 @@ Text_START_ASM::
ld [hl], a
ret
Text_TX_NUM::
; TX_NUM
TextCommand_NUM::
; deciram
; [$09][addr][hi:bytes lo:digits]
ld a, [hli]
ld e, a
@ -898,7 +900,8 @@ Text_TX_NUM::
pop hl
ret
Text_TX_EXIT::
TextCommand_EXIT::
; interpret_data
push hl
push bc
call GetJoypad
@ -912,7 +915,7 @@ Text_TX_EXIT::
pop hl
ret
Text_PlaySound::
TextCommand_SOUND::
; chars:
; $0b, $0e, $0f, $10, $11, $12, $13
; see TextSFX
@ -948,7 +951,7 @@ Text_PlaySound::
ret
Unreferenced_Function1522::
; TX_CRY
; play_cry
push de
ld e, [hl]
inc hl
@ -969,7 +972,8 @@ TextSFX::
dbw TX_SOUND_SLOT_MACHINE_START, SFX_SLOT_MACHINE_START
db -1
Text_TX_DOTS::
TextCommand_DOTS::
; limited_interpret_data
; [$0C][num]
ld a, [hli]
ld d, a
@ -997,7 +1001,8 @@ Text_TX_DOTS::
pop hl
ret
Text_LINK_WAIT_BUTTON::
TextCommand_LINK_WAIT_BUTTON::
; link_wait_button
; wait for key down
; display arrow
push hl
@ -1007,7 +1012,8 @@ Text_LINK_WAIT_BUTTON::
pop hl
ret
Text_TX_STRINGBUFFER::
TextCommand_STRINGBUFFER::
; text_buffer
; Print a string from one of the following:
; 0: wStringBuffer3
; 1: wStringBuffer4
@ -1035,8 +1041,8 @@ Text_TX_STRINGBUFFER::
pop hl
ret
Text_TX_DAY::
; TX_DAY
TextCommand_DAY::
; current_day
call GetWeekday
push hl

View File

@ -129,3 +129,4 @@ hDMATransfer EQU $ffe8
hMobile EQU $ffe9
hSystemBooted EQU $ffea
hClockResetTrigger EQU $ffeb
hFFEC EQU $ffec

View File

@ -295,7 +295,7 @@ anim_call: MACRO
dw \1 ; address
ENDM
enum anim_ret_command ; $ff
anim_ret_command EQU -1 ; $ff
anim_ret: MACRO
db anim_ret_command
ENDM

View File

@ -46,9 +46,9 @@ text_low: MACRO
db TX_LOW
ENDM
enum WAIT_BUTTON ; $06
enum TX_WAIT_BUTTON ; $06
text_waitbutton: MACRO
db WAIT_BUTTON
db TX_WAIT_BUTTON
ENDM
enum TX_SCROLL ; $07
@ -56,9 +56,9 @@ text_scroll: MACRO
db TX_SCROLL
ENDM
enum START_ASM ; $08
enum TX_START_ASM ; $08
start_asm: MACRO
db START_ASM
db TX_START_ASM
ENDM
enum TX_NUM ; $09

View File

@ -3894,7 +3894,7 @@ Function8aab6:
ret
String_8aaf0:
db "あたらしい めいし<PKMN>できまし<LNBRK>@"
db "あたらしい めいし<PKMN>できまし<LF>@"
Function8ab00:
ld de, String_8911c

File diff suppressed because it is too large Load Diff

View File

@ -359,7 +359,13 @@ SECTION "Battle", WRAM0
UNION ; c608
; unidentified uses
wc608:: ds 480
wc608:: ds 53
wc63d:: ds 5
wc642:: ds 5
wc647:: ds 33
wc668:: ds 32
wc688:: ds 2
wc68a:: ds 350
NEXTU ; c608
; surrounding tiles
@ -868,7 +874,18 @@ endc
NEXTU ; c6d0
; mobile data
wc6d0:: ds 126
wc6d0:: ds 56
wc708:: db
wc709:: db
wc70a:: db
wc70b:: db
wc70c:: db
wc70d:: db
wc70e:: db
wc70f:: db
wc710:: db
wc711:: db
wc712:: ds 60
wc74e:: ds 107
wc7b9:: ds 1
wc7ba:: ds 1