251

Premiera Deatch Chase odbędzie się na Foreverze ?

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" ...

252

http://atari.online.pl/v01/index.phtml? … ct=nowinki

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

253

Ekhm, ekhm... XXL, Draco: jak i czy wogle posuwaja się prace z optymalizacją kodu...? (Sz)czekamy na działający emulator...

Sikor umarł...

254

A to sobie szczekaj, ja jestem za kontynuacją przerwanych projektów (Luxor itd.) ;)

I Ty zostaniesz big endianem...

255

luxor bedzie, spoko, znudze sie tylko emulem ;-)

http://www.mobygames.com/game/zx-spectr … creenshots

http://atari.pl/pheenix.rar   - przyspieszylem kilka petli i mozna powiedziec ze kolo 20% idzie, niestety bardzo nierowno, zwlaszcza gdy zx generuje dzwiek wtedy atari idzie szybciej niz oryginal :D

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

Zajefajne. W to juz mozna grac :)

Kaz/Rohar
Prowadzę stronę dla obłąkanych: http://atari.online.pl/

257

emulator z oznaczeniem x.0x jest bez makr (interpretuje rozkazy z80 jak leca), z oznaczeniem x.x1 jest z makrami (wg pomyslu laoo),
makto to rozkaz ktorego z80 nie ma ale zxemu umie go obsluzyc, dzieki temu podprogramy lub petle z80 mozemy zastapic szybszymi odpowiednikami 6502.

jaka jest zaleta? umiescilem jedno makro w dc i predkosc wzrosla do 11%, dalem 5 makr w pheenixie i podczas gry mamy nawet powyzej 30% (srednio jest ok 30%) ile w tym prawdy, sprawdz sam (jest pozno i juz mi sie nie chce sprawdzac dokladnie). prawdopodobnie jutro programy beda do sciagniecia (paczka poszla do kaza).

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

Paczka doszla, a w nocy pojawilo sie to:
http://atari.online.pl/v01/index.phtml? … ct=nowinki

Kaz/Rohar
Prowadzę stronę dla obłąkanych: http://atari.online.pl/

259

mam pewien problem.
przy uruchamianiu kolejnych gier na zx emulu pojawił sie problem przerwań. nie bardzo wiem jak zaemulowac przerwania ;-) wlasciwie to nie wiem jak obliczyc czas wywołania kolejnego. pomyślałem ze przerwania trumny będzie obsługiwało przerwanie vbi atari, wszystko pięknie oprócz tego, ze czas wywołań musi byc wyznaczony precyzyjnie (precyzyjnie dla emulowanego zxa a nie atari). oczywiście ustawic czas można na pałe, owszem, tylko że wtedy gry zachowują sie dośc dziwnie... np player porusza sie kilkakrotnie szybciej, czas płynie inaczej niż się tego spodziewamy, w pssst np. kwiatek rozwinie sie zanim przeszkadzajki zdążą podejśc itp. innymi słowy poległem przy obsłudze przerwań. ma ktoś jakiś pomysł? jeśli nie ma na to sposobu pewnie trzeba będzie ustawiac czas dla każdej gry osobno i na oko...

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

260 Ostatnio edytowany przez Pecus (2007-04-10 20:18:58)

Powinno sie to robic zliczajac cykle wykonywanych rozkazow i po osiagnieciu pewnego stanu licznika, wywoluje sie przerwanie a licznik zeruje. No niby proste ale spowalnia emulacje i wymaga dodatkowo stablicowania prawdziwej ilosci cykli wykonywania sie rozkazow Z80.
Nie mam koncepcji.... moze liczyc rozkazy? Tyle ze na LDIRach sie wszystko rozklada....

Pewne jest to ze nie nalezy opierac sie na przerwaniach Atari.

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

261

TIMER-y, nie pamietam dokladnie w ktore rejestry, ale ogolnie POKEY zlicza w dol i wywolywane jest przerwanie IRQ, tak ze mozna co do milisekundy sie zsynchronizowac, jednak w przypadku emula ktory nie dziala jako 100% oryginał, trzeba by to pewnie przeliczyc

drac030 pewnie wie lepiej jak to zrobic :)

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

262

przerwania ustawione na oko: http://www.youtube.com/watch?v=b6_4tgbi5Po
w jetpacu chyba trzeba przyspieszyc gracza...

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

263

ok. emulator z80 dziala (zx emulator z tymi grami to produkt uboczny)

-mozna juz pisac na atari w asemblerze z80 :-) mozna tez normalnie z wstawkami assa z80...
-mozna zdefiniowac sobie DL jak w zx spectrum, zaladowac program spectruma i .. i mamy zx emulator,
-mozna definiowac swoje makrorozkazy dla z80 (32 wygodne wpisy - moze byc ich wiecej) czym wiecej rozkazow z80 takie makro zastapi tym szybciej dziala emulacja (na dzien dobry oszczedzamy na petlach interpretujacych kazdy rozkaz z80)

wlasciwie temat emulacji raczej sie wyczerpal. mozna powiedziec ze sie da i tyle.

zapytuje: czy ktos bylby chetny (we dwoch razniej) na portowanie (juz nie przez emulacje) jakiegos hitu z zx spectrum?

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

264 Ostatnio edytowany przez Sikor (2007-04-17 20:03:06)

XXL: to może na początek sztandarowy hit Z80: CPM...? Ja nie pomogę niestety - programista ze mnie żaden... ;(

Sikor umarł...

265

Sajkor napisał/a:

programista ze mnie rzaden... ;(

Ortografista też :)

Sajkor napisał/a:

sztandarowy hit Z80: CPM

Powodzenia, poczytaj sobie o wymaganiach CP/M. Dla ułatwienia dodam, że Spectrum tych wymagań nie spełnia i zasadniczo to, na Spectrum nie da się uruchomic CP/M - da się za to na FDD3000, która sama w sobie jest komputerem i gumiaka wykorzystuje tylko jako klawiaturę i wyjście na telewizor :)

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.

266

to jak? jest sens puscic z80 w takiej postaci?

z80 laduje sie pod adres $xxxx, na stronie zerowej w adresach $xx-$xx znajduja sie rejestry procesora,
zapisujesz rejestry wirtualnego z80 i wykonujesz jsr z80. z trybu z80 program wyskoczy rts-em gdy trafi na nieobslugiwany rozkaz z80 lub sami zechcemy opuscic tryb z80. definiowanie makrorozkazow jest tez proste, co wiecej mozna rowniez podmieniac procedury dowolnego rozkazu, no dobra, podmienic mozna rowniez heh sam procesor z80 i zaemulowac sobie inny ;-) wymyslony przez nas samych tez (przeciez znaczenie rej na stronie zerowej jest umowne).

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

267

Dely: już poprawiłem. A jak napisałem - nie znam się i już ;)

Sikor umarł...

268

http://atari.pl/zxemul.rar - najnowsze wersje jetpac, deathchase, sir lancelot i pheenix.

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

269

1. Do C=64 jest prosty kartridż z prockiem Z80. Zerżnąłem schemacik i romy, mam w archiwum. Jeśli kogoś interesuje...
2. Nie ma CP/M bez stacji dyskietek. Tu kłania się kontroler uPD765. Swoją drogą, czy da się taki kontroler zastosować do stacji Atari? Problemy w WDC1772 zostały by omitted.

270

Może mi ktoś powiedziec jak działa CPI i CPD. Prosze o szybka odpowiedz.

271

w kazdej ksiazce o z80:


CPI searches starting at the memory location pointed to by the HL
register,  and  searches  for  BC number of bytes  for  the  byte
in register A.

A - (HL) and set flags on the result of this compare,  equivalent
         to CP (HL)
HL = HL + 1
BC = BC - 1

The flags are set as follows

C = no change
Z = 1 if A - (HL) = 0 else 0
P = 1 if BC <> 0 after instruction else 0
S = 1 if sign A - (HL) negative in two's comp, else 0
H = 1 if a half carry from A - (HL)
N = 1

CPD

CPD  is  the  same  as  CPI  except  that  the  HL  register   is
decremented;  HL = HL - 1. The flags are as for CPI.

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

272

A cos po polsku? :)

273

Jestem pod wrażeniem wyników prac XXL oraz dracO30. Gratuluję determinacji. To był solidny kawałek programistycznego rzemiosła.

Kiedyś w zamierzchłej przeszłości, rowniez próbowałem napisać konwerter gierek ZX -> 65XE. Koncepcja była nieco inna, bardziej przypominała kompilacje i pozostawieniem oryginalnych danych buforze.
Kod wykonywalny gry jest dużo krótszy niż dane gry. Zwykle jest on znacznie krótszy niż interpreter asemblera wraz z tablicami danych. dlatego opłaca sie przekompilować kod gry, pozostawiając odwołania do oryginalnych danych pozostających w buforze. Naturalnie jedyna przeszkodą będą gry z modyfikowalnym kodem. Zaletą, możliwości uruchamiania gry nawet na oryginalnych maszynkach z 64kB RAM.

Milego Dnia.

274

gra http://atari.fandal.cz/detail.php?files_id=5676 ma wszystkie tablice w oryginalnych miejscach gry na zx spectrum.
podminiony zostal tylko kod gry.

zerknij tez na: http://atari.fandal.cz/detail.php?files_id=5634

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