Welcome, Guest. Please login or register.


Author Topic: Web emu (Read 156174 times)

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #360 on: 2014.July.22. 21:14:04 »
Quote from: DrPrery
Az x64.js forráskódjában találtam:

// As a workaround use Mozilla Audio Data API on Firefox until it ships with Web Audio and sound quality issues are fixed.

Most ez mi akar lenni... nekik is meggyűlt a bajuk a WebAudio-Firefox párossal...? :smt017

Csak tippelek, de szerintem ez az volt, amikor az FF-ben meg nem volt Web Audio, csak a sajat API-juk (Mozilla Audio API?). Talan a 25-os FF-tol van, vagy hasonlo ...

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #361 on: 2014.July.22. 21:30:22 »
Quote from: DrPrery
http://stuartmemo.com/synth/

Például itt se mukkan meg nekem semmi...

Chrome 37-en meg van hang.

Ez passz, de ha nyitsz egy javascript konzolt, latod hogy van benne egy TypeError. Amugy nehez megmondani mi a fene zalik benne, mivel az JS kodot valami Closure Compiler szerusegen nyomtak at, igy emberi szem szamara kevesbe olvashato a kod mar, kezdve ott, hogy az egesz egyetlen sor :-P A tsw.min.js marmint (mondjuk nem meglepo, akkor szoktak .min-t tenni a filenevbe). Amugy meg nem tudom, a vegen kiderulhet, hogy en csinalom jol, csak az FF tudja rosszul, bar ebben kevesbe hiszek ...

Offline DrPrery

  • EP user
  • *
  • Posts: 264
  • Country: hu
Re: Web emu
« Reply #362 on: 2014.July.22. 21:57:20 »
Itt ír valaki a Firefox-os problémáiról:

http://blog.szynalski.com/2014/04/02/web-audio-api/




Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #363 on: 2014.July.22. 22:11:55 »
Quote from: DrPrery
http://blog.szynalski.com/2014/04/02/web-audio-api/

Itt most ket eset lehetseges: vagy semmi koze az en problemamhoz (itt oscillator objektumokrol van szo, amde jsep-ben ilyen egy sincs, itt az JS code altal kozvetlenul szintetizalt audio sample van), vagy pedig megis van koze hozza mas modon, amit viszont en ki nem tudok talalni igy hirtelen, hogy oszinte legyek :)

Kozben lett egy gyanum, hogy mi a baj, de amig nem dol el, hogy igazam volt-e, kussolok :)
« Last Edit: 2014.July.22. 22:58:33 by lgb »

Offline gflorez

  • EP addict
  • *
  • Posts: 3607
  • Country: es
    • Támogató Támogató
Re: Web emu
« Reply #364 on: 2014.July.24. 16:58:56 »
I've made an android app of your emulator with this.(I've replaced too the Linux 7z version provided with the Win attached link, as it stopped with an error)

It only runs at 4 fps in my phone, and needs to be online at first, as your HTML loads the LGB.img from your webpage. After the loading, it runs standalone.

https://www.dropbox.com/s/er094ot51gqk3wc/ep128.signed.aligned.apk
https://www.dropbox.com/s/37upmp31kc1j3wq/ep128.signed.apk
https://www.dropbox.com/s/p955vaqmd00cdx8/ep128.unsigned.apk


The one that works for me is the signed and aligned.
« Last Edit: 2014.July.24. 18:21:44 by gflorez »

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #365 on: 2014.July.24. 18:37:05 »
Quote from: gflorez
I've made an android app of your emulator with this.(I've replaced too the Linux 7z version provided with the Win attached link, as it stopped with an error)

Nice!

Quote
It only runs at 4 fps in my phone, and needs to be online at first, as your HTML loads the LGB.img from your webpage. After the loading, it runs standalone.

Yes, that's the default disk image, but also the ROMs are load with AJAX. It would be not hard to store those and not loading via the net, though as JSEP is a pure html stuff, it's hard to really "store locally". Maybe as a javascript array or such, but it will be quite ugly and bit then :)


Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #366 on: 2014.July.25. 16:23:05 »
Na, van hang FF alatt is. Az persze ismert, hogy azert csak joindulattal lehet hangnak nevezni. Illetve hangnak hang, csak eppen csetlik-botlik, de ez mar nem a WebAudio problemakore, hanem az enyem, illetve ez Chrome-ban is ilyen ugye. A kerdes max annyi, hogy masnak is jon-e vmi hang belole, most mar szeretnek biztosra menni azert tovabbi turkalasok elott.

http://ep.lgb.hu/jsep/demo.new/?snapshot=dtm.ep128s&sound=yes

Online Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Web emu
« Reply #367 on: 2014.July.25. 16:40:10 »
Van! :-)
Csetlik-botlik :oops:

Offline DrPrery

  • EP user
  • *
  • Posts: 264
  • Country: hu
Re: Web emu
« Reply #368 on: 2014.July.25. 18:00:23 »
Van! :smt026
Csetlik-botlik... :smt119
(Ez valami teljesítményprobléma lenne...? Az általam emlegetett C64 emu hangja pláne borzalmas, van is kb. 5FPS... :smt088 )

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #369 on: 2014.July.25. 18:23:36 »
Quote from: DrPrery
Van! :smt026
Csetlik-botlik... :smt119
(Ez valami teljesítményprobléma lenne...? Az általam emlegetett C64 emu hangja pláne borzalmas, van is kb. 5FPS... :smt088 )

Nem teljesitmenyproblema, hanem az, hogy meg nem talaltam ki hogy tartom az audio puffer olvasasat (amit a WebAudio API onaudioprocess callback-je "olvas") szinkronban azzal, hogy az emulator meg feltolti az emulalt Dave regiszterei alapjan a hangmintaval (ui a WebAudio mint kb minden audio specifikus API nem teszi lehetove hogy egyesevel add oda a hangmintakat, hanem egy buffert var el, pl mondjuk 1024 sample lejatszasa utan keri a kovetkezo 1024-et), igy folyamatosan alul/felulcsordul szegeny. Nyilvan, ha ez meg is lenne, nem megfelelo JavaScript teljesitmeny eseten ugyanugy rossz lenne (max mas jellegu hang hiba lenne, pl kihagy neha a hang), a kulonbseg az, hogy most egy atomeromu-PC-n is ilyen :) Ezt amugy nem olyan egyszeru megoldani, a WebAudio API pl azt mondja hogy sampling rate 44100Hz. Az emulacio idozitese alapjan _elvileg_ beloheto, hogy hany CPU/nick/stb ciklus jut egy hangmintara. Azonban ez sose lesz stabil egeszen pontosan es elobb-utobb elmaszik, plane, mivel tokeletes idozitest egy-egy frame emulacioja utan nem is tud a JavaScript, mar 1-2 msec sem mindig jon ossze pontosan.

Amugy teljesitmenyproblemat az JSEP eseten onnan lehet eszrevenni, hogy nezed a "timeout is ..." utani szamokat. Ha a perjel elotti 1-es erteket vesz fel (nem "turbo" modban, mert akkor mindig annyi ....), akkor keves neki a gep/js/browser stb performanciaban, foleg ha tartosan ott maszkal. Minnel kozelebb van a ket szam, annal jobb. Ha 1-esen van az elso szam, az azt jelenti, hogy az emulacio mar lassabb mint real time. Valojaban persze ilyenkor nulla vagy negativ lenne, dehat negativ varakozasi idot nehez csinalni :) nullat meg nem celszeru mert akkor a browsert total megakasztod, es sajat magara sem lesz ideje. Ezert van 1-ben limitalva.
« Last Edit: 2014.July.25. 18:43:22 by lgb »

Online Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Web emu
« Reply #370 on: 2014.July.25. 19:13:15 »
20-25/39-es timeout az jó vagy rossz? :oops:

Offline DrPrery

  • EP user
  • *
  • Posts: 264
  • Country: hu
Re: Web emu
« Reply #371 on: 2014.July.25. 19:23:22 »
Quote
20-25/39-es timeout az jó vagy rossz?

Na hiszen... akkor én mit szóljak az 1/39-emhez? :ds_icon_cheesygrin:

Offline NoP

  • Beginner
  • *
  • Posts: 28
Re: Web emu
« Reply #372 on: 2014.July.25. 20:08:07 »
Sziasztok!

Ideje volt hanggal is letesztelnem a telefonomon (iPhone 5S) ezt a dolgot... az eredmény a mellékelt képeken is látható. Fantasztikus egy dolog ez a javascript-alapú emu, lgb! :) Bárcsak tudnék valahogy gombnyomásokat is szimulálni... :)

Ja, a hang is szól "szépen" - úgy, ahogy azt az asztali gépemben lévő i5 750 is tolja kb. :)

Offline endi

  • EP addict
  • *
  • Posts: 7298
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
    • Honlapom
Re: Web emu
« Reply #373 on: 2014.July.25. 20:11:59 »
Quote from: NoP
 Bárcsak tudnék valahogy gombnyomásokat is szimulálni... :)

képernyőn lévő gombok mellett még az is jó lenne ha pl a slide-k a joy irányokat adnák be. nem azt mondom hogy játszható lenne egy játék tőle, de legalább kipróbálható
pl folyamatos slide folyamatosan nyomná a gombot, egy slide meg csak 1 gombnyomásnak számítana
Vigyázat! Szektás vagyok! :)

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: Web emu
« Reply #374 on: 2014.July.25. 20:14:04 »
Quote from: Zozosoft
20-25/39-es timeout az jó vagy rossz? :oops:

Mihez kepest :) Azt jelenti, hogy 39msec-bol 20-25msec ido maradt, ami nem kellett a realtime emulaciohoz, azaz 14-19 msec kellett hozza egy kivonas utan ugye, azaz 35-48%-nyit hasznalja ki a gepedet ahhoz, hogy emulalja az EP-t, ha atszamolod szazalekba. Vagy vmi hasonlo, hacsak nem szamoltam el :-/ Amugy azert 40msec eppen, mert 1/25 egy full PAL tv frame ideje, 39 onnan jon, hogy van egy kis kerekites miatti kulonbseg, miutan IstvanV felvilagositott a konkret Nick pontos idozitesek kapcsan. Egy frame emulalasa (ebben benne van persze cpu, nick, dave, stb ugy ertem a frame-et, hogy adott nick slot-nyi ido) utan "alszik" az emulator annyit (az az a "timeout" elso szama), hogy kitegye egy valodi EP-n levo idot a kov frame elkezdese elott.
« Last Edit: 2014.July.25. 20:31:32 by lgb »