## Stephane-D/SGDK — v2.00…v2.10

_243+ commits._

### Features
- **better to add line separator** (6530e71)
- **add current dir to include path + added "-fdiagnostics-color=always" flag to force colored error report if supported** (85c309d)
- **Major revamping of mathematical functions (thanks to Daniel Moura for the new functions)** (aa066a1)
- **Added new resource file option to sort objects by a user specified field. (#389)** (a8e9012)
- **New Error Handler with backtrace and symbol support (#377)** (40071af)
- **Add user friendly setWindowXXX(...) and VDP_setWindowOff(), VDP_setWindowFullScreen() methods (#372)** (ac20ad7)
- **Add VDP_drawTextClear (#367)** (1d99217)
- **Added support to define animation 'time' per frame for SPRITE resource** (5ac2fa3)
- **Added support for ProMotion NG JASC .pal (#358)** (8126020)
- **Update rescomp src to add and export binary array size label** (d0a26de)

### Fixes
- **small fix** (f8e3f82)
- **small fix** (d8a012a)
- **revert change (regression)** (792c84e)
- **Fixed a bug in MAP_getMetaTilemapRect(..) when crossing block in X dimension** (58df311)
- **Fix my reset** (46ca897)
- **better after fix conversion** (8ac6b85)
- **Fix GCC version info** (1e1a640)
- **Fix weird error in symbol injection pass.** (8e2e291)
- **Fix timer update after frame change callback call** (d1bb108)
- **Apply the SPR_isAnimationDone() fix to legacy sprite engine** (2e6b678)
- **Fixed Object boolean fields export (Thanks to werton for the fix !)** (fb08f94)
- **Fixed bug with boolean type of object's field in tmx file (#359)** (c5b1763)
- **Fix targets declaration order** (c267713)
- **Fix targets declaration order** (c29fc48)
- **Fix default makefile target (#355)** (324dd37)
- **Added the new MAP patch data callback allowing easier map data patching** (5dd98a4)
- **Fix XGM2 default tempo** (ee06499)
- **Fix rescomp project after merge** (303f447)
- **Added MAP_overridePlaneSize(..) method and prepared patch callback** (3541e88)
- **typo fix** (097aa8a)
- **Fix rescomp .classpath and export.jardesc** (c69768c)
- **Fixed a small bug where 2 PCM commands could be swapped (STOP and START for instance)** (50eaa95)

### Backend
- **Updated to SGDK 2.10** (1a91f00)
- **Updated changelog for SGDK 2.10** (13a640b)
- **Update readme.md** (16ccbe7)
- **minor change** (b7529bd)
- **Update rescomp.jar** (abb313b)
- **changed some spacing / indent** (e4e9a08)
- **Keep rescomp_ext.jar class loader open to allow import of dependencies. (#405)** (57da0bb)
- **can delete that** (145f8f3)
- **Small change about VSCode** (907bd33)
- **Updated to last SGDK** (45e1f89)
- **Updated to last SGDK** (a5e51b5)
- **minor change** (5cb9e2a)
- **Minors changes to template project** (eff3f9d)
- **Smalls changes** (7036d4d)
- **smalls changes to format description** (a5ec562)
- **updated to last SGDK** (2793309)
- **Avoid re-processing sprite cut process on duplicated frames** (2c9d389)
- **Updated to last SGDK** (48c3ab4)
- **Protect from interrupts on palette read operation (often cause issues with raster effects)** (b79252a)
- **Updated some infos about the doxygen, Docker, VSCode..** (903bb93)
- **Added VSCode template** (bffadff)
- **Update .gitignore** (1839b7f)
- **Removed SGDK docker (see readme notes about it)** (fe48e6a)
- **Removed vstudio template** (ad42f2b)
- **Added tile-animation example (#403)** (194e6f1)
- **renamed / moved some samples** (180afae)
- **ignore cmd_** (4dd21da)
- **Added sharing tiles between sprites and sprite masking examples (#401)** (09b1739)
- **Added missed parenthesis in macro MIN_S8, MIN_S16, MIN_S32 (#400)** (271a292)
- **Include genesis.h in resource header. To suppress warnings. (#399)** (5cb943e)
- **Added typedef structures: Vect2D_ff16, Vect2D_ff32, Mat2D_ff16, Mat2D_ff32, V2ff16, V2ff32, M2ff16, M2ff32 (#398)** (dce3f9c)
- **cleanup (casting is useless as we already use unsigned vars)** (5e21cc8)
- **typo !** (a09b348)
- **Update date** (1d13988)
- **renaming** (bd61c05)
- **small optimizations + better preservation of fractional part for FF32** (184e044)
- **update comment** (761a112)
- **small optimization (better to do not use mulx/divx on const)** (6fb40ea)
- **Added string conversion functions for ff16, ff32 and updated console module description (#396)** (a9837ff)
- **sprite->timer can have random values after sprite structure allocation (#397)** (882ebe9)
- **Optimize LZ4W decompressor (#393)** (847c9cc)
- **Automated documentation generation with GitHub Action, removing outdated files (#391)** (2dd23eb)
- **Added conversion functions between fastfix16, fastfix32, fix16, fix32 (#394)** (a782219)
- **Reduced memory consumption of the Console module by 6 bytes, and fixed typo (#392)** (fee7403)
- **Updated to last SGDK** (2f50a4b)
- **Updated for the recent changes on math unit** (8b33303)
- **update version** (9d61d98)
- **Added 'sortby' field to OBJECTS resource (thanks Iratahack)** (e468c53)
- **ext/flash-save: Bugfixes (#388)** (1013937)
- **minors changes to megawifi samples** (2b7fa81)
- **Feature/mw everdrive x7 (#386)** (a6f32fe)
- **Improved / fixed sprite cutting process** (81e1d6f)
- **Attempt to mitigate overdraws in sprite cutting process (not perfect yet)** (fa97bd4)
- **Update FUNDING.yml** (8dcb6f3)
- **Update FUNDING.yml** (3b495e8)
- **Changed Java compliance to 1.8 so it can work with older JRE** (d4cd8a7)
- **typo** (c4ddd41)
- **Fixed some small bugs in XGM2Tool** (5841032)
- **Added COLUMN_AHEAD and ROW_AHEAD definition so we can easily customize them if needed.** (50a8aa3)
- **Merge branch 'master' of https://github.com/Stephane-D/SGDK** (8db29ed)
- **Fixed cutting PNG export** (debb814)
- **For more safety** (92389d1)
- **Halt Z80 on SYS_reset() / SYS_hardReset()** (617e3cb)
- **Update ConvSym to 2.12.1. (#381)** (1fcfb6f)
- **comment** (10593e5)
- **ignore ide files** (d4458a3)
- **Merge branch 'master' of https://github.com/Stephane-D/SGDK** (e9e2dae)
- **fixed default DAC enable state in XGM2 driver** (20266c3)
- **Install ConvSym in SGDK's Docker image (#380)** (1269404)
- **Separated rom padding step so it does it after adding symbols** (f2b5e85)
- **Fixed SPR_isAnimationDone(.)** (de4c620)
- **Allow to access config define from sega.s bootstrap** (4475553)
- **typo** (2b6a911)
- **Tweaked VDP_showFPS(), VDP_showCPULoad(), BMP_showFPS(), Added VDP_drawTextBGFill(), fixed dependencies (#373)** (a4a97d0)
- **formatting** (d103cfc)
- **Fixed reported number of tiles (removing duplicated tilesets) by SPR_loadAllFrames(..)** (d430517)
- **Probably better in that order to reduce memory fragmentation** (6f2b7cd)
- **SPR_loadAllFrame(..) now detect duplicated tilesets and only load them once in VRAM** (eda3c9d)
- **Added missing methods** (01b8417)
- **Added tile ordering option for TILESET, TILEMAP and MAP resources + TILESET export option** (0619fc5)
- **Merge branch 'master' of https://github.com/Stephane-D/SGDK** (1010efa)
- **Remove ind in VDP_drawTextFill() (#368)** (0830f9a)
- **Update bg_test.c** (4aceabb)
- **Updated to last sources** (bf2ecca)
- **Renamed and tweaked VDP_drawTextClear(..) --> VDP_drawTextFill(..)** (db67fc6)
- **fixed synchronous palette fade (last palette update was missing)** (499bacd)
- **Update rescomp.jar** (e5c6c56)
- **Added missing parseIntArray2D(..) method** (00ea079)
- **Fixed color overflow in PAL_doFadeStep (#360)** (35d7178)
- **Improved the SYS_die function. (#366)** (2623943)
- **Improve explanation** (c3eec5a)
- **Update readme.md (#364)** (8a07f72)
- **Added RAM_SECT definition + small refactoring** (742f094)
- **Update libmd_debug.a** (6289c23)
- **cleanup** (e4b9838)
- **Fixed SPr_isAnimationDone(..) report inside the frame change callback** (bcc8b70)
- **Fixed inverted result of PAL_isManualFadeDone (#361)** (9a315ee)
- **Added PAL_isManualFadeDone() method (let you know if manual fading process is complete).** (de738ff)
- **Simplified / improved a bit palette fading process to avoid palette transfer outside vblank** (8ab25b2)
- **Mitigated as much as possible HALT_Z80_ON_IO effect on PCM (shortened Z80 interruptions time)** (7564554)
- **Added MAP patching example (press button Y to enable / disable it)** (43a7e93)
- **just in case** (2141fdc)
- **Merge branch 'pr/347'** (97ec5c2)
- **Renamed SPR_getAnimationDone() --> SPR_isAnimationDone() and changed its logic + fixed auto_loop** (d5cf952)
- **re-introduced deps + added -ffunction-sections and -fdata-sections flags** (8b07ad7)
- **Fixed broken links (#351)** (9108701)
- **minors changes** (852cf8c)
- **Updated to last SGDK** (8f2731f)
- **Changed special value of numSprite to 0x81 (make it easier to recover the number of sprite)** (65c5a6b)
- **better to set the field to signed now** (084aaed)
- **Update rescomp.jar** (60b7fed)
- **minor tweak** (0377311)
- **Adjust music tempo depending PAL or NTSC track info** (708216d)
- **easy optimisation** (9daa5f0)
- **Sprite engine: optimized handling of simple sprite (using only a single hardware sprite which fit frame size)** (bdfe187)
- **Added special marker for optimizable single VDP sprite** (89763cb)
- **added AWS tutorial link.** (60ff28b)
- **Updated to bypass RF5C164 chip as well.** (a104f06)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/Stephane-D/SGDK?utm_source=github-action)._