atarionline.pl VBXE - tutorial dla początkującego - 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: CommentAuthorVagant
      • CommentTime9 Aug 2023 09:08
       
      Witam,

      Wzbogaciłem swoje 800xl o U1MB i VBXE i chciałbym pobawić się trochę w assemblerze nowymi trybami graficznymi. Czy możecie polecić jakiś tutorial, który pomoże wystartować? Jest kilka wątków na atarigae, mam przykłady ze strony Lotharek i podręcznik programisty fx1.26 i będę of tego zaczynał ale może wiecie o czymś, o czym ja nie wiem?

      Z góry dzięki
      Michał
      • 2: CommentAuthortebe
      • CommentTime9 Aug 2023 10:08
       
      • 3: CommentAuthorVagant
      • CommentTime9 Aug 2023 12:08 zmieniony
       
      Czy robi różnice jeśli używam Mad Pascal 1.6.4 a nie 1.6.6?
      • 4: CommentAuthortebe
      • CommentTime9 Aug 2023 15:08
       
      1.6.6 ma nowsze biblioteki
      • 5: CommentAuthorVagant
      • CommentTime9 Aug 2023 15:08 zmieniony
       
      Skompilowałem i spróbuję się pobawić, lata już nie używałem Pascala
      • 6: CommentAuthorpajero
      • CommentTime9 Aug 2023 16:08 zmieniony
       
      • 7: CommentAuthorVagant
      • CommentTime9 Aug 2023 16:08 zmieniony
       
      Dzięki za pomoc.
      • 8: CommentAuthorVagant
      • CommentTime12 Aug 2023 09:08
       
      Mam pytanie odnośnie uruchamiania przykładów VBXE w MAD-Pascal. Jestem w stanie bez problemów skompilować i uruchomić i działa. Jeśli przeciągnę np.bmp.xex na okno Altirra albo uruchomię z WUDSN to wszystko działa ale jak próbuję podmapować xex korzystając z Fujinet to żaden z tych VBXE programów się nie uruchamia po restarcie. Co robię nie tak?
      • 9:
         
        CommentAuthorpirx
      • CommentTime12 Aug 2023 16:08
       
      moze masz sprzetowy vbxe pod innym adresem?
      • 10: CommentAuthorVagant
      • CommentTime12 Aug 2023 17:08
       
      Ja to testuję póki co na symulatorze. Jak przeciągnę plik xex na Altirrę (albo uruchomię go jako boot image to działą ale jeśli podmapuję do np D1 w Fujinet na tym samym emulatorze to się nie uruchomi. Może to pproblem emulatora? Będę miał moje 800xl z VBXE w przyszłym tygodniu bo się serwisuje to sprawdzę. Ja nie dawno wróciłem do a8 więc sory za banalne pytania. Piszę sobie teraz raycastera na VBXE jako rozgrzewkę.
      • 11: CommentAuthortebe
      • CommentTime12 Aug 2023 18:08
       
      biblioteki do VBXE dla Mad Pascala działają niezależnie od adresu $d600, $d700
      • 12: CommentAuthorpin
      • CommentTime12 Aug 2023 19:08
       
      @Vagant - a w które miejsce w pamięci ładujesz program?
      • 13: CommentAuthorVagant
      • CommentTime12 Aug 2023 20:08 zmieniony
       
      No właśnie jak piszę w Pascalu to nie ustawiam nic i tu chyba jest problem? Ja dotąd pisalm tylko w Assemblerze i tam jasno się definiuje. Jak to jest z Pascalem? Czy coś trzeba ręcznie zrobić w wygenerowanym kodzie a65?

      Tylko czemu ten sam program działa jak go odpalam wrzucając na Altirrę a nie startuje jak go mapuję pod D1 w Fujinet? Zwykłe Hello World działa w obu przypadkach ale jak tylko dodam VBXE to już nie chce.
      • 14: CommentAuthortebe
      • CommentTime12 Aug 2023 22:08
       
      FujiNet to cart, a cart używa obszaru $a000..$bFff, w tym obszarze VBXE włącza sobie okno dostępu do pamięci VBXE

      być może tutaj jest konflikt

      nie wiem jak FujiNet realizuje odczyt pliku, jak przyznaje dostęp do pamięci programowi który wykonuje blok INI etc.
      • 15:
         
        CommentAuthorPeri Noid
      • CommentTime12 Aug 2023 23:08 zmieniony
       
      Fujinet nie jest cartem tylko urządzeniem SIO.

      Obstawiam, że kod ładuje się w obszar zajmowany przez loader używany do wczytania binarki z FN.
      • 16: CommentAuthortebe
      • CommentTime12 Aug 2023 23:08
       
      kod MP (MadPascala) ładuje się od adresu $2000... (w sumie można to zmieniać)
      • 17: CommentAuthorVagant
      • CommentTime12 Aug 2023 23:08
       
      Byłbym wdzięczny gdyby ktoś miał jakiś pomysł jak odpalić którykolwiek z przykładów VBXE z MAD-Pascala korzystając z Fujinetu :)
      • 18:
         
        CommentAuthorpirx
      • CommentTime12 Aug 2023 23:08 zmieniony
       
      a w ogóle coś Ci się odpala z fuji? i co dokładnie robisz - kopiujesz pliczek na kartę SD czy masz swój serwer TNFS?
      no i czy inne programy pod vbxe Ci działają?
      • 19: CommentAuthortebe
      • CommentTime12 Aug 2023 23:08
       
      ten przykład (hires.xex) używa S2:

      ->link<-

      kod inicjalizacji ładuje się od adresu $8000, jako blok INI
      • 20: CommentAuthorVagant
      • CommentTime12 Aug 2023 23:08 zmieniony
       
      W tej chwili to emuluję zarówno Fuji jak i Altirrę - mogę poczekać i potestować na prawdziwym sprzęcie za tydzień ale generalnie do tej pory emulacja Fujinetu i Altirra działały bez problemu.

      1. Biorę plik hires.xex i robię drag and drop na okno Altirry - działa. To samo gdy w Altirze zrobię File -> Boot_Image - wybieram hires.xex i działa. Generalnie wszystkie programy VBXE działają w Altirze ale nie chcą z Fujinetu oprócz gier i dem bo te chodzą. Problem mam z VBXE przykładami z pod Pascala.

      2. Używam swojego serwera TNFS i mapuję plik jak w załączniku. Wciskam Options i wywala się przy bootowaniu. Jakikolwiek inny program np. HalloWorld napisany w tym samym paskalu i tak samo skompilowany uruchamia się bez problemu.

      Jeśli słabo tłumaczę to mogę video wrzucić żeby wyłuszczyć problem :)
      • 21: CommentAuthorVagant
      • CommentTime12 Aug 2023 23:08 zmieniony
       
      W załączniku wyżej filmiki
      • 22: CommentAuthortebe
      • CommentTime13 Aug 2023 00:08
       
      sprawdź inne przykłady VBXE, nie korzystające z S2:
      • 23: CommentAuthorVagant
      • CommentTime13 Aug 2023 00:08 zmieniony
       
      Zadziałało! Ten sam kod z małymi poprawkami działa pod Fujinet.

      Jeden problem to funkcja vbxe.TexOut wyrzuca Error: Can't determine which overloaded function 'TEXTOUT' to call - wygląda, że są cztery funkcje TextOut w VBXE.pas?.

      A jaka jest różnica między korzystaniem z S2 i VBXE? Widzę, że w VBXE jest więcej procedur/funkcji. Tak czy inaczej biorę się za grzebanie w tym VBXE i zacząłem pisać małego raycastera. Poprzedniego zrobiłem na Amigę w assemblerze
      to teraz pora na małe Atari :)
      • 24:
         
        CommentAuthorpirx
      • CommentTime13 Aug 2023 16:08
       
      najs :)
      • 25: CommentAuthortebe
      • CommentTime13 Aug 2023 19:08
       
      Poprzedniego zrobiłem na Amigę w assemblerze ->link<- to teraz pora na małe Atari


      ooo, nie taki nooob :)
      • 26: CommentAuthorVagant
      • CommentTime13 Aug 2023 23:08
       
      Eeeeee tam, zielony jeśli chodzi o małe Atari. Wróciłem do retro 3 lata temu i zacząłem się bawić assemblerem na różnych platformach: ST, TT, Falcon, V4SA, Amigi, c64 a teraz Atari. Pascal to był mój pierwszy język - zaczynałem w Turbo Pascalu 3.0 na Elwro Junior i CP/M. Fajnie się w tym pascalu pisze :)
      • 27: CommentAuthorpin
      • CommentTime14 Aug 2023 23:08
       
      S2: to sterownik ekranu dla VBXE i Sparta DOS X.
      • 28:
         
        CommentAuthorAlex
      • CommentTime14 Aug 2023 23:08
       
      Nigdy nie zgłębiałem tematu, ale ciekawe czy jest jakiś porządny manual z przykładami?
      • 29: CommentAuthorpin
      • CommentTime15 Aug 2023 20:08 zmieniony
       
      do obsługi S2: z poziomu CIO jest zajebisty opis z przykładami, zawiera się to w toolkicie do Sparta DOS X.
      • 30: CommentAuthortebe
      • CommentTime15 Aug 2023 20:08
       
      a jest jakiś szybszy sposób żeby tego wszystkiego się nauczyć, jakaś pastylka, pigułka, może być proszek ...
      • 31: CommentAuthormono
      • CommentTime15 Aug 2023 20:08
       
      Tak, można pisać polecenia BASIC-a skrótami.
      • 32:
         
        CommentAuthorAlex
      • CommentTime15 Aug 2023 22:08
       
      @pin - miałem na myśli w ogóle manual - język to rzecz wtórna ;)