shithub: pokered

Download patch

ref: 90430e6dee9e207dc0b618d07566f83617343f60
parent: f386dea5d8cb816f3cbc941e81e8acdaae710a99
parent: c43bd68f01b794f61025ac2e63c9e043634ffdc8
author: Daniel Harding <33dannye@gmail.com>
date: Mon Nov 19 08:50:07 EST 2018

Merge pull request #193 from luckytyphlosion/master

Fix spritestatedata macros and clean up pre-linkerscript remnants.

--- a/audio.asm
+++ b/audio.asm
@@ -1,34 +1,30 @@
 
-AUDIO_1 EQU $2
-AUDIO_2 EQU $8
-AUDIO_3 EQU $1f
-
 INCLUDE "constants.asm"
 
 
-SECTION "Sound Effect Headers 1", ROMX, BANK[AUDIO_1]
+SECTION "Sound Effect Headers 1", ROMX ; BANK $02
 INCLUDE "audio/headers/sfxheaders1.asm"
 
-SECTION "Sound Effect Headers 2", ROMX, BANK[AUDIO_2]
+SECTION "Sound Effect Headers 2", ROMX ; BANK $08
 INCLUDE "audio/headers/sfxheaders2.asm"
 
-SECTION "Sound Effect Headers 3", ROMX, BANK[AUDIO_3]
+SECTION "Sound Effect Headers 3", ROMX ; BANK $1f
 INCLUDE "audio/headers/sfxheaders3.asm"
 
 
 
-SECTION "Music Headers 1", ROMX, BANK[AUDIO_1]
+SECTION "Music Headers 1", ROMX ; BANK $02
 INCLUDE "audio/headers/musicheaders1.asm"
 
-SECTION "Music Headers 2", ROMX, BANK[AUDIO_2]
+SECTION "Music Headers 2", ROMX ; BANK $08
 INCLUDE "audio/headers/musicheaders2.asm"
 
-SECTION "Music Headers 3", ROMX, BANK[AUDIO_3]
+SECTION "Music Headers 3", ROMX ; BANK $1f
 INCLUDE "audio/headers/musicheaders3.asm"
 
 
 
-SECTION "Sound Effects 1", ROMX, BANK[AUDIO_1]
+SECTION "Sound Effects 1", ROMX ; BANK $02
 
 INCLUDE "audio/sfx/snare1_1.asm"
 INCLUDE "audio/sfx/snare2_1.asm"
@@ -127,7 +123,7 @@
 INCLUDE "audio/sfx/cry22_1.asm"
 
 
-SECTION "Sound Effects 2", ROMX, BANK[AUDIO_2]
+SECTION "Sound Effects 2", ROMX ; BANK $08
 
 INCLUDE "audio/sfx/snare1_2.asm"
 INCLUDE "audio/sfx/snare2_2.asm"
@@ -252,7 +248,7 @@
 INCLUDE "audio/sfx/cry22_2.asm"
 
 
-SECTION "Sound Effects 3", ROMX, BANK[AUDIO_3]
+SECTION "Sound Effects 3", ROMX ; BANK $1f
 
 INCLUDE "audio/sfx/snare1_3.asm"
 INCLUDE "audio/sfx/snare2_3.asm"
@@ -360,7 +356,7 @@
 
 
 
-SECTION "Audio Engine 1", ROMX, BANK[AUDIO_1]
+SECTION "Audio Engine 1", ROMX ; BANK $02
 
 PlayBattleMusic::
 	xor a
@@ -453,7 +449,7 @@
 	jp Audio1_OverwriteChannelPointer
 
 
-SECTION "Audio Engine 2", ROMX, BANK[AUDIO_2]
+SECTION "Audio Engine 2", ROMX ; BANK $08
 
 Music_DoLowHealthAlarm::
 	ld a, [wLowHealthAlarm]
@@ -557,7 +553,7 @@
 	ret
 
 
-SECTION "Audio Engine 3", ROMX, BANK[AUDIO_3]
+SECTION "Audio Engine 3", ROMX ; BANK $1f
 
 PlayPokedexRatingSfx::
 	ld a, [$ffdc]
@@ -601,7 +597,7 @@
 
 
 
-SECTION "Music 1", ROMX, BANK[AUDIO_1]
+SECTION "Music 1", ROMX ; BANK $02
 
 INCLUDE "audio/music/pkmnhealed.asm"
 INCLUDE "audio/music/routes1.asm"
@@ -630,7 +626,7 @@
 INCLUDE "audio/music/pokecenter.asm"
 
 
-SECTION "Music 2", ROMX, BANK[AUDIO_2]
+SECTION "Music 2", ROMX ; BANK $08
 
 INCLUDE "audio/sfx/pokeflute_ch4_ch5.asm"
 INCLUDE "audio/sfx/unused2_2.asm"
@@ -646,7 +642,7 @@
 INCLUDE "audio/music/defeatedgymleader.asm"
 
 
-SECTION "Music 3", ROMX, BANK[AUDIO_3]
+SECTION "Music 3", ROMX ; BANK $1f
 
 INCLUDE "audio/music/bikeriding.asm"
 INCLUDE "audio/music/dungeon1.asm"
--- a/engine/intro.asm
+++ b/engine/intro.asm
@@ -440,7 +440,9 @@
 GameFreakIntro:
 	INCBIN "gfx/gamefreak_intro.2bpp"
 	INCBIN "gfx/gamefreak_logo.2bpp"
-	ds $10 ; blank tile
+	rept 16
+	db $00 ; blank tile
+	endr
 GameFreakIntroEnd:
 
 FightIntroBackMon:
--- a/home.asm
+++ b/home.asm
@@ -1,32 +1,32 @@
 
 ; The rst vectors are unused.
-SECTION "rst 00", ROM0 [$00]
+SECTION "rst 00", ROM0
 	rst $38
-SECTION "rst 08", ROM0 [$08]
+SECTION "rst 08", ROM0
 	rst $38
-SECTION "rst 10", ROM0 [$10]
+SECTION "rst 10", ROM0
 	rst $38
-SECTION "rst 18", ROM0 [$18]
+SECTION "rst 18", ROM0
 	rst $38
-SECTION "rst 20", ROM0 [$20]
+SECTION "rst 20", ROM0
 	rst $38
-SECTION "rst 28", ROM0 [$28]
+SECTION "rst 28", ROM0
 	rst $38
-SECTION "rst 30", ROM0 [$30]
+SECTION "rst 30", ROM0
 	rst $38
-SECTION "rst 38", ROM0 [$38]
+SECTION "rst 38", ROM0
 	rst $38
 
 ; Hardware interrupts
-SECTION "vblank", ROM0 [$40]
+SECTION "vblank", ROM0
 	jp VBlank
-SECTION "hblank", ROM0 [$48]
+SECTION "hblank", ROM0
 	rst $38
-SECTION "timer",  ROM0 [$50]
+SECTION "timer",  ROM0
 	jp Timer
-SECTION "serial", ROM0 [$58]
+SECTION "serial", ROM0
 	jp Serial
-SECTION "joypad", ROM0 [$60]
+SECTION "joypad", ROM0
 	reti
 
 
@@ -84,13 +84,13 @@
 
 
 
-SECTION "Entry", ROM0 [$100]
+SECTION "Entry", ROM0
 
 	nop
 	jp Start
 
 
-SECTION "Header", ROM0 [$104]
+SECTION "Header", ROM0
 
 	; The header is generated by rgbfix.
 	; The space here is allocated to prevent code from being overwritten.
--- a/main.asm
+++ b/main.asm
@@ -14,7 +14,7 @@
 INCLUDE "home.asm"
 
 
-SECTION "bank1",ROMX,BANK[$1]
+SECTION "bank1", ROMX
 
 INCLUDE "data/facing.asm"
 
@@ -86,7 +86,7 @@
 
 INCLUDE "engine/display_pokedex.asm"
 
-SECTION "bank3",ROMX,BANK[$3]
+SECTION "bank3", ROMX
 
 INCLUDE "engine/joypad.asm"
 
@@ -127,7 +127,7 @@
 INCLUDE "engine/hp_bar.asm"
 INCLUDE "engine/hidden_object_functions3.asm"
 
-SECTION "NPC Sprites 1", ROMX, BANK[NPC_SPRITES_1]
+SECTION "NPC Sprites 1", ROMX ; BANK $04
 
 OakAideSprite:         INCBIN "gfx/sprites/oak_aide.2bpp"
 RockerSprite:          INCBIN "gfx/sprites/rocker.2bpp"
@@ -158,7 +158,7 @@
 LyingOldManSprite:     INCBIN "gfx/sprites/lying_old_man.2bpp"
 
 
-SECTION "Graphics", ROMX, BANK[GFX]
+SECTION "Graphics (BANK 4)", ROMX
 
 PokemonLogoGraphics:            INCBIN "gfx/pokemon_logo.2bpp"
 FontGraphics:                   INCBIN "gfx/font.1bpp"
@@ -184,7 +184,7 @@
 PlayerCharacterTitleGraphicsEnd:
 
 
-SECTION "Battle (bank 4)", ROMX, BANK[$4]
+SECTION "Battle (BANK 4)", ROMX
 
 INCLUDE "engine/overworld/is_player_just_outside_map.asm"
 INCLUDE "engine/menu/status_screen.asm"
@@ -206,7 +206,7 @@
 INCLUDE "engine/random.asm"
 
 
-SECTION "NPC Sprites 2", ROMX, BANK[NPC_SPRITES_2]
+SECTION "NPC Sprites 2", ROMX ; BANK $05
 
 RedCyclingSprite:     INCBIN "gfx/sprites/cycling.2bpp"
 RedSprite:            INCBIN "gfx/sprites/red.2bpp"
@@ -250,7 +250,7 @@
 SeelSprite:           INCBIN "gfx/sprites/seel.2bpp"
 
 
-SECTION "Battle (bank 5)", ROMX, BANK[$5]
+SECTION "Battle (BANK 5)", ROMX
 
 INCLUDE "engine/load_pokedex_tiles.asm"
 INCLUDE "engine/overworld/map_sprites.asm"
@@ -260,7 +260,7 @@
 INCLUDE "engine/menu/pc.asm"
 
 
-SECTION "bank6",ROMX,BANK[$6]
+SECTION "bank6", ROMX
 
 INCLUDE "data/mapHeaders/celadoncity.asm"
 INCLUDE "data/mapObjects/celadoncity.asm"
@@ -336,7 +336,7 @@
 INCLUDE "engine/overworld/ledges.asm"
 
 
-SECTION "bank7",ROMX,BANK[$7]
+SECTION "bank7", ROMX
 
 INCLUDE "data/mapHeaders/cinnabarisland.asm"
 INCLUDE "data/mapObjects/cinnabarisland.asm"
@@ -518,7 +518,7 @@
 INCLUDE "engine/hidden_object_functions7.asm"
 
 
-SECTION "Pics 1", ROMX, BANK[PICS_1]
+SECTION "Pics 1", ROMX ; BANK $09
 
 RhydonPicFront::      INCBIN "pic/bmon/rhydon.pic"
 RhydonPicBack::       INCBIN "pic/monback/rhydonb.pic"
@@ -580,13 +580,13 @@
 TangelaPicBack::      INCBIN "pic/monback/tangelab.pic"
 
 
-SECTION "Battle (bank 9)", ROMX, BANK[$9]
+SECTION "Battle (BANK 9)", ROMX
 INCLUDE "engine/battle/print_type.asm"
 INCLUDE "engine/battle/save_trainer_name.asm"
 INCLUDE "engine/battle/moveEffects/focus_energy_effect.asm"
 
 
-SECTION "Pics 2", ROMX, BANK[PICS_2]
+SECTION "Pics 2", ROMX ; BANK $0A
 
 GrowlithePicFront::   INCBIN "pic/bmon/growlithe.pic"
 GrowlithePicBack::    INCBIN "pic/monback/growlitheb.pic"
@@ -654,11 +654,11 @@
 MoltresPicBack::      INCBIN "pic/monback/moltresb.pic"
 
 
-SECTION "Battle (bank A)", ROMX, BANK[$A]
+SECTION "Battle (BANK A)", ROMX
 INCLUDE "engine/battle/moveEffects/leech_seed_effect.asm"
 
 
-SECTION "Pics 3", ROMX, BANK[PICS_3]
+SECTION "Pics 3", ROMX ; BANK $0B
 
 ArticunoPicFront::    INCBIN "pic/bmon/articuno.pic"
 ArticunoPicBack::     INCBIN "pic/monback/articunob.pic"
@@ -732,7 +732,7 @@
 FossilKabutopsPic::   INCBIN "pic/bmon/fossilkabutops.pic"
 
 
-SECTION "Battle (bank B)", ROMX, BANK[$B]
+SECTION "Battle (BANK B)", ROMX
 
 INCLUDE "engine/battle/display_effectiveness.asm"
 
@@ -748,7 +748,7 @@
 INCLUDE "engine/game_corner_slots2.asm"
 
 
-SECTION "Pics 4", ROMX, BANK[PICS_4]
+SECTION "Pics 4", ROMX ; BANK $0C
 
 DodrioPicFront::       INCBIN "pic/bmon/dodrio.pic"
 DodrioPicBack::        INCBIN "pic/monback/dodriob.pic"
@@ -813,12 +813,12 @@
 OldManPic::            INCBIN "pic/trainer/oldman.pic"
 
 
-SECTION "Battle (bank C)", ROMX, BANK[$C]
+SECTION "Battle (BANK C)", ROMX
 INCLUDE "engine/battle/moveEffects/mist_effect.asm"
 INCLUDE "engine/battle/moveEffects/one_hit_ko_effect.asm"
 
 
-SECTION "Pics 5", ROMX, BANK[PICS_5]
+SECTION "Pics 5", ROMX ; BANK $0D
 
 BulbasaurPicFront::    INCBIN "pic/bmon/bulbasaur.pic"
 BulbasaurPicBack::     INCBIN "pic/monback/bulbasaurb.pic"
@@ -876,7 +876,7 @@
 VictreebelPicBack::    INCBIN "pic/monback/victreebelb.pic"
 
 
-SECTION "Battle (bank D)", ROMX, BANK[$D]
+SECTION "Battle (BANK D)", ROMX
 
 INCLUDE "engine/titlescreen2.asm"
 INCLUDE "engine/battle/link_battle_versus_text.asm"
@@ -886,7 +886,7 @@
 INCLUDE "engine/game_corner_slots.asm"
 
 
-SECTION "bankE",ROMX,BANK[$E]
+SECTION "bankE", ROMX
 
 INCLUDE "data/moves.asm"
 BaseStats: INCLUDE "data/base_stats.asm"
@@ -911,12 +911,12 @@
 INCLUDE "engine/battle/moveEffects/reflect_light_screen_effect.asm"
 
 
-SECTION "bankF",ROMX,BANK[$F]
+SECTION "bankF", ROMX
 
 INCLUDE "engine/battle/core.asm"
 
 
-SECTION "bank10",ROMX,BANK[$10]
+SECTION "bank10", ROMX
 
 INCLUDE "engine/menu/pokedex.asm"
 INCLUDE "engine/trade.asm"
@@ -924,7 +924,7 @@
 INCLUDE "engine/trade2.asm"
 
 
-SECTION "bank11",ROMX,BANK[$11]
+SECTION "bank11", ROMX
 
 INCLUDE "data/mapHeaders/lavendertown.asm"
 INCLUDE "data/mapObjects/lavendertown.asm"
@@ -1069,7 +1069,7 @@
 INCLUDE "engine/overworld/hidden_objects.asm"
 
 
-SECTION "bank12",ROMX,BANK[$12]
+SECTION "bank12", ROMX
 
 INCLUDE "data/mapHeaders/route7.asm"
 INCLUDE "data/mapObjects/route7.asm"
@@ -1248,7 +1248,7 @@
 SafariZoneSecretHouseBlocks: INCBIN "maps/safarizonesecrethouse.blk"
 
 
-SECTION "bank13",ROMX,BANK[$13]
+SECTION "bank13", ROMX
 
 TrainerPics::
 YoungsterPic::     INCBIN "pic/trainer/youngster.pic"
@@ -1313,7 +1313,7 @@
 INCLUDE "engine/predefs.asm"
 
 
-SECTION "bank14",ROMX,BANK[$14]
+SECTION "bank14", ROMX
 
 INCLUDE "data/mapHeaders/route22.asm"
 INCLUDE "data/mapObjects/route22.asm"
@@ -1391,7 +1391,7 @@
 INCLUDE "engine/hidden_object_functions14.asm"
 
 
-SECTION "bank15",ROMX,BANK[$15]
+SECTION "bank15", ROMX
 
 INCLUDE "data/mapHeaders/route2.asm"
 INCLUDE "data/mapObjects/route2.asm"
@@ -1483,7 +1483,7 @@
 INCLUDE "engine/overworld/trainers.asm"
 
 
-SECTION "bank16",ROMX,BANK[$16]
+SECTION "bank16", ROMX
 
 INCLUDE "data/mapHeaders/route6.asm"
 INCLUDE "data/mapObjects/route6.asm"
@@ -1567,7 +1567,7 @@
 INCLUDE "engine/overworld/saffron_guards.asm"
 
 
-SECTION "bank17",ROMX,BANK[$17]
+SECTION "bank17", ROMX
 
 SaffronMartBlocks:
 LavenderMartBlocks:
@@ -1723,7 +1723,7 @@
 INCLUDE "engine/hidden_object_functions17.asm"
 
 
-SECTION "bank18",ROMX,BANK[$18]
+SECTION "bank18", ROMX
 
 ViridianForestBlocks:    INCBIN "maps/viridianforest.blk"
 UndergroundPathNSBlocks: INCBIN "maps/undergroundpathns.blk"
@@ -1846,7 +1846,7 @@
 INCLUDE "engine/hidden_object_functions18.asm"
 
 
-SECTION "bank19",ROMX,BANK[$19]
+SECTION "bank19", ROMX
 
 Overworld_GFX:     INCBIN "gfx/tilesets/overworld.2bpp"
 Overworld_Block:   INCBIN "gfx/blocksets/overworld.bst"
@@ -1869,7 +1869,7 @@
 Plateau_Block:     INCBIN "gfx/blocksets/plateau.bst"
 
 
-SECTION "bank1A",ROMX,BANK[$1A]
+SECTION "bank1A", ROMX
 
 INCLUDE "engine/battle/decrement_pp.asm"
 
@@ -1905,7 +1905,7 @@
 Facility_Block:    INCBIN "gfx/blocksets/facility.bst"
 
 
-SECTION "bank1B",ROMX,BANK[$1B]
+SECTION "bank1B", ROMX
 
 Cemetery_GFX:      INCBIN "gfx/tilesets/cemetery.2bpp"
 Cemetery_Block:    INCBIN "gfx/blocksets/cemetery.bst"
@@ -1923,7 +1923,7 @@
 Underground_Block: INCBIN "gfx/blocksets/underground.bst"
 
 
-SECTION "bank1C",ROMX,BANK[$1C]
+SECTION "bank1C", ROMX
 
 INCLUDE "engine/gamefreak.asm"
 INCLUDE "engine/hall_of_fame.asm"
@@ -1938,7 +1938,7 @@
 INCLUDE "engine/save.asm"
 
 
-SECTION "bank1D",ROMX,BANK[$1D]
+SECTION "bank1D", ROMX
 
 CopycatsHouse1FBlocks: INCBIN "maps/copycatshouse1f.blk"
 
@@ -2070,7 +2070,7 @@
 INCLUDE "engine/overworld/hidden_items.asm"
 
 
-SECTION "bank1E",ROMX,BANK[$1E]
+SECTION "bank1E", ROMX
 
 INCLUDE "engine/battle/animations.asm"
 
--- a/pokered.link
+++ b/pokered.link
@@ -1,173 +1,273 @@
 ROM0
-  ORG $61
-  "Home"
-  ORG $150
-  "Main"
+	org $0000
+	"rst 00"
 
+	org $0008
+	"rst 08"
+
+	org $0010
+	"rst 10"
+
+	org $0018
+	"rst 18"
+
+	org $0020
+	"rst 20"
+
+	org $0028
+	"rst 28"
+
+	org $0030
+	"rst 30"
+	
+	org $0038
+	"rst 38"
+	
+	org $0040
+	"vblank"
+	
+	org $0048
+	"hblank"
+	
+	org $0050
+	"timer"
+	
+	org $0058
+	"serial"
+	
+	org $0060
+	"joypad"
+	; $0061
+	"Home"
+
+	org $100
+	"Entry"
+	; $0104
+	"Header"
+
+	org $150
+	"Main"
+
 ROMX $1
-  "bank1"
+	org $4000
+	"bank1"
 
 ROMX $2
-  "Sound Effect Headers 1" ; AUDIO_1
-  "Music Headers 1"
-  "Sound Effects 1"
-  "Audio Engine 1"
-  "Music 1"
+	org $4000
+	"Sound Effect Headers 1" ; AUDIO_1
+	"Music Headers 1"
+	"Sound Effects 1"
+	"Audio Engine 1"
+	"Music 1"
 
 ROMX $3
-  "bank3"
+	org $4000
+	"bank3"
 
 ROMX $4
-  "NPC Sprites 1" ; NPC_SPRITES_1
-  "Graphics" ; GFX
-  "Battle (bank 4)"
+	org $4000
+	"NPC Sprites 1" ; NPC_SPRITES_1
+	"Graphics (BANK 4)" ; GFX
+	"Battle (BANK 4)"
 
 ROMX $5
-  "NPC Sprites 2" ; NPC_SPRITES_2
-  "Battle (bank 5)"
+	org $4000
+	"NPC Sprites 2" ; NPC_SPRITES_2
+	"Battle (BANK 5)"
 
 ROMX $6
-  "bank6"
+	org $4000
+	"bank6"
 
 ROMX $7
-  "bank7"
+	org $4000
+	"bank7"
 
 ROMX $8
-  "Sound Effect Headers 2" ; AUDIO_2
-  "Music Headers 2"
-  "Sound Effects 2"
-  "Audio Engine 2"
-  "Music 2"
+	org $4000
+	"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)"
+	org $4000
+	"Pics 1" ; PICS_1
+	"Battle (BANK 9)"
 
 ROMX $A
-  "Pics 2" ; PICS_2
-  "Battle (bank A)"
+	org $4000
+	"Pics 2" ; PICS_2
+	"Battle (BANK A)"
 
 ROMX $B
-  "Pics 3" ; PICS_3
-  "Battle (bank B)"
+	org $4000
+	"Pics 3" ; PICS_3
+	"Battle (BANK B)"
 
 ROMX $C
-  "Pics 4" ; PICS_4
-  "Battle (bank C)"
+	org $4000
+	"Pics 4" ; PICS_4
+	"Battle (BANK C)"
 
 ROMX $D
-  "Pics 5" ; PICS_5
-  "Battle (bank D)"
+	org $4000
+	"Pics 5" ; PICS_5
+	"Battle (BANK D)"
 
 ROMX $E
-  "bankE"
+	org $4000
+	"bankE"
 
 ROMX $F
-  "bankF"
+	org $4000
+	"bankF"
 
 ROMX $10
-  "bank10"
+	org $4000
+	"bank10"
 
 ROMX $11
-  "bank11"
+	org $4000
+	"bank11"
 
 ROMX $12
-  "bank12"
+	org $4000
+	"bank12"
 
 ROMX $13
-  "bank13"
+	org $4000
+	"bank13"
 
 ROMX $14
-  "bank14"
+	org $4000
+	"bank14"
 
 ROMX $15
-  "bank15"
+	org $4000
+	"bank15"
 
 ROMX $16
-  "bank16"
+	org $4000
+	"bank16"
 
 ROMX $17
-  "bank17"
+	org $4000
+	"bank17"
 
 ROMX $18
-  "bank18"
+	org $4000
+	"bank18"
 
 ROMX $19
-  "bank19"
+	org $4000
+	"bank19"
 
 ROMX $1A
-  "bank1A"
+	org $4000
+	"bank1A"
 
 ROMX $1B
-  "bank1B"
+	org $4000
+	"bank1B"
 
 ROMX $1C
-  "bank1C"
+	org $4000
+	"bank1C"
 
 ROMX $1D
-  "bank1D"
+	org $4000
+	"bank1D"
 
 ROMX $1E
-  "bank1E"
+	org $4000
+	"bank1E"
 
 ROMX $1F
-  "Sound Effect Headers 3" ; AUDIO_3
-  "Music Headers 3"
-  "Sound Effects 3"
-  "Audio Engine 3"
-  "Music 3"
+	org $4000
+	"Sound Effect Headers 3" ; AUDIO_3
+	"Music Headers 3"
+	"Sound Effects 3"
+	"Audio Engine 3"
+	"Music 3"
 
 ROMX $20
-  "Text 1" ; TEXT_1
+	org $4000
+	"Text 1" ; TEXT_1
 
 ROMX $21
-  "Text 2" ; TEXT_2
+	org $4000
+	"Text 2" ; TEXT_2
 
 ROMX $22
-  "Text 3" ; TEXT_3
+	org $4000
+	"Text 3" ; TEXT_3
 
 ROMX $23
-  "Text 4" ; TEXT_4
+	org $4000
+	"Text 4" ; TEXT_4
 
 ROMX $24
-  "Text 5" ; TEXT_5
+	org $4000
+	"Text 5" ; TEXT_5
 
 ROMX $25
-  "Text 6" ; TEXT_6
+	org $4000
+	"Text 6" ; TEXT_6
 
 ROMX $26
-  "Text 7" ; TEXT_7
+	org $4000
+	"Text 7" ; TEXT_7
 
 ROMX $27
-  "Text 8" ; TEXT_8
+	org $4000
+	"Text 8" ; TEXT_8
 
 ROMX $28
-  "Text 9" ; TEXT_9
+	org $4000
+	"Text 9" ; TEXT_9
 
 ROMX $29
-  "Text 10" ; TEXT_10
+	org $4000
+	"Text 10" ; TEXT_10
 
 ROMX $2A
-  "Text 11" ; TEXT_11
+	org $4000
+	"Text 11" ; TEXT_11
 
 ROMX $2B
-  "Pokedex Text" ; POKEDEX_TEXT
+	org $4000
+	"Pokedex Text" ; POKEDEX_TEXT
 
 ROMX $2C
-  "Move Names" ; MOVE_NAMES
+	org $4000
+	"Move Names" ; MOVE_NAMES
 
 WRAM0
-  "WRAM Bank 0"
+	org $c000
+	"WRAM Bank 0"
 
+	org $c100
+	"Sprite State Data"
+	"OAM Buffer"
+
+	org $dfff
+	"Stack"
+
 SRAM 0
-  "Sprite Buffers"
+	org $a000
+	"Sprite Buffers"
 
 SRAM 1
-  "Save Data"
+	org $a000
+	"Save Data"
 
 SRAM 2
-  "Saved Boxes 1"
+	org $a000
+	"Saved Boxes 1"
 
 SRAM 3
-  "Saved Boxes 2"
+	org $a000
+	"Saved Boxes 2"
 
--- a/scripts/pewterpokecenter.asm
+++ b/scripts/pewterpokecenter.asm
@@ -29,7 +29,7 @@
 	ld bc, JigglypuffFacingDirectionsEnd - JigglypuffFacingDirections
 	call CopyData
 
-	ld a, [Sprite03SpriteImageIdx]
+	ld a, [wSprite03StateData1ImageIndex]
 	ld hl, wJigglypuffFacingDirections
 .findMatchingFacingDirectionLoop
 	cp [hl]
@@ -43,7 +43,7 @@
 	pop hl
 .loop
 	ld a, [hl]
-	ld [Sprite03SpriteImageIdx], a
+	ld [wSprite03StateData1ImageIndex], a
 
 ; rotate the array
 	push hl
--- a/sram.asm
+++ b/sram.asm
@@ -1,4 +1,4 @@
-SECTION "Sprite Buffers", SRAM, BANK[0]
+SECTION "Sprite Buffers", SRAM ; BANK 0
 
 sSpriteBuffer0:: ds SPRITEBUFFERSIZE ; a000
 sSpriteBuffer1:: ds SPRITEBUFFERSIZE ; a188
@@ -9,7 +9,7 @@
 sHallOfFame:: ds HOF_TEAM * HOF_TEAM_CAPACITY ; a598
 
 
-SECTION "Save Data", SRAM, BANK[1]
+SECTION "Save Data", SRAM ; BANK 1
 	ds $598
 
 sPlayerName::  ds NAME_LENGTH ; a598
@@ -21,7 +21,7 @@
 sMainDataCheckSum:: ds 1 ; b523
 
 
-SECTION "Saved Boxes 1", SRAM, BANK[2]
+SECTION "Saved Boxes 1", SRAM ; BANK 2
 
 sBox1:: ds wBoxDataEnd - wBoxDataStart ; a000
 sBox2:: ds wBoxDataEnd - wBoxDataStart ; a462
@@ -33,7 +33,7 @@
 sBank2IndividualBoxChecksums:: ds 6 ; ba4d
 
 
-SECTION "Saved Boxes 2", SRAM, BANK[3]
+SECTION "Saved Boxes 2", SRAM ; BANK 3
 
 sBox7::  ds wBoxDataEnd - wBoxDataStart ; a000
 sBox8::  ds wBoxDataEnd - wBoxDataStart ; a462
--- a/text.asm
+++ b/text.asm
@@ -19,7 +19,7 @@
 INCLUDE "hram.asm"
 
 
-SECTION "Text 1", ROMX, BANK[TEXT_1]
+SECTION "Text 1", ROMX ; BANK $20
 
 _CardKeySuccessText1::
 	text "Bingo!@@"
@@ -192,7 +192,7 @@
 INCLUDE "text/maps/silph_co_5f_1.asm"
 
 
-SECTION "Text 2", ROMX, BANK[TEXT_2]
+SECTION "Text 2", ROMX ; BANK $21
 
 INCLUDE "text/maps/silph_co_5f_2.asm"
 INCLUDE "text/maps/silph_co_6f.asm"
@@ -224,7 +224,7 @@
 INCLUDE "text/maps/rock_tunnel_b2f_1.asm"
 
 
-SECTION "Text 3", ROMX, BANK[TEXT_3]
+SECTION "Text 3", ROMX ; BANK $22
 
 INCLUDE "text/maps/rock_tunnel_b2f_2.asm"
 INCLUDE "text/maps/seafoam_islands_b4f.asm"
@@ -1939,7 +1939,7 @@
 INCLUDE "text/maps/daycare_1.asm"
 
 
-SECTION "Text 4", ROMX, BANK[TEXT_4]
+SECTION "Text 4", ROMX ; BANK $23
 
 INCLUDE "text/maps/daycare_2.asm"
 INCLUDE "text/maps/underground_path_route_6_entrance.asm"
@@ -1978,7 +1978,7 @@
 INCLUDE "text/maps/route_11_1.asm"
 
 
-SECTION "Text 5", ROMX, BANK[TEXT_5]
+SECTION "Text 5", ROMX ; BANK $24
 
 INCLUDE "text/maps/route_11_2.asm"
 INCLUDE "text/maps/route_12.asm"
@@ -1996,7 +1996,7 @@
 INCLUDE "text/maps/route_24_1.asm"
 
 
-SECTION "Text 6", ROMX, BANK[TEXT_6]
+SECTION "Text 6", ROMX ; BANK $25
 
 INCLUDE "text/maps/route_24_2.asm"
 INCLUDE "text/maps/route_25.asm"
@@ -2339,7 +2339,7 @@
 INCLUDE "text/maps/pewter_gym_1.asm"
 
 
-SECTION "Text 7", ROMX, BANK[TEXT_7]
+SECTION "Text 7", ROMX ; BANK $26
 
 INCLUDE "text/maps/pewter_gym_2.asm"
 INCLUDE "text/maps/pewter_house_1.asm"
@@ -2371,7 +2371,7 @@
 INCLUDE "text/maps/vermilion_gym_1.asm"
 
 
-SECTION "Text 8", ROMX, BANK[TEXT_8]
+SECTION "Text 8", ROMX ; BANK $27
 
 INCLUDE "text/maps/vermilion_gym_2.asm"
 INCLUDE "text/maps/vermilion_house.asm"
@@ -2403,7 +2403,7 @@
 INCLUDE "text/maps/fuchsia_gym_1.asm"
 
 
-SECTION "Text 9", ROMX, BANK[TEXT_9]
+SECTION "Text 9", ROMX ; BANK $28
 
 INCLUDE "text/maps/fuchsia_gym_2.asm"
 INCLUDE "text/maps/fuchsia_meeting_room.asm"
@@ -2646,7 +2646,7 @@
 	done
 
 
-SECTION "Text 10", ROMX, BANK[TEXT_10]
+SECTION "Text 10", ROMX ; BANK $29
 
 _CableClubNPCPleaseComeAgainText::
 	text "Please come again!"
@@ -2992,7 +2992,7 @@
 	prompt
 
 
-SECTION "Text 11", ROMX, BANK[TEXT_11]
+SECTION "Text 11", ROMX ; BANK $2a
 
 _ItemUseText001::
 	text "<PLAYER> used@@"
@@ -3192,11 +3192,11 @@
 	prompt
 
 
-SECTION "Pokedex Text", ROMX, BANK[POKEDEX_TEXT]
+SECTION "Pokedex Text", ROMX ; BANK $2b
 
 INCLUDE "text/pokedex.asm"
 
 
-SECTION "Move Names", ROMX, BANK[MOVE_NAMES]
+SECTION "Move Names", ROMX ; BANK $2c
 
 INCLUDE "text/move_names.asm"
--- a/wram.asm
+++ b/wram.asm
@@ -205,7 +205,7 @@
 	ds 13
 
 
-SECTION "Sprite State Data", WRAM0[$c100]
+SECTION "Sprite State Data", WRAM0
 
 wSpriteDataStart::
 
@@ -230,10 +230,9 @@
 ; C1xE
 ; C1xF
 spritestatedata1: MACRO
-\1SpriteStateData1::
 \1PictureID:: db
 \1MovementStatus:: db
-\1SpriteImageIdx:: db
+\1ImageIndex:: db
 \1YStepVector:: db
 \1YPixels:: db
 \1XStepVector:: db
@@ -242,30 +241,26 @@
 \1AnimFrameCounter:: db
 \1FacingDirection:: db
 	ds 6
-\1SpriteStateData1End::
+\1End::
 endm
 
-	spritestatedata1 Player
-	spritestatedata1 Sprite01
-	spritestatedata1 Sprite02
-	spritestatedata1 Sprite03
-	spritestatedata1 Sprite04
-	spritestatedata1 Sprite05
-	spritestatedata1 Sprite06
-	spritestatedata1 Sprite07
-	spritestatedata1 Sprite08
-	spritestatedata1 Sprite09
-	spritestatedata1 Sprite10
-	spritestatedata1 Sprite11
-	spritestatedata1 Sprite12
-	spritestatedata1 Sprite13
-	spritestatedata1 Sprite14
-	spritestatedata1 Sprite15
-	; ds $10 * $10
+wSpritePlayerStateData1::  spritestatedata1 wSpritePlayerStateData1
+wSprite01StateData1::      spritestatedata1 wSprite01StateData1
+wSprite02StateData1::      spritestatedata1 wSprite02StateData1
+wSprite03StateData1::      spritestatedata1 wSprite03StateData1
+wSprite04StateData1::      spritestatedata1 wSprite04StateData1
+wSprite05StateData1::      spritestatedata1 wSprite05StateData1
+wSprite06StateData1::      spritestatedata1 wSprite06StateData1
+wSprite07StateData1::      spritestatedata1 wSprite07StateData1
+wSprite08StateData1::      spritestatedata1 wSprite08StateData1
+wSprite09StateData1::      spritestatedata1 wSprite09StateData1
+wSprite10StateData1::      spritestatedata1 wSprite10StateData1
+wSprite11StateData1::      spritestatedata1 wSprite11StateData1
+wSprite12StateData1::      spritestatedata1 wSprite12StateData1
+wSprite13StateData1::      spritestatedata1 wSprite13StateData1
+wSprite14StateData1::      spritestatedata1 wSprite14StateData1
+wSprite15StateData1::      spritestatedata1 wSprite15StateData1
 
-
-;SECTION "Sprite State Data 2", WRAM0[$c200]
-
 wSpriteStateData2:: ; c200
 ; more data for all sprites on the current map
 ; holds info for 16 sprites with $10 bytes each
@@ -287,7 +282,6 @@
 ; C2xE: sprite image base offset (in video ram, player always has value 1, used to compute c1x2)
 ; C2xF
 spritestatedata2: MACRO
-\1SpriteStateData2::
 \1WalkAnimationCounter:: db
 	ds 1
 \1YDisplacement:: db
@@ -298,33 +292,33 @@
 \1GrassPriority:: db
 \1MovementDelay:: db
 	ds 5
-\1SpriteImageBaseOffset:: db
+\1ImageBaseOffset:: db
 	ds 1
-\1SpriteStateData2End::
+\1End::
 endm
 
-	spritestatedata2 Player
-	spritestatedata2 Sprite01
-	spritestatedata2 Sprite02
-	spritestatedata2 Sprite03
-	spritestatedata2 Sprite04
-	spritestatedata2 Sprite05
-	spritestatedata2 Sprite06
-	spritestatedata2 Sprite07
-	spritestatedata2 Sprite08
-	spritestatedata2 Sprite09
-	spritestatedata2 Sprite10
-	spritestatedata2 Sprite11
-	spritestatedata2 Sprite12
-	spritestatedata2 Sprite13
-	spritestatedata2 Sprite14
-	spritestatedata2 Sprite15
-	; ds $10 * $10
+wSpritePlayerStateData2::  spritestatedata2 wSpritePlayerStateData2
+wSprite01StateData2::      spritestatedata2 wSprite01StateData2
+wSprite02StateData2::      spritestatedata2 wSprite02StateData2
+wSprite03StateData2::      spritestatedata2 wSprite03StateData2
+wSprite04StateData2::      spritestatedata2 wSprite04StateData2
+wSprite05StateData2::      spritestatedata2 wSprite05StateData2
+wSprite06StateData2::      spritestatedata2 wSprite06StateData2
+wSprite07StateData2::      spritestatedata2 wSprite07StateData2
+wSprite08StateData2::      spritestatedata2 wSprite08StateData2
+wSprite09StateData2::      spritestatedata2 wSprite09StateData2
+wSprite10StateData2::      spritestatedata2 wSprite10StateData2
+wSprite11StateData2::      spritestatedata2 wSprite11StateData2
+wSprite12StateData2::      spritestatedata2 wSprite12StateData2
+wSprite13StateData2::      spritestatedata2 wSprite13StateData2
+wSprite14StateData2::      spritestatedata2 wSprite14StateData2
+wSprite15StateData2::      spritestatedata2 wSprite15StateData2
 
+
 wSpriteDataEnd::
 
 
-SECTION "OAM Buffer", WRAM0[$c300]
+SECTION "OAM Buffer", WRAM0
 
 wOAMBuffer:: ; c300
 ; buffer for OAM data. Copied to OAM by DMA
@@ -3203,9 +3197,9 @@
 
 wBoxDataEnd::
 
+; dee2
 
-SECTION "Stack", WRAM0[$df00]
-	ds $ff
+SECTION "Stack", WRAM0
 wStack:: ; dfff