English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 02 November 2020, 18:14   #21
dschallock
Registered User
 
Join Date: Jul 2016
Location: Northern California
Posts: 174
Super cool!
dschallock is offline  
Old 22 March 2021, 16:53   #22
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
@dschallock

Thanks! (I must have missed your post)


@all

I have released a minor bugfix update for ALS which fixes a few minor issues.

v1.89 (21.03.2021)
* Fixed bug in ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE_SEGMENT[], which caused the low 12 bits of the colors to be set to the same value as the high 12 bits (because the instruction Areg(0)=PSA was placed just after the beginning of a loop, despite the comment just above said: "Areg(0) is set only once before the loop thanks to the fact that it is updated by Call with the value returned by ALS_SETCOLORXXRANGE()").
* Replaced all End/Pop Proc[False] with End/Pop Proc[0], as False might crash the Compiler in some circumstances.
* Fixed a comment in the ALS code.
* Fixed the metadata of a couple of ILBM files.
* Added a note to the demo3 program.
saimo is offline  
Old 06 June 2021, 12:07   #23
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Working on Follix ( [ Show youtube player ]), which uses ALS, inspired a few improvements.

v1.94 (06.06.2021)
* Added ALS_CHECK_LAYER_INDEX[].
* Added ALS_COPY_PALETTE_SEGMENT[].
* Added ALS_CREATE_LAYER_AS_CLONE[].
* Added ALS_SET_LAYER_A_AND_COLORS_FROM LAYER[].
* Made check on layer index in ALS_DESTROY_LAYER[] and ALS_MAKE_LAYER_DESCRIPTOR[] more robust.
* Removed check on layer index from ALS_GET_LAYER_DEPTH[].
* Simplified ALS_OPEN_FILE[].
* Updated manual.

https://www.retream.com/ALS
saimo is offline  
Old 06 June 2021, 12:20   #24
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,408
Nice stuff, the transperancy effects in Follix look quite good
roondar is offline  
Old 07 June 2021, 17:17   #25
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Thanks, roondar! Glad your tech-savvy eye appreciates the effects
Insider fun stuff: I tried to add also color cycling to the logo (which already has alpha cycling and fade-in/out applied to it), but it was too confusing to the eye; an instance of less-is-more, in practice.
saimo is offline  
Old 04 July 2021, 22:45   #26
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Just released another update.

v1.95 (4.7.2021)
* Optimized ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE[] and ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE_RANGE[] a little bit.
* Removed wrong comment from ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE[].

https://www.retream.com/ALS

This is the last version that supports also OCS and ECS. ALS v2 will be AGA-only. The reason is that supporting all the chipsets requires lots of additional code and also slows down execution in many places, while functionality is still very limited on OCS and ECS due to the fact that they offer only 6 bitplanes and 32 color registers. ALS is much more useful on AGA, so it makes sense to have a leaner and faster version for that chipset.

Also, I decided to postpone the release of Follix to after ALS v2 is done, so that the game can benefit from it.
saimo is offline  
Old 04 July 2021, 23:05   #27
kriz
Junior Member
 
kriz's Avatar
 
Join Date: Sep 2001
Location: No(R)Way
Age: 41
Posts: 3,185
Thanks for another update!!
kriz is offline  
Old 06 July 2021, 17:17   #28
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
@kriz

My pleasure!


@all

v1.96 and v2.0 released

As announced recently, here is ALS v2, whose main difference with the previous versions is that it's for AGA only and, therefore, can benefit from faster and smaller code (the compiled binary is about 3.5 kB smaller).
Besides the work done for the AGA-only transition, there are also a few more improvements, many of which made it also to a new v1 library (v1 is supposed to be end-of-line, but still I couldn't resist fixing/improving what surfaced along way). The changelogs below detail the changes.

https://www.retream.com/ALS

v2.0 (6.7.2021)
* Removed useless code from ALS_COPY_PALETTE_SEGMENT[].
* Removed OCS/ECS code.
* Removed OCS/ECS palettes support.
* Removed ALS_CHIPSETID, ALS_MAXLAYERCOLORSNUMBER, ALS_MAXPLANESNUMBER, ALS_PALETTECOLORSNUMBER, ALS_ADDRESSABLECOLORSNUMBER.
* Optimized code for AGA.
* Optimized ALS_SET_DISPLAY_COLORS_FROM_PALETTE[], ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE[] and ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE_SEGMENT[] a lot.
* Added ALS_BUILD_DISPLAY_COPPERLIST_HEAD[] and ALS_BUILD_DISPLAY_COPPERLIST_TAIL[].
* Made various other improvements.
* Revised/extended manual.

v1.96 (6.7.2021)
* Removed useless code from ALS_COPY_PALETTE_SEGMENT[].
* Optimized ALS_SET_DISPLAY_COLORS_FROM_PALETTE[] a little bit.
* Added ALS_BUILD_DISPLAY_COPPERLIST_HEAD[] and ALS_BUILD_DISPLAY_COPPERLIST_TAIL[].
* Made various other improvements.
* Revised/extended manual.

I have tested both version extensively through their test/demo programs and by means of ArtPazz and Follix. All tests have been done on a real Amiga 1200 (with and without accelerator board) and in UAE, and ran both from interpreter and as compiled programs. No issues were found, so it looks like the massive work didn't break anything.


@admins

Could you replace "MLS" with "ALS" in the thread title, please?

Last edited by saimo; 06 July 2021 at 17:41.
saimo is offline  
Old 16 July 2021, 17:05   #29
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Just released an update aimed at improving the terminology and the documentation.

v1.97 & v2.1 (16.7.2021)
* Renamed "palette segments" as "segments".
* Renamed: ALS_COPY_PALETTE_RANGE[] as ALS_COPY_SEGMENT_FROM_PALETTE_RANGE[]; ALS_EXTRACT_PALETTE_SEGMENT[] as ALS_CREATE_SEGMENT_FROM_PALETTE_RANGE[]; ALS_SET_DISPLAY_COLORS_RANGE_FROM_PALETTE_SEGMENT as ALS_SET_DISPLAY_COLORS_RANGE_FROM_SEGMENT[].
* Updated/revised in-code documentation.
* Updated/revised/fixed manual.

https://www.retream.com/ALS
saimo is offline  
Old 21 February 2023, 13:33   #30
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
A quick heads-up to let you know that I released a couple of littles updates.

v1.99 and v2.3 (20.2.2023)
* Changed the conditions of many If, Until and While statements and turned For ... Next loops into Repeat ... Until loops to have the AMOS Professional Compiler produce shorter and faster code.

v1.98 and v2.2 (19.2.2023)
* Added CPU caches clearing after machine code routines generation in ALS_INITIALIZE_SYSTEM[].

https://www.retream.com/ALS
https://retream.itch.io/als
saimo is offline  
Old 18 March 2023, 15:38   #31
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Ring around the World received an update yesterday. Today is ArtPazz's and Follix's turn - but first comes the library they're built on: ALS.

v1.100 & v2.4 (18.3.2023)
* Removed dependency on mathtrans.library by replacing CN=2^LD with CN=1 : Rol.l LD,CN.
saimo is offline  
Old 20 March 2023, 07:20   #32
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
So you can have a Dual Layer effect without using Dual Layer?

How many colours per layer on ECS?
Retro1234 is offline  
Old 20 March 2023, 10:40   #33
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Quote:
Originally Posted by Retro1234 View Post
So you can have a Dual Layer effect without using Dual Layer?
Yes and no - key points:
* the number of layers can be any from 1 to 6 on OCS/ECS and 1 to 8 on AGA;
* the layers must have all the same width and horizontal scrolling offset;
* each layer has a freely defineable degree of transparency;
* each color has a freely defineable degree of transparency.


Quote:
How many colours per layer on ECS?
The only restrictions are that the total number of bitplanes used by the layers can be at most 6 and that the final colors with index >=32 are EHB (those are hardware limits that can't be broken). So it all depends on how many layers one chooses to have and their depth.
If one needs just 2 layers (as per your first question), all the possible allocations of the bitplanes are (first layer depth + second layer depth):
* 1 + 1/2/3/4/5
* 2 + 1/2/3/4
* 3 + 1/2/3
* 4 + 1/2
* 5 + 1

Example with 3 layers and 6 bitplanes:
* bottom layer (for background graphics): 2 bitplanes -> 4 colors;
* middle layer (for foreground graphics): 3 bitplanes -> 8 colors;
* top layer (for shadows): 1 bitplane -> 2 colors.

The first example in this video shows a 2-layer example that uses a 4+2 bitplanes split on OCS/ECS:

[ Show youtube player ]

The other examples are for AGA and help understand the system further.
saimo is offline  
Old 20 March 2023, 13:01   #34
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Shame the Horizontal offset has to be the same. Don't think I've ever heard of anything quit like it.
Retro1234 is offline  
Old 20 March 2023, 13:07   #35
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Quote:
Originally Posted by Retro1234 View Post
Shame the Horizontal offset has to be the same.
In theory it's possible to create a specific system that supports strictly only two playfields, without restrictions on horizontal offset and width - in practice, a Dual Playfield mode with transparencies. (It's not in my plans, though.)
saimo is offline  
Old 22 May 2023, 13:43   #36
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
A couple of experiments done while brainstorming about a new game made with ALS.
The first effect is obtained basically at no processing cost, while the second one requires only the minimal cost of blitting a 2 bit mask. A stock Amiga 1200 can handle this without breaking a sweat.

[ Show youtube player ]

To be honest, I'm at a loss regarding which game to make.
It all started with the itch of remaking the second game I ever made (and never publicly released), but while fiddling with ALS these effects came to mind - and they don't happen to be very suitable for that game.
So, I tried to think of alternatives, and the best idea I came up is a game where: there are two parallel worlds, a real (dangerous/dark) one and an illusory (pleasant/nice) one; the screen mostly shows the illusory world, but the character controlled by the player is inside a bubble around it that shows the real world or there's some mechanism that allows the player to somehow reveal the real world - e.g. with a sort of torch light. The problem with this idea is designing the game and producing the content (double graphics work!) - it's something I can't undertake now.
Also, a sports game is sorely missing from my catalogue, but so far I couldn't think of anything interesting.
saimo is offline  
Old 22 May 2023, 18:19   #37
saimon69
J.M.D - Bedroom Musician
 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 3,519
Quote:
Originally Posted by saimo View Post
A couple of experiments done while brainstorming about a new game made with ALS.
The first effect is obtained basically at no processing cost, while the second one requires only the minimal cost of blitting a 2 bit mask. A stock Amiga 1200 can handle this without breaking a sweat.

[ Show youtube player ]

To be honest, I'm at a loss regarding which game to make.
It all started with the itch of remaking the second game I ever made (and never publicly released), but while fiddling with ALS these effects came to mind - and they don't happen to be very suitable for that game.
So, I tried to think of alternatives, and the best idea I came up is a game where: there are two parallel worlds, a real (dangerous/dark) one and an illusory (pleasant/nice) one; the screen mostly shows the illusory world, but the character controlled by the player is inside a bubble around it that shows the real world or there's some mechanism that allows the player to somehow reveal the real world - e.g. with a sort of torch light. The problem with this idea is designing the game and producing the content (double graphics work!) - it's something I can't undertake now.
Also, a sports game is sorely missing from my catalogue, but so far I couldn't think of anything interesting.
Most of those games that use dark/light to reveal obstacles/tools seems good here for me
saimon69 is offline  
Old 22 May 2023, 22:00   #38
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Quote:
Originally Posted by saimon69 View Post
Most of those games that use dark/light to reveal obstacles/tools seems good here for me
It's a good concept per se, indeed. But its requires careful and smart design to make the game intersting and fun.
saimo is offline  
Old 22 May 2023, 23:40   #39
skan
Dream Merchant
 
skan's Avatar
 
Join Date: Sep 2007
Location: Dreamlands
Posts: 530
Hey, that's my concept for a Lovecraft-inspired action-cinematic-platformer!
skan is offline  
Old 29 May 2023, 17:33   #40
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
More experiments with ALS...

[ Show youtube player ]
saimo is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Flickering graphics using BltBitMap function of graphics.library balrogsoft Coders. C/C++ 16 04 February 2020 14:54
X-System ( not X-System 2) aka Crossed System TDO request.Old Rare Games 9 02 July 2019 15:26
2D custom graphics system used by Japanese Engineers ! dlfrsilver Retrogaming General Discussion 2 15 November 2018 23:41
System is not validated! FFS (and I dont mean fast file system!) Macca support.Hardware 11 11 June 2007 13:04
Graphics buster Retrogaming General Discussion 4 11 September 2004 12:05

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 22:50.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.12252 seconds with 15 queries