![]() |
![]() |
#1 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
![]()
Hi pals!
I have another problem with the AMOS Compiler. I've made a program up to 230k long, and when I start to compile, the red progress bar freeze, and nothing more happen. Sometimes really the Amiga crashes (emulated), sometimes the emulator crashes (WinUAE). During last days, I start to investigate for the possible cause: it was of no use to increase variable memory with 'Set Buffer' command, or to eliminate some matrix there are unused... Maybe are the matrix with double column [i.e. Dim FLP(31,3) or FK#(10,3)]? But some of these I need to use, otherwise I would be forced to do it all over again, and I don't want to do that... Because I'm working for this project 1 year, more or less. Someone help me ![]() ![]() |
![]() |
![]() |
#2 |
Registered User
Join Date: Nov 2004
Location: Germany
Posts: 629
|
Hi.
If you have the banks saved with the program, try compiling it without them. (erase all banks, save as new prog and then compile it) |
![]() |
![]() |
#3 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
Unfortunately I try this yet, and the result is the same...
Another attempt was to change the WinUAE configuration by increase the Chip RAM amount to 8MB, with or without Fast RAM, but nothing more better. But I don't give up! ![]() |
![]() |
![]() |
#4 |
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,224
|
I think that the compiler uses relative offsets everywhere. That limits the size of the code to not more than 64k.
|
![]() |
![]() |
#5 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
What's the Size of backbone - its huge.
Go into direct mode and type erase all then save your program. Don't run it again. Then start the compiler for from Amos not separatly etc. |
![]() |
![]() |
#6 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
But with past projects, larger than 300KB, there wasn't problems. Maybe I use too much variables or matrix, nonetheless the 'Set Buffer' command? I don't know because there's no given error messages.
|
![]() |
![]() |
#7 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
|
![]() |
![]() |
#8 |
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,224
|
At one point somebody went through the limitations of the AmosPro compiler in Assembly and documented the limitations. I can't find the post but I think it was on ultimateAmiga.com somewhere.
|
![]() |
![]() |
#9 |
Registered User
Join Date: Feb 2017
Location: Oslo
Posts: 91
|
I had a problem with compiling too, once. In my case the problem was the following: I had a procedure which would return either True or False, and it ended like this:
Code:
... Proc LOSETURN End Proc[True] ![]() The symptoms in my case were not exactly the same as those you're experiencing (I got a "Software Failure" dialog in AMOS), so it's probably not the exact same issue. But there's hope you can get to the bottom of it using the same approach as I did, which was (drumroll): to copy parts of the program into a new file until compiling failed. It was a program of substantial size in my case too, if that's any consolation ![]() Just want to mention another compiler-related problem I had in the same project which might be relevant to you as well: The compiled program occasionally displayed some strange behaviour which I could never reproduce in the tokienised version. After battling with that for some days I found eventually that it helped to switch on the compiler flag "long forward jumps (for very large programs)". The program is currently 400k without banks, at that time it was probably somewhere around 300k. So this means you will probably not be warned by the compiler if your program starts to qualify as "very long". |
![]() |
![]() |
#10 |
Registered User
Join Date: Sep 2019
Location: Sydney
Posts: 358
|
|
![]() |
![]() |
#11 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
What do you mean? There is never a complier error with backbone?
Are you Alastair Murray? In which case just ignore the above ![]() ![]() @OP the only other suggestion is you upload the code - of course this might not be a viable solution for you? Last edited by Retro1234; 05 December 2023 at 23:43. |
![]() |
![]() |
#12 | |
Registered User
Join Date: Sep 2019
Location: Sydney
Posts: 358
|
Quote:
Yes, and what I meant is that although I don't recall compiler errors as such, I do remember that the program reached a point where I couldn't make any additions without seemingly random bugs popping up all over the place. I didn't know why at the time, but some kind of relative offset issue with the Amos compiler would make sense. |
|
![]() |
![]() |
#13 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
|
![]() |
![]() |
#14 |
A3000-Fan
Join Date: Sep 2008
Location: Germany
Posts: 322
|
Isn’t the source of the compiler available? I’m in no position to do anything with it, but isn’t there anyone with enough knowledge to fix some of the problems?
|
![]() |
![]() |
#15 |
Global Moderator
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,517
|
Seems like it is: https://github.com/AOZ-Studio/AMOS-P...ional-Official
|
![]() |
![]() |
#16 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
![]()
Hi everyone
![]() I finally solved the age-old compilation problem thanks to intuition, remembering a similar situation that happened in the past. The bug during the compilation of the listing was given by the listing itself: perhaps it has already happened to some of you, who, when typing commands, perhaps in a hurry, press some out of place key or a combination of keys, which remains then trace in the listing. The AMOS Compiler unfortunately detects these extraneous characters but does not provide a specific error message, so it freezes or crashes. I discovered this problem by saving the listing in ASCII format and examining it line by line, character by character. During this scan, at a certain point, among all the regular characters, I came across an invisible character bearing the code CHR$(0): it was enough to go back to the original listing, delete this character at the point where I had identified it and proceed with the normal compilation, which obviously was successful, finally, to my great satisfaction and relief. It was therefore not a problem related to size, because I had already set the "long forward jumps (for very large programs)" flag in AMOS Compiler. I hope that this experience will help other programmer friends like me and you. I thank everyone who lent me a hand on the forum to find a solution, and obviously English Amiga Board! ![]() ![]() ![]() |
![]() |
![]() |
#17 |
Registered User
Join Date: Feb 2017
Location: Oslo
Posts: 91
|
Hard debugging badge earned
![]() Wonder if the retokeniser-option in the user menu could have been used ![]() |
![]() |
![]() |
#18 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
Doesn't Test detect it?
|
![]() |
![]() |
#19 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
Unfortunately, the test did not show any error: the program runs brilliantly under AMOS Pro... By the way, I don't know, maybe I will use the re-tokeniser option, perhaps it'll resolve some of this issues..
|
![]() |
![]() |
#20 |
Registered User
Join Date: Jun 2022
Location: Italy
Posts: 10
|
![]()
Everything seemed solved, but after the ephemeral success, when I implemented the famous listing by adding other lines of code, there was no longer any way to compile it, AMOS Compiler continues to crash or not complete the compilation.
I have made hundreds of failed attempts, hundreds of different combinations to overcome the problem, but nothing seems to work anymore... I'm desperate, if anyone has a solution let me know. Maybe it's one of the attempts I've already made, or maybe the final solution. Bye.. ![]() ![]() ![]() ![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
AMOS Compiler problem | Louk | Coders. General | 4 | 19 September 2020 21:30 |
opt. AMOS Pro Compiler Settings? | Cylon | Coders. AMOS | 11 | 04 April 2016 22:47 |
Amos Compiler Difficulties | amigapd | support.Apps | 7 | 07 April 2012 15:52 |
Request AMOS Compiler manual (Scans) | MadAngus | request.Other | 4 | 12 December 2011 11:15 |
Amos compiler | nnever2000 | request.Apps | 3 | 06 September 2006 19:13 |
|
|