Welcome, Guest. Please login or register.


Author Topic: ep128emu 2.0.8 (Read 131688 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: ep128emu 2.0.8
« Reply #75 on: 2010.June.07. 16:32:28 »
Ha meglesz a mindenféle szektoros WD :-) , akkor a Spectrumos részbe bele lehetne tenni a SpeccyDOS emulációt? Ezt a nálunk elterjedt magyar fejlesztést a külföldi emulátorok nem tudják, így lenne valami amit csak az ep-zx128emu tudna!
Mivel WD-t használ, remélem nem lenne túl nagy meló  :oops:

Itt megtalálhatóak a szükséges technikai dolgok, ami még innen kimaradt, azt a Spectrumos srácoktól sikerült megtudni:
1B41H címrõl történõ utasítás olvasás hatására belapozódik a SpeccyDOS ROM, így kapcsolódik be a Spectrum ROM BASIC utasítás feldolgozó részébe, és veszi át a "csillagos utasítások" esetén a vezérlést. A kilapozás már a leírásban ismertetett vezérlõ regiszter segítségével történik.
Szintén belapozódik 0066H-ról utasítás olvasásnál, így az NMI rutint átveszi.

Valamint létezik 5.x verzió, ahol a RAM dupla méretû (2000-27FFH), és felette (2800-3FFFH) is ROM található (pontosabban egy 16K-s ROM van, amibõl 2K-t eltakar a RAM).

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: ep128emu 2.0.8
« Reply #76 on: 2010.June.16. 11:48:59 »

Az emut teszteli valaki tobbmagos gepen ?

Nekem tovabbra is fagyogat az emu ( tehat hogy megall az emulalt kep es a GUI ), de erdekes modon a hang meg szol tovabb. Kulon szal lehet, a keprajzolas meg a GUI thread- ben futhat ? Aztan igy van hosszu masodpercekig, tizmasodpercekig, es utana fut tovab mintha mi sem tortent volna.

Nem lehet hogy az a szokvanyos hiba van az emuban, hogy a magok valtogatasanal, mivel magonkent kulon idozitoregiszter van ( RDTSC ), es azok nincsenek egymassal szinkronban, ezert neha zero vagy negativ idok is kijohetnek, ha az ember nem figyel arra, hogy a szalunkat most mar egy masik mag futtatja eppen ?

Van ilyen figyeles az idozitohasznalatkor, hogy ha kissebb-egyenlo zero, akkor mittomen nagyonpici idot jelentsen csak, vagy frameskippet ? Vagy azt hiszem van valami windows api talan arra, hogy egy szalat rahuzalozzon az ember az egyik magra, es akkor azt a win csak azon a fizikai magon fogja futtatni. Esetleg meg azt lehetne hasznalni, ha idozitovel nem akarnal vacakolni...

Esetleg meg azt lehet, hogy elkezdek OpenGL- es programokat futtatni hogy fagyogatnak- e, mint az emu. Eddig meg csak az emu- nal tapasztaltam, de nem nagyon toltam OpenGL- es dolgokat. Bar mondjuk a Blender az opengl, es annal nem tapasztaltam...


Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: ep128emu 2.0.8
« Reply #77 on: 2010.June.16. 12:14:21 »
Az emut teszteli valaki tobbmagos gepen ?
Nekem évek óta olyanon megy, soha nem volt semmi gond.

Offline MrPrise

  • Administrator
  • EP addict
  • *
  • Posts: 2755
  • Country: hu
    • Enterprise Forever
Re: ep128emu 2.0.8
« Reply #78 on: 2010.June.16. 13:22:44 »
Nekem sem volt gond vele.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: ep128emu 2.0.8
« Reply #79 on: 2010.June.16. 13:53:45 »

Tovabbi rendszerspec:

64 bit Win7
Core 2 Duo
4G ram
NVidia 9400M




De mostmar akkor elfuttatom a glview- t, vagy valami hasonlo benchmarkot, furmarkot inkabb... lassuk meg ... de sztm csak az emu csinalja ...


Z80 System

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: ep128emu 2.0.8
« Reply #80 on: 2010.June.16. 15:28:13 »
Az emut teszteli valaki tobbmagos gepen ?

Esetleg meg azt lehet, hogy elkezdek OpenGL- es programokat futtatni hogy fagyogatnak- e, mint az emu. Eddig meg csak az emu- nal tapasztaltam, de nem nagyon toltam OpenGL- es dolgokat. Bar mondjuk a Blender az opengl, es annal nem tapasztaltam...

Az openGL lesz a ludas.
Pár hozzászólással korábbi tapasztalat
;-)

Offline Lacika

  • EP addict
  • *
  • Posts: 3191
  • Country: hu
    • http://www.ep128.hu
Re: ep128emu 2.0.8
« Reply #81 on: 2010.June.16. 17:06:16 »
Az emut teszteli valaki tobbmagos gepen ?

Két éve azon megy nálam is Core 2 Duo-n és Athlon X2-ön.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: ep128emu 2.0.8
« Reply #82 on: 2010.June.17. 00:31:59 »
Lehetséges, hogy van probléma az időzítéssel, mert Windowson az emulátor a QueryPerformanceCounter() Win32 API függvényt használja időmérésre, ami valóban megbízhatatlan lehet újabb gépeken (és nem csak a többmagos processzor okozhat problémát, hanem például az is, ha az órajel változik). Viszont nem igazán van olyan Win32 függvény, amivel az időt probléma nélkül lehet mérni :roll: A GetSystemTimeAsFileTime() az 1601 Január 1 óta eltelt időt adja vissza 0.1 us egységekben - ez látszólag jó lenne, de valójában csak 10-15 ms felbontású. Talán a timeGetTime() lenne a leghasználhatóbb, ami ezredmásodperceket mér a rendszer indításától számolva.
Linuxon természetesen a gettimeofday() (1970 Január 1-től eltelt idő 1 us egységekben) hibátlanul működik és valóban 1 us a felbontása :)

Offline MrPrise

  • Administrator
  • EP addict
  • *
  • Posts: 2755
  • Country: hu
    • Enterprise Forever
Re: ep128emu 2.0.8
« Reply #83 on: 2010.June.17. 19:01:07 »
Ha F10-zel megállítjuk az emulációt majd újra elindítják, turbóra vált a sebesség. Úgy néz ki mintha megpróbálná behozni a lemaradását ;-)
Ez szándékosan van így?

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: ep128emu 2.0.8
« Reply #84 on: 2010.June.17. 23:41:18 »
Ha F10-zel megállítjuk az emulációt majd újra elindítják, turbóra vált a sebesség. Úgy néz ki mintha megpróbálná behozni a lemaradását ;-)
Ez szándékosan van így?

Nem, és nekem nem is ilyen. Talán ez is csak Windowson van ? :) Bár mintha régebben fordult volna már elő ilyesmi, amikor nem "hw" ALSA eszközt használtam.

Offline MrPrise

  • Administrator
  • EP addict
  • *
  • Posts: 2755
  • Country: hu
    • Enterprise Forever
Re: ep128emu 2.0.8
« Reply #85 on: 2010.June.18. 00:18:33 »
Nem, én Linux alatt tapasztaltam ezt. Viszont valóban nem a "hw" ALSA eszközt használom, mert azon nekem nincs hang valamiért.
« Last Edit: 2010.June.18. 00:24:05 by MrPrise »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: ep128emu 2.0.8
« Reply #86 on: 2010.June.18. 11:45:49 »
Nem, én Linux alatt tapasztaltam ezt.

Lehet, hogy a PortAudio okozza ezt a hibát ?

Viszont valóban nem a "hw" ALSA eszközt használom, mert azon nekem nincs hang valamiért.

Talán valami már használja, például esd, arts, pulseaudio, vagy hasonló "audio szerver" program ?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: ep128emu 2.0.8
« Reply #87 on: 2010.June.20. 21:36:40 »
Olyat lehet csinalni debuggerben, hogy egy IO portnak a kiolvashato erteket megadni? Pl a 18h-n piszkalni a disk change bitet, vagy a B5-re megadni, hogy van gomb lenyomva.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: ep128emu 2.0.8
« Reply #88 on: 2010.June.20. 22:33:55 »
Olyat lehet csinalni debuggerben, hogy egy IO portnak a kiolvashato erteket megadni? Pl a 18h-n piszkalni a disk change bitet, vagy a B5-re megadni, hogy van gomb lenyomva.

Ezt meg lehet ugyan oldani, de elég nehézkesen. :oops: Valahol a fórumon van a régebbi hozzászólások között Lua nyelven írt Spectrum 48 és 128 emulátor, azokban is ilyenre volt szükség az I/O portok emulálásához. Ezek gyakorlatilag az összes memória és I/O műveletet figyelik (meglehetősen nagy CPU használatot eredményezve), és I/O olvasáskor a következő utasítás elején átírják a regisztert vagy memóriát (INI/INIR/IND/INDR esetén) a ténylegesen olvasandó értéknek megfelelően. Természetesen ehhez azt is fel kell ismerni, hogy pontosan milyen I/O utasítás történt.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: ep128emu 2.0.8
« Reply #89 on: 2010.June.21. 08:49:06 »
Ezt meg lehet ugyan oldani, de elég nehézkesen. :oops:
Esetleg a 2.0.9-be lehetne majd beletenni olyan új debugger parancsot, ami ezt megcsinálja? Opcionális paraméterrel, hogy a megadott új érték hány kiolvasásig éljen.