mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-09-09 09:51:34 -07:00
wram macros moved to new file
This commit is contained in:
parent
69af99da5e
commit
61c4cfe7d7
212
macros/wram.asm
Executable file
212
macros/wram.asm
Executable file
@ -0,0 +1,212 @@
|
||||
|
||||
flag_array: MACRO
|
||||
ds ((\1) + 7) / 8
|
||||
ENDM
|
||||
|
||||
box_struct: MACRO
|
||||
\1Species:: db
|
||||
\1Item:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1ID:: dw
|
||||
\1Exp:: ds 3
|
||||
\1StatExp::
|
||||
\1HPExp:: dw
|
||||
\1AtkExp:: dw
|
||||
\1DefExp:: dw
|
||||
\1SpdExp:: dw
|
||||
\1SpcExp:: dw
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
\1Happiness:: db
|
||||
\1PokerusStatus:: db
|
||||
\1CaughtData::
|
||||
\1CaughtTime::
|
||||
\1CaughtLevel:: db
|
||||
\1CaughtGender::
|
||||
\1CaughtLocation:: db
|
||||
\1Level:: db
|
||||
\1End::
|
||||
ENDM
|
||||
|
||||
party_struct: MACRO
|
||||
box_struct \1
|
||||
\1Status:: db
|
||||
\1Unused:: db
|
||||
\1HP:: dw
|
||||
\1MaxHP:: dw
|
||||
\1Stats:: ; big endian
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1SpclAtk:: dw
|
||||
\1SpclDef:: dw
|
||||
\1StatsEnd::
|
||||
ENDM
|
||||
|
||||
red_box_struct: MACRO
|
||||
\1Species:: db
|
||||
\1HP:: dw
|
||||
\1BoxLevel:: db
|
||||
\1Status:: db
|
||||
\1Type::
|
||||
\1Type1:: db
|
||||
\1Type2:: db
|
||||
\1CatchRate:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1OTID:: dw
|
||||
\1Exp:: ds 3
|
||||
\1HPExp:: dw
|
||||
\1AttackExp:: dw
|
||||
\1DefenseExp:: dw
|
||||
\1SpeedExp:: dw
|
||||
\1SpecialExp:: dw
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
ENDM
|
||||
|
||||
red_party_struct: MACRO
|
||||
red_box_struct \1
|
||||
\1Level:: db
|
||||
\1Stats::
|
||||
\1MaxHP:: dw
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1Special:: dw
|
||||
ENDM
|
||||
|
||||
|
||||
battle_struct: MACRO
|
||||
\1Species:: db
|
||||
\1Item:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1MovesEnd::
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
\1Happiness:: db
|
||||
\1Level:: db
|
||||
\1Status:: ds 2
|
||||
\1HP:: dw
|
||||
\1MaxHP:: dw
|
||||
\1Stats:: ; big endian
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1SpclAtk:: dw
|
||||
\1SpclDef:: dw
|
||||
\1StatsEnd::
|
||||
\1Type::
|
||||
\1Type1:: db
|
||||
\1Type2:: db
|
||||
\1StructEnd::
|
||||
ENDM
|
||||
|
||||
box: MACRO
|
||||
\1::
|
||||
\1Count:: ds 1
|
||||
\1Species:: ds MONS_PER_BOX + 1
|
||||
\1Mons::
|
||||
\1Mon1:: box_struct \1Mon1
|
||||
\1Mon2:: ds BOXMON_STRUCT_LENGTH * (MONS_PER_BOX +- 1)
|
||||
\1MonOT:: ds NAME_LENGTH * MONS_PER_BOX
|
||||
\1MonNicknames:: ds PKMN_NAME_LENGTH * MONS_PER_BOX
|
||||
\1MonNicknamesEnd::
|
||||
\1End:: ds 2 ; padding
|
||||
ENDM
|
||||
|
||||
|
||||
channel_struct: MACRO
|
||||
; Addreses are Channel1 (c101).
|
||||
\1MusicID:: dw
|
||||
\1MusicBank:: db
|
||||
\1Flags:: db ; 0:on/off 1:subroutine 3:sfx 4:noise 5:rest
|
||||
\1Flags2:: db ; 0:vibrato on/off 2:duty 4:cry pitch
|
||||
\1Flags3:: db ; 0:vibrato up/down
|
||||
\1MusicAddress:: dw
|
||||
\1LastMusicAddress:: dw
|
||||
dw
|
||||
\1NoteFlags:: db ; 5:rest
|
||||
\1Condition:: db ; conditional jumps
|
||||
\1DutyCycle:: db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
|
||||
\1Intensity:: db ; hi:pressure lo:velocity
|
||||
\1Frequency:: ; 11 bits
|
||||
\1FrequencyLo:: db
|
||||
\1FrequencyHi:: db
|
||||
\1Pitch:: db ; 0:rest 1-c:note
|
||||
\1Octave:: db ; 7-0 (0 is highest)
|
||||
\1StartingOctave:: db ; raises existing octaves (to repeat phrases)
|
||||
\1NoteDuration:: db ; frames remaining for the current note
|
||||
\1Field0x16:: ds 1 ; c117
|
||||
ds 1 ; c118
|
||||
\1LoopCount:: db
|
||||
\1Tempo:: dw
|
||||
\1Tracks:: db ; hi:left lo:right
|
||||
\1Field0x1c:: ds 1 ; c11d
|
||||
\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
|
||||
\1VibratoDelay:: db ; number of frames a note plays until vibrato starts
|
||||
\1VibratoExtent:: db
|
||||
\1VibratoRate:: db ; hi:frames for each alt lo:frames to the next alt
|
||||
\1Field0x21:: ds 1 ; c122
|
||||
\1Field0x22:: ds 1 ; c123
|
||||
\1Field0x23:: ds 1 ; c124
|
||||
\1Field0x24:: ds 1 ; c125
|
||||
\1Field0x25:: ds 1 ; c126
|
||||
ds 1 ; c127
|
||||
\1CryPitch:: dw
|
||||
\1Field0x29:: ds 1
|
||||
\1Field0x2a:: ds 2
|
||||
\1Field0x2c:: ds 1
|
||||
\1NoteLength:: db ; frames per 16th note
|
||||
\1Field0x2e:: ds 1 ; c12f
|
||||
\1Field0x2f:: ds 1 ; c130
|
||||
\1Field0x30:: ds 1 ; c131
|
||||
ds 1 ; c132
|
||||
ENDM
|
||||
|
||||
battle_tower_struct: MACRO
|
||||
\1Name:: ds NAME_LENGTH +- 1
|
||||
\1TrainerClass:: ds 1
|
||||
\1Pkmn1:: party_struct \1Pkmn1
|
||||
\1Pkmn1Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn1NameEnd::
|
||||
\1Pkmn2:: party_struct \1Pkmn2
|
||||
\1Pkmn2Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn2NameEnd::
|
||||
\1Pkmn3:: party_struct \1Pkmn3
|
||||
\1Pkmn3Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn3NameEnd::
|
||||
\1TrainerData:: ds BATTLETOWER_TRAINERDATALENGTH
|
||||
\1TrainerEnd::
|
||||
endm
|
||||
|
||||
mailmsg: MACRO
|
||||
\1Message:: ds MAIL_MSG_LENGTH
|
||||
\1MessageEnd:: ds 1
|
||||
\1Author:: ds PLAYER_NAME_LENGTH
|
||||
\1AuthorNationality:: ds 2
|
||||
\1AuthorID:: ds 2
|
||||
\1Species:: ds 1
|
||||
\1Type:: ds 1
|
||||
\1End::
|
||||
endm
|
||||
|
||||
hof_mon: MACRO
|
||||
\1Species:: ds 1
|
||||
\1ID:: ds 2
|
||||
\1DVs:: ds 2
|
||||
\1Level:: ds 1
|
||||
\1Nickname:: ds PKMN_NAME_LENGTH +- 1
|
||||
\1End::
|
||||
endm
|
||||
|
||||
hall_of_fame: MACRO
|
||||
\1::
|
||||
\1WinCount:: ds 1
|
||||
\1Mon1:: hof_mon \1Mon1
|
||||
\1Mon2:: hof_mon \1Mon2
|
||||
\1Mon3:: hof_mon \1Mon3
|
||||
\1Mon4:: hof_mon \1Mon4
|
||||
\1Mon5:: hof_mon \1Mon5
|
||||
\1Mon6:: hof_mon \1Mon6
|
||||
\1End:: ds 1
|
||||
ENDM
|
@ -10,7 +10,7 @@ GBCOnlyScreen: ; 4ea82
|
||||
call ClearTileMap
|
||||
|
||||
ld hl, GBCOnlyGFX
|
||||
ld de, wd000
|
||||
ld de, $d000
|
||||
ld a, [rSVBK]
|
||||
push af
|
||||
ld a, 0
|
||||
@ -19,7 +19,7 @@ GBCOnlyScreen: ; 4ea82
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
|
||||
ld de, wd000
|
||||
ld de, $d000
|
||||
ld hl, VTiles2
|
||||
lb bc, BANK(GBCOnlyGFX), $54
|
||||
call Get2bpp
|
||||
|
216
wram.asm
216
wram.asm
@ -1,217 +1,5 @@
|
||||
INCLUDE "includes.asm"
|
||||
|
||||
flag_array: MACRO
|
||||
ds ((\1) + 7) / 8
|
||||
ENDM
|
||||
|
||||
box_struct: MACRO
|
||||
\1Species:: db
|
||||
\1Item:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1ID:: dw
|
||||
\1Exp:: ds 3
|
||||
\1StatExp::
|
||||
\1HPExp:: dw
|
||||
\1AtkExp:: dw
|
||||
\1DefExp:: dw
|
||||
\1SpdExp:: dw
|
||||
\1SpcExp:: dw
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
\1Happiness:: db
|
||||
\1PokerusStatus:: db
|
||||
\1CaughtData::
|
||||
\1CaughtTime::
|
||||
\1CaughtLevel:: db
|
||||
\1CaughtGender::
|
||||
\1CaughtLocation:: db
|
||||
\1Level:: db
|
||||
\1End::
|
||||
ENDM
|
||||
|
||||
party_struct: MACRO
|
||||
box_struct \1
|
||||
\1Status:: db
|
||||
\1Unused:: db
|
||||
\1HP:: dw
|
||||
\1MaxHP:: dw
|
||||
\1Stats:: ; big endian
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1SpclAtk:: dw
|
||||
\1SpclDef:: dw
|
||||
\1StatsEnd::
|
||||
ENDM
|
||||
|
||||
red_box_struct: MACRO
|
||||
\1Species:: db
|
||||
\1HP:: dw
|
||||
\1BoxLevel:: db
|
||||
\1Status:: db
|
||||
\1Type::
|
||||
\1Type1:: db
|
||||
\1Type2:: db
|
||||
\1CatchRate:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1OTID:: dw
|
||||
\1Exp:: ds 3
|
||||
\1HPExp:: dw
|
||||
\1AttackExp:: dw
|
||||
\1DefenseExp:: dw
|
||||
\1SpeedExp:: dw
|
||||
\1SpecialExp:: dw
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
ENDM
|
||||
|
||||
red_party_struct: MACRO
|
||||
red_box_struct \1
|
||||
\1Level:: db
|
||||
\1Stats::
|
||||
\1MaxHP:: dw
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1Special:: dw
|
||||
ENDM
|
||||
|
||||
|
||||
battle_struct: MACRO
|
||||
\1Species:: db
|
||||
\1Item:: db
|
||||
\1Moves:: ds NUM_MOVES
|
||||
\1MovesEnd::
|
||||
\1DVs:: ds 2
|
||||
\1PP:: ds NUM_MOVES
|
||||
\1Happiness:: db
|
||||
\1Level:: db
|
||||
\1Status:: ds 2
|
||||
\1HP:: dw
|
||||
\1MaxHP:: dw
|
||||
\1Stats:: ; big endian
|
||||
\1Attack:: dw
|
||||
\1Defense:: dw
|
||||
\1Speed:: dw
|
||||
\1SpclAtk:: dw
|
||||
\1SpclDef:: dw
|
||||
\1StatsEnd::
|
||||
\1Type::
|
||||
\1Type1:: db
|
||||
\1Type2:: db
|
||||
\1StructEnd::
|
||||
ENDM
|
||||
|
||||
box: MACRO
|
||||
\1::
|
||||
\1Count:: ds 1
|
||||
\1Species:: ds MONS_PER_BOX + 1
|
||||
\1Mons::
|
||||
\1Mon1:: box_struct \1Mon1
|
||||
\1Mon2:: ds BOXMON_STRUCT_LENGTH * (MONS_PER_BOX +- 1)
|
||||
\1MonOT:: ds NAME_LENGTH * MONS_PER_BOX
|
||||
\1MonNicknames:: ds PKMN_NAME_LENGTH * MONS_PER_BOX
|
||||
\1MonNicknamesEnd::
|
||||
\1End:: ds 2 ; padding
|
||||
ENDM
|
||||
|
||||
|
||||
channel_struct: MACRO
|
||||
; Addreses are Channel1 (c101).
|
||||
\1MusicID:: dw
|
||||
\1MusicBank:: db
|
||||
\1Flags:: db ; 0:on/off 1:subroutine 3:sfx 4:noise 5:rest
|
||||
\1Flags2:: db ; 0:vibrato on/off 2:duty 4:cry pitch
|
||||
\1Flags3:: db ; 0:vibrato up/down
|
||||
\1MusicAddress:: dw
|
||||
\1LastMusicAddress:: dw
|
||||
dw
|
||||
\1NoteFlags:: db ; 5:rest
|
||||
\1Condition:: db ; conditional jumps
|
||||
\1DutyCycle:: db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
|
||||
\1Intensity:: db ; hi:pressure lo:velocity
|
||||
\1Frequency:: ; 11 bits
|
||||
\1FrequencyLo:: db
|
||||
\1FrequencyHi:: db
|
||||
\1Pitch:: db ; 0:rest 1-c:note
|
||||
\1Octave:: db ; 7-0 (0 is highest)
|
||||
\1StartingOctave:: db ; raises existing octaves (to repeat phrases)
|
||||
\1NoteDuration:: db ; frames remaining for the current note
|
||||
\1Field0x16:: ds 1 ; c117
|
||||
ds 1 ; c118
|
||||
\1LoopCount:: db
|
||||
\1Tempo:: dw
|
||||
\1Tracks:: db ; hi:left lo:right
|
||||
\1Field0x1c:: ds 1 ; c11d
|
||||
\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
|
||||
\1VibratoDelay:: db ; number of frames a note plays until vibrato starts
|
||||
\1VibratoExtent:: db
|
||||
\1VibratoRate:: db ; hi:frames for each alt lo:frames to the next alt
|
||||
\1Field0x21:: ds 1 ; c122
|
||||
\1Field0x22:: ds 1 ; c123
|
||||
\1Field0x23:: ds 1 ; c124
|
||||
\1Field0x24:: ds 1 ; c125
|
||||
\1Field0x25:: ds 1 ; c126
|
||||
ds 1 ; c127
|
||||
\1CryPitch:: dw
|
||||
\1Field0x29:: ds 1
|
||||
\1Field0x2a:: ds 2
|
||||
\1Field0x2c:: ds 1
|
||||
\1NoteLength:: db ; frames per 16th note
|
||||
\1Field0x2e:: ds 1 ; c12f
|
||||
\1Field0x2f:: ds 1 ; c130
|
||||
\1Field0x30:: ds 1 ; c131
|
||||
ds 1 ; c132
|
||||
ENDM
|
||||
|
||||
battle_tower_struct: MACRO
|
||||
\1Name:: ds NAME_LENGTH +- 1
|
||||
\1TrainerClass:: ds 1
|
||||
\1Pkmn1:: party_struct \1Pkmn1
|
||||
\1Pkmn1Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn1NameEnd::
|
||||
\1Pkmn2:: party_struct \1Pkmn2
|
||||
\1Pkmn2Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn2NameEnd::
|
||||
\1Pkmn3:: party_struct \1Pkmn3
|
||||
\1Pkmn3Name:: ds PKMN_NAME_LENGTH
|
||||
\1Pkmn3NameEnd::
|
||||
\1TrainerData:: ds BATTLETOWER_TRAINERDATALENGTH
|
||||
\1TrainerEnd::
|
||||
endm
|
||||
|
||||
mailmsg: MACRO
|
||||
\1Message:: ds MAIL_MSG_LENGTH
|
||||
\1MessageEnd:: ds 1
|
||||
\1Author:: ds PLAYER_NAME_LENGTH
|
||||
\1AuthorNationality:: ds 2
|
||||
\1AuthorID:: ds 2
|
||||
\1Species:: ds 1
|
||||
\1Type:: ds 1
|
||||
\1End::
|
||||
endm
|
||||
|
||||
hof_mon: MACRO
|
||||
\1Species:: ds 1
|
||||
\1ID:: ds 2
|
||||
\1DVs:: ds 2
|
||||
\1Level:: ds 1
|
||||
\1Nickname:: ds PKMN_NAME_LENGTH +- 1
|
||||
\1End::
|
||||
endm
|
||||
|
||||
hall_of_fame: MACRO
|
||||
\1::
|
||||
\1WinCount:: ds 1
|
||||
\1Mon1:: hof_mon \1Mon1
|
||||
\1Mon2:: hof_mon \1Mon2
|
||||
\1Mon3:: hof_mon \1Mon3
|
||||
\1Mon4:: hof_mon \1Mon4
|
||||
\1Mon5:: hof_mon \1Mon5
|
||||
\1Mon6:: hof_mon \1Mon6
|
||||
\1End:: ds 1
|
||||
ENDM
|
||||
|
||||
INCLUDE "macros/wram.asm"
|
||||
INCLUDE "vram.asm"
|
||||
|
||||
SECTION "Stack", WRAM0
|
||||
@ -1766,7 +1554,7 @@ wMinutesSince:: ds 1
|
||||
wHoursSince:: ds 1
|
||||
wDaysSince:: ds 1
|
||||
|
||||
wRAM0End:: ; cfc0
|
||||
wRAM0End:: ; cfd8
|
||||
|
||||
|
||||
SECTION "WRAM 1", WRAMX, BANK [1]
|
||||
|
Loading…
Reference in New Issue
Block a user