atarionline.pl RastaConverter by Jakub Dębski - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorgienekp
      • CommentTime14 Aug 2025 18:44 (6 dni temu) zmieniony
       
      Wiersz poleceń oraz CMake to super sprawa, bo GUI zawsze można dorobić. RC może też zostawiać pliki RAW/DAT/BIN z aktualnym statusem i GUI spokojnie może to odmalować. Samo GUI może być przecież w innym miejscu, a konsolę może mielić jakiś serwer.
      • 2: CommentAuthorilmenit
      • CommentTime14 Aug 2025 22:11 (6 dni temu)
       
      Nowa wersja do testowania (kompilacja 64 bit):
      ->link<-
      • 3:
         
        CommentAuthorgienekp
      • CommentTime15 Aug 2025 08:17 (6 dni temu) zmieniony
       
      Na MacOS Sequoia 15.6 kompilacja w trybie "arm64-os" przerywa się na:

      In file included from /Users/grzegorz/Downloads/RastaConverter-master/src/main.cpp:11:
      In file included from /Users/grzegorz/Downloads/RastaConverter-master/src/app/RastaConverter.h:5:
      In file included from /Users/grzegorz/Downloads/RastaConverter-master/src/io/ImageProcessor.h:11:
      In file included from /Users/grzegorz/Downloads/RastaConverter-master/src/raster/Program.h:7:
      In file included from /Users/grzegorz/Downloads/RastaConverter-master/src/cache/InsnSequenceCache.h:8:
      /Users/grzegorz/Downloads/RastaConverter-master/src/cache/../utils/LinearAllocator.h:6:10: fatal error: 'malloc.h' file not found
      6 | #include <malloc.h>
      | ^~~~~~~~~~
      1 error generated.
      ninja: build stopped: subcommand failed.
      Build finished. Artifacts under out/build/macos-clang/Release/


      <malloc.h> chyba jest już "deprecated"? Może <stdlib.h> to ogranie na wszystkich systemach?

      edit:
      po podmiance malloc na stdlib staje na:
      /Users/grzegorz/Downloads/RastaConverter-master/src/main.cpp:30:5: error: use of undeclared identifier 'RegisterUnhandledExceptionLogger'
      30 | RegisterUnhandledExceptionLogger();
      | ^
      /Users/grzegorz/Downloads/RastaConverter-master/src/main.cpp:31:5: error: use of undeclared identifier 'RegisterSignalHandlers'
      31 | RegisterSignalHandlers();
      | ^
      2 errors generated.
      [12/32] Building CXX object CMakeFiles/rasta.dir/Release/src/raster/Program.cpp.o
      ninja: build stopped: subcommand failed.
      • 4: CommentAuthorilmenit
      • CommentTime15 Aug 2025 09:24 (6 dni temu)
       
      dzięki za testy, sprawdzę gdy będę przy domowym kompie
      • 5: CommentAuthorVidol
      • CommentTime15 Aug 2025 10:33 (6 dni temu)
       
      Na win7 64bit się nie odpala. Od razu wyskakuje:"Program przestał działać..."
      • 6: CommentAuthorilmenit
      • CommentTime15 Aug 2025 11:03 (6 dni temu) zmieniony
       
      Win 7 jest niestety niewspierany - nie mam możliwości, aby na nim testować.
      EDIT: może z powodu AVX2 który był włączony do optymalizacji, a jak czytam były z tym problemy na Win 7. Spróbuję przygotować build bez, jak będziesz mógł potestować.
      • 7:
         
        CommentAuthorgienekp
      • CommentTime15 Aug 2025 12:12 (6 dni temu)
       
      Z jakich innych bibliotek korzysta RC? Bo widzę, że skrypt coś tam ciągnie z gita.

      Nie tak dawno udało nam się przekompilować najnowszą wersję emulatora atari800 tak, że odpala się od Windowsa2000 w górę (czyli wszystkie 32/64) . Zrobił to cross compiler MXE. Była tylko jedna DLL (od SDLa bo już nie szło tego ominąć, choć ponoć się da), resztę wsadziło wszystko w EXEka. Może tutaj też ten numer przejdzie?
      • 8: CommentAuthorilmenit
      • CommentTime15 Aug 2025 13:03 (6 dni temu) zmieniony
       
      FreeImage, SDL2, SDL2_ttf
      Starałem się, aby kompilacja była co najbardziej user-friendly, wieloplatformowa + CMake + dependency resolving (gdy to możliwe), ale to pierwsza wersja z takim nowym build systemem i testowałem tylko na Win 11 i Linux Mint.

      @gienekp - wrzuciłem na GitHub poprawioną wersje - możesz sprawdzić, czy się skompiluje na MacOS?
      • 9: CommentAuthorilmenit
      • CommentTime15 Aug 2025 13:42 (6 dni temu)
       
      @Vidol - możesz sprawdzić, czy odpali się na Windows 7 taka kompilacja?
      • 10: CommentAuthorVidol
      • CommentTime15 Aug 2025 14:02 (6 dni temu)
       
      Dalej się wywala :(
      • 11: CommentAuthorilmenit
      • CommentTime15 Aug 2025 14:19 (6 dni temu) zmieniony
       
      Która jest ostatnia wersja konwertera, która u Ciebie działa? Jeżeli już jest na SDL2, możesz skopiować stare pliki DLL z niej i spróbować? Może problem jest w DLLkach. Jak nie, to będę jeszcze kombinował, czy jakoś inaczej da się skompilować, aby działało na Win7 (może gcc pod Win nie ma takich ograniczeń).
      • 12: CommentAuthorVidol
      • CommentTime15 Aug 2025 15:44 (6 dni temu) zmieniony
       
      Mam na dysku rasta beta 4 i beta 7 i obie działają.
      Edit:
      Przegrałem dll'ki z wersji 7 i pojawia się komunikat, że aplikacja nie została właściwie uruchomiona.
      • 13:
         
        CommentAuthorgienekp
      • CommentTime15 Aug 2025 17:36 (5 dni temu) zmieniony
       
      FreeImage, SDL2, SDL2_ttf to bez problemu się mielą na MacOS.

      Tymczasem doszło do linkowania i:
      ld: symbol(s) not found for architecture arm64
      clang++: error: linker command failed with exit code 1 (use -v to see invocation)
      ninja: build stopped: subcommand failed.


      tych "symboli" to jest kila ekranów więc coś gdzieś brakuje.

      Tymczasem na Ubuntu jest jeszcze inaczej:
      Configuring with CMake preset linux-clang-make ...
      CMake Error: The source directory "/home/grzegorz/Pobrane/RastaConverter/linux-clang-make" does not exist.
      Specify --help for usage, or press the help button on the CMake GUI.
      Configure failed


      EDIT:
      Na MacOS jak przerwało to dałem ręcznie:
      cmake --preset linux-gcc-make-nogui
      cmake --build out/build/linux-gcc-make-nogui --config Release

      i wyszło to co w załączniku

      EDIT2:
      ręcznie doinstalowałem "brew install sdl2_ttf"
      i poszło:
      cmake --preset macos-clang-make
      cmake --build out/build/macos-clang-make --config Release


      P.S. dla rPi Zero w trakcie kompilacji...
      • 14: CommentAuthorilmenit
      • CommentTime15 Aug 2025 19:13 (5 dni temu)
       
      dzięki, zerknę jak można dodać automatyczne doinstalowanie dependencies.
      Gdyby ktoś jeszcze próbował kompilować i będzie wyrzucało błędy zależności, wrzućcie proszę pełne logi z kompilacji, pomoże to poprawić skrypty.
      • 15:
         
        CommentAuthorgienekp
      • CommentTime15 Aug 2025 19:24 (5 dni temu)
       
      Puściłem na macos, ale nie wiem jak zatrzymać.
      Wcześniej dawałem sobie "save" więc co jakiś czas zapisywało, teraz chyba jakoś to inaczej działa i jedynie pomogło max_evals. No ale to totalnie przerwało.

      Pytanie jak zrobić, żeby sobie to mieliło w tle i co jakiś czas zapisywało aktualny status?

      Na razie mam tak:
      rasta -i=temp.png -pal=altirra.act --save=1000 -max_evals=100000 -threads=4
      • 16: CommentAuthorilmenit
      • CommentTime16 Aug 2025 14:44 (5 dni temu)
       
      @vidol - wersje 4 i 7 też są archaiczne, jeszcze na bibliotece Allegro 4. Niestety, nie mam aktualnie jak testować aby dodać wsparcie dla Win 7.
      @gienekp - --save powinno zapisywać automatycznie samo, zerknij na help, nie zapisuje?
      • 17: CommentAuthorVidol
      • CommentTime16 Aug 2025 15:23 (5 dni temu)
       
      wersja 9 tez działa na win7
      • 18:
         
        CommentAuthorgienekp
      • CommentTime16 Aug 2025 18:36 (4 dni temu)
       
      Dałem save tak jak w "poprzedniej" wersji RC. Tam działało, a tu nie.
      • 19: CommentAuthorilmenit
      • CommentTime19 Aug 2025 14:45 (2 dni temu)
       
      nowa wersja - ->link<-
      Powinno działać teraz szybciej i bez memory leaku, który był w poprzedniej.
      • 20:
         
        CommentAuthorgienekp
      • CommentTime19 Aug 2025 21:16 (1 dzień temu)
       
      ./build.sh: line 51: ${config,,}: bad substitution


      Co to może być?
      • 21: CommentAuthorilmenit
      • CommentTime19 Aug 2025 21:40 (1 dzień temu) zmieniony
       
      nie masz starego basha?
      "${config,,}: This is a Bash 4+ feature that lowercases a variable. Shells like sh/dash/BusyBox ash and older Bash (3.x) don’t support it and throw “bad substitution”.
      Spróbuj ten z załącznika i daj znać czy lepiej, proszę.
      • 22: CommentAuthorilmenit
      • CommentTime20 Aug 2025 00:50 (1 dzień temu)
       
      btw, w kolejnej wersji będzie już "dual mode"
      • 23: CommentAuthortebe
      • CommentTime20 Aug 2025 17:42 (22 godzin temu)
       
      będzie w zestawie monitor CRT?

      nie lepiej zająć się tymi poziomymi liniami, które zdradzają skąd pochodzi obrazek
      • 24:
         
        CommentAuthorgienekp
      • CommentTime20 Aug 2025 21:25 (18 godzin temu)
       

      ilmenit:

      nie masz starego basha?

      Pracuje na MacOS (najnowszy), ale skrypty to przetwarza SH.

      A dałoby się tak zrobić, żeby był zwykły MAKE albo ewentualnie przed tym ./configure? Wtedy nawet crosscompilery by to zmieliły.

      Z nowym "build.sh" zatrzymuje się na:
      alloc.h' file not found
      4 | #include <malloc.h>
      | ^~~~~~~~~~
      3 errors generated.
      ninja: build stopped: subcommand failed.
      • 25: CommentAuthorilmenit
      • CommentTime20 Aug 2025 22:43 (17 godzin temu) zmieniony
       
      @tebe - nie tylko CRT, ale i Atari musi być w zestawie ;-) A jak pozbyć się poziomych linii - wszystkie dobre pomysły mile widziane, serio.
      Kolega podesłał z LCD po kablu euro rpg (w załączniku).

      @gienekp - wrzuciłem poprawkę na Githuba, zerknij, czy teraz kompilacja przejdzie.
      Odnośnie MAKE i ./configure to tak było wcześniej, i było sporo requestów, aby przejść na coś bardziej współczesnego, czyli CMake. Myślę, że to dobra decyzja, ale odnośnie MacOS to robię "na ślepo", bo tego systemu nie mam, więc albo mogę reagować na informacje od użytkowników, ale najlepiej by było robić bezpośrednio pull requesty na Githubie. Podobnie ze wsparciem dla Windows 7 - aktualnie nie wiem czemu nie działa, a nie mam jak przedebugować nie mając tego systemu.
      Jak chodzi o bezpośrednie wywołanie kompilacji bez skryptu to oczywiście też można. Przykłady w BUILD.md.