26

Odp: benchmark CC65

Peek() i Poke() w Action! są funkcjami, które wymagają przekazania parametrów, odłożenia na stos adresu powrotu i na koniec posprzątania po sobie. Natomiast określanie adresu położenia zmiennej przy jej deklaracji jest dużo szybsze, bo sprowadza się do zwykłego lda; sta.

Zawsze mam rację, tylko nikt mnie nie słucha.

27

Odp: benchmark CC65

Hmm, że się tak przyczepię do temata. Czy ktoś może ma jakieś własne IDE na PC do sprawnego pisania programów w Action? Jakieś syntaxy do popularnych edytorów tekstów + skrypty konwertujące w locie dla emulatora, tak jak się ładnie da zintegrować np. notepad++ z madsem?

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

28

Odp: benchmark CC65

Dely, pewnie jeszcze cos takiego nie powstało, w nastepnej wersji mads bedziesz mial petle while, for i test (odpowiednik if), może Ci to ułatwi pisanie w asm

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

29

Odp: benchmark CC65

Dely: 5 minut z helpem do twojego ulubionego edytora i sam se zrobisz syntaxa. Najprostszy z windowsowych pod tym względem wydaje się EditPlus.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

30

Odp: benchmark CC65

No czaję, syntax to najmniejszy problem. Rozchodzi się o jakieś gotowe self-made IDE, żeby można było se pisać w ólóbionym edytorze i potem jakąś kombinacją wywołać bata, który zrobi atra z tym i odpali emulca.

Czy możecie wyjaśnić, Stirlitz, dlaczego wasz służbowy adres stirlitz@rsha.gov.de ma aliasa justas@gru.su?
Nie czytam PM. Proszę używać e-mail.

31

Odp: benchmark CC65

Noo... Gdyby znalazł się autor (roz-)pakowarki ATRów obsługiwanej z linii komend, to wazeliny dostałby co nie miara...

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

32

Odp: benchmark CC65

Na stronie Bob(er)a http://sourceforge.net/projects/zooey jest taki wynalazek napisany  przez niego na potrzeby *nixów o nazwie franny. Dzięki MinGW bardzo ładnie kompiluje się na M$.

Byl hrozný tento stát, když musel jsi se dívat, jak zakázali psát a zakázali zpívat,
a bylo jim to málo, poručili dětem modlit se jak si přálo Veličenstvo Kat.

33

Odp: benchmark CC65

wracając do tematu, program w cc65 po optymalizacji, czyli zamiast "int" jest teraz "unsigned int", rezygnacja z wyrzucania na ekran jakichkolwiek tekstow

cc65 (6502):  2453 fps

Action!:  1015 fps

asm (mads):  1009 fps (automatyczne generowanie kodu dla .WHILE i .TEST, optymalizacja dla skoków warunkowych JNE, JEQ, JCC itd.)

wniosek: CC65 jest wolny, !Action szybki jak assembler

p.s.
następny przyklad programiku w mads z nowymi dyrektywami  (i c++) , pytanie, co ten program wyswietli ?:)

;int main() {
;    const int WIERSZ = 5;
;    const int KOLUMNA = 15;
;    int j, i = 1;
    
    org $2000

    .var wiersz = 15, kolumna=20, j, i=1 , hlp .byte
    
;    while(i <= WIERSZ)
    .while .byte i <= wiersz
;     {
;       cout << setw(KOLUMNA - i) << '*';

    lda kolumna    ; setw(KOLUMNA - i)
    sub i
    sta 82        ; lewy margines

    lda #$9b    ; cout << setw(KOLUMNA - i)
    jsr $f2b0

    lda #'*'    ; cout << '*'
    jsr $f2b0


;       j = 1;
    mva #1 j

;       while( j <= 2*i-2 )
    lda i
    asl @
    sub #2
    sta hlp

     .while .byte j <= hlp
;        {
;         cout << '*';
      lda #'*'
      jsr $f2b0

;         j++;
      inc j
;        }
     .endw
;       cout << endl;

;       i++;
    inc i
;     }
    .endw
    
;    return 0;                     
;}
    mva #$02 82    ; domyslna wartosc komorki 82

    mva #$c2 712
    jmp *
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

34

Odp: benchmark CC65

tebe napisał/a:

jsr $f2b0

Myślałeś może kiedyś, żeby się nauczyć programować na Atari? To fajna sprawa, mówię ci :P

KMK
? HEX$(6670358)

35

Odp: benchmark CC65

Jak zwykle marudzisz. To jest zysk na czasie. Co jest sprawą kluczową dla wyświetlania tekstów zwłaszcza przy benchmarkach, gdy trzeba wykazać, że MADS z jego "makrami" rodzaju "while" jest jednak szybszy od Action!. :P

Zawsze mam rację, tylko nikt mnie nie słucha.

36

Odp: benchmark CC65

żaden z testowanych programow w C i ASM nic nie wyswietlał, wiec test był uczciwy co do ramki

$f2b0 lubię i będę je używał wtedy kiedy będę miał ochotę i żadna drakońska konserwa nie ma tu nic do gadania, w końcu mniejszość się nie liczy

"makra" w rodzaju while, test, switch mają w założeniu ułatwić życie tym którzy nie czują się pewnie w asm, ostatecznie przyspieszyć proces tworzenie kodu

p.s.
Drac030 mam nadzieję że ten kij w Twojej dupie nie siedzi zbyt głęboko, da się to jeszcze operować ?

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

37

Odp: benchmark CC65

He, he, jeśli ktoś ma gdzieś kij, to na pewno nie ja, panie Większość. A programowania mógłbyś się nauczyć swoją drogą, to nie boli :P

KMK
? HEX$(6670358)

38

Odp: benchmark CC65

łoooostro. ;>

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.