Mercurial > hg > dmlib
diff tools/lib64gfx.c @ 2108:5f8f170f8774
Change dmC64GetOpMemBlock() function API.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 24 May 2019 02:27:45 +0300 |
parents | 4276b8c0fef0 |
children | 510ea816d1ff |
line wrap: on
line diff
--- a/tools/lib64gfx.c Wed May 08 13:57:34 2019 +0300 +++ b/tools/lib64gfx.c Fri May 24 02:27:45 2019 +0300 @@ -868,21 +868,21 @@ } -void dmC64GetOpMemBlock(const DMC64Image *img, const int subject, const int bank, const DMC64MemBlock **blk) +const DMC64MemBlock * dmC64GetOpMemBlock(const DMC64Image *img, const int subject, const int bank) { - *blk = NULL; - if (bank >= 0 && bank < img->nbanks) { switch (subject) { - case DS_COLOR_RAM : *blk = &img->color[bank]; break; - case DS_SCREEN_RAM : *blk = &img->screen[bank]; break; - case DS_BITMAP_RAM : *blk = &img->bitmap[bank]; break; - case DS_CHAR_DATA : *blk = &img->charData[bank]; break; - case DS_EXTRA_DATA : *blk = &img->extraData[bank]; break; + case DS_COLOR_RAM : return &img->color[bank]; + case DS_SCREEN_RAM : return &img->screen[bank]; + case DS_BITMAP_RAM : return &img->bitmap[bank]; + case DS_CHAR_DATA : return &img->charData[bank]; + case DS_EXTRA_DATA : return &img->extraData[bank]; } } + + return NULL; } @@ -942,8 +942,8 @@ case DS_BITMAP_RAM: case DS_CHAR_DATA: case DS_EXTRA_DATA: - // XXX BZZZT .. a nasty cast here --v - dmC64GetOpMemBlock(img, op->subject, op->bank, (const DMC64MemBlock **) &blk); + // XXX BZZZT .. a nasty cast here + blk = (DMC64MemBlock *) dmC64GetOpMemBlock(img, op->subject, op->bank); if ((dmC64MemBlockReAlloc(blk, op->offs2 + size)) != DMERR_OK) { @@ -1146,7 +1146,7 @@ case DS_BITMAP_RAM: case DS_CHAR_DATA: case DS_EXTRA_DATA: - dmC64GetOpMemBlock(img, op->subject, op->bank, &blk); + blk = dmC64GetOpMemBlock(img, op->subject, op->bank); switch (op->type) { case DO_COPY: