kategoria: AMOS
[#511] Re: Tworzenie dem

@Don_Adan, post #509

Poradziłem sobie, chociaż nie wiem dlaczego tak jest. Zrobiłem to tak.
Odpaliłem nowy kod w Amosie i skopiowałem cały tekst. Stworzyłem nowy plik, wkleiłem kod i zapisałem do nowego pliku, ale w RAM. Wyszedłem z Amosa. Wszedłem jeszcze raz w Amos, odpaliłem kompilator (inaczej u mnie się nie da), skompilowałem do całkiem nowego pliku. Wszystko robione pod 68060 FASTEST POSSIBLE/JIT. Działa. Przeszedłem do 68000 z cycle exact/more compatible. Działa. Przeniosłem na adf.

https://szybkiplik.pl/n5hYmiT5v5

Działa. I o co tu chodzi? Plik .amos był uszkodzony lub źle zapisany?

@forge
Faktycznie restart poziomu wywala błąd, ale to akurat opanuję, tylko w wolnej chwili zajrzę w kod i sprawdzę, co tam siedzi nie tam gdzie trzeba.
Chyba muszę na nowo wkleić kod, wykasować stary plik .amos, który jest chyba jakiś uszkodzony i stworzyć nowy. Raz mi się Amos odpalił kiedyś z jakimiś krzaczkami na ekranie. Może czas go usunąć i wgrać na nowo

Ostatnia aktualizacja: 09.02.2022 09:03:23 przez tukinem
[#512] Re: Tworzenie dem

@tukinem, post #511

No i gitara. Cieszę się, że udało Ci się rozwiązać problem (z nieocenioną pomocą Kolegów).

Mam pytanie: kompilujesz grę dołączając AMOS.library, czy też wczytujesz tę bibliotekę oddzielnie (jest do tego opcja w kompilatorze AMOSa)? Pytam z ciekawości.
[#513] Re: Tworzenie dem

@Hexmage960, post #512

Gdybym nie miał amos.library, to nie skompilowałbym nawet kodu. Mam ją zapisaną w LIBS w systemie. I przynajmniej gdyby ona się skrzaczyła, to mam kilka konfiguracji w winuae, na każdej mam w systemie, więc jest to jakby kopia zapasowa
[#514] Re: Tworzenie dem

@tukinem, post #513

Gdybym nie miał amos.library, to nie skompilowałbym nawet kodu. Mam ją zapisaną w LIBS w systemie.

Jasne, ale mi chodzi o to, że grę można skompilować w taki sposób, by u odbiorcy końcowego nie wymagała AMOS.library - wtedy ta biblioteka jest załączana z kodem wykonywalnym.

Gdy jednak tej opcji w kompilatorze nie zaznaczymy, również odbiorca końcowy (gracz) musi mieć tę bibliotekę w LIBS.

Pytałem tylko jaką opcję w kompilatorze wybrałeś.

Ostatnia aktualizacja: 09.02.2022 10:12:46 przez Hexmage960
[#515] Re: Tworzenie dem

@Hexmage960, post #514

A to ja mam zaznaczone. Spokojnie

Poprawiłem teraz błąd restartu poziomu. Skompilowałem i znowu error 80000003. Musiałem na nowo zapisać sam kod do pliku tekstowego, wczytać go do pustego pliku w Amosie, zapisać do RAM jako nowy plik i dopiero ruszyło. Co tu jest nie halo? Kompilacja pod RAM działa, a w drawerze gry nie. A zawsze działało...
[#516] Re: Tworzenie dem

@tukinem, post #515

A to ja mam zaznaczone. Spokojnie

Ja pytałem o tę opcję tylko z ciekawości, nie w kontekście problemu, o którym była dyskusja.
[#517] Re: Tworzenie dem

@Hexmage960, post #516

Bez tej opcji zawsze miałbym błąd podczas kompilacji.

Co do problemu tutaj... wykasowałem wszystkie pliki .amos oraz .exe. Wgrałem na nowo kod ASCII z pliku .txt. Stworzyłem plik soko.amos w drawerze z grą. Skompilowałem. Tym razem wszystko robiłem pod 040+JIT. Działa.
https://szybkiplik.pl/UDSYD6M744
Tu jest ADF z gotowcem. Wydaje mi się, że przy działaniu na Amosie pod 060 wkradł się błąd podczas zapisu pliku .amos. Wiem, że najlepiej byłoby pracować pod zwykłą Amigą, ale na procku 68000 to jest masochizm szeroki uśmiech jeszcze Amos jak Amos, ale PPaint działa okropnie prędzej pod emulatorem ktoś by skrobnął tą grę w ASM niż na zwykłej Amidze z 68000 w Amosie

Wniosek z tego problemu: lepiej olać konfig 060 pod emulatorem na dogrywanej bibliotece 68060.library, skoro nie ma różnicy w szybkości działania między 040. Lepiej pracować na systemowej bibliotece 68040.library. Przynajmniej pod winuae ok, racja

Ostatnia aktualizacja: 09.02.2022 10:44:22 przez tukinem
[#518] Re: Tworzenie dem

@tukinem, post #517

Wydaje mi się, że przy działaniu na Amosie pod 060 wkradł się błąd podczas zapisu pliku .amos.

Nie wiem jak AMOS działa na 68060, nigdy nie testowałem.

Wiem, że najlepiej byłoby pracować pod zwykłą Amigą, ale na procku 68000 to jest masochizm szeroki uśmiech jeszcze Amos jak Amos, ale PPaint działa okropnie

Jeżeli masz twardy dysk w Amidze, to w AMOSie da się pracować wygodnie.

Co do programu malarskiego, to jakiej wersji PPaint używasz? Może warto spróbować DPainta?

Ostatnia aktualizacja: 09.02.2022 10:47:06 przez Hexmage960
[#519] Re: Tworzenie dem

@Hexmage960, post #518

PPaint 7.1 wersja z 1997 roku z dodatkiem obsługi ikon. Tworzyłem w nim sobie ikony do WB oraz do gier. Przyzwyczaiłem się do niej. Daję sobie radę z obsługą palet, wczytywaniem plików .PNG, które tworzę pod Paintem w Windows, gdy chcę zrzucić jakiś obrazek. Deluxe Paint jakoś mi nie podchodził z początku, chociaż wiem że to klasyk warty uwagi. Spróbuję go na zwykłej Amidze jak będzie się sprawować.
[#520] Re: Tworzenie dem

@tukinem, post #517

obecnie mam WINUAE i ustawiony 68020 plus 8 MB fast RAMz zaznaczonym JIT'em i Fastest Possible i AMOS smiga jak p******ino ok, racja

Jak chce sprawdzic jak to mniej wiecej dziala w realu, to przelaczam na 68000 bez Fastest Possible.

Tak wiec, korzystajac z AMOSA nie widze kompletnie sensu emulowania 68030 nawet a co dopiero szybciej... a krzaki na ekranie AMOSA zwiastuja zwis predzej czy pozniej i jest to wina programisty na 99%.
[#521] Re: Tworzenie dem

@tukinem, post #511

Działa. I o co tu chodzi? Plik .amos był uszkodzony lub źle zapisany?


Porównywałeś sumy kontrolne plików, przed i po kompilacji?
[#522] Re: Tworzenie dem

@Norbert, post #521

Amos mi źle zapisuje plik .amos. To jest pewne. Teraz znowu dałem kilka poprawek, bo źle wczytywało dane z pliku highscore oraz potem musiałem zmieć komendę PRINT na TEXT, bo mi się przez to robił biały kwadracik na ekranie. Mniejsza z tym.

Przy kolejnym zapisywaniu pliku .amos i kompilacji znowu miałem ten sam problem. Musiałem znowu zapisać kod ASCII jako plik tekstowy. Potem restart Amosa, wczytanie ASCII, zapis do RAM i dopiero kompilacja. Wniosek jeden. Amos mi zapisuje z błędami plik .amos. Dla rozwiania wątpliwości. Wszystko robiłem pod 68000, tyle że fastest possible. Albo mam coś z dyskiem zewnętrznym i ten folder "SOKOBAN" robi takie problemy, bo odkąd mu narobiłem 53 pliki z danymi rekordów poziomów, to zaczął stawiać problemy. Pod innymi grami nie mam tego problemu, a wiecie, że Sokoban nie jest jednym z mojej tworów. Jak już skompiluję plik, to mogę go kopiować i robić z nim co zechcę. Sam zapis pliku .amos stanowi problem. A kod nie jest aż tak długi. Mieści się w buforze domyślnym Amosa. W weekend z ciekawości zgram wszystko na Amigę i zobaczę jak tam będzie się sprawować. Może dysk, na którym mam Sokobana fizycznie płata figle.
[#523] Re: Tworzenie dem

@tukinem, post #511

Nie czytałem całego wątku ale problem o którym piszesz u mnie dość często występuję gdy korzysta się z zarezerwowanych banków (reserve as work) gdy wykonuje się na nich operacje i np. wyjedzie się za ten bank (to dość częste jak się testuje coś o czym nie ma się pojęcia jak zadziała) wtedy dzieją się cuda przy kompilowaniu, ale najczęściej wywala całego Amos. Ja radzę sobie tak że wchodzę ESC do konsoli i piszę komendę Erase All, potem taką niepewną źródłowkę zapisuję pod inna nazwą.
W sumie jeżeli chodzi o AmosPro to najlepiej korzystać z wersji która była w AMOS for Windows, należy jedynie przekopiować odpowiednie katalogi jak komuś nie odpowiada Aros68k. Tam chyba są wszystkie najważniejsze extension i wszystkie biblioteki w najnowszych wersjach.

Ale jak piszę nie czytałem całego wątku... może ten trick się komuś przyda.
[#524] Re: Tworzenie dem

@tukinem, post #522

Jesli to jest problem tego typu jak tutaj opisany:

link

To jest to jakis blad w AMOS-ie, ktory generuje czasami zle exeki (nie dzialajace na 68000). Od czego to zalezy to nie wiem. Ale wystarczy zaaplikowac fix Rossa, zeby program zadzialal na 68000.
[#525] Re: Tworzenie dem

@jimiche, post #523

Jak sie skompiluje amosowy program wraz z bankami pamieci a ktorys z bankow ma nieparzysta dlugosc,
to tez sie wywala tylko nie pamietam czy tylko na 68000 czy na innych tez.
W kazdym razie przypomnialo mi sie ze kiedys cos takiego mialem
[#526] Re: Tworzenie dem

@selur, post #525

Tak wielkość banku musi być parzysta. Ten błąd jest też opisany w jednym z przykładów amcaf'a.
[#527] Re: Tworzenie dem

@selur, post #525

Wg książki "Assembler dla początkujących", ten problem dotyczy 68000. Od 68020 wzwyż na pewno nie. Nie wiem jak 68010...
[#528] Re: Tworzenie dem

@karolb, post #527

Właśnie wszystko co kompilowałem to pod 68020 nie ma problemu. A pod 68000 muszę ręcznie wczytywać kod ASCII i zapisać do świeżego pliku. Tyle że nie ma tam w kodzie Reserve As Work. Chyba że ładowane pliki z danymi. One mają nieparzystą ilość. Tyle że błąd wywala się przy starcie a pliki są ładowane dopiero po przejściu poziomu lub przejściu do highscore. Tak to one nie są ruszane. Chyba. Spróbuję bez tych plików uruchomić grę. Może na starcie sprawdza czy plik ma parzystą ilość znaków. No ale to bez sensu. Przecież można stworzyć imie$="ALA", zapisać do pliku a później wczytać do pamięci. Nieparzysta ilość znaków tu nie spowoduje błędu.

Ostatnia aktualizacja: 09.02.2022 21:24:00 przez tukinem
[#529] Re: Tworzenie dem

@tukinem, post #528

Jak chcesz konkretnie wiedziec gdzie jest problem to zrob tak. Skopiuj taki wywalajacy sie na 68000 exek do katalogu, gdzie masz WB dla tego slave'a zainstalowany:

link

Wybierz wersje, ktora 1MB albo 4MB fastu.
Ustaw pelna emulacje 68000 w WinUAE.
Uruchom ten slave, czyli uruchomi sie WB 3.1.
Uruchom wtedy swoj program pod tym WB.
Jak sie wyburaczy, to bedziesz mial requester. Wybierz zapisz wszystko i wyjdz.
Powinienes miec w katalogu C: bodaj pelny zrzut.
Pokaz tutaj plik tekstowy czyli to sie bodaj log nazywa.
[#530] Re: Tworzenie dem

@jimiche, post #526

Znalazłem ten opis:

AMCAF Extension V1.40 Manual Bugs
This is a small list of AMOS bugs you must be aware of:

1. The AMOS string management is not bugfree. Be especially careful with AMAL programs!

2. The AMOS Default routines are not called: If you load AMOS and then start a program, the extension default routines are not called. I.e if a music is running from the previous call, it will not be stopped. Conclusion: - Call any accessory (e.g the help-accessory) once.

3. Programs cannot be compiled: The compiler prints out the error 'Not an AMOS program'. If you use memory banks, all bank lengths must be even. If this is not the case, the programs do work from the editor but not compiled. Conclusion: - Extend odd banks by one byte using Bank Stretch.

4. A program that uses data lines does not work correctly when compiled: There must not be any comments after a data line. Data commands must be completely alone on a line. Otherwise the compiler will interpret these comments as data. Conclusion: - Write the comments into a separate line.

Even worse: a friend of mine was faced to a guru when trying to compile a program that uses approx. 500 KB of data lines. As for now, I found no solution for this problem.
[#531] Re: Tworzenie dem

@karolb, post #530

Piszę z pamięci (mózgowej a ta mi szwankuje) ale problem z nieparzystą wielkością banku opisany jest w przykładzie anime zoom czy coś takiego.
[#532] Re: Tworzenie dem

@karolb, post #530

No ja mam Amosa z Amcafem, ale komend Amcafa tam nie użyłem jeszcze. Za to mam komendy AMALa zawarte jako animacja sprajta. Chyba zbyt "rozbudowałem" tą grę

A tak swoją drogą to już wcześniej kompilowałem tą grę z komendą AMALa i było w porządku. Wszystko zaczęło się chranić jak zacząłem kompilację z Highscore oraz z migającymi literami startowymi po wyborze kolorów amigowych
[#533] Re: Tworzenie dem

@tukinem, post #532

A Compilator jako extension masz podpięte w AmosPro (choć może to nie będzie mieć znaczenia). Bo przy testowaniu zawsze możesz sobie kompilować w samym Amosie.
[#534] Re: Tworzenie dem

@Don_Adan, post #529

Zrobiłem tak jak napisałeś, chociaż trochę to było pogmatwane

Uruchomiłem zainstalowany Workbench pod WHDLoad, odpaliłem "wadliwy" plik i wyskoczyło okienko:

Exception "Adress Error ($F00C)
PC = $9312B2 (Task ` AMOS`, `Prg soko-new.exe` Off $832, ExpMem $BC2B2)
Read from $9315BF (ExpMem $BC5BF)


i 3 opcje do wyboru:
QUIT RESTART Make CoreDump
[#535] Re: Tworzenie dem

@tukinem, post #534

8000 0003 na 000 i 010 zawsze oznacza odczyt/zapis z nieparzystego bajtu...

masz dokladnie podane, ze chodzi o odczyt i nawet adres: Read from $9315BF (ExpMem $BC5BF)

moze w jakis warunkach Twoj program zaczyna wlasnie to robic?

w winuae mozesz sprawdzic (np po zrzuceniu pamieci) co bylo pod tym adresem to Cie moze nakierowac w ktorym miejscu dochodzi do bledu

odczyt/zapis nieparzystych bajtow dotyczy odczytow wordow (2 bajty) i longow (4 bajty). bajtow natomiast to nie dotyczy :)
[#536] Re: Tworzenie dem

@juen, post #535

Nie dam rady sobie z tym. Tak jak pisałem wczytując kod ASCII tego programu po kompilacji działa. Kod ASCII był zgrany z pliku .amos. Ten sam plik amos po kompilacji tworzy błędy.

Nie dam rady sobie z tym problemem sam. Może błędy w pamięci powstają po wczytaniu wadliwego pliku .amos?
[#537] Re: Tworzenie dem

@tukinem, post #536

OK. Daję spokój sobie z tym. Nawet orginalny plik .amos Sokobana się krzaczy. Jaki kolwiek plik .amos z drawera Sokoban zaczynam kompilować, to jest błąd. Dlatego z RAM działało. Sprawdziłem obok nową grę, którą zacząłem pisać i tam 3 razy kompilowałem plik .amos i działa dobrze. Z Sokobana jak skopiuję plik .amos to już nie skompiluje. Tak jakby ten drawer psuł pliki .amos. Nie wiem już nic Usunąć ikonę całego drawera? Może tam są jakieś błędne informacje zawarte w pliku .info?

Qwa to było to !!! szeroki uśmiech
Przepraszam za przeklęcie, ale wziąłem specjalnie wolne w pracy żeby to sprawdzić. Plik .info z ikoną sprawiał, że Amos źle kompilował
Usunąłem plik .info drawera z grą.
Usunąłem wszystkie pliki .amos oraz .exe z gry (oprócz edytora leveli).
Wczytałem kod źródłowy ASCII z grą i zapisałem plik soko.amos.
Po kompilacji odpalił.
Wczytałem go jeszcze raz, zapisałem jako Soko-new.amos ale w kodzie dodałem [enter] na początku tak jak miałem wcześniej
Skompilowałem i działa.
Potem znowu skompilowałem soko.amos i soko-new.amos żeby nadpisać pliki .exe. DZIAŁA!!!

Ostatnia aktualizacja: 10.02.2022 14:29:28 przez tukinem
[#538] Re: Tworzenie dem

@tukinem, post #537

to jakies cuda panie
[#539] Re: Tworzenie dem

@selur, post #538

Ta ikonka .info to był skopiowany plik z deficons z os 3.2. Taka niebieska szufladka. Teraz działa "jak ręką odjął"
[#540] Re: Tworzenie dem

@tukinem, post #539

Znowu zaczął się ten sam problem :-/ dodałem kilka podkolorów. Wszystko robiłem pod 68000 i znowu ten sam błąd po kompilacji...
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