7,226

(273 odpowiedzi, napisanych Programowanie - 8 bit)

a kto mowi ze jestem zaawansowany programista :)

7,227

(273 odpowiedzi, napisanych Programowanie - 8 bit)

zaawansowany programista nie zadawalby pytan heh

konwersja emulatorem... jest tak jak mowisz, trzeba uruchomic program i dopiero zrobic snapszota wtedy program na emulcu sie uruchomi, mam taki przypadek, ze po zaladowaniu tapa (program jeszcze nie wystartowal na spectrum) robie zapis do sna, pobieram naglowek i sam program ale on sie na atari nie pojdzie, gdy zrobie cos takiego po uplywie kilku ramek zxa i zamiast samego kodu programu zaladuje calego snapszota do atari to juz emulec chodzi bez problemu.

7,228

(273 odpowiedzi, napisanych Programowanie - 8 bit)

ta strone znalem... zasmuciles mnie. cholera to nic. trzeba bedzie zainteresowac sie innym formatem zapisanych programow z trumny.

--
ale moment. musi byc jakis konwerter tapow do innych formatow

7,229

(273 odpowiedzi, napisanych Programowanie - 8 bit)

.tap file format :( potrzebuje info o tym formacie... google mi nie pomoglo. jakby ktos byl tak mily i pomogl go rozgryzc...
do tej pory robie tak, ze uruchamiam program na emulatorze spektrumny i robie zapis do formatu .sna (.sna inkluduje do emulatora) ale to nie jest rozwiazanie.

sprawa kolejna to ay, czy jest sens dodawac to do emulacji? i slyszec pierdy bo nie sadze zeby udalo mi sie zrobic to co swietemu ?

7,230

(7 odpowiedzi, napisanych Programowanie - 8 bit)

nosny temat te cale emulatory ostatnio :-) moze jakies demo o tym ktos napisze :DDDDDDDD

7,231

(273 odpowiedzi, napisanych Programowanie - 8 bit)

imposible, Draco bedzie tam 3 tygodnie wczesniej - jak przez caly watek ;-)


heh zarcik.

oczywiscie szacuneczek za to co draco robi i i tak jestem pod wrazeniem, chociaz jak dowiodlem demonizuje pewne sprawy ;-)

7,232

(15 odpowiedzi, napisanych Zloty)

a bedziecie miec karin maxi drive 3'5 ?

7,233

(273 odpowiedzi, napisanych Programowanie - 8 bit)

glupio wyszlo, dely, Twoja wypowiedz zrozumialem w ten sposob, ze moj emulator jest nie do uzytku. wymieniles jeszcze unusable..., jakos skojarzylem...

7,234

(273 odpowiedzi, napisanych Programowanie - 8 bit)

poszlo latwiej niz myslalem

tu wersja na spektrumne
http://pouet.net/prod.php?which=1995

a tu uruchomiona na atari
http://atari.pl/use.avi

bez zadnych numerow z makrami wyciaga 10% ale to chyba specyfika tego demosa ze uzywa akurat szybszych w emulacji rozkazow.

---
szybkosc zmierylem tak:
uruchomilem na zx emulu i na atari winplus ten programik, dalem zx emulowi 10% mocy i czekalem, po kilku chwilach emulce pokazywaly to samo (synchronizowaly sie) wiec mysle ze jest kolo 10%, avik byl nagrany ale moj komp pokazywal wtedy 95% szybkosci atari - zgrywanie filmiku chyba spowolnilo jego dzialanie. to tyle.

7,235

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> Nawet by nie mógł.

tak, jestes najlepsiejszy. wiesz o tym prawda?

az tu czuje twoj bol ;-)


> a nawet BASIC ci nie działa...

nie wydaje mi sie zebym chcial nawet sprawdzic go uruchomic :-) basicowe gry? hmm neeeeeeeeeeeeeee

7,236

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> To jesteś jakieś 3 tygodnie z tyłu za mną (jak przez cały wątek). Jeszcze jakieś tego typu nowości? :)

:-) spokojnie, nikt cie nie goni ;-) tylko ze ja w dwa tygodnie (lacznie z nauka asemblera z80) zrobilem emulca ktory jest szybsz :D

hmm, ok. siade zaraz i cos sklece :-) i nie bedzie to skrinszot ;-)

7,237

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> realizujesz częściowo założenie Lao...?

jeszcze nie, to sporo pracy i wlasciwie jeszcze nie wiem jaka forme ostateczna przyjmnie use;-) moze to bedzie patcher do zxprogramow, moze cos innego...
z makrami kiedys powalcze, na pewno w pierwszej wersji to bedzie reczne patchowanie... ale do tego jeszcze dluga droga, kto wie moze wczesniej pokaze sie f7 :-)

> 7% to już nie jest źle. Może jakaś publiczna wersja z linkami do tekstówek jakiś...?

cos wyszukam, hmmm moze nawet znalazlem :-) :

> Popatrz sobie, ile czasu po wydaniu komendy CIRCLE Spectrum "myśli", a ile czasu rysuje...

tak... no to sprawdzimy ;-)

tu sa jakies circlesy:
http://pouet.net/prod.php?which=1995


jesli mi sie uda uruchomic to na use, pokaze, jesli nie... to nie pokaze ;)

7,238

(273 odpowiedzi, napisanych Programowanie - 8 bit)

nie, no luz. pracuj w spokoju. ja tym czasem w swoim unusable spectrum emulatorze dokonalem kilku malych poprawek, przyspieszenie petli dekodujacej, dodanie pracy krokowej i mini :-) monitorek rejestrow i stosu. cos czuje ze przekrocze 7% :-) jutro (dzis) testy i moze cos puszcze swierzego :-)

7,239

(273 odpowiedzi, napisanych Programowanie - 8 bit)

blednym zalozeniem jest ze doping ci pomaga? czy ze agresywny dopin pomaga, a moze wcale nie pomaga a wrecz przeszkadza? no chyba ze doping nie wplywa wcale na temp? nie zakladam ze odpowiesz bo to moze byc bledne zalozenie ;-)

7,240

(273 odpowiedzi, napisanych Programowanie - 8 bit)

mam nadzieje moj agresyny doping pomoze ci szybciej skonczyc emulator i pokazac jak z zalozenia wolny program popedzi niczym wiatr ;-)

7,241

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> Jeśli o mnie chodzi to ja wolę 6% Speed Emulator, na którym będzie działać wszystko, niż 15% Speed, na którym będą działać gry, wybrane.

Draco nie sadzisz, ze 6% jest nie osiagalne przez Twoj emulator? jesli chcialbys wyjsc powyzej 5% musialbys nie sprawdzac rejestrow indexowych z80, ale jesli je sprawdzasz i korygujesz (wymagane w Twoim przypadku) latwo mozna napisac program, ktory sie nie uruchomi na tym emulatorze. cos mi sie wydaje ze to zauwazyles i dlatego wspominasz "zaprogramuje się to wszystko od nowa i inaczej".

jak myslisz? w ktorym miejscu sie myle?

7,242

(273 odpowiedzi, napisanych Programowanie - 8 bit)

nazwa mi sie podoba :-)

7,243

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> (oraz ile tego ci się zmieściło w pamięci, zob. posty #3 i #107).

zob. post 108 (kolejny raz tym razem ze zrozumieniem) i 114
prosciej: nie potrzeba pakowac calej emulacji tylko to co jest potrzebne do emulacji konkretnego programu.

7,244

(273 odpowiedzi, napisanych Programowanie - 8 bit)

idee 'zakumalem' wczesniej, dwa posty temu idea zostala nazwana jit :-)

7,245

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> Zob. post #108 i nie trac watku własnych wypowiedzi.

Tez powinienes przeczytac

> Co do JIT-a, zob. post #3 i #107

obejrzyj tez wiki

7,246

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> Zob. post #104.

zob. jit ;-)

---

@laoo, co wiecej, mozna by bylo z kodu emulca usunac wszystko nie potrzebne do koncowej emulacji danego programu.

7,247

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> To zrób i pochwal się, ile ci to dało :-)

ok. :-)
podaj liczbe cykli wykoania takiego czegos:

ld a,b
or c

a ja pochweale sie ile by to zajelo :-)


> Wystarczy jeden.

masz ambicje zrobic emulator 100%? komus sie to udalo?


> Jak już bystro zauważył dely, ty nie mówisz o emulatorze

tak? to o czym?

@ laoo nie doczytalem Twojej wypowiedzi, teraz ja zrozumialem dopiero. masz racje. nie potrzeba by bylo dekompilacji robic.

7,248

(273 odpowiedzi, napisanych Programowanie - 8 bit)

> Ja nie zauważyłem, żeby na ogólnym tle kodu znajdującego się w ROM-ie Spectrum takie sekwencje występowały jakoś szczególnie często.

oj bardzo czesto i nie koniecznie zwiazane z rysowaniem na ekranie - chociaz w giercach to jest bardzo widoczne i sekwencje sa dluzsze, wracajac do romu trumny pierwszy lepszy wielokrotny przyklad

ld a,r
or r / and r

zerkam teraz na jakies procki z romu ... cale procedurki mozna by bylo zastapic niekiedy.

@laoo no wlasnie nie bardzo automat, a co gdy podmieniany wzor bedzie grafika albo jakimis innymi danymi? po to wlasnie trzeba by bylo robic reczna deasemblacje i tylko kod poddawac patchowaniu.

> Z tego, co mi wiadomo, żadne nie są wolne: "puste" miejsca w tabeli oznaczają rozkazy, które po dodaniu prefiksu działają tak samo, jak odpowiedniki bez prefiksu. Dokumentacja, którą czytałem sugeruje, że bywa to używane do utrudnienia analizy kodu (bo większość disasemblerów się na tym ponoć wykłada).

heh no nie przesadzaj, ile takich programow znajdziesz? 1%? watpie

a co do zajetosci pamieci - nie ma potrzeby implementowania WSZYSTKICH rozkazow, po dekompilacji i wydzieleniu kodu z80 sprawdzamy z czego mozna zrezygnowac a jak jestesmy hardcoreowcami to sprawdzamy na jakich bitach w rej statusu program nie kozysta i zalaczamy wersje rozkazow emulujacych bez ustawiania odpowiednich bitow :D to by bylo cos.


---
@ laoo nie doczytalem Twojej wypowiedzi, teraz ja zrozumialem dopiero. masz racje. nie potrzeba by bylo dekompilacji robic.

7,249

(273 odpowiedzi, napisanych Programowanie - 8 bit)

akurat ten przyklad jest nagminny, jak narazie w kazdym programie znalazlem taka/podobna konstrukcje:

daleko szukac... w romie spectrum tez tak jest ;-)

wynika to miedzy innymi ze specyficznej organizacji pamieci ekranu.

7,250

(273 odpowiedzi, napisanych Programowanie - 8 bit)

podczas emulacji z80 napotykam na rozkazy typu:

1.zaladuj jakis rejestr do akumulatora
2.wykonaj jakas operacje logiczna/arytmetyczna
3.zapisz wynik w poprzednim rejestrze

lub

1. petle z ldir (przesuwanie pamiec-pamiec)

itp...

podczas emulacji tracimy sporo czasu na interpretacje kazdego rozkazu osobno...

z80 ma prefixy, w tablicy rozkazow po prefixie jest duzo wolnego miejsca, mozna zrobic tak,
ze w kodzie (ingerencja w kod programu z80) gdy trafimy na taki kod jak z przykladu wsadzamy prefix i kod makro.

makro moze dzialac nawet szybciej niz zlepek rozkazow na z80, zwlaszcza przy podprogramach.

kolejna sprawa to jaka mozna miec motywacje podczas przenoszenia jakiejs gry z trumny na atari (poprzez emulacje)?
podpisac sie pod taka praca nie mozna, samej dlubaniny przy dekompilacji i wyszukiwaniu
podprogramow, ktore nie sa samomodyfikowane przez program cala masa...
jak znajdzie sie ktos, kto odwali czarna robote czyli deasembluje jakas gre, wydzieli z niej kod i dane to razem mozemy przeniesc taka gre na atari z predkoscia zblizona do oryginalu (jesli bedzie za wolno, wieksze czesci kodu z80 przepisze na 6502)

ordynarna emulacja jak pokazalem wczesniej jest za wolna do takich zabaw - ok 6% to zenada.