Amiga.org

Amiga computer related discussion => Amiga Software Issues and Discussion => Topic started by: arongooch on July 03, 2017, 04:55:23 AM

Title: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 03, 2017, 04:55:23 AM
Hi all, recently I have been having an issue opening interlace screens in either Amos1.3 or Pro2.0 running under Kickstart3.1

Opening a screen in any resolution with interlace running on Amos 1.3 or Pro under Kickstart3.1 opens a screen as shown here with what seems like the second scanline frame is missing ie interlace mode not operating and showing missing lines. This happens in either WinUAE emulation or on my A1200 or A600 with native output.

Running either Amos1.3 or Pro2.0 under Kickstart 1.3 however, the interlaced output screen works perfectly fine.

I have put this question to the EAB forum and someone suggested setting the editor config to "interlace: Yes" mode. When I do this the editor window gets squished to half of the screen and the output window in interlace mode still has the exact same issue of missing lines ie no interlace screen.

I have a pretty much finished a game I want to release that works in any Amos under kickstart1.3 but looks all horrible in kickstart3.1 because of the missing lines.

The picture I attached shows a simple program of opening a screen "screen open 1,640,512,16,hires+laced" and a few print test lines then ends. I get the same issue if I load an interlaced IFF picture in Amos under kickstart 3.1 as well.

Anyone got any ideas on what could be wrong here?
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: Oldsmobile_Mike on July 03, 2017, 02:54:15 PM
Just go clarify, are you saying this is an Amos problem or an interlace screenmode problem? If you open an interlaced screenmode in Workbench or any other program does it display correctly?
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: AmigaAbattoir on July 03, 2017, 03:03:24 PM
I'm trying to remember, but I think there was a weird issue with AMOS Pro and interlace screens under KS 3.1. Since AMOS banged the hardware pretty heavily, there are all sort of issue that pop up. I'm pretty sure that KS 3.0 worked fine, but once I upgraded to 3.1 interlace screens wouldn't display right.

I don't remember if there was a patch from Pietro Ghizzoni or if you had to flip back to Workbench then back to AMOS for it to show up right.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 04, 2017, 03:35:15 AM
Sorry about the uploaded screenshot, not much clarity in that at all. But just imagine an interlace screen with every second scan line missing.

Just to clarify, yes interlace is working correctly in WB and other programs etc. No problem with the hardware or OS. Just a problem within Amos opening interlace screens and only in Kickstarts/WB higher than 1.3 which really gets me.

I might go over and make sure all my libraries are updated for the Amos Pro I have. Just weird that both Amos Pro & Amos 1.3 both have the same issue and only with Kickstarts above 1.3

I will try the flip back to WB and back again and see if that makes a difference.

Interestingly enough even if I compile an Amos program to run straight from CLI or WB my game works but I still get the interlace every 2nd scan line missing issue/no working interlace screen.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: SamuraiCrow on July 04, 2017, 03:48:06 AM
Quote from: AmigaAbattoir;827884
I'm trying to remember, but I think there was a weird issue with AMOS Pro and interlace screens under KS 3.1. Since AMOS banged the hardware pretty heavily, there are all sort of issue that pop up. I'm pretty sure that KS 3.0 worked fine, but once I upgraded to 3.1 interlace screens wouldn't display right.

I don't remember if there was a patch from Pietro Ghizzoni or if you had to flip back to Workbench then back to AMOS for it to show up right.


http://eab.abime.net/showpost.php?p=1169208&postcount=24 (http://eab.abime.net/showpost.php?p=1169208&postcount=24) show's Toni Wilen's agreement with the situation.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 06, 2017, 03:04:15 AM
As soon as I get back to my machine, hopefully very soon, I will test this again on KS >1.3 & <3.1 and get back here with the results. Very interesting about the graphics.library change for KS3.1. If that is the problem I wonder if an Amos library could be rewritten and recompiled to operate with KS3.1?
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 06, 2017, 10:41:25 AM
I looked back into this tonight and sure enough KS 1.3,2.04,3.0 all work correctly but using KS3.1 it's indeed a no go. It would appear that the graphics.library is different and Amos Pro 2.0 and Amos 1.3 don't seem to open working interlace screens with Kickstart 3.1

Im wondering what my next move should be. Is there a way to modify an Amos library to work correctly with the graphics.library in KS3.1? I wouldn't have a clue how to do this and I wonder if there would be many people around these days that could get this to work?
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: Pat the Cat on July 06, 2017, 04:46:09 PM
Quote from: arongooch;827980
I looked back into this tonight and sure enough KS 1.3,2.04,3.0 all work correctly but using KS3.1 it's indeed a no go. It would appear that the graphics.library is different and Amos Pro 2.0 and Amos 1.3 don't seem to open working interlace screens with Kickstart 3.1

Im wondering what my next move should be. Is there a way to modify an Amos library to work correctly with the graphics.library in KS3.1? I wouldn't have a clue how to do this and I wonder if there would be many people around these days that could get this to work?

I would hazard a guess you will need to write a routine in a different development environment to hit the hardware politely? I don't know if Amos Pro actually lets you call external routines easily.

Daedalus recent release Aminet "ADFBlitzer" is written to call routines politely, but it's written in Blitz, not Amos. So while it's an open source demonstration, it's not exactly an ideal example for you to study.

That's maybe a way around the issue. Section 9.2.1 of the manual does state you can include machine code routines, but I have no idea how functional this is for your purpose.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: Oldsmobile_Mike on July 06, 2017, 04:57:38 PM
What about using LoadModule to pull in a different graphics.library?  Have you tried Cosmos's routines, for example?

Obviously this wouldn't help if you intend to distribute your application, but may help give a better understanding of the issue?
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: x303 on July 06, 2017, 11:49:22 PM
Quote from: arongooch;827980
Im wondering what my next move should be. Is there a way to modify an Amos library to work correctly with the graphics.library in KS3.1? I wouldn't have a clue how to do this and I wonder if there would be many people around these days that could get this to work?
Think I had that issue too back in the days. Which version of amos.library do you have ? If you have the standard one that comes with the disks (2.00), get that one replaced with a newer version (v2.30+).
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 07, 2017, 03:59:36 AM
Would be very cool to write something in machine code in Amos to set the interlace screen properly with the graphics.library if that is indeed the issue. Have no idea how to do that though hahaha.

That's definitely worth looking into and I think I will give that a go sometime using LoadModule to try out different graphics.libraries. Hopefully that will make it a bit clearer which graphics.library could be causing this issue. But yeah ultimately I want to eventually share this game ive written without having to play around with different libraries on other machines.

Does anyone know where I can find the updated Amos.library and possible other updated libraries >2.00? Ive seen there is a version 2.30 amos.library but cannot seem to hunt it down at this stage. I have all libraries versioned 2.00.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: Pat the Cat on July 08, 2017, 02:58:37 PM
Quote from: arongooch;828015
Would be very cool to write something in machine code in Amos to set the interlace screen properly with the graphics.library if that is indeed the issue. Have no idea how to do that though hahaha.
 

 I'm going out on a limb, but you might not even need to to write a machine code routine or follow Mike's suggestion (but that might help a lot if a newer graphics library or the older one works).
 
  The part that is broken is the software in Kickstart 3.1 that opens a graphics library. If you do that and then "hit the hardware" with a POKE, DOKE or maybe LOKE, hopefully the screen data your game produces is interpreted right and you are sorted.
 
 If Amos let's you do such things, then that would get the code going to real Amigas, should be OK on the emulator. Without writing external code. I suspect Amos might not permit that, as it's the sort of "kiddy wheel feature" which stops rummaging under the bonnet. I don't know either way.
 
 IIRC, the reason you can't do a copper list to write every single hardware registers is that the early hardware registers are protected from being written by a copper list. So an out of control copper has some kind of limit on it anyway. Again, IIRC, frames are displayed alternately, so you need to change the pointers to the data every screen update to do interlace on native Amiga chipsets.
 
 The tough part is you learning how to setup Amiga screens by using hardware registers. Opening a library correctly and using that is the preferred, most compatible method. Further details on both methods in Hardware reference manual and rom kernal manuals.
 
 It's nice to have different options by learning more, and it sucks that Amos just doesn't work in this respect. Amos Pro was released before 3.1 so I don't think it was tested with that.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: x303 on July 09, 2017, 01:33:01 PM
Quote from: arongooch;828015
Does anyone know where I can find the updated Amos.library and possible other updated libraries >2.00? Ive seen there is a version 2.30 amos.library but cannot seem to hunt it down at this stage. I have all libraries versioned 2.00.


You can try these versions.https://we.tl/im9iCUI7ww (https://we.tl/im9iCUI7ww)
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: psxphill on July 09, 2017, 08:14:57 PM
Quote from: Pat the Cat;828041
The part that is broken is the software in Kickstart 3.1 that opens a graphics library. If you do that and then "hit the hardware" with a POKE, DOKE or maybe LOKE, hopefully the screen data your game produces is interpreted right and you are sorted.


The part that sounds broken is Amos. It sounds like it's either doing something wrong when opening the screen or making assumptions about the copper list or memory layout.

The source code was released at one point, so it should be quite easy to work out what the problem is and fix it.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: x303 on July 09, 2017, 09:18:23 PM
Quote from: psxphill;828072
The part that sounds broken is Amos. It sounds like it's either doing something wrong when opening the screen or making assumptions about the copper list or memory layout.

The source code was released at one point, so it should be quite easy to work out what the problem is and fix it.


Why not check out the newer version(s) and see if it was already fixed  :confused:
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: Brian on July 10, 2017, 08:01:16 AM
Apparently it's been patched (http://amigacoding.com/index.php/AMOS:Versions) by Pietro Ghizzoni in AMOS.library 2.2 (https://groups.yahoo.com/neo/groups/amos-list/conversations/topics/757).

I was however unable to locate the file in question... hope you have better luck.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: psxphill on July 10, 2017, 08:24:17 AM
Quote from: Brian;828091
Apparently it's been patched (http://amigacoding.com/index.php/AMOS:Versions) by Pietro Ghizzoni in AMOS.library 2.2 (https://groups.yahoo.com/neo/groups/amos-list/conversations/topics/757).

I was however unable to locate the file in question... hope you have better luck.

There is a suggestion that the bug fix may have also made it into this

http://www.ultimateamiga.co.uk/index.php?topic=9701.0

You have to go through the pain of signing up to see that there are files attached.

Quote from: x303;828076
Why not check out the newer version(s) and see if it was already fixed  :confused:

The amount of effort to sign up to ultimateamiga and find it seemed harder than fixing the bug myself. They don't make it easy.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: fishy_fiz on July 10, 2017, 05:33:01 PM
Ive encountered this before.
I think it fixes itself after some updates, but unfortunately I cant recall exactly how I remedied it.
Also Ive only seen it occur under emulation. My a1200/ks3.1/40mhz '040 system never had the issue.

All I can say for sure is that AMOSPro does indeed work without this quirk (or can rather).

Also, do built in custom chipset based graphics commands even use graphics.lib? I think not.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: mark_k on July 12, 2017, 11:06:30 AM
You should (hopefully, maybe) be able to work around the problem by running the command
Lacer 1
from a CLI/Shell before running AMOS. I'd be interested to hear whether that works for you.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: arongooch on July 12, 2017, 02:02:34 PM
Huge HUGE!!! Thank you to X303 & Brian here for the updated library for Amos. Worked an absolute treat!! Im extremely happy and thankful for this and this most definitely fixed the issue I have been having.

I simply renamed the library to straight 'amos.library' and placed it in my Libs directory where the old amos.library was. Running Amos Pro and setting a quick hires + laced screen now opens a proper functioning interlaced screen and all is perfect.

Many many thanks to all the others for their input and ideas as well. Very much appreciated and great to see the Amiga community very much alive and very helpful. Thanks all.

:) :) :)
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: DownshiftDX on December 11, 2022, 04:19:11 AM
Sorry to bring this topic back from the dead but I am looking for this patch too. The original links are dead, Amos factory is a mess, and I can't find it anywhere.  :(  I am sure I had it at one time (along with a fix for dual playfield horizontal scrolling) but it looks like lost them some time ago.

If anybody has these fixes for Amos Pro and can post new links it would really help.

Thanks!
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: SamuraiCrow on December 11, 2022, 05:27:06 AM
https://github.com/AmiDARK/AmosProfessionalUnity-Official-Releases has an experimental AGA supporting build of Amos Unity.  The Assembly sources are at https://github.com/AmiDARK/AmosProfessionalUnity-SourceCode if it needs more fixes.

Note:  it doesn't work with existing extensions because it breaks compatibility with the past versions.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: DownshiftDX on December 11, 2022, 02:46:16 PM
I'm aware of AMOS Pro Unity but I thought it was abandoned? I don't need AGA support since my project is targeting ECS. And I use extensions so it is not an option.
Title: Re: Amos Interlace Screens not working under Kickstart 3.1
Post by: DownshiftDX on December 25, 2022, 11:38:01 PM
Following up for anybody in the future with this problem... I did locate a source for the updated AMOS Pro files from the following GitHub page: https://github.com/alain-treesong/amiga_coding_in_amos

Maybe the adf will remain around on Dropbox longer than some of the other places.

https://www.dropbox.com/s/nch9p4fj59lw4k4/AMOSPro_Community_2020_1.adf?dl=0 (https://www.dropbox.com/s/nch9p4fj59lw4k4/AMOSPro_Community_2020_1.adf?dl=0)