Developer diary › Roadmap 2021

Here is the road map planed for 2021 for the rebuilded project "Amos Professional Unity" :

Now that Gunnar have released some precise informations concerning the SAGA Chipset, I am able to be more precise about what should be added to Amos Professional Unity concerning the SAGA chipset.

Here is the current roadmap with its completion state :

Step 1 Rebuild a flexible Amos Professional version from the original.
1.1 Rebuild Amos Professional source code Structure to fit requirements for new flexible files structures
1.2 Makes the default Amos Professional uses AmosProUnityECS.library instead of AMOS.library
1.3 Modify internal source code to use the new library name AmosProUnityECS.library
1.4 Update configuration files for compiler, interpreter, editor to uses new AmosProUnity config files instead of the older ones.
 After Step 1, Amos Professional Unity should run exactly like Amos Professional
Step 2 Push everything that was graphic dependant into the new AmosProUnityECS.library

2.1

Push all methods that requires graphic treatment, or that are dependant on the graphic chipset, directly inside the new AmosProUnityECS.library

2.1.1

 IFF and IFF Animation from AmosPro.lib

2.1.2

 Screen, color palette and pen from AmosPro.lib

2.1.3

 Banks methods requiring changes depending on chipset

2.1.4  SPack & UnPack from Compact.lib/AmosPro.lib
2.1.5

 Check Open Screen from AmosPro.lib if it check limits from ECS chipset

2.1.6

Improve color format support by adding special methods for RGB12,RGB15 and RGB24 color format conversion (New 2020.12.05)

2.1.7  Colour INDEX,RGB can now handle RGB12 (native) and RGB24 by setting bit 24 to 1 (=$01000000)
 = Colour( INDEX ) now always return RGB24 value
Update Colour methods with the new color conversion methods from 2.1.6
2.1.8

 Update rainbow methods to handle both RGB12 and RGB24 bits colors

2.2

 Update Amos Professional internal structures to handle datas for all hardware variants planed

2.2.1  Push 10 bitplanes in structure (ECS=6,AGA=8,SAGA=10(8+1Chunky+1PIP)
2.2.2  Handle Chunky Screen Color Palette (SAGA only)
2.2.3  Handle PIP Screen Color Palette (SAGA only)
2.2.4

 Handle Sprites color palettes (SAGA only)

2.3


 Reinject specific color palette methods (load/save/etc.) that were initially in the agaSupport.lib, directly inside the AmosProUnitySupport.lib as available for all platforms

2.3.1  Move Color conversion methods from AmosProfessionalUnityECS.library to AmosPro_UnitySupport.lib
2.3.2  256 Colors palette slots for load/save/get/set/etc.
2.4  Check that the Amos Professional Unity internal structure is adapted to changes
 After Step 2, Amos Professional Unity should contains new working commands for color palette. Rainbows will be done later.
Step 3  Reimplement the AGA methods and support inside the AmosProUnityAGA.library
3.1  Create AmosProAGA.library from AmosProECS.library
 Reimport all the changes applied into the previously called AmosProAGA.library, inside the new AmosProUnityAGA.library
3.2 Add support for retro-compatibility with previous Amos Professional 2.0
3.3 Makes Amos Professional detect chipsets ECS/AGA and open the correct library AmosProUnityECS.library or AmosProUnityAGA.library depending on configuration
3.4 Check that the Amos Professional Unity internal structure is adapted to changes for all the supported platforms and run on both ECS and AGA using the correct library
3.5 Import previous AmosProAGA.lib methods inside the new AmosProUnity_Support.lib
 After Step 3, Amos Professional Unity should be able to *specifically* run on both ECS and AGA configuration using the correct AmosProUnity*****.library
Step 4  Complete the AGA Support inside the AmosProUnityAGA.library
4.1 Add support for AGA rainbows when AGA is available. As method should already accepts RGB24 inputs. Only the methods that render Rainbows will requires to be updated
4.2 Add support for AGA Sprites
4.3  Add support for Super Hires and Ultra Hires resolutions
 After Step 4, AGA Chipset support will be considered as COMPLETED. And should works correctly
Step 5  Implement the SAGA Support and methods inside the Amos ProUnitySAGA.library
5.1  Build the new AmosProUnitySAGA.library using the freshly created AmosProUnityAGA.library as template
5.2  Update AGA Methods to use optimised Copper List 32 bits calls available in the SAGA chipset
5.3

 Add support for Chunky Screen

5.3.1  Add support for Chunky color palette (use Palette slot, set/get colour)
5.3.2  Add support to open/close Chunky Screen
5.4  Add support for Chunky Screen graphics
5.5  Add support for Chunky Screen pack/unpack (compact.lib)
5.6

 Add support for PIP Screen

5.6.1  Add support for PIP color palette (use Palette slot, set/get colour)
5.6.2  add support top open/close PIP Screen
5.7

 Add support for SAGA Sprites

5.8

Add support for SAGA 8 Channels Audio 8/16 bits.

5.9

Check that the Amos Professional Unity internal structure is adapted to changes for all the supported platforms and run on both ECS, AGA and SAGA using the correct library

 After Step 5, Amos Professional Unity should be able to run *specifically* on the three support configurations ECS, AGA and SAGA using the correct AmosProUnity****.library
Step 6  Multi-Platform coding support
6.1  Add methods to help developer to know (at run time), on which Amiga 68k compatible configuration the program run (ECS, AGA, SAGA)
6.2  Create some source code samples, to show the use of multi-platform game development.
 After step 6, Amos Professional Unity development will be considered as Completed. At this point, and depending on the amount of works required to reach this goal, I will release the project as Open Source MIT Licence, or as Closed Source using MIT Relicensing option.

I hope you'll enjoy the development of Amos Professional Unity. And feel free to send me a message if you have an idea, a proposal, directly using the Contact form.

Latest update : 2020.02.16 18:01