atarionline.pl Assembler, proste przykłady public domain - 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: CommentAuthorbartgo
    • CommentTime13 Dec 2023 zmieniony
     
    Chciałem sprawdzić jak szybko/wolny jest asembler Fortha.

    Potrzebuję przykładów (open source) - po kilkadziesiąt linijek kodu w jakimś makro asemblerze który sobie przetłumaczę na Ragsdale Assembler. Najchętniej jakieś demko graficzne!

    Gdzie szukać?

    Atari 800XL.

    Z góry dziękuję.
    • 2:
       
      CommentAuthorKaz
    • CommentTime14 Dec 2023
     
    Może coś z Rosetta Code sobie wybierzesz?

    ->link<-
    • 3: CommentAuthormarok
    • CommentTime14 Dec 2023
     
    Do końca nie jestem pewien czego potrzeba, ale proponuję zlustrować (znaną) stronkę: ->link<-

    Zapewne mógłby się też okazać przydatny jakiś konkretny kod w pascalu z poważniejszymi wstawkami w asm (trzeba szukać gdzie indziej ew.).

    Dorozumuję tutaj, że proces konwersji linii kodu asm byłby w niemałym stopniu czyniony nie z automatu, a wprowadzaniem ręcznym, pod edytorem Forth (na Atari 800 XL).


    Co do kodu w asemblerze w przytoczonej konwencji (Ragdale), to znajduję takie oto objaśnienie formatu zapisu:
    ( stąd: ->link<- )

    `
    .A ROL, --> ROL A
    1 # LDY, --> LDY #1
    DATA ,X STA, --> STA DATA,X
    DATA ,Y CMP, --> CMP DATA,Y
    6 X) ADC, --> ADC (06,X)
    POINT )Y STA, --> STA (POINT),Y
    VECTOR ) JMP, --> JMP (VECTOR)


    z objaśnienia wynika, że konwencja asemblera cierpi na: "absence of labels" (?)
    tzn. z tego przykładu kodu, który przytoczyłem, wnoszę że nie można przede wszystkim robić prostych odniesień do miejsca w kodzie asemblera (oznaczać linie labelami) więc może jest (powinien być) chociaż jakiś odnośnik do aktualnego licznika PC (coś jak "*" w innych asm)

    to i tak niezbyt wygodne, ale korzystając z gotowego kodu (bez planu nanoszenia poważniejszych poprawek) można sobie z tym dawać radę
    • 4: CommentAuthortebe
    • CommentTime14 Dec 2023
     
    gdyby ktoś chciał wejść na wyższy poziom utrudniania sobie życia, bo czerpie z tego satysfakcję proponuję amputację kończyn górnych :P
    • 5:
       
      CommentAuthorjhusak
    • CommentTime14 Dec 2023 zmieniony
     
    Na szczęście są ludzie, którzy nie patrzą na docinki innych i robią to, co ich jara :)
    • 6: CommentAuthorbartgo
    • CommentTime14 Dec 2023
     
    ->link<- -> bardzo dobre, dziękuję za pomoc, coś się tam znajdzie, są bardzo krótkie programy (np. pipes).

    Już sam proces tłumaczenia bym sobie powoli ogarniał, chcę po prostu nauczyć się podstaw uruchamiania z Forth wstawek i może opakowania nim małych samodzielnych aplikacji. Nie nauczę się w szybkim czasie dobrze asemblera ale uruchamianie i tłumaczenie kodu między różnymi "narzeczami" to fajne ćwiczenie. Mogę też iść sobie powoli przez "Asembler 6502", używając zarówno MAC/65 jak i Forth. Nie ma sensu przenosić większego kodu między tymi asemblerami ale jakiś mały kawałek, ćwiczebnie, czemu nie.

    Asembler Fortha jest bez etykiet ale pewno można je dodać (widziałem artykuł jak dodać GOTO do podstawowego Forth więc technicznie się da).
  1.  
    Przy okazji zapraszam na angielskiego Discorda:

    Atari 8-bit Programming:
    ->link<-