From bc2f885d29905e2f4336ad042fc31c576823abb6 Mon Sep 17 00:00:00 2001 From: Sanqui Date: Thu, 2 Mar 2017 23:02:56 +0100 Subject: [PATCH] Also require ROM0 sections to be fixed when using overlay --- src/link/assign.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/link/assign.c b/src/link/assign.c index cbaa2719..b07b061f 100644 --- a/src/link/assign.c +++ b/src/link/assign.c @@ -259,8 +259,9 @@ AssignFloatingBankSections(enum eSectionType type) SLONG org; if ((org = area_AllocAnyBank(pSection->nByteSize, pSection->nAlign, type)) != -1) { - if (pSection->Type == SECT_ROMX && options & OPT_OVERLAY) { - errx(1, "All ROMX sections must be fixed when using overlay"); + if (options & OPT_OVERLAY && + (pSection->Type == SECT_ROMX || pSection->Type == SECT_ROM0)) { + errx(1, "All ROM sections must be fixed when using overlay"); } pSection->nOrg = org & 0xFFFF; pSection->nBank = org >> 16; @@ -405,8 +406,9 @@ AssignSections(void) while (pSection) { if (pSection->oAssigned == 0 && pSection->nOrg != -1 && pSection->nBank == -1) { - if (pSection->Type == SECT_ROMX && options & OPT_OVERLAY) { - errx(1, "All ROMX sections must be fixed when using overlay"); + if (options & OPT_OVERLAY && + (pSection->Type == SECT_ROMX || pSection->Type == SECT_ROM0)) { + errx(1, "All ROM sections must be fixed when using overlay"); } switch (pSection->Type) { case SECT_ROMX: