atarionline.pl Dobra biblioteka w C do emulacji 6502 - 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: CommentAuthorilmenit
    • CommentTime19 Mar 2014
     
    Czy ma ktoś doświadczenie z bibliotekami do emulacji 6502? Jest np. lib6502, można też ripować kody z emulatora Atari800 lub Atari++. ASAP używał kiedyś kodów z Atari800, ale jak jest napisane na stronie ma teraz własną emulację.
    • 2: CommentAuthortebe
    • CommentTime19 Mar 2014
     
    napisałem swoją, z tym że niekompletna bo używa tylko tych rozkazów które akurat były potrzebne, służy do puszczenia programu i policzenia cykli
    • 3: CommentAuthorilmenit
    • CommentTime19 Mar 2014
     
    Dla oszczędzenia czasu właśnie tego chciałem uniknąć :-)
    • 4: CommentAuthor0xF
    • CommentTime19 Mar 2014
     
    W ASAP jest dobra i jest w Ć.
    • 5: CommentAuthorilmenit
    • CommentTime19 Mar 2014 zmieniony
     
    Rzeczywiście dobra, ale po kompilacji do C wszystkie makra są rozwijane a komentarze usuwane :-/ Przez to taki kod jest bardzo nieczytelny i trudny w dalszej modyfikacji.

    EDIT:
    W sumie to Ci jest na tyle bliski C, że po ręcznej modyfikacji cpu6502.ci powinno dać go radę skompilować kompilatorem C.
    • 6: CommentAuthor0xF
    • CommentTime19 Mar 2014
     
    Po pierwsze, dlaczego chcesz edytować kod w C, a nie Ć?

    Po drugie komentarzy nie jest tam tak wiele.
    • 7:
       
      CommentAuthorjhusak
    • CommentTime19 Mar 2014
     
    @0xF, nazwałeś tak język i się dziwisz, że nikt o nim nie łyszał... a jak słyszał to nie chce pisać... Normalnie tabu...

    Ja to bym nazwał CE.

    Tak. Język CE.

    Od razu deklaracja zgodności jest...
    • 8: CommentAuthor0xF
    • CommentTime19 Mar 2014
     
    Nie dziwię się, cieszę się. :)

    Na początek polecam lekturę "Wielkie umysły programowania. Jak myślą i pracują twórcy najważniejszych języków"
    • 9: CommentAuthorilmenit
    • CommentTime19 Mar 2014 zmieniony
     
    "Po pierwsze, dlaczego chcesz edytować kod w C, a nie Ć?"

    Dlatego, że to będzie część projektu pisanego w C i Cito nie skompiluje kodu, jak będę chciał w tym pliku użyć odwołań do funkcji i zmienych zdefiniowanych w C. Cały projekt nie może być w Ci m.in. z powodu braku bibliotek, których potrzebuję użyć.

    Btw, co robi ACPU_NO_DECIMAL, tzn. jakie jest tego zastosowanie? W jakim celu można chcieć wyłączyć emulację BCD?

    EDIT: Właśnie wygooglałem acpu.c. To nie można było powiedzieć...
    • 10: CommentAuthorrudla
    • CommentTime20 Mar 2014
     
    Acpu source code seems very nice.
    If you want, you may try to use 6502 emulation that is part of Atalan package (https://code.google.com/p/atalan/source/browse/trunk/src/con6502/M6502.c)

    I fixed some errors concerning BCD and it works just fine.

    ad ACPU_NO_DECIMAL. You may want to turn off the BCD support because 6502 on NES does not support BCD.
    • 11: CommentAuthorilmenit
    • CommentTime21 Mar 2014 zmieniony
     
    I'll take a look at it.
    What is the usage of 6502 emulator in Atalan?

    Btw, are you still working on this project? This is one of the coolest languages for 6502.
    • 12: CommentAuthorrudla
    • CommentTime21 Mar 2014
     
    The library in con6502, utility that executes 6502 binaries in windows console. I use it for automated testing of the compiler.

    And yes, I am still working on the language. I redesigned significant parts of the internal working and now i'm trying to make work all that was working before :-)

    I'm currently testing it on x86 target, but I hop 6502 will be working again soon, too.
    • 13: CommentAuthor0xF
    • CommentTime21 Mar 2014
     

    ilmenit:

    Btw, co robi ACPU_NO_DECIMAL, tzn. jakie jest tego zastosowanie? W jakim celu można chcieć wyłączyć emulację BCD?

    Bo jej nie potrzebujemy, a zależy nam na rozmiarze kodu. Przykłady: odtwarzacz SAP na mikrokontrolerze, intro 64k.

    ilmenit:

    EDIT: Właśnie wygooglałem acpu.c. To nie można było powiedzieć...

    Zapomniałem. :)