atarionline.pl cc65 i joystick - 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:
       
      CommentAuthorxeen
    • CommentTime5 Aug 2011
     
    pytanie może nie dotyczy samego C jako takiego i jest ogólne , ale jaka jest zaleta używania tego rodzaju konstrukcji:

    #include < joystick.h >
    ...
    joy_install(&joy_driver);
    ....
    tutaj używamy funkcji bibliotecznych.

    coś to daje więcej oprócz opakowania, przecież można sobie wychylenie drążka + fire odczytać z rejestrów bez problemu?
    być może to lamerskie pytanie, ale nie rozumiem tego...
    • 2:
       
      CommentAuthorjhusak
    • CommentTime5 Aug 2011
     
    cc65 jest też m.in. na commodore 64 lub apple II. Przenośny kod = konieczny overhead. Ale sprawdź dla własnej satysfakcji, ile więcej kodu się generuje dla osługi joya przez bibliotekę, a ile przy dostępie do rejestrów.

    Jak chcesz mieć elastyczność na swój sposób, zrób odpowiednie makra obsługi joya i z nich korzystaj. Wówczas podmiana sposobu obsługi joya (lub innych rzeczy) z bibliotecznych np. na dostęp do rejestow jest trywialna.
    • 3:
       
      CommentAuthorxeen
    • CommentTime5 Aug 2011
     
    jeżeli chodzi o potrzebę przenośności to tak, bardziej mysłałem że odczytując to z rejestórw bezpośrednio coś jednak lamersko gubię i to nie jest tak proste jak myślałem (wymagana jeszcze jakaś tam obsługa dodatkowa i sprawdzanie tego i owego dodatkowo).

    dziwi mnie też to w TBXL np. bo przecież różnica między STICK(0) a PEEK(632) - chyba nie jest specjalnie bolesna poza potrzebą zapamiętania x adresów.

    dziękuję za info - czyli chodzi tylko o wygodę + ewentualnie przenośność.
    • 4:
       
      CommentAuthorjhusak
    • CommentTime5 Aug 2011 zmieniony
     
    Przede wszystkim przenośność, C generalnie nie jest językiem wygodnym (jak np. python)

    A to z obsługą tego i owego przy okazji to w dużych źle zaprojektowanych systemach :)
    • 5: CommentAuthorBluki
    • CommentTime5 Aug 2011
     
    Polecenie STICK jest wygodniejsze (nazwa) niż "bezpostaciowe" PEEK. Na pewno też chodziło o zachowanie zgodności z Atari BASIC-em.
    Poza tym STICK(0) w Atari BASIC-u działa szybciej niż PEEK(632). W TBXL też, ale tu różnica nie ma znaczenia.