Official 1.2 Release of CPCtelera
This new release of CPCtelera comes with lots of new features and improvements that will make game creation a better and faster task.
Here is a sum-up of new features included in this release:
- Added new modules: cpct_random & cpct_easytilemaps
- 3 new fast functions for very easy management of Tilemaps and Tilesets directly.
- New cpct_img2tileset utility for converting images containing complete tilesets or sprites groups into C data for including directly in projects code.
- 2 new fast functions for generating random byte numbers uniformly distributed.
- 2 faster memset functions, up to 3 times faster than original cpct_memset (cpct_memset_f8, cpct_memset_f64)
- New function to set the location of the program stack at will (cpct_setStackLocation)
- New function for drawing Masked Aligned Sprites using Transparency Tables(cpct_drawSpritesMaskedAlignedTable)
- Added a transparency_tables header file for easing inclusion.
- Added a C-script for generating mask lookup tables.
- Added new examples: Text Software Scrolling, fastmemset, Easytilemaps demo, drawSpritesMaskedAligned demo, ProgramStack demo.
- Added Img2CPC image conversion tool by Augusto Ruiz.
- Added new version of RGAS: 1.0
- Updated SDCC to 3.5.0
- Movable project folders: they can be moved to different locations on a same hard-disk or even on a different machine without any change (provided CPCtelera is installed). They now use an environment variable for linking with framework.
And this is a list of improvements and bug-fixes:
- Added a bug-fix for SDCC __z88dk_callee function binding on tail jumping optimizations.
- Improved performance for C calls to functions using __z88dk_callee and __z88dk_fastcall new calling conventions included with SDCC 3.5.0.
- Fixed mixed up definitions for Joy1_Fire1 and Joy1_Fire2
- Optimized several library functions.
- Documented functions that use self-modifying code (and will not work from ROM, logically)
- Split C and ASM bindings for most functions: calls from both languages include their own code without overheads
- Recalculated timings of most functions with respect to Amstrad's microsecond-rounded scheme.
- cpct_mkproject checks for valid AMSDOS characters on project names.
- Fixed a subtle calculation bug in cpct_getScreenPtr
- Added library cleanup to setup.sh
- Improved OSX compatibility for the cpct_mkproject and setup.sh scripts
Big thanks to all people supporting this project and contributing to it. Special thanks to people who directly contributed to this 1.2 release:
- Alcoholics Anonimous / CPCWiki
- Augusto Ruiz
- Ervin Pajor
- Lachlan Keown
- Tim Riemann (Octoate)
- Roald Strauss
Hope you enjoy this release and create new and better games and software for Amstrad CPC! :)