Skip to content

Commit 2937871

Browse files
authored
More SA1 alignment (#230)
* SA1 alignment * Rename SpriteBase::spriteX -> meX * Rename FLAGS_10 -> FLAGS_EXECUTE_VBLANK_CALLBACKS * Align task.h with SA3 * Align core.c more with SA3 * Align core.c data with SA3 * Align task.h with SA1 * Align more with SA3 * Align task.h with SA1 * Align task.h with SA3 * Align task.c with SA1|SA3 * Align core.c with SA3 * Align EngineMainLoop with SA3 * Align core.c with SA3 * Some tools alignment with SA1 * Align Makefile with SA1 * Make BG_PLTT and OBJ_PLTT u16* * Align with SA3 * Make BG_PLTT|OBJ_PLTT accessible as an array. Fix erroneous #if. * Address USE_SA2_TASK_SYSTEM use from commit comments
1 parent 981955e commit 2937871

File tree

108 files changed

+747
-446
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+747
-446
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ jobs:
9393
python3 scripts/progress.py shield-json -m > gh-pages/reports/progress-sa2-shield-matching.json
9494
echo "REPORTS_COMMIT_MSG=$( git log --format=%s ${GITHUB_SHA} )" >> $GITHUB_ENV
9595
cp sa2.map gh-pages/maps/${GITHUB_SHA}.map
96+
9697
- name: Generate reports (Collect Rings)
9798
if: ${{ github.event_name == 'push' }}
9899
run: |

Makefile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ FORMAT := clang-format-13
8686

8787
### TOOLS ###
8888
GFX := tools/gbagfx/gbagfx$(EXE)
89-
EPOS := tools/entity_positions/epos$(EXE)
89+
ENT_POS := tools/entity_positions/entity_positions$(EXE)
9090
AIF := tools/aif2pcm/aif2pcm$(EXE)
9191
MID2AGB := tools/mid2agb/mid2agb$(EXE)
9292
SCANINC := tools/scaninc/scaninc$(EXE)
@@ -203,7 +203,7 @@ FORMAT_H_PATHS := $(shell find . -name "*.h" ! -path '*/build/*' ! -path '*/ex
203203
CPPFLAGS ?= $(INCLUDE_CPP_ARGS) -D $(GAME_REGION)
204204
CC1FLAGS ?= -Wimplicit -Wparentheses -Werror
205205

206-
ifneq ($(GAME_VARIANT), 0)
206+
ifneq ($(GAME_VARIANT), DEFAULT)
207207
CPPFLAGS += -D $(GAME_VARIANT)
208208
endif
209209

@@ -438,16 +438,16 @@ data/mb_chao_garden_japan.gba.lz: data/mb_chao_garden_japan.gba
438438
$(GFX) $< $@ -search 1
439439

440440
%interactables.bin: %interactables.csv
441-
$(EPOS) $< $@ -entities INTERACTABLES -header "./include/constants/interactables.h"
441+
$(ENT_POS) $< $@ -entities INTERACTABLES -header "./include/constants/interactables.h"
442442

443443
%itemboxes.bin: %itemboxes.csv
444-
$(EPOS) $< $@ -entities ITEMS -header "./include/constants/items.h"
444+
$(ENT_POS) $< $@ -entities ITEMS -header "./include/constants/items.h"
445445

446446
%enemies.bin: %enemies.csv
447-
$(EPOS) $< $@ -entities ENEMIES -header "./include/constants/enemies.h"
447+
$(ENT_POS) $< $@ -entities ENEMIES -header "./include/constants/enemies.h"
448448

449449
%rings.bin: %rings.csv
450-
$(EPOS) $< $@ -entities RINGS
450+
$(ENT_POS) $< $@ -entities RINGS
451451

452452
%.gba.lz: %.gba
453453
$(GFX) $< $@

asm/macros/music_voice.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,5 +119,5 @@ mAlignWord
119119
.byte 0x80, 0, 0, 0
120120
mAlignWord
121121
mPtr \voice_group_pointer
122-
.int 0
122+
mPtr 0
123123
.endm

config.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ endif
5353
# Default game variables
5454
GAME_REVISION ?= 0
5555
GAME_REGION ?= USA
56-
GAME_VARIANT ?= 0
56+
GAME_VARIANT ?= DEFAULT
5757
DEBUG ?= 0
5858

5959
# For gbafix

include/core.h

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
#ifndef GUARD_MAIN_H
22
#define GUARD_MAIN_H
3-
// for memcpy
3+
44
#ifndef GEN_CTX
5-
#include <string.h>
5+
#include <string.h> // for memcpy
66
#endif
77

88
#include "global.h"
@@ -247,7 +247,7 @@ extern HBlankIntrFunc gHBlankCallbacks[4];
247247
extern u8 gNumHBlankCallbacks;
248248
extern u8 gNumHBlankIntrs;
249249

250-
extern u8 gIwramHeap[0x2204];
250+
extern u8 gIwramHeap[TASK_HEAP_SIZE];
251251

252252
extern void *gVramHeapStartAddr;
253253
extern u16 gVramHeapMaxTileSlots;
@@ -285,15 +285,15 @@ extern Background *gBackgroundsCopyQueue[16];
285285
// This is used to buffer the xy-shift for each background scanline
286286
extern void *gBgOffsetsHBlankPrimary;
287287

288-
extern u16 gUnknown_030017F0;
288+
extern u16 SA2_LABEL(gUnknown_030017F0);
289289
extern Vec2_16 gSpriteOffset;
290290
extern u8 gOamMallocOrders_StartIndex[32];
291291
extern IntrFunc gVBlankCallbacks[4];
292292

293293
extern u8 gOamFreeIndex;
294-
extern u16 gUnknown_03001944;
294+
extern u16 SA2_LABEL(gUnknown_03001944);
295295
extern u8 gNumVBlankIntrs;
296-
extern s16 gUnknown_0300194C;
296+
extern s16 SA2_LABEL(gUnknown_0300194C);
297297

298298
extern Tilemap **gTilemapsRef;
299299
extern u8 gBgSprites_Unknown2[4][4];
@@ -353,7 +353,7 @@ extern void *gBgOffsetsSecondary;
353353
extern s16 gMosaicReg;
354354
extern u8 gUnknown_030026F4;
355355
#endif
356-
extern s16 gUnknown_03002820;
356+
extern s16 SA2_LABEL(gUnknown_03002820);
357357
extern u8 gUnknown_03002874;
358358
extern void *gHBlankCopyTarget;
359359
extern u8 gBackgroundsCopyQueueIndex;
@@ -366,12 +366,12 @@ extern u8 gBackgroundsCopyQueueCursor;
366366
extern Sprite *gBgSprites[16];
367367
extern u8 gNumVBlankCallbacks;
368368
extern void *gBgOffsetsPrimary;
369-
extern u16 gUnknown_03004D58;
369+
extern u16 SA2_LABEL(gUnknown_03004D58);
370370
extern u8 gVramGraphicsCopyCursor;
371371
extern u8 gOamMallocOrders_EndIndex[0x20];
372372
extern u8 gBgSpritesCount;
373-
extern u16 gUnknown_03005394;
374-
extern u16 gUnknown_03005398;
373+
extern u16 SA2_LABEL(gUnknown_03005394);
374+
extern u16 SA2_LABEL(gUnknown_03005398);
375375
extern IntrFunc gVBlankIntrs[4];
376376
extern s32 gPseudoRandom;
377377
extern u8 gOamMallocCopiedOrder[128];

include/flags.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
#define FLAGS_UPDATE_SPRITE_PALETTES 0x2
99
#define FLAGS_EXECUTE_HBLANK_COPY 0x4
1010
#define FLAGS_EXECUTE_HBLANK_CALLBACKS 0x8
11-
#define FLAGS_10 0x10
11+
#define FLAGS_EXECUTE_VBLANK_CALLBACKS 0x10
1212
#define FLAGS_20 0x20
1313
#define FLAGS_40 0x40
1414
#define FLAGS_80 0x80

include/game/entity.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ typedef struct {
4848
/* 0x00 */ MapEntity *me;
4949
/* 0x04 */ u16 regionX;
5050
/* 0x06 */ u16 regionY;
51-
/* 0x08 */ u8 spriteX;
51+
/* 0x08 */ u8 meX;
5252
/* 0x09 */ u8 id;
5353
} SpriteBase;
5454

@@ -205,7 +205,7 @@ typedef struct {
205205

206206
#define ENEMY_DESTROY_IF_OUT_OF_CAM_RANGE(_enemy, _mapEntity, _sprite) \
207207
if (IS_OUT_OF_CAM_RANGE(_sprite->x, _sprite->y)) { \
208-
SET_MAP_ENTITY_NOT_INITIALIZED(_mapEntity, _enemy->base.spriteX); \
208+
SET_MAP_ENTITY_NOT_INITIALIZED(_mapEntity, _enemy->base.meX); \
209209
TaskDestroy(gCurTask); \
210210
return; \
211211
}

include/game/multiboot/connection.h

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,17 @@
33

44
#include "global.h"
55

6-
void sub_8081200(void);
6+
#if (GAME == GAME_SA1)
7+
#define COMM_DATA(val) (val)
8+
#define MP_LANGUAGE LOADED_SAVE->uiLanguage
9+
#define UNK_GFX_SIZE 0x1C0
10+
#elif (GAME == GAME_SA2)
11+
#define COMM_DATA(val) ((val) | 0x4000)
12+
#define MP_LANGUAGE gMultiplayerLanguage
13+
#define UNK_GFX_SIZE 0x180
14+
#endif
15+
16+
void SA2_LABEL(sub_8081200)(void);
717
void StartSinglePakConnect(void);
818
void ShowSinglePakResults(void);
919

include/game/save.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ typedef struct SaveGame {
117117
extern struct SaveGame *gLoadedSaveGame;
118118
#endif
119119

120-
#if (GAME == GAME_SA1)
120+
#if ((GAME == GAME_SA1) || (GAME == GAME_SA3))
121121
#define LOADED_SAVE (&gLoadedSaveGame)
122122
#elif (GAME == GAME_SA2)
123123
#define LOADED_SAVE (gLoadedSaveGame)

include/game/stage/player.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,17 @@ void InitializePlayer(Player *p);
2222
void DestroyPlayerTasks(Player *player);
2323
void Player_TransitionCancelFlyingAndBoost(Player *p);
2424
void Player_HandleSpriteYOffsetChange(Player *, s32);
25-
void sub_8023260(Player *);
26-
void sub_80232D0(Player *);
25+
void SA2_LABEL(sub_8023260)(Player *);
26+
void SA2_LABEL(sub_80232D0)(Player *);
2727
void Player_AirInputControls(Player *);
2828
void Player_TouchGround(Player *p);
2929
void Player_Uncurl(Player *p);
3030
void Player_HandlePhysicsWithAirInput(Player *p);
31-
void sub_8028204(Player *p);
32-
void sub_80282EC(Player *p);
33-
void sub_80283C4(Player *p);
34-
void sub_8029C84(Player *p);
35-
void sub_8029FA4(Player *p);
31+
void SA2_LABEL(sub_8028204)(Player *p);
32+
void SA2_LABEL(sub_80282EC)(Player *p);
33+
void SA2_LABEL(sub_80283C4)(Player *p);
34+
void SA2_LABEL(sub_8029C84)(Player *p);
35+
void SA2_LABEL(sub_8029FA4)(Player *p);
3636

3737
void Player_DisableInputAndBossTimer(void);
3838
void Player_DisableInputAndBossTimer_FinalBoss(void);

0 commit comments

Comments
 (0)