|
| 1 | +SGDK 1.90 (July 2023) |
| 2 | +--------------------- |
| 3 | + |
| 4 | +COMPILER |
| 5 | +* RESCOMP |
| 6 | + - MAP: added support for 8x8 tile priority information for TMX maps (was fixed to TMX map tile size before) |
| 7 | + - OBJECT: objects are now sorted on 'id' field by default (if it exists) |
| 8 | + - OBJECT: added 'width' and 'height' fields export |
| 9 | + - OBJECT: fixed 'name' field export |
| 10 | + - OBJECT: fixed bug with f32 field value |
| 11 | + - SPRITE: added support for empty frame in the middle of a sprite animation |
| 12 | + - SPRITE: fixed bug with dummy empty frame when NONE optimisation level selected |
| 13 | + - SPRITE: fixed a small bug in sprite frame duplicate detection |
| 14 | + - SPRITE: added new optimization level for cutting process (replaced 'iteration' with 'optLevel') |
| 15 | + - SPRITE: several fixes / improvements to sprite cutting algorithm |
| 16 | + - PAL: better JASC .pal file support |
| 17 | + - fixed a small bug with empty / dummy tileset |
| 18 | + - added info in output log for duplicated objects |
| 19 | + - rescomp.txt documentation updated and fixes |
| 20 | + - several others tweaks and fixes |
| 21 | +* XGMTOOL |
| 22 | + - fixed compilation on linux (thanks to Andrew DeRosier) |
| 23 | + - updated XGMTool binary to support ZGM output |
| 24 | +* MAKEFILE |
| 25 | + - made ext.mk optional |
| 26 | +* LINK |
| 27 | + - added .ramprog section for easier moving code into RAM |
| 28 | +* DOCKER |
| 29 | + - fixed windows docker build container (thanks to Allion Benjamin) |
| 30 | + - removed wine32 dependency, support Apple M1 (arm64) and native tools too |
| 31 | +* README |
| 32 | + - fixed assembly (asm target) generation |
| 33 | + - added links + smalls updates here and there |
| 34 | + |
| 35 | +LIBRARY |
| 36 | +* SPRITE: |
| 37 | + Rewrote the sprite engine to get rid of hardware sprite allocation (note that the legacy sprite engine |
| 38 | + is still accessible through the config.h file as it can be useful for sprite multiplexing). |
| 39 | + - better hardware sprite usage |
| 40 | + - general simplification of the API |
| 41 | + - lighter 'Sprite' structure |
| 42 | + - re-introduced Y position in visibility computation |
| 43 | + - lot of optimisations done to maintain same or get higher level of performance |
| 44 | + - added SPR_getAnimationDone(..) method to know if current playing animation reached the last frame |
| 45 | + - added SPR_getUsedVDPSprite() method to know how many hardware sprite are currently in use. |
| 46 | + - added SPR_enableVDPSpriteChecking() / SPR_disableVDPSpriteChecking() methods |
| 47 | + - added SPR_getFreeVRAM() and SPR_getLargestFreeVRAMBlock() methods |
| 48 | + - keep same behavior in debug / release build |
| 49 | +* OBJECT |
| 50 | + - small fix in POOL_find(..) method |
| 51 | +* MATH |
| 52 | + - transformed some macros to methods for better type checking (can also help the compiler) |
| 53 | +* CONSOLE |
| 54 | + - added TTY console support (added as module - thanks to Andreas Dietrich for it) |
| 55 | +* VDP |
| 56 | + - modified MAX_VDP_SPRITE to SAT_MAX_SIZE as max displayable sprite depend from horizontal reolution |
| 57 | + - disable VDP during VDP_resetScreen() process (faster operation) |
| 58 | + - small fix on VDP_waitVSync() and VDP_waitVActive() methods to take care of VDP disable state |
| 59 | +* SYS |
| 60 | + - added SYS_nextFrame() method (just an alias to SYS_doVBlankProcess) |
| 61 | + - added SYS_resetBanks(), SYS_getNextFarAccessRegion() and SYS_setNextFarAccessRegion() methods |
| 62 | + - fixed a bug with soft reset + general safer soft reset operation |
| 63 | + - added SYS_getShowFrameLoad() method |
| 64 | + - fixed small bug in TSK_init() |
| 65 | +* Z80 |
| 66 | + - several fixes and method updates for safer operation |
| 67 | +* SOUND |
| 68 | + - added XGM_setPCM_FAR(..) and XGM_setPCMFast_FAR(..) to allow playing PCM through bank switch |
| 69 | + - added YM2612_readStatus() method |
| 70 | +* JOY |
| 71 | + - added JOY_getEventHandler() method (useful for saving / restoring callback) |
| 72 | +* SAVE |
| 73 | + - added flash save support (added as module - thanks to doragasu for it) |
| 74 | +* MISC |
| 75 | + - tweaked / improved readability of lz4w_unpack (thanks to HpMan) |
| 76 | +* deprecated methods and definitions now generate compilation error |
| 77 | +* added NO_INLINE definition when we want to force no inlining |
| 78 | +* forced NO_INLINE on some larges functions to avoid code growing too much |
| 79 | +* added megaWifi README file |
| 80 | +* documentation updates |
| 81 | +* smalls fixes, general cleanup, some refactoring.. |
| 82 | + |
| 83 | +SAMPLE |
| 84 | +* BENCHMARK |
| 85 | + - added new large scroll performance test |
| 86 | + - added new big sprite tests |
| 87 | + - reworked scoring (making it not comparable to previous versions unfortunately) |
| 88 | + - small fixes |
| 89 | +* updated samples to last SGDK |
| 90 | + |
| 91 | +SGDK 1.90 MIGRATION NOTE |
| 92 | + |
| 93 | +* Removed 'resetz80' parameter from Z80_upload(..) function (it's always reseted now) |
| 94 | +* Z80_clear(..) doesn't take any parameters now (it always clears all the Z80 RAM now) |
| 95 | + |
| 96 | + |
1 | 97 | SGDK 1.80 (September 2022)
|
2 | 98 | --------------------------
|
3 | 99 |
|
|
0 commit comments