atarionline.pl Emulacja ANTIC'a na GPU - 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: CommentAuthormrk
    • CommentTime12 Dec 2020
     
    Prawie! ->link<-

    Dla porównania wersja sprzed doby: ->link<- :P
    • 2:
       
      CommentAuthorsun
    • CommentTime12 Dec 2020
     
    Hehe, nieźle. Przez moment myślałem, że również sam program wykonuje się normalnie, znaczy wolniej (LaserDemo), ale przypadkiem miałem odpalone pakowanie upxem i to spowodowało znaczne zwolnienie głównego wątku dema :)
    • 3: CommentAuthorAlex
    • CommentTime12 Dec 2020
     
    U mnie niestety tnie potwornie tak, że prawie nic nie widać :/
    • 4: CommentAuthorgorgh
    • CommentTime12 Dec 2020
     
    fajne, brawo! U mnie spadł FPS jak miałem YT włączone, 8gb ram, firefox
    • 5:
       
      CommentAuthorgalu
    • CommentTime13 Dec 2020
     
    @mrk: Obie wersje już w ogóle nie działają pod Safari (nie chcę śmiecić w wątku, ale są errory w konsoli - mogę podesłać).
    Przy okazji - widziałeś nowe narzędzie w Chrome: ->link<- ?

    Alex:

    U mnie niestety tnie potwornie tak, że prawie nic nie widać :/

    Podzielisz się wynikiem ->link<- ?
    • 6: CommentAuthormav
    • CommentTime13 Dec 2020
     
    U mnie wszystko śmiga z odpowiednią prędkością na chromie
    • 7: CommentAuthormrk
    • CommentTime14 Dec 2020
     

    galu:

    Obie wersje już w ogóle nie działają pod Safari (nie chcę śmiecić w wątku, ale są errory w konsoli - mogę podesłać)

    może zrób issue na stronie projektu (o niedziałaniu na Safari) i wrzuć tam logi / opis tego co się dokładnie dzieje, możemy przyszłą dyskusję na ten temat przenieść tam. Dzisiaj uaktualniłem też bevy_webgl2 by działało z najnowszą wersją bevy i przebudowałem wszystkie examples: ->link<- - dobrze by było sprawdzić jak one się zachowują.
    • 8:
       
      CommentAuthormiker
    • CommentTime14 Dec 2020 zmieniony
     
    @mrk jeszcze się przyczepię do jednego dźwięku. W muzyce brakuje brzmienia "2" lub "6". To takie metaliczne, tak jak tutaj: ->link<-
    • 9: CommentAuthormrk
    • CommentTime14 Dec 2020
     
    @miker wiem, wiem, na tyle mnie to drażni, że wreszcie zrobię te 'filtry górnoprzepustowe' w POKEY'u :]

    BTW kolorowe bary działają: ->link<- :)

    - wspierana jest więc zmiana kolorów w ramach pojedynczego trybu ANTIC'a (dalej z dokładnością do jednej linii ekranu, większej dokładności nie przewiduję). Dalej GPU renderuje całą linię ANTIC'a na raz, dostarczam mu jednak dumpy rejestrów kolorów per scan_line
    - wymieniłem emulator CPU na inny (poprzeni mi wykonywał jedną instrukcję / cykl, co tłumaczy te zbyt szybkie animacje w LaserDemo)
    - liczę cykle CPU w linii w miarę dokładnie (po stablicowaniu tych kolorowych wykresów z Altirra Hardware Manual, strona 75)
    • 10:
       
      CommentAuthorsun
    • CommentTime14 Dec 2020 zmieniony
     
    No tak, teraz prędkość wygląda ok. Wydaje mi się, że w demie Magnusa szarpie scroll, ale to jeszcze przyjrzę się dokładnie. Tak, szarpie (ffox, edge). W edge widać kreskę na logosie, w ffox nie - a niby endżin ten sam.
    • 11:
       
      CommentAuthorDracon
    • CommentTime14 Dec 2020
     
    U mnie na fajerfoksie działa całkowicie nieźle. :)

    Czy będzie można przejść do drugiej części tego demosa
    (z kulą ziemską) ??? ;)
    • 12: CommentAuthormrk
    • CommentTime14 Dec 2020
     
    @Dracon to jest pierwsza część tego demka - ominąłem celowo - coś nie chodziło tam jak należy. Zerknę, może się naprawiło po ostatnich zmianach.
    • 13: CommentAuthormrk
    • CommentTime14 Dec 2020 zmieniony
     
    Kolejny fragment z ulubionego dema działa prawie dobrze: ->link<- - znacie? ;)
    • 14: CommentAuthorAlex
    • CommentTime15 Dec 2020
     
    @galu - nie wytrwałem, bo dokończyć te benchmarki...

    Natomiast ostatnia wersja w końcu nie tnie i normalnie widać i słychać. Jest znacznie szybciej.
    • 15: CommentAuthormono
    • CommentTime15 Dec 2020
     
    Czyli wszystkie zniekształcenia już grają poprawnie?
    Drobna uwaga jeszcze - w LaserDemo w dolnym scrollu masz znaki w inverse. W trybie $02 ANTIC-a te znaki mogą być wyświetlane w kilku trybach zależnie od stanu bitów rejestru CHACTL:
    %001 - 0: znaki w inverse wyświetlane normalnie, 1: znaki z inverse wyświetlane jako spacja $00
    %010 - 0: znaki w inverse wyświetlane jako bez inverse, 1: znaki w inverse jako inverse
    %100 - 0: znaki wyświetlane normalnie, 1: znaki odwrócone w pionie (numer linii znaku XOR %111)
    • 16: CommentAuthormrk
    • CommentTime15 Dec 2020
     
    @mono nie, filtrów górnoprzepustowych dalej nie ma, w powyższym demku najwyraźniej nie są używane po prostu. O CHACTL wiem, proste do poprawienia i niski priorytet na razie.
    • 17: CommentAuthormono
    • CommentTime15 Dec 2020
     
    Nie, nie. Filtrów nie ma, ale wydaje mi się że zniekształcenia (AUDC) grają chyba poprawnie.
    • 18: CommentAuthorastrofor
    • CommentTime15 Dec 2020
     
    To ja trochę nie w temacie, ale zastanawiam się czy dało by się użyć rusta żeby stworzyć coś takiego jak mad pascal, albo CC65, coś czytałęm że ktoś coś próbował próbował na procesor 6502, ale to chyba język za wysoko poziomowy...
    • 19: CommentAuthormrk
    • CommentTime15 Dec 2020 zmieniony
     
    @astrofor pewnie mówisz o backendzie LLVM dla 6502 - szukałem dzisiaj informacji na ten temat :) Jeżeli istniałby sensowny backend LLVM dla 6502, to nie tylko RUST'a, C/C++ ale i masę innych języków dało by się kompilować do 6502. Było kilka prób:
    * ->link<-
    * ->link<-
    * ->link<-

    Ten ostatni wygląda obiecująco (bo projekt jest aktualnie aktywny) - ale jak pisze autor "This effort is incomplete and does not compile C code yet."
    • 20: CommentAuthorastrofor
    • CommentTime16 Dec 2020 zmieniony
     
    @mrk: z tego co czytalem to madpascal i cc65 to crosskompilatory, czyli kompiluja kod do innej architektury, LLVM to maszyna wirualna niskiego poziomu , czyli rozumiem ze ze z rusta jak i innych kompiluje sie do kodu bajtowego.
    Z tego co wiem to madpascal kompiluje sie do mad assemblera.
    Fajnie by bylo jakby ktos kiedys napisal jakis artykul o tym, albo chociaz dluzszy wpis.
    • 21:
       
      CommentAuthorgalu
    • CommentTime16 Dec 2020
     
    W odróżnieniu od aktualnych wersji Safari gdzie nawet nie startuje emulacja, pod Safari Technology Preview dla macOS (taka ich wersja "rozwojowa", wydanie sprzed paru dni) wszystkie przykłady chodzą.
    • 22: CommentAuthormrk
    • CommentTime18 Dec 2020 zmieniony
     
    Początki debuger'a: ->link<-
    • 23:
       
      CommentAuthorjhusak
    • CommentTime19 Dec 2020 zmieniony
     
    Dzięki, @galu, nawet nie wiedziałem, że jest coś takiego.
    • 24: CommentAuthormono
    • CommentTime19 Dec 2020
     
    T1000 :)
    • 25: CommentAuthormrk
    • CommentTime19 Dec 2020
     
    @mono coś w tym jest :) Pamiętam jak oczy przecierałem widząc mnemoniki 6502 na OSD u T1000
    • 26:
       
      CommentAuthorgalu
    • CommentTime19 Dec 2020 zmieniony
     
    Ciekawe zastosowanie Rusta / wasm: ->link<- ("ruffle is a Flash Player emulator built in the Rust programming language.")

    Ciekawe zastosowanie Web Audio: ->link<- :)