326

panowie, zlejcie to co pisze xxl na temat trybu emulacji (a nie mowilem wczesniej ze jakis idiota przyczepi sie do tego ze w docach wdc glupio to nazwano? no i padlo na xxl).
to co robi xxl to czysty trolling, skierowany na rozbudzenie emocji, w dodatku negatywnych. odpisujac mu na posty po prostu karmicie jego ego...

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep

327 Ostatnio edytowany przez jury (2012-11-22 09:47:45)

Gdzie tu przycisk: "Lubie to" ??? :D

328

przez ostatnie lata wszystkie scrolle w demach były jak "love parade"...może czas wrócić do początku lat 90-tych gdzie scrolle naładowane były wrzutami, fuckami i innymi emocjami? ;)

gep/lamers^dial

329

Revenge of XXL (Magnus) ?

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

330

wieczor napisał/a:

Jak już się czyta to warto rozumieć rzeczywiste znaczenie pewnych słów, to pozwala nam ocenić, że ktoś napisał bzdurę.

pewnie jestes lepszym ekspertem od tych z firmy produkujacej procki ale ja nie, ja nie mam powodu im nie wierzyc. a pisza ze ich procek ma dwa tryby - tryb 16-bitowy natywny i tryb emulacji 6502.


wieczor napisał/a:

Pytania kontrolne:

dlaczego nawiazujesz do emulacji programowej?

http://atari.pl/hsc/ad.php?i=1.

331 Ostatnio edytowany przez wieczor (2012-11-22 11:35:30)

Emulacja sprzętowa od programowej różni się tym, że algorytmy emulujące są wbudowane w sprzęt a nie są uruchomionym na nim programem. Pudło. W tym wypadku nie mamy do czynienia ani z jednym ani z drugim. W rzeczywistości różnica jest tylko w wydajności, bo sprzętowa emulacja jest też w zasadzie programem - tylko hardcodowanym :)

A co do ekspertów z firmy produkującej procki - w takiej firmie pracuje wielu ludzi, jedni są ekspertami od procków i je projektują, a inni są ekspertami od marketingu i robią to co umieją najlepiej - pieprzą głupoty :D

The problem is not the problem; the problem is your attitude about the problem

332

wieczor napisał/a:

A co do ekspertów z firmy produkującej procki - w takiej firmie pracuje wielu ludzi, jedni są ekspertami od procków i je projektują, a inni są ekspertami od marketingu i robią to co umieją najlepiej - pieprzą głupoty

:D to teraz nie wiem komu wierzyc. Tobie czy producentowi.

ciagle mam jednak watpliwosci a czy kod $a9,$00,$60 (lda #0: rts) zadziala na 65816 w trybie emulacji 6502 i po przelaczeniu w tryb natywny tak samo? czy trzeba 65816 jeszcze jakos skonfigurowac do wykonania tego kodu tak jak na 6502?

http://atari.pl/hsc/ad.php?i=1.

333

Może nie zadziałać tak samo, ze względu na inny tryb pracy. A wierzyć masz swojemu zdrowemu rozsądkowi :) Skoro rozkazy są wykonywane bezpośrednio przez dekoder rozkazów procesora i nie ma tu jakiejś tłumaczącej warstwy (a ilość cykli na to nie wskazuje) to nie jest to żadna emulacja. Emulacja prawdopodobnie uwzględniłaby nielegale ;)

The problem is not the problem; the problem is your attitude about the problem

334

Trudno powiedzieć, czy w WDC pracuje ktoś jeszcze oprócz pana Billa Menscha. Chodzą słuchy, że kiedyś miał sekretarkę. ;)

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

335

wieczor napisał/a:

1. Czy rozkazy 6502 znajdują się na liście rozkazów 65816 i mają te same opcody? Pomijam te które nie działają oczywiście.

a to sie liczy jak na jednej i drugiej lisie sa ale sie inaczej wykonuja?

http://atari.pl/hsc/ad.php?i=1.

336

Wykonują się inaczej ale jest to uzależnione od trybu pracy. Należy właściwie rozumieć słowo emulacja - czy 816 wykonuje dodatkowe operacje w trybie 8-bitowym? Raczej nie, bo by to zaowocowało zwiększoną ilością cykli.

The problem is not the problem; the problem is your attitude about the problem

337

wieczor napisał/a:

Należy właściwie rozumieć słowo emulacja - czy 816 wykonuje dodatkowe operacje w trybie 8-bitowym? Raczej nie, bo by to zaowocowało zwiększoną ilością cykli.

skads sie bierze to 99% zgodnosci w trybie emulacji 6502 :) gdyby nie zadbali o emulacje z prawidlowa iloscia cykli na rozkaz to by bylo calkiem kiepsko.

http://atari.pl/hsc/ad.php?i=1.

338

Przeczytaj sam co napisałeś. To się kupy nie trzyma. To nie jest pentium, żeby mógł jeszcze się bawić w emulację cykli - ten procesor jest po prostu za słaby, żeby cokolwiek emulować. Dlatego nie emuluje - instrukcje 6502 i tryb 8-bitowy są częścią jego logiki. 99% zgodności bierze się z różnic pomiędzy nimi - gdyby ktoś robił emulację, przypuszczalnie byłaby ona niemal 100%. Na a800win nielegale działają? Działają.

The problem is not the problem; the problem is your attitude about the problem

339

wieczor: daj.se spokoj. nie czujesz sie jakbys strzelal baranka o sciane?

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep

340 Ostatnio edytowany przez jury (2012-11-22 13:24:01)

Ty też przeczytaj jeszcze raz. To:

http://www.atari.org.pl/forum/viewtopic … 24#p159724

:P

Edit:
Ech, jellonek mi się tu wciął :P

341

wieczor napisał/a:

99% zgodności bierze się z różnic pomiędzy nimi - gdyby ktoś robił emulację, przypuszczalnie byłaby ona niemal 100%.

"niemal" to pewnie w okolicach 99% ?

http://atari.pl/hsc/ad.php?i=1.

342 Ostatnio edytowany przez grzeniu (2012-11-22 14:33:07)

xxl napisał/a:

skads sie bierze to 99% zgodnosci w trybie emulacji 6502 :)

Ten brakujący 1% to narzut z uwagi na nielegale ;) ;) ;)

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

343

Aby zrozumieć skąd się wzięły nielegale i dlaczego działają na różnych 6502 , dlaczego niektóre są stabilne a inne nie i dlaczego nie działają na 816 trzeba zrozumieć jak ogólnie działają automaty formalne i ich szczególny przypadek którym jest dekoder rozkazów procesora.

Otóż przypuśćmy, że dostałem polecenie zaprojektować automat który będzie parsował określony zbiór słów. Najpierw projektuję stany i przejścia aby te słowa były parsowane. Jednak dostaję wówczas ciąg automatów dla każdego słowa osobny. Muszę je teraz zintegrować razem tworząc jeden. Robię to przez wyszukiwanie podobieństw w parsowanych rozkazach. Uzyskanie sytuacji gdzie automat będzie parsował wyłącznie zadane w specyfikacji słowa może być dość spory (dużo bramek) gdyż muszę zadbać o ich każdorazowe terminowanie. Krótko mówiąc - pozbycie się nielegali powstających przypadkowo (mój automat parsuje zadane rozkazy + coś jeszcze co nie było przewidziane) kosztuje dodatkowy wysiłek i bramki, czyli podwyższa koszt projektu. Więc to olewam, automat działa jak trzeba dla wyspecyfikowanego słownika, a to że umie zrobić coś jeszcze mnie nie obchodzi - nie ma tego w specyfikacji.

Jeśli za czas jakiś firma zechce zrobić nową wersję procesora powiedzmy rozszerzoną o nowe możliwości i rozkazy, dekoder zostanie zaprojektowany na nowo - jednakże mimo tego, że nowy słownik zawiera wszystko to, co poprzedni, na skutek dodania nowych rozkazów optymalizacja automatu będzie biegła innymi ścieżkami, więc również prawdopodobnie wystąpią nieprzewidziane instrukcje, ale już inne.

I tu dochodzimy do wyjaśnienia - rozkazy spoza specyfikacji działają na tych 6502 które były idealną kopią oryginału. Bez projektowania - kropka w kropkę. Jeśli część z nich nie działa, tzn. że co najmniej dekoder rozkazów był zaprojektowany niezależnie. Stąd sie biorą nielegale stabilne i niestabilne. Jednak stabilność jest co najmniej ryzykowna, gdyż to że się powtórzyły w innej wersji tego samego procesora to przypadek - po prostu optymalizacja dekodera była minimalna albo częściowo przebiegła w ten sam sposób. Natomiast w przypadku nowego modelu procesora, który nie ma być kopią a jedynie ma być kompatybilny, sytuacja w której nielegale się powtórzą jest już wybitnie mało prawdopodobna - tym bardziej jeśli te same kody będą wykorzystywać nowe, legalne rozkazy będące rozszerzeniem. Powstaną za to na pewno nowe nielegale :) I tyle.

Jeśli programista będzie się trzymał specyfikacji, to jego oprogramowanie będzie działać niezależnie od postępu technicznego - nowe modele procesora wykonają kod. W przypadku inteli tych skoków jest dość sporo : 8086, 286, 386, 486, Pentium - każdy różnił się znacząco i miał nowe rozkazy, a to znaczy, że nielegale z poprzedniego modelu prawie na pewno nie zadziałają (może jeden czy dwa, przypadkowo).

The problem is not the problem; the problem is your attitude about the problem

344 Ostatnio edytowany przez Pecus (2012-11-22 16:40:51)

A ja widzę w najstarszej, jaką znalazłem dokumentacji 6502 w miejscach rozkazów niepublikowanych informację, że są one "zarezerwowane do przyszłego wykorzystania". Taki procesor 65816 to po prostu to przyszłe wykorzystanie. Wszystkie rozkazy 6502 mają w nim takie same opcody i takie samo działanie, a w "dziury" (które XXXL traktuje jak rozkazy) zostały wpasowane rozkazy rozszerzające możliwości 6502.
Zgodne z dokumentacją programowanie nie powoduje problemów z wykorzystaniem tych (przewidzianych przez projektantów) rozszerzeń.

Hm... co jest z tym zegarem, że mój post napisany parę minut po 16:00, jest postem napisanym godzinę później i wygląda na to że powinienem był czytać wywód wieczora, a jednak nie miałem szansy go przeczytać, bo go nie było... Nie dziwiłbym się, gdyby nie to że jego post ma dobry czas, a wydawało mi się, że wszystko jest na aa przesunięte o godzinę, więc nie interweniowałem ;)

Bla bla bla bla, bla bla bla. Bla bla bla - bla - bla. Blabla bleee.

345

Dokładnie. Gdyby automat został wykonany bez uwzględniania ekonomii, wykonanie takiego rozkazu nie powodowałoby nic lub błąd. To że coś się jednak dzieje to wynik konstrukcji automatu a nie zamierzone działanie konstruktorów.

The problem is not the problem; the problem is your attitude about the problem

346

Co nie zmienia stanu, że mało kto wymienia procesor w ATARI i jeśli już, to na inne 6502 wydłubane jakiegoś "trupa" lub też zmienia na "ten mniej zgodny". W pierwszym przypadku można z dużą dozą pewności liczyć na zachowanie identyczne z producenckim, w drugim na niezgodność z oryginałem bo jednak zmieniamy procesor na inny typ.

Tak czy inaczej:
XXL nie popełnia IMHO żadnego nagięcia realiów do swoich tez. Po prostu jego "nielegale" bez dokumentacji zawsze tak działają jak zbadał. Jeśli nie działają, to poprawi zestawienie i będzie korzystał z tych bardziej stabilnych.

Większość z nas korzysta z takich "nielegalnych" specyfikacji. A to jakieś turbo w stacji, turbo w kaseciaku, dziwne nieudokumentowane tryby graficzne.

Czemu akurat te "nielegale" wzbudziły taki wasz fanatyzm na temat zgodności z oryginałem ?

347 Ostatnio edytowany przez jellonek (2012-11-22 16:23:17)

Pecus: problem w tym, ze xxl "nieco inaczej" rozumie to "zarezerwowane do przyszlego wykorzystania".
inna sprawa ze xxl w dupie ma spece 6502, bo dla niego nie liczy sie 6502, tylko 6502C.
a to ze co w docach napisane przyjmuje wybiorczo, tj. to co mu lepiej pasuje - to juz po prostu jego sprawa, jego wolny wybor.

BartoszP: gdyby nie "nielegalne" podejscie do generowania grafiki - sporej ilosci trybow bysmy nie znali, w tym m.in. rybagsowego...
(co nie zmienia faktu, ze zastosowanie tego trybu wiaze sie z... brakiem obrazu na "dzisiejszych" wyswietlaczach)

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep

348 Ostatnio edytowany przez grzeniu (2012-11-22 16:31:54)

jellonek napisał/a:

xxl w dupie ma spece 6502, bo dla niego nie liczy sie 6502, tylko 6502C.

Szkoda, że nie 65C02 ;)

Programowanie zgodne ze specyfikacją sprzętu to jedno a chęć pokazania pewnych nie do końca potrzebnych tricków z użyciem nadużyć to druga, lecz piekielna strona mocy ;) za którą słono zapłaci zarówno twórca jak i przyszli użytkownicy. Pogodzić jednego z drugim się zwyczajnie nie da. Cieszmy się, że we współczesnych procesorach używanie illegal opcodes jest niemożliwe :) Peace.

STYMulator JIL ST YM2149 mjuz:k @ gnu/linux
SIUP (SIo2Usb2Pc) - SIO2PC USB Edition
PIN ready logo
3M / InD: ... na kasetach były zabezpieczenia w postaci tzw. "mikropierdnięcie" ...

349

grzeniu napisał/a:

Cieszmy się, że we współczesnych procesorach używanie illegal opcodes jest niemożliwe :) Peace

Heh, też nie do końca prawda :) Po prostu nie znalazł się chłopek-roztropek, który by je dodał do narzędzi programistycznych :) Gdy nikt nie dodał illegal opcodes do assemblerów dla Atari, też by nikt ich nie używał :)

The problem is not the problem; the problem is your attitude about the problem

350

Pecus napisał/a:

Hm... co jest z tym zegarem, że mój post napisany parę minut po 16:00, jest postem napisanym godzinę później i wygląda na to że powinienem był czytać wywód wieczora, a jednak nie miałem szansy go przeczytać, bo go nie było... Nie dziwiłbym się, gdyby nie to że jego post ma dobry czas, a wydawało mi się, że wszystko jest na aa przesunięte o godzinę, więc nie interweniowałem ;)

Wszystko sie zgadza, Wieczór zgodnie z wątkiem z ostatnich dwóch odcinków "Fringe" wszedł w posiadanie chipu Obserwatorów (zwanych Najeźdźcami) i wyznaczył linie czasu dla każdego z ludzi na forum. Przez to manipuluje czasem a jednocześnie przez portale wędruje i postuje w czasie przeszłym ;)

gep/lamers^dial