English Amiga Board


Go Back   English Amiga Board > Coders > Coders. Language > Coders. AMOS

 
 
Thread Tools
Old 17 June 2021, 19:12   #1
Arne
Hobby/Indie gamedev

Arne's Avatar
 
Join Date: Jan 2015
Location: Southern Sweden
Posts: 44
Problem keeping different banks in memory [Solved]

I'm doing a project in AMOS Pro 2.0 where I need to keep four banks of different types in memory at the same time, e.g.
Code:
 Load "Sprites.Abk",1
 Load "Icons.Abk",2
 Load "Samples.Abk",5
 Load "ModTrack.Abk",6
But try as I might, I'm left with only one or sometimes two banks in memory after a List Bank (samples seems to stay put... sometimes). The sprite bank tends to clear out the icon bank out and vice versa. I tried using Bank Swap to move it to the side, with the same result. The banks were saved with the proper IDs. Omitting or changing the IDs doesn't solve the problem. The manual states you can have multiple banks in memory. My sample bank is 300K but I have 2mb chip so I don't think that's the issue. The graphics banks are both small.

Looking at 14.E.02, Memory Bank Headers, I see Address_Of_Next_Bank is a field for a linked list. Maybe since I created my banks using separate utilities of mine there's no coherent chain? Am I really supposed to poke around here, or is there a utility for combining multiple .Abk files? I suppose I can just combine my grabbing utilities and save out a Mega.Abk... but I'm thinking I must be missing something as being able to load banks separately would be a convenience.


Edit: SOLVED. Banks must be saved with a number i.e. Save "Name.Abk",1 or they can't be loaded separately. Saving with just Save "Name.Abk" will save all banks in memory and link them up, likely causing the rejection problems I was having.

Last edited by Arne; 17 June 2021 at 20:57. Reason: Solved
Arne is offline  
Old 17 June 2021, 19:23   #2
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 46
Posts: 1,737
Do you use any extensions other than the ones thar come with AmosPro? AMCAF is quite helpful for some issues as the Amos Music extension has bugs in it that also apply to the Sam Play command. Also, a multi bank file is called a .SBK file but is seldom used.
Samurai_Crow is offline  
Old 17 June 2021, 19:44   #3
Arne
Hobby/Indie gamedev

Arne's Avatar
 
Join Date: Jan 2015
Location: Southern Sweden
Posts: 44
No extra extensions that I know of. I just installed AMOS Pro 2.0 and the Compiler disks the other day, so it's fresh. I don't know what AMCAF is and there doesn't seem to be any info on what it's for (Bugfix? More features?). I'm going to pretend that it stands for Close Assault Factor as I used to play* SPACE MARINE.
* Just paint, badly, a small fraction.
Arne is offline  
Old 17 June 2021, 19:49   #4
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 46
Posts: 1,737
Amos Miscellaneous Commands And Functions is what AMCAF stands for. The current version is 1.5 beta but the last documentation for it was for version 1.4 on Aminet.net .
Samurai_Crow is offline  
Old 17 June 2021, 20:02   #5
Arne
Hobby/Indie gamedev

Arne's Avatar
 
Join Date: Jan 2015
Location: Southern Sweden
Posts: 44
I see. It's a new thing? I haven't kept up with the recent developments but I heard that the sourcecode was made available or something.

I'm thinking my problem might be that I saved my banks from Direct mode as I do a fair bit of work from there. Now, the Direct mode button saves out an .Abk but perhaps it's an .Sbk in disguise, which conceivably could be more strict with the bank linked list, thus ejecting my other banks upon load.
Arne is offline  
Old 17 June 2021, 20:22   #6
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 46
Posts: 1,737
AmosPro was always able to add commands by way of extensions. http://aminet.net/package/dev/amos/AMCAF150Final is a link to the AMCAF extension install package. http://aminet.net/package/dev/amos/AMCAFExt140Exa is the example code using it. http://aminet.net/package/dev/amos/Amcaf-PDF has the PDF version of the AMCAF manual.

The new version of AmosPro based on the released sources is going to be called AmosPro Unity. Hopefully there will be some progress listed at http://amos-professional-aga.frederic-cordier.fr/ but the webpage got hacked last month.
Samurai_Crow is offline  
Old 17 June 2021, 20:53   #7
Arne
Hobby/Indie gamedev

Arne's Avatar
 
Join Date: Jan 2015
Location: Southern Sweden
Posts: 44
Thanks, I'll take a look at it. I do use Sam Play so maybe I'll need the updated Music thingy.

As for my problem, it seems saving .Abk using the Direct mode button, i.e.
Save Fsel('*.Abk')
does save all banks in one package as that's the default behavior when no number is given. This sets up a linked list which causes my problem.

So, I tried
Code:
Save "Spr.Abk",1
Save "Ico.Abk",2
Save "Sam.Abk",5
Erase All
Load "Spr.Abk",1
Load "Ico.Abk",2
Load "Sam.Abk",5
ListBank

And they're all there now. Problem solved! This behavior is detailed on 05.09.4, Memory Banks and I didn't RTFM.
Arne is offline  
Old 17 June 2021, 21:55   #8
Samurai_Crow
Total Chaos forever!

Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 46
Posts: 1,737
I'm glad you figured it out. The Pt Sam Play and Pt Play commands are really much better than the regular Sam Play and Track Play commands though. AMCAF's Imploder Load command will allow individually compressed banks to load after being compressed with the File Imploder utility (fimp) found at http://aminet.net/package/util/pack/imploder-4.0.

There are numerous uses of AMCAF besides what I've told you as well. Look at the manual and you'll see what I mean.
Samurai_Crow 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
AmiAutoUpdater - Keeping Your Programs Up-to-date tygre News 3 02 November 2018 20:57
2 Icon/object banks? volvo_0ne Coders. AMOS 6 24 April 2018 10:06
Keeping a zipstick stable Treguard support.Hardware 2 31 July 2015 19:03
YouTube - Keeping the Amiga alive amiga_Forever Amiga scene 2 03 February 2013 13:53

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 06:11.


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