mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 18:22:07 +00:00
Replace magic numbers with BANK_COUNT_* constants
Previously, some instances of the number of banks for each section remained hardcoded. These have been replaced with BANK_COUNT_* constants. As a side-effect, this could fix a theoretical bug when using BANK(label) when the label is in a high SRAM bank (≥ 4).
This commit is contained in:
@@ -3,16 +3,6 @@
|
|||||||
|
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
|
|
||||||
enum eBankDefine {
|
|
||||||
BANK_ROM0 = 0,
|
|
||||||
BANK_ROMX,
|
|
||||||
BANK_WRAM0 = 512,
|
|
||||||
BANK_WRAMX,
|
|
||||||
BANK_VRAM = 520,
|
|
||||||
BANK_HRAM = 522,
|
|
||||||
BANK_SRAM = 523
|
|
||||||
};
|
|
||||||
|
|
||||||
enum eBankCount {
|
enum eBankCount {
|
||||||
BANK_COUNT_ROM0 = 1,
|
BANK_COUNT_ROM0 = 1,
|
||||||
BANK_COUNT_ROMX = 511,
|
BANK_COUNT_ROMX = 511,
|
||||||
@@ -23,6 +13,16 @@ enum eBankCount {
|
|||||||
BANK_COUNT_SRAM = 16
|
BANK_COUNT_SRAM = 16
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum eBankDefine {
|
||||||
|
BANK_ROM0 = 0,
|
||||||
|
BANK_ROMX = BANK_ROM0 + BANK_COUNT_ROM0,
|
||||||
|
BANK_WRAM0 = BANK_ROMX + BANK_COUNT_ROMX,
|
||||||
|
BANK_WRAMX = BANK_WRAM0 + BANK_COUNT_WRAM0,
|
||||||
|
BANK_VRAM = BANK_WRAMX + BANK_COUNT_WRAMX,
|
||||||
|
BANK_HRAM = BANK_VRAM + BANK_COUNT_VRAM,
|
||||||
|
BANK_SRAM = BANK_HRAM + BANK_COUNT_HRAM
|
||||||
|
};
|
||||||
|
|
||||||
#define MAXBANKS (BANK_COUNT_ROM0 + BANK_COUNT_ROMX + BANK_COUNT_WRAM0 + BANK_COUNT_WRAMX \
|
#define MAXBANKS (BANK_COUNT_ROM0 + BANK_COUNT_ROMX + BANK_COUNT_WRAM0 + BANK_COUNT_WRAMX \
|
||||||
+ BANK_COUNT_VRAM + BANK_COUNT_HRAM + BANK_COUNT_SRAM)
|
+ BANK_COUNT_VRAM + BANK_COUNT_HRAM + BANK_COUNT_SRAM)
|
||||||
|
|
||||||
|
|||||||
@@ -69,11 +69,11 @@ getsymbank(SLONG symid)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (nBank == BANK_WRAM0) return 0;
|
if (nBank == BANK_WRAM0) return 0;
|
||||||
if (nBank >= BANK_WRAMX && nBank <= (BANK_WRAMX+6))
|
if (nBank >= BANK_WRAMX && nBank < (BANK_WRAMX + BANK_COUNT_WRAMX))
|
||||||
return nBank - BANK_WRAMX + 1;
|
return nBank - BANK_WRAMX + 1;
|
||||||
if (nBank >= BANK_VRAM && nBank <= (BANK_VRAM+1))
|
if (nBank >= BANK_VRAM && nBank < (BANK_VRAM + BANK_COUNT_VRAM))
|
||||||
return nBank - BANK_VRAM;
|
return nBank - BANK_VRAM;
|
||||||
if (nBank >= BANK_SRAM && nBank <= (BANK_SRAM+3))
|
if (nBank >= BANK_SRAM && nBank < (BANK_SRAM + BANK_COUNT_SRAM))
|
||||||
return nBank - BANK_SRAM;
|
return nBank - BANK_SRAM;
|
||||||
|
|
||||||
return nBank;
|
return nBank;
|
||||||
|
|||||||
Reference in New Issue
Block a user