atarionline.pl JCART 1MB (8Mb) - nowa wersja! - 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:
       
      CommentAuthorPecus
    • CommentTime18 Nov 2023 zmieniony
     
    Bay Pilot i wiele innych czeskich "produkcji" ktoś przeleciał jakimś narzędziem (na pewno nie jest to narzędzie dla atari), które z plików BAS zrobiło XEXy.

    Oczywiście zrobiło to w sposób prymitywny, działający potem tylko spod emulatora.

    Plik BAS to w zasadzie zapis obszaru pamięci e którym trzymany jest stokenizowany program (i zmienne). Można by go wczytać prosto w wybrany obszar (po prostu od obecnego MEMLO), po wczytaniu ustawić odpowiednie zmienne BASICa, tak by BASIC wiedział, że ma w pamięci program i tablice zmiennych.

    Tu wygląda, że jest to plik BAS z doklejonym przed nim (tak się akurat składa, że ładowanym pod $700) małym programem, który włącza ROM BASIC, odtwarza zmienne systemowe interpretera BASIC ($80 - $90 mniej więcej :) ), i skacze bezpośrednio do ROM interpretera BASIC zapewne uruchamiając program.
    Na końcu doklejony jest jeszcze blok RUN robiący skok pod $0700.
    Czesi zrobili takie narzędzie chyba BAS2XEX i może ono to robiło.

    Bez sensu w normalnym użytkowaniu, bo tak zrobiony program w BASIC to w zasadzie obraz stanu pamięci w konkretnej (najsłabszej) konfiguracji.
    Bez załadowanego DOSa (zapomnijmy więc o komunikacji ze światem zewnętrznym poza magnetofonem).

    Kto to wymyślił i po co? Jedyny cel to "wygodne" odpalanie takich programów pod emulatorem.

    Szczerze.... wyrzuciłbym te wynalazki z archiwum gier pozostawiając oczywiście plik BAS i ewentualne ATRy (zapewne zawierające DOS i jakiś program ładujący programy w BASICu).

    A co najważniejsze nie ma sensu zajmowanie się tym w kontekście pisania loadera! :)
    • 2:
       
      CommentAuthorgienekp
    • CommentTime18 Nov 2023 zmieniony
     
    Podsumowując, menu4car widząc blok $0700-cośtam nie powinien w ogóle takiego pliku XEX dodawać. Bo XEX to jest COM a COM to przecież standard DOSowy. No to jak coś DOSowe nie jest kompatybilne z samym DOSem to nie ma prawa być w tej grupie i mieć takie rozszerzenie.

    Edit
    @Pecus
    W sumie dzięki za radę, jak zrobić loader plików BAS!
    Jeszcze tak sobie myślę, że można by dla BAS dokleić jekiegoś minidosa, żeby w razie czego jakieś save "D:" w basicu zadziałało.
    • 3: CommentAuthorbartgo
    • CommentTime18 Nov 2023
     
    Może pytanie nieco z boku i zbyt amatorskie ale jest temat, jest okazja.


    Jak jest z softem który nie wymagał DOS-u (języki programowania, jakieś translatory). Czy są jakieś zasady którymi autorzy się posługiwali? Nie dotykać strony szóstej, siódmej... Cokolwiek, czy skoro program zaczynał się panoszyć nie musiał przestrzegać żadnych szczególnych zasad?
    • 4:
       
      CommentAuthorPecus
    • CommentTime18 Nov 2023 zmieniony
     
    Wszystko, o czym wspomniałeś wymaga DOSa, bo to DOS zapewnia językom programowania, edytorom itp możliwość komunikacji ze stacją dyskietek. Bez DOSa możesz najwyżej zapisać program (tekst, dane, itp.) na kasecie albo przepisać na kartkę w kratkę :P

    A wtedy zasada jest prosta.
    Działać w pamięci od MEMLO do MEMTOP :)

    Atari startuje z MEMLO = $0700 i to dlatego tam ładuje się DOS. Po załadowaniu i uruchomieniu DOS podwyższa MEMLO ustawiając ten wskaźnik na swój koniec.
    To dlatego przechodząc do BASIC i pisząc w nim program pakuje się go do pamięci od adresu wskazanego przez MEMLO właśnie.

    Z resztą uważam, że przyzwoity loader powinien ustawić MEMLO na swój koniec :) nawet jeśli tylko 1 program na 1000 sprawdza ten wskaźnik.

    Co do wczytywania i uruchamiania programów w BASIC, to któryś z klasycznych loaderów (Micro DOS? ... SpeedStart? ) to potrafił.
    Loader może to zrobić bardzo kulturalnie.

    To znaczy ustawić MEMLO na swój koniec :) , wczytać program w BASIC pod adres MEMLO (jako ciągły blok danych ale od 15b pliku! *), po wczytaniu (albo przed :) ) ustawić odpowiednie zmienne BASIC na podstawie wczytanych danych, włączyć BASIC, wyczyścić ekran (choć to powinien zrobić na początku jak już wie, że ładował będzie program w BASICu) i skoczyć do BASICa tak by wykonać rozkaz RUN.

    Oczywiście taki program nie będzie mógł nic doczytać z dysku (bo nie ma DOSa) czy tym bardziej zapisać, ale w 90% to pewnie jest zbędne.



    *) Pierwsze 14b pliku stokenizowanego (BAS) to wartości względne zmiennych LOMEM, VNTP, VNTD, VVTP, STMTAB, STMCUR i STARP które trzeba zwiększyć o MEMLO i zapisać do odpowiednik komórek (od $80) i to one decydują o tym, że BASIC będzie wiedział że w pamięci jest program.
    • 5:
       
      CommentAuthorgienekp
    • CommentTime18 Nov 2023
     
    @Pecus
    DZIĘKI!

    Jestem z Zientarą na tych 14bajtach właśnie. Potem widzę, że na żywca stokenizowany fragment jest skopiowany. Basic ładnie się ofsetuje względem MEMLO. Pełna kultura :)
    • 6:
       
      CommentAuthorGeorge
    • CommentTime18 Nov 2023
     
    Czy ta nowa wersja jest kompatybilna z cartami OSS? (Mac65 z DDT szczególnie?)
    • 7:
       
      CommentAuthorgienekp
    • CommentTime18 Nov 2023 zmieniony
     
    @Pecus

    Coś mi brakuje i program w BASICu nie staruje. Tak na skróty spróbowałem, niby adresy poustawiane itd. Ale klops.
    • 8:
       
      CommentAuthorPecus
    • CommentTime18 Nov 2023 zmieniony
     
    A weź po załadowaniu programu i przepisaniu zmiennych pod $80 wykonaj taki kod:

    LDX #$FF
    TXS
    LDA #$A9
    PHA
    LDA #$79
    PHA
    LDA #$00
    STA $09
    STA BASICF ; $03F8
    LDA #$FD
    STA PORTB ; $D301
    LDA #$B7
    PHA
    LDA #$54
    PHA
    LDA RAMTOP ; $6A
    BPL @RT_SET
    LDA #$A0
    @RT_SET
    STA RAMTOP ; $6A
    JMP $EF94


    I nie pytaj czemu taki :) i skąd jest :)
    Inicjuje edytor ekranowy (bo trzeba po ewentualnym włączeniu BASICa), a potem robi RUN w BASICu.
    • 9: CommentAuthormono
    • CommentTime18 Nov 2023
     

    Pecus:

    JMP $EF94
    Co to jest?!
    • 10:
       
      CommentAuthorPecus
    • CommentTime18 Nov 2023 zmieniony
     
    A pisałem, żeby nie pytać skąd ten kod :)

    To jest wnętrze procedury systemowej inicjującej edytor.

    Więcej nie wiem, bo nie sprawdziłem :)

    Teb kod tylko do testu tu wkleiłem, żeby sprawdzić czy załatwi sprawę, a jest to kod z Czechii :)

    Pomysł miałem taki, że jeśli to zadziała, to trzeba zrobić coś podobnego, ale lepiej (nawet mam jakiś ogólny pomysł).
    • 11: CommentAuthormono
    • CommentTime18 Nov 2023
     
    $EF94 to jest EDOPN - ten adres znajduje się w tablicy handlera dla E: więc można:
    EDTVEC = $E400
    lda EDTVEC+1
    pha
    lda EDTVEC
    pha
    rts
    • 12:
       
      CommentAuthorPecus
    • CommentTime18 Nov 2023 zmieniony
     
    No właśnie, o to mi chodziło :)
    Że trzeba to zrobić dobrze, a czesi zrobili jak zrobili.

    A ten kod to jest właśnie sposób uruchomienia programu w BASIC doklejany do tych czeskich XEXów basicowych. Jak dziś analizowałem, to mi został w edytorze, więc skoro działał.... :)

    Ale mój pomysł ogólny jest zupełnie inny i może obędzie się w ogóle bez PHAnia adresów powrotów z BASICowych procedur na stos.
    • 13: CommentAuthormono
    • CommentTime19 Nov 2023
     
    Jeszcze była technika polegająca na ustawieniu APPEND w E: poprzedzone wpisaniem RUN w linii niżej.
    • 14:
       
      CommentAuthorjhusak
    • CommentTime19 Nov 2023 zmieniony
     

    George:

    Czy ta nowa wersja jest kompatybilna z cartami OSS? (Mac65 z DDT szczególnie?)


    Nie, jak w instrukcji napisano :)
    Natomiast te kartridże można flashować indywidualnie, czyli na Jcart masz tylko jeden OSS. Patrz repozytorium JatariCart ->link<-
    • 15:
       
      CommentAuthorPecus
    • CommentTime19 Nov 2023
     
    @mono Dokładnie o tej technice myślę, tylko trzeba jeszcze kulturalnie odpalić BASIC. Najlepiej w sposób taki by był on niezależny od wszystkiego :)


    Ale, jako że, leniwy jestem.... myślę, że ktoś już to zrobił, trzeba popatrzeć na te "uruchamiacze" programów w BASICu.
    • 16:
       
      CommentAuthorgienekp
    • CommentTime19 Nov 2023 zmieniony
     
    Zrobiłem wszystkie etapy, ale nie uruchamia się.
    RUN będący cześcią XRUN wraca z niczym. Po powrocie dałem skok do oryginalnego basica. I co ciekawe, działa LIST i działa potem polecenie RUN.

    Czyli wszystko niby jest OK, ale program basicowy jednak nie startuje :/

    EDIT

    DZIAŁA!

    Ale tego jmp $A97A kompletnie nie rozumiem.

    EDIT2
    Poprawnie powinno byc: jmp PRCSTM
    • 17:
       
      CommentAuthorjhusak
    • CommentTime19 Nov 2023 zmieniony
     

    gienekp:

    Swoją drogą kiedyś czekaliśmy na wczytanie jednego XEXa kilka minut, a tu analiza wszystkich bloków wszystkich gier niecałe 4 sekundy :)


    Macbook M1:

    time ./go.sh

    real 0m0.712s
    user 0m0.408s
    sys 0m0.301s

    Sprawdziłem też gry Homesofta i tam żadna z gier nie używa 700-9ff. Natomiast stosu niecałe 40 używa.
    • 18: CommentAuthormono
    • CommentTime20 Nov 2023 zmieniony
     
    @gienekp: Bo XRUN tylko kasuje zmienne i ustawia aktualną linię. A PRoCess STateMent potem wykonuje już tą aktualną linię i dalsze :)
    Być może te adresy są tak ustawione, żeby działały z każdą wersją Atari BASIC-a?
    • 19:
       
      CommentAuthorgienekp
    • CommentTime20 Nov 2023 zmieniony
     
    @mono
    Całkiem możliwe. Tak poanalizowałem troszkę tego BASICa z Zientarą u boku. Całkiem zgrabnie jest on napisany.
    Generalnie mam już przepis na odpalenie pliku BAS z czegokolwiek.

    1. Sprawdzamy czy BASIC jest włączony, jeżeli nie to PORTB, przesunięcie RAMTOP i ponowne otwarcie edytora (*)

    2. Normalnie BASIC startuje od $A000. Tam jest procedura konfigurująca BASIC. Ale nie ma do niej specjalnego skoku, więc żeby ją wywołać fragmentarycznie to trzeba ją przepisać do swojego kodu do miejsca wyświetlenia komunikatu READY.

    3. Pierwsze 14 bajtów (0-13 czyli 7 adresów 16bit) pliku BAS kopiujemy od $80 z dodaniem MEMLO. Dodatkowo $8C (16bit) kopiujemy do $8E i $90.

    4. Sam program BASICa z pliku BAS jest od 14 bajtu i jego kopiujemy od MEMLO+256. Bo pierwsze 256 bajtów to jest jakiś bufor tokenizacji. Tam idą instrukcje wprost wpisywane z palca.

    5. potem już tylko jsr XRUN i jmp PRCSTM

    Mam dwie wątpliwości. Pierwsza to czy inicjować aż do komunikatu "READY", czy jednak "READY" nie wyświetlać.

    (*) Druga dotyczy punktu 1. Gdybyśmy chcieli odpalać program z cartridgea zgodnego z maxflash to w zasadzie dokładnie te same 8kB siedzi na tych samych adresach. Wtedy bez względu czy był OPTION czy nie to MEMLO, MEMTOP edytory wszystko jest już ustawione na gotowo.

    I teraz pytanie zasadnicze, czy nie puścić programu BAS nie z oryginału ale z kopii BASICa z obszaru CARTa? Uzyskuje się dwie cechy. Pierwsza to, że taki cart odpali się na kompie bez BASICa.
    Druga, ten BASIC z carta mógłby mieć subtelne poprawki dla jakiś dodatków z obsługą CARTa.
    • 20:
       
      CommentAuthorjhusak
    • CommentTime3 Dec 2023 zmieniony
     
    Zrobiłem nową wersję, ustawia memlo. Poza tym jest w końcu binarka na windows.

    ->link<-

    Przetworzyłem też niemal wszystkie (oprócz kilku z doczytywanymi planszami) gry HomeSofta na 62 obrazy kartridży. Gdzieś to umieszczę jako prezent świąteczny :)

    Ale czad.

    Mieć 62 kartridże z niemal wszystkimi grami na Atari :)
    • 21:
       
      CommentAuthorpancio
    • CommentTime4 Dec 2023
     
    Jestem zainteresowany, znajdzie się dla mnie kika sztuk?
    • 22:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023
     
    Jak zwykle - znajdzie się.
    • 23: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    A u mnie jak zwykle nie działa :)
    Mam katalog bez spacji, bo zauważyłem, że spacje nie są trawione:

    C:\GryPL>menu4car.exe menu.txt -v -o cart.xex
    verbose=1

    C:\GryPL>

    Program jakby coś robi, ale nie wdać co i nie wypluwa pliku. Co ciekawe, jak miał ścieżkę ze spacjami, to zrobił takie coś:

    C:\MEGAsync\Atari\gry wybrane PL>menu4car.exe menu4car.txt -o C:\MEGAsync\Atari\gry wybrane PL\outcart.car -v
    verbose=1
    Open Error "PL\outcart.car".
    Cartridge Checksum: 0fd14bff
    Cartridge image 'C:\MEGAsync\Atari\gry.car' saved (1048592 bytes)
    Cartridge image 'C:\MEGAsync\Atari\gry.bin' saved (1048576 bytes)

    Co ja znów robię źle? :)
    • 24:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Na Windows się nie da pracować, przynajmniej ja nie mogę - nie jest zoptymalizowane do pracy w terminalu - więc tam nie testuję.

    Już odtworzyłem sytuację i naprawiam.

    A robisz dobrze:) testujesz :)
    • 25: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Załączam gry, plik exe oraz plik txt. Działam w katalogu C:\GryPL
    Testuję na Windows 10 i Windows 11
    • 26:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Ale gupi ten gcc mingw.
    Nic nie mówi a nie potrafi zaalokować 3MB w lokalnych tablicach (cichy stack overflow)
    Już to miałem, więc szybko wpadłem. ale tylko 3MB?

    Sprawdź pls wersję z z dziś z githuba:
    ->link<-

    U mnie działa na WIN10, na wszystkich rodzajach plików, i pc, i unix, i lewy i prawy ciach.

    Przedtem wchodziło do funkcji.. zwisało i po sekundzie czy dwóch się kończyło...
    • 27: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Teraz ładnie zbudował plik pod Windowsem 11 ale...
    Ze wszystkich gier pod Altirrą odpala się tylko G czyli Tanks

    Rozumiem, że mam je odpalać w trybie emulacji MaxFlash 8Mb?

    Jeszcze sprawdziłem pod Atari800Win i tak samo - tylko Tanki się odpalają.
    • 28: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Jeszcze dołączam log.
    • 29:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Sprawdziłem pod OSX, wszystko oprócz Kampania Wrześniowa się uruchamia.
    Sprawdzę jakie są różnice pod Windows.

    ---- edit

    poprawiłem błąd szybkiej nieuważnej optymalizacji :/

    Pliczek z tego samego miejsca, co poprzednio, podmieniłem go (post 43)
    • 30:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Jeszcze polookam na tę Kampanię Wrześniową - ona się dekompresuje i uruchamia, dopiero potem się wywala. Ciekawe. (o - równolegle piszemy :).

    Kampanią zajmę się w wolnym czasie, teraz to robię w przerwie na papierosa :) Tylko że ja nie palę :)
    • 31: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Teraz jest OK - przetestowałem kilka gier i się łądują oczywiście oprócz Kampanii.
    Kampania się ładuje, rozkompresowuje i na pierwszym screenie po wciśnięciu spacji się wywala.
    • 32:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023
     
    Kampanię możesz wziąć z dyskietki nr 139 Homesofta.

    Dla wygody załączam.
    • 33: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Spoko, dzięki.
    Nie zależy mi na tym tak jakoś szczególnie, po prostu próbowałem zrobić podobne zestawy gier na S/XEGS, SIC+ oraz MaxFlash programem MaxFlash Cartridge Studio oraz Twoim i takie rzeczy wyszły w testach.
    Ta kampania na przykład z SIC+ się uruchamia, z MaxFlasha zrobiona softem Atarimax też się uruchamia. Więc masz zadanie na szóstkę :)
    • 34:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Dzięki - właśnie o takie perełki mi chodzi. Bo testowanie 5000 gier dla jednej osoby jest... takie... żmudne.

    Ale to będzie działać, spoko.
    Jak znajdziesz jeszcze coś - daj linki.
    • 35: CommentAuthorxangel
    • CommentTime4 Dec 2023 zmieniony
     
    Zobacz jeszcze demo Racall. Działa z SIC+ ale nie działa z MaxFlash. Może wieczorem siądę i wybiorę jakieś takie toolsy, które miałem na SIC i działały to przetestuję z MaxFlashem.
    • 36:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023 zmieniony
     
    Założyłem katalog "notworking" i będę testował.
    ---edit ---
    już wiem o co chodzi, przynajmniej z demkiem.
    • 37: CommentAuthorxangel
    • CommentTime4 Dec 2023
     
    Wrzucam jeszcze problematyczne gry i programy.
    M. in. test joysticka :)

    Czy jest ograniczenie pozycji w menu? Wrzuciłem 42 tytuły i mi zrobiło tak, że na pierwszym ekranie mam tylko 26 tytułów i na drugim mam dwa.
    • 38:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023
     
    Powinno być tak, że na każdej stronie jest do 26, ale wypełniane od pierwszej strony. Sprawdzimy.
    • 39: CommentAuthorxangel
    • CommentTime4 Dec 2023 zmieniony
     
    [EDIT]
    Wrzucam cały folder na testy.
    • 40:
       
      CommentAuthorjhusak
    • CommentTime4 Dec 2023
     
    Gry, które się nie wczytywały (problematyczne.zip, oprócz NinjaCommando) oczekiwały danych ekranu (display listy) lub wskaźnika do niej pod adresem $bc20.

    Jakbyś mógł mi podesłać ten set, co Ci nie zgadza się numeracja? Ew. sprawdź, czy gdzieś nie masz błędu.
    • 41: CommentAuthorxangel
    • CommentTime5 Dec 2023 zmieniony
     
    Tak, był błąd w PAC-MAN. Robiłem to wczoraj wieczorem na innym kompie (z Win7) i tam konsola jest dość mała i nie da się jej rozsunąć na szerokość a wtedy te komunikaty są dość nieczytelne.
    Zbudowałem teraz zestaw nowym menu4car i na drugim ekranie mam już wszystkie gry. Zaraz zobaczę, co działa a co nie :)

    [EDIT]
    Dokładnie tak jak piszesz - nie działają Ninja Commando, SWAT, Keystone Kappers i Bruce Lee. Sprawdziłem poprzednią paczkę "problematyczne" i Mr. Do! ma rozwaloną grafikę, Moon patrol ma jakieś kreski przy tytule, Boulder Dash ma jakieś dziwne znaczki na ekranie z wyborem nieśmiertelności.

    A widzę, że poprawiłeś Robbo, Test Joysticka i Turbo 2000 :)

    Do problematycznych dorzucam jeszcze Joust i Mario Bros. oraz Polskie Logo i demo triple threat.

    Szacun i gratulacje za kawał dobrej roboty !!!
    Atarimax tez nie radzi sobie z częścią z tych gier :)
    • 42:
       
      CommentAuthorjhusak
    • CommentTime5 Dec 2023
     
    Mógłbyś te kreski w MoonPatrol zascreenshotować? Ja ich nie mam?
    • 43: CommentAuthorxangel
    • CommentTime5 Dec 2023
     
    Hmmm w Altirra są, w Atari800Win nie ma :)
    Musiałbym sprawdzić na real hardware.
    • 44:
       
      CommentAuthorjhusak
    • CommentTime5 Dec 2023 zmieniony
     
    Na real HW raz miałem takie kreski jak Ty; potem pojawiały się inne śmiecie ale pomiędzy nazwą a "* 1 player" Więc niedoczyszczone śmieci gdzieś. Ale to gra sama sobie winna - wygląda na jakieś machloje z resetem.
    --- edit ---
    Ktoś zrobił i... zadziałało. A w innych warunkach nie za bardzo.
    Tam jest czyszczenie pamięci i zmniejszana komórka, którą czyści się pamięć. Na dzień dobry jest tam 0, ale (wraz z resetem?) zmniejsza się (na ff) i potem tym czyści pamięć - tyle rozkminiłem.
    • 45: CommentAuthorAtaripuzzle
    • CommentTime5 Dec 2023 zmieniony
     
    Może jest tak jak Jakub mówi, a może nie masz włączone 50 klatek w Altirze. Niektóre programy lub gry ich wymagają. Może powinno być 50 Hz ustawione w Altirze - nie wiem.
    • 46: CommentAuthorxangel
    • CommentTime5 Dec 2023
     
    Mam wybrany System: PAL, a w zakładce Speed: Match Hardware
    • 47: CommentAuthorAtaripuzzle
    • CommentTime5 Dec 2023 zmieniony
     
    A czy na NTSC-50 jest tak samo? Zakładka Configure System > SYstem> Video-standard (NTSC-50)?
    • 48: CommentAuthorxangel
    • CommentTime5 Dec 2023
     
    Tak, tez kreski.
    • 49: CommentAuthorAtaripuzzle
    • CommentTime5 Dec 2023 zmieniony
     
    Mi się ostatnio popsuła altirra i działa tylko na 5O Hz (NTSC-50). Na zwykłym NTSC lub innym mam drżenie ekranu - najczęściej w rytm muzyki lub śmieci właśnie. Nie wiem z czego to wynika
    • 50:
       
      CommentAuthorjhusak
    • CommentTime5 Dec 2023
     
    Altirra ma dużo parametrów, które się ustawia "na chwilę" - pewnie korzystnie będzie ją zresetować.