atarionline.pl Test Driven Development na Atari - 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
      • CommentTime11 Dec 2013 09:12
       
      Chciałbym używwać testów jednostkowych w programowaniu na Atarce - tym bardziej, że używam eclipse z pluginem JAC'a jako IDE - mogę sobie dopisywać w javie takie testy.
      Strasznie mnnie denerwuje testowanie ręczne - idzie na to bardzo dużo czasu, testy mogą się zwrócić zwłaszcza jak się optymalizuje kod.
      Czy da się jakim narzędziem zrzucać zewnętrznie pamięć z jakiegoś emulatora w okreslonym czasie (np. 50 ms po uruchomieniu); najlepiej obszary pamięci; Czy jest to kolejne "napisz se"?
      dzięki
      • 2: CommentAuthormono
      • CommentTime11 Dec 2013 10:12
       
      Chodziło mi to po głowie jakiś czas temu.
      Używam atari800, ale póki co nie ma możliwości robienia takich zrzutów.
      Ale tak sobie myślę, że chyba najprościej byłoby dodać opcję -monitor z cli, która wchodziła by do monitora a wtedy mógłbyś sobie wydawać polecenia monitora i odbierać wyniki przez zwykłe stdin/stdout w dowolnym programie. O ile to będzie wystarczające.
      Inna (bardziej zaawansowana możliwość) to wystawienie interfejsu jakiegoś przez który emulator informowałby o tym co się dzieje z maszyną (takie JPDA). Obawiam się, że to znacznie spowolniło by emulację, ale na pewno ułatwiło by testowanie automatyczne.
      • 3: CommentAuthormono
      • CommentTime11 Dec 2013 11:12 zmieniony
       
      A tu masz patcha na wersję z CVS jakbyś miał ochotę się pobawić.
      Odpalasz w sposób następujący:
      $ atari800 -turbo -monitor


      Edit: Ja kod konfiguruję sobie z przełącznikami:
      $ ./configure --enable-monitorbreakpoints --enable-monitorprofile --enable-monitortrace --enable-seriosound


      Edit 2: Aplikacja łaty:
      $ cvs -d:pserver:anonymous@atari800.cvs.sourceforge.net:/cvsroot/atari800 login
      $ cvs -z3 -d:pserver:anonymous@atari800.cvs.sourceforge.net:/cvsroot/atari800 export -r HEAD atari800
      $ patch -p0 <atari800-20131211-monitor-patch.diff
      • 4: CommentAuthor0xF
      • CommentTime11 Dec 2013 12:12
       
      Plik można zapisać na urządzenie H:.

      Breakpoint można ustawić:
      dta 2
      • 5:
         
        CommentAuthorxeen
      • CommentTime11 Dec 2013 20:12
       
      dzięki za sugestie i podpowiedzi.
      interfejs na zewnątrz to oczywiście marzenie.....
      • 6:
         
        CommentAuthorpirx
      • CommentTime13 Dec 2013 16:12 zmieniony
       
      Altirra zasysa plik NAME.atdbg, w którym można umieścić polecenia dla monitora - chyba tam jest wszystko, czego potrzebowałbyś.

      W WUDSN możesz sobie poustawiać breakpointy jak w javie.
      • 7:
         
        CommentAuthorxeen
      • CommentTime13 Dec 2013 16:12
       
      tak, i w tym kierunku właśnie idę.
      • 8:
         
        CommentAuthorpirx
      • CommentTime13 Dec 2013 23:12
       
      Podziel się proszę wiedzą, jak Ci już będzie śmigać!
    1.  
      @pirx
      A rozpracowałeś już jak te breakpointy stawiać? Tzn. stawiać w Eclipse umiem, ale Altirra nic sobie z nich nie robi :)
      • 10: CommentAuthorwieczor
      • CommentTime14 Dec 2013 06:12
       
      Też miałem ten problem. Tzn. czasem sobie robi, czasem nie, nie wiem od czego to zależy. Czasem ignoruje podpięcie źródła z zewnątrz. A czasem się to okno pokazuje.
      • 11:
         
        CommentAuthorpirx
      • CommentTime14 Dec 2013 09:12 zmieniony
       
      mi pomógł update altirki i madsa do najnowszych wersji i teraz działa za każdym razem.
      JAC sprawdzał, czy Altirra dobrze rozpoznaje ścieżkę dostępu - najłatwiej spróbować wczytać coś z konsoli debuggera z bieżącego katalogu.
      • 12:
         
        CommentAuthorpirx
      • CommentTime19 Dec 2013 23:12
       
      Aaaa, jeszcze jedno - wydaje mi się, że breakpointy zatrzaskują się tylko na wierszach zawierających faktyczne mnemoniki, na labelkach nie :]