C64Power Forum
Ogólne => Forum Ogólnodyskusyjne => Wątek zaczęty przez: KB777 w 23 Maja 2016, 14:42
-
Acorn miał kiedyś "Tube interface" w swoich kompach, gdzie można było podłączyć drugiego proca (np. szybsze 65c02). Ale też na ARMowych Acornach zrobiono całkiem sprytny emulator 6502. Jakiś czas temu w kręgach fanów Acorna udało się ten stary emulator 6502 zrewerseengineerować (ale słowo LOL) i przeportować na RPi.
120 MHz przy 1 GHz (na tym Broadcomie z RPi). Nieźle ;) Czyli jest szansa, że poleci na 250 MHz na nowych > 2 GHz procach.
Info: http://stardot.org.uk/forums/viewtopic.php?f=3&t=10421&p=127347#p127347
-
Cos to im chyba niezbyt dobrze wychodzi
Nie wiem tylko czy to z programistami , czy z ARM-em jest coraz gorzej ?
Oryginalny emulator acorna na ARM osiagal rating 1/4 , czyli gdyby go teoretycznie zapuscic na 1GHz to powinien osiagnac wydajnosc 6502 z 250 MHz, a nie z 120 MHz. ::)
Co ciekawe dzisiejsze najlepsze emulatory 6502 na ARM napisane w asemblerze osiagaja rating ok. 1/8, a w C ok 0.6 predkosci tych w asemblerze.
Jednym slowem jest jeszcze sporo do poprawienia, a bylo juz lepiej :D
-
Nie od dzis wiadomo, ze MHz nie jest bezwzgledna jednostka wydajnosci procesora.
-
przy takich prędkościach to wązkim gardłem jest I/O, pamięć. karty turbo z prockiem 20MHz są tak samo szybkie jak podkręcony procek do 4Mhz w przypadku dostępu do I/O.
Nie widzę za bardzo sensu gonić procka na ARM z płytą od c64, za to zrobić płytę nową z pozdziałem szyn to inna para kaloszy.
-
Cos to im chyba niezbyt dobrze wychodzi
Nie wiem tylko czy to z programistami , czy z ARM-em jest coraz gorzej ?
Oryginalny emulator acorna na ARM osiagal rating 1/4 , czyli gdyby go teoretycznie zapuscic na 1GHz to powinien osiagnac wydajnosc 6502 z 250 MHz, a nie z 120 MHz. ::)
Co ciekawe dzisiejsze najlepsze emulatory 6502 na ARM napisane w asemblerze osiagaja rating ok. 1/8, a w C ok 0.6 predkosci tych w asemblerze.
Jednym slowem jest jeszcze sporo do poprawienia, a bylo juz lepiej :D
1/4 ? Wot ???
-
przy takich prędkościach to wązkim gardłem jest I/O, pamięć. karty turbo z prockiem 20MHz są tak samo szybkie jak podkręcony procek do 4Mhz w przypadku dostępu do I/O.
Nie widzę za bardzo sensu gonić procka na ARM z płytą od c64, za to zrobić płytę nową z pozdziałem szyn to inna para kaloszy.
W sumie to i tak tylko sztuka dla sztuki. Co nam po gigahercowym nawet 6502 ;) Jeszcze Amiga i Apollo core - można na siłę się doszukiwać sensu. Tyle że i tak do pracy tylko PC...
-
Wot ?
Bez problemu wystarczy tylko dobrze przemyslec program. 6502 wykonuje rozkaz w 2 do 7 cykli , co przy ratingu 1/4 daje nam od 8 do 28 instrukcji ARM, ktory przy okazji jest bardzo podobny (wrecz wzorowany na 6502) np. Ma praktycznie takie same flagi w cpu , ktore wlasciwie zachowuja sie tak samo. Teraz wystarczy tylko dobrze przemyslec dekodowanie rozkazow i wyciagnac jako pierwsze te ktore czesciej sa wykonywane i bez problemu mozna osiagnac te wydajnosc.
-
znowu pierdolisz o czym nie masz bladego pojęcia :(
-
Wot ?
Bez problemu wystarczy tylko dobrze przemyslec program. 6502 wykonuje rozkaz w 2 do 7 cykli , co przy ratingu 1/4 daje nam od 8 do 28 instrukcji ARM, ktory przy okazji jest bardzo podobny (wrecz wzorowany na 6502) np. Ma praktycznie takie same flagi w cpu , ktore wlasciwie zachowuja sie tak samo. Teraz wystarczy tylko dobrze przemyslec dekodowanie rozkazow i wyciagnac jako pierwsze te ktore czesciej sa wykonywane i bez problemu mozna osiagnac te wydajnosc.
"Dobrze przemyśleć" to chyba Ty musisz - ale to co piszesz. Nnajlepiej sam zrób taki emulator, który na tych pierwszych ARMach (jak były w Acornach) osiągną 1/4 wydajności 6502 (licząc "na MHz") i nie na NOPach.
Zresztą o czym mówić - jak ktoś fantazjuje, że lista rozkazów ARM jest podobna ("wręcz wzorowana") na 6502... sam tylko wystawia sobie świadectwo.
-
KB777 swiadectwo to ty sobie wystawiles.
Ciekawe ze np. o ratingu 1/4 wspomina np. BigEd z forum 6502.org, znany z wiedzy o BBC micro, a przy okazji czlowiek ktory TUBE zaimplementowal w FPGA ;D
lhttp://forum.6502.org/viewtopic.php?f=8&t=1603 (http://lhttp://forum.6502.org/viewtopic.php?f=8&t=1603)
-
tak jak pisałem zero wiedzy tylko gogle.
-
Ciekawe ze np. o ratingu 1/4 wspomina np. BigEd z forum 6502.org [...]
lhttp://forum.6502.org/viewtopic.php?f=8&t=1603 (http://lhttp://forum.6502.org/viewtopic.php?f=8&t=1603)
OK, widać że muszę Ci przetłumaczyć tekst za angielskiego (to z tego linku zresztą):
"I'm not sure, but I think the 6502 emulator originally written by Acorn for the Archimedes had a performance about 1/4 the clock speed of the ARM. (It would be written in assembly.) (Edit: I don't believe that performance any more.) "
"Nie jestem pewien, ale wydaje mi się że emulator 6502 napisany przez (firmę) Acorn dla (komputera) Archmiedesa miał wydajność około 1/4 prędkości 6502 przy tym samym zegarze. (Był napisany w assemblerze). (Aktualizacja: jednak w aż taką wydajność już nie wierzę)".
Reszty nie będę komentował, bo też nie doczytałeś...
-
pierwszy z brzegu fakt
cld
adc #11
sed
adc #11
bvc....
no i teraz wszystkie flagi są takie same jak w 6502 :P
-
pierwszy z brzegu fakt
cld
adc #11
sed
adc #11
bvc....
no i teraz wszystkie flagi są takie same jak w 6502 :P
Pojechałeś ;)
-
no jakby homocity zakodował chociaż jeden rozkaz z akumulatorem na jajach , tfu tfu tfu ... z 32 bitowym akumulatorem to by zobaczył jaka jest różnica 8 a 32 z flagą V, którą też musisz emulować
-
Proponuje abys sobie porownal caly status register ARM i 6502
W obu sa najczdsciej wykozystywane flagi N,Z,C,V a dodawanie w BCD jest latwo zasymulowac i tym bardziej ze jesli chce sie zacowac rating 1/4 to dla zasymulowania 1 instrukcji procesora 6502 adc#11 mamy do dyspozycji 8 instrukcji ARM-a. Przy okazji arm ma taka wlasciwosc ze np. Sprawdzenie warunkow moze byc wykonane bez dodatkowych cykli procesora wiec 8 cykli to az za duzo dla korekcji BCD.
-
kolejne brednie.. widać że gogle wysiadło z przykładem. Wystarczy poczytać jak złożonym jest rozkaz adc w trybie D aby wiedzieć że kilo koksu to mało co wziąłeś.
-
kolejne brednie.. widać że gogle wysiadło z przykładem. Wystarczy poczytać jak złożonym jest rozkaz adc w trybie D aby wiedzieć że kilo koksu to mało co wziąłeś.
Jeszcze raz ci odpowiem bo widze ze meczysz sie z tym dodawaniem w BCD juz kilka miesiecy.
Tak jest strasznie "skomplikowane" trzeba tylko binarnie dodac dwie wartosci i jesli nizszy NIBEL jest wiekszy niz 9 lub nastapilo przeniesienie z niego dodac 6, a ze starszym NIBBLEM zrobic analogicznie tylko dodac $60 .
Strasznie to skomplikowane i wymaga ze 1 - 5 instrukcji zaleznie od proceora oraz wielu miesiecy na zakodowanie ;D
-
kiedyś zacznij używać mózg.
BCD and non BCD values:
Since only nibble values from 0 to 9 are valid in BCD, it's interesting to see what happens when using A to F:
$00+$0F=$15 (an easy way to convert a hex-digit into BCD...)
$00+$1F=$25 (can be claimed as being "ok" since 10+$0F=25)
$10+$1F=$35 ("ok")
$05+$1F=$2A (a non-BCD result, still somewhat "ok" since 5+10+$0F=20+$0A)
$0F+$0A=$1F ("ok", since $0F+$0A=$0F+10)
$0F+$0B=$10 (now, this is plain bullshit!)
-
Nie rozumiem jak mozna sie o to klocic z czlowiekiem, ktory napisal kompletna emulacje mikrokomputera 6502+2x6522, cycle exact... ja bym nie mial odwagi.
-
Ups $0F,$1f,$0A,$0B a coz to za liczby w kodzie BCD ? ;D
http://eff10.internetdsl.tpnet.pl/programowanie/kurs_sc/liczby/pages/09.htm (http://eff10.internetdsl.tpnet.pl/programowanie/kurs_sc/liczby/pages/09.htm)
Wiesz jak zmieszasz gowno ze smietana to czekolady z tego nie zrobisz.
-
Zreszta nawet jak bedziesz na sile probowal dodawac wartosci z poza zakresu BCD to mikroprocesor to tylko glupia maszyna ktora postepuje wedlug zadanego algorytmu i nic wiecej. A algorytm ktory przedstawilem jest od ponad 30 lat stosowany np. w procesorach intela rozkaz DAA ktory byl juz w 8080 i nie slyszalem aby ktos sie na to skarzyl ;)
-
Nie rozumiem jak mozna sie o to klocic z czlowiekiem, ktory napisal kompletna emulacje mikrokomputera 6502+2x6522, cycle exact... ja bym nie mial odwagi.
Ale czyta się fajnie! Nawet hobocti-emu zaczął się radykalizować język, chociaż do smakowitych kąsków Kisiela mu jeszcze daleko.
Tylko popcornu nie mam...
-
homocity nie rozumie że emulacja pełna procka to także myki które używają programiści do:
$00+$0F=$15 (an easy way to convert a hex-digit into BCD...)
gadanie z gościem który nie zakodował nic w arm'ie , który nie rozumie jak działają flagi w 32bitach... tępy chuj ale googla aż miło :)
Homocity, homocity
You promised only lies
Laughter, laughter
All I hear and see is laughter
Laughter, laughter
Laughing at my cries
...
uczcijmy minutą ciszy zbłaźnionego poraz kolejny HomoCity :)
-
Wiesz k. widze ze wreszcie zrozumiales jakim nieukiem i uciekasz w agresje. ;D
To ze cos tam przepisujesz bo darmowych symulacji. 6502 na ARM jest kilka, a jak trzeba dopisac jeden rozkaz to pierdolisz sie z tym kilka miesiecy i dalej g... Swiadczy tylko jakim jestes programistom ;;)
A teraz do myslacych wiec k. Nie czytaj.
CPU to tylko glupi automat , nie siedza w nim zadne krasnoludki tylko tranzystory ktore np. Przelaczaja sie zawsze wedlug jakiegos algorytmu i mozna to przewidziec np. na podstawie danych lub poprzednich wynikow. To sie nawet nazywa "czarna skrzynka" jesli program ktory ma go sysmulowac robi cos innego to znaczy ze program lub uzyty algorytm jest bledny. A blad moze byc spowodowany nie przez krasnoludki tylko "programiste " do dupy ;;)
-
CO by o kisielu nie gadac, jest jednak lepszym "programistom" niz ty elektronikiem, jego sprzet mozna dotknac i zobaczyc w dzialaniu :) no i ludzie jego sprzet... zwyczajnie chca. Watek niebawem zamykam, argumenty vs gowno nie sa nikomu potrzebne.
-
Najlepiej niech pokaze ten fragment kodu z ktorym sobie nie radzi, to moze czlowiek "ktory nigdy nie napisal niczego na ARM-e" znajdzie mu blad ;)
-
no i w końcu doszliśmy do punktu w którym , muszę zmartwić homocity.
To ja trolluje .... a ty jesteś zwykłym chujem który nawet nie wie o czym pierdoli.