atarionline.pl Assembler od czego zaczac ? - 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: CommentAuthorzaxon
    • CommentTime11 Mar 2009
     
    No wlasnie, zieleniec w temacie jestem totalny. Moja assemblerowa edukacja skonczyla sie ok 1990 roku na Quick assemblerze i Tajemnicach Atari.Od tego czasu pamietam tylko lda ,sta i nop. Co warto poczytac oprocz Zientary, jakiego assemblera uzywac? Od czego zaczac ? Jak wy zaczynaliscie pisac takie fajne programy?
    • 2: CommentAuthorbob_er
    • CommentTime11 Mar 2009
     
    w tajemnicach atari byl fajny kurs. sporo koderow (w tym i ja) uczylo sie z tego kursu. na atariki znajdziesz kilka trikow. obawiam sie takze, ze na tzw. konkretne pytania szybciej dostaniesz odpowiedz u konkurencji (atariarea) - nic kazowej stronie nie ujmujac (imho ma po prostu troche inny profil).
    • 3:
       
      CommentAuthorKaz
    • CommentTime11 Mar 2009
     
    Zaxoncu, oprocz kursu i wielu przykladow w asemblerze w Tajemnicach Atari:
    ->link<-

    znajdziesz tez kurs imc Pana Tebego:
    ->link<-
    ->link<-
    ->link<-
    ->link<-
    ->link<-
    ->link<-
    ->link<-
    ->link<-
    ->link<-

    przyklady w asemblerze konkretnych procedur sa oczywiscie w Atariki:
    ->link<-

    jak i ogolnie przydatne informacje o Atari:
    ->link<-
    ->link<-

    ale przyklady sa takze na zapomnianej, ale fajnej stronie AtariWiki:
    ->link<-

    Bober - jezeli moge rozwiac watpliwosci: niniejsze forum nastawione jest na wszelkie projekty zwiazane z Atari, wiec kodowanie takze jest "w profilu" :). To tylko kwestia czasu, zeby ludzie poznali i przywykli do nowego forum i mam nadzieje, ze koderzy rowniez.
    • 4: CommentAuthorzaxon
    • CommentTime14 Mar 2009
     
    Cool Kaz, i o to chodzilo, dzieki.
    • 5:
       
      CommentAuthorKaz
    • CommentTime17 Mar 2009
     
    Tylko nie zapomnij sie chwalic postepami :)
    • 6:
       
      CommentAuthortdc
    • CommentTime17 Mar 2009
     
    zaxon: a do czego jest Tobie asm potrzebny ?
    • 7:
       
      CommentAuthorKaz
    • CommentTime17 Mar 2009
     
    To troche jak z pytaniem: "a do czego Ci potrzebne Atari, skoro masz peceta?" :DDD

    Odpowiedz: zeby sobie w przyjemny sposob utrudnic zycie!
    • 8: CommentAuthorzaxon
    • CommentTime18 Mar 2009
     
    TDC, hmm ,rozszerzen w atarce przybywa programow takich jake bym chcial do nich nie ma wiele wiec zgodnie ze starym hasłem, trzeba "napisac se" , no i poza tym troche wstyd nie potrafic jakiejs prostej procedurki napisac.
    • 9:
       
      CommentAuthoradiblol
    • CommentTime18 Mar 2009
     
    Znalazłem dobrą książkę traktującą o asemblerze 6502:
    ->link<-
    • 10:
       
      CommentAuthorKaz
    • CommentTime18 Mar 2009
     
    Nie mow, ze nie przegladales jeszcze Biblioteki?

    ->link<-
    • 11:
       
      CommentAuthoradiblol
    • CommentTime18 Mar 2009
     
    Interesowało mnie coś ogólnie o 6502, a nie konkretnie o Atari, więc wpisałem w Google "6502 asembler".
    • 12: CommentAuthorKoval
    • CommentTime26 Jun 2009
     
    Jak zorganizować sobie max ergonomiczny "warsztat pracy" przy programowaniu asemblerem?
    Zależy mi na tym, żeby to był cross asembler, najlepiej zgodny z QA. Dobrze by było, gdyby ten asembler posiadał edytor, z którego jednym przyciskiem wykonywałoby się asemblację. Może opiszę, jak sobie to zorganizowałem, ale proszę o dobrą radę;) bo mnie to nie pasuje...;)
    Mam QASM 1.0 (jest jakaś nowsza wersja?). Ma on swój edytor, produkuje pliki .xex. Wszystko byłoby ok, ale przy prostym, przykładowym programie pokazuje błąd I/O 103. Dla sprawdzenia skompilowałem przykładowy programik madsem - bezbłędnie. Tylko, że mads produkuje plik .obx, nie ma swojego edytora, a kompilowanie za pomocą ręcznego wklepywania polecenia mads.exe -b:1536 nazwa_pliku.asm no jakoś mi się nie uśmiecha. Poza tym jak dalej obrobić plik .obx? Jak go wczytać do emulatora, jak sprawić, żeby emulator go wykonał? A może pownienem w jakiś sposób uzyskac plik .xex albo .atr? Może ktoś wytłumaczy mi "drukowanymi literami" jak on pracuje nad programami, jak uzyskuje pliki wynikowe i jak je potem wczytuje do emulatora?
    Pytam o to wszystko, bo dawno temu bawiłem się w pisanie programów w jęz. maszynowym, ale nie miałem asemblera, a wszystkie programy powstawały w zeszycie, potem wpisywałem je w linii DATA itd.... Chciałbym sobie conieco przypomnieć, ale mieć jednocześnie komfort pracy do jakiego przywykłem w PC;)
    • 13:
       
      CommentAuthorKaz
    • CommentTime26 Jun 2009
     
    Mozesz zmienic rozszerzenie pliku obx na xex i bedzie dzialac. To, ze nie ma wlasnego edytora to chyba zaleta, bo mozesz uzywac wlasnego, takiego jak Ci pasuje?
    • 14: CommentAuthormono
    • CommentTime26 Jun 2009
     
    Używam madsa 1.8.5 oraz jedit'a 4.3pre13 z kolorowaniem składni dla 6502 (plik mogę podesłać). Mam to na ubuntu i moja praca wygląda tak:

    1. Odpalam jedita i edytuję sobie plik po czym zapisuję.
    2. W konsoli odpalam madsa

    $ mads prog.asx

    3. W konsoli odpalam atari800

    $ atari800 -windowed -width 800 -height 600 -nobasic prog.obx

    Rozszerzenie .obx czy .xex nie gra roli.
    Jako alias w konsoli zdefiniowałem sobie polecenie a800, które mi oszczędza wklepywania parametrów do atari800:

    alias a800="atari800 -windowed -width 800 -height 600 -nobasic"

    i odpalam sobie wtedy emulator za pomocą:

    $ a800 prog.obx

    W konsoli działa historia więc to kwestia naprzemiennego używania 2 poleceń :)
    Na pewno można sobie urządzić warsztat jeszcze fajniej, ale mnie to wystarcza.
    • 15:
       
      CommentAuthorCosi
    • CommentTime26 Jun 2009
     
    Ja co prawda nie piszę w asemblerze, ale mam ca65 (wchodzi w skład kompilatora cc65) i edytor Kate (pod Linuksa, też koloruje składnię asma 6502). W edytorze można ustawić skrót klawiszowy, który wywoła kompilację aktualnego pliku.
    • 16: CommentAuthormono
    • CommentTime28 Jun 2009 zmieniony
     
    @Koval: Heh. Właśnie przypadkiem na atariage trafiłem na ->link<- . Chyba warto byłoby na to sobie spojrzeć, bo ma parę fajnych cech no i miałbyś chyba to, czego potrzebujesz.
    • 17:
       
      CommentAuthorimmolator
    • CommentTime28 Jun 2009
     
    mono: dzięki za link! Kiedyś myślałem o zrobieniu takiego plugina... A tu bum! i gotowe. QA w nowym wydaniu :-)
    • 18: CommentAuthorKoval
    • CommentTime29 Jun 2009
     
    mono: ten jedit jako edytor wygląda b. ciekawie. WUDSN też zresztą - ciekawy plugin... Trzeba by to praktycznie sprawdzić;) Zobaczę, jak mi to spasuje wszystko... Dzięki wielkie.
    • 19: CommentAuthormono
    • CommentTime29 Jun 2009 zmieniony
     
    Nie ma sprawy. Przesyłam jeszcze mój plik do kolorowania składni. Trzeba to tak zainstalować:

    1. Skopiować plik do /usr/share/jedit/modes/ (na win pewnie w Program Files/JEdit/modes/).
    2. W pliku /usr/share/jedit/modes/catalog (win: Program Files/JEdit/modes/catalog) dodać sekcję definiującą tryb pracy:
    <MODE NAME="assembly-6502"
    FILE="assembly-6502.xml"
    FILE_NAME_GLOB="*.{asx,asm}" />

    Tryb pracy można zmieniać albo ze status bara w aplikacji (kiedy masz już wczytany plik a z jakichś powodów się nie włączył - zdarza się kiedy różne tryby używają tych samych rozszerzeń), albo z poziomu menu "Utilities" / "Buffer Options".
    W zipie masz jeszcze mój przykładowy plik catalog. Tylko do wglądu - nie nadpisuj nim swojego :)
    • 20: CommentAuthorGonzo
    • CommentTime30 Jul 2009
     
    Scrollowanie grafy pewnie maglowano już do znudzenia, ale jakoś nie mogę znaleźć odpowiedzi na kilka pytań. Np. na czym polega scrollowanie wierszy w lewo i prawo jednocześnie (nie pamiętam nazwy dema, w którym to było, ale jakoś utkwiło mi w pamięci), albo np. scrol, w którym wiersze przesuwane są z różnymi prędkościami (to było chyba intro na jakiś zlot - efekt roju meteorytów z nałożonym tekstem) można by tak długo wymieniać (sinusy, odbicia lustrzane, płynące kolory itd.), ale na razie niech zostaną te dwa przykłady, jak to zostało zrobione? A przy okazji moich zabaw w Space Fighter, wyszedł mi scrollik jak niżej - ciekawe jest to, że krzyżyk jest jednokolorowy, a wydaje się być wielokolorowy (obrazek z katalogu g2f).

    • 21: CommentAuthorxxl
    • CommentTime30 Jul 2009
     
    zeby scrollowac obraz w lewo/prawo najlatwiej w display liscie dla wierszy ktore chcesz przesuwac wlaczyc hscroll i lms. poczytaj o tym np u zientary to wszystko sie wyjasni.
    • 22:
       
      CommentAuthorjhusak
    • CommentTime6 Apr 2010 zmieniony
     
    No i trzeba (niekoniecznie, ale wypada) używać przerwań display list (DLI), często przy współużyciu przeładowania adresu w DL. O ile przeładowanie adresu nie wymaga przerwań DL (chodzi o skrolowanie co bajt ekranu), to niestety "fine scrolling" już tak.
    W praktyce:
    jest jedna tablica pozycji i w przerwaniu VBL jest ona przeliczana (żadne tam aj-waj, kilkadziesiąt- kilkaset bajtów), wstawiane wartości do adresów poszczególnych linii, wystarczy przy umiejętnej żonglerce tylko młodszy bajt. Najmłodsze bity idą do hscroll już w przerwaniu DL. Też nie jest aj-waj, może to być jedno przerwanie przeliczaniem a potem synchronizacją - oczekiwaniem na koniec linii.

    W ogóle może to być przerwanie VBLK, tylko długie. A nawet może to być pętla bez przerwań, ale trzeba pamiętać o synchronizacji z linią ekranu.

    Należy przerwania DL synchronizować jakoś z konkretną linią na początku, bo lubią przeskakiwać, jak się tego nie zrobi.
    • 23: CommentAuthor0xF
    • CommentTime6 Apr 2010
     
    Rzeczywiście brakuje strony "jak zainstalować asembler, emulator, czym się różni XEX od OBX i ATR, jak napisać i skompilować Hello World" (z obrazkami i webcastami).

    Swego czasu dołączałem do xasma opis, jak ustawić podświetlanie składni i kompilację w kilkunastu różnych edytorach. Nie dostałem żadnego feedbacku, więc zostawiłem tylko opis dla SciTE, którego sam używam do edycji programów we wszelkich językach.

    Do asemblera 6502 trzeba przede wszystkim mnóstwo czasu i cierpliwości, co moim zdaniem znacznie ogranicza potencjalne grono nowych programistów. Sam zaczynałem od lektury książki Ruszczyca (link został już podany).
    • 24:
       
      CommentAuthorCosi
    • CommentTime6 Apr 2010
     
    Jeżeli ktoś wyrazi chęć, to mogę pomóc w przystosowaniu edytora Kate do pracy z atarowskimi asmami (podświetlanie składni, kompilacja itp.).
    • 25:
       
      CommentAuthorKaz
    • CommentTime6 Apr 2010
     
    Czy Kate to jest ta Kate:

    ->link<-

    a SciTE to tutaj:

    ->link<-

    ?
    • 26: CommentAuthor0xF
    • CommentTime6 Apr 2010
     
    Tak.
    • 27:
       
      CommentAuthorCosi
    • CommentTime6 Apr 2010
     

    Kaz:

    Czy Kate to jest ta Kate

    Ano :) Mój ulubiony edytorek :)
    • 28:
       
      CommentAuthorKaz
    • CommentTime7 Apr 2010
     
    No to widze, ze kazdy uzywa czegos innego, bo ja na przyklad fajnego Notepada++.

    Idea Foxa mi sie podoba, zeby zrobic taki krotki step-by-step dla tych, ktorzy chcieli by rozpoczac programowanie Atari na pececie i chca sobie stworzyc srodowisko. Jezeli mielibyscie chec opisac swoje metody - to mozna by z tego opracowac jeden zbiorczy tekst, w ktorym po prostu pokaze sie dostepne, a juz gotowe do pracy z Atari sposoby - jak Twoj, Foxa, Ilmenita, MaW, etc. Czytelnik bedzie mogl sobie wybrac metode mu najblizsza.
    • 29:
       
      CommentAuthorjhusak
    • CommentTime8 Apr 2010
     
    vim ?
    • 30:
       
      CommentAuthorCosi
    • CommentTime8 Apr 2010
     

    jhusak:

    vim ?

    Jesteś fanatycznym Pythonowcem? ;-D
    • 31: CommentAuthornosty
    • CommentTime8 Apr 2010 zmieniony
     
    No to ja, choc programuje bardzo rzadko mam chyba najprosciej :) Uzywam darmowego ConTEXT'a. A do kompilacji XASM'a.
    W ConTEXT mam zdefiniowane dwa polecenia podpiete pod klawisze:
    F9 - kompiluje aktualnie edytowany plik i zwraca mi wynik na ekran (zalaczam screen).
    F10 - uruchamia skompilowany xex w emulatorze.

    Czyli kompilacje i test wlasnie pisanego programu zalatwiam trzema klawiszami (bo musze jeszcze program zapisac).
    • 32:
       
      CommentAuthorpiomet
    • CommentTime14 Nov 2018
     
    Jak skonfigurować ConText aby po kompilacji uruchamiał kod w Altirze?
    • 33:
       
      CommentAuthorYosh
    • CommentTime15 Nov 2018 zmieniony
     
    Altirra ma fajny tryb "otworz w tym samym oknie"

    Tools/Options - reuse instance

    wtedy wystarczy raz ją odpalić, a inne toole poprostu odpalają ją jeszcze raz, instancja się reużywa i jest bajer.

    więc w dowolnym edytorze mam podpięte "altirra tocorobie.xex' i działa

    - dla używających scite: korzystam z takiego haka, że wynik madsa pcham przez sed 's/ (\(.*\)) ERROR/:\1:0: error/' i dzięki temu mam błędy gcc-like (po których scite umie skakać)