19. februára 2012

GPMD85emulator v0.9.1202 beta

Projekt GPMD85emulator, o ktorom som minule písal sa dostal do druhej, beta fázy a z pôvodnej alpha-testovacej verzie sa tak z neho stáva konečne použiteľný produkt. Hneď na úvod však musím vysvetliť niekoľko dôležitých faktov, ktoré sa bohužiaľ, ako som si všimol, nechápu:

  • GPMD85emulator a "RM-TEAM PMD 85 Emulátor" sú 2 rozdielne projekty!
  • GPMD85emulator nie je primárne určený pre platformu Windows.
  • Obe projekty majú vlastnú vývojovú cestu a nová verzia GPMD85emulatora neznamená novú verziu Windows PMD 85 Emulátora a naopak.

(Musel som tieto fakty uviesť na pravú mieru, pretože boli zjavne nepochopené, o čom svedčí skoro 50% stiahnutí balíčka GPMD85emulator užívateľmi Windows a na druhej strane reakciami ľudí, ktorí hľadali na portáli pmd85.borik.net balíček tohto *nix emulátora na stiahnutie.)

No a po tomto úvodnom "preškolení" sa už iste tešíte, čo nového prináša táto nová verzia, tak si poďme zhrnúť, čo sa za tie 2 mesiace udialo... ;)

changelog v0.9.1202:

  • Dušky (ub880d) pridal ďalší násobok zobrazenia 4x4 pre použitie pri FullHD výstupe. Taktiež implementoval voliteľné zobrazenie skrytých súborov do prieskumníka súborov cez horúci kláves [f]+bodka.
  • Opravené a funkčné zobrazenie rozšíreného grafického módu počítača Consul 2717.
  • Do stavového riadku pridaný akronym zvoleného modelu počítača.
  • Implementovaný a kompletne funkčný Prieskumník pásky, úplná emulácia LOAD/SAVE operácií. (Prieskumník pásky sa vyvolá cez [f]+T, alebo po načítaní nového súboru pásky. Prehrávanie od zvoleného bloku je možné spustiť pomocou [f]+P z prieskumníka pásky alebo globálne, priamo počas emulácie).
  • Možnosť odposluchu nahrávaného obsahu pásky alebo zrýchleného nahrávania.
  • Editácia obsahu pásky v reálnom čase (možnosť používať LOAD/SAVE operácie aj počas editácie pred uložením). Bloky na páske je možné mazať, presúvať, či importovať z iných súborov pásky.
  • Do stavového riadku pridaný progressbar pozície v konkrétnom bloku pásky.
  • Konfiguračný súbor bol zmenený z pôvodného XML súboru na plain-textový ini/conf súbor. Tým sa projekt zbavil náväznosti na ďalšiu problémovú knižnicu libXML2. Momentálne na skompilovanie emulátora stačí iba jediná, knižnica SDL (v1.2).
  • Konfiguračný súbor je možné uložiť (v menu EMULATOR), štandardne sa automaticky ukladá pri ukončení emulátora (auto-save je možné zapnúť/vypnúť).
  • Kód bol rozdelený na logické celky, oddelením emulácie a užívateľského prostredia. Bol celkovo optimalizovaný a "vychytaných" bolo niekoľko chýb.

download:

[ download latest GPMD85emulator ]

Keďže sa projekt stále vyvíja, v tomto archíve nájdete vždy najaktuálnejšiu verziu emulátora (tj. možno aj vyššiu ako je popisovaná v tomto článku!) s niekoľkými ukážkovými súbormi v adresároch disk, snaptape. Popis týchto novších verzií nájdete vždy v tejto sekcii blogu »».
K dispozícii je samozrejme aj Subversion trunk, kde nájdete vždy najaktuálnejšie "nightly" zdrojové kódy.

ako to funguje?

Ako som už spomínal, momentálne na preloženie emulátora stačí jedine knižnica SDL a jej development balíček SDL-devel-1.2.x. Všetko, čo bolo implementované beží prekvapivo stabilne (aj keď sa mi už raz podarilo nasimulovať akúsi zvláštnu náhodnú segfault chybu, keď som robil v Prieskumníkovi pásky mohutné blokové operácie a spájal dokopy asi 6 súborov a ich bloky rôzne presúval a mazal... no na druhý krát sa už chyba neprejavila). Budem rád, ak sa vám podarí nájsť podobnú či úplne inú, novú chybu, aby ste mi o tom napísali, prípadne sa ozvali priamo na jabber, alebo využili príslušný bugtracker na sourceforge.net.

Ešte väčšie prekvapenie pre mňa bolo, keď Logout preložil a spustil emulátor bez jediného problému na procesore ARMv7 svojho netbooku Efika MX Smartbook od Genesi. Osobne som si to o niekoľko dní overil na vlastné oči, keď som tiež bez problémov preložil a spustil emulátor na svojom ASUS Transformeri, kde som "skrotil" linuxovú ARM distribúciu namiesto Androidu. Je zjavné, že RISC mu nerobí problémy. Ako sa však ukázalo, problém robí big endian, keďže to Logout vyskúšal aj na PowerPC architektúre, no na riešení som už začal pracovať...

ukážka Logoutovho testu emulátora

screenshoty:

galéria so screenshotmi na PicasaWeb »»


2 komentáre:

  1. skvela praca! jediny podobny emulator, ktory bezi skoro vsade a riesi emulaciu co najvernejsie je asi len SimCoupe. uz aj taham a nedosledne testujem! (hlipa je vecna!) ellvis

    OdpovedaťOdstrániť
    Odpovede
    1. Hlípa rulez! Ďakujem za beta-testing ;)
      Hlípa je mimochodom v priloženej "demo-páske" hneď prvá, takže po spustení emulátora stačí MGLD 00, enter a Alt+P ;)

      Odstrániť