atarionline.pl MadPas(CART) [und|or] ExtMemory - 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:
         
        CommentAuthorMaW
      • CommentTime1 Jul 2023 14:07 zmieniony
       
      Wybaczcie pytania początkującego, jeżeli "wszystko już gdzieś jest opisane"...

      Czy MadPascal ma wsparcie do obsługi Carta?
      Jeżeli nie ma natywnie, to czy koledzy, którzy mają doświadczenie w tym temacie, byli by chętni podzielić się wiedzą?

      Przykładowy scenariusz: używam pamięci karta do ładowania grafiki i innych elementów - np. muzyki dla danego etapu.
      Rozumiem, że pierw muszę przygotować dane w postaci 16kB bloków, by wcześniej przygotowanym programem ("wątek obok") przenieść je na karta (z możliwością zapisu).

      Czy, w momencie inicjalizacji karta, pamięć spod niego będzie dostępna w MadPascalu?
      Np. by nie tracić pamięci, w pamięci natywnej przechowuję ekran początkowy HighScore i instrukcję. W momencie przejścia do gry inicjalizuję karta, ustawiam odczyt np. z bloku $01, po ukończeniu etapu przełączam na blok $00, gdzie przechowuję dane "międzyetapowe", potem przełączam na $02 - czyli kolejny etap - itd. itp.

      ...czy taki sam układ danych mogę użyć dla obsługi pamięci rozszerzonej?
      Rozumiem, że wtedy zapisanie bloków musi dokonać się iteracyjnie przed załadowaniem właściwego programu, następnie zacząć ładowanie głównego modułu, a na koniec przekazać mu sterowanie.
      • 2: CommentAuthortebe
      • CommentTime1 Jul 2023 16:07
       
      Jakub Husak dysponuje foxDOS-em przystosowanym do działania z CART-em
      • 3:
         
        CommentAuthorjhusak
      • CommentTime1 Jul 2023 16:07
       
      Z dokładnością do tego, że to wersja bardzo beta - praktycznie zintegrowana z danymi na kartridżu (niestety inaczej nie wchodziło na kartridż). Kiedyś popracuję nad zrobieniem tego bardziej uniwersalnie.
      • 4:
         
        CommentAuthorgienekp
      • CommentTime2 Jul 2023 08:07 zmieniony
       
      Chyba jeszcze xBIOS (i PrinceofPersia) tak umie?

      No ja dla początkujących to proponuję zrobić zwykły dosowy plik ATR. Najlepiej taki pod 512kB (jak w załączniku). Wszystko tam powgrywać jak trzeba na tym ATR.
      A potem zamienić ATR za pomocą ATR2JAC na obraz carta (*można też ATR2CAR). Powstanie nam obrazek carta. I na koniec flahser i fizyczny cart od @jhusak i mamy gotowe finalne własne dzieło gotowe do wsadzenia do pudełeczka.

      *ATR2CAR produkuje dla S-XEGS, do programowania tego standardu trzeba mieć programator pamięci flash.

      Dlatego polecam iść w standard J(atari)Cart512(kB) :)
      • 5:
         
        CommentAuthorMaW
      • CommentTime3 Jul 2023 08:07 zmieniony
       
      Gienek, fajnie, śledzę Twój wątek i doceniam opcję uruchamiania obrazu dyskietki z Carta - ale tu nie o taką obsługę pamięci carta chodzi. M.in. przez to, że odpada możliwość korzystania z pamięci Carta jako bloków pamięci bezpośredniej:
      Czy, w momencie inicjalizacji karta, pamięć spod niego będzie dostępna w MadPascalu?
      Np. by nie tracić pamięci, w pamięci natywnej przechowuję ekran początkowy HighScore i instrukcję. W momencie przejścia do gry inicjalizuję karta, ustawiam odczyt np. z bloku $01, po ukończeniu etapu przełączam na blok $00, gdzie przechowuję dane "międzyetapowe", potem przełączam na $02 - czyli kolejny etap - itd. itp.

      Jeżeli była by możliwość zapisu do carta bezpośrednio z programu/preloadera, rozwiązanie było by idealne. Rozumiem, że musiało by być dostosowane pod jeden, określony typ karta - ale: _dostępnego_jako_pamięć_ bezpośrednio z programu załadowanego do atari. Czyli tak, jak na komputerze z rozszerzoną pamięcią.
      • 6: CommentAuthortebe
      • CommentTime3 Jul 2023 08:07
       
      w grze FLOB jest obsługa carta, jako źródło assetów, czyli odczyt wszystkich danych dotyczących leveli gry

      ->link<-
      • 7:
         
        CommentAuthorgienekp
      • CommentTime3 Jul 2023 09:07
       
      W ATR2CAR domyślnie cart jest wyłączony. Przy pamięci flash 512kB i dyskietce SD 80% carta jest puste. I można sobie je normalnie bankować. Oczywiście jak będziemy chcieli jednocześnie bankować i czytać to będzie konflikt. Ale ten konflikt będzie i przy normalnej pracy.

      Przy ambitniejszym projekcie niestety trzeba wszystko projektować specjalnie pod cartridge. Mało tego, pod konkretny cartridge. Bo zupełnie inaczej jest jak się przełącza bloki 8kB a inaczej 16kB. Jakby nie patrzeć 16kB to 1/4 zakresu pamięci całego ATARI. Odejmując ROM to tak na oko mamy tylko połowę przestrzeni żeby się minąć z danymi. A jeszcze jak w carcie nie ma danych na gotowo, ale tu jakiś obrazek, tam jakiś kod. To jak zmiana umeblowania w ciasnym pokoju :)

      A jak dojdzie zapis to już się robi naprawdę ciekawie. Bo wszystko trzeba robić pod konkretną pamięć flash. I tu dochodzi jeszcze problem bufora na zapis do pamięci flash. A sektor do zapisu może być duuuuży :)
      • 8: CommentAuthortebe
      • CommentTime3 Jul 2023 11:07
       
      a ja tak nie chce, ja chce oddzielny dostęp do RAM i CAR jak w 130 XE

      bo ja jestem znawca tematu...
      • 9: CommentAuthortebe
      • CommentTime3 Jul 2023 12:07 zmieniony
       
      cart który nie istnieje na Atari XE/XL

      podajesz do carta adres źródłowy (24bit), docelowy (24bit), długość (24 bit), cart realizuje przesył danych

      adres 0..$FFFF to pamięć podstawowa, powyżej pamięć carta
      • 10:
         
        CommentAuthorgienekp
      • CommentTime3 Jul 2023 15:07
       
      @tebe
      trochę już istnieje :)
      tylko nie 24-bit a 32-bit

      Niestety do końca nie można stwierdzić, czy do ATARI dopięto "coś" po gnieździe cartridge, czy jednak do tego cudaka dopięto ATARI po tym złączu.
      • 11:
         
        CommentAuthorMaW
      • CommentTime6 Jul 2023 16:07
       
      Dzięki Tebe za link do repo Floba, nawet nie wiedziałem, że Bocianu już uwolnił kod gry.