Merge pull request #167 from Pokechu22/rgbds-0.3.3

Update for RGBDS 0.3.3
This commit is contained in:
yenatch 2017-09-29 22:41:34 -04:00 committed by GitHub
commit 5c24193831
21 changed files with 219 additions and 38 deletions

View file

@ -2,9 +2,9 @@ language: c
install: install:
- |- - |-
path="$(pwd)"; cd; path="$(pwd)"; cd;
wget https://github.com/rednex/rgbds/archive/v0.2.5.tar.gz -O rgbds.tar.gz && wget https://github.com/rednex/rgbds/archive/v0.3.3.tar.gz -O rgbds.tar.gz &&
tar xf rgbds.tar.gz && tar xf rgbds.tar.gz &&
cd rgbds-0.2.5 && cd rgbds-0.3.3 &&
sudo make install && sudo make install &&
cd - && cd - &&
rm -rf rgbds && rm -rf rgbds &&

View file

@ -44,8 +44,9 @@ pokered_opt = -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 -t "POKEMON RED"
pokeblue_opt = -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 -t "POKEMON BLUE" pokeblue_opt = -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 -t "POKEMON BLUE"
%.gbc: $$(%_obj) %.gbc: $$(%_obj)
rgblink -n $*.sym -o $@ $^ rgblink -n $*.sym -l pokered.link -o $@ $^
rgbfix $($*_opt) $@ rgbfix $($*_opt) $@
sort $*.sym -o $*.sym
%.png: ; %.png: ;
%.2bpp: %.png ; @$(2bpp) $< %.2bpp: %.png ; @$(2bpp) $<

View file

@ -213,7 +213,7 @@ PlayAnimation:
ld h,a ld h,a
ld de,.nextAnimationCommand ld de,.nextAnimationCommand
push de push de
jp [hl] ; jump to special effect function jp hl ; jump to special effect function
.playSubanimation .playSubanimation
ld c,a ld c,a
and a,%00111111 and a,%00111111
@ -457,7 +457,7 @@ PlayApplyingAttackAnimation:
ld a,[hli] ld a,[hli]
ld h,[hl] ld h,[hl]
ld l,a ld l,a
jp [hl] jp hl
AnimationTypePointerTable: AnimationTypePointerTable:
dw ShakeScreenVertically ; enemy mon has used a damaging move without a side effect dw ShakeScreenVertically ; enemy mon has used a damaging move without a side effect
@ -642,7 +642,7 @@ DoSpecialEffectByAnimationId:
ld l,a ld l,a
ld de,.done ld de,.done
push de push de
jp [hl] jp hl
.done .done
pop bc pop bc
pop de pop de
@ -1080,7 +1080,7 @@ CallWithTurnFlipped:
ld [H_WHOSETURN],a ld [H_WHOSETURN],a
ld de,.returnAddress ld de,.returnAddress
push de push de
jp [hl] jp hl
.returnAddress .returnAddress
pop af pop af
ld [H_WHOSETURN],a ld [H_WHOSETURN],a

View file

@ -62,7 +62,7 @@ BattleTransition:
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
jp [hl] jp hl
; the three GetBattleTransitionID functions set the first ; the three GetBattleTransitionID functions set the first
; three bits of c, which determines what transition animation ; three bits of c, which determines what transition animation

View file

@ -3150,7 +3150,7 @@ ExecutePlayerMove:
jp z, ExecutePlayerMoveDone jp z, ExecutePlayerMoveDone
call CheckPlayerStatusConditions call CheckPlayerStatusConditions
jr nz, .playerHasNoSpecialCondition jr nz, .playerHasNoSpecialCondition
jp [hl] jp hl
.playerHasNoSpecialCondition .playerHasNoSpecialCondition
call GetCurrentMove call GetCurrentMove
ld hl, wPlayerBattleStatus1 ld hl, wPlayerBattleStatus1
@ -5690,7 +5690,7 @@ ExecuteEnemyMove:
ld [wDamageMultipliers], a ld [wDamageMultipliers], a
call CheckEnemyStatusConditions call CheckEnemyStatusConditions
jr nz, .enemyHasNoSpecialConditions jr nz, .enemyHasNoSpecialConditions
jp [hl] jp hl
.enemyHasNoSpecialConditions .enemyHasNoSpecialConditions
ld hl, wEnemyBattleStatus1 ld hl, wEnemyBattleStatus1
bit ChargingUp, [hl] ; is the enemy charging up for attack? bit ChargingUp, [hl] ; is the enemy charging up for attack?
@ -7139,7 +7139,7 @@ _JumpMoveEffect:
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
jp [hl] ; jump to special effect handler jp hl ; jump to special effect handler
MoveEffectPointerTable: MoveEffectPointerTable:
dw SleepEffect ; unused effect dw SleepEffect ; unused effect

View file

@ -51,7 +51,7 @@ AIEnemyTrainerChooseMoves:
ld l, a ld l, a
ld de, .nextMoveChoiceModification ; set return address ld de, .nextMoveChoiceModification ; set return address
push de push de
jp [hl] ; execute modification function jp hl ; execute modification function
.loopFindMinimumEntries ; all entries will be decremented sequentially until one of them is zero .loopFindMinimumEntries ; all entries will be decremented sequentially until one of them is zero
ld hl, wBuffer ; temp move selection array ld hl, wBuffer ; temp move selection array
ld de, wEnemyMonMoves ; enemy moves ld de, wEnemyMonMoves ; enemy moves
@ -366,7 +366,7 @@ TrainerAI:
ld h,[hl] ld h,[hl]
ld l,a ld l,a
call Random call Random
jp [hl] jp hl
TrainerAIPointers: TrainerAIPointers:
; one entry per trainer class ; one entry per trainer class

View file

@ -304,7 +304,7 @@ CallCurrentTradeCenterFunction:
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
jp [hl] jp hl
TradeCenter_SelectMon: TradeCenter_SelectMon:
call ClearScreen call ClearScreen

View file

@ -13,7 +13,7 @@ UseItem_:
ld a,[hli] ld a,[hli]
ld h,[hl] ld h,[hl]
ld l,a ld l,a
jp [hl] jp hl
ItemUsePtrTable: ItemUsePtrTable:
dw ItemUseBall ; MASTER_BALL dw ItemUseBall ; MASTER_BALL

View file

@ -118,7 +118,7 @@ StartMenu_Pokemon:
ld h,[hl] ld h,[hl]
ld l,a ld l,a
ld a,[wObtainedBadges] ; badges obtained ld a,[wObtainedBadges] ; badges obtained
jp [hl] jp hl
.outOfBattleMovePointers .outOfBattleMovePointers
dw .cut dw .cut
dw .fly dw .fly

View file

@ -24,7 +24,7 @@ DisplayTextBoxID_:
ld l,a ; hl = address of function ld l,a ; hl = address of function
ld de,.done ld de,.done
push de push de
jp [hl] ; jump to the function jp hl ; jump to the function
.coordTableMatch .coordTableMatch
call GetTextBoxIDCoords call GetTextBoxIDCoords
call GetAddressOfScreenCoords call GetAddressOfScreenCoords

View file

@ -103,7 +103,7 @@ IsPlayerFacingEdgeOfMap:
ld c, a ld c, a
ld de, .asm_c41e ld de, .asm_c41e
push de push de
jp [hl] jp hl
.asm_c41e .asm_c41e
pop bc pop bc
pop de pop de

View file

@ -16,7 +16,7 @@ AnimateBoulderDust:
ld bc, .returnAddress ld bc, .returnAddress
push bc push bc
ld c, 4 ld c, 4
jp [hl] jp hl
.returnAddress .returnAddress
ld a, [rOBP1] ld a, [rOBP1]
xor %01100100 xor %01100100

View file

@ -17,7 +17,7 @@ _RunPaletteCommand:
ld l, a ld l, a
ld de, SendSGBPackets ld de, SendSGBPackets
push de push de
jp [hl] jp hl
SetPal_BattleBlack: SetPal_BattleBlack:
ld hl, PalPacket_Black ld hl, PalPacket_Black

View file

@ -451,7 +451,7 @@ SlotMachine_CheckForMatches:
pop hl pop hl
ld de, .flashScreenLoop ld de, .flashScreenLoop
push de push de
jp [hl] jp hl
.flashScreenLoop .flashScreenLoop
ld a, [rBGP] ld a, [rBGP]

View file

@ -46,7 +46,7 @@ TradeAnimCommon:
ld l, a ld l, a
ld de, .loop ld de, .loop
push de push de
jp [hl] ; call trade func, which will return to the top of the loop jp hl ; call trade func, which will return to the top of the loop
.done .done
pop af pop af
ld [hSCX], a ld [hSCX], a

View file

@ -2966,7 +2966,7 @@ Bankswitch::
ld [MBC1RomBank],a ld [MBC1RomBank],a
ld bc,.Return ld bc,.Return
push bc push bc
jp [hl] jp hl
.Return .Return
pop bc pop bc
ld a,b ld a,b
@ -4422,7 +4422,7 @@ CallFunctionInTable::
ld l, a ld l, a
ld de, .returnAddress ld de, .returnAddress
push de push de
jp [hl] jp hl
.returnAddress .returnAddress
pop bc pop bc
pop de pop de
@ -4605,7 +4605,7 @@ CheckForHiddenObjectOrBookshelfOrCardKeyDoor::
ld [H_LOADEDROMBANK], a ld [H_LOADEDROMBANK], a
ld de, .returnAddress ld de, .returnAddress
push de push de
jp [hl] jp hl
.returnAddress .returnAddress
xor a xor a
jr .done jr .done

View file

@ -1995,7 +1995,7 @@ RunMapScript::
ld l,a ld l,a
ld de,.return ld de,.return
push de push de
jp [hl] ; jump to script jp hl ; jump to script
.return .return
ret ret

View file

@ -24,7 +24,7 @@ Predef::
ld de, .done ld de, .done
push de push de
jp [hl] jp hl
.done .done
pop af pop af

View file

@ -123,7 +123,7 @@ AutoBgMapTransfer::
ld a,[H_AUTOBGTRANSFERENABLED] ld a,[H_AUTOBGTRANSFERENABLED]
and a and a
ret z ret z
ld hl,[sp + 0] ld hl,sp + 0
ld a,h ld a,h
ld [H_SPTEMP],a ld [H_SPTEMP],a
ld a,l ld a,l
@ -205,7 +205,7 @@ VBlankCopyBgMap::
ld a,[H_VBCOPYBGSRC] ; doubles as enabling byte ld a,[H_VBCOPYBGSRC] ; doubles as enabling byte
and a and a
ret z ret z
ld hl,[sp + 0] ld hl,sp + 0
ld a,h ld a,h
ld [H_SPTEMP],a ld [H_SPTEMP],a
ld a,l ld a,l
@ -238,7 +238,7 @@ VBlankCopyDouble::
and a and a
ret z ret z
ld hl, [sp + 0] ld hl, sp + 0
ld a, h ld a, h
ld [H_SPTEMP], a ld [H_SPTEMP], a
ld a, l ld a, l
@ -290,7 +290,7 @@ VBlankCopyDouble::
ld a, h ld a, h
ld [H_VBCOPYDOUBLEDEST + 1], a ld [H_VBCOPYDOUBLEDEST + 1], a
ld hl, [sp + 0] ld hl, sp + 0
ld a, l ld a, l
ld [H_VBCOPYDOUBLESRC], a ld [H_VBCOPYDOUBLESRC], a
ld a, h ld a, h
@ -316,7 +316,7 @@ VBlankCopy::
and a and a
ret z ret z
ld hl, [sp + 0] ld hl, sp + 0
ld a, h ld a, h
ld [H_SPTEMP], a ld [H_SPTEMP], a
ld a, l ld a, l
@ -360,7 +360,7 @@ VBlankCopy::
ld a, h ld a, h
ld [H_VBCOPYDEST + 1], a ld [H_VBCOPYDEST + 1], a
ld hl, [sp + 0] ld hl, sp + 0
ld a, l ld a, l
ld [H_VBCOPYSRC], a ld [H_VBCOPYSRC], a
ld a, h ld a, h

176
pokered.link Normal file
View file

@ -0,0 +1,176 @@
ROM0
ORG $61
"Home"
ORG $150
"Main"
ROMX $1
"bank1"
ROMX $2
"Sound Effect Headers 1" ; AUDIO_1
"Music Headers 1"
"Sound Effects 1"
"Audio Engine 1"
"Music 1"
ROMX $3
"bank3"
ROMX $4
"NPC Sprites 1" ; NPC_SPRITES_1
"Graphics" ; GFX
"Battle (bank 4)"
ROMX $5
"NPC Sprites 2" ; NPC_SPRITES_2
"Battle (bank 5)"
ROMX $6
"bank6"
ROMX $7
"bank7"
ROMX $8
"Sound Effect Headers 2" ; AUDIO_2
"Music Headers 2"
"Sound Effects 2"
"Audio Engine 2"
"Music 2"
ROMX $9
"Pics 1" ; PICS_1
"Battle (bank 9)"
ROMX $A
"Pics 2" ; PICS_2
"Battle (bank A)"
ROMX $B
"Pics 3" ; PICS_3
"Battle (bank B)"
ROMX $C
"Pics 4" ; PICS_4
"Battle (bank C)"
ROMX $D
"Pics 5" ; PICS_5
"Battle (bank D)"
ROMX $E
"bankE"
ROMX $F
"bankF"
ROMX $10
"bank10"
ROMX $11
"bank11"
ROMX $12
"bank12"
ROMX $13
"bank13"
ROMX $14
"bank14"
ROMX $15
"bank15"
ROMX $16
"bank16"
ROMX $17
"bank17"
ROMX $18
"bank18"
ROMX $19
"bank19"
ROMX $1A
"bank1A"
ROMX $1B
"bank1B"
ROMX $1C
"bank1C"
ROMX $1D
"bank1D"
ROMX $1E
"bank1E"
ROMX $1F
"Sound Effect Headers 3" ; AUDIO_3
"Music Headers 3"
"Sound Effects 3"
"Audio Engine 3"
"Music 3"
ROMX $20
"Text 1" ; TEXT_1
ROMX $21
"Text 2" ; TEXT_2
ROMX $22
"Text 3" ; TEXT_3
ROMX $23
"Text 4" ; TEXT_4
ROMX $24
"Text 5" ; TEXT_5
ROMX $25
"Text 6" ; TEXT_6
ROMX $26
"Text 7" ; TEXT_7
ROMX $27
"Text 8" ; TEXT_8
ROMX $28
"Text 9" ; TEXT_9
ROMX $29
"Text 10" ; TEXT_10
ROMX $2A
"Text 11" ; TEXT_11
ROMX $2B
"Pokedex Text" ; POKEDEX_TEXT
ROMX $2C
"Move Names" ; MOVE_NAMES
WRAM0
"WRAM Bank 0"
WRAMX 1
"WRAM Bank 1"
SRAM 0
"Sprite Buffers"
SRAM 1
"Save Data"
SRAM 2
"Saved Boxes 1"
SRAM 3
"Saved Boxes 2"

View file

@ -3137,10 +3137,12 @@ wEnemyPartyCount:: ds 1 ; d89c
wEnemyPartyMons:: ds PARTY_LENGTH + 1 ; d89d wEnemyPartyMons:: ds PARTY_LENGTH + 1 ; d89d
; Overload enemy party data ; Overload enemy party data
UNION
wWaterRate:: db ; d8a4 wWaterRate:: db ; d8a4
wWaterMons:: db ; d8a5 wWaterMons:: db ; d8a5
ds wWaterRate - @ NEXTU
wEnemyMons:: ; d8a4 wEnemyMons:: ; d8a4
wEnemyMon1:: party_struct wEnemyMon1 wEnemyMon1:: party_struct wEnemyMon1
@ -3153,6 +3155,8 @@ wEnemyMon6:: party_struct wEnemyMon6
wEnemyMonOT:: ds NAME_LENGTH * PARTY_LENGTH ; d9ac wEnemyMonOT:: ds NAME_LENGTH * PARTY_LENGTH ; d9ac
wEnemyMonNicks:: ds NAME_LENGTH * PARTY_LENGTH ; d9ee wEnemyMonNicks:: ds NAME_LENGTH * PARTY_LENGTH ; d9ee
ENDU
wTrainerHeaderPtr:: ; da30 wTrainerHeaderPtr:: ; da30
ds 2 ds 2