Přejít na obsah
ARCHIVEKArchiv e-mailových konferencí o 8bitových počítačích Archiv Pandory 1999 až 2013

Zpět na zprávu

Celé vlákno · 4 zprávy

Emulator - Bylo: Emulace Unikarty

Michal Hučík SHARP MZ-800


Zdenkuv emulator je dobry a provereny. Je skoda, ze na jeho dalsi vyvoj 
nema uz tolik casu. Chapu taky, ze je asi i dost unavne neustale 
poslouchat od vsech navrhy na to co by se melo pridat, predelat, atd ...

Zrejme bychom ale meli postoupit dal a myslenka toho, ze by jsme 
spolecnymi silami stvorili novy emulator, ktery by byl opensource, 
multiplatformni, otevreny pro implementaci noveho HW (pokud mozno ovsem 
nenapsany v JAVA ;) se mi hodne libi. Nicmene jako programator nemam s 
aplikacemi tohoto typu naprosto zadne zkusenosti :(

Pokud by se do toho nekdo chtel pustit, tak muzu poskytnout zdrojaky 
Sharpa ve VHDL - je to v podstate na nejnizsi urovni popsane a 
okomentovane co nejpresnejsi chovani jednotlivych periferii MZ800 - to 
co je k dispozici v bezne dokumentaci rozhodne pro smysluplny emulator 
nepostacuje.
Model jsem psal za pomoci Zdenkovych rad a take na zaklade toho co jsem 
nameril logickym analyzerem v Sharpu. Delal jsem to jako opensource, 
akorat jsem se doposud jeste nedokopal k tomu, abych v tom udelal 
poradek a uploadnul to nekam na sourceforge...

Michal

Dne 20.1.2012 13:56, Zdenek Adler (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (40 řádků)
>
> Ctirade,
>
> tento nápad tu už byl, dokonce i podpořený možnou odměnou... Odmítnul
> jsem ho z prostého důvodu. Sám nejsem programátor a emulátor je spíše
> amatérské dílo které moc neodpovídá zavedeným programátorským 
> konvencím. Obávám se že ten, kdo by ho chtěl pochopit natolik, aby byl 
> schopen ho doplnit o další funkce či přepsat do jiného jazyka by s ním
> měl více práce, než kdyby začal od nuly s tím, že bych mu dal do 
> začátku plno dobrých rad :-) Dokonce už jsem jeden takový pokus 
> podpořil, ale dopadl víceméně tak jak píšu.
> Mimochodem, multiplatformní emulátor v Javě už jsem také napsal a pár 
> lidem jsem tu i svěřil zdrojáky. Myslím že je v něm velmi slušný 
> základ emulace MZ-800, byť bez periferií... Ti otrlí mohou zkusit zde 
> - http://mz-800.xf.cz/jmz/jmz.htm . Dříve mi to fungovalo všude, teď 
> už mi to jede tuším jen v prohlížeči Chrome - nevím proč...
> Kdo má zájem, zdroják tohoto emulátoru poskytnu volně
>
> Zdenek
>
>
> ----- Original Message ----- From: "Ctirad Feřtr 
> (sharpemupandora.cz)" <c.fertr[doména skryta]>
> To: "Konference "Počítač SHARP MZ-800 a emulátory""
 <sharpemupandora.cz>
> Sent: Friday, January 20, 2012 1:27 PM
> Subject: Re: Emulace Unikarty
>
>
>>
>> Dne Pá 20. ledna 2012 12:30:27, Zdenek Adler napsal(a):
>>
>>
>> Zdeňku a nebyl bys ochoten to vydat jako opensource? Postupně by se 
>> to dalo
>> překlápat na něco multiplatformního, třeba za pomoci SDL knihovny. 
>> Vlastně
>> jiný funkční emulátor MZ-800 neexistuje.
>>
>> Ctirad

Re: Emulator - Bylo: Emulace Unikarty

Ctirad Feřtr SHARP MZ-800

Dne Pá 20. ledna 2012 14:38:06, Michal Hučík napsal(a):

Pokud by se mělo jít cestou nového emulátoru, vzal bych za základ nějaký 
kvalitně napsaný multiplatformní emulátor jiného Z80 stroje (MSX, CPC,
 možná 
ZX) a přepsal věci týkající se přímo sharpa.  Nebo se podívat, jestli by
nešel 
použít jeden z  tuším dvou existujích nedodělků.

Ctirad  

Zobrazit citovaný text (5 řádků)
> Zrejme bychom ale meli postoupit dal a myslenka toho, ze by jsme
> spolecnymi silami stvorili novy emulator, ktery by byl opensource,
> multiplatformni, otevreny pro implementaci noveho HW (pokud mozno ovsem
> nenapsany v JAVA ;) se mi hodne libi. Nicmene jako programator nemam s
> aplikacemi tohoto typu naprosto zadne zkusenosti :(

Re: Emulator - Bylo: Emulace Unikarty

Miroslav Hajda SHARP MZ-800

Pokud byste se chtěli do nečeho pusit, tak mi dejte vědět, že bych třeba
 přiložil ruku k dílu...

Sice jsem teď neměl pár let na Sharpa čas, ale předtím jsem se o tvorbu
emulátoru párkrát pokusil. Naposledy jsem zkoušel upravit Zdeňkův
emulátor v Javě jako applet tak, aby bylo možné spouštět soubory přímo z
webu, ale nějak jsem to ani pořádně nedokončil (rozpracovaný web jsem tu
kdysi zmiňoval http://sharpmz.zdechov.net).

Kromě toho existovaly v Javě i další emulátory, např. MCE Romana
Dolejšího
Pokud byste se rozhodli pro C++, možná by se dala použít část kódů z
http://sourceforge.net/projects/mz800em/ případně
http://homepage3.nifty.com/takeda-toshiya/mz700/index.html

HajdaM
______________________________________________________________
Zobrazit citovaný text (25 řádků)
> Od: "Ctirad Feřtr (sharpemupandora.cz)" <c.fertr[doména skryta]>
> Komu: "Konference \'"Počítač SHARP MZ-800 a emulátory\'""
<sharpemupandora.cz>
> Datum: 20.01.2012 14:50
> Předmět: Re: Emulator - Bylo: Emulace Unikarty
>
>Dne Pá 20. ledna 2012 14:38:06, Michal Hučík napsal(a):
>
>Pokud by se mělo jít cestou nového emulátoru, vzal bych za základ nějaký>kvalitně napsaný multiplatformní emulátor jiného Z80 stroje (MSX, CPC,
 možná 
>ZX) a přepsal věci týkající se přímo sharpa.  Nebo se podívat, jestli
by nešel 
>použít jeden z  tuším dvou existujích nedodělků.
>
>Ctirad  
>
>> Zrejme bychom ale meli postoupit dal a myslenka toho, ze by jsme
>> spolecnymi silami stvorili novy emulator, ktery by byl opensource,
>> multiplatformni, otevreny pro implementaci noveho HW (pokud mozno ovsem
>> nenapsany v JAVA ;) se mi hodne libi. Nicmene jako programator nemam s
>> aplikacemi tohoto typu naprosto zadne zkusenosti :(
>
>
>---
>

Re: Emulator - Bylo: Emulace Unikarty

Roman Dolejsi SHARP MZ-800

Zdravím,

  s tím časem na psaní emulátoru je to opravdu špatné. Tolikrát jsem si již sliboval, že MCE opráším, opravím nedodělky a konečně někde vypublikuji.. A nikdy čas nezbyl. Seznam věcí, které jsem tam kdy chtěl dodělat, vždy jen narůstal a málokdy se tenčil.. A teď se stavbou baráku to je snad ještě horší :-(

  MCE zhruba splňuje, co by bylo asi potřeba - je modulární.. Emulace je reprezentovaná komponentami připojenými do adresového nebo portového prostoru. Komponenty samy mohou referencovat MMU a pomocí něho přepínat paměť nebo povolovat či zakazovat porty. Komponenta může mít svou konfigurační obrazovku, výchozí hodnoty a hodnoty uživatele.

  Tento princip mi umožňuje sdílet jednu implementaci na různých platformách - např. plnou implementaci i8253 jsem psal podle PDFka čipu od Intelu a jednu komponentu používám na MZ, ZX i PMD, jen připojenou vždy jinam.
  MCE po startu načte konfiguraci dané emulace z XML souboru, připojí všechny komponenty včetně CPU a nastartuje emulaci. Prakticky vlastně neví, že nějaká emulace běží :-)


  V emulaci MZ-800 funguje prakticky vše kromě zvuku a brždění na rychlost reálného procesoru. GDG je 99% implementována feature-wise, synchronizovaná s CPU. Debugger je extrémní, podporuje složené breakpointy s podmínkami, pohledy do paměti, identifikaci paměťových oblastí apod. K dispozici je i věrná emulace pásky včetně převíjení a editace (TMZ - i.e. Antiriad od Hechta v jednom souboru s InterCopy zavaděčem a zbylými bloky v ZX módu), 8-bit nebo 16-bit IDE, plná podpora FDC (HD) včetně vytvoření prázdného image a jeho naformátování v CP/M. Je možné připojit libovolný adresář z lokálního disku jako CP/M drive (provedu shadow BDOSu a emuluji rutiny CP/M při přístupu na daný disk). Podporuji dělání screenshotů, převod obrázků mezi různými grafickými módy, převod ZX obrázků do MZ-700 obrazovky pouhým Copy&Paste.. Člověk by nevěřil, s čím vším jsem si tehdy vyhrál :-)

  Zhruba před měsícem jsem přidal plnou podporu MemExt. Třeba mi o víkendu vyjde čas a konečně novější verzi MCE vydám. Mohl bych se mrknout i na tu podporu Unikarty. Ale to všechno jsou jen úvahy a při mém volném čase si myslím, že mi bude moci Zdeněk vždy říkat, že MCE je jen z říše fantazy :-)

Tak zatím a hezký víkend!
Roman

btw. nezatracujte Javu, C# a ostatní managed jazyky. Možnosti debuggingu, trasovatelnosti chyb, uspořádanosti objektového kódu či praktické využití design patternů jsou o řád jinde než u nižších jazyků. Je samozřejmě pravda, že ne ke všemu se hodí.. ale na emulátor s otevřenou komponentovou platformou je Java nebo C# naprosto ideální řešení.

2012/1/20 Miroslav Hajda (sharpemupandora.cz) <bomi[doména skryta]>


Pokud byste se chtěli do nečeho pusit, tak mi dejte vědět, že bych třeba přiložil ruku k dílu...

Sice jsem teď neměl pár let na Sharpa čas, ale předtím jsem se o tvorbu emulátoru párkrát pokusil. Naposledy jsem zkoušel upravit Zdeňkův emulátor v Javě jako applet tak, aby bylo možné spouštět soubory přímo z webu, ale nějak jsem to ani pořádně nedokončil (rozpracovaný web jsem tu kdysi zmiňoval http://sharpmz.zdechov.net).

Kromě toho existovaly v Javě i další emulátory, např. MCE Romana Dolejšího
Pokud byste se rozhodli pro C++, možná by se dala použít část kódů z http://sourceforge.net/projects/mz800em/ případně http://homepage3.nifty.com/takeda-toshiya/mz700/index.html

HajdaM
______________________________________________________________
> Od: "Ctirad Feřtr (sharpemupandora.cz)" <c.fertr[doména skryta]>
> Komu: "Konference \'"Počítač SHARP MZ-800 a emulátory\'"" <sharpemupandora.cz>
> Datum: 20.01.2012 14:50
> Předmět: Re: Emulator - Bylo: Emulace Unikarty
>
>Dne Pá 20. ledna 2012 14:38:06, Michal Hučík napsal(a):
>
>Pokud by se mělo jít cestou nového emulátoru, vzal bych za základ nějaký
>kvalitně napsaný multiplatformní emulátor jiného Z80 stroje (MSX, CPC, možná
>ZX) a přepsal věci týkající se přímo sharpa.  Nebo se podívat, jestli by nešel
>použít jeden z  tuším dvou existujích nedodělků.
>
>Ctirad
>
>> Zrejme bychom ale meli postoupit dal a myslenka toho, ze by jsme
>> spolecnymi silami stvorili novy emulator, ktery by byl opensource,
>> multiplatformni, otevreny pro implementaci noveho HW (pokud mozno ovsem
>> nenapsany v JAVA ;) se mi hodne libi. Nicmene jako programator nemam s
>> aplikacemi tohoto typu naprosto zadne zkusenosti :(
>
>
>---
>

---