kategoria: AMOS
[#1] Out of memory przy pliku wykonywalnym
zaczynam miec dosc, naprawde.
tak wyglada moj plik. jedna animka. nic wiecej. po skompilowaniu do pliku exe, wywala mi 'out of memory' przy probie uruchomienia programu. matko boska, nie przypuszczalem, ze skompilowanie pliku dla amosa to taka mordega...
[#2] Re: Out of memory przy pliku wykonywalnym

@aszu, post #1

Nie znam sie na Amosie, ale jezeli on laduje cala animacje do chipu to mozesz miec za malo chipu. Sprobuj z jakas 2 klatkowa bardzo krotka (rozmiar w bajtach). Do tego jezeli exek z animka tez laduje sie do chipu, to juz wtedy moze byc za malo chipu.
[#3] Re: Out of memory przy pliku wykonywalnym

@aszu, post #1

1. Jaką wielkość mają pliki?:
01.abk
mod.xball
animacja1.iff

2. Ile pamięci CHIP (i ew. FAST) posiada AMIGA?
[#4] Re: Out of memory przy pliku wykonywalnym

@Don_Adan, post #2

byc moze. tylko kurcze nie rozumiem dlaczego z poziomu edytora dziala a po skompilowaniu juz nie...
[#5] Re: Out of memory przy pliku wykonywalnym

@aszu, post #4

No to tak się (nie)ciekawie składa, że mam podobny problem. Z jednej procedury do drugiej pod edytorem przekazuje mi wartości ujemne (poprawnie, bo tak ma być), a po skompilowaniu te same, ale już dodatnie. No coś mnie trafia.

[Update]
Tak mi się teraz w oczy rzuciło... Na skrinszocie pamięć FAST masz totalnie zapchaną. Wpisz na początku programu Erase All i daj znać, czy coś zmienia.

Ostatnia aktualizacja: 27.03.2016 22:33:25 przez Umpal
[#6] Re: Out of memory przy pliku wykonywalnym

@aszu, post #1

jesteś pewien, że rozdzielczość którą ustawiłeś w listingu pokrywa się z tą w której jest animacja?
[#7] Re: Out of memory przy pliku wykonywalnym

@aszu, post #4

Byc moze edytor i animacja potrzebuje mniej pamieci, niz amosowy plik wykonywalny i animacja. W takim amosowym pliku wykonywalnym jest zawsze duzo smieci, czyli rzeczy ktore nigdy nie beda wywolywane w danym programie. Pod tym wzgledem amos przebija C ze 3 albo i 4 razy, jesli chodzi o prosty program, przy wiekszych programach to juzjest bardziej wyrownane.
[#8] Re: Out of memory przy pliku wykonywalnym

@Don_Adan, post #7

odnosnie do pytan,

probowalem z erase all, nic nie daje.
nie wiem dlaczego pokazuje tylko taka pamiec w amosie, ale zawsze tak mam po uruchomieniu.
mod to malutki czipek, sprajty to zaledwie 3 rozne a animka to kilka klatek w bodajze 4 kolorach.

wczesniej uzywalem iff anim i wszystko kompilowalo sie bez problemu, jednak chcialem wszystko skompilowac w jeden plik, stad ta zmiana sposobu wyswietlania anmiacji. ewidentnie tu lezy problem...
[#9] Re: Out of memory przy pliku wykonywalnym

@aszu, post #8

Nie wiem, czy ma to znaczenie, ale w Twoim programie zapominasz zamknąć plik z animacją poleceniem CLOSE. Wpisz CLOSE 1.

Dawno nie robiłem nic w AMOSie, ale z tego co pamiętam kompilator ma wiele opcji. Może napisz, z jakimi opcjami kompilujesz.
[#10] Re: Out of memory przy pliku wykonywalnym

@aszu, post #8

Ile pamięci Chip ma Twoja Amiga?
[#11] Re: Out of memory przy pliku wykonywalnym

@Hexmage960, post #9

to jakis pomysl, moze faktycznie tu tkwi blad. pisze pod winuae z chipem na 2mb i okolo 32 fastu, wiec raczej nie o to chodzi..., jak bede mial szanse, sprobuje z tym close 1 :)
[#12] Re: Out of memory przy pliku wykonywalnym

@aszu, post #8

Ta pamięć to ilość bufora na zmienne.
[#13] Re: Out of memory przy pliku wykonywalnym

@cholok, post #12

czyli to kwestia odpowiedniego ustawienia set buffer?
[#14] Re: Out of memory przy pliku wykonywalnym

@aszu, post #1

sprobuj sobie to jakos zdebugowac po kazdej operacji wczytujacej pliki wyswietlaj dowolna ilosc pamieci i requester, wtedy bedziesz wiedzial, w ktorym miejscu programowi brakuje pamieci :)
[#15] Re: Out of memory przy pliku wykonywalnym

@aszu, post #1

A możesz mi zrobić paczuszkę z amosem i tym projekcikiem, to bym sprawdził dzisiaj wieczorkiem. Albo podaj mi wersję amosa i kompilatora, to wtedy tylko projekt mi prześlij na email w profilu.
[#16] Re: Out of memory przy pliku wykonywalnym

@asman, post #15

asmanie juz kiedys mi pomogles, email gdzies mam:) jak wroce do domu to postaram sie wyslac paczuszke:)
[#17] Re: Out of memory przy pliku wykonywalnym

@aszu, post #8

Aszu, właśnie sprawdziłem i AMOS nie pokazuje poprawnie paska zajętości FAST-u, jeśli jest go więcej niż 8 MB. Może to tylko kosmetyczny problem, ale sprawdź na wszelki twój program z pamięcią nie więcej niż 8MB.
[#18] Re: Out of memory przy pliku wykonywalnym

@Umpal, post #17

wydaje sie ze problem lezal w ustawieniach kompilatora. po tym jak zmienilem je na takie jak mial asman, plik ladnie sie skompilowal. teraz kolejne pytanie. otoz ten plik wynikowy wciaz wola o zewnetrzny plik .abk. w jaki sposob moge go wkompilowac w jeden plik wykonywalny, ktory nie bedzie juz zalezny od zadnych zewnetrznych plikow?
[#19] Re: Out of memory przy pliku wykonywalnym

@aszu, post #18

Przypomina mi się coś. Ten problem występował jak się chciało spakować exeka do mniejszych rozmiarów automatycznie albo zlinkować na stałe amos.library do exeka albo nie dodawać komunikatów. Jedna z tych 3 rzeczy.
[#20] Re: Out of memory przy pliku wykonywalnym

@aszu, post #18

Zasiadłem wczoraj wieczorem by rozwiązać ten problem i chyba wiem jak to można zrobić.
Musisz przejść do trybu Direct (ESC w jak jesteś w edytorze). I tu masz dwie możliwości.
Albo klikasz 8 ikonę od lewej (symbol trójkąt jak w damskim WC włażący do procesora) i wtedy pojawia Ci się na ekranie Load Fsel$('*.Abk') i dajesz enter. Dalej to już wybierasz plik. I jak zapiszesz źródło to masz razem z nim bank. Albo z palca wpisujesz właśnie takiego 'Load 01.Abk'. Można oczywiście dodać numer Banku i wtedy właduje pod ten slot. Potem trzeba sprawdzić kompilatorem (ja tego nie sprawdzałem już) czy to wystarczy by rozwiązać Twój problem.
Daj znak jak byś miał jeszcze inne problemy.
Aha z trybu Direct przejdziesz do Edytora wciskając jeszcze raz klawisz ESC.
[#21] Re: Out of memory przy pliku wykonywalnym

@asman, post #20

ok, posuwam sie powoli do przodu.
z cala pewnoscia moge powiedziec, ze poczatkowe problemy wynikaly ze zlych ustawien kompilatora, natomiast wydaje sie, ze problem ladowania .abk do glownego pliku faktycznie latwo rozwiazuje sie poprzez Load "filename",bank number
[#22] Re: Out of memory przy pliku wykonywalnym

@aszu, post #21

tak, po to sa wlasnie banki w amosie :> mimo wszystko lepiej doczytywac plik wtedy kiedy jest potrzebny, dzieki czemu zmniejszamy wymagania w ilosci posiadanej pamieci przez uzytkownika
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem