Enterprise Forever

:HUN => Emulátorok => Topic started by: lgb on 2015.May.17. 09:39:38

Title: Xep128
Post by: lgb on 2015.May.17. 09:39:38
Na, ez itt kerem, az LGB-nek elgurult a gyogyszere, es megint emulatort akar irni cimu topic lesz :) Ezuttal C-ben van irva, es meg az alfa verzio szintjet sem eri el a cucc, viszont legalabb reszlegesen (read only) emulalgat SD cartridge-ot, es boxsoft mouse illesztot is. Linux ala van, de mivel SDL es gondoltam kiprobalom, raereszetettem egy cross-compiler-t ami Linux alatt windows-ra fordit. Nagy meglepetesemre nemi karomkodas utan (valami symbol utkozes volt, igy belel kellett turnom az SDL2 header file-okba ...) eloallt egy exe ... Ami elvileg ugye windows alatt elindul, bar ki tudja :-) Mivel nincs windows-om, nem igazan tudtam ellenorizni, Linux alatt wine-al megy, de az egy dolog ... Ha valakit erdekel, akkor: http://xep128.lgb.hu/ (http://xep128.lgb.hu/)

Az oldalon csak egyetlen link van :) most meg, ami a github-ra visz. Nem kell megremulni, scroll-ozni kell lefele, az Installation on windows reszhez, voltakeppen egy zip kell (le van irva ott), vhova kibontani, meg melle a szinten emlitett SD image, aztan onnan elinditani. Linux alatt elvileg jo, legalabb SymbOS elindul, es egereszni is lehet benne, de kb ennyit probaltam :) Eger ugy mux, h klikk az emu ablakba, aztan ha kell vissza a normal mouse, akkor ESC. Sok minden amugy nincs emulalva, Dave audio, izebize semmi, csak VINT, meg 1Hz interrupt, oszt kesz kb ...

Na, lehet szidni, hogy ezt most minek, miert kell ez, miert ilyen sz**, miert nem ep128emu, stb :) Ez utobbi kerdesre: azzal nem is kivanok versenyezni nyilvan, inkabb olyan "ujszerubb" es "ritkabb" kiegeszitok erdekelnek, ami nincs ott emulalva, pl az SD kartya illeszto, vagy az egereszes ...
Title: Re: Xep128
Post by: Zozosoft on 2015.May.17. 09:45:20
SD card image csak az lehet?
Title: Re: Xep128
Post by: Zozosoft on 2015.May.17. 09:48:00
Működik! :-)
Title: Re: Xep128
Post by: lgb on 2015.May.17. 09:57:53
sdcard.img szerintem lecserelheto, ha jol remlik ez is vmi forumon itt kitetett vhd file volt voltakepp :) Sajna configolni meg nem lehet az emut, semmit (disk image, memoriameret, akarmi). Jelenleg kb ennyit tud, mast nem. Fixen sdcard.img -t keres, de persze magat a file-t meg lehet probalni masra lecserelni. A combined.rom pedig egyben tartalmazza a ROM-okat szepen cimfolyamatosan az EXOS 0-assal kezdve, igy emu elso verzioban egyszerubb volt mindent bezuzni egyben :) Benne van az SD kartya stuff is persze.

Az jo hir, ha megy win alatt, bar most epp kiproszaltam felesegem notebook-jan azon van egy kisse kallodo xp is. Mondjuk bezarasnal vmi hibat irt ki, de egyaltalan az is csoda, hogy mux :)

Amugy talalkozora akartam volna futtathato allapotba hozni, es ment is volna, csak kicsit hmm cikinek ereztem, hogy ennyi emu kepeseggel - amit a xep128 tud jelenleg - inkabb nem kene villogni ott, mert a vegen kirohognek. Azert irtam csak most meg, a talalkozo utan :) Povival mar beszeltunk rola privatban.
Title: Re: Xep128
Post by: gflorez on 2015.May.17. 11:00:34
It works for me too.

Marvellous...

Title: Re: Xep128
Post by: lgb on 2015.May.17. 13:05:37
It works for me too.

Marvellous...

It's really not to hard to do. It's z80ex, a quite nice Z80 emulator, portable, written in C (not my work, I mean). Then you need just limited amount of extra C code, to have a working EP emulation, without too much features though or cycle exact emulation. Currently it does not emulate sound, neither the TG/etc interrupt. My JSep emulator is still better in the sense of emulation, though Xep128 knows SD card now (which is not supported by JSep, but JSep emulates read access for EXDOS/WD, which is not the case for Xep128 .... ehh, I am chaotic).
Title: Re: Xep128
Post by: gflorez on 2015.May.17. 13:14:17
If it's so portable.....can you try an Android port? Please....
Title: Re: Xep128
Post by: lgb on 2015.May.17. 16:21:13
If it's so portable.....can you try an Android port? Please....

I meant the portable nature of the z80ex, the Z80 CPU emulator part. My C code uses SDL2 etc, I guess it's also portable, as I could compile it for Windows (on Linux, with a cross-compiler) with only one modification (_read symbol caused to collide on Windows with something else ... so I renamed my variable). However I don't know _anything_ about Android development currently. I may try some time. Anyway, with strong enough CPU and good browser, JSep should work on Android devices too as a web based emulator.
Title: Re: Xep128
Post by: ssr86 on 2015.May.17. 21:45:42
I have always thought that an writing an emulator needs a lot of code. Remeber having a look into the source of the winvice c64 emulator and found it really complicated with lots and lots of files.

I think that it would be great if there was an emulator with built-in assembler and better debugger than the one found in ep128emu (or it's just hard to use)... This is one of the "fields" on which a new emulator could really stand out (for programmers).
Title: Re: Xep128
Post by: lgb on 2015.May.17. 22:17:47
I have always thought that an writing an emulator needs a lot of code. Remeber having a look into the source of the winvice c64 emulator and found it really complicated with lots and lots of files.

I think that it would be great if there was an emulator with built-in assembler and better debugger than the one found in ep128emu (or it's just hard to use)... This is one of the "fields" on which a new emulator could really stand out (for programmers).

Well,  it's matter of emulator :) The complexity of VICE is because the large amount of emulated stuff (even very exotic hardware components, I guess at the magnitude of 100 or so-, and generic layers (eg, multiple supported OS - WinVICE is just name for the Windows port, but VICE is for even Linux/UNIX, android, etc -, easy adoption for multiple Commodore machines, even drives - where the drive is a computer itself with own CPU, RAM/ROM and I/O chips -, and even on the same OS port, multiple video/audio drives etc). Also, VICE is a quite accurate emulation, being cycle exact for the CPU and other chips as well. And so on. An emulator like Xep128 does not even emulate sound, missing Dave functions, some missing Nick stuffs, not exact retrace stuff for Nick, not cycle-exact, missing WD/EXDOS, no configuration (just check the VICE's possible settings out ...), and so on. It's not so hard to reach a point in an emulator where the computer is able to run the ROM stuffs, and some selected software runs at least.

Hmm, debugger/assembler: exactly this is the area where ep128emu is good, at least with debugger :) I wouldn't be able to compete here, also ep128emu is quite accurate. Honestly it would be better to integrate eg mouse emulation and SD card stuff into ep128emu, but I am quite unfamiliar with C++ also it's fun to write something at your own. These are to only reasons.
Title: Re: Xep128
Post by: ssr86 on 2015.May.17. 22:33:48
Hmm, debugger/assembler: exactly this is the area where ep128emu is good, at least with debugger :) I wouldn't be able to compete here, also ep128emu is quite accurate.
Well I've got spoiled by winape's assembler/debugger;P. I really miss the ability to easily add breakpoints through the source file, for example.
...I admit that I don't really know much about the scale of functionality of ep128emu debugger with lua scripts...
Title: Re: Xep128
Post by: SlashNet on 2015.May.17. 22:40:28
Interesting name for the emulator. :)
Some offtopic:
Хер (typed in Cyrillic) - common in Russian language obscene euphemism for the word "dick".
It similar situation for Pidora (http://pidora.ca/) for RasberryPI (look at the link at the bottom of the page)
Title: Re: Xep128
Post by: lgb on 2015.May.17. 22:49:11
Interesting name for the emulator. :)
Some offtopic:
Хер (typed in Cyrillic) - common in Russian language obscene euphemism for the word "dick".
It similar situation for Pidora (http://pidora.ca/) for RasberryPI (look at the link at the bottom of the page)


:) I guess almost every name can mean something odd in at least one other language :) Like when I "invented" my own nick (LGB, it's from my "real" name btw) I got to know later that, it's A.) name of a model railway stuff, B.) commonly used abbreviation of "Lesbian-Gay-Bisexual".  Even just inside the computer business there were problems, like Commodore VIC 20 was sold with some other name in German because the word "VIC" as pronounced means something not so nice in German (well, I don't know at all since I don't know German, just read that story somewhere). Some "funny" stuff: the Hungarian "persze" (meaning: of course, sure) should not be said in Finland, since they will mean at as "ass". According the urban legend there were story that Hungarian tourists in Finnish restaurant was told that they should not mention "ass" all the time, as other (Finnish) guests there complained. Oh well, and we had to learn Russian in elementary school, but I don't remember too much ...
Title: Re: Xep128
Post by: szipucsu on 2015.May.18. 19:46:15
:) I guess almost every name can mean something odd in at least one other language :)
To complete your list: "bunda" in Hungarian means fur (of an animal) or fur-coat but in Portuguese... this means ass. This word appears somehow everywhere... really interesting!
Once my Brasilian acquaintance came to Hungary and was surprised so much at seeing in so many places the word "bunda". :ds_icon_cheesygrin:
Title: Re: Xep128
Post by: lgb on 2015.June.03. 14:44:53
Van reszletes info valahol a Spectrum emulatorrol? Nemi disasm, probalgatas, illetve itt a forumon Zozo egy hozzaszolasa alapjan (0x40 ... 0x44 portok stb) megcsinaltam az Xep128-ba, igy el is indul, de az attrib infok teljesen rosszak valamiert. Amit felteteleztem (lehet itt a hiba?): 0x3f9800 - 0x3f9aff (marmint ez linearis cim a 4Mbyte-os cimtartomanyban) cimeknel kell NMI-t eloallitani memoriahozzaferes eseten es csak (?) iras muveletnel. A kerdeses "linearis" cim also 16 bitjet tettem 0x40 es 0x41-es portokra, a 0x42 az eppen irt byte-ot, 0x43-ra 0x80-at (mert memoriamuvelet, nem I/O). Igy most kisse fura, fekete hatter/keret, es kek betuk szinosszeallitas jon ki ...

Ettol eltekintve muxik, marmint ZX basic elindul, gepelni lehet, stb a ZX EXOS parancs kiadasa utan. Speciel az I/O-ra se jottem ra teljesen: a ZX40.ROM-ot nezve vmi olyat csinal, hogy olvasgatja a 0xFE portot. Erre elvileg ugye NMI van generalva szepen stb, tehat mind1, mit adnek vissza a port read emulacional, mert az NMI handler ugyis mast fog adni. Ennek ellenere, ugy tunik, hogy 0xBF-et kell visszaadni kulonben nem mukodik. Azt, hogy miert, es miert pont ennyit, nem tudom (a 0xBF onnan jon, hogy disasm-oltam kicsit, es megneztem mit csinal, miutan kiirja h kapcsold be az emulatort, es csak var ...). Igy mondjuk, mint irtam, elindul, csak fura ez nekem.

Altalaban is kerdeznem, hogy van-e pontosabb leiras/dox/akarmi a ZX emulatorrol, ez "kisse" meg bug-os igy :oops:
Title: Re: Xep128
Post by: Zozosoft on 2015.June.03. 14:55:21
0x3f9800 - 0x3f9aff (marmint ez linearis cim a 4Mbyte-os cimtartomanyban)
Ez ember nyelven hol van? :-)
Egyébként az FE szegmens attributum területére kell írásnál NMI.
Title: Re: Xep128
Post by: lgb on 2015.June.03. 15:04:28
Ez ember nyelven hol van? :-)
Egyébként az FE szegmens attributum területére kell írásnál NMI.

0xFE szegmens, 0x1800 - 0x1aff, ha minden igaz. Ha ide van iras (azert hasznaltam "linearis" cimet, mert a memoria iras fuggveny az emulatorban atszamolja eloszor linearis cimre, es aszerint dolgozgat), akkor eloallitok egy NMI-t, es a kapott "linearis" cim (hiszen ez jelenik meg elvegre az EP cim buszon, nem a Z80-as cim, mivel annak felso 2 bitjebe ugye beleszol a dave ...) also 16 bitjet rakom aztan a 0x40,0x41-es portokra, 0x40-re a felo byte, 0x41-re also byte (azaz pl az attrib memoria kezdetenek viszonylataban ez 0x9800 lesz, tehat 0x98-as ertek kerul a 0x40-es portra, es 0 a 0x41-re). Stb, ahogy irtam az elobb. Viszont nekem nem ugy tunik, hogy igy normalisan mukodik sajnos :( Vagy en ertek felre valamit ...

Amugy a ZX ROM ilyenkor mit csinal? Lekezeli a NMI-t, 0x40-0x43 portok alapjan kitalalja mit es hol akart, ha ez a fenti attrib mem iras, akkor visszaolvassa a kiirt byte-ot a cim segitsegevel (vagy megnezi a 0x42-es portot .... inkabb) azt konvertalja spectrum attrib byte-ra, aztan kiirja a "valodi" nick szamara elerheto attrib teruletre? Tenyleg trukkos ez az NMI-zes, bar ha valami intenziven gyalulja az attrib teruletet, az gondolom sokat lassit ... Igazabol egy bit kene a Nick-be: attribute modban ertelmezze spectrum attrib modban az attrib infot, vagy ne (std EP mode). Es akkor nem kenne semmit sehova konvertalni, meg NMI-zni. Max I/O eseten meg adott persze a feladat ... Na, majd az FPGA EP-nel :D

Btw, csinaltam windows build-et az Xep128-bol megint (szokas szerint azt tesztelni nem tudtam). Fontos, az uj combined.rom kell hozza, mert abban van ZX40.ROM is mar benne ...

http://xep128.lgb.hu/files/xep128-win32.zip

Ja, meg van benne printer "emulacio", bar annak csufolni kicsit bator: megnyitja/letrehozza a print.out nevu file-t, es mindent kiir bele, ami a printer portra megy (nyilvan azert a strobe signal megfelelo figyelesevel, ahogy illik), semmi egyeb.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.03. 15:18:47
[attachurl=1]
Title: Re: Xep128
Post by: Attus on 2015.June.03. 21:10:45
Na, ezt megnézem!
UHU-3 Linux csomagot kreálok, mivel azt használok.
Title: Re: Xep128
Post by: lgb on 2015.June.03. 21:19:54
Na, ezt megnézem!
UHU-3 Linux csomagot kreálok, mivel azt használok.

Az sem rossz :) Azert vigyazz, mert iszonyat mennyisegu dolgot kidob stdout-ra es stderr-re is. Ha pl terminalbol futtatod, es nem iranyitod at a kimenetet pl /dev/null -ra :) akkor annyi kiiras van, hog attol lassu az egesz. Mondjuk mivel pre-alpha az egesz, neha hasznalom, nyilvan normalis allapotban majd nem fogja teleszemetelni az stdout-ot ...
Title: Re: Xep128
Post by: Attus on 2015.June.03. 22:00:52
A Makefile nem tartalmaz install részt, csak helyben fordításra szolgál.

Nos megpatkoltam a Makefile-t, hogy ne a wgettel kapja le a cuccokat, mert chroot-ban fordítok, ahol csak a fordításhoz szükséges csomagok vannak feltelepítve, A chrootban a build rendszeremben nem megengedett a wget használata, mivel ott nincs is internet!
Code: [Select]
diff -Naur orig/Makefile mod/Makefile
--- orig/Makefile 2015-06-03 21:19:21.000000000 +0200
+++ mod/Makefile 2015-06-03 21:33:46.509474758 +0200
@@ -38,11 +38,11 @@
 
 $(SDIMG):
  @echo "**** Fetching SDcard image from $(SDURL) ..."
- wget -O $(SDIMG) $(SDURL) || { rm -f $(SDIMG) ; false; }
+# wget -O $(SDIMG) $(SDURL) || { rm -f $(SDIMG) ; false; }
 
 $(ROM):
  @echo "**** Fetching ROM image from $(ROMURL) ..."
- wget -O $(ROM) $(ROMURL) || { rm -f $(ROM) ; false; }
+# wget -O $(ROM) $(ROMURL) || { rm -f $(ROM) ; false; }
 
 $(Z80EX):
  $(MAKE) -C z80ex static

Tehát az UHU build rendszere a chroot felépülése előtt lekapja  a gitt legutolsó revizíóját, a wgetes fájlokat, majd átmásolja mind  a chroot fordítási helyére, a build felhasználó átchrootol oda és elvégezné a fordítást, a leendő telepítést, majd a végeredményt deb csomaggá pakolná és kimásolná a végeredményt, amit fel tudonék majd telepíteni kipróbálás céljából.

Most ott tartok, hogy a fordítás elekad.

Code: [Select]
compile...                                                                                                                                                                                                                                                                   
+ ub_compile
make -j2
Compiler: gcc -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I.
Linker:   gcc -L/usr/lib -Wl,-rpath,/usr/lib -pthread -lSDL2 -lSDL2_net  z80ex/lib/libz80ex.a z80ex/lib/libz80ex_dasm.a
make xep128
make[1]: Entering directory `/var/uhubuild/work/compile'
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. main.c -o main.o
main.c: In function 'main':
main.c:267:6: warning: unused variable 'last_optype' [-Wunused-variable]
  int last_optype = 0;
      ^
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. cpu.c -o cpu.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. nick.c -o nick.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. dave.c -o dave.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. input.c -o input.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. exdos-wd.c -o exdos-wd.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. sdext.c -o sdext.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. rtc.c -o rtc.o
sdext.c: In function '_block_read':
sdext.c:139:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
  int ret;
      ^
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. printer.c -o printer.o
gcc -c -Wall -O3 -ffast-math -pipe -I/usr/include/SDL2 -I/usr/include -D_REENTRANT  -Iz80ex/include -I. zxemu.c -o zxemu.o
make -C z80ex static
make[2]: Entering directory `/var/uhubuild/work/compile/z80ex'
gcc  -fno-common -ansi -pedantic -Wall -pipe -O3 -I. -I./include -DWORDS_LITTLE_ENDIAN -DZ80EX_VERSION_STR=1.1.21 -DZ80EX_API_REVISION=1 -DZ80EX_VERSION_MAJOR=1 -DZ80EX_VERSION_MINOR=21 -DZ80EX_RELEASE_TYPE=   -c -o z80ex.o z80ex.c
gcc  -fno-common -ansi -pedantic -Wall -pipe -O3 -I. -I./include -DWORDS_LITTLE_ENDIAN -DZ80EX_VERSION_STR=1.1.21 -DZ80EX_API_REVISION=1 -DZ80EX_VERSION_MAJOR=1 -DZ80EX_VERSION_MINOR=21 -DZ80EX_RELEASE_TYPE=   -c -o z80ex_dasm.o z80ex_dasm.c
ar rs ./lib/libz80ex.a z80ex.o
ar: ./lib/libz80ex.a: No such file or directory
make[2]: *** [static] Error 1
make[2]: Leaving directory `/var/uhubuild/work/compile/z80ex'
make[1]: *** [z80ex/lib/libz80ex.a] Error 2
make[1]: Leaving directory `/var/uhubuild/work/compile'
make: *** [all] Error 2
Error: HIBA a(z) compile fazisban.
ccache-compress...
logpack...
1 error.
Fájlrendszerek leválasztása: dev, proc, ccache, forrás OK
LogPack kimásolása /usr/src/UHUBUILD/misc-3/logpack alá... OK
****************
*** HIBA !!! ***
****************

A buildelés befejeződött.

A következő ub csomagok utolsó fordítása hiba miatt megszakadt: qt5 xep128
Hmmm. a qt5 ne zavarjon, az egy más történet, már idejétmúlt.

Tehát nem jön létre ez: ./lib/libz80ex.a: No such file or directory
Title: Re: Xep128
Post by: Attus on 2015.June.03. 22:12:17
Most látom az80ex Makefiléből , hogy akár dinamikusra is megcsinálható külön libként, csomagként.
Sőt, hogy ez létezik debian csomagként is, Arch-linuxon is  és van forrása a Sourceforge -n.
UHU-3 -on nincs, de nemsokára lesz.
Title: Re: Xep128
Post by: lgb on 2015.June.03. 22:36:12
Most látom az80ex Makefiléből , hogy akár dinamikusra is megcsinálható külön libként, csomagként.
Sőt, hogy ez létezik debian csomagként is, Arch-linuxon is  és van forrása a Sourceforge -n.
UHU-3 -on nincs, de nemsokára lesz.

Hat, ubuntu-ban van belole csomag, kulon lib marmint. Amiert nem azt hasznaltam, es inkabb belepakoltam:

* windows-on ez nehezkesebb lenne, es legyen egyseges
* mas distroban nincs esetleg Linuxon se ...
* optimalisabb statikusan linkelve (PIC code regiszterhasznalat stb)
* esetlegesen belenyulhatok a z80ex-be ha kell mondjuk vmiert ...

stb :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.03. 22:45:51
* esetlegesen belenyulhatok a z80ex-be ha kell mondjuk vmiert ...
Az mi? Maga a Z80 emuláció?
Title: Re: Xep128
Post by: lgb on 2015.June.03. 22:49:18
Az mi? Maga a Z80 emuláció?

Az. Ja, itt van Povi.
Title: Re: Xep128
Post by: Attus on 2015.June.03. 23:02:09
Most már van z80ex-1.21 csomagom, esetleg ezt dinamikusan lehetne belinkelni.

Legfeljeb hülyére patkolom a Makefile -ket.
:)

A statikus lib készítés,mint beidéztem, nekem most nem működik.

Persze megértem, a windózon előnyösebb a statikus, sőt mindenütt. Jó apró a z80ex...
Title: Re: Xep128
Post by: Zozosoft on 2015.June.03. 23:10:39
Az.
Van belöle Z180 verzió is? Ha nincs, akkor csinálsz? :-)
Title: Re: Xep128
Post by: lgb on 2015.June.04. 00:43:21
Most már van z80ex-1.21 csomagom, esetleg ezt dinamikusan lehetne belinkelni.
Legfeljeb hülyére patkolom a Makefile -ket. :)

Lelkes vagy, bar nem tudom, a xep128 jelenlegi allapotaban sok mindenre nem jo, nem erdemes _szerintem_ csomagolni stb. Persze, ha akarod, nyilvan megteheted :)
Imho, nagy patkolas nem kell hozza, hogy dinamikus legyen, LIBS = -et atirod kb arra, hogy

Code: [Select]
-lz80ex -lz80ex_dasm
Es talan eleg is lesz. Ja meg $(Z80_EX)-et kivenni a dependency-bol a $(PRG) rule-nal.

Quote
A statikus lib készítés,mint beidéztem, nekem most nem működik.

Spec a z80ex Makefile-jat nem en irtam, az kb az eredeti. En csak a masik szornyusegert vagyok a felelos :) Az mondjuk erdekes, hogy az ar-nek mi a baja ...

Quote
Persze megértem, a windózon előnyösebb a statikus, sőt mindenütt. Jó apró a z80ex...

Az is vicces, windows-om ugyanis nincs, csak gondoltam nem sok embernek lesz hasznos, ha Linux-only, szoval megneztem, tudok-e vmit kezdeni egy cross-compiler-rel.

Egy kiegeszites: szerintem ez a hasznaljuk mas forrasbol szarmazo (pl deb csomag) libet z80ex-nel nemsokara nem fog mukodni, ui a "nep" (Zozo) Z180 emulaciot szeretne, ha nem is tokeleteset feltetlen elsore. Ehhez viszont mar a z80ex-be is bele kell irni, azaz kulon csomagolt z80ex-el akkor mar le sem fog fordulni feltetlen, ha ez kesz lesz (ha ...). Mivel Xep128-ra amugy is azt tuztem ki celul, hogy nem ep128emu-val kivan versenyezni, inkabb "extremebb" dolgokat emulalni, a Z180 siman belefer az "extrem" kategoriaba :) Nyilvan, atlag EP emulaciora, fejlesztesre stb, az ep128emu mindig is jobb lesz. A masik, hogy a z80ex-ben levo disassembler az vmi csapnivalo, mar elnezest (inkabb irnek egy hasznalhatobbat). Bar igaz, nem is hasznalom :) A kodban benne van, volt, hogy minden opcode-ra bekapcsoltam, irja ki mi az, es ezt loggolva neztem, mit szurok el az emulacioban :D
Title: Re: Xep128
Post by: lgb on 2015.June.04. 00:46:24
Van belöle Z180 verzió is? Ha nincs, akkor csinálsz? :-)

Nem en irtam a z80ex-et sem :) Amugy talan a FUSE-hoz van koze (?), ahogy az JSspeccy-ben levo Z80 emunak is (amit aztan JSep-ben hasznaltam). FUSE eleg kozponti figura :) Egy Spectrum emulator, ha vki nem ismerne.

Mire lenne jo a Z180 emulacio amugy? Eleve sok utasitas vegrehajtasi idejet kene modositani, nehany dolgot "lebutitani" (nincs IXL/IXH stb), van amit hozzaadni (uj utasitas). Es marad meg sajna egy rakas extra feature, on-chip DMA miegymas, na ez biztos nem trivialis annyira. Miert lenne jo? :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.04. 07:54:49
Mire lenne jo a Z180 emulacio amugy?
Ha már van Z180-as EP, lehessen emulálni is :-)

Quote
Eleve sok utasitas vegrehajtasi idejet kene modositani, nehany dolgot "lebutitani" (nincs IXL/IXH stb), van amit hozzaadni (uj utasitas).
Pont erről van szó :-) És a legjobb lenne ha szólna az emulátor, ha "butításba" fut bele a program, így lehetne tesztelni mi kompatibilis.

Quote
Es marad meg sajna egy rakas extra feature, on-chip DMA miegymas, na ez biztos nem trivialis annyira.
Egyelőre ezek hanyagolhatóak.
Title: Re: Xep128
Post by: lgb on 2015.June.04. 08:13:26
Ha már van Z180-as EP, lehessen emulálni is :-)
Pont erről van szó :-) És a legjobb lenne ha szólna az emulátor, ha "butításba" fut bele a program, így lehetne tesztelni mi kompatibilis.
Egyelőre ezek hanyagolhatóak.

Jo, mondjuk ha elso korben azt mondja az ember, hogy Z180 emulacio annyi, hogy minden marad (azaz idozites tovabbra is Z80) es csak az utasitasokat "cserelni" (azaz ami Z180-on nincs, kivenni, ami van pluszba betenni), az mondjuk tenyleg nem annyira nehez feladat talan :) Ez persze messze nem normalis Z180 emulacio, de arra jo, hogy az ember teszteljen egy programot, hogy elmenne-e rajta, meg ha nem is pontos pl az idozites.

Az EXOS-od hogyan detektalja, hogy Z180 vagy Z80?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.04. 08:29:28
Az EXOS-od hogyan detektalja, hogy Z180 vagy Z80?
Code: ZiLOG Z80 Assembler
  1.                 LD BC,405H
  2.                 DB 0EDH,4CH ;MLT BC
  3.                 LD A,C
  4.                 CP 5
  5.                 JR Z,Z80
Title: Re: Xep128
Post by: lgb on 2015.June.04. 09:41:08
Koszi. Van errol vmi dox? Z180-ra guglizgattam, van ez-az, de ilyen normalis osszefoglalot nem talaltam. Tehat, ahol plusz opcode-ok kulon megvannak, pontosan mit csinalnak, flag-ekre milyen hatasuk van, meg ilyesmik. Illetve, mi az, amit Z80-hoz kepest nem tud, pl ahol DD/FD prefix IXH/IXL/stb-t "allitana elo" az Z180-on mit csinal? Semmit, mintha a DD/FD prefix byte ott sem lenne, vagy vmi mas funkcio van ott hozzarendelve akkor az opcode-hoz? Illetve, remlik (lehet, nem Z180-on volt!!), hogy olyan trukk is egyes Z80 "szeru" CPU-kon, hogy ahol a DD/FD amugy hatastalan (tudomisen LD A,B ele irod pl) az ugye Z80-on nem valtoztat semmit (kiveve, hogy plusz 4 T cycle a prefix feldolgozasa), mas CPU-kon viszont oda pl uj opcode-ot pakoltak. Mondjuk, szerencses esetben Z80-on sem hasznaltak ki ezeket, hiszen nem sok ertelme van prefixalni egy opcode-ot, ha ugyanaz marad a hatasa (mas a helyzet ugye az IX/IY "szetbontasaval" nemikepp ...).

Pl ilyet talaltam: http://mdfs.net/Docs/Comp/Z180/OpList
Title: Re: Xep128
Post by: Zozosoft on 2015.June.04. 09:46:58
Kezdetnek mondjuk a gyártó oldalán megnézni? :-) (http://zilog.com/index.php?option=com_product&Itemid=26&task=docs&businessLine=1&parent_id=139&familyId=19&productId=Z80180)
Title: Re: Xep128
Post by: lgb on 2015.June.04. 09:56:17
Kezdetnek mondjuk a gyártó oldalán megnézni? :-) (http://zilog.com/index.php?option=com_product&Itemid=26&task=docs&businessLine=1&parent_id=139&familyId=19&productId=Z80180)

Koszi. Tudod, alapvetoen lusta vagyok, elobb kerdezek inkabb :) Ezzel az a baj, hogy egy boszme nagy pdf, es elsore legalabbis nem latom, hogy van-e olyan resz, ahol Z80 vs Z180, ahol csak a kulonbsegek vannak, es nem kell 1000000 oldalon vadaszni, egyenkent osszehasonlitva. Mind1, nem farasztalak a maganeleti problemaimmal :) majd megkeresem :)
Title: Re: Xep128
Post by: Attus on 2015.June.04. 10:58:32
Lelkes vagy, bar nem tudom, a xep128 jelenlegi allapotaban sok mindenre nem jo, nem erdemes _szerintem_ csomagolni stb. Persze, ha akarod, nyilvan megteheted :)

Na, lelkes ugyan nem vagyok, csupán UHU csomagkészítő. Itt. (https://github.com/uhulinux/ub)
És mivel ep128 érdeklődésű is, megakadt a figyelmem a műveden.
Most már az a kérés, hogy a xep128 kerül e valaha olyan álloptba, hogy másokat is érdekelhessen és közkinccsé tehető legyen?
Ez ugyi rajtad múlik...

Ki fogom próbálni a gépre fordítva.
Title: Re: Xep128
Post by: lgb on 2015.June.04. 11:09:47
Na, lelkes ugyan nem vagyok, csupán UHU csomagkészítő. Itt. (https://github.com/uhulinux/ub)

Jo, ez nem kritika akart am lenni a reszemrol, pont ellenkezoleg :)

Quote
És mivel ep128 érdeklődésű is, megakadt a figyelmem a műveden.
Most már az a kérés, hogy a xep128 kerül e valaha olyan álloptba, hogy másokat is érdekelhessen és közkinccsé tehető legyen?
Ez ugyi rajtad múlik...

Valoszinu, hogy rajtam, hacsak vki nem akar beszallni a fejlesztesbe, mert akkor rajta is :) Kozkincse barmikor teheto, mivel github-on van, GNU/GPL stb. A problema inkabb az, hogy erdemes-e reklamozni a jelenlegi tudasaval ... A kerdesedre valaszolva: nehez megmondani, hogy mikor lesz "hasznalhatobb", nem fog-e leallni az egesz ido/kedv hianyaban stb. Nyilvan, ilyen kerdesekre nehezen tudok valaszolni. A fo problema amugy az, hogy nagyon nincs kedvem UI-t irni, hogy legyenek menuk, akarmi. Foleg azert sem, mert akkor kene windows es Linux/UNIX ala is, stb. Jelenleg az SDL hasznalata miatt nem nagy kunszt leforditani windows ala is, am ha platform specifikus reszek jonnenek, nem biztos, hogy a windows resz erdekelne tovabb, mivel nem hasznalok windows-t. Igy is csak azert probaltam win ala cross-compiler-rel elforditani Linux alol, mert gondoltam, hogy sok ember nem tud mit kezdeni egy Linux-only project-tel, koztuk olyanok is, akik EP fronton pedig ertekes segitseg/felhasznalo/stb lehetne az emu projectem kapcsan.

A jelenlegi athidalo jellegu tervem az, hogy kisse erdekes modon lehetne par dolgot allitani: EP szamara lenne egy XEP EXOS parancs. Ez voltakepp egy custom I/O porton atnyomja a command string-et az emulatornak, a valaszt meg visszaszipkazza (igy maga a parancs lekezelese az emulator altal, C-ben irva tortenik, stb). Igy ezen keresztul lehetne "EP-bol" :) par dolgot allitani (pl Z180 modra kapcsolas, stb). Esetleg meg egy ep128emu style FILE: vagy hasonlo megoldas azert nem jon rosszul (de ott mar file kivalaszto dialog box kene OS specifikusan, hacsak nem ragaszkodunk hozza, hogy nevet adjon meg az ember).

Valojaban az is kerdeses, hogy van-e ertelme a "mikor lehet kozkincse tenni" kerdesednek. Marmint: ha "atlag" Ep usert nezzuk, neki az ep128emu szerintem tobb mint tok jo. Amiert erdekes lehet ez a Xep128 azok nemikepp "extra" dolgok, amit szeretnek emulalni, ez nem feltetlen erdekel annyi embert sem, aki amugy Ep-zik.
Title: Re: Xep128
Post by: Attus on 2015.June.04. 20:36:57
Elindult nekem  is.
Külső z80ex libbel megy. Kiderült, hogy kell neki sdl2-net is a fordítás során.
Egyelőre csomagszinten az install fázisban a /usr/share/xep128 könyvtárpba cp -ltem a kész binárist és a sdcard.img combined.rom fájlokat.
Telepítés után eme könyvtárat a sajátomba másoltam, abba belépve terminálból indítva: ./xep128 megy.

Többet nem nagyon tudok vele kezdeni egyelőre,még azt sem tudom,miképp lehet kilépni belőle, egyszerűen becsuktam azablakját.
Title: Re: Xep128
Post by: lgb on 2015.June.04. 21:55:29
Külső z80ex libbel megy. Kiderült, hogy kell neki sdl2-net is a fordítás során.

Nem sokaig :) Epp most fejlesztem, es itt mar belso z80ex _kell_ mert abba is beleronditok :) Lasd pl Zozo Z180-at akar a nep cimu kialtvanyat :) Viszont cserebe egy Makefile-ban van az is, es nincs kulon .a archive leterehozas stb fazis kozte.

Quote
Többet nem nagyon tudok vele kezdeni egyelőre,még azt sem tudom,miképp lehet kilépni belőle, egyszerűen becsuktam azablakját.

Teljesen kepben vagy, ugy lehet kilepni :D
Title: Re: Xep128
Post by: lgb on 2015.June.04. 21:59:02
Btw Zozo! Partyn mondtad, hogy az EPDOS izebize meg ozaboza (magyarul mar nem emlexem a magyarazatra :oops: ), de hogy javitott EPDOS-szal jo lesz. Mert most Xep128 alol nezve csak villan 10 masodpercenkent hogy nincs eleg memoria, de semmit nem csinal mast. EPDOS 1.7/Z (2009) Hsoft latszik a kepernyon. Szoval, akkor ebbol van vmi hibajavitott, amit inkabb berakhatnak ebben a combined.rom-os file-ba, amit az emu hasznal? Illetve, otlet, mit lehetne meg esetleg, stb?
Title: Re: Xep128
Post by: Attus on 2015.June.04. 22:31:47
Epp most fejlesztem, es itt mar belso z80ex _kell_ mert abba is beleronditok :)
Az nem zavarna,ha belsővel menne, ha nem lenne ar problémája! Utána kellne szaglászni.
Legfeljebb a z80ex lib csomagom semmi másra nem lesz jó,mint, hogy a helyet foglalja a repónkban. :ds_icon_cheesygrin:

Title: Re: Xep128
Post by: lgb on 2015.June.04. 23:14:00
Az nem zavarna,ha belsővel menne, ha nem lenne ar problémája! Utána kellne szaglászni.
Legfeljebb a z80ex lib csomagom semmi másra nem lesz jó,mint, hogy a helyet foglalja a repónkban. :ds_icon_cheesygrin:

Mondjuk spec en ubuntu-n nezem, de ott rdepends szerint ott a kcemu miatt lehet a repo-ban. http://www.kc85emu.de/ Ha esetleg kell uhu-ba, biztos jol jon :) Az mondjuk szamomra fura, hogy UHU build miert produkalta azt, amit beideztel.

Title: Re: Xep128
Post by: lgb on 2015.June.04. 23:54:25
Na, implementaltam egy szep Z180 opcode-ot :) Amit az EXOS 2.4 hasznal detektalasra :)

Szoval, parancs kiad emulatorbol:

:XEP z180

Aztan a shift + pause gombok egyszerre (hard reset), es az EXOS maris Z180-nak detektalja. Nyilvan van ilyen is:

:XEP z80

Jo, tudom ez sok mindenre nem jo, foleg most meg, hogy Z180-bol nincs is meg semmi :) Csak kozben egy csomo dolgot ujra kellett strukturalni, meg irni egy XEP specifikus ROM-ot, amivel lehet (majd) bizeralni esetleg (jelenleg total kaotikus, szinte semmi nem mux belole).

Megint probalkoztam - a szokott helyen levo - win32 build-del, szokas szerint nem teszteltem ...
Title: Re: Xep128
Post by: lgb on 2015.June.05. 12:51:10
Kozben keszulget a Z180 "emulacio" ami nagyreszt egyenlore annyit jelent, hogy Z80-hoz kepest amit nem tud, azt nem fogja tudni :) Tippem szerint pl az INC IXH helyett ilyenkor Z180 siman azt hajtja vegre, ami DD/FD prefix nelkul lenne az opcode, azaz INC H -t jelen esetben. Ilyenkor egy jelzest beallitok, hogy invalid volt Z180 szamara, igy elvileg arra is lehetne hasznalni, hogy naplozni, igy visszanezheto, volt-e Z180 szamara problemas opcode, es ha igen hol. Azt meg  nem tudom, hogy ezt mi fogja kiirni, stb, mivel az emuban semmifele UI elem nincs jelenleg az emu window-n kivul, tobbek kozott ezert is egyszeru win ala is leforditani, mert nincs OS specifikus cucc nagyon benne (az SDL megoldja ...). Lehet, SDL uj ablakot kene nyitni, aztan abba kiirom, akkor legalabb platform fuggetlen marad, max randa lesz, mert nem nativ UI elem az adott OS-re :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.05. 12:59:30
Tippem szerint pl az INC IXH helyett ilyenkor Z180 siman azt hajtja vegre, ami DD/FD prefix nelkul lenne az opcode, azaz INC H -t jelen esetben.
Majd igyekszem megnézni mi történik ilyenkor.

Quote
max randa lesz, mert nem nativ UI elem az adott OS-re :)
Az meg kit érdekel? :-D
Title: Re: Xep128
Post by: Zozosoft on 2015.June.05. 13:01:21
Btw Zozo! Partyn mondtad, hogy az EPDOS izebize meg ozaboza (magyarul mar nem emlexem a magyarazatra :oops: ), de hogy javitott EPDOS-szal jo lesz. Mert most Xep128 alol nezve csak villan 10 masodpercenkent hogy nincs eleg memoria, de semmit nem csinal mast. EPDOS 1.7/Z (2009) Hsoft latszik a kepernyon. Szoval, akkor ebbol van vmi hibajavitott, amit inkabb berakhatnak ebben a combined.rom-os file-ba, amit az emu hasznal? Illetve, otlet, mit lehetne meg esetleg, stb?
Itt mi is a kérdés? :oops:
Amúgy Epdos 1.7-ből 2012-es a legfrissebb. De van 1.9 (nagyon béta :oops: ) is, SD-hez/vinyóhoz az kell.
Title: Re: Xep128
Post by: lgb on 2015.June.05. 14:09:05
Majd igyekszem megnézni mi történik ilyenkor.

Na, a szokott helyen uj windows build (nem irom tobbszor le: tesztelni nem tudom, hogy muxik-e ...). Van benne nemi Z180 "emulacio". Jelenleg ez annyi, hogy ismerti a MULT BC / DE / HL / SP-t, illetve az FD es DD prefixalt utasitasok (CB-sekre nem!) eseten Z180 modban azt hajtja vegre, amit vegrehajtana ha nem is lenne ott a DD/FD prefix, ha IXH/IXL/IYH/IYL lenne a dologban amugy. Arra tippeltem, hogy Z180 talan ezt csinalja, amugy nem tudom.

Ajanlott tesztelesi modszer: emulator elindit, majd a kovetkezo parancsot kiadod:

:XEP z180

Igy atvalt Z180 modba (menet kozben, valodi gepen ez persze igy nem menne, emulatornak ez nem gond).

Aztan:

LOAD"SYM"

szepen elhasal, gondolom hasznalna vmi IXH/IXL/IYH/IYL dolgot.

Visszavaltani Z80 modba (vagy az egesz emut ujrainditani, mert Z80-al indul):

:XEP z80

Ezek utan a SymbOS toltese sikerul.

Advanced megoldas, ami nem tudom Windows-ban megy-e, de talan ... Inditsd az emulatort DOS ablakbol, de a kimenetet iranyitsd at egy file-ba mert allat sok mindent kopkod ki. Ekkor csak az stderr-re meno "par" uzenet latszik, sokkal jobb. Igy latod a Z180 kezdetu sorokat a DOS ablakban, hogy hol mi tortent. Ami erdekes: valts Z180 modba, majd kerj egy hideginditast (break/pause gomb a pc billencsen, de a shift-el egyutt nyomva). A fenti DOS ablakos modszerrel (ha muxik windows-on ...) latszik, hogy Z180 inkompatibilitas dolgokba belefut a rendszer, habar lehet, ez vmelyik ROM miatt van amit hasznalok. Meg igy Z180 modban inditva latszik, hogy EXOS 2.4 tenyleg Z180-nak ismeri fel a procit.

Amugy, szerintem nem csak a nem CB-s de FD/FF prefixalt nemdokumentalt opcode-oknal kene kideriteni, hogy mit csinal a Z180 akkor, hanem pl CB opcode-ok kozul is nagyon sok hianyzik, pl ezeket osszevetve:

http://mdfs.net/Docs/Comp/Z180/OpList
http://www.z80.info/z80oplist.txt

Illetve, ED-s utasitasoknal (de ugye itt nincs amugy FD/DD prefix ...) is vannak (es itt uj Z180 op-ok is vannak raadasul), bar Z80-on az ED-s nem dokementalt opcode-ok szerintem sok mindenre nem jok, mivel csak meglevo dolgokat duplikalnak, ami mas dokumentalt opcode ugyanugy "tud".
Title: Re: Xep128
Post by: Zozosoft on 2015.June.05. 14:27:05
Az SD ROM az már 0.3-as? Abban irtottam ki az undocumentedeket, hogy lehessen végre programot is betölteni a Z180-on :-)
Title: Re: Xep128
Post by: lgb on 2015.June.05. 14:34:49
Az SD ROM az már 0.3-as? Abban irtottam ki az undocumentedeket, hogy lehessen végre programot is betölteni a Z180-on :-)

Hat ize, nem tudom hanyas :D Le lehet azt vhogy kerdezni? Amugy ez is vicces story. Elkezdtem osszerakni az emut, akkor "valahogy" csinaltam azt a combined.rom -ot ami cimfolyamatosan egymas moge masolt ROM-ok, amit egyben tolt be a Xep128. Epp tegnap futottam bele, hogy egyik ROM-ot meg kene neznem, hat rajottem, hogy fog sincs, pontosan milyen ROM-okat masoltam ossze :D Szoval tobb oraba telt, mire osszehasonlitgattam, hogy mi a fene lehet amibol ez nekem osszeallt :) Azota az emulator build-nel mar file-okbol rakom mindig ossze (illetve hat a Makefile alapjan a gep ...), igy nem kovetem el ezt a hibat.

Gyanus, hogy igazad van, ui Xep128 ilyeneket irogat Z180 modban:

Z180: Invalid Z180 opcode (Z80 undocumented)!! at PC=CA42h [07h:0A42h]

A 7-es szegmens pedig ha minden igaz, vhol az SDext kornyeken lesz ... Szoval, akkor most mi a legujabb SD ROM, illetve amiben nincs mar undoc opcode? Akkor kicserelem :)

Az EPDOS-os kerdesed (hogy nem erted a keredesemet hehe) pedig az lett volna, hogy ami most van Xep128-ban az nem hasznalhato, mert allandoan azt irja csak, hogy nincs eleg memoria. Itt is az lett volna a kerdesem, hogy van-e ujabb, amivel menni fog (na itt nem Z180 modbol van a baj, Z80-al se megy). Mondjuk, en a combined.rom-ba beletettem EPDOS-t kulon is, az felesleges? Nem is neztem, mi van az SD card cart kornyeken ... :) Lehet annak flash-eben is van?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.05. 14:40:54
Hat ize, nem tudom hanyas :D Le lehet azt vhogy kerdezni?
:HELP hasznos tud lenni :-)

Quote
Amugy ez is vicces story. Elkezdtem osszerakni az emut, akkor "valahogy" csinaltam azt a combined.rom -ot ami cimfolyamatosan egymas moge masolt ROM-ok, amit egyben tolt be a Xep128.
Ilyet egyébként lehet sajátot is csinálni?

Amúgy fontos dolog: a Spectrum EMU ROM-nak xxxxxx00B,xxxxxx01B szegmenseken kell lenni, mivel a szegmensszámok fel vannak használva a "DAVE átvariálja az A14/15 értékét" dolognak a helyrehozásához.

Quote
A 7-es szegmens pedig ha minden igaz, vhol az SDext kornyeken lesz ... Szoval, akkor most mi a legujabb SD ROM, illetve amiben nincs mar undoc opcode? Akkor kicserelem :)
Raktam fel egy topickal arrébb :-)
Title: Re: Xep128
Post by: lgb on 2015.June.05. 15:12:45
:HELP hasznos tud lenni :-)

Ja, azt hittem nagyobb magia, mivel azt te is lathattad ha mar probaltad az xep128-t :) Amugy :HELP szerint 0.1-es az SDEXT. Ha errol beszeltunk :) EPDOS-ra 1.7-et ir. Altalaban is igaz ram, hogy mindig a legegyszerubb dologra nem gondolok pont!

Quote
Ilyet egyébként lehet sajátot is csinálni?

combined.rom-t? Tok egyszeru, egymashoz vannak masolva (appendelve) a ROM image-ek. Magyaran, azt egy az egyben betolti az EP fizikai/linearis cimtartomany elejetol kezdve (azaz az EXOS-al kezdodik nyilvan), es ami a file-ban az offset, ott lesz EP memoriatartomanyban is minden. Annyi, hogy pl SD cuccoknal trukkos, mert a flash image merete 0xE000 szokott lenni. Szoval oda kell meg 8192 byte "toltelek", hogy ha utana masolsz valamit, akkor megfelelo cimre keruljon az mar (felteve, ha akarsz oda masolni valamit meg utana ...). Illetve, most mar van egy sajat ROM-om is "XEP" neven, az tud kommunikalni az emulatorral, es lehet vele emulatorbol csinalni dolgokat, ami jelenleg igazabol kimerul a z80/z180 valtasban, mas ertelmes dologra nem jo meg. Ennek forraskodja is ott van a github-on, bar most vettem eszre, hogy vmit elrontottam, mert :HELP akarmi eseten is a XEP ROM help-je jon be :D Biztos kihagytam az osszehasonlitast, hogy nekem szol-e a HELP "request" :D

Amugy github nezheted a forrast, itt a Makefile-ban a ROM_PACK_LIST = sornal van, hogy miket masol egymas utan szepen:

https://github.com/lgblgblgb/xep128/blob/master/rom/Makefile

Itt meg a XEP ROM forrasa:

https://github.com/lgblgblgb/xep128/blob/master/rom/xep_exos.asm

Kerdeses, hogy ennek van-e ertelme, igy EP-bol vezerelni az emulatort :) Mert ha ugyis lesz majd masik ablak (UI-t utalok irni, szoval feldobna meg egy ablakot aminek also soraba lehet pl parancsokat gepelni, a felso reszen meg az emulator uzenetei, illetve a parancsokra adott valasz lesz, kb mint egy chat alkalmazhos hasonlo modon), akkor ott lehet egyszerubb, illetve egy program futasa kozben nehez is esetleg EXOS parancsokat gepelni. Bar erdekes feeling, hogy EXOS paranccsal lehet pl CPU-t valtani :)

Quote
Amúgy fontos dolog: a Spectrum EMU ROM-nak xxxxxx00B,xxxxxx01B szegmenseken kell lenni, mivel a szegmensszámok fel vannak használva a "DAVE átvariálja az A14/15 értékét" dolognak a helyrehozásához.

Hmmm! Akkor lehet ezert csunya fekete alapon kek a ZX spectrum emulacio, ha Xep128-bol nyomok ez :ZX -et? :) Koszi, ennek (is) utana nezek.

Masik otletem: en a forumon egy hozzaszolasod alapjan probaltam kitalalni, hogy megy ez a ZX spectrum emu card. Ott a 0x42-es port volt talan igy fejbol, ahol irtad, hogy a data bus allapota az NMI kivaltasanal, es oda van irva, hogy "mixed". Vagy vmi hasonlo. Ez mit jelent?

Quote
Raktam fel egy topickal arrébb :-)

Koszi, akkor megvizslatom! Amugy az SD cartridge-re szant flash tartalomban van BASIC? Gongolom igen, mert nem mindenkinek van EXOS 2.4-e, vagy hasonlo :) Ha viszont igen, akkor felesleges bele BASIC.

Nu, elvileg mar az van fenn a szokott helyen a zip-ben, amiben most akkor 0.3-as SDEXT ROM van.
Title: Re: Xep128
Post by: Attus on 2015.June.05. 21:15:32
A mellékelt folttal tudtam lefordítani UHU alá. A wget, a git nem működik a chrootban,ezért a buildinfo hiányos. A chrootba lépés és fordítás előtt történik itt a letöltögetés éa az unzip is a rom könyvtárba.
A build logot is csatolom, a jövöbe tekintőn.
Title: Re: Xep128
Post by: lgb on 2015.June.05. 21:26:00
A mellékelt folttal tudtam lefordítani UHU alá. A wget, a git nem működik a chrootban,ezért a buildinfo hiányos. A chrootba lépés és fordítás előtt történik itt a letöltögetés éa az unzip is a rom könyvtárba.
A build logot is csatolom, a jövöbe tekintőn.

Szerintem, ha meg chroot-on kivul ezt mondod:

Code: [Select]
make combined.rom
make sdcard.img

Akkor meglesz ami kell, es igy Makefile patch nelkul is jo lesz, ha ezek utan ereszted ra a build-et. De mivel UHU build system-et nem ismerem, csak tippelek :) Tok jo a screenshot, majdnem ugy nez ki, mintha egy ertelmes emulator lenne, csak sajnos en tudom, mennyi minden kene meg bele :) Lasd a TODO file-t epp most pakoltam bele.

Btw, akkor most rendesen lefordult belso z80ex-szel (amibe el is kezdtem beleirogatni, igy kulso mar nem is annyira focizik, mint lehetoseg ...), miota nem kulon Makefile van neki?

Amugy, erdekes, hogy irod, legalabb vkit erdekel, mert azert mar lassan kezdek felni tole, hogy mindenkinek elege van az "LGB irt meg egy emulatort mar megint, OMG" allapotbol :) Mondjuk Zozo csak orul, hogy csak az o keresere elkezdtem Z180-azni, mindent a (leendo?) userekert ;)

A git a buildinfo-ba meg amugy is fura otlet :) mert mi van ha valaki nem clone-ozta a repo-t, akarmi, hanem letoltotte a forrast, amiben nincs is git info pl? :)
Title: Re: Xep128
Post by: Attus on 2015.June.06. 07:21:16
A wget kiirtása nélkül most még :| nem megy.

Minden normálisabb build rendszer úgy van felépítve, hogy ne kelljen fordítás közben töltögetni, az mindig a fordítások előtt történik. Szigorúan szét vannak választva a letöltési, fordítási, csomagösszerámolási,vagy telepítési szakaszok. A configure szkriptek és Makefilék is a normális forások esetében úgy vannak megírva, hogy ehhez az elvhez igazodnak.Van persze kivétel sok,egyik elrettentőnek ott a  go (https://golang.org/).
Csak azért írom ezeket, mert jó lenne, ha foltozás nélkül le lehetne majd fordítani a forrásodat.
Klassz, hogy már a belső z80ex szépen használható.
Kár, hogy én a C-hez nem értek ésmár valszeg nem is fogok túlzottan.

Off..
Az UHU  build rendszer nagyon tömören ilyen:

root felhasználó.
1. Minden forrás letöltése.
2. Chroot rendszer felépítése csak a fordításhoz szükséges csomagokból, a fordítási környezet beállítása, build felhasználó létrehozása.
A build felhasználó csak a chroot rendszeren belüli munkakönyvtáraihoz tud hozzáférni, nincs root joga, semmi olyat nem tud végezni, amihez az kellene,így az alprendszer védett. Letöltögetni sem tud fájlokat.
3. A források átmásolása a chroot rendszerbe.

build felhasználó
4. A build felhasználó átchrootol és logok írkálása közben ott lefordítja cuccot és felinstallálja a munkakönyvtáraiba, egy rakás utómunka, ellenőrzés után összerámolja dpkg csomaggá majd elhagyja a chroot -ot. Hiba esetén azonnal abbahagy mindent.

root felhasználó
5. A kész terméket a chroot munkakönyvtárakból kimásolja a rendes célhelyre és uhu csomaggá pofozza.

A git verziólekérdezéshelyett valami jobb kellene.

Átolvasom a TODO fájlt.
Title: Re: Xep128
Post by: Attus on 2015.June.06. 08:04:34
Az sem tetszik, hogy maga a xep128 bináris a futatási könyvtárában keresi a romokat és egyebeket. Túl windózos, "mindent egyrakásra valahova másolni" stílus.
Létezik nls is.
A futtatható binárisnak előbb-utóbb a /usr/bin alatt kell lennie, a ro adatoknak meg a /usr/share/xep128 alatt. Gondolom nem nagy gond ennek megvalósítása.
Windowsnál meg mindegy.
Title: Re: Xep128
Post by: lgb on 2015.June.06. 08:51:45
:) Na tessek :) Eloszor is megjegyeznem, hogy ugye windows-om soha nem volt se otthoni se munkahelyi gepemen, szal ne tessek am megvadolni itt semmivel :) :) Az egyeduli oka, hogy megprobaltam cross compiler-rel windows ala is forditani Linux alol az, hogy sok EP-snek nem lenne hasznos, ha Linux/UNIX/whatever only project lenne, ha ok Windows-oznak (viszont most probraltam eloszor barmit cross-compile-alni windows ala is, meglepo hogy ilyen siman sikerult ...). A masik: termeszetesen tisztaban vagyok vele, hogy illeni csinalni, ami a normalis make mechanizmust, letoltest, es a dir struktura hasznalatat is illeti. Jelen allapotban viszont en ugy voltam vele, hogy en se installalnam vmi "official" helyre mint az /usr/bin (vagy akar /usr/local/bin ha csak "kezzel" szorakozok es nem csomagbol). Most en is allandoan atirogatom es a forras konytaraban forditva onnan is inditom es _ennyi_ :) Meg ugye a cucc jelenlegi tudasanal ugy erzem nem a make/stb a legnagyobb problema, amit meg kell oldanom :)

Jut eszembe, ha zavar a cucc jelenlegi mukodese, akkor a $(PRG): kezdetu rule-nal a Makefile-ban vedd ki a vegerol a $(ROM) -ot es az $(SDIMG) -t, akkor siman make-nal nem fogja azokat letolteni, "kezzel" viszont tovabbra is lehet (make combined.rom es make sdcard.img).
Title: Re: Xep128
Post by: Attus on 2015.June.06. 11:15:07
Rendben!
Őszintén szólva örülök az egésznek és szurkolok. A végére úgyis rendben lesz, a működése legyen jó, az a lényeg.
Jó lenne tudni, István hogyan is csinálta meg a windózos cuccát ugyanabból a forrásból.
Title: Re: Xep128
Post by: lgb on 2015.June.07. 12:35:19
Amugy, ott a github-on az "issues" link, adj le bug report-ot nyugodtan, arra valo, nem haragszom meg :) Legalabb elmondhatom, hogy olyat is kaptam, a vegen meg olyan erzes lesz, mintha erdekes lenne masok szamara is amit csinalok :) A masik, van mar make install, ez ugye egyreszt a Makefile -ban a PREFIX alapjan felrakja a binarist a ket data file-t is. Az emulator jelenleg gagyi, annyi lett meg beleteve, hogy eloszor a current directory-bol probalja tolteni, ha ez nem megy, akkor a DATADIR -bol. Igy egy picivel normalisabb mar. Ami meg varhato: home-ban config directory-t is nez (~/.xep128/ ... esetleg a modernebb ~/config/xep128/ "standard") es ott is nezze. Vagy hasonlo. Windows-nal jelenleg meg semmi ilyesmi, ott tovabbra is csak path info alapjan akarja megnyitni. Na meg ott a TODO file, ebben persze igen elvadult otletek is vannak. Lehet javaslatot is tenni.

Ha egyszer normalisan kitalalom, hogy mux az SDL2 (van sok metodus erre, Surface, Texture, HW gyorsitas es nelkule, texture streaming, hw scaling, miegymas temak), akkor eleve gyorsabb is lehet, illetve lenne vegre full screen uzemmod is,  amit en szemely szerint preferalnek, de lehet, mas embernek mas lenne a prioritas ... Most a Z80 CMOS/NMOS emulacio, illetve a Z180 van teriteken, ha mar belekezdtem (azt zaroljelben irom, hogy valoszinu beleteszek egy nyulfarknyi primo emulatort is, mert az egyszeru gep, es egyszerubb rajta tesztelni kulonbozo emulator irasi elkepzeleseimet). A masik: a "command window", amit mar irtam, uj ablak megnyilik, mennek benne az uzenetek stb, also sorba meg lehet gepelni parancsokat az emulatornak, nekem ez mindig jobban behott mint GUI-s menuk, miegymas, aztan lehet orakig keresgelni, hogy hol is van az opcio. Hiaba no, CLI orientalt ember vagyok am :) Plusz ezt egyszerubb is megcsinalni, es platformfuggetlenebb, menne normalisan es egyszeruen win/linux alatt is ugyanugy SDL-bol csupan.

Mondjuk ez a z80ex erdekes (a Z80 emulator benne, amit nem en irtam, csak epp belepiszkitok mar egy ideje ...), elvileg olyat is tud, hogy T-state callback, azaz minden T state valtas utan meghiv egy fuggvenyt es - szinten elvileg - opcode-on belul pontosan akkor amikor Z80 is tenne. Ez - ismet csak elvileg - arra is jo lehet, hogy a Nick emulacioval kesobb olyan precizen ossze legyen hangolva, ami megkozeliti a valodi gepet, igy pl VRAM accessnel lehetne korrektebb a viselkedese (az jelenleg full speed-ben megy, ahogy JSep-nel is ez volt a gond ...).
Title: Re: Xep128
Post by: Attus on 2015.June.07. 16:29:06
Látom, hogy debian csomaghoz való cuccokat is felvettél a TODO -ba.

"debian package building easily?"

Vagyis egy debian könyvtár benne a rules, satöbbi fájlokkal.

A wget használatát csomagkészítésnél, vagyis telepítő fájl (deb, rpm, pkg.tar.gz,) készítésnél szintén senki nem használja a fordítás során.
Jó lenne onnan száműzni végleg.
Mindig a sources részben szerepel minden kiindulási forrás, és egyéb adathalmaz szinte minden disztribúciónál, azok beszerzése a fordítási fázis előtt történik. Debiannal is így van, Arch -nál is, Fedora -nál is, és gondolom windóznál is így lehet egy setup.exe előállítása során. Még Gentoo ebuild is,mely helyben fordítja bele a gépre a futtatható cuccot egy külön munkakönyvtárba fordítgat a letöltögetések után, majd onnan telepíti a terméket.

Örülök,hogy kivetted az sdl2-net -et, azt sem értettem, hogy mi a francnak vetted bele eredetileg? Esetleg a leendő hálózati rész emulációhoz?

Baromi sokat gürizel a cuccal, azt látom. A teljes képernyő az nagyon fontos, a videó hardveres gyorsítás a mai gépeknél esetleg nem fontos.
Title: Re: Xep128
Post by: Attus on 2015.June.07. 16:50:16
Jobb ötletem van.
Legyen külön rész a data, meg a rom! 257 Mb!
Mi a francnak mindig letöltögetni őket és újra összerámolni minden egyes fordításnál, meg telepítésnél?
Bele kell venni csupán runtime dependenciának őkelméket.
Title: Re: Xep128
Post by: lgb on 2015.June.07. 16:53:32
Quote
Vagyis egy debian könyvtár benne a rules, satöbbi fájlokkal.

Ja kb, bar nem tudom mennyi ertelme van, ha valaki akarja beteszi adott distribbe, az mar nem az upstream dolga szokott lenni, lasd lentebb :)

Quote
A wget használatát csomagkészítésnél, vagyis telepítő fájl (deb, rpm, pkg.tar.gz,) készítésnél szintén senki nem használja a fordítás során.
Jó lenne onnan száműzni végleg.

Nem szamuzom semmikeppen, hiszen hasznos, ha valaki forrasbol akarja forditani. Vagy teszelni, akarmi :) Azt hiszem, mi nagyon kulonbozokeppen gondolkodunk, te nyilvan "end-user" szamara csomagkesziteshez allaspont, nekem meg az, hogy forrasbol forditanam ugy is, nem erdekelnek a csomagok, csak hat lehet, mas nem igy van vele :)

Quote
Mindig a sources részben szerepel minden kiindulási forrás, és egyéb adathalmaz szinte minden disztribúciónál, azok beszerzése a fordítási fázis előtt történik. Debiannal is így van, Arch -nál is, Fedora -nál is, és gondolom windóznál is így lehet egy setup.exe előállítása során. Még Gentoo ebuild is,mely helyben fordítja bele a gépre a futtatható cuccot egy külön munkakönyvtárba fordítgat a letöltögetések után, majd onnan telepíti a terméket.

Nem kell tulmagyarazni, ismerek par disztribuciot azert - sot pl ebbol is elek a munkahelyemen, ha epp nem mas UNIX-okat gyotrok pl Solaris, OpenBSD, stb :) Am azt is tudom, hogy egy disztribucio keszitoi nem feltetlen arra alapoznak, hogy csak letoltik a forrast, es kesz, lehet forditani. Az mar az adott disztribucio feladata, hogy az upstream forrasok alapjan patch-elje adott esetben a software-t, hogy az "beleilleszkedjen" az o elkepzeleseikbe. Amit te sorolsz, az mind olyan peldak, ami adott disztribuciokat illeti, itt viszont most a disztrib fuggetlen source-rol van szo, ami max upstream-nek tekintheto, amire az adott csomag maintainere az adott disztribben (jelenleg pl te) alkalmazza a megfelelo patch-et, amivel az adott disztribhez "illeszti" a dolgot. Na, nem tudom megfogalmazni erthetoen, de talan megis :) Szoval szerintem te itt nagyon keversz vmit, mivel ez a forras nem UHU-hoz irodott, hanem generic C code (ami raadasul elegge portable is, mivel Windows-ra is fordul). Masreszt nemikepp objektivebb ok: pl a ROM image tartalmaz olyan reszt (a Xep ROM) ami szinten lefordul! Azaz ahhoz, hogy a combined.rom eloalljon, kell egyreszt wget (hacsak nem akarom berakni a szokott image-eket a forras faba ...), de kell hozza forditani is, raadasul meg osszefugges van ketto kozott (az emu keresi a combined.rom-ban a Xep signature-t hogy az invalid op Z80ex ED callback-et arra a szegmensre ervenyesitse csak).

Szoval, en ugy erzem, kicsit elbeszelunk egymas mellett, az upstream az upstream, a disztribucio az disztribucio, a ketto kozott patch-ek stb is vannak amit mindig is az adott disztribucio csinalt, es nem akart azert megreformalni az upstream forrast, hogy ok csinaljak maskepp, mert nekik ugy jo. Most mondom mindezt minden ellenerzes nelkul, mielott azt hinned, hogy szemelyesnek vettem a kerdest, mert valahogy mindig mindenki ezt gondolja egy-egy hosszu iromanyom utan, lehet en irok sok maszlagot :)

Quote
Örülök,hogy kivetted az sdl2-net -et, azt sem értettem, hogy mi a francnak vetted bele eredetileg? Esetleg a leendő hálózati rész emulációhoz?

Igen, ahhoz, csak aztan mivel abba bele sem kezdtem, inkabb kivettem (legalabbis addig is minek legyen benne, raer majd akkor ha kell ...). Mondhatni, ott felejtettem :)

Quote
Baromi sokat gürizel a cuccal, azt látom. A teljes képernyő az nagyon fontos, a videó hardveres gyorsítás a mai gépeknél esetleg nem fontos.

Ah, nem sokat am, ha tenyleg sokat dolgoznek vele, akkor min 20x gyorsabban lenne minden, mint igy, hogy mennyi idom van ra :)
Title: Re: Xep128
Post by: lgb on 2015.June.07. 16:55:18
Jobb ötletem van.
Legyen külön rész a data, meg a rom! 257 Mb!
Mi a francnak mindig letöltögetni őket és újra összerámolni minden egyes fordításnál, meg telepítésnél?
Bele kell venni csupán runtime dependenciának őkelméket.

Igen, valoban az SD image resznel meg igazad is van, mert az tobbe/kevesbe konstans, vagy user sajatot hasznal, stb. A ROM-oknal mar nehezebb a helyzet (jelenleg! hogy nem igazan configolhato stb), lasd elozo hosszu hozzaszolasomat.
Title: Re: Xep128
Post by: Attus on 2015.June.07. 17:19:11
Igen, valoban az SD image resznel meg igazad is van, mert az tobbe/kevesbe konstans, vagy user sajatot hasznal, stb. A ROM-oknal mar nehezebb a helyzet (jelenleg! hogy nem igazan configolhato stb), lasd elozo hosszu hozzaszolasomat.
Nem baj, hogy én másképp gondolkozom sok téren, tényleg szinte "végfelhasználói" fejjel.
:)
Legtöbbet maga a kód fog változni, az SD imágó a legkevesebbet. Ha külön kezelem a ROM-okat a xep128 C forrásától, akkor az én helyzetem jóval könnyebb.
Meg is fogom tenni foltozgatásokkal magamnak, tőled függetlenül.
Title: Re: Xep128
Post by: Attus on 2015.June.07. 17:46:24
Kaptam egy ilyen hibát:
Code: [Select]
attila:~$ xep128 >/dev/null
Program path: xep128
LOAD: cannot found combined.rom in base dir, trying: /usr/lib/xep128/combined.rom
ERROR: NOTE: File open from DATADIR instead of current directory: /usr/lib/xep128/combined.rom
That is OK, and it's only a DEBUG message for now ... :)
XEP ROM cannot be found :(
ERROR: Cannot find XEP EXOS ROM signature inside ROM image "combined.rom". You can use Xep128 but internal :XEP access won't work!
IO: WRITE: unhandled port B8h write with data 00h
IO: WRITE: unhandled port B9h write with data 00h
IO: WRITE: unhandled port BAh write with data 00h
IO: WRITE: unhandled port BBh write with data 00h
IO: WRITE: unhandled port BCh write with data 00h
IO: WRITE: unhandled port BDh write with data 00h
IO: WRITE: unhandled port BEh write with data 00h
BF register is written -> W_ALL=1 W_M1=0 CLOCK=8Mhz
LOAD: cannot found sdcard.img in base dir, trying: /usr/lib/xep128/sdcard.img
ERROR: NOTE: File open from DATADIR instead of current directory: /usr/lib/xep128/sdcard.img
That is OK, and it's only a DEBUG message for now ... :)
BF register is written -> W_ALL=0 W_M1=0 CLOCK=8Mhz
Z180: would be Z180 config port, ignored <no Z180 emulation> for writing port 32h with value of 00h.
Z180: would be Z180 config port, ignored <no Z180 emulation> for writing port 3Fh with value of 40h.
BF register is written -> W_ALL=0 W_M1=0 CLOCK=8Mhz
INFO: Szivacs van!
attila:~$
 

Viszont működik a :XEP
:shock:
Title: Re: Xep128
Post by: lgb on 2015.June.07. 17:52:27
Na, a XEP ROM cannot found az pont az amirol irtam: az emulator C-ben irt resze (maga az emulator) es az a nyulfarknyi sajat ROM-om osszefugg, tehat ha nem frissited a ROM-ot, mikozben valtozik az emu, ez lesz belole. Tobbek kozott azert is csinaltam ugy hogy "egyben" csinalja a ROM osszeallitasat es az emu forditast, amit te kifogasoltal :) Ez mondjuk amugy nem fatalis hiba, ahogy az uzenet is irja (illetve elvileg ablakba is kiteszi ...) ettol az emu megy, csak par controll funkcioja nem elerheto, ami jelenleg amugy is csak kb a Z80/Z180 valtas, szoval nem nagy szam :)

Code: [Select]
LOAD: cannot found sdcard.img in base dir, trying: /usr/lib/xep128/sdcard.img
ERROR: NOTE: File open from DATADIR instead of current directory: /usr/lib/xep128/sdcard.img
That is OK, and it's only a DEBUG message for now ...

Ez meg nem hiba, a kiiras ellenere ez inkabb debug uzenet  Ahogy irom is benne: "That is OK, and it's only a DEBUG message for now ... :)"

A "szivacs van"  a vegen  az az exit handler, mindig azt irja, ha kilepsz, ideje lenne kiszednem az ilyen sajat magamnak szolo "vicces" uzeneteket

Elozo hozzaszolasodban meg irod, hogy end user fejjel gondolkodsz: ez total nem baj, ha disztribuciot tartasz karban, ez nagyon fontos!
Title: Re: Xep128
Post by: Attus on 2015.June.07. 18:42:42
Na, a XEP ROM cannot found az pont az amirol irtam: az emulator C-ben irt resze (maga az emulator) es az a nyulfarknyi sajat ROM-om osszefugg, tehat ha nem frissited a ROM-ot, mikozben valtozik az emu, ez lesz belole. Tobbek kozott azert is csinaltam ugy hogy "egyben" csinalja a ROM osszeallitasat es az emu forditast, amit te kifogasoltal :) Ez mondjuk amugy nem fatalis hiba, ahogy az uzenet is irja (illetve elvileg ablakba is kiteszi ...) ettol az emu megy, csak par controll funkcioja nem elerheto, ami jelenleg amugy is csak kb a Z80/Z180 valtas, szoval nem nagy szam :)

Beh! Van egy get cache a rendszeremen, az abban lévő régebbi rom_pack.zip -ből csináltam. Arra gondoltam, hogy módosítottál a rom_pack.zip fájlon közben.

Most az újabbal is kipróbáltam, de ekkor is visszaböffen, hogy nincs XEP, ennek ellenére működik a z80/z180 váltás. Legalábbis felbukkant a jószerencsét ablak,
Még nem szabtam szét, egybe-mindent módon csináltam.

Mi ez a sjasm ?

Hát persze,ez egy z80 assembler, mely nekem nincs a rendszeremen. Pótlom.
Title: Re: Xep128
Post by: lgb on 2015.June.07. 19:12:16
Ejj. Na jo, latom bonyolodik a helyzet. A terv a kovetkezo: mivel a combined.rom sok amugy kb statikus (EXOS stb) cuccot is tartalmaz, es kb par byte-nyi XEP ROM-ot, ez gondot okoz. Plusz igy a combined.rom tul szoros szimbiozisba kerul az emu verziojaval is. A tervem a kovetkezo: legyen a combined.rom statikus, ROM image-ek, stb. A sajat XEP ROM-ot (mivel ugysem tul nagy, ugyis forditani kell, ugyis osszefuggesben all az emu verzioval!) beteszem az emuba kozvetlen, es majd onnan masolja a megfelelo helyre az "EP memoriaban" kozvetlenul a combined.rom betoltese utan. Ezzel elerhetove valik, hogy ne legyen gond a verziok kozotti kulonbseggel, plusz a ROM es az SD card image-ek sem kozvetlen fuggosegek. Szerintem igy a kecske is jol lakik, es kaposzta is megmarad :D

Visszaterve a kedesedre, hogy nem talalt XEP rom-ot megis megy: igen, ez atmeneti idoszak, mivel jelenleg egy I/O porton kommunikal a ketto, igy mux barhol, de epp most van folyamatban ED trap-re atteres, ezek utan mar nem fog! Viszont a fenti megoldassal nem fog gondot jelenteni az sem legalabb, es igy el sem lehet legalabb rontani, hogy veletlenul vki kiszedi az egyedileg osszeallitott combined.rom-jabol, mar ha valaki tenyleg csinal olyat :)
Title: Re: Xep128
Post by: lgb on 2015.June.07. 19:51:13
Na, amennyire tudtam ennyi ido alatt: terv vegrehajtva! combined.rom es az SD card image tovabbiakban nem fugg a normal build time-tol remelhetoleg, viszont igy cserebe kell sjasm Z80 assembler a build-hez, hiszen most ott van a XEP ROM. A "make combined.rom" es "make sdcard.img" hasznalhato a megfelelo cucc elkeszitesere/letoltesere a forditastol fuggetlenul, vagy kombinalva a "make data" segitsegevel. Felteve, ha nem rontottam el semmit :D

UPDATE: a xep_rom.rom -ot repo-ba tettem. igy, ha csak vki nem nyult bele az asm forrasba es ugy build-eli, elvileg nem kell sjasm az Xep128 forditasahoz. Az tovabbira is igaz remelhetoleg, hogy sima make-re nem tolt le semmit, mivel mint irtam, atdolgoztam a ROM eloallitast, es a XEP ROM mar az emu "belsejebol" jon, ami a fuggesegi problemat megoldotta.

FIGYELEM! ez azt is jelenti, hogy akinek regi combined.rom-ja van, annak ajanlott frissiteni azt (marmint csak akkor, ha xep128 emulatort binarist - windows-on az exe-t - is frissitette .... reginek tovabbra is kell a combined.rom-ban levo XEP ROM, illetve: nyilvan most egyszeri fontos frissitesrol van szo, mivel megvaltozott a XEP EXOS_ROM kezelese!), kulonben ket XEP latszik neki a :HELP -re :D Egyik az emubol, masik a combined.rom-bol ...

Ez azt is jelenti, hogy ezentul viszont az sdcard.img es a combined.rom frissitese egyaltalan nem szukseges, akkor sem, ha uj Xep128 verzio jon ki, mivel ezek a file-okban (kulonosen a ROM image-ben marmint!) nincs mar tobbe Xep128 verzio fuggo cucc, ami eddig volt.
Title: Re: Xep128
Post by: Attus on 2015.June.07. 21:18:24
Közben én is megcsináltam a jó cuccot még a régi revízióból. fa5e95
És a sjasm -nak köszönhetőn jó lett a szeparálr rom és img cucc, meg a különálló xep128. Szépen működik,ujjgyakorlatnak jó volt.
Ilyen a gitt,folyton változik,már felejtős is a művem.
Jöhet majd az újabb szakasz, de csak később foglalkozom vele.

Jé!
:shock:
Ez volt az ezredik hozzászólásom,felsőbb osztályba léptem.
:)
Title: Re: Xep128
Post by: Attus on 2015.June.07. 21:24:21
Nos, ha egérrel az ep ablakra kattintok, eszméletlen írkálás jő a terminálba az egér mozgatásról.
Az esc billentyűre megnyugszik.
Title: Re: Xep128
Post by: lgb on 2015.June.07. 21:33:42
Nos, ha egérrel az ep ablakra kattintok, eszméletlen írkálás jő a terminálba az egér mozgatásról.
Az esc billentyűre megnyugszik.

Jaja, hat szandekos nyilvan :) A Xep128 jelenleg tele van mindenfele szuksegtelen kiirasokkal :) Ha az stdout-ot atiranyitod, nagyreszt eltunik. A fontosabbak viszont stderr-re mennek, igy azok tovabbra is latszodnak, ilyen pl az mouse motion event, grab modban. Ez nem hiba tehat, azok a kiirasok mind szandekosak, es nekem kellenek deubg celjara ugymond :) Nyilvan, egyszer majd rancba szedem, hogy pl magatol ne csinalja (vmi debug kapcsolora csak). Stb. A jelelnlegi 0.1 pre alpha izebize nem eppen egy baratsagos es user friendly kiadas :)
Title: Re: Xep128
Post by: lgb on 2015.June.07. 21:46:50
És a sjasm -nak köszönhetőn jó lett a szeparálr rom és img cucc, meg a különálló xep128. Szépen működik,ujjgyakorlatnak jó volt.
Ilyen a gitt,folyton változik,már felejtős is a művem.

No igen, en probaltam finoman szolni, hogy jelenleg meg nagyon az elejen jar, teljesen atalakulhat minden stb, nem biztos, hogy megeri neked beletolni az energiat, legalabbis most meg. Persze nem baj, ha csinalod, nem arrol van szo :) Sot.

Quote
Ez volt az ezredik hozzászólásom,felsőbb osztályba léptem.

Grat! :) Es fontos 1000. hozzaszolasodat a Xep128-ra "pazaroltad"? :)
Title: Re: Xep128
Post by: lgb on 2015.June.08. 14:27:48
Esetleg ki lehet proszalni, garancia persze nincs :)

:XEP CPU

CPU tipus lekerdezese beallitas nelkul.

:XEP CPU Z80

Z80 NMOS beallitasa.

:XEP CPU Z80C

Z80 CMOS beallitasa.

:XEP CPU Z180

Z180 (mindig CMOS) beallitasa.

combined.rom frissitendo, tobbe nem tarolom benne a sajat ROM-omat, azt az emu teszi bele indulaskor az EP memoriaba mar.

Kovetkezo projectek:

Orajel beallithatosaga, RAM meret atallitasa.
Title: Re: Xep128
Post by: Attus on 2015.June.08. 18:59:25
Grat! :) Es fontos 1000. hozzaszolasodat a Xep128-ra "pazaroltad"? :)
Így jött ki.
Nem pazarlás.
Title: Re: Xep128
Post by: szipucsu on 2015.June.08. 23:14:35
Grat! :) Es fontos 1000. hozzaszolasodat a Xep128-ra "pazaroltad"? :)
Ejnye, hát itt nem az 1024-et veszik kerek számnak?
Nekem Facebookon pont 128 ismerősöm van. Ha nem lennének köztük EP-sek is, akkor nem ennyi lenne.
Title: Re: Xep128
Post by: lgb on 2015.June.11. 16:30:59
Haladok, a Z180 tesztem Zozonak hala ismert, hogy valodi Z180-on miket csinal, most faragom az emut, hogy byte-ra minden megegyezzen amit kiad emu alatt is, akkor mar turheto lesz elso korben :) A trap mar mux, csak eppen az ITC registerre eleg fura dolgok jonnek jelenleg.

Hat persze, hogy ZT szivat megint :) Naivan azt hittem, ha az orat kikapcsolom akkor nem gond. De.
Title: Re: Xep128
Post by: lgb on 2015.June.12. 10:15:01
Lazan kapcsolodik: akartam irni screenshot funkciot. Persze csak BMP-be tud SDL is irni alapbol :) Azt meg annyira nem szeressuk, legyen PNG. Oh well. De ugye a PNG nem egyszeru, tok sok mindent tud, tomoritett stb, szoval akkor egy meglevo PNG lib-hez is linkelni kene, Windows-on meg egy DLL, vagy bele kell forditani a programba stb. Na, gondtoltam keresek vmi szuper primitiv PNG iro forrast, es belerakom azt. Talaltam is egyet, azert egyszeru mert uncompressed PNG-t ir, nem is tud semmi mast. Elso teszt utan a kiirt screenshot.png merete: 1699263 byte ... Amugy rendesen megjelenik, azzal nincs gond, de akkor is, tobb mint masfel mega ... Raeresztettem egy image convertert, hogy legyen belole szinten PNG (csak eppen compressed data benne). Az eredmeny: 4678 byte. Uppppsz :) Ja, es ez vesztesegMENTES tomorites meg csak, tehat pixelre ugyanaz az eredmeny, nem JPG style. Szoval lehet, megis erdemes "bonyolult PNG"-vel szorakozni ...
Title: Re: Xep128
Post by: Attus on 2015.June.12. 20:32:19
A libpng létezik windózra  (http://www.libpng.org/pub/png/libpng.html)is.
Title: Re: Xep128
Post by: lgb on 2015.June.12. 21:54:34
A libpng létezik windózra  (http://www.libpng.org/pub/png/libpng.html)is.

Tudom, csak mint irtam, akkor vagy dinamikusan (meg egy dll kell win ala) vagy statikusna linkelni kell hozza, azt beemelni a forrasba, vagy kulon forditani akkor, illetve a merete sem mind1. Ezert akartam vmi primitiv, adott feltetelek mellett png-t tud irni, semmi mast megoldast, a linpng ennel kicsit komplexebb.
Title: Re: Xep128
Post by: lgb on 2015.June.13. 13:03:49
Elkezdtem irni a (wiznet) w5300 emulaciot. Abban remenykedve, hogy ha lesz megfelelo hw, addigra talan sw is lehet, pl a Xep128 alatt tesztelve. Hozzateszem, azert ez nem egyszeru, kesz EP-s hw nelkul max pdf adatlap alapjan probalok vmi hasonlot irni, de hogy minden esetben valodi hw is ugy viselkedni, az jo kerdes. Masreszt sok dolgot nem fog tudni, amit a valodi hw igen (listening sockets, ICMP packet sending, raw/mac mode, IP setting, stb). Ez azert van, mert inkabb nem irnek TCP/IP stack-et, hanem az emut futtato OS csinalna a halozatot, a w5300 emulacio "csak" azt erne el, hogy EP szamara ugy latszodjon, hogy o egy w5300-al beszelget, ami a valodi hw eseten is a szitu lenne. Szep feladat lesz, foleg mivel windows-on is meg kene csinalni, ott meg nem feltetlen ugyanaz minden, meg akkor sem, ha tudjuk hogy amugy kb minden OS (a windows is) a halozati dolgait alapvetoen BSD/UNIX socket API-ja alapjan mintazta meg annak idejen. Vagy SDL_net, de abbol meg hianyzik par dolog ...

update: nocsak, most tunt fel, hogy a FUSE Spectrum emulatorban van w5100 emulacio. Az persze elter sokban a w5300-tol, de sok mindenben megis hasonlo, elvegre egy koraibb tipus ugyanattol a gyartotol. Szoval lehet az o forraskodjuk legalabb tampontot tud adni neha, felteve, ha az mukodik :) Szerencsere az is GNU/GPL open source licenc alatt van, tehat semmi jogi/szerzoi problema nem merul fel. A FUSE amugy is kozponti figura, ugy tunik. A Z80Ex (amit hasznalok Z80 emulaciora) project is a FUSE Z80 emulaciojabol vett at, sot az JSspeccy is, aminek "JavaScript-esitett" Z80 emulaciojara az JSep epul.

A Z180 piszkalgatasom is halad (Z80Ex modositgatasaval ...), a Z180 tesztprogramom ugy tunik, most ugyanazt adja, ami Zozo (koszi!) altal keszitett valodi Z180-as screenshot-ok alapjan varhato! Ami meg abbol hianyzik: plusz opcode-ok emulalasa, a MULT pl megvan, a TST/IN0/OUT0 meg ilyesmik hianyoznak, az mar nem lesz sok melo. Valodi Z180 azert nem lesz belole: egyenlore az idozites Z80 tovabbra is, pedig Z180-on valojaban gyorsabb par opcode (ugy tunik ott M1 cycle lehet csak harom T state is, ami Z80-nal mindig 4, a tobbirol nem is beszelve). Plusz persze semmilyen feature (DMA stb) nincs, csak az invalid opcode trap emulacio (meg a Z180 I/O portok attelepitesenek emulalasa persze).

Screenshot/PNG most felfuggesztve: lehet tenyleg teljes libpng bekerul (windows-on, Linuxnal eleg dinamikusan linkelni hozza, aztan megvan kulon csomagban), de nem szeretnem annyira. Vagy lesz az uncompressed PNG, es akkor masfel mega folott egy szem screenshot, de legalabb PNG es nem BMP. Vagy van meg a LodePNG nevu project, amit probaltam: ott meg ugyan kicsi az eredmeny PNG, csak nincs rajta semmi :) tehat az kevesbe jo megoldas (mondjuk biztos en rontok el vmit).

"Console window" tenyleg johetne mar, ahol nyilik/nyithato meg egy ablak, amiben van par egyszeru gomb (reset/miegymas), egy nagyobb resz a log uzenetek stb-nek (configolhato majd h mit akar latni az ember), illetve egy kis terulet alul, ahova lehet gepelni. Nagyon UI-t irni tovabbra sincs kedvem, menukkel meg minden, foleg, hogy Windows/Linux iranyban ket kulon implementacio kene ahhoz, Windows C programozassal meg kb Xep128 ota foglalkozom eletemben eloszor Windows nelkul (es hozzateszem, agybetegseg amilyen a Windows API, ilyenekert C oran megbuktattak volna az elso felevben - igaz ott a tanar meg win manias volt nalunk - es meg nem is ertett hozza igazan -, szoval talan megse ...).

Ja, es fullscreen mode, meg SDL texture/render architektura, atmeretezheto ablakkal. Es persze EP fronton is katasztrofa: hang ugy altalaban nincs ... TG interrupt sincs. APU meg nem lett JSep-bol portolva (igaz ott sem biztos, hogy jo, valodi HW hianyaban nehez tesztelni ...).

Ha meg _nagyon_ unatkozok majd (aha ...) akkor talan meg kene ismerkedni Android-ra valo forditas lehetosegevel is, az SDL legalabb tamogatja, ami remenyt ad ...

Remelem nem vagyok meg nagyon unalmas :) Ha barkinek barmi otlete, ketsege, jo/rossz szava, epito/rombolo szandeku kritikaja, nekem szant levelbombaja, vagy szamra tapaszthato "maradj mas csendben" ragtapasza van szamomra, akkor ne tartsa vissza, mert komplexusa lesz :) Nekem mar ui van. Mint lathato :)
Title: Re: Xep128
Post by: Attus on 2015.June.14. 08:35:01
Nekem Spectrum emulátorok közt pont a FUSE a kedvencem. Szép, alapos munka.
Title: Re: Xep128
Post by: lgb on 2015.June.15. 01:39:05
Na ez hatareset lesz, nekem voltak vele bajok, de ... Ha vki kiprobalna a Xep128-at windows-on most (a szokott helyen). Elvileg ez most SDL streaming texture izebize. Elonye, hogy at lehet meretezni az ablakot, sot full screen (F11-et kell nyomni) is mukodik. Legalabbis Linux-on. Windows-ra lefordult, abban nincs hiba, de kiprobalni szokas szerint nem tudom. Wine alatt mondjuk (windows "emulator") mukodni latszik, de az nem tul mervado. Az is erdekes lehet, ha jelentosen elterni latszik a sebessege (mondjuk kiirni nem irja ki, vmi system monitor / akarmi erdekes lehet, hogy valtozott-e a CPU hasznalat az elozo verziohoz kepest). Koszi elore is!
Title: Re: Xep128
Post by: lgb on 2015.June.15. 12:37:34
Meg egy kerdes/keres: ha vki kiprobalna, es tapasztal olyat, hogy neha  (v mindig?) kb 1-2 masodpercenkent frissul csak a kep, akkor szoljon. Nekem neha elojon, de otletem sincs miert, maskor meg jo ...
Title: Re: Xep128
Post by: lgb on 2015.June.15. 19:32:06
Xep128 "fejlesztoi" verzio, fullscreen (ez mondjuk a screenshot-on nem latszik, mivel mindig ua a merete), SymbOS (emulalt) SD kartyarol videolejatszas kozben, boxsoft mouse emulacioval, ja es persze PNG screenshot keszites lehetoseg (amit igy mellekelni tudok), ezuttal mar latszolag "normalis" meretu PNG-ket eredmenyezve :) Az ora azert majdnem 00:00, mert a Z180 tesztek miatt kiszedtem a ZozoTools-t a combined.rom -bol, ami beallitani hivatott az EXOS orajat is, amit aztan - ha jol tudom - kerdezne le a SymbOS indulasnal egyszer (vagy van mar benne RTC tamogatas amugy?).

[attachimg=1]

Persze, az se lenne amugy megoldhatatlan, hogy ne a teljes emulalt EP-screen-t mentse le, hanem az aktualis LPT alapjan mondja meg, mekkora a kep merete, aztan max egy kis keretet radobni, de igy mindig 736 x 576 jelenleg ...
Title: Re: Xep128
Post by: Zozosoft on 2015.June.15. 19:54:03
vagy van mar benne RTC tamogatas amugy?
Emlékeim szerint még nincs.
Title: Re: Xep128
Post by: DrPrery on 2015.June.15. 22:17:05
Na ez hatareset lesz, nekem voltak vele bajok, de ... Ha vki kiprobalna a Xep128-at windows-on most (a szokott helyen). Elvileg ez most SDL streaming texture izebize. Elonye, hogy at lehet meretezni az ablakot, sot full screen (F11-et kell nyomni) is mukodik. Legalabbis Linux-on. Windows-ra lefordult, abban nincs hiba, de kiprobalni szokas szerint nem tudom. Wine alatt mondjuk (windows "emulator") mukodni latszik, de az nem tul mervado. Az is erdekes lehet, ha jelentosen elterni latszik a sebessege (mondjuk kiirni nem irja ki, vmi system monitor / akarmi erdekes lehet, hogy valtozott-e a CPU hasznalat az elozo verziohoz kepest). Koszi elore is!

Win7-en fullscreen működik, de a win-es Task Manager 0-1%-os terhelést ír ki...  Ennyire jó a gépem vagy mi a szösz? Amúgy az nem tudom miért van, hogy az egérmutató SymbOS alatt amúgy normálisan jelenik meg, de ha videót játszok le, akkor a lejátszó ablaka felett tartózkodva elkezd villogni...

Átméretezés szintén megy, az 1-2 mp-es frissülést eddig még nem tapasztaltam.
Title: Re: Xep128
Post by: lgb on 2015.June.15. 23:00:28
Win7-en fullscreen működik, de a win-es Task Manager 0-1%-os terhelést ír ki...  Ennyire jó a gépem vagy mi a szösz? Amúgy az nem tudom miért van, hogy az egérmutató SymbOS alatt amúgy normálisan jelenik meg, de ha videót játszok le, akkor a lejátszó ablaka felett tartózkodva elkezd villogni...

Átméretezés szintén megy, az 1-2 mp-es frissülést eddig még nem tapasztaltam.

Texture streaming, imho a GPU (vagy ami felette van meg, tudomisen win eseten DirectX izebize?) csinalja aztan a dolog nagy reszet, lehet a GPU-d a jo. Bar 0-1% az azert eleg kevesnek tunik, mert azert Z80-at is le kell emulalni ~4MHz sebesseggel. Az atmeretezes, fullscreen is azert mukodhet, mert en csak azt latom, hogy "egyen meretben" eloallitom, oszt' majd a SDL/GPU/whatever megoldja, hogy mekkoraban latszik :-P SDL-ben pont az a jo, hogy nem is igazan kell ismerned, hogy win-en ez hogy megy, az mar az SDL fejlesztok dolga.

Nyilvan az eger mutato amit latsz az SymbOS altal van kirajzolva, az nem a PC-s egerkurzor. Tehat azert villog, mert SymbOS rajzolja igy ki, valodi EP-n pont ugyanigy nez ki. Ennek oka velhetoen az, hogy a video "egy frame-jet" kirajzolja (a SymbOS video player app, marmint), es utana teszi ra ismet a kurzort, amit az felulirt. Modern PC-n ez egyszerubb mert esetleg a GPU segit, es oda varazsol neked vmit, amit C64-nek sprite-nak hivtak volna, igy "nem zavartatja" magat. Szal erted :)

Na, akkor vegulis nem rossz, ha minen jonak tunik, hmmm? Nagyjabol mar kesz is a Xep128, mar most is annyira jo (nem, csak vicceltem, mielott vki aggodni kezdeni elmeallapotom miatt). Ja, nepi bolcsesseg, most olvastam (ertelme nulla): "nem akkor van baj, amikor nincs baj, hanem amikor van!".
Title: Re: Xep128
Post by: Attus on 2015.June.16. 22:15:05
Egyre jobban tetszik.
:)
Title: Re: Xep128
Post by: lgb on 2015.June.17. 07:02:59
Egyre jobban tetszik.
:)

Marmint a Xep128? Amugy ismerve magam, epp viccesen belegondoltam, hogy ideje lenne egy uj emulator projectbe kezdeni, a szokott keszultsegi szinthez kepest (ameddig eljutok) a Xep128 mar igy is tulsagosan kesz van :)
Title: Re: Xep128
Post by: Attus on 2015.June.17. 08:46:01
Marmint a Xep128? Amugy ismerve magam, epp viccesen belegondoltam, hogy ideje lenne egy uj emulator projectbe kezdeni, a szokott keszultsegi szinthez kepest (ameddig eljutok) a Xep128 mar igy is tulsagosan kesz van :)
Az.
Amúgy egy átlagos felhasználó biztosan nem sok mindenre tudná használni, arra az ep128emu azért jobb. Nincs igazi gui, és gondolom nem is lesz, anélkül meg csak az elvetültebbek képesek létezni.
Magam is meglepődtem, hogy ez a sima SDL mi mindenre képes, az ablakméretezés is jó, hogy van már. A felbukkanó ablakok is megszaporodtak. Nem ástam bele magam túlzottan az emulátor használatába, csak a SymbOS vidólejátszást és képeket nézegettem. Az epdos keretvillogtatás közben elhasal, kezelhetetlen.
Jó kérdés, hogy az ep programokat, melyek nincsenek az sdimage -n, miképp lehetne oda varázsolni? Linux alatt biztosan elegendő felmountolni valahova, de windóz alatt biztosan macerásabb.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.17. 08:51:26
de windóz alatt biztosan macerásabb.
Windows 7-tól kezdve tud VHD-t mountolni.
Title: Re: Xep128
Post by: Attus on 2015.June.17. 08:59:55
Én most linuxom alatt próbálom, de mivel még nem csináltam ilyet, egyelőre nekem nem megy.
A VHD is új nekem. :oops:
Pedig tök egyszerű lehet...

Egy próbám:
Code: [Select]
attila:~/homok$ ls
sdcard.img  vhd
attila:~/homok$ file sdcard.img
sdcard.img: DOS/MBR boot sector
attila:~/homok$ ntfs-3g -o window_names sdcard.img vhd
NTFS signature is missing.
Failed to mount '/home/attila/homok/sdcard.img': Érvénytelen argumentum
The device '/home/attila/homok/sdcard.img' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
attila:~/homok$
Title: Re: Xep128
Post by: lgb on 2015.June.17. 09:12:13
Na igen, nem atlag usernek valo. Ugye ezt le is szogeztem, hogy inkabb olyasmikre mint Z180 jatszadozas, SD kartya emulalas, majd a w5300, szoval ilyen "elvetemultebb" dolgok. Nyilvan debug-olni is joval nehezebb lenne benne, mint ep128emu-ban :) Azert nagy falat lenne irni egy ep128emu szintu emulatort, foleg, hogy IstvanV lathatoan igen beleasta magat a dologba, es nagyon sok mindent tud a dolgok "melysegeirol" ami a Dave/Nick pontos viselt dolgaival stb kapcsolatos. Ha csak ugy "altalanos" celra kell, en is inkabb ep128emu -t hasznalnek :)

Az epdos tenyleg nem jo, azt en se ertem, mit lehet vele kezdeni, Zozo egyszer magyarazta, hogy ujabb EPDOS kell, de most :HELP szerint 1.9-es, de ezzel sem jo. Azt, hogy miert nem, nem tudom, nem ertek az EPDOS-hoz :( En csak remelem, hogy ez nem az emulator hibaja, bar ki tudja.

Windows / VHD ugyben en nyilatkozni nem tudok :) Linux alatt siman lehet mountolni mar evtizedek ota kb (alap UNIX filozofia, hogy "minden file" ugye, a disk image ugyanugy, mint a /dev/fd0 ami a valodi floppymeghato lenne - bar gondolom Attusnak nem kell magyarazni, csak hatha vkinek erdekes az info), szoval ott nem gond, habar ilyen esetben en inkabb (Linux-rol van szo) az mtools-t ajanlanam.

Code: [Select]
drive m: file="/home/lgb/vega/prog/xepem/git/xep128/sdcard.img" partition=1

Szoval nekem pl ez van beallitva /etc/mtools.conf -ban. Ezek utan mdir m: az listaz, stb, a DOS-hoz hasonlo parancsok, csak "m" van az elejen.

Az viszont igaz, hogy igy is kenyelmetlen. Amit tervezek, az az ep128emu szeru FILE: implementalasa, azert az jol tud jonni sokszor.

Kozben Bruce-al email-ezgetunk a w5300/stb viselt dolgairol, btw. Kicsit "tyuk es tojas" problema: amig nincs valodi hw, nincs sw amivel tesztelni lehetne, hogy megy-e emu alatt. Viszont sw nem lesz, ha nincs hw, vagy legalabb egy emu, ami tud ilyen hw-t emulalni ...
Title: Re: Xep128
Post by: Attus on 2015.June.17. 09:15:00
Az mtools -tmég soha nem használtam,mindig a sima mount -ot.

Code: [Select]
root:/home/attila/homok# mount -o loop sdcard.img /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.
root:/home/attila/homok# dmesg | tail
[ 1666.027716] Buffer I/O error on device loop0p1, logical block 64001
[ 1666.027719] Buffer I/O error on device loop0p1, logical block 64002
[ 1666.027722] Buffer I/O error on device loop0p1, logical block 64003
[ 1666.027725] Buffer I/O error on device loop0p1, logical block 64004
[ 1666.027727] Buffer I/O error on device loop0p1, logical block 64005
[ 1666.027730] Buffer I/O error on device loop0p1, logical block 64006
[ 1666.027733] Buffer I/O error on device loop0p1, logical block 64007
[ 1666.027737] Buffer I/O error on device loop0p1, logical block 64000
[ 1666.027740] Buffer I/O error on device loop0p1, logical block 64001
[ 1766.354564] EXT4-fs (sda3): mounted filesystem with ordered data mode. Opts: (null)
root:/home/attila/homok# umount /mnt
umount: /mnt: not mounted
root:/home/attila/homok#
Title: Re: Xep128
Post by: lgb on 2015.June.17. 09:22:00
Code: [Select]
attila:~/homok$ ntfs-3g -o window_names sdcard.img vhd

Uhh. Hat, ha NTFS-kent akarod hasznalni, biztos jo lenne, de tartok tole, hogy csak FAT12 :) Szoval szerintem maradjunk a sima mount-nal, ha mindenkeppen mount-olni akarod:

Code: [Select]
mount -o loop,offset=32256 sdcard.img /mnt
Ha jol tippelek, nem probaltam :) Az offset= onnan jon, hogy a disk image particios tablaval rendelkezik, azaz kell egy offset neki, hogy hol kezdodik ebben maga az FS. Nyilvan az sdcard.img az a disk image, az /mnt meg hogy hova mount-olja az fs-t fel. Na ez persze nem tunik tul kenyelmesnek, es tenyleg nem is az annyira, de konnyu lenne (biztos van, nem keresetem soha) irni hozza egy helper cuccot. En inkabb az mtools -t szoktam meg ilyen esetben. Veszelyes dolog a mount-olas ui, ha kozben vmi irja is (mondjuk a Xep128 nem mert read-only ...) akkor annak csunya vege lehet, ha mount-olva van kozben az FS.

Hogy erthetobb legyen az offset dolog, illetve mi volt a baj, amikor te mount -o loop-oztal siman offset nelkul:

Ha van egy disk pl /dev/sda az maga a teljes disk, ami particios tablaval kezdodik. Azt mountolni igy nyilvan nem lehet, ott is annak egyes particioit tudod mountolni, pl /dev/sda1 es nem a /dev/sda. Ugye egy disk image file-nal az van, hogy annak nincs device fs beli reprezentacioja, tehat neked kell az offset-et meghatarozni. Persze - mint irtam - biztos van erre vmi szep tool, meg akar GUI-s is, en altalaban maradok a CLI-nel es a script irasnal az az igazi :)

A masik ok amiert en nem mount-olnek: ha kernel szinten mount-olod, onnantol az hasznalja cache-eket stb, tehat irsz ra vmit, az lehet inkonzisztens allapotban lesz, amikor rainditod az emut, mert meg nem irta ki. Ha meg - mint irtam - az emulator is irkal az image-re, az meg kulonosen eletveszelyes, ezt gondolom nem kell elmargyazni, hogy miert :)
Title: Re: Xep128
Post by: lgb on 2015.June.17. 09:41:34
Magam is meglepődtem, hogy ez a sima SDL mi mindenre képes, az ablakméretezés is jó, hogy van már. A felbukkanó ablakok is megszaporodtak. Nem ástam bele magam túlzottan az

Az SDL nem rossz cucc. Most hirtelen nem tudom, de vmi jatek fejleszto ceg (talan a Loki?) kezdte meg el irni, amikor Linuxra akart portolni (v irni?) par jatekot. A lenyege tenyleg az lenne, hogy neked SDL ala kell megirnod, es akkor semmi (vagy keves) modositassal le lehet forditani a cuccost barmi ala, amit az SDL ismer. Mint a Windows is, de amugy elvileg talan Mac, Android es talan windows phone is, nem tudom. Sot, az emscripten project is SDL-t "emulal". Ez az emscripten a C-bol Javascript-re fordito cuccos. Igy portoltak par 3D-t hasznalo FPS jatekot is webre amugy. Ez persze normalisan ott fut csak el, ahol van tamogatas browser-ben es hardware-ben is a WebGL-re (ami talan vmi OpenGL ES-ben "vegozik" amugy). Erre mondjak, hogy allitolag egy ilyen JS succ csak kb 2-szer lassabb mintha nativ kod lenne, ez azert nem semmi :) Azt hozzatennem, hogy az JSep nem ilyen, az "kezzel" irt JS kod.

En magam is meglepodtem amugy, hogy mennyire konnyu volt Windows ala forditani Xep128-at. En oszinten sok eselyt nem is adtam (mert hogy engem nem erdekel a Windows). Kvazi egy apro probleman (_read nevet vmire hasznalja a cuccos windows-on) kivul azonnal lefordult, es mukodott is ... Mondjuk ehhez azert kellett, hogy amikor a Xep128-at elkezdtem, mar gondoltam erre, es nem hasznaltam UNIX specifikus fuggvenyeket stb, csak ami ANSI C es egyeb szabvanyokban is szerepel (masreszt a mingw fordito, amivel Linux alol forditok Windows ala emulal nehany POSIX cuccost is, valoszinu az is segit).

Amire nem jottem ra, es windows-hoz hulye vagyok: ugye kell neki az az SDL2.dll. Ez szamomra nem olyan szep, megprobaltam statikusan osszelinkelni, hogy egyetlen exe legyen. Itt jott egy kis meglepetes: a xep128.exe merete volt akkor kb 600K, az SDL2.dll meg ugy ~1Mbyte kornyeken. Ha statikusan linkeltem akkor viszont lett belole egy 7Mbyte-os exe, ami azert engem kisse zavart :) Ennyire sajna nem ertek a windpws-hoz, hogy megmondjam, ez miert van, mit kene csinalni ezzel a dll hulyseggel, hogy ne kelljen kulon ala allandoan, stb.

Egyik gyenge percemben az is eszembe jutott :) hogy ha mar van C fordito Z80/EP-re (ugye sdcc-vel nekem sikerult ezt-azt csinalni) kene SDL szeru cucc. Igy elvileg ugyanaz a C forraskod lefordulna mondjuk Windows-on es Linuxon, es mukodne, de EP ala is le lehet foridtani es ott is megy. Na ez mar nagyon futurisztikus, csak eppen elgurult a gyogyszerem, bocsi :) Persze, ez nem tul ertelmes otlet, ha valodi SDL portable kod lenne, akkor pl 32 bit egy pixel (ARGB buffer, alpha channel-el) ami azert EP-n kisse lassu lenne azt kirakni aztan EP screen formaban. Szoval ez max csak elmelet :) Bar lehetne irni olyan libet, ami specifikusan 8 bites gepekre van kihegyezve C kodilag, de fordul szokasos desktop OS-ekre is!

Windows kapcsan kozben elolvastam par API leirast az MSDN-en, hat az MS nem normalis. Ezt talan mar irtam, de olyanokat csinalnak win32 API-ban ami egy borzalom, C oran megbuktatnak oket, az is biztos :) Viszont pl file open dialog-ot ki tudok rakni. Ennek jelenleg sok ertelme nem lenne, mert nincs ami hasznalja, de kesobb majd esetleg :) Itt az SDL kevesbe segit, mert ilyeneket nem tud, az alapvetoen arra epul, hogy egy jatek (esetunkben emu ...) szamara "screen-t" emulal ami egy ablak vegulis. Olyan funkcio, hogy menuk stb nincsenek benne.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.17. 09:58:31
Win7-en fullscreen működik, de a win-es Task Manager 0-1%-os terhelést ír ki...  
Most megnéztem egy régi gépen (XP, Core 2 Quad), itt 1-3% :-)
Title: Re: Xep128
Post by: Attus on 2015.June.17. 10:05:24
Uhh. Hat, ha NTFS-kent akarod hasznalni, biztos jo lenne, de tartok tole, hogy csak FAT12 :) Szoval szerintem maradjunk a sima mount-nal, ha mindenkeppen mount-olni akarod:

Code: [Select]
mount -o loop,offset=32256 sdcard.img /mnt
Ha jol tippelek, nem probaltam :) Az offset= onnan jon, hogy a disk image particios tablaval rendelkezik, azaz kell egy offset neki, hogy hol kezdodik ebben maga az FS. Nyilvan az sdcard.img az a disk image, az /mnt meg hogy hova mount-olja az fs-t fel. Na ez persze nem tunik tul kenyelmesnek, es tenyleg nem is az annyira, de konnyu lenne (biztos van, nem keresetem soha) irni hozza egy helper cuccot. En inkabb az mtools -t szoktam meg ilyen esetben. Veszelyes dolog a mount-olas ui, ha kozben vmi irja is (mondjuk a Xep128 nem mert read-only ...) akkor annak csunya vege lehet, ha mount-olva van kozben az FS.

Hogy erthetobb legyen az offset dolog, illetve mi volt a baj, amikor te mount -o loop-oztal siman offset nelkul:

Ha van egy disk pl /dev/sda az maga a teljes disk, ami particios tablaval kezdodik. Azt mountolni igy nyilvan nem lehet, ott is annak egyes particioit tudod mountolni, pl /dev/sda1 es nem a /dev/sda. Ugye egy disk image file-nal az van, hogy annak nincs device fs beli reprezentacioja, tehat neked kell az offset-et meghatarozni. Persze - mint irtam - biztos van erre vmi szep tool, meg akar GUI-s is, en altalaban maradok a CLI-nel es a script irasnal az az igazi :)

A masik ok amiert en nem mount-olnek: ha kernel szinten mount-olod, onnantol az hasznalja cache-eket stb, tehat irsz ra vmit, az lehet inkonzisztens allapotban lesz, amikor rainditod az emut, mert meg nem irta ki. Ha meg - mint irtam - az emulator is irkal az image-re, az meg kulonosen eletveszelyes, ezt gondolom nem kell elmargyazni, hogy miert :)
Jó a mount az offsettel.
:)
Most már tudok írkálni rá, és az emu elsőbb a  ~ alatt keresi az sdkártya imágót, majd, ha nincs akkor /usr/lib/xep128 alatt. Ergo a módosítmányomat a home könyvtáramba nyomom majd.
Title: Re: Xep128
Post by: lgb on 2015.June.17. 10:40:46
Jó a mount az offsettel.

Az offset elvileg szamithato, ha pl fdisk-el megnezed az image-et, hogy adott particio hol kezdodik, csak persze byte-ban kell megadni mount-nak. Azert vigyazz, ha irtal ra, mount-old ki emu inditasa elott, vagy legalabb sync-eld le. Amig Xep128 csak read-only-ban hasznalja legalabb nincs meg az a hibalehetoseg, hogy be van mount-olva, igy kernel hasznalja, es kozben egy user app is beleir (Xep128).

Quote
Most már tudok írkálni rá, és az emu elsőbb a  ~ alatt keresi az sdkártya imágót, majd, ha nincs akkor /usr/lib/xep128 alatt. Ergo a módosítmányomat a home könyvtáramba nyomom majd.

Hat ezen gondolkoztam egy darabig, hogy mikepp csinaljam :) A ROM es az SD card image keresese a kovetkezo, ha valahol megtalalja a listabol igy szep sorban vegignezve, akkor azt hasznalja, ha egyik sem nyert, akkor "error" (ami sd card eseten nem fatal error, csak nem lesz SD tartalom, ROM eseten nyilvan az):

* aktualis konyvtar (current directory)
* ha Linux, akkor itt jon a DATADIR (alaphelyzetben /usr/local/lib/xep128 hacsak nem irod at Makefile-ban)
* "app base" dir, SDL fogalom, elvileg az a konyvtar, ahol maga a futtathato allomany van (mert ugye current dir lehet mas!)
* "app pref" dir, SDL fogalom (kb ilyen user beallitasok, stb ahova irhat is az app elevileg), ahogy eszrevettem, ez:
   * Linux eseten (~ = user home):  ~/.local/share/APP_BASE/APP/
   * Windows eseten: C:\users\USERNAME\Application Data\APP_BASE\APP\

Ahol az APP_BASE Xep128 eseten a nemesys.lgb, az APP meg xep128. Azt meg ne kerdezzetek, honnan van a windows-os app pref, fogalmam sincs, SDL ezt mondja :)

Ez a keresesi strategia "uj", marmint amikor eloszor irtam itt a forumon a Xep128-rol, akkor csak az aktualis konyvtarban nezte, sehol mashol.
Title: Re: Xep128
Post by: lgb on 2015.June.17. 10:44:16
Most megnéztem egy régi gépen (XP, Core 2 Quad), itt 1-3% :-)

Nekem eros a gyanum amugy, hogy ezek az ertekek csalnak (nekem ez tul kevesnek tunik, de az is lehet, hogy en becsulom ala a PC-k teljesitmenyet hehe). Majd csinalok vmi kiirast, tudomisen window title par masodpercenkent frissul (?) amiben irna valami statisztikat.
Title: Re: Xep128
Post by: lgb on 2015.June.17. 10:47:51
Masik: en tok jol elszorakozok ezzel a Xep128-al, de az onszorakoztato mod mellett azert erdekelne, hogy barkinek van-e velemenye, mit kene/lehetne, stb. Marmint sok mindent kene/lehetne, de pl mi a fontos. Persze a Xep128 eredeti scope-jan belul, jelenleg legalabbis :) nincs terve veve ep128emu-t helyettesiteni, majd X ev mulva talan, ha addig az ep128emu nem fejlodik, mert akkor van realis valoszinusege utolerni :) Pl Z180 dolgot is Zozo otlete alapjan kezdtem el, hogy az esetleg hasznos lehetne. Igaz, az sincs meg kesz :) de legalabb invalid opcode trap mar OK. A w5300 meg gondolom ertheto: azert EP a neten az fontosnak tunik, es orulnek, ha lenne valami, amivel mar az elott lehet probalkozni, hogy a valodi hw elerheto lenne, igy addig is lehetne irni sw-ket talan. Ahogy pl SymbOS topic-ban is emlitettem.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.17. 10:55:10
Nekem eros a gyanum amugy, hogy ezek az ertekek csalnak (nekem ez tul kevesnek tunik, de az is lehet, hogy en becsulom ala a PC-k teljesitmenyet hehe).
Ugyanezen a gépen az ep128emu az 28-30%
Title: Re: Xep128
Post by: lgb on 2015.June.17. 11:43:22
Ugyanezen a gépen az ep128emu az 28-30%

Mondjuk windows eseten fog'sincs, de elmeletileg csalhat ez a CPU terheltseg kimutatas, attol is fugg, adott program milyen hivasokat hasznal, hogyan "alszik el" (sleep stb call). Igy lehet pl ket program ami azonos dolgot csinal, de mas CPU terhelest lat az ember. Persze nem tudom, hogy ez a helyzet-e. Mas: az is lehet, hogy a fo ok az elteresben az ep128emu nagyobb pontossaga. Egy emulatornal gond, hogy ugye multitask OS-en fut altalaban (Windows, Linux, miegymas) tehat neha mas process fut eppen. Ugyanakkor kb tartania kell az emulalt gep sebesseget. Alapesetben pl en azt csinalom, hogy fut a program addig, amig egy frame-nyi nick slot nincs kesz (kozben persze Z80 stb is). Ha ez kesz van, megnezem mennyi ideig tartott ez a PC-n, illetve tudom, mennyi ido lenne ez az EP-n. Ha a PC gyorsabb (remelhetoleg ...) akkor a ketto kulonbsegere "elaltatom" az emulatort, hogy mas is tudjon futni normalisan, de 100%-on porogjon a PC CPU-ja az emu miatt. Persze, ez az "elaltatas" nem pontos (multitask OS-eknel azert nem mikroszekundumonkent van feltetlen context change a process scheduler altal), illetve lehet context change az emu futasa kozben is, ezert sleep utan merem mennyi ideig tartott valojaban a "kert" sleep, es az elterest probalom korrigalni es figyelembe venni a kov sleep-nel. Igy kb beall egy normalis idozitesre, jobb esetben. Lathato, hogy a host OS (windows, linux) viselkedese azert befolyasolja igy is az emu mukodeset. Elmeletileg novelheto a pontossag, ha csokkentjuk a sleep-et, akar addig, hogy nincs sleep es a CPU-t "porgetve" egy ciklusban varom ki, amig real time szerint a kov. frame jonne. Ekkor viszont az lenne, hogy az osszes szabad CPU-t megenne az emu. Viszont pontosabb lenne. Szoval siman lehet, hogy az ep128emu jobb idozitese miatt van, hogy tobb CPU-t kenytelen megzabalni. Bar ezt nem tudom, igy van-e, ez csak elmeleti fejtegetes volt a reszemrol :)

Azt inkabb nem fejtem ki, hogy adaptiv algoritmus kell, mert kozben a PC esetleg terhelve van mas process altal, meg mi van, ha hosszabb idon at nem tudja korrigalni (tul lassu a PC, elindult vmi magasabb prioritassal rendelkezo program, ami zabalja a CPU-t stb). A Nick/Z80 szinkronizacio Xep128-ban jelenleg annyi, hogy van egy valtozo, amit Z80 emulacio pl novel minden op code utan annyival, ahany T-state-ig tartott. Ha az eleri azt a szintet, ami T state-re atszamitva egy nick slot-hoz kell, akkor csinal egy nick slotot, es csokkenti a szamlalot. Ez a "balancer" valtozo dolga a ketto egyensulyanak beallitasa, alkalmasint 0 kozeleben kell tartani nyilvan ...

Es ez csak az emu "alap" idozitese, nemileg mas az eset, ha a nick-et Z80-at kene szinkronizalni, vagy T state szinten nezni ezt, Xep128-ban (es JSep-ben) semmi ilyen nincs jelenleg, azert is van, hogy a VRAM elerese nem lassabb, mint mas RAM-e, ami ugye viszont pontatlan emulacio, ha egy valodi EP-hez hasonlitjuk. Stb, lehetne meg talalni ilyen pontokat, plusz jelenleg Dave counterek kozul _semmi_ nincs emulalva (kivetel az 1Hz int-et okozo belso cucc), amivel programozhato interrupt rate, es/vagy hang lehetne krealhato. A hang meg ugye btw, megint kulon tema :) Szoval azert nem tennem le az eskut, hogy Xep128 nem lenne-e meg lassab is, mint most az ep128emu, ha tudna mindezt, amit az tud.

Az JSep-hez kepest amugy igy is pontosabb: eloszor is, nezi mennyi ideig tartott valojaban a sleep. Masreszt, jobb felbontasu a sleep hivas, mint ami JS-ben van. harmadreszt, elvileg legalabbis a dave 0xBF portja annyiban legalabb figyelembe van veve, hogy wait state-ek beallitasa, igaz, ez ugye VRAM-ra nem vonatkozik. Ez nem volt bonyolult, mivel Z80Ex rendelkezik lehetoseggel hogy plusz wstate legyen "injektalhato" az opcode vegrehajtasaba, es meg M1-et is jelzi, ez alapjan is tudok donteni.

Remelem mindenki remekul lefaradt a sok irasom utan :)
Title: Re: Xep128
Post by: lgb on 2015.June.17. 19:54:57
Ujabb verzio, szokott helyen. Sok valtozas nincs, elvileg: F9 = exit, F10 = screenshot, F11 = toogle fullscreen, break/pause gomb tovabbra is reset, shift-el egyutt meg "super reset" (RAM torlese elobb). Meg a ...

Code: [Select]
:XEP emu
... tipikusan IS-BASIC-bol kiir path-eket is az emu kapcsan. Screenshot bar PNG, jelenleg mindig screenshot.png neven menti az aktualis konyvtarba, folulirva, ha volt ott vmi. Ha screenshot kapcsan van hiba (a fenti felulirasun tul persze), akkor azt - is - jelezzetek please. Mar ha vkit erdekel :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.17. 20:22:56
A gombokat nem lehetne ep128emu kompatibilisre tenni? :oops:
Title: Re: Xep128
Post by: lgb on 2015.June.17. 20:42:56
A gombokat nem lehetne ep128emu kompatibilisre tenni? :oops:

Biztos lehetne, csak sose hasznaltam ott igazan gombokat :) Most nezem, ott a reset az F11?! Az azert fura, mert altalaban F11 a fullscreen (legalabbis nalam es Linuxon hehe). Sot elvileg firefox-ban is pl (bar lehet, hogy windows-os firefox-ban nem?). De speciel most azt se talalm ep128emu menujeben, hogy ott mi a fullscreen vagy a screenshot :( Na, EP wiki-n sem volt, a vegen ep128emu README-jeben talaltam leirast. F12 a screenshot az pl nekem nem jo, mert az nalam evtizedek ota a terminal ablak, appikaciot nem is engedem felulbiralni ezeket :) Node, tudom onzo dolog, hogy csak az en szokasaim alapjan csinalni. Max megcsinalom vmi cfg file szeruseg alapjan configolhatora :) Azt hiszem ... Szoval vegulis lehet. Max majd en hasznalok mas default configot :-D

Ep128emu-ban amugy nincs igazai fullscreen? Az F9-et nyomogatva van egy, ami "majdnem" az, de a panel latszodik, azaz nem foglalja el az egesz "monitort az EP". Bar lehet, ez is OS specifikus, es windows-on jo? :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.17. 21:04:45
Mondjuk én fullscreent nem szoktam használni, hiszen kell mellé debugger ablak, stb :-)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 10:43:59
Page Up/Dwn-ra lehetne turbo kapcsolót tenni? Mondjuk a valódi gépen szokásos 4/6/7.12/10 között kapcsolgatna fel/le.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 10:51:40
Ha egér módban resetelünk, akkor elfelejti, hogy ESC-re visszakéne adnia az egeret.

A reset nem tökéletes, nem lehet gombokat nyomni a gyorstesztnek...
Title: Re: Xep128
Post by: lgb on 2015.June.18. 11:16:05
A CPU sebesseg allitas az jelenleg deffektes, probald ki:

:XEP CPU 7.12

Szerintem ha jol remlik kurzorvillogas vint-bol van, tehat nem szabadna gyorsabban villognia, vagy igen? Ha nem szabadna, akkor vmit elrontottam, es az egesz emut gyorsitom vmiert, nem csak a CPU-t (pedig elvileg csak az egyik elozo hosszu fejtegeteseim kapcsan is emlitett "balancer"-hez valtoztatja a dolgokat). Amig ez nem jo, szerintem sok ertelme nincs, mert gaz :( De amugy az otlet nem rossz, csak elobb ki kene javitani a bugot. Anno OSD-t is gondoltam (nem tudom az mennyire tul "futurisztikus" EP emuba) tehat mint a a TV hangero mostansag: ha szabalyzod hangerot, egy darabig latszik a kep "felett", hogy mi a beallitas, de aztan persze eltunik magatol. Vagy ez nagyon gagyi? :D

A reset-el kapcsolatos anomaliakat megnezem majd, most igy hirtelen nincs otletem (kozben egy otletem van: az emu init es a reset kozos dolgokat hasznal, ami ujrainicializalja az emulalt kbd matrix-ot, na ez reset-nel pl nem feltetlen kene - ezt majd megnezem).

No, de legalabb van bugreport :D
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 11:28:01
A kurzort az EDITOR villogtatja szoftveresen, az gyorsul a procival.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 11:35:05
A kurzort az EDITOR villogtatja szoftveresen, az gyorsul a procival.

Ja, azt hittem VINT-bol van! Akkor ez lehet, most jo is igy ahogy van eppen? :D
Title: Re: Xep128
Post by: lgb on 2015.June.18. 11:42:23
Az OSD-s otlethez mit szolsz?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 11:48:29
Az epdos keretvillogtatás közben elhasal, kezelhetetlen.
A NEOS egér borítja meg, mivel külső joy-jal is kezelhető.

Az kéne, hogy amikor nincs egér rányomva az emura, joy legyen a Joy1-en, ne egér.

(Ezért is van szó arról, hogy az új illesztőnél másik bemeneti biten legyen az egér.)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 11:52:30
Az OSD-s otlethez mit szolsz?
Érdekes poén :-) Végül is 90-es évek elején már elérhetőek voltak SCART-os kistévék, és azokon volt ilyen.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 11:58:04
Érdekes poén :-) Végül is 90-es évek elején már elérhetőek voltak SCART-os kistévék, és azokon volt ilyen.

Ja, mondjuk ott nem a CPU orajelet irta ki :) meg hasonlo, de az otlet kb uaz lenne. Szerintem meg mindig jobb, mint ablakokat dobalni, amit le kell OK-zni, mint pl ami most screenshot-nal is van.
Title: Re: Xep128
Post by: gflorez on 2015.June.18. 13:05:10
:XEP CPU 7.12

What does that command? to set the Z80 clock?


Your emulator is growing better...
Title: Re: Xep128
Post by: lgb on 2015.June.18. 13:19:02
:XEP CPU 7.12

What does that command? to set the Z80 clock?

Yes, parameter is in MHz. Other CPU related stuff:

:XEP CPU z80
:XEP CPU z80c
:XEP CPU z180

These set the CPU type z80 is NMOS Z80, z80c is CMOS z80, and well, Z180 is Z180, but one known EP exists with Z180 only, ask Zozo :)

https://github.com/lgblgblgb/xep128

Scroll down a bit and there is a quite long description (but the content of that pahe - file README.md - is also packed into the ZIP file, if you download the Windows version of Xep128) on various topics related to Xep128.
Title: Re: Xep128
Post by: IstvanV on 2015.June.18. 14:22:24
Ugyanezen a gépen az ep128emu az 28-30%

Milyen video és hang beállításokkal ?

Egy meglehetősen elavult laptopon (AMD E450 2x1.65 GHz CPU, 64 bites Linux) például a beállításoktól függően így változik:

Display quality = 4, resample to monitor refresh rate, 48000 Hz hang (high quality): 116% (de stabilan fut 100% sebességen)
Quality = 3, single buffered: 95%
Quality = 1: 72%
Quality = 0 (állóképnél): 52%
Alacsony hangminőség (high quality kikapcsolva): 41%
Hang kikapcsolva: 35% (szoftveres video módban 31%)
Kép kikapcsolva: 25%
Maximális sebesség (Alt+W): 1000%

Tehát csak a hardver emuláció elvileg 10%-ot fogyaszt, de akkor mire megy még el további 15% ha a kép és a hang is ki van kapcsolva ? :oops:

Szerk.: az eltérést részben az "energiatakarékos" CPU okozza, ami csak Alt+W-nél fut stabilan a maximális órajelen, egyébként lassabb, és így látszólag nagyobb a fogyasztás. De még ezt figyelembe véve is kb. 20% marad kikapcsolt kép és hang esetén.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 14:29:52
Milyen video és hang beállításokkal ?
Quality 3, és resample, 48000 és High Quality.
Alt+W 2500% körül, ilyenkor 52-54% a CPU terhelés.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 15:12:30
Probalkoztam uj verzioval. Az ablak cimsoraba irkal, a szazalekos ertek azt mutatja, hogy milyen az aranya a tisztan emulaciora forditott sebessegnek (marmint ebben benne van hw emulacio, de pl az is, hogy ki kell tolni a frame-et SDL-nek) a valodi EP-hez kepest. Tehat nyilvan az a jo, ha ez az ertek minnel kisebb. Ha 100% akkor a gep elvileg eppen csak birja, ha tobb, akkor nem birja ... Nyilvan ez az ertek nem feltetlenul lesz uaz, mint a process CPU hasznalata az OS szerint azert. Ja, meg megprobaltam par kisebb javitast is, amiket Zozo irt, mondjuk az EXOS gyorsteszt gombok stb nem tudom igy javultak-e ...
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 15:32:29
Reset megjavítva :-)
Nekem úgy 0-7% között írja.

Már csak a joy-egér-EPDOS kérdést kéne megjavítani :oops:
Title: Re: Xep128
Post by: lgb on 2015.June.18. 15:37:46
Már csak a joy-egér-EPDOS kérdést kéne megjavítani :oops:

Igen, azzal meg nem foglalkoztam. Elvileg ugye eger amugy se megy nagyon, amig bele nem klikkelsz az ablakba (="grab"). Olyasmit lehetne valahogy, hogy addig nem is piszkalja a az emu a megfelelo port biteket egerkent, vagy hasonlo. Hiszen hasznalni akkor ugy sem tudja a user az eger emulaciot.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 15:40:15
Nekem úgy 0-7% között írja.

Van amikor lemegy nulla kozelebe? Ez erdekes. Es kozben mas anomalia nincs, tehat az emulalt EP kb normal sebessegunek latszik, tudomisen, egyenletesen villog a kurzor, stb? Marmint, most az en kiirasomra/szazalekomra gondoltam, az ablak cimsoraban.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 15:43:43
Olyasmit lehetne valahogy, hogy addig nem is piszkalja a az emu a megfelelo port biteket egerkent, vagy hasonlo. Hiszen hasznalni akkor ugy sem tudja a user az eger emulaciot.
Igen erre gondolok én is. Ilyenkor meg a numpad 4,8,6,2,0 lehetne a Joy1.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 15:45:20
Van amikor lemegy nulla kozelebe? Ez erdekes.
Konkrétan 0-át ír, akár pár másodpercig is.

Quote
Es kozben mas anomalia nincs, tehat az emulalt EP kb normal sebessegunek latszik, tudomisen, egyenletesen villog a kurzor, stb?
Teljesen normálisan fut.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 16:27:58
Konkrétan 0-át ír, akár pár másodpercig is.
Teljesen normálisan fut.

Fuu, vegtelenul gyors az emum :D
Title: Re: Xep128
Post by: lgb on 2015.June.18. 16:57:47
Nah, uj verzio. A joystick emulacio es az eger azert igy sem szereti egymast teljesen. EPDOS igy jonak tunik. Amde, SymbOS elinditva nincs eger. Ha a mouse grab modba (klikk az emu ablakra) mar az ember belep symbos inditasa elott, akkor latszolag jo, ilyenkor vicces, mert ha ESC, akkor az eger lassan elmaszik :) Szoval gondolom itt a szokasos eger/joy osszeferhetetlenseg van ... A SymbOS-ben nincs eger, ha nem lep grab modba az ember mar a toltes elott problema az erdekes, csak _gondolom_ hogy azert van, mivel sajnos ha nincs grab mod de az adott sw (itt SymbOS) egerkent kezeli, akkor pl elmaszik (?) a szinkron ahogy shiftelgeti a biteket? Ezt most igy nem latom at hirtelen, de gondolom ez igazi EP-n is problema lenne, ha ilyen kozos joy/mouse illeszto lenne?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 19:09:06
Gondolom a SymbOS detektálja, hogy joy vagy egér van bedugva.

És igazi gépen is elmászik a nyíl ha egér nélkül van egér indítva.
Title: Re: Xep128
Post by: lgb on 2015.June.18. 19:12:55
Gondolom a SymbOS detektálja, hogy joy vagy egér van bedugva.

En is erre gondoltam, mert ha barmi szinkronbol kieses akarmi lenne, akkor csinalni vmit, max megorulten ugralna, vagy stb, de meg sem mozdul igy most a mouse pointer.  Raadasul, jelenleg csak a 0xB6 port _olvasasanal_ van kulonbseg, hogy most mit prezentalok ott, tehat az emlitett shift-es dolgot nem is erinthetne. Igy otleted alapjan nekem sem jut mas eszembe, mint hogy SymbOS megprobalja detektalni, hogy van-e ragcsalo ... Tenyleg az a mouse.xr izebize is csinal ilyen detektalasi probalkozos jatekot?

Quote
És igazi gépen is elmászik a nyíl ha egér nélkül van egér indítva.

Igen, ez vilagos, max vicces :)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 19:16:22
Tenyleg az a mouse.xr izebize is csinal ilyen detektalasi probalkozos jatekot?
Nem, ott mászik, ha Neos nélkül van Neosra kapcsolva :-)
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 21:50:33
Fuu, vegtelenul gyors az emum :D
Kipróbáltam egy 4.3GHz-es i5-ösön, itt folyamatosan 0%-ot ír :-)
Title: Re: Xep128
Post by: lgb on 2015.June.18. 22:20:16
Kipróbáltam egy 4.3GHz-es i5-ösön, itt folyamatosan 0%-ot ír :-)

Probalj meg :XEP CPU 12 -vel egy kis munkat adni neki, hatha felmaszik. :) GPU mi azon? Vagy az i5-os is ilyen beepitett GPU-s ize?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.18. 22:29:06
GPU mi azon?
Ati Radeon HD6850
Title: Re: Xep128
Post by: IstvanV on 2015.June.19. 10:49:54
Szerintem az időmérés felbontása lehet a probléma, ami valószínűleg csak 1 ms, vagy akár 10 ms. A gettimeofday() MinGW-s megvalósítása például a GetSystemTimeAsFileTime()-t használja (Win32 API), és ennek a tényleges felbontása csak 10 ms, annak ellenére, hogy elméletileg 100 ns lehetne. A Microsoft nem javítja ezt a problémát a régi, rosszul megírt programokkal (amelyek fix 10 ms felbontást tételeznek fel) való kompatibilitás miatt, helyette a Windows 8 és újabb verziókban van egy GetSystemTimePreciseAsFileTime() függvény, amit azonban a MinGW nem használ.

Az SDL 1 ms felbontással tud hordozható módon időt mérni és várakozni.

Windowson nagy felbontású időmérésre a QueryPerformanceCounter (https://msdn.microsoft.com/en-us/library/windows/desktop/ms644904%28v=vs.85%29.aspx)() és QueryPerformanceFrequency() függvények is használhatók, ezek már a 2000/XP-ben (és talán 98 ?) is megtalálhatók. De problémásak lehetnek, mert a Windows verziótól függően az RDTSC utasítást is használhatják, és a modern processzorokon az órajel változhat a program futása közben, és a magok között nem feltétlenül van szinkronban a számláló. Ez már az ep128emu-nál is okozott problémákat.
Title: Re: Xep128
Post by: IstvanV on 2015.June.19. 10:55:30
Kipróbáltam egy 4.3GHz-es i5-ösön, itt folyamatosan 0%-ot ír :-)

Talán megbízhatóbb módszer lenne kikapcsolni a sebesség korlátozást, és azt mérni, hányszor gyorsabb így az emuláció a normál 100% sebességnél.

Ati Radeon HD6850

Az AMD driver nem biztos, hogy optimálisan működik az ep128emu OpenGL video kimenetével. :oops:
Title: Re: Xep128
Post by: lgb on 2015.June.19. 11:15:33
Az SDL 1 ms felbontással tud hordozható módon időt mérni és várakozni.

Nalam az is a baj, hogy ez a Xep128 nevu szornyedveny (tenyleg az, foleg, ha valaki megnezi a forrast ...) eredendoen Linux alatti probalkozasaim eredmenye. Van benne jo par dolog, ami nincs atirva igazan SDL alapura, es egyaltalan fura, hogy mux Win alatt, ez gondolom annak koszonheto, hogy a MinGW "emulal" nemi POSIX API-t, es azzal igy megy. Pl konkretan ugye a gettimeofday() -t hasznalom, illetve az usleep()-et aztan.

Ja, es koszi az infokat persze, latszik, hogy te mar tapasztaltabb vagy az ugyekben, erdekes volt ez az idomereses okfejtes is, foleg, ha mar windows teruletekre tevedunk, amirol - oszinten szolva - fogalmam sincs :)
Title: Re: Xep128
Post by: IstvanV on 2015.June.19. 18:23:23
Reset megjavítva :-)
Nekem úgy 0-7% között írja.

Nekem 64 bites Linuxon stabilan 6% (3.3 GHz-es Sandy Bridge CPU, dd if=/dev/urandom of=/dev/null futtatása közben, hogy valóban 3.3 GHz-es legyen, és ne lassítsa le a rendszer energiatakarékosság céljából). Úgy látszik, valóban az "emulált", kis felbontású gettimeofday() lehet a hibás értékek kiírásának az oka. A top szerint ~6.3% a CPU fogyasztás.

Ugyanezen a gépen az ep128emu 2.0.9.1 (64 bites SourceForge Linux verzió) kb. 7.6% (video minőség = 2, single buffered, Nvidia OpenGL, alacsony hangminőség). Alt+W-nél 3010% a sebesség, és 103.5% a CPU fogyasztás.
Title: Re: Xep128
Post by: lgb on 2015.June.19. 19:08:57
Nekem 64 bites Linuxon stabilan 6% (3.3 GHz-es Sandy Bridge CPU, dd if=/dev/urandom of=/dev/null futtatása közben, hogy valóban 3.3 GHz-es legyen, és ne lassítsa le a rendszer energiatakarékosság céljából). Úgy látszik, valóban az "emulált", kis felbontású gettimeofday() lehet a hibás értékek kiírásának az oka. A top szerint ~6.3% a CPU fogyasztás.

Kivancsi lennek (majd kiprobalom), hogy amugy a POSIX altal javasolt (gettimeofday() elvileg elavult ...) clock_gettime()-al mi a szitu: van-e Windows-ban / MinGW-ben, akarmi, es jobb-e. Vagy jobb-e mint a nativ SDL-es megoldas egyaltalan. Vagy inkabb azt kene hasznalnom :) Ha lehet, nem szeretnek sok windows specifikus reszt, azert se, mert nem ertek hozza :)

Tenyleg, ha mar itt beszelgetunk :) Egy dolgot sose ertettem, igaz nem is probaltam (na jo JSep-ben webaudio ballepeseim voltak, de sokra nem volt jo): hogy a fenebe szokas emulatorba audio feature-t tenni? :) Ezen elgondolkodtam, de hirtelen nem jutott normalis megoldas az eszembe. Ugyanis: az Xep128 jelenleg eleg primitiv modon egy valtozo (balancer) segitsegevel probalja a megnevezett ertek korul tartani a Nick es a Z80 sebessegenek aranyat, majd egy frame-nyi slot utan ugye szamol idot, stb, ez alapjan alszik, az alvas valos hossza alapjan beleszamitja a kovetkezobe, stb stb. Ami a lenyeg: tegyuk fel, hogy Dave emulacio kozben irkalok vmi bufferbe, amibol lesz az audio. Az en gondolatmenetem itt akadt el. Alapvetoen azt mondanam, hogy legyen pl egy "cirkularis" buffer, iras es olvasas mutatoval, Dave irja hang emunal, nyilvan vmi meg lejatszast csinalgat, olvasas jelleggel. Na, az nem tiszta nekem, hogy lehet ezt real-time idoziteni. Hiszen _tokeletesen_ pontos tuti nem lesz a Z80 emulacio real time-ban, mert multitask OS van alatta, idomeres sose lehet teljesen pontos (gettimeofday() nelkul sem, stb). A hanglejatszasnal meg vmi fix sampling rate van. En azon tovabb nem jutottam, hogy itt tuti vmi buffer overrun vagy underflow lesz allandoan ossze vissza, otletem nincs, hogy lehetne egymashoz szinrkonizalni a lejatszast az emulaciot, es mindezt meg realtime-ban az EP sebesseget emulalva is, sleep-elgetve neha ugye.

Na szep hosszan kielemeztem problemamat :)
Title: Re: Xep128
Post by: IstvanV on 2015.June.19. 20:00:24
Az audio API-k általában két alapvető megoldás valamelyikét használják:

"blocking" - ilyenkor az alkalmazás szempontjából a hang kimenet egyszerű file íráshoz hasonlóan működik, és ha megtelt a puffer, akkor várakozik, amíg újra van szabad hely. Ilyen vagy hasonló elven működik az OSS (/dev/dsp), az ALSA, és Windowson az MME (régi waveOut* interface, ami már a 16 bites verziókban is megtalálható volt).

"callback" - az alkalmazás definiál egy függvényt, ami bizonyos időközönként meghívásra kerül a főprogramhoz képest külön szálon, és fel kell töltenie egy puffert. Ezt a megoldást használja például az SDL és a JACK.

Az ep128emu által használt PortAudio mindkettőt ismeri, de a "blocking" mód (amit egyébként az emulátor preferál) csak bizonyos API-k esetén elérhető.

Ha az API a programnak nem megfelelő elven működik, akkor cirkuláris pufferrel konvertálható a másik megoldásra. Erre (callback -> blocking konverzió) található példa az ep128emu-ban is a soundio.cpp-ben.

Emulátorban a legegyszerűbb, de nem optimális megoldás a blocking módot használni (vagy emulálni, ha nem elérhető), és csak azzal lassítani az emulációt valós idejű sebességre. Ennek az a hátránya, hogy sok audio API nem tud elég pontosan és nagy felbontással időzíteni, hogy az emulátor futása egyenletes legyen, azaz például ne akadozzon jól láthatóan az 50 Hz-es scrollozás.

Ezért az ep128emu (soundio.cpp) tartalmaz egy olyan trükköt blocking módban (ALSA, OSS, MME, és WASAPI), hogy gettimeofday/usleep (illetve Windowson QueryPerformanceCounter/Sleep) megoldással időzít, de a sebességet dinamikusan változtatja az audio puffer töltöttségétől függően. Ha ez 50% körüli, akkor normál 100% sebességgel próbál futni, ha valamivel több/kevesebb van a pufferben, akkor kissé (először csak +/-5, aztán 10% mértékben) lassul/gyorsul, extrém esetben - ha tele vagy majdnem üres a puffer - pedig teljesen az audio kimenet szabályozza a sebességet. Ez a soundio.cpp-ben a 250. sor után található. Így a sebesség átlagban követi a hang kimenetet, de a nagy felbontású időzítés előnyével.

Probléma még, hogy a DAVE sokkal magasabb frekvencián fut, mint amit a hangkártyák támogatnak, ezért a kimenetet konvertálni kell. Erre az ep128emu-ban az snd_conv.cpp tartalmaz egy viszonylag rossz (de gyors) és egy jó minőségű megoldást, amelyek értelemszerűen a "high quality" hang beállítás két értékének felelnek meg. A konverzió alapértelmezés szerint 500 kHz-ről (250 és 166 2/3 kHz legkisebb közös többszöröse) történik a választott mintavételezési frekvenciára, például 48 kHz-re. Található a konverterben még felüláteresztő szűrő is, ugyanis a DAVE kimenete mindig pozitív (pl. maximális hangerejű négyszögjel 0 és 63 között váltakozik), ezért a DC offszetet el kell távolítani.
Title: Re: Xep128
Post by: IstvanV on 2015.June.19. 20:36:34
Quality 3

Ezen a módon valószínűleg javítani lehetne shader alapú megoldással. A quality 2 mennyivel gyorsabb ?
Title: Re: Xep128
Post by: Zozosoft on 2015.June.19. 21:01:59
A quality 2 mennyivel gyorsabb ?
Majd megnézem. Az ALT+W egyébként kb 3500% azon a gépen.
Title: Re: Xep128
Post by: IstvanV on 2015.June.20. 12:14:15
A korábban említett (lassú) AMD laptopon a shaderre átalakított quality 3 mód valóban eredményezett némi gyorsulást, bár lehet, hogy ez a módosított verzió még tartalmaz hibá(ka)t. :oops: Az eredeti kód CPU használata 61-62% körül volt (single buffered, hang letiltva), a shader ezt 41%-ra csökkentette, most a GPU-nak kell valamivel többet dolgoznia, de modern gépeken ez a hatékonyabb.
Title: Re: Xep128
Post by: lgb on 2015.June.21. 03:02:46
Page Up/Dwn-ra lehetne turbo kapcsolót tenni? Mondjuk a valódi gépen szokásos 4/6/7.12/10 között kapcsolgatna fel/le.

Hat ... vmi hasonlo kesz (= szokott hely, stb, nem kell mondani), de hogy muxik-e ... Ja, meg van OSD. Hat eleg furan nez ki, de mind1 :-) Normalis 16x16 bitmap fontot nem talaltam hozza, ami latszik az egy google kep kereses :) funkcioval talalt kep, amibol kivagtam (na nem kezzel, programommal) az egyes karakterek mintait, igy sikerult ilyenre ...
Title: Re: Xep128
Post by: lgb on 2015.June.21. 11:30:59
@IstvanV: amugy kozben rajottem, hogy talan miert a Lua-t valasztottad beagyazott scriptnyelvkent az ep128emu-ba. Legalabbis tippelek. Ui par hete en is gondolkodtam, hogy esetleg ha lesz valami normalis UI, stb, akkor nem kodolom le C-ben, hanem lenne egy interface, amivel vmi scriptnyelv tudna rangatni, es abban lenne megirva vegulis az UI/stb. Meg hat masra is jo, ugye. Mivel en python parti vagyok, meg is neztem. Haaaat, nem trivialis azt igy beagyazni, de a gugli keresesek kozott szamtalan lua-s cucc felbukkant, es elolvasva tenyleg egyszeru+nagyszeru a lua ilyen celu hasznalata ...
Title: Re: Xep128
Post by: IstvanV on 2015.June.21. 11:57:36
A Lua-t nem csak egyszerűbb beágyazni, de sokkal kisebb és gyorsabb (különösen a LuaJIT használatával) is, mint a Python, és nincsenek függőségei, ami egyszerűsíti a bináris csomagok készítését. Több PC-s játék is Lua-t használ valószínűleg hasonló okokból. A sebesség fontos, mert hasznos, ha a debuggerben lehet minden Z80 utasításnál script kódot futtatni, és nem csak 1-2 sort.
Title: Re: Xep128
Post by: lgb on 2015.June.21. 12:11:48
A Lua-t nem csak egyszerűbb beágyazni, de sokkal kisebb és gyorsabb

Jo, hat elso korben nekem ez tunt fel, meg gyakorlati tapasztalat hianyaban ... :)

Ezert is gondolom, hogy hasznos emulatort irni: az ember olyasmikkel is megismerkedik, amit teljesen mas teruleteken is hasznositanit tud aztan, mint tudast.
Title: Re: Xep128
Post by: DrPrery on 2015.June.21. 19:05:29
Quote
A Lua-t nem csak egyszerűbb beágyazni, de sokkal kisebb és gyorsabb (különösen a LuaJIT használatával) is, mint a Python,

Úgy találtam én is, hogy a Lua kb. 2-2.5x gyorsabb a Python-nál. Ha JIT-et akar az ember Python-on, arra meg van a PyPy, de a LuaJIT meg annál is gyorsabb 2-szer... :)

Amúgy ami a Xep128 forráskódját illeti, merre van a xep_rom.hex nevű file...? Nem találom, vagy csak én vagyok vak...?
Title: Re: Xep128
Post by: lgb on 2015.June.21. 19:58:39
Amúgy ami a Xep128 forráskódját illeti, merre van a xep_rom.hex nevű file...? Nem találom, vagy csak én vagyok vak...?

Lasd Makefile. Forditaskor allitja elo a xep_rom.rom -bol:

Code: [Select]
xep_rom.hex: xep_rom.rom
        od -A n -t x1 -v xep_rom.rom | sed 's/ /,0x/g;s/^,/ /;s/$$/,/' > xep_rom.hex

Title: Re: Xep128
Post by: Zozosoft on 2015.June.21. 20:00:26
Code: [Select]
[quote author=lgb date=1434909519 link=topic=1198.msg47984#msg47984]
        od -A n -t x1 -v xep_rom.rom | sed 's/ /,0x/g;s/^,/ /;s/$$/,/' > xep_rom.hex
:shock:
Ezt van ember aki érti? :oops:
Title: Re: Xep128
Post by: Attus on 2015.June.21. 20:20:58
:shock:
Ezt van ember aki érti? :oops:

A sed utáni részt még csak valahogy értem, ha belemélyedenék, de a GNU coreutils od  alapparancsát még sosem használtam.  :oops:
A sed az egy parancssoros adatfolyam szerkesztő a szabványos ed kifejezésekkel. Szinte fantasztikus, hogy miket lehet vele csinálni.

És a sed bemenete az od kimenete, a sed kimenete meg a xep.rom fájlba megyen.  ( >  xep_rom.hex)

HIába ez is a linux gyönyörűséges része, mely a widows-ból sajna hiányzik.
:cool:

Részlet az od --help terminál kimenetből:
Code: [Select]
attila:~$ od --help
Használat: od [KAPCSOLÓ]… [FÁJL]…
  vagy:    od [-abcdfilosx]… [FÁJL] [[+]ELTOLÁS[.][b]]
  vagy:    od --traditional [KAPCSOLÓ]… [FÁJL] [[+]ELTOLÁS[.][b]
              [+][CÍMKE][.][b]]

A FÁJL egy egyértelmű ábrázolásának kiírása, alapértelmezetten oktális
bájtokkal, a szabványos kimenetre. Több FÁJL argumentumot összefűz a felsorolás
sorrendjében a bemenet kialakítása érdekében.
Ha a FÁJL nincs megadva, vagy -, akkor a szabványos bemenetet olvassa.

Az első és második hívási alak egyidejű alkalmazása esetén a második alak
feltételezett, ha az utolsó operandus +-al vagy (2 operandus esetén) számmal
kezdődik. Az ELTOLÁS operandus a -j ELTOLÁS kapcsolót jelenti. A CÍMKE az első
kiírandó bájt pszeudo-címe, amely a kiíratás előrehaladásával növekszik. Az
ELTOLÁS és a CÍMKE esetén egy 0x vagy 0X előtag hexadecimális ábrázolást jelez;
az utótagok a . (oktális) és b (szorzás 512-vel) lehetnek.
Title: Re: Xep128
Post by: lgb on 2015.June.21. 20:21:56
:shock:
Ezt van ember aki érti? :oops:

En irtam, tehat ertem :) Amugy a xep_rom.rom -bol hexa, vesszovel elvalasztott listat csinal, amit aztan lehet a C forrasba include-olni.
Title: Re: Xep128
Post by: lgb on 2015.June.21. 20:26:34
HIába ez is a linux gyönyörűséges része, mely a widows-ból sajna hiányzik.

Nem "Linux", altalanos UNIX ismeretanyag, ha az ember eleget Unix/Linux-ozik (nekem meg a munkam is ebbol all), akkor ismeri azert valamilyen szinten az alapveto tool-okat, mint a shell script iras, awk, sed es hasonlo parancsokat (azert ovatosan, Linux alatt "divatos" a GNU tool-ok hasznalata, ami sok esetben tobbet tud, mint az "alap" - pl POSIX szabvany - altal eloirt, ez akkor lehet gond, ha mas UNIX ala viszi at az ember, ahol nem GNU tool-ok vannak, es az pl nem tudja ...).

Nem feltetlen, ha cygwin-t felrakod, akkor elvileg Windows ala is lesz UNIX-like shell, tool-ok, meg minden "ami kell". Mar akinek kell :)

A sed-ben meg egyszeruen csak a "kicsereles" funkciot hasznaltam, kb a lenyege, hogy s/MIT/MIRE/ cserelek, amugy regexp, tehat a ^ sor elejere match-el, a $ pedig a vegere. A $$ csak azert van, mert Makefile-ban a $-nek jelentese van, ezert kell duplazni, siman parancskent kiadva "kezzel" eleg lenne egy $ jel is.
Title: Re: Xep128
Post by: lgb on 2015.June.21. 21:02:41
Mas: annyira gaz lett az OSD, hogy inkabb nincs is rola velemeny? :) Most epp page up/dpwn-ra CPU sebesseg valtas (amit Zozo szeretett volna), F11-re full screen-be lepes, screenshot keszites (most mar screenshot-n.png van, ahol n 0-tol no, igaz, az emu ujra futtatasaval igy is felulirja meg) soran van pl OSD info a git repo-n, illetve a szokasos win32 build-ben. Illetve, megprobaltam detektalni, ha valaki egeret akar, igy pl SymbOS indulasakor is jon egy OSD uzenet, hogy az applikacio valoszinu egeret akar hasznalni, stb. Viszont alapbol joy emu van, igy EPDOS is megy rendesen. Rovid(ebb) tavu otleteim, amit szeretnek:

* Z180 plus opcode-ok tamogatasanak elkeszitese, hogy meglegyen az osszes
* w5300 emulacio ...
* keyboard config file-bol amit emu kiir magabol, utana akar modosithato is (igaz meg csak majd text editorral), amit aztan minden inditasnal beolvas
* ep128emu szeru FILE: eszkoz (bar lehet file selector UI nem lesz - elsore legalabbis - tehat mindig ki kell irni a nevet)
* belso atszervezes (ez mondjuk usernek tok mind1), hogy ne legyen a forras ilyen ... hmmm ... okadek :)

A "console window" kicsit nagyobb lelegzetu dolog, bar mondjuk lehet, a w5300 kemenyebb dio, hmm. Az emlitett "console" segitsegevel viszont mar nemi debug funkcio is lehet, bar az biztos, hogy messze nem lesz olyan szintu, mint ami az ep128emu -ban van.

Ez jutott hirtelen eszembe ...
Title: Re: Xep128
Post by: Attus on 2015.June.21. 21:05:31
Mas: annyira gaz lett az OSD, hogy inkabb nincs is rola velemeny? :)
Még nem fordítottam újra, nem láttam.
Title: Re: Xep128
Post by: Zozosoft on 2015.June.21. 21:38:31
Nem gáz :-)
Title: Re: Xep128
Post by: lgb on 2015.June.21. 22:15:34
Nem gáz :-)

Ok, akkor igy hagyom. Amugy azert vagyok kisse bizonytalan, mert nem terveztem eredetileg, hogy nagyon kozkincse teszem ezt az emulatort, az alap celja az lett volna, hogy onzo modon magamnak legyenek olyan dolgok, ami meg hw szinten egyaltalan nincs is (pl w5300) vagy nem tul valoszinu, hogy nekem lesz (pl z180), stb ...
Title: Re: Xep128
Post by: Attus on 2015.June.22. 10:34:12
Érdekes, hogy csak rövid ideig látszik az OSD és elhaványulva foszlik szét.
Szép kék alapon nyúlt betűkkel.

A képernyő pillanatfelvétel műkszik és a kész png mérete is kicsiny.
Title: Re: Xep128
Post by: lgb on 2015.June.22. 10:52:50
Érdekes, hogy csak rövid ideig látszik az OSD és elhaványulva foszlik szét.
Szép kék alapon nyúlt betűkkel.

Miert, igy nem jo (nem tudom az "erdekest" hogy erted, mint problema, vagy tetszik neked igy)? Amugy screen.c

Code: [Select]
#define OSD_FADE_START 300
#define OSD_FADE_STOP    0x80
#define OSD_FADE_DEC    3

Van egy szamlalo, ami OSD_FADE_DEC -el csokkent minden frame-ben, ha van epp OSD. Ez az OSD_FADE_START -nal indul. Ha ez nagyobb (itt az) mint 255, akkor amig 255-ot el nem eri, addig valtozatlanul latszik. 255 ala erve halvanyul egeszen addig, amig az OSD_FADE_STOP erteket el nem eri, akkor ott eltunik. Az OSD szeru dolgok mindig kerdesesek, mert ha tul hamar tunik el, sokaknak nem tetszik. Ha tul soka latszik, az is zavaro. Nehez megtalalni a jo erteket ...

Illetve, itt:

Code: [Select]
*(d++) = *s & mask ? 0xFFFFFFFFU : 0xFF0000FFU;
A kerdojel utani a "karakter szin" (itt feher), a masik a hatter (itt kek). Ez ARGB, az elso byte az alpha channel. Ja, es amugy a Xep128 valoszinu tobb helyen is tartalmaz jelenleg endian specifikus cuccokat, ami gond lehet, ha nem x86 es mas byte order-rel megaldott CPU-ra portolna vki. Mondjuk ez az en lustasagom, mert kezelhetnem is :)

Masreszt, ha egyszer lesz config file parser :) akkor minden ilyesmit ki lehet oda tolni, es ujraforditas nelkul is allithato config file modositassal. Ideertve pl a keyboard mapping-et is. Ez meg mindig nem ugyanaz, mintha lenne "szep" menu, hogy allitani ezt-azt, de egy fokkal mar felhasznalobaratabb :)
Title: Re: Xep128
Post by: Attus on 2015.June.22. 17:20:42
Az én észlelési képeségem a lassú és nem az OSD jelenléti ideje rövid.
Hja,a vénség. :roll:
Title: Re: Xep128
Post by: lgb on 2015.June.22. 17:30:04
Az én észlelési képeségem a lassú és nem az OSD jelenléti ideje rövid.
Hja,a vénség. :roll:

Vagy nekem azert oke, mert en _tudom_ mi van odairva :) Igy konnyu nekem persze!

Amugy, vagy atirod a forrasban, vagy majd ha configolhato lesz szepen, akkor cfg file-ban is at lehet irni.
Title: Re: Xep128
Post by: lgb on 2015.June.22. 22:19:29
Az én észlelési képeségem a lassú és nem az OSD jelenléti ideje rövid.
Hja,a vénség. :roll:

De csak a te kedvedert: OSD replay feature. A ` gombra (magyar billencsen talan a 0 ...). Az utolso OSD kijelzest mutatja meg ujra (amig nyomva tartod, utana elhalvanyul az is persze, de megismetelheto). Lassan tobb "csicsa" lesz ebben az emuban mint emulacio :)
Title: Re: Xep128
Post by: lgb on 2015.June.25. 17:06:01
w5300 emulacio van eppen teriteken. Blog jelleggel leirnam: AVR-hez volt (C-ben) Wiznet-tol "driver", na azt kicsit atmokoltam, hogy siman Linux alatt forduljon nativ programkent, es a megfelelo AVR portra valo iras helyett kiirja, mit csinalna amugy. Ezt hasonlitgatom ossze a w5300 specifikacioval, es probalok rajonni, hogy akkor pontosan mit is lenne fontos emulalni egy minimalis emulacios szint eleresehez. Kozben Z80 asm-ban is irogatok, ami megprobalna hasznalni a Xep128-ban levo emulaciot, es ami remelhetoleg amugy majd elmenne valodi EP-n, valodi w5300-al is majd egyszer ... Azert nem egyszeru, nem tudom, mikor lesz ebbol valami ...
Title: Re: Xep128
Post by: lgb on 2015.June.25. 23:17:55
OMG, a windows socket cuccok (winsock) ugy neznek ki, mintha egy reszeg UNIX programozo probalt volna windows-ba takolni valamit. Ez valoszinu nincs is messze az igazsagtol, mert MS BSD UNIX-bol vette at, allitolag forraskod szinten anno. Csak akkor ne nyulkaltak volna bele itt-ott ...
Title: Re: Xep128
Post by: Zozosoft on 2016.February.22. 10:38:03
Egy elsőre értelmetlenek hangzó kérés :-)
Az SD cartridge FLASH ROM működést meg tudnád csinálni? Időzítés kb nem érdekes, csak a chip típus lekérdezés, törlés, írás. Poén lenne ha a ROM fájlban is frissítené a tartalmat :-)

Nem ártana már némi felhasználói felületet csinálni a FLASH progihoz :oops: ehhez jól jönne némi emulátor támogatás :-)
Title: Re: Xep128
Post by: lgb on 2016.February.22. 11:24:51
Egy elsőre értelmetlenek hangzó kérés :-)
Az SD cartridge FLASH ROM működést meg tudnád csinálni? Időzítés kb nem érdekes, csak a chip típus lekérdezés, törlés, írás. Poén lenne ha a ROM fájlban is frissítené a tartalmat :-)

Nem ártana már némi felhasználói felületet csinálni a FLASH progihoz :oops: ehhez jól jönne némi emulátor támogatás :-)

Bocsi, lehet volt mar rola szo, de pontosan milyen flash van a cuccon? Vmi specifikaciot csak megneznek, hogy mikepp is megy ez :)

Amugy Xep128 kapcsan nagyon belemasztam volna az EPNET-be eppen. Ugy tunik, elsore egyszerubbnek gondoltam a feladatot mint valojaban :( Lehet kisebb dolgokkal ertelmesebb lenne haladni, gondolom ez a flash dolog sem annyira bonyolult megoldani. Bar mondjuk spec eleve az SD kartyara iras is jol johetne neha azert, flash ide vagy oda :)
Title: Re: Xep128
Post by: Zozosoft on 2016.February.22. 11:39:12
Bocsi, lehet volt mar rola szo, de pontosan milyen flash van a cuccon? Vmi specifikaciot csak megneznek, hogy mikepp is megy ez :)
AM29F400BT, aminek az első két 64K-s szektora érhető el a két részben (4-5-6 szegmensek, ill. a lapozható 7-es szegmens). Itt van a Flash program is.

Quote
Bar mondjuk spec eleve az SD kartyara iras is jol johetne neha azert, flash ide vagy oda
Igen, nem lenne rossz :-)
Title: Re: Xep128
Post by: endi on 2016.February.22. 13:15:36
nagyon király lenne ha az ep128-on lévő játékokat 1 kattintással lehetne indítani :)
Title: Re: Xep128
Post by: lgb on 2016.February.22. 15:06:05
AM29F400BT, aminek az első két 64K-s szektora érhető el a két részben (4-5-6 szegmensek, ill. a lapozható 7-es szegmens). Itt van a Flash program is.

Csak emlekezetbol irom (sd cart emut regen irtam mar), de nekem ugy remlik, hogy a flash elso 48K-ra fixen latszik 4-5-6 szegmensen. A flash 64K-jabol az utolso 16K elvileg el sem erheto (?), mivel a 7 szegmensen ugyan van 8K (?) "flash ablak" de az meg a flash masodik 64K-jara "lat ra". Erre jol emlekszem, tudom? Eleve lehet ez nincs is jol emulalva, tudtommal most nem nagyon hasznalja ki semmi ezt a lapozast ugy se ... Az szinten remlik, hogy a "lapozas" 256 byte-os lepesekben tortenik, mi van akkor, ha a 'flash ablak' kilog a 64K-bol akkor ujra az elso 64K "eleje" latszik ott? Na irom ezeket, hatha kiderul, hogy valamit mar eleve rosszul gondolok, nem igazan neztem most utana hirtelen ...
Title: Re: Xep128
Post by: Zozosoft on 2016.February.22. 15:10:08
Csak emlekezetbol irom (sd cart emut regen irtam mar), de nekem ugy remlik, hogy a flash elso 48K-ra fixen latszik 4-5-6 szegmensen. A flash 64K-jabol az utolso 16K elvileg el sem erheto (?), mivel a 7 szegmensen ugyan van 8K (?) "flash ablak" de az meg a flash masodik 64K-jara "lat ra". Erre jol emlekszem, tudom?

Igen.
Quote
Eleve lehet ez nincs is jol emulalva, tudtommal most nem nagyon hasznalja ki semmi ezt a lapozast ugy se ...
Még nem, de kéne, pl rendes ISDOS-os EXDOS berakáshoz :-)

Quote
Az szinten remlik, hogy a "lapozas" 256 byte-os lepesekben tortenik
Nem, 8K-s lapok vannak.
Title: Re: Xep128
Post by: lgb on 2016.February.22. 15:37:09
Igen.Még nem, de kéne, pl rendes ISDOS-os EXDOS berakáshoz :-)
Nem, 8K-s lapok vannak.

Na most rakerestem. van nalam egy SDSW.ZIP nem tudom honnan, lehet toled :) Abban vannak asm forraskodok is, es benne egy sd_address.txt amiben ez all, en erre emlekeztem (ez alapjan csinalgattam az emuban is):

Code: [Select]
Megjegyzések:
- SPI órajel: 16MHz
- nagysebességű olvasási módban a 0x0FC00..0x0FFFF tartományban minden címről az adat regiszter olvasható be
- a ROM lapregiszterbe egy virtuális 16-bites ROM cím felső 8 bitjét kell beírni
- a status regiszterből a két kártyafoglalat egyesített INSRT (kártya behelyezve) és DCHNG (kártyacsere történt) jele olvasható
- INSRT=1 -> egy kártya sincs behelyezve   DCHNG=1 -> valamelyik kártyát kicserélték

A "a ROM lapregiszterbe egy virtuális 16-bites ROM cím felső 8 bitjét kell beírni" gondoltam en azt, hogy akkor 256 byte-oneknt lehet beallitani azt az "ablakot" ...

Vagy akkor ugy ertendo, hogy a lapozo regiszternek vegulis csak a felso 3 bitje szamit, az also 5 bit nem, mert ugyis 8K-nkent lehet _csak_ ...

Mondjuk akinek van EP-je es sd kartya cucca, ezt meg tudna nezni, ha pl 0-31-ig (ha jol gondolom) ir barmit a lapozo regiszterbe a flash "ablak" tartalmat ugyannak latni, mert a felso 3 bit ugyanugy nulla es csak az szamit :D es akkor elvileg 32-t irva valtozik csak meg ... (ami igy akkor a flash masodik 64K-jabol a masodik 8K-s reszt mutatja az elso helyett).

Aaaaaa! Ussetek :) oda is van irva fentebb "ROM lapregiszter (W): 7..5.bit: ROM lap" :-)

Csak kicsit zavaro, hogy mashol meg 8 bitrol beszel, hogy a cimbol a felso 8 bit. Azert nem mindegy :)
Title: Re: Xep128
Post by: lgb on 2016.February.22. 18:56:53
Zozo, szerinted van vmi normalis modszer arra, hogy "megtudjam" a hasznalt ROM image ami epp a 7 szegmensre esik az alapjan az SDEXT cuccos, vagy pl sima BASIC cartridge? Mert arra gondoltam, hogy Xep128-ban az alapjan dontom el, hogy bekapcsolom-e az SD-ra vonatkozo emulaciot, hogy a hozza tartozo ROM image van-e benn. Mivel SDEXT nyilvan valtozhat (uj verzio stb), ez nem tudom mennyire jo modszer.  Pl, ha a 7-es szegmensben szerepel valahol az "SDEXT" string, az alapjan eldonteni? Vagy ez igy nagyon meredek? Bar jelenleg a Xep128 altal hasznalt "mindent egyben" combined.rom -ot ugyse sok ember turkalni, hogy mas legyen benne, azt hiszem ...
Title: Re: Xep128
Post by: Zozosoft on 2016.February.22. 19:12:42
 Pl, ha a 7-es szegmensben szerepel valahol az "SDEXT" string, az alapjan eldonteni?
Én is erre gondoltam :-)
Title: Re: Xep128
Post by: lgb on 2016.February.23. 00:55:35
Na van itt egy furcsasag amit nem ertek, sajna ez most nem SD ugylet. Ha azt mondom, hogy :HELP beall az egesz, a :HELP AKARMI az mux. Ehhez tudni kell, hogy az emulator berak egy par byte-os EXOS_ROM-ot, amiben ez van:

https://github.com/lgblgblgb/xep128/blob/master/xep_rom.asm

Az az ED opcode a "trap" amit a CPU emulator intez es meghivja a regisztralt fuggvenyemet. Az lathato, hogy ronda modon magat a ROM veget hasznalom (F800-tol) arra, hogy adatot adjak at, ha vmit ki kell irni, amit az emu eloallit. Erdekes modon ez mindig mux, :HELP akarmi, vagy :XEP parancsot, stb, egyedul sima ":HELP" akad meg, meghozza azutan, hogy kiirja a XEP ROM nevet roviden, de amugy akkor is, ha azt mondom neki, hogy ne irjon ki semmit. Minden mas mux. Nem tudok rajonni, ez miert van.
Title: Re: Xep128
Post by: Zozosoft on 2016.February.23. 07:28:44
Ez mi akarna lenni? :oops:
Azonkívül, hogy totál szabálytalan az egész, mert kéne foglalkozni az akciókódokkal.

Amúgy a HELP akármi csak addig megy amíg az adott program felismeri magát, aztán a C-t nullázva leállítja a keresést. Az általános HELP az végig megy mindegyiken (nem szabad nullázni a C-t). Ha a te romodnál akad ki, akkor a te programodban van a hiba :-)
Title: Re: Xep128
Post by: lgb on 2016.February.23. 07:45:54
Akciokodokat mar a C program vizsgal. Es allit is be regisztert ha kell az ED trap-en belul. A cel az volt itt, hogy minimal EP kod legyen. Ertem en, hogy nalam lesz a hiba, de hol ... :)
Title: Re: Xep128
Post by: Zozosoft on 2016.February.23. 08:54:16
Akkor látni kéne a kérdéses C programrészt :-)
Title: Re: Xep128
Post by: lgb on 2016.February.23. 09:11:35
Akkor látni kéne a kérdéses C programrészt :-)

https://github.com/lgblgblgb/xep128/blob/master/emu_rom_interface.c

168. sortol. Amugy a fura az, hogy a :HELP -re kiirja amit kell (azaz a ROM kodbol az EXOS 8 hivas meg tuti oke ...), es utana akad meg, nem kapom vissza a kurzort sem, stb (viszont ZozoTools ora megy tovabb rendesen). Sajna nincs normalis debuggerem Xep128-ban :-/

Probakeppen nullaztam C-t es A-t, akkor oke, csak ugye az kevesbe jo, mert akkor megall a listazas is, es tobbi ROM nem "jut szohoz" :)
Title: Re: Xep128
Post by: ergoGnomik on 2016.February.23. 09:22:12
Vakegér kérdések: Biztosan bele akarsz írni a COBUF-ba és nem csak át akarod adni SHORT_HELP címét? És az a COBUF elé írás biztosan teljesen jó lesz?

Semmi. Tényleg vakegérség volt. Átsiklottam a * felett.
Title: Re: Xep128
Post by: Zozosoft on 2016.February.23. 09:29:33
A-t kéne nulláznod, BC, DE változatlan kell legyen.
Title: Re: Xep128
Post by: lgb on 2016.February.23. 09:29:42
Vakegér kérdések: Biztosan bele akarsz írni a COBUF-ba és nem csak át akarod adni SHORT_HELP címét? És az a COBUF elé írás biztosan teljesen jó lesz?

Igen, biztosan :) A COBUF az EP altal cimezheto tartomanyban van, hogy utana a nyulfarknyi XEP ROM kod Z80/EP szinten el tudja irni. Ha csak a cimet adnam at, az nem segitene, mert egy C pointerrel sokra megy szegeny Z80 :) A COBUF ele iras szandekos, azert van a macronal is +2 a "kerek" szamhoz kepest. Amugy is, ezzel magaval nincs gond. Ha ezzel lenne gond, semmi mas nem menne. De mint mondtam, megy minden ezzel a modszerrel, :XEP parancsok, a :HELP is ha specifikus (pl :XEP HELP) egyedul a "sima, csak :HELP" nem. Minden mas oke. Es amugy mint lathato pedig az kozos resz a C kodban is.

Code: C
  1. #define COBUF ((char*)(memory + xep_rom_addr + 0x3802))

A Z80 oldalrol meg:

https://github.com/lgblgblgb/xep128/blob/master/xep_rom.asm

Code: ZiLOG Z80 Assembler
  1. LD DE, 0xF800 ; the ED trap modifies memory from here

Innen nez egy word-ot, a kiirando hosszra, utana a string. Lathato, hogy a fenti C-ben levo macro pont azert van +2 -vel, igy ott COBUF-hoz kepest -1 es -2 a length parameter. De mint mondtam az elv remekul megy mindig, kiveve, ha altalanos :HELP -et ker az ember, akkor van baj egyedul!
Title: Re: Xep128
Post by: lgb on 2016.February.23. 09:36:48
A-t kéne nulláznod, BC, DE változatlan kell legyen.

Csak ott valtozik, ahol SET_A(...) vagy SET_C(...) van, kulonben marad ugyanaz, ami volt az ED trap utasitas elott. A fuggvenyben a "de" stb valtozo csak C program valtozo (hogy ne kelljen mindig lekerni a z80ex CPU emulatortol hogy micsoda ...), csak a fenti SET_ ... dolgok allitanak barmit a Z80 szamara. Az xep_exos_command_trap() fuggvenyben csak ilyenkor valtozik Z80 regiszter a trap vegrehajtasa soran.

Erdekes, amugy eskuszom tegnap kinomban kiprobaltam A nullazast, C-t, mindkettot egyiket sem es sehogy nem volt jo ... Most tancsodra az altalanos help-nel csak az A nullazasa utan jonak tunik, ami vegulis egyetlen SET_A(0) beszurasat jelentette, pl ebben a commit-ban:

https://github.com/lgblgblgb/xep128/commit/decccb264895e57f9e3fd77af2b42cf7686b4d26

Amugy mi tortenik, ha ilyenkor az A-t nem nullazod, ez mar kivancsisag inkabb, akkor miert "fagy be az egesz", mit csinal az EXOS olyankor?
Title: Re: Xep128
Post by: lgb on 2016.February.24. 02:13:22
http://xep128.lgb.hu/files/xep128-sdflash.exe

Hat, ez most igy igen amator, de a FLASH.ASM-ot leforditva, majd futtatva rajta egy olyan flash.rom-ot alatolva, amiben atirtam a verzioszamot :) a reset utan (pause/break gomb a Xep128-nak) mar azt a verzioszamot mutatta, tehat valamennyire muxik, ugy tunik. Viszont a Xep128 ezt nem fogja elmenteni disk-re, tehat legkozelebb a combined.rom -ot toltve ugye ujra az eredeti van. Csak amig fut az emulator, addig latszik az "ujra-flash-eles" eredmenye.

Azon csodalkozom, hogy megy, mert a data status polling sincs implementalva, az erase/suspend sem, es az ID stb lekerdezes se :-/ Legalabbis most meg nincs.

Sajna az ep128emu-ba igy se nagyon tudnam berakni, eleg durvan at kellett irni a Xep128-ban is az sdext emu reszt, arra nem feltetlenul vallalkoznek, hogy oda is megprobaljam ... Azert ma esti programnak jo volt ez is :)
Title: Re: Xep128
Post by: Zozosoft on 2016.February.24. 14:30:06
Hat, ez most igy igen amator, de a FLASH.ASM-ot leforditva, majd futtatva rajta egy olyan flash.rom-ot alatolva, amiben atirtam a verzioszamot :) a reset utan (pause/break gomb a Xep128-nak) mar azt a verzioszamot mutatta, tehat valamennyire muxik, ugy tunik. Viszont a Xep128 ezt nem fogja elmenteni disk-re, tehat legkozelebb a combined.rom -ot toltve ugye ujra az eredeti van. Csak amig fut az emulator, addig latszik az "ujra-flash-eles" eredmenye.
Itt van ROM csomag, amivel lehet tesztelni. (https://enterpriseforever.com/hardver/sd-kartya-interface-cartridge-ben/msg47635/#msg47635)
Quote
Azon csodalkozom, hogy megy, mert a data status polling sincs implementalva, az erase/suspend sem
Erase külön nincs ellenőrizve, csak a végén, hogy sikerült-e az írás.
Quote
, es az ID stb lekerdezes se :-/ Legalabbis most meg nincs.
Az még a Flash progiban sincs benne :oops:
Title: Re: Xep128
Post by: lgb on 2016.February.24. 15:55:33
Nekem mux ... FB-t megflash-eltem a FLASH.COM-al a Xep128 alatt, utana reset utan egyreszt nemet karaktereket irogatott nekem, masreszt volt egy rakas nemet szoveg a :HELP -ben is, amit nem is ertek ... :)
Title: Re: Xep128
Post by: lgb on 2016.March.02. 21:15:00
Akinek meg nincs elege a hulysegeimbol es szeretni kicsit tamogatni :) az kitalalhatna egy Xep128 logot. Mert az app icon SDL2 szinten legalabbis a szokasos UFO-fejem (na jo, o Thor a StarGate-bol aki nem ismerne fel a kerdeses asgard-ot ...), de ez ugye egyreszt bekepzeltseg, hogy "sajat" (nem is sajat ...) "avataromat" hasznalom, masreszt nem is epp idealis. Mivel en rajzolni nem tudok, kozismert, hogy kepzeloerom az nulla, ezert ha valakinek van kedve, igazan alkothatna valamit. 96*96 pixeles stuff kene (szoval nem web oldalra logo - de jeeeee jo otlet, az is johet .... - hanem ilyen kis mini app icon ....). Azt mondjuk nem tudom, hogy amugy Windows-on ebbol latszik-e vmi.

Ha nincs erdeklodes, akkor nem szoltam, es bocsanat a koldulasert :-) Persze, GNU/GPL-be helyezheto stuff kell licenc ugyileg ugyebar. Koszi a figyelmet.
Title: Re: Xep128
Post by: endi on 2016.March.02. 21:35:58
eleve a név rossz :)
web emu, valami ilyesmi kéne
EP gomb W betű? :)
Title: Re: Xep128
Post by: Zozosoft on 2016.March.02. 21:37:33
web emu, valami ilyesmi kéne
Miért is, amikor ez nem web emu? :oops:
Az egy másik projektje :-)

Ha EP gomb, akkor az X :-)
Title: Re: Xep128
Post by: lgb on 2016.March.02. 22:06:55
Az egy másik projektje :-)

Jol van na, tudom, tele vagyok felbehagyott project-ekkel :-P
Title: Re: Xep128
Post by: endi on 2016.March.02. 22:15:05
ja akkor má keverem őket...
Title: Re: Xep128
Post by: szipucsu on 2016.March.02. 22:19:01
Igen, mondjuk EP gomb X. Mint az EP128Emu-é, csak nem E lenne rajta, hanem X. Vagy mint Lacika honlapjának a logója, zöld négyszög alapon X bötű.
Title: Re: Xep128
Post by: lgb on 2016.March.06. 20:50:35
Inkabb atjottem ide, mivel ez mar "kisse" Xep128 specifikus tema :)

A Boulder Dash nem működik a 4 színű karakteres mód hiánya miatt. :oops:

:) Az lehet, a nick resz elegge szedett-vetett, csak "odapiszkitottam" ami ugy altalaban kell video/colour mode, hianyos ... JSep-ben tobb van (emlekeim szerint Boulder Dash is megy azon jol), de pont az volt az eredeti tervem is, hogy majd ugyis ujrairom az egeszet :) A Boulder Dash-t konkretan pl JSep-n emlekszem teszteltem, Xep128-nal eddig inkabb az volt a celom, hogy igy "mukodjon valamennyire", es kesobbre gondoltam ezeket a dolgokat megcsinalni. Foleg, mivel JSep eseten egyedi, hogy webesben nem nagyon van meg EP128 emulator, mig ugye nativ alkalmazasban mar van joval hasznalhatobb is, az ep128emu :)

Az interlace-es meglatast koszi, bar ahogy en kezelem vsync-et az mar eleve durva :-D
Title: Re: Xep128
Post by: IstvanV on 2016.March.07. 12:44:29
:) Az lehet, a nick resz elegge szedett-vetett, csak "odapiszkitottam" ami ugy altalaban kell video/colour mode, hianyos ...

A hiányzó módok könnyen megvalósíthatók, a többségük valamelyik már létező mód másolata pár sor módosítással. :) Ezeken kívül video RAM időzítéssel már elég pontos lenne, illete a legnagyobb még hiányzó rész a hang emuláció, de annak a hiánya nem akadályozza a programok futását. Valójában az ep128emu EP emulációja sem igázán pontos (a CPC és különösen a Plus/4 esetében több figyelmet fordítottam erre) :oops:, csak az EP-s programok sokkal kevésbé érzékenyek erre, mint például a Commodore gépekre írt demók.

Quote
Az interlace-es meglatast koszi, bar ahogy en kezelem vsync-et az mar eleve durva :-D

Hasonlónak tűnik az ep128emu-ban használt megoldáshoz, azzal az eltéréssel, hogy ott csak az számít VSYNC-nek, ha legalább egy slot aktív (nem keret), de ez még mindig nem pontos, mert valódi TV-n elég hosszúnak is kell lennie ahhoz, hogy függőleges visszafutást eredményezzen. Az előbbi interlace hack nem igazán jó megoldás (például a kép első és utolsó sorát nem rajzolja újra, és a nick.c-ben az "interlace" változót csak a VSYNC bekapcsolásakor kellene állítani), de arra alkalmas, hogy néhány sor módosítással ki lehessen próbálni az effektust.
Title: Re: Xep128
Post by: lgb on 2016.March.07. 19:39:33
A hiányzó módok könnyen megvalósíthatók, a többségük valamelyik már létező mód másolata pár sor módosítással. :)

Tudom, JSep-ben meg is csinaltam :) Csak itt nem tartottam eddig fontosnak, mert alapvetobb gondok is vannak (ez persze az en preferenciam, lehet mas ezt maskepp latja). Aztan, mint mondtam, ugyis ujrairom rendesen a Nick reszt. Mivel a Xep128-at hasznalnam fejleszteseknel stb, engem most jobban zavar, hogy nem lehet configolni, parancssoros opciokat adni, eleg kenyelmetlen, hogy honnan szedi a ROM-ot, meg csak egyben lehet, stb, tehat ilyen configuracios kerdesek "zaklatnak" most. Configuracio alatt config file-t ertek azert, nem igazan GUI-t ;) Oszinten, az nekem sose hianyzott. Csak bonyolitja a dolgokat :)


Quote
Ezeken kívül video RAM időzítéssel már elég pontos lenne

No igen, az tenyleg hatra van, arra meg ra se neztem, de emlekszem, hogy egyszer mar regeltel rola, vmi 4.5-os dolog volt vagy hasonlo :)

Quote
illete a legnagyobb még hiányzó rész a hang emuláció, de annak a hiánya nem akadályozza a programok futását.

Hat a hang nalam total K.O. Otletem sincs, hogy kene megoldani. Mert ugye az egy dolog, hogy az ember lejatszik egy WAV-ot. A problema itt az, hogy Z80 kod piszkalja a Dave-et, kozben maga az emulator persze nyilvan nem allandoan fut (multitasking stb, neha sleep-el), es jobb esetben :) gyorsabb a Z80 emu mint a valodi Z80 (azert - is - kell ugye sleep-elni idonkent egyet), ugyanakkor az eloallitott hangnak azert normalisnak kell lennie. A sleep viszont sose lesz teljesen pontos, az meg a masik. Hogy ezt hogy lehet osszehozni, hogy pontos hang legyen, es raadasul akadasmentesen, az most igy hirtelen nem all ossze a fejemben. Foleg, hogy igy is a Z80 orajelbol van szarmaztatva a Dave-e (/16 vagy hat /24 attol fugg mit ir az ember a BF portra), a Nick pedig egy lebegopontos cuccossal van a Z80 orajelhez "szinkronizalva", de ugye ez azt is jelenti, hogy azert 1-2 nick slot-ttal mindig pontatlan lesz, mert azt nezi, hogy utolso opcode X cycle, abba belefert-e volna mar 1 (vagy tobb ...) Nick slot, ha igen, megcsinalja. Csak a tort ertek miatt is kell a lebegopontos cucc. Ez mondjuk a main fuggvenyben latszik, meg van az a SCALER nevu cucc, az irja le a Z80 es a Nick (slot frekvencia) aranyat, amihez probal idomulni. Na, ha ebbe meg bejon az is, hogy a lejatszas frekvenciajahoz is kell valahogy a Dave altal elkovetett dolgokat illeszteni, meg puffereles is van nyilvan, meg ne is akadjon stb, haaaaaaaaaaaaaaaaaaaaaaat :)

Quote
Valójában az ep128emu EP emulációja sem igázán pontos (a CPC és különösen a Plus/4 esetében több figyelmet fordítottam erre) :oops:, csak az EP-s programok sokkal kevésbé érzékenyek erre, mint például a Commodore gépekre írt demók.

Na igen. Tenyleg, Plus4 emulator mennyire pontos? Nem allitom, hogy nagyon ertenek a Plus4-hez, de pl a YAPE szerzoje nagyon kiemeli hogy "non-nonsense" emulator :) Meg talan arrol is volt szo, hogy a VICE-ban levo mennyire "rossz". A TED idoziteserol stb sokat nem tudok, max az remlik, hogy valtozik a CPU orajele eleg rendesen attol fuggoen, hogy aktiv kepkijelzeses resz van, vagy nem, de kb ennyi :) Az ep128emu-ban levo Plus4 emulator mennyire jo?
Title: Re: Xep128
Post by: IstvanV on 2016.March.08. 08:24:18
No igen, az tenyleg hatra van, arra meg ra se neztem, de emlekszem, hogy egyszer mar regeltel rola, vmi 4.5-os dolog volt vagy hasonlo :)

A 4.5 az a Z80 ciklusok száma 1 NICK slot alatt, közelítően (4000000 / 889846 = 4.49516). Én alapvetően úgy oldottam meg, hogy minen VRAM és NICK port hozzáférésnél várni kell a következő NICK slotig, 1/2 Z80 ciklus felbontással. Ezen kívül van még egy fix késleltetés is, ami kb. 5/16 NICK slot + egy néhány ns-os érték (ami függ a hozzáférés típusától, azaz kissé eltér M1, normál írás/olvasás, és port I/O esetén, de ez minimális mértékű). Itt (https://enterpriseforever.com/emulatorok/idozitesi-problemak-az-emulatorokban/msg14881/#msg14881) található egy program, amellyel tesztelhető a VRAM időzítés, Zozosoft több valódi gépről is küldött eredményeket, amelyekkel az emulátorok összehasonlíthatók.

A megvalósításnál problémát jelenthet az, hogy a Z80 utasításokon belüli időzítés is fontos, azaz hogy pontosan mikor történnek az egyes memória és I/O műveletek (pl. az OUT (C), A utasításnál 2.0, 6.0, és 11.5 ciklusnál), nem tudom, a z80ex támogatja-e ezt.

Quote
Hat a hang nalam total K.O. Otletem sincs, hogy kene megoldani. Mert ugye az egy dolog, hogy az ember lejatszik egy WAV-ot. A problema itt az, hogy Z80 kod piszkalja a Dave-et, kozben maga az emulator persze nyilvan nem allandoan fut (multitasking stb, neha sleep-el), es jobb esetben :) gyorsabb a Z80 emu mint a valodi Z80 (azert - is - kell ugye sleep-elni idonkent egyet), ugyanakkor az eloallitott hangnak azert normalisnak kell lennie. A sleep viszont sose lesz teljesen pontos, az meg a masik. Hogy ezt hogy lehet osszehozni, hogy pontos hang legyen, es raadasul akadasmentesen, az most igy hirtelen nem all ossze a fejemben. Foleg, hogy igy is a Z80 orajelbol van szarmaztatva a Dave-e (/16 vagy hat /24 attol fugg mit ir az ember a BF portra), a Nick pedig egy lebegopontos cuccossal van a Z80 orajelhez "szinkronizalva", de ugye ez azt is jelenti, hogy azert 1-2 nick slot-ttal mindig pontatlan lesz, mert azt nezi, hogy utolso opcode X cycle, abba belefert-e volna mar 1 (vagy tobb ...) Nick slot, ha igen, megcsinalja. Csak a tort ertek miatt is kell a lebegopontos cucc. Ez mondjuk a main fuggvenyben latszik, meg van az a SCALER nevu cucc, az irja le a Z80 es a Nick (slot frekvencia) aranyat, amihez probal idomulni. Na, ha ebbe meg bejon az is, hogy a lejatszas frekvenciajahoz is kell valahogy a Dave altal elkovetett dolgokat illeszteni, meg puffereles is van nyilvan, meg ne is akadjon stb, haaaaaaaaaaaaaaaaaaaaaaat :)

Erről néhány oldallal korábban írtam, az ep128emu-ban gyakorlatilag a hang lejátszás lassítja 100% sebességre az emulációt. Ez a legegyszerűbb esetben annyit jelent, hogy ahol eredetileg usleep() vagy hasonló hívás volt, ott helyette arra vár, hogy legyen hely a hang pufferben. Ez azonban nem ad igazán jó eredményt, az audio puffer gyakran túl nagy ahhoz, hogy jó felbontással lehessen időzíteni, ezért így könnyen előfordulhat, hogy láthatóan és zavaróan akadozik a kép pl. scrollozásnál. Ezt a problémát úgy oldottam meg, hogy a hang kimenetre várakozást kombináltam a gettimeofday/usleep-es időzítéssel, azaz az utóbbinak a sebessége változik az audio puffer állapotától függően (100% sebesség ha 50%-ig van tele a puffer, ha ennél több, akkor lassul az emuláció, ha kevesebb, akkor pedig gyorsul, illetve ha nagyon kevés akkor nincs is várakozás hogy elkerülje az esetleges underrun-t):
Code: C++
  1.         long    framesToWrite = Pa_GetStreamWriteAvailable(paStream);
  2.         switch (int((framesToWrite << 3) / latencyFramesHW)) {
  3.         case 0:
  4.           periodTime = periodTime * 2.0;
  5.           break;
  6.         case 1:
  7.           periodTime = periodTime * 1.25;
  8.           break;
  9.         case 2:
  10.           periodTime = periodTime * 1.1;
  11.           break;
  12.         case 3:
  13.           periodTime = periodTime * 1.05;
  14.           break;
  15.         case 4:
  16.           periodTime = periodTime * 0.95;
  17.           break;
  18.         case 5:
  19.           periodTime = periodTime * 0.9;
  20.           break;
  21.         default:
  22.           timer_.reset();
  23.           nextTime = 0.0;
  24.           periodTime = 0.0;
  25.           break;
  26.         }

Quote
Na igen. Tenyleg, Plus4 emulator mennyire pontos?

Meglehetősen pontos, legalábbis a külön "plus4emu" változat (a régebbi ep128emu beta Plus/4 emulációja kissé elavult), amikor még fejlesztettem, legalább annyira jó volt, mint a YAPE. A 6502 és a TED emuláció pontosságán nagyon sokat már nem lehetett volna javítani, és az 1541-es floppy drive is megfelelő volt (legalábbis minden turbós töltő működött, amit próbáltam). Problémát az "egzotikus" hardverek emulációja jelenthet (bár ezekből is ismer néhányat, többet mint az ep128emu), és az emulátor lehetne gyorsabb is. Esetleg újra be lehetne építeni az ep128emu-ba, bár ez elég sok munkával járna.[/quote]
Title: Re: Xep128
Post by: lgb on 2016.March.08. 21:50:11
A 4.5 az a Z80 ciklusok száma 1 NICK slot alatt, közelítően (4000000 / 889846 = 4.49516). Én alapvetően úgy oldottam meg, hogy minen VRAM és NICK port hozzáférésnél várni kell a következő NICK slotig, 1/2 Z80 ciklus felbontással. Ezen kívül van még egy fix késleltetés is, ami kb. 5/16 NICK slot + egy néhány ns-os érték (ami függ a hozzáférés típusától, azaz kissé eltér M1, normál írás/olvasás, és port I/O esetén, de ez minimális mértékű). Itt (https://enterpriseforever.com/emulatorok/idozitesi-problemak-az-emulatorokban/msg14881/#msg14881) található egy program, amellyel tesztelhető a VRAM időzítés, Zozosoft több valódi gépről is küldött eredményeket, amelyekkel az emulátorok összehasonlíthatók.

Az a baj, hogy en itt mar eleve, az elmeletet sem latom tisztan. Most elfeledkezve az emulator adta megvalositasi lehetosegekrol ... hogyan nez ki ez valodi gepen? Amennyire en tudom, a Nick ugye egy fix frekvenciaval olvas. Marmint egy Nick slot alatt 2 byte-ot. De pl mindig? Van olyan videomod ahol eleg egy is, pl LPIXEL, akkor mi van? Masreszt, ezt ugy kell elkepzelni, hogy a Nick altal adott olvasasi jel formaja az szep egyenletes, slot-on kivul, belul, minden, szabalyos? Na, ehhez jon akkor hozza - tudomasom szerint - hogy a Nick szepen kicsit "megnyomoritja" a CPU orajelet (ha o is VRAM-hoz ferne hozza v Nick I/O portjahoz), annak erdekeben, hogy ne utkozzenek. Na ezt eleg nehezen tudom elkepzelni. Egyreszt, mivel a CPU orajelet vmi generalja, azt hogy allitjak meg? Mert az szepen megy "magatol", ha a CPU fele "nyujtani" kell, akkor amikor ennek vege, lehet akar egy csunya tranziens is, mert kozben a kristaly (vagy ami generalja) mar epp a masik szintre menne, stb. Masreszt, a "nyujtas" ha jol tippelek nem is orajel egesz szamu tobbszorose, szoval ezt pontosan emulalni tenyleg nehez lenne (mar ha erdemes egyaltalan ...).

Vagy kiforditom az egesz Xep128-at: jelenleg CPU-ra orajelet szamolja ahhoz idozit, es abbol lesz a Nick slot frekvencia. Lehet inkabb ugy kene, hogy Nick slot-okat renderelek szepen, es ahhoz aztan a CPU-t. Igy "termeszetesebben" adodik, hogyan befolyasolja a Nick mukodese szegeny CPU-t :-P Mondjuk tok jo, akkor mar csak a Dave kavar be, mert az meg jelenleg a CPU-hoz van szinkronizalva (/16 v /24), de ha meg nyujtogatjak szegeny CPU orajelet, abbol a Dave is kap, vagy hat nekem ez az egesz kicsit talanyos :)

Tudom, irtad, hogy lehet kb megoldani, de oszinten en a valodi mukodesbol szeretnem megerteni :)

Quote
A megvalósításnál problémát jelenthet az, hogy a Z80 utasításokon belüli időzítés is fontos, azaz hogy pontosan mikor történnek az egyes memória és I/O műveletek (pl. az OUT (C), A utasításnál 2.0, 6.0, és 11.5 ciklusnál), nem tudom, a z80ex támogatja-e ezt.

Hat ebben nem vagyok biztos, hogy korrektul, de amugy elvileg igen, a t-state infot opcode-on belul is szamolja. Az mas kerdes, hogy korrekt-e a megoldas, marmint a hasznalt ertekek, es nem csak pl a vegeredmeny jo :) Amit irtal abban mondjuk a 11.5 az elgondolkoztatott, mivel tort szamu orajelet viszont tuti nem tart nyilvan ... Mondjuk amit irtal az fura, az OUT (C), A az 12 (?) t-state, akkor ha 11.5-nel kezdodik a port iras, akkor csak fel orajelciklusa van a periferianak, hogy fogja? Vagy mire vonatkozik a 11.5, akkor mi tortenik?

https://github.com/lgblgblgb/xep128/blob/master/z80ex/opcodes/opcodes_ed.c

482. sortol, az OUT() macro 3. parametere, elvileg az (bar z80ex belsejet annyira nem ismerem, csak igy kb), hogy hanyadik ciklusnal. Az opcode ED resze mondjuk kulon van, tehat ugy nezendo a dolog :) Igy csak 8 ciklus, de az ED-re ramegy 4, tehat a 12 elvileg kijon.

Quote
Erről néhány oldallal korábban írtam, az ep128emu-ban gyakorlatilag a hang lejátszás lassítja 100% sebességre az emulációt. Ez a legegyszerűbb esetben annyit jelent, hogy ahol eredetileg usleep() vagy hasonló hívás volt, ott helyette arra vár, hogy legyen hely a hang pufferben. Ez azonban nem ad igazán jó eredményt, az audio puffer gyakran túl nagy ahhoz, hogy jó felbontással lehessen időzíteni, ezért így könnyen előfordulhat, hogy láthatóan és zavaróan akadozik a kép pl. scrollozásnál.

Na. Ismeros :) Amikor MPlayer fejleszto voltam (bar ebben a temaban ott sem jeleskedtem, inkabb mashol), ott is ugy epult fel, hogy az audiohoz van szinkronizalva minden, ha nincs hang vagy "noaudio" opcio akkor vmi fake cuccot csinal. Ott is az volt a gond, hogy nehany "vacak" drivernel a buffer kezeles csapnivalo volt, igy idozitesre hasznalva eleg fura dolgok adodtak neha :)
Title: Re: Xep128
Post by: Zozosoft on 2016.March.08. 22:24:59
Van a rendszerórajel (normál gépen 8MHz), ezen fut a Dave. A Z80-nak a Nick osztja le, azonban ha olyan dolog van, ami miatt osztoznának a videó buszon, akkor amíg fogja a CPU-t, addig adott szinten marad.
Itt elmélkedtem erről. (https://enterpriseforever.com/hardver/nick/msg32713/#msg32713)

NOP futattása VRAM-ban, a képen Z80 clock, és RD:
[attach=1]
Title: Re: Xep128
Post by: szipucsu on 2016.March.08. 23:40:03
NOP futattása VRAM-ban, a képen Z80 clock, és RD:
[attachimg=1]
(Majdnem a "találjuk ki a kép alapján, melyik játék" topikba tettem ezt.)
Ez a folyosó nagyon szűk, elég nehéz lehet rajta átférni.
Title: Re: Xep128
Post by: IstvanV on 2016.March.09. 00:20:45
Quote
Amit irtal abban mondjuk a 11.5 az elgondolkoztatott, mivel tort szamu orajelet viszont tuti nem tart nyilvan ... Mondjuk amit irtal az fura, az OUT (C), A az 12 (?) t-state, akkor ha 11.5-nel kezdodik a port iras, akkor csak fel orajelciklusa van a periferianak, hogy fogja? Vagy mire vonatkozik a 11.5, akkor mi tortenik?

A Z80 dokumentációjában itt (http://www.zilog.com/docs/z80/ps0178.pdf) lehet olvasni a memória és I/O műveletek időzítéséről (24. oldal, "CPU timing"). Az OUT (C), A három M-state, két utasítás olvasás és egy I/O írás. Ezeken belül az emulátor számára az adatbusz mintavételezésének az időpontja az érdekes, azaz az ábrákon a "VALID DATA", ami M1-nél a T3 felfutó éle (2.0 ciklus), egyéb memória és I/O műveletnél pedig a T3 lefutó éle (2.5 és 3.5 ciklus, mert I/O esetén mindig van egy ciklus várakozás). Feltételezésem szerint az ezeket megelőző fél ciklust kell nyújtani a rendszer órajel (8 MHz) egész számú többszörösével.



|       M1 (EDh)        |          M1           |          I/O          |
|                       |                       |                       |
|T1    T2    T3    T4   |T1    T2    T3    T4   |T1    T2    TW    T3   |
+--+  +--+  +--+  +--+  +--+  +--+  +--+  +--+  +--+  +--+  +--+  +==+  |
|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
+  +--+  +==+  +--+  +--+  +--+  +==+  +--+  +--+  +--+  +--+  +--+  +--|
|           *           |           *           |                    *  |
0          2.0          4          6.0          8                  11.5 12


Az a baj, hogy en itt mar eleve, az elmeletet sem latom tisztan. Most elfeledkezve az emulator adta megvalositasi lehetosegekrol ... hogyan nez ki ez valodi gepen? Amennyire en tudom, a Nick ugye egy fix frekvenciaval olvas. Marmint egy Nick slot alatt 2 byte-ot. De pl mindig? Van olyan videomod ahol eleg egy is, pl LPIXEL, akkor mi van?

A video mód a Z80 időzítése szempontjából nem lényeges, a CPU minden slot-ban csak egy byte-ot olvashat (például a kereten is).

Quote
Na ezt eleg nehezen tudom elkepzelni. Egyreszt, mivel a CPU orajelet vmi generalja, azt hogy allitjak meg? Mert az szepen megy "magatol", ha a CPU fele "nyujtani" kell, akkor amikor ennek vege, lehet akar egy csunya tranziens is, mert kozben a kristaly (vagy ami generalja) mar epp a masik szintre menne, stb. Masreszt, a "nyujtas" ha jol tippelek nem is orajel egesz szamu tobbszorose, szoval ezt pontosan emulalni tenyleg nehez lenne (mar ha erdemes egyaltalan ...).

A CPU várakoztatása valószínűleg 8 MHz-es rendszer (DAVE) órajel ciklusokban történik, tehát nem nagyon rontja el a jelet. Bár Zozosoft oszcilloszkópos képein nem tűnik teljesen szabályosnak az időzítés, az újraindítás utáni első fél ciklus mintha lassabb lenne.
Title: Re: Xep128
Post by: IstvanV on 2016.March.09. 12:42:49
Vagy kiforditom az egesz Xep128-at: jelenleg CPU-ra orajelet szamolja ahhoz idozit, es abbol lesz a Nick slot frekvencia. Lehet inkabb ugy kene, hogy Nick slot-okat renderelek szepen, es ahhoz aztan a CPU-t. Igy "termeszetesebben" adodik, hogyan befolyasolja a Nick mukodese szegeny CPU-t :-P Mondjuk tok jo, akkor mar csak a Dave kavar be, mert az meg jelenleg a CPU-hoz van szinkronizalva (/16 v /24), de ha meg nyujtogatjak szegeny CPU orajelet, abbol a Dave is kap, vagy hat nekem ez az egesz kicsit talanyos :)

Én a slot-ot használtam a fő emulációs ciklusban az egységnyi időnek, illetve Spectrum és CPC esetén ennek megfelelően egy karakter időtartamát vízszintesen:
Code: C++
  1.     do {
  2.       Ep128VMCallback   *p = firstCallback;
  3.       while (p) {
  4.         Ep128VMCallback *nxt = p->nxt;
  5.         p->func(p->userData);
  6.         p = nxt;
  7.       }
  8.       daveCyclesRemaining += daveCyclesPerNickCycle;
  9.       if (daveCyclesRemaining >= 0L) {
  10.         do {
  11.           daveCyclesRemaining -= (int64_t(1) << 32);
  12.           soundOutputSignal = dave.runOneCycle();
  13.           sendAudioOutput(soundOutputSignal + externalDACOutput);
  14.         } while (EP128EMU_UNLIKELY(daveCyclesRemaining >= 0L));
  15.       }
  16.       cpuCyclesRemaining += cpuCyclesPerNickCycle;
  17.       while (cpuCyclesRemaining >= 0L)
  18.         z80.executeInstruction();
  19.       nick.runOneSlot();
  20.     } while (EP128EMU_EXPECT(--cycleCnt));

A Spectrum és CPC emulációban még további trükköket alkalmaztam annak a megoldására, hogy a Z80 és a többi alkatrész (ULA, CRTC, stb.) között ciklus pontosságú legyen a szinkronizáció utasításon belül is, mivel egy utasítás hosszabb lehet, mint egy slot. Ez a Spectrumos Z80 port írás függvény például hívja az ULA/hang/stb. emulációt (vm.runOneCycle()) ha már elég idő telt el, és hasonló megoldás található a memória írásnál is:
Code: C++
  1.   EP128EMU_REGPARM3 void ZX128VM::Z80_::doOut(uint16_t addr, uint8_t value)
  2.   {
  3.     addressBusState.W = addr;
  4.     vm.ioPortWait(addr);
  5.     while (vm.z80OpcodeHalfCycles >= 8)
  6.       vm.runOneCycle();
  7.     vm.ioPorts.write(addr, value);
  8.     vm.updateCPUHalfCycles(1);
  9.   }

Az EP emulátor egyelőre nem tud ilyet :oops:, de az EP-s programok szerencsére kevésbé érzékenyek az időzítés pontosságára.

A plus4emu-ban a 6502 emulátor nem utasításonként, hanem ciklusonként fut, és a TED emulátor hívja egy karakteren belül megfelelő időzítéssel legfeljebb kétszer.
Title: Re: Xep128
Post by: lgb on 2016.March.09. 13:28:41
Erdekes a fel ciklusos updateCPUHalfCycles() es hasonlok :) Amugy a z80ex egy library (csak kozben kisse kihereltem ...), amit a FUSE Specrum emu alapjan (is?) irtak. Tud olyat, hogy t-state callback, azaz minden t-state-nel meghiv egy fuggvenyt, az utasitas vegrehajtasa soran. De ilyen fogalom nem igazan van benne ahogy nezem, hogy half cycle ...
Title: Re: Xep128
Post by: IstvanV on 2016.March.09. 13:38:47
Erdekes a fel ciklusos updateCPUHalfCycles() es hasonlok :) Amugy a z80ex egy library (csak kozben kisse kihereltem ...), amit a FUSE Specrum emu alapjan (is?) irtak. Tud olyat, hogy t-state callback, azaz minden t-state-nel meghiv egy fuggvenyt, az utasitas vegrehajtasa soran. De ilyen fogalom nem igazan van benne ahogy nezem, hogy half cycle ...

Az elég, ha a z80ex annyi információt ad, hogy milyen művelet történik (M1, memória, vagy I/O - ezeken belül az időzítés fix, illetve csak a NICK vagy a DAVE módosíthatja) és az utolsóhoz képest hány Z80 ciklus telt el, a többit már az emulátor valósíthatja meg.
Title: Re: Xep128
Post by: IstvanV on 2016.March.09. 18:04:20
AEgyreszt, mivel a CPU orajelet vmi generalja, azt hogy allitjak meg? Mert az szepen megy "magatol", ha a CPU fele "nyujtani" kell, akkor amikor ennek vege, lehet akar egy csunya tranziens is, mert kozben a kristaly (vagy ami generalja) mar epp a masik szintre menne, stb. Masreszt, a "nyujtas" ha jol tippelek nem is orajel egesz szamu tobbszorose, szoval ezt pontosan emulalni tenyleg nehez lenne (mar ha erdemes egyaltalan ...).

Ez nem probléma, a Z80 órajelét a NICK csak a 8 MHz-es rendszer órajel egész számú ciklusára állítja meg, azaz Z80 órajelben a várakozás mindig 0.5 ciklus többszöröse (4 MHz-es gépen 1.0, 1.5, ..., 5.0, vagy 5.5 ciklus). Másként nem is nagyon lehetett volna megoldani, mert különben nem lenne szinkronban a Z80 és a DAVE.

Quote
Mondjuk tok jo, akkor mar csak a Dave kavar be, mert az meg jelenleg a CPU-hoz van szinkronizalva (/16 v /24), de ha meg nyujtogatjak szegeny CPU orajelet, abbol a Dave is kap, vagy hat nekem ez az egesz kicsit talanyos :)

A DAVE órajelét nem kell nyújtani, az fix 8 MHz (legalábbis 4 MHz-es gépen). A 16 vagy 24 osztónak (4 MHz-hez képest) a hanggenerátoroknál és az 1/50/1000 Hz-es megszakításnál van jelentősége.

Quote
Na. Ismeros :) Amikor MPlayer fejleszto voltam (bar ebben a temaban ott sem jeleskedtem, inkabb mashol), ott is ugy epult fel, hogy az audiohoz van szinkronizalva minden, ha nincs hang vagy "noaudio" opcio akkor vmi fake cuccot csinal. Ott is az volt a gond, hogy nehany "vacak" drivernel a buffer kezeles csapnivalo volt, igy idozitesre hasznalva eleg fura dolgok adodtak neha :)

Ezért építettem be a korábban leírt megoldást, az emulátor beta verzióiban sokakat zavart az akadozó scroll és egyéb képhibák, amelyeket az audio driver rossz időzítése okozott. Linuxon az ALSA hw és plughw eszközök közvetlenül használva kis pufferrel elég jók, de a PulseAudio és egyéb szoftveres keverők a Windowshoz hasonlóra rontják az időzítést.

A hang emulációnál a DAVE kimenetének a konvertálása is jelenthet kisebb nehézséget, mivel az több száz kHz-es (a BFh port beállításától függően 250 vagy 166.67 kHz a mintavételezési frekvencia), és mindig pozitív (az egyes csatornák 0 és 63 közötti értékeket adnak, ez keverve 0-252). Az ep128emu-ban az snd_conv.cpp végzi a DC szűrést és konvertálást. Az utóbbi megoldható külső lib használatával is, saját kódnál a legegyszerűbb - de nem túl jó minőségű - megoldás 4 vagy 6 (az osztótól függően) hangminta átlagának a számítása, amivel 41667 Hz-es a kimenet.
Title: Re: Xep128
Post by: lgb on 2016.March.09. 22:55:47
https://github.com/lgblgblgb/xep128/commit/f942616de761b74e02913608a678b24aa5c1d87f

Elso roppant bena, pontatlan, elvi szinten hibas, stb megoldas. Viszont valamit legalabb csinal, haaat, fogjuk ra :) SD au player amugy vegy vele, csak hat neha csuklik, de ez nem is meglepo :)

Ja, es UNIX power, SD kartya device-t be-symlinkeltem sdcard.img -nek, igy az emulator vegulis igazi SD kartyat hasznalt, ha az OS-en at is :-D
Title: Re: Xep128
Post by: IstvanV on 2016.March.10. 12:19:25
Elso roppant bena, pontatlan, elvi szinten hibas, stb megoldas. Viszont valamit legalabb csinal, haaat, fogjuk ra :) SD au player amugy vegy vele, csak hat neha csuklik, de ez nem is meglepo :)

Valószínűleg a puffer méretén kellene állítani, ez néha problémás, ami az egyik driveren jól működik, az a másikon nem.

A hanggenerátorok működéséről itt (https://enterpriseforever.com/hardver/dave/msg19278/#msg19278) írtam régebben, a 0-2 csatorna lényege egy tároló (flip-flop), amelynek az állapota a következő esetekben változik:
- amikor lefut a számláló, akkor vagy átbillen (ha nincs torzítás), vagy a választott polinom számláló aktuális kimenetét mintavételezi
- felüláteresztő szűrő engedélyezésekor a másik csatorna kimenetének a lefutó élei 0-ra állítják az állapotot
- a sync bit beállítása szintén 0 kimenetet eredményez

A gyűrűmodulációt ezek után kell alkalmazni (ha engedélyezett), ez XNOR műveletet végez a másik csatorna kimenetével.

A tone csatornák polinom számlálói folyamatosan futnak 250 vagy 166.67 kHz frekvencián, és ezzel az algoritmussal valósíthatók meg:
- a számláló aktuális állapotának két bitje között XOR műveletet kell végezni, ez lesz majd az új kimenet és 0. bit
- az értéket egy bittel balra léptetni, és az új 0. bit a XOR eredménye
- inicializálásnál célszerű minden bitet 1-re állítani, a 0 érték érvénytelen (mivel így végtelen ciklusban 0 lenne a kimenet)
Példa 4 bites számlálóra:
Code: C
  1. int polycnt4 = 0x0F;
  2. {
  3.   int output = ((polycnt4 >> 3) ^ (polycnt4 >> 2)) & 1;
  4.   polycnt4 = ((polycnt4 & 0x07) << 1) | output;
  5.   // ...
  6. }

Egyszerű előjel nélküli 8 bites hang kimenetnél probléma lehet még a DC offszet, azaz amikor nincs hang, akkor (előjeles formátumra konvertálva) nagy negatív érték a kimenet 0 (illetve U8 formátumban 128) helyett. Ez - valódi hardverhez hasonlóan megvalósítva - például így szűrhető:
Code: C
  1. double filter_state = 0.0;
  2. const double c = 0.998493172;    // 10 Hz at 41667 Hz sample rate, c ~= exp(-2 * PI * fco / fs)
  3. {
  4.   filter_state = (filter_state * c) + (dave_out * (1.0 - c));
  5.   double filter_output = dave_out - filter_state;
  6.   // ...
  7. }
Title: Re: Xep128
Post by: lgb on 2016.March.10. 13:16:06
Ja, koszi, olvastam am azokat :) Csak ezzel meg nem foglalkoztam.
Title: Re: Xep128
Post by: lgb on 2016.March.10. 13:56:10
A szokott helyen van ujabb zip - http://xep128.lgb.hu/ -, benne windows-os exe. Ha minden jol megy, ebben mar ujraforditas nelkul is kiprobalhato a hang, bar tenyleg nem kerek reklamaciokat, ugyanis tudom, hogy kb minden szempontbol rossz :) Kiprobalni meg ugy kell, hogy alapbol nincs hang, viszont ezt az EXOS parancsot beadva:

:XEP AUDIO

akkor utana elvileg lesz, max egy kis ido mulva csak :-P Igen, frekvencia sem teljesen pontos, akad, szaggat, nincs ez, nincs az, stb :) Tiszta JSep audio feeling :)
Title: Re: Xep128
Post by: Zozosoft on 2016.March.10. 14:03:51
Működik :-D
Title: Re: Xep128
Post by: lgb on 2016.March.11. 00:16:17
Működik :-D

Az SD AU player is elvileg megy vele, bar - nem meglepo modon - szaggat azert, hala az audio puffer idozitesi/sync problemaknak (is?). Az ep128emu "sd-sitese" kapcsan meg adtam az image-et hozza :)
Title: Re: Xep128
Post by: IstvanV on 2016.March.11. 20:22:04
akkor utana elvileg lesz, max egy kis ido mulva csak :-P Igen, frekvencia sem teljesen pontos, akad, szaggat, nincs ez, nincs az, stb :)

Az akadozást az okozhatja, hogy az időzítést továbbra is az emu_timekeeping_delay() végzi, és az audio puffer állapotát nem veszi figyelembe. Így idővel "elmászik" az időzítés, és a puffer megtelik (overrun) vagy elfogy az adat (underrun), azaz szaggat a hang. Erre az egyszerűbb megoldás az emu_timekeeping_delay() helyett az audio puffer írásánál várakozni (pl. SDL_SemWait()) ha megtelik, amíg újra lesz szabad hely. Így azonban teljesen az audio drivertől függ az időzítés, tehát könnyen előfordulhat, hogy a kép fog akadozni. Egy másik lehetőség az eredeti időzítő rutinban a sebességet szabályozni az audio puffer állapotától függően (gyorsítani 50% alatt, lassítani 50% felett).
Title: Re: Xep128
Post by: lgb on 2016.March.11. 20:26:47
Ujabb orulet a reszemrol, Primo felig hardware emulator a Xep128-on belul :-/ Mondjuk sajnos windows build-et nem tudok adni, mert melohelyen koltozes van, igy a szokasos build szerverem nem elerheto. Szoval max forraskodban van meg a github-on ...

Amugy csak az jutott eszembe, hogy nem is tudom van-e Primo emulator nem Windows ala ... Es inkabb nem irnek egyet, mert belerakhatom a Xep128-ba, olyas forman, hogy amugy tovabbra is EP-kent fut a gep (tehat LPT stb minden megy!) csak eppen az I/O portok ertelmezese kerul lecserelesre a 0x40 alatti I/O port tartomanyban, amig fut az emulator. Igy viszont persze az idozitesek/orajel precizitasatol eltekintve kb pontos emulacio, azaz az eredeti Primo ROM image van, amivel a keyboard is megy.

Mondjuk speciel az EP->Primo scancode konvertalas nincs kesz, tehat random elegge, hogy milyen gomb megnyomasara mi tortenik :) De ide csak egy konverzios tabla kene.

Illetve azert persze a ROM-ot kesobb megse artana patch-elni, mivel pl betoltes/kimentes mukodhetne is akar (mivel a primo emu mod I/O porton kapcsolhato, a ROM le is kapcsolhatja "maga alatt" idolegesen amig EXOS funkciot hiv ehhez, akarmi), igy tul sok ertelme meg azert nincs.

A jelenlegi kod ugyan C-ben van irva, de amugy I/O portos dolgok, LPT felepites stb, ez a resze mukodhetne normal Z80 gepi kodbol is, ami egyedul Xep specifikus, az a primo mod bekapcsolasa, ami egyreszt a VINT -et a Nick-rol NMI-ve forditja, masreszt az emlitett I/O port tartomany ertelmezes es annak specialis lekezelese. Elvileg nem lenne lehetetlen ilyen hardware-t a valosagban sem epiteni, bar azert nehany funkcioja trukkos lenne a ZX Spectrum emu NMI-trap jellegu megoldasat nem hasznalva (amit itt nem igazan lehet hasznalni, ui a Primo eleve hasznalja az NMI-t ...).

A kepeken a hatter szandekosan piros, persze lehetne fekete is ...
Title: Re: Xep128
Post by: lgb on 2016.March.11. 21:26:42
Az akadozást az okozhatja, hogy az időzítést továbbra is az emu_timekeeping_delay() végzi, és az audio puffer állapotát nem veszi figyelembe. Így idővel "elmászik" az időzítés, és a puffer megtelik (overrun) vagy elfogy az adat (underrun), azaz szaggat a hang. Erre az egyszerűbb megoldás az emu_timekeeping_delay() helyett az audio puffer írásánál várakozni (pl. SDL_SemWait()) ha megtelik, amíg újra lesz szabad hely. Így azonban teljesen az audio drivertől függ az időzítés, tehát könnyen előfordulhat, hogy a kép fog akadozni. Egy másik lehetőség az eredeti időzítő rutinban a sebességet szabályozni az audio puffer állapotától függően (gyorsítani 50% alatt, lassítani 50% felett).

Egyertelmu, tenyleg nincs figyelembe veve :) Jelenleg max a szerencse, hogy kb olyan sebeseggel jatszik le ahogy az emu megy, de ugye tokeletesen sose fog megegyezni, tehat valoban, ezt majd az idozitesnel tenyleg figyelmbe kene venni :) Mondjuk spec otletem sem volt, hogy az SDL-ben hogy tudom meg a puffer allapotat, en arra tippeltem, hogy az SDL altal meghivott audio callback altal allitott "lejatszasi pointer"-t (mert ugye az altalam hasznalt puffer az joval nagyobb mint az SDL-tol kert/altala kapott puffer meret amit a callback-nek fel kell toltenie) es a Dave altal irt "felvetele pointert" figyelem, mert az alapjan latszik.
Title: Re: Xep128
Post by: lgb on 2016.March.12. 21:01:31
Probalkoztam egy win32 build-el, hogy legyen Windows exe, de SDL 2.0.4 volt keznel, de 2.0.2-es DLL-el, szoval nem tudom ... Mindenesetre a szokott helyre kirakva. Ajanlott tesztelesi mod, ha vkit erdekel:

:XEP AUDIO

igy hang bekapcs, aztan:

:XEP PRIMO

Uj combined.rom kell hozza (amiben a Primo ROM is benne van, ez garantalja, hogy a Primo ROM nem felulirhato ... ha betoltve lenne ahhoz kepest pl), ami szinten a zip-ben van. Elvileg, ugy-ahogy mar gepelni is lehet "ertelmesen" ...
Title: Re: Xep128
Post by: lgb on 2016.March.15. 11:07:24
:) Ja, hat nem nagy szam megcsinalni, csak egy kis copy&paste customizalas, lasd pl JSep-ben is van :) De ugyis ujrairom, addig nem akarok hozzanyulni nagyon. Illetve elobb config file meg ilyenek erdekelnek most eppen.

Ja, es felre ne ertsd, koszi, hogy erdeklodsz es segitesz :) Nem azert irom, hogy nem erdekes, csak mindig van valami ami eppen jobban foglalkoztat, vagy hasonlo. Persze lehet, en latom rosszul, es masnak a hasznalhatosag szempontjabol mas lenne a fontos pont :)
Title: Re: Xep128
Post by: lgb on 2016.March.15. 12:18:28
https://github.com/lgblgblgb/xep128/issues

Itt szepen elvagyok magammal, hogy ticket-eket irogatok, mit kene :) Igy legalabb nem felejtem el :)

Persze, elvileg mas is belerondithat oda, ha akar ... :-D
Title: Re: Xep128
Post by: lgb on 2016.March.18. 15:31:37
Na, belepakoltam egy csomo "hulyeseget" :) Eloszor is van config file, benne elvileg nemi hulyen megoldott billentyuzetkisztas is, de csak pozicio map megy (tehat ha vmi shift-elve van a PC keyboard-on, EP-re is ugy megy at, es viszont ...). Az elejen - ha meg nem volt config file - kiir egy mintat, aminek elmondja az utvonalat egy ablakban, azt elvileg at lehet irni, meg at kell nevezni config nevre. Illetve command line parameterek is vannak, azzal is allithatoak a dolgok. xep128.exe -help megmondja amit erdemes tudni ...

Masreszt, szabadon configolhato ROM/RAM kiosztas, nem kell folyamatosnak lennie a RAM-nak sem. Ezt mindjart harom modon is lehet vegezni:

command line:

xep128.exe -ram 128      normal, "folyamatos" 128K ahogy EP128-on van, persze 128 helyett mas szam is lehet.
xep128.exe -ram @E0,F0-F3,F7        ez olyat csinal, hogy a felsorolt szegmens/szegmens tartomanyok lesznek RAM

A command line persze mindig felulbiralja a config file-t, ami pedig felulbiralja a built-in default configot (config file nelkul is elindul persze az emulator, nem kotelezo hasznalni). Lehet, masnak ez nem nagy ertek, nekem hasznos, mert altalaban mindent command line-bol csinalok :D

Ugyanez config file-ban is megadhato, akkor nem kell mindig beirni:

ram = 128
ram = @E0,F0-F3,F7

Ugyanez az emulatort futtatva a :XEP interface-en at is elerheto:

:XEP RAM
Ez a parancs megmutatja a memoriakiosztast, pl a ROM-okat is egyben.

:XEP RAM !128
:XEP RAM !@E0,F0-F3,F7

Itt a felkialtojel biztonsagi intezkedes, mert error check csak minimalis van ... nehogy egy extra leutessel egy sima lekerdezeshez kepest atconfiguralja magat, ha nem akarjuk. Ezutan persze auto cold reset lesz, mondanom sem kell. Ez persze nem irodik ki, mint config, csak amig fut az emulator.

ROM-okat is lehet kulon is toltogetni, command line es config file is jatszik esetleg. Formatum:

xep128.exe -rom@00 exosromfilename -rom@10 valami-a-tizes-hex-szegmensre

Gondolom ez alapjan kitalalhato a config file formatum is:

rom@00 = .....
rom@10 = .....

A :XEP-hez kello ROM-ot sajat magabol veszi, egy nem hasznalt szegmensre rateszi, azt nem kell kulon megadni (valojaban kerdeses, hogy regi EXOS-sal menne-e, szerintem nem, mivel ott nem minden szegmenst nezett ha jol tudom ...)

Config file-ba akar az "audio = 1" is berakhato, akkor magatol is lesz hang. Vagy command line-ban az -audio 1   (a 0 ertek a default, hogy nincs)

Stb, SD kartya path stb is adhato persze. Itt fontos, hogy ahol allomanynevek vannak, ott a Xep128 vagy vegigprobal par konyvtarat (pl ahol az exe is van), vagy ha abszulut path (tehat \-el kezdodik win alatt, vagy X:\ szeru modon kezdodik) akkor ugy ahogy van hasznalja, vagy ha a filenev pl @akarmi, akkor a @ helyere a "preferences directory" kerul, ami rendszer (es SDL ...) fuggo, ez latszik amugy amikor kiirja a sample config-ot es elmondja, vagy a :XEP EMU paranccsal is megnezheto.

A primo emulator reszben (:XEP PRIMO) mar lehet gepelni is, hurra :-/ Sokra nem jo, mert betolteni vele vmit nem igazan. Viszont hang is emulalva van pl. Az hogy mennyire pontos - valoszinuleg semennyire, mert egyreszt alapbol is gaz meg a hang a Xep128-al, masreszt Primo-on csak 1 bites software vezerles van, tehat fugg a CPU sebessegetol, ami tutira nem annyi most, mint Primo-on lenne :)

SD kartya emulacio kicsit talan jobb, nem akasztja meg annyira az emulatort, meg par biztonsagi ellenorzes stb is bekerult. Iras tovabbra sincs (meg) ...

APU emulaciot kb atirtam JSep-bol, de sokra nem jo, mivel tesztelni azota sem tudtuk, se hw nincs amihez hasonlitani lehetne, se teszt program :)

A console-t (ez mondjuk nem erdekes, ha nem onnan lett inditva ...) mar nem szemeteli teli. -debug opcioval kerheto log file, es abba irja, ha nincs megadva, akkor nem csinal ilyet, es csak "erdekesebb" dolgokat jeleniti meg az emulator mukodese soran.

A Z80ex-et jocsakan atpofoztam, kiraly dolog az absztrakcio, foleg ha tobb Z80-at emulal az ember egyszerre, de sok ilyen-olyan pointeren at lassabb is volt az egesz, korulmenyesebb, es a kod is nagyobb volt. Igy eleg szepen custom-izaltam mar tobb helyen (pl a Z180 emulacios "kezdemenyrol" nem is beszelve).

Ize, mas nem jut az eszembe hirtelen. Biztos hasznosabbnak iteltetne, ha mas dolgokat irnek pl, pl Nick pontosabb emulacio, hang normalisabban, meg ilyenek :) Csak azert a dolog alapjait akartam volna rendbe tenni eloszor.
Title: Re: Xep128
Post by: Zozosoft on 2016.March.18. 15:36:59
Tetszik!

Lehet kívánság műsor? :-)
SRAM kéne még memóriatípusnak. Ez ugyanúgy fájlnévvel lenne megadva mint a ROM, de írható, valamint kilépéskor mentené a tartalmát. (EPDOS 2.x rendszer emulálásához).
Title: Re: Xep128
Post by: lgb on 2016.March.18. 15:54:43
Lehet kívánság műsor? :-)

A sd card flash-elosdit is azert kerult bele am ... :) Eszembe nem jutott volna magamtol ... Ja, meg a Z180 is , igaz azota sincs kesz, bar a Z180-on nem mukodo undocumented Z80 opcode-okra kb jo, hogy azzal sem megy akkor :oops:

Amugy ezek szerint akkor mux, vagy nem probaltad? En windows alol tesztelni sem tudom. Fura ugy irni win-es dolgokrol, hogy nem is hasznalom, programozni meg plane ;) Szerencsere ritkan kell tudni a specialitasokat mert ott van kozben az SDL meg a MingW cross compiler, de azert elfofordul ... Azon is filoztam, de ilyet nem talaltam sehol, hogy vajon letezik-e Linux ala MacOSX-re fordito cuccos (cross compiler az is marmint). Hatha valakinek kene egy olyan, elvileg SDL amugy tamogatna (ahogy Android-ot es pl Raspberry Pi-t hoppa ....).

Quote
SRAM kéne még memóriatípusnak. Ez ugyanúgy fájlnévvel lenne megadva mint a ROM, de írható, valamint kilépéskor mentené a tartalmát. (EPDOS 2.x rendszer emulálásához

Ez miert jo? Valodi EP-n az vmi akksi taplalt cucc, hogy megmarad a tartalma? Mert ha nem, akkor rendes RAM csupan, nem latok kulonbseget ... Ehhez eleg egyetlen szegmens ilyen SRAM, vagy elfordulhat, hogy tobb kell belole?
Title: Re: Xep128
Post by: Zozosoft on 2016.March.18. 16:00:04
Valodi EP-n az vmi akksi taplalt cucc, hogy megmarad a tartalma?
Így van.

Quote
Ehhez eleg egyetlen szegmens ilyen SRAM, vagy elfordulhat, hogy tobb kell belole?
Mészáros féle EPROM/SRAM kártyán 32K volt alapból, de többet is bele lehet tenni. Ha jól emlékszem az EPDOS 2 az 16K-t használt belőle saját magának.
Title: Re: Xep128
Post by: endi on 2016.March.18. 16:00:22
ha jól értem ezt az emut majd pl futtatni lehet pl egy pi-n?
:)
Title: Re: Xep128
Post by: lgb on 2016.March.18. 16:11:00
ha jól értem ezt az emut majd pl futtatni lehet pl egy pi-n? :)

Elvileg az nem lenne tul nehez (kopp-kopp ...), foleg mivel azon is Linux van (is), szoval kulonbseg elenyeszo, en meg amugy is Linux-on fejlesztem (csak epp x86-on persze). Persze, ki kene probalni ... Figyel itt egy nalam egy pi, csak hat ido kene erre is. Az Android nehezebb dio, sok tutorial van hogy kell, oszinten en mar kb 10%-nal fejfajast kapok igy ranezesre is :-/
Title: Re: Xep128
Post by: endi on 2016.March.18. 16:33:01
Elvileg az nem lenne tul nehez (kopp-kopp ...), foleg mivel azon is Linux van (is), szoval kulonbseg elenyeszo, en meg amugy is Linux-on fejlesztem (csak epp x86-on persze). Persze, ki kene probalni ... Figyel itt egy nalam egy pi, csak hat ido kene erre is. Az Android nehezebb dio, sok tutorial van hogy kell, oszinten en mar kb 10%-nal fejfajast kapok igy ranezesre is :-/

andoid szerintem nem érdekes. ki akar tapiképernyőn szenvedni? plusz elég erős hw kéne szerintem hozzá...
egy önálló kis hardveren viszont érdekes lehet, mint fake-igazi gép :)
Title: Re: Xep128
Post by: lgb on 2016.March.18. 17:08:29
andoid szerintem nem érdekes. ki akar tapiképernyőn szenvedni? plusz elég erős hw kéne szerintem hozzá...

Nem hinnem, hogy egy raspi jelentosen erosebb lenne egy modern telefonnal hw-ben (kisse kallondo kinai 'kici-oco' csoda telefomban negy mag van, raspi-mben egyetlen egy ... es meg az orajele is kevesebb - ok tudom van/lesz raspi 2/3 meg mittomen' is) ... Hat lenyege nem tudom lenne-e, vegulis lehetne telefonon jatszani, ha vkit erdekel, eredeti EP-s jatekokkal. Vagy nem tudom :) Eleve, csak a kihivas miatt is erdekes lenne. Azt se felejtsuk, hogy az JSep egesz meglepoen gyors tud lenni mobil telefonokon, pedig ott a browser es az JS is meg a hw es a kod kozott, itt meg nativ kod lenne ...

Quote
egy önálló kis hardveren viszont érdekes lehet, mint fake-igazi gép :)

Igen, ez mar nekem is eszembe jutott :) Meg az is, hogy "felig igazi szeru" megoldast is lehetne, pl anno en egy lepukkant C16-os hazaba tettem volna, GPIO-ra meg az eredeti C16 billencs, es igy megvan a feeling (ettol meg radughato egy USB-s is ...).
Title: Re: Xep128
Post by: endi on 2016.March.18. 17:14:53
az android miatt gondolom hogy lassú lenne
Title: Re: Xep128
Post by: lgb on 2016.March.18. 17:17:52
az android miatt gondolom hogy lassú lenne

Az nem lassit rajta szerintem ... Bar nem ertek hozza igazan (ezert se mertem meg belevagni), de az "egyszeru" app-ok vegulis egy JavaVM szeru izeben futnak (Arts vagy mi a neve, de elotte volt a Dalvik talan), tehat nem nativ kod. Amde lehetoseg van nativ ARM gepi kodot is futtatni. Amiket tutorialokat lattam, ott vmi olyan van, hogy sima C kod, ARM gcc cross-compiler-rel fordul, es vmi minimalis "java szeru" keret van korulotte, amivel kb megfelel egy Android app-nak meg elintezi a vezerles atadasat stb. De a kod lenyegi resze nativ mar. Bar - mint mondtam - tenyleg nem ertek hozza, bennem ez a kep alakult ki, hogy kb igy mukodne a dolog, ahogy elolvastam 1-2 leirast ...

Plusz, ha meg nem is nativ lenne, az se katasztrofa, lasd JSep-ben a JavaScript az meg "rosszabb", marmint nehezebb jo hatasfokkal hiper-szuper JIT cuccossal jo sebessegen futtatni, megis eleg gyors az is, pedig az en kezzel irt idiota kodom, nem am asm.js vagy ilyen specializalt valtozat ...
Title: Re: Xep128
Post by: lgb on 2016.March.18. 19:05:02
Így van.
Mészáros féle EPROM/SRAM kártyán 32K volt alapból, de többet is bele lehet tenni. Ha jól emlékszem az EPDOS 2 az 16K-t használt belőle saját magának.

Na jo, amator modon probalkoztam :) Oszinten, szerintem itt elegge konstans a felhasznalas, nem eri meg filenevezni stb, meg nekem is sokat kene dolgozni hozza :oops:

Igy, minden maradt a regi, kiveve egy fontos tenyt. Akkor mukodik csak, ha a szegmens megadasos modszerrel probalja az ember, pl config file-ban:

ram = @=30,=40-41,90-A0

Vagy ugye ugyanez parancs sorban:

-ram @=30,=40-41,90-A0

Vagy extrem modon (ez nem biztos, hogy menni fog, mivel run-time atdefinialas, stb), :XEP -en at:

:XEP RAM !@=30,=40-41,90-A0

Szoval lathato, hogy ahol SRAM szegmens kell ott egy = jel van a szegmens elott (vagy akar tartomanyra is lehet ...). Amelyiknel nincs (pl 90-A0) az sima RAM. Persze a :XEP RAM parancs parameter nelkul hasznos, megnezni, hogy az lett-e az eredmeny amit gondoltunk :)

Elvileg a policy lenyege (a csunya megoldasom ...) az, hogy fix file neveket hasznal. A prefereces directory-ban tarolodnak ilyen alakban: sram-90.seg Itt a 90 a szegmens szam, minden file egy szegmens. Indulaskor megprobalja betolteni az aktualis szegmensszam alapjan, kilepeskor meg lementeni. Persze tobb ilyen file kepzodhet, ha tobb SRAM szegmens van, vagy akar egy tartomany .. Extrem esetben meg arra is jo trukknek, hogy pl a nullas lapot megjelolni SRAM-nak, igy utana meg lehet vizsgalni mi votl rajta, mer lementi :-P

Az fontos, hogy bar sok hibakezeles nincs jelenleg, de valoszinu nem fog menni, ha mar letezo akarmilyen definiciot (legyen az RAM, ROM, VRAM ...) akarja az ember feluldefinialni, ugyanazon a specifikacion belul, nyilvan, azaz logikusan a @=30,30 es hasonlok nem igazan mennek, vagy ha ROM kerult oda, vagy ha a tartomanyba beleesik valami, akkor erdekes lesz ...

Azert nem biztos, hogy jol mukodik ez igy se, max igy erzesre ... A szokott helyen ... Amin filozok meg, hogy lehet, az internal XEP ROM-mal fog utkozni, mert azt (sem) lehet feluldefinialni, azt viszont magatol valasztja ... Jelenleg a legmagasabb szegmensszamu ROM utan pakolja amugy (meg a RAM/SRAM definiciok beallitasa elott! a ROM-okkal kezdi utana jon a RAM/SRAM, illetve a VRAM van valojaban legelol, azt meg a ROM sem tudja - ertheto modon - feluldefinialni ...).
Title: Re: Xep128
Post by: lgb on 2016.March.18. 19:21:18
Tenyleg, ha jol elol van SRAM, nem fogja megtalalni az EXOS es kikialtani nullas lapnak? Mert akkor aztan az EPDOS hogy hasznalja fel sajat maganak? Vagy "levedi" o ezt az "EXOS elol" az indulas alatt/elott?
Title: Re: Xep128
Post by: Zozosoft on 2016.March.18. 19:54:39
Tenyleg, ha jol elol van SRAM, nem fogja megtalalni az EXOS es kikialtani nullas lapnak? Mert akkor aztan az EPDOS hogy hasznalja fel sajat maganak? Vagy "levedi" o ezt az "EXOS elol" az indulas alatt/elott?
Ilyenkor az EPDOS RAM tesztje fut, és az kihagyja magának.
Title: Re: Xep128
Post by: lgb on 2016.March.18. 22:52:11
Ilyenkor az EPDOS RAM tesztje fut, és az kihagyja magának.

Hmmm, ez kisse fura megoldas nekem :) Nem lenne celszerubb, ha mondjuk amikor EXOS hivja az EXOS_ROM-okat (tudomisen, 8-as funkciokod vagy mi ...), akkor trukkozik kicsit es atirogat ezt/azt, hogy ne az legyen a nullas lap? Vagy ez igy nagyon gaz lenne? :)

Amugy szolj, ha ez az SRAM support muxik. Vagy ha nem :) Vagy ha egyeb kihivast jelenti otleteid vannak :-P
Title: Re: Xep128
Post by: lgb on 2016.March.19. 17:07:15
Legujabb hulyesegem :) A "covox", 8 bit D/A :) Gondolom mindenki tudja mi volt az meg PC-n :) Na, ilyet EP-re is lehetne a printer portra. Ugyan nem teszteltem, hogy muxik-e, de most beleirtam. Elvileg hiper-szuper auto-detect ... Ha valami probalja irni a printer portot allandoan, de sokaig nem kuld strobe-ot, akkor atkapcsol covox modban, es letiltja a Dave audio-t (lehetne mixelni is persze, csak az nehezebb ...). Ha aztan jon strobe (pl nyomtatas), a covox mod automatice letiltasra kerul, es Dave hang visszajon. Illetve, ha Dave regisztereket 0xA0-0xAF irja barmi, akkor is letiltodik a covox mod, ha aktiv lett volna. Igy talan eleg bolondbiztos, hogy "ne ragadjon be" meg printeles kozben (ami Xep128-nal egy file-ba megy ugye) ne adjon hangot csunyan :D Viszont nem teszteltem meg. Nyilvan ha amugy Xep128-ban a hang nincs engedelyezve, akkor tok mind1, mert se covox se Dave nem fog "megszolalni" :)

Amugy, tenyleg, jut eszembe, ilyen primitiv Covox izet lehetne epiteni EP-re, nem probalt senki meg? Csak par ellenallas kb :D
Title: Re: Xep128
Post by: Zozosoft on 2016.March.19. 19:32:33
Hamár ilyen, akkor a DTM lejátszó által kezelt 4x8 bites kártyát (EXTERNAL D/A 4*8 bit on F0-F3) kéne berakni.
Title: Re: Xep128
Post by: IstvanV on 2016.March.19. 20:23:05
Hamár ilyen, akkor a DTM lejátszó által kezelt 4x8 bites kártyát (EXTERNAL D/A 4*8 bit on F0-F3) kéne berakni.

Ezt támogatja az ep128emu is, az F0 és F1 port a bal csatorna, az F2 és F3 pedig a jobb.
Title: Re: Xep128
Post by: Zozosoft on 2016.March.19. 20:32:41
Ezt támogatja az ep128emu is, az F0 és F1 port a bal csatorna, az F2 és F3 pedig a jobb.
:smt038
Title: Re: Xep128
Post by: endi on 2016.March.19. 20:39:28
Ezt támogatja az ep128emu is, az F0 és F1 port a bal csatorna, az F2 és F3 pedig a jobb.

hehe ez király, max z80 sebességgel zajt ad ki ha randomot tolok rá
na persze ezt az igazi hang portokkal is lehet :)
Title: Re: Xep128
Post by: lgb on 2016.March.19. 20:55:30
Ezt támogatja az ep128emu is, az F0 és F1 port a bal csatorna, az F2 és F3 pedig a jobb.

Most mar a Xep128 is :-) Mar kb olyan szinten, amennyire hang van benne amugy is jelenleg: benan :D

De DTM elindult vele, es hangot is adott azert valamit, external dac-ot valasztva, szoval szodaval elmegy elso korben ... Mondjuk a lustasagom nagy ur, mixet, zero offset eltolast akarmit lusta vagyok nekiallni :) Ezert jelenleg Dave, "Covox", meg external dac szolhat csak, es kapcsolgat kozottuk, ha erzekeli hogy epp melyiket hasznaljak. Mondjuk normal esetben elvileg ez annyira nem nagy gond, de azert nem is szep megoldas :)
Title: Re: Xep128
Post by: lgb on 2016.March.21. 22:02:20
Van ujabb win32 build. Az angol (most mar Xep128 ...) forumban "elvagyunk ..." a mouse emulacioval, ugy tunik EGI/mouse driver mar kisse ertelmesebben megy vele pl, ilyen vegyes dolgok mellett mint amirol mar volt szo, hogy DTM 4csatis DAC meg stb (de az audio resze persze meg mindig gaz ...).
Title: Re: Xep128
Post by: lgb on 2016.March.24. 08:49:53
"Tegnap" (hat ma ...) ejjel/hajnalban beroffentettem a Raspberry PI-met (model 1 B+). SDL 2.0.4-et forditva ... majd Xep128. A meglepetes az, hogy anelkul, hogy hozzanyultam volna barmihez a forrasban lefordult rajta es el is indult, es mukodni latszik ... SDL rulZ :) A CPU terheles 80% kornyeken van audio miegymas nelkul is viszont ... Attol feleg, hogy majd normalisabb hang emulacioval, meg normalis Nick emulacioval mar nem menne real-time-ban :( Bar ujabb Rapsberry PI-kkel, esetleg optimalizalassal stb talan nem lenne lehetetlen, igazabol azt se tudom, mennyire hasznalja ki rendesen a GPU-t az SDL, eleve csak full screen-ben tamogatott X nelkul sima konzolrol inditva. Hangot amugy se tudnek tesztelni, csak egy HDMI kabel van a monitorig most eppen, TV-n mondjuk meglesem majd, hogy atvisz hangot-e es hogy nez ki szep nagyban :-P
Title: Re: Xep128
Post by: IstvanV on 2016.March.24. 11:31:14
Attol feleg, hogy majd normalisabb hang emulacioval, meg normalis Nick emulacioval mar nem menne real-time-ban :(

A NICK emuláció már most is "normális", azaz slot felbontással fut és nincs lényeges hiányzó funkció, ami a CPU fogyasztását jelentősen növelné. Teljes hang emuláció az eredményezhetne lassulást, bár ebben az esetben lehetne például fordításnál vagy futás közben konfigurálhatóan kis CPU igényű mód.
Title: Re: Xep128
Post by: lgb on 2016.March.24. 12:29:03
A NICK emuláció már most is "normális", azaz slot felbontással fut és nincs lényeges hiányzó funkció, ami a CPU fogyasztását jelentősen növelné. Teljes hang emuláció az eredményezhetne lassulást, bár ebben az esetben lehetne például fordításnál vagy futás közben konfigurálhatóan kis CPU igényű mód.

https://www.youtube.com/watch?v=n-qYMUGZaAs

A hang "tuti", kirpobaltam szepen szaggat :) Spec SDL indit kulon thread-et szerintem a re-sampling-ra, ami eleve sokat zabalhat, az meg, hogy kulon thread OS szinten is "megterhelobb". Vegulis, megcsinalhatnam magam is, ha nativ sampling rate-et kerem, es en megoldom, meg stb. Bocs, eleg bena egy video, konyvekkel kitamasztva stb, lehet ki kene vagnom inkabb :D

Bar akkor eppen nem neztem a CPU fogyasztast mert TV-rol volt kotve, amugy be ssh-ztam ra, es ugy neztem kozben, csak a TV-nel nincs net :) Ami a jovoben CPU fogyasztast okozhat esetleg, az a VRAM timing korrektte tetele, de lehet, ez nem jelentos :) Kozben jatszottam gcc opciokkal, igy ~80 helyet 70%-ra is sikerult leszoritani a CPU kihasznaltsagot (es csak gcc 4.6 volt fenn a raspin, lehet 5-osok meg jobban is tudnanak optimalizalni - na meg celszeru lenne inkabb cross compiling mert ez igy nem keves ideig tart lefordidani rajta ... meg ugy is hogy NFS-en volt a devel FS-em, mert SD kartyara irva/olvasva meg lasabb hemmm), az Enterprise logo alatt neztem osszehasonlitast :) Erdekes, hogy csak a 16 bytes-os alignment fuggvenyekre es loop-okra okozza egyedul ezt a valtozast. Nem tudom mi okozza, talan a cache szervezese. Meg arra gondoltam, hogy esetleg majd Nick emulacio tipikusan olyan a slot rendering funkciok, ahol meg lehet probalni akar asm betetekben is megirni optimalizalt verziot (bar ARM assembly-t csak erintolegesen ismerem ...). Mondjuk nem tudom, erne-e annyit. Lehet kell majd vmi profiling info is, hogy hol tolti a legtobb idot az emulator, mennyit, stb.
Title: Re: Xep128
Post by: lgb on 2016.March.28. 21:19:48
Hagyva kicsit a Raspberry PI-t, megint szorakoztam Xep128 fejlesztessel ... Most a "normal" helyre kiteve, ha valakit meg erdekel :-D A mostani munkam fo lenyege, az angol forumbol mar ismeros windows/console problema, es ahhoz kapcsolhato. Szoval. Normal modban inditva az emut, egy pillanatra villan egy ablak, az nem lenyeg. Mar a futas alatt (default kbd mapping eseten ...) a keypad minusz gombjaval elo lehet csalni a console-t (bezarni nem biztos, hogy jo otlet egerrel, lehet bezarja az egesz xep128.exe futasat ...).

A lenyeg nem is ez, hanem hogy mar valamennyire hasznalhato benne egy monitor program, legalabbis reszben. memory dump es disassembly mar van benne. Fontos, hogy ami szinten melo volt, hogy a :XEP parancsok es a console-ban adhatoak ugyanazok, ergo elvileg mindket helyen kerheto, csak a szintaxis eleje mas ugye, pl disasm-ra:

:XEP DISASM C000:D

Ez a default combined.rom eseten pont a XEP internal ROM-ot fogja latni. A DISASM parancsnak amugy van roviditett verzioja is, ez egyszeruen a "D" betu, tehat pl :XEP D C000:D

A console-on ez ugyanaz, csak a :XEP hianyzik persze az elejerol. A DISASM/D amugy argumentum nelkul is adhato, akkor folytatja ahol tartott. Nagyon hasonloan mukodik a memoria dump, csak a parancs neve MEMDUMP (roviditese: M). Szoval pl konzolon meg egyszerubb, mivel a :XEP sem kell es van rovid D/M parancsok, eleg lehet egy betu + enter.

Fontos, hogy ez a cim megadas hogy XXXX:YY nyilvan az YY az a szegmens. XXXX lehet >= 0x4000 is, azaz mondjuk C000. Ez akkor ugy van ertelmezve, hogy az YY szegmensen belul az XXXX (also 14 bitje) csak pl a CPU szempontjabol C000-nak latszik, ez disasm-kor nem feltetlen mindegy pl nem relativ cimzesnel ... Ezert is van az, hogy pl BFFF:01 utan a listazas C000:02 -re ugrik viszont mar, mert a kezdeti megadas utan a szegmens hatar atlepesenel ezt feltetelezi. Azt sajnos igen nehez kezelni, hogy a CPU viszont lehet a kov Z80 lapon nem azt a szegmenst tartja pont :) Szoval kicsit bena, de amugy nem lehet normalisan megoldani, ha alkalmasnak kell lennie a disasm-nak arra is, hogy eppen be sem lapozott szegmenseket nezzuk, mert akkor a Dave aktualis B0...B3 figyelembevetele baromira nem segitene :) De amugy is ez csak ilyen mini debug tool, nem arra valo, hogy ezzel disasm-olja az ember a vilagot :-P

A disassembler (ami amugy a z80ex sajatja, bar kicsit belekozmetikaztam ...) cuccba irtam egy kis EXOS hack-et, hogy normalisan mutassa az EXOS hivasokat.

Fontos lehet meg a REGS parancs (roviden: R), meglepo modon listazza a Z80 regisztereket ... Ez foleg :XEP -nel erdekes, latszik is, hogy epp egy ED-trap-ban van, ami ugye az emulatort megkeri, hogy csinaljon vmit, mert XEP EXOS parancs erkezett (a z80ex "sub-opcode" modban is mukodik, azaz ED prefix utan _visszater_ az opcode emulacio fuggveny, es ujra hivasaval folytatja persze, minden oke (ez igaz DD/FD/CB izebizeri is amugy). A console-rol kiadott R parancsnal ez nincs, mert az nem a XEP ROM-on at jon, hanem az emulacio fo agan, ezert kicsit mas latszik, hogy eppen akkor hol jar.

Ezek mellett meg par kisebb dolog, pl a XEP belso ROM inditaskor az EXOS orajat az emut futtato gep oraja alapjan beallitja, szoval ha ZozoTools nincs, akkor is van legalabb vmi, meg ha utana nem is marad szinkronban feltetlen :-P (nem, 1Hz-es interrupt-ra akaszkodni es sajat ZT-t irni azert nem szeretnek ...).

:XEP alol disasm/memdump persze text 80 alatt elvezheto csak igazan ...

A console window ha nagyon zavaro, a CLOSE paranccsal bezarhato. Elvileg :D Es persze a HELP parancs mindig segit.

Szerintetek van ennek ertelme?  :D
Title: Re: Xep128
Post by: lgb on 2016.April.09. 15:43:18
Mivel gflorez erdeklodest mutat a Xep128 irant :) angol forumban mar irtam, hatha vkit itt is erdekel, hogy az uj "szokasos helyen" levo build-ben mar van ep128emu FILE: szeru toltesi lehetoseg, masra meg nem igazan jo (pl mentesre ...). Meg ugye a 4 szinu karakteres mod, hogy Bricky Prise jo legyen :) Meg ami volt mar elotte is talan, nemi kenyelmetlenseg aran (fix axis/button mapping) kulso PC joy/game controller kezeles, igy pl EPDOS :) es Bricky Prise is mukodott nekem XBox controllerrel probalgatva.

Source szinten meg vegre szetkaptam a hiper-ronda xepem.h -t ertelmes header file-okra.
Title: Re: Xep128
Post by: lgb on 2016.April.13. 20:13:15
Bejelentes:

http://xep128.lgb.hu/files/xep128-sdext-wr-test.exe

Emulalt SD-re tud mar irni is (azert ovatosan, nalam nem hibazott, de ki tudja, mar en is csak tippelek a sajat sdext.c forrast nezve, hogy mit is csinalok neha ... - azt a szemethalmot is ujra kell majd irnom egyszer). Illetve a FILE: cuccosra is lehet irni, az meg a masik.

Egyeb:

Szerintetek van ertelme ennek az egesz Xep128-nak? :) Marmint, van mar jo emulatorunk :) Csak neha oda jutok, hogy elgondolkozom, mennyi ertelme van ennek. Elvileg az JSep-nek tobb ertelme lenne, mert _webes_ emulator EP-hez meg nem nagyon van azon kivul. A Xep128 viszont egy nativ alkalmazas, aminel az ep128emu par nagysagrenddel jobb, finoman szolva is. En amugy elvezem csinalni, csak nem biztos, hogy masok szamara sok jelentoseggel bir. Igazabol elvesztettem az iranyt - ugy erzem -, hogy merre kene tovabbvinni, nem aprosagokra gondolok, hanem ugy nagy altalanossagban. Ami "aprosag" volt, es keres eddig azokat nagyreszt szerintem megcsinaltam (pl Z180, SRAM szegmensek, SD flash-eles emulacio). Persze tudom, hogy pl Nick emulacio igy se a legjobb, interlace nincs, hang hat az modjaval, de az is kb szinte semmi minosegben. Es ezekben az ep128emu lenyegesen jobb :)

Igazabol ugy latom, gflorez-nek tetszik es hasznalja, gondolom a mouse emulacio miatt, ami ep128emu-ban nincs :) Viszont nem feltetlen fontos barkinek. Na nem felreerteni, nem sirankozok itt. Lehet kiolgok ezzel kicsit az EP kozossegbol, de mindig is ugy gondoltam, hogy nem csak a 'szakmai' resz lenne fontos, hanem kicsit az aranyaltabb oldala is, pl az ilyen rizsa, amiket ideirtam most - nyilvan a megfelelo helyen es megfelelo idoben, azert nem off-topic-ba kell mindenhol menni :). Bocs, ha vkit farasztottam :)
Title: Re: Xep128
Post by: szipucsu on 2016.April.13. 20:24:52
Szerintetek van ertelme ennek az egesz Xep128-nak? :)
Szerintem ez az egész EP-s programozgatás nagyon jó. Amiket pl. én csinálok bomber továbbfejlesztést basic-ben, azzal ki játszik? Gondolom, nem sokan, de nekem nagyon jó kikapcsolódás ilyenekkel foglalkozni. Felfrissíti, karban tartja az agyat, mert ilyesmivel egyébként nem foglalkozom, de érzem a pozitív szellemi hatását.
Szóval érdemes foglalkozni vele.
Meg különben is, milyen menő, ha kérdezi valaki, mit csinálsz szabadidődben, és a válaszod, hogy emulátort fejlesztesz. :D
Title: Re: Xep128
Post by: lgb on 2016.April.13. 20:32:30
Szerintem ez az egész EP-s programozgatás nagyon jó. Amiket pl. én csinálok bomber továbbfejlesztést basic-ben, azzal ki játszik? Gondolom, nem sokan, de nekem nagyon jó

Oke, de amit en csinalok az hatareset, valojaban en PC-t programozok, hogy EP-kent viselkedjen :) de nem EP-t ...

Quote
kikapcsolódás ilyenekkel foglalkozni. Felfrissíti, karban tartja az agyat, mert ilyesmivel egyébként nem foglalkozom, de érzem a pozitív szellemi hatását.

Ezzel teljesen egyet ertek! Amugy is azert jo "regi gepekkel" foglalkozni, mert hat kihivas. Foleg a mai korban, ahol az a mondas, hogy vegyel 2Gbyte RAM-ot meg 4 core-os CPU-t es akkor jol fog menni, mert keptelenek normalis programokat es eszkozoket irni, csak olyat ami zabalja az eroforrast.

Amugy, lehet felreertheto volt amit irtam: persze szorakoztato stb, csak ugyanugy EP kapcsan mas dologgal is tudnek szorakozni. Pl JSep ... vagy inkabb vmi EP-s fejlesztes, es nem emulator stb. Nyilvan nem azt akarom, hogy mas mondja meg mit csinalok, es ugyis en dontom el :) De azert erdekelt volna masok velemenye is.

Quote
Szóval érdemes foglalkozni vele.
Meg különben is, milyen menő, ha kérdezi valaki, mit csinálsz szabadidődben, és a válaszod, hogy emulátort fejlesztesz. :D

:) Ja azt mar a cegnel is elsutottem. Szerencsetlenkedtek valami alap Javascript probleman, aztan nagy lekezeloen ramszoltak, hogy ne szoljak bele, biztos nem is ertek hozza. Mondtam, hogy ja aaaaa nem, csak egy egesz szamitogepet emulaltam benne, es nem egy vacak menut kellett megjeleniteni egy amugy is elfuseralt oldalon :D Na utana azert csend lett :D
Title: Re: Xep128
Post by: geco on 2016.April.13. 20:51:35
Szerintem is hasznos, olyan funkciok kerulnek bele, ami EP128emuban nincs, igaz en meg nem teszteltem, es programok konvertalasara EP128emu tokeletes, de az uj emulalt cuccok miatt tuti fogom hasznalni en is, persze a jsep is fontos, konnyen elerheto, es hasznalhato azok szamara, akik nem akarnak emulator telepitesevel, es megismeresevel foglalkozni.
Az en "muveimmel" se fogom a feszbok lajktengeret elnyerni :-D , nem is ez a celom , sajat "szorakozas", es megmutatni, hogy az EP masra is kepes, mint speccy konverziok futtatasara, es az en cuccaim is tavol allnak az ep kepessegeitol, amugy szerintem senki se azert foglalkozik a retro gepekre programozassal, vagy vele kapcsolatos programozassal, hogy nagy tomegek oromet leljek benne :-D , soxor eleg a gep kis taboranak orome, vagy epp sajat celok beteljesitese.
En pl orulok barmi uj EP-s fejlesztesnek, lehet az EP software, PC software,vagy epp hardware.
Title: Re: Xep128
Post by: lgb on 2016.April.13. 21:00:50
Az en "muveimmel" se fogom a feszbok lajktengeret elnyerni :-D , nem is ez a celom , sajat "szorakozas", es megmutatni, hogy az EP masra is kepes, mint speccy konverziok futtatasara,

O jajj, azert nem felreerteni engem, en sem ezt varom, nem azert hoztam fel a temat ;) Bar egy ertelme mar tuti volt, ilyesmirol kevesbe szokott eszmecsere zajlani, pedig ilyen szempontbol is erdemes neha :)
Title: Re: Xep128
Post by: geco on 2016.April.14. 09:24:40
O jajj, azert nem felreerteni engem, en sem ezt varom, nem azert hoztam fel a temat ;) Bar egy ertelme mar tuti volt, ilyesmirol kevesbe szokott eszmecsere zajlani, pedig ilyen szempontbol is erdemes neha :)
Jaa, nem is azért mondtam, csak kifejtettem az én álláspontom :)
Title: Re: Xep128
Post by: lgb on 2016.April.14. 13:30:18
Amugy a belso konfliktusom abbol is van, hogy csak emubol is van ket projectem :)
Title: Re: Xep128
Post by: geco on 2016.April.14. 15:36:51
Amugy a belso konfliktusom abbol is van, hogy csak emubol is van ket projectem :)
Szokj hozzá :D , nekem is van vagy 5 függő tételem :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.14. 15:50:38
De jó nektek, hogy csak ilyen kevés :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.14. 19:38:42
De jó nektek, hogy csak ilyen kevés :oops:

:D :D Mondom, *EP emulatorbol* csak ketto :) :) :)
Title: Re: Xep128
Post by: lgb on 2016.April.15. 12:19:02
Szerintetek kazetta TAP file izebizet barki hasznal? Erdemes Xep128-ba ilyet irni, vagy felejtos? Nekem ugyan abszolute nem hianyzik, nem tudom van-e ertelme egyaltalan.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.15. 12:23:36
Én hat napja használtam :-) és a napokban kelleni fog még.

Ha már magnó legyen relé hang. Meg esetleg az a jellegzetes hang a PAUSE után :-)

Floppyhoz meg kérek fejléptetés hangot! :-)
Title: Re: Xep128
Post by: lgb on 2016.April.15. 12:32:01
Én hat napja használtam :-) és a napokban kelleni fog még.

Van ezekrol a TAP file-okrol vmi info, hogy mikepp neznek ki? Nem sokat tudok a magnos cuccokrol, hogy oszinte legyek ... Most abba bele sem megyek inkabb, hogy elvileg digizett EP audio kazettat is meg lehetne etetni valahogy gondolom (pl wav), vagy egyenesen real-time-ban csinalni ezt :D Bar ez utobbi azert jelenleg igencsak tulno a Xep128 kepessegein elvi okok miatt. Mindenesetre vicces erzes lenne egy erdeti EP magnot rakotni a PC hangkartya bemenetere :) A masik, hogy TAP file-om sincs egy se :)

Quote
Ha már magnó legyen relé hang. Meg esetleg az a jellegzetes hang a PAUSE után :-)

Erre mar en is gondoltam :) Sot egy gyenge pillanatomban az is felmerult, hogy mivel a joy emulacioban van a haptic interface dolog (szoval pl ha a controller ismeri, meg tudom 'rezegtetni') azt is rakotom, es akkor fizikai (nem csak hang) hatasa is lesz. Mondjuk ertelme ennek nem sok :) Amugy meg kene ilyen hangot digizni akkor.

Quote
Floppyhoz meg kérek fejléptetés hangot! :-)

Oke, fogalmazzunk ugy, hogy kersz floppy-t :) Mert ugye Xep128-ban meg az sincs :) Tenyleg, ez egy problemat azonnal fel is vet. Itt elojon, hogy kvazi gyakorlati tapasztalatom EP-vel keves sajnos. Epp par napja probaltam, az SDEXT-es kutyun levo EXDOS ROM image meg sem probal WD-t elerni? Mert Xep128-ban akartam volna WD emulaciot elkezdeni, csak epp a kutya meg sem probalta olvasni/irni a vonatkozo portokat. Van olyan EXDOS, ami jo mindkettore, de nem rendelkezik idiota hosszu varakozasi idovel, ha nem talalja a WD-t? Oszinten, azt sem tudom hirtelen, a combined.rom -ban most mi van nekem, mint EXDOS :D

Mondjuk tudod, hogy Xep128 egyik :) gyenge pontja a hang, szoval eleve azt kene gatyaba raznom, foleg ha meg mixelni is akarok hozza egyeb dolgokat :)
Title: Re: Xep128
Post by: szipucsu on 2016.April.15. 20:42:44
Ha már magnó legyen relé hang. Meg esetleg az a jellegzetes hang a PAUSE után
PAUSE után milyen az a jellegzetes hang? A relé hang a távvezérlő hangja, de van más is PAUSE után?
Pause után szabadon.
Title: Re: Xep128
Post by: geco on 2016.April.15. 23:11:47
Én is szoktam, ugyan ritkán, de szoktam, néha jó meghallgatni egy töltés végigcsipogást (régi szép emlékek) :D
Title: Re: Xep128
Post by: Zozosoft on 2016.April.18. 13:46:37
Lehetne valami aktuális összefoglalást, hogy mit tud az Xeo128, és azt hogyan tudja?

Annyit írkáltok az angol topicba, hogy én annyi angol szöveget már nem tudok felfogni :oops:

Ha jól értem lesz valami FILE: szerű eszköz. Ez EXOS számára is fájlkezelő eszköz lesz? Az ep128emu-é nem az, így pl az INCLUDE-ok nem mennek HEASS-sal :-(
Title: Re: Xep128
Post by: lgb on 2016.April.18. 21:36:59
Lehetne valami aktuális összefoglalást, hogy mit tud az Xeo128, és azt hogyan tudja?

Annyit írkáltok az angol topicba, hogy én annyi angol szöveget már nem tudok felfogni :oops:

Ha jól értem lesz valami FILE: szerű eszköz. Ez EXOS számára is fájlkezelő eszköz lesz? Az ep128emu-é nem az, így pl az INCLUDE-ok nem mennek HEASS-sal :-(

Van FILE: szeru eszkoz jelenleg is ... Nem tudom mennyire mas mint az ep128emu-je, szerintem hasonlo ... Az otletet onnan vettem, de magamtol szerettem volna megcsinalni, igy nem tudom mennyi kulonbseg van a ketto kozott. Az biztos, hogy nalam nincs az a ... azt sem tudm hogy hivjak ... megoldas, hogy default a FILE: akkor is ha nem irod ki.

Egy FILE nevu EXOS device-kent realizalodik, ez is a "XEP ROM-ban" van implementalva:

https://github.com/lgblgblgb/xep128/blob/master/xep_rom.asm

Bar itt sok nem latszik, mert ugye ami a "TRAP" a forrasban, ott az emulator vegzi a dolog oroszlanreszet, maga a TRAP mint az asm forrasbol is latszik egy nem hasznald ED opcode, aminek a hatasara az emulator csinal valamit, akar modositja a Z80 regisztereket is, stb. Amugy nem kell felni, hogy mi van, ha a mashol ez az ED opcode veletlenul elofordul, ugyanis az emulator ellenorzi, hogy a XEP ROM szegmenseben volt-e, csak akkor reagal ra specialisan, ha ott tortent. A TRAP jelenteset pedig konkretan a TRAP *cimebol* tudja, igy nem kell kulon byte-okat rendelnem manualisan az egyes TRAP funkciokhoz.

Azt nem tudom, hogy a HEASS miert nem eszi meg ep128emu eseten ... Szerintem az "is" igazi EXOS device az EXOS szempontjabol. Max egy tippem van, persze nem tudom, igaz-e, nem neztem az ep128emu forrasat ilyen szinten: lehet, hogy seek-elni akar a file-ban? Ahhoz kene igy tippre az EXOS 10, lehet nincs implementalva. Az mondjuk nalam sincs, de elvileg akar implementalhatnam is. Enelkul ugye csak linearisan lehet olvasni a file-t, lehet az HEASS baja?

https://github.com/lgblgblgb/xep128/blob/master/fileio.c

Itt lathatod a Xep128 FILE: implementaciojanak emulatoros reszet, a ROM kodban a TRAP-ek vegulis ide jutnak. Ha megnezed a file veget, egy rakas keresre a not implemented error code megy jelenleg valaszul. Ezen persze lehetne valtoztatni :D

Jelenleg a Xep128 - elvileg - tudja azt, hogy lehet tolteni/menteni FILE:-on at. Toltesnel ha csak FILE: van filenev nelkul akkor most mar elvileg :) feljon egy file selector ablak es abbol is valaszthato, de ez lehet a hivatalos verzioban meg nincs benne :oops: Mentesnel ilyen meg nincs ... Illetve van a :XEP CD es :XEP DIR parancsok, amivel lehet nezegetni a host OS (az az op'rendszer ami futtatja a Xep128-at, pl Windows) cuccait, mondjuk tul sok ertelme nincs, de mind1 :) Es csunya is.

Ami meg "ujdonsag" lehet, hogy SD card vhd-t irni is tudja vegre, az regebben ugye nem volt ... Illetve itt a magyar forumban is ertekeztem rola, hogy van disasm/memdump, ilyesmi, ami vagy :XEP parancsokon at mux, vagy kersz a numerikus keypad-on a minusz billentyuvel egy konzolt es (majdnem) az osszes :XEP parancs megy onnan is, csak :XEP nelkul persze, azt nem kell kiirni (pl ilyen parancsok: disasm, memdump, stb, de a help-re kiirja oket ... a console window-al ovatosan, ha becsukod lehet megy vele egyutt az egesz cucc, inkabb a close parancs kell, ha nem kell mar). Ez ugye igazan akkor lenne ertelmes, ha lenne breakpoint stb is majd :) Bar a pause paranccsal jelenleg is megallithato az emulacio amugy.

Joystick / eger emu mar egesz jo, itt is irtam, hogy XBox-360 controllerrel lehet EPDOS 1-et hasznalni :D vagy pl Bricky Prise-t.

Ezek mellett az mar viszonylag regebbi tema, hogy szabadon allithato ROM image-ek, RAM (es mar SRAM) szegmensek stb, csak ugye vagy parancssorban az exe-nek megadod, vagy cfg file-t szerkesztesz hozza.

Amiket eddig szerettel volna az nagyreszt vegulis van. Azaz pl SD kartya illeszto flash-elesi lehetoseg, SRAM szegmensek, meg hmm talan volt meg egy amire nem emlekszem :D

Hat igen, osszefoglalo amugy kene, addig is, ami hirtelen van (a RAM-nal pl le van irva az SRAM cuccos is):

https://github.com/lgblgblgb/xep128/wiki/mouse-emulation
https://github.com/lgblgblgb/xep128/wiki/Monitor
https://github.com/lgblgblgb/xep128/wiki/RAM
https://github.com/lgblgblgb/xep128/wiki/XEP-ROM
https://github.com/lgblgblgb/xep128/wiki/keyboard-mapping
https://github.com/lgblgblgb/xep128/wiki/Emulator-configuration
Title: Re: Xep128
Post by: Zozosoft on 2016.April.18. 21:46:32
Azt nem tudom, hogy a HEASS miert nem eszi meg ep128emu eseten ... Szerintem az "is" igazi EXOS device az EXOS szempontjabol.
EXOS device, de nem fájlkezelő.
Lásd 3-as EXOS változó:
3 -    DEF_TYPE
Az alapértelmezés szerinti periféria típusa.
0 esetén : nem file-kezelő periféria, például magnó.
1 esetén : file-kezelő periféria, például mágneslemez.

Quote
lehet, hogy seek-elni akar a file-ban? Ahhoz kene igy tippre az EXOS 10, lehet nincs implementalva.
Fájlméretet is ott lehet lekérdezni, szerintem azt használja.

Quote
Illetve van a :XEP CD es :XEP DIR parancsok, amivel lehet nezegetni a host OS (az az op'rendszer ami futtatja a Xep128-at, pl Windows) cuccait, mondjuk tul sok ertelme nincs, de mind1 :)
A CD-vel át is megy abba a könyvtárba, és a következő töltés már onnan megy? Ezt nagyon hiányoltam az ep128emu-ból :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.18. 21:55:48
EXOS device, de nem fájlkezelő.
Lásd 3-as EXOS változó:
3 - DEF_TYPE
Az alapértelmezés szerinti periféria típusa.
0 esetén : nem file-kezelő periféria, például magnó.
1 esetén : file-kezelő periféria, például mágneslemez.

Aha. Na majd ezt megnezem, oszinten, ennyire nem melyedtem el benne akkor ezek szerint :oops:
https://github.com/lgblgblgb/xep128/blob/master/xep_rom.asm
71. sor, akkor nekem meg csak 0-as type-om van ezek szerint :) Mondjuk nem tudom pontosan ezek mire jok. Vagy hat legalabbis jelenleg pontosan nem, ahogy a flags-t sem :) Ezert jo ilyeneket irni, legalabb megtanulom :)

Quote
A CD-vel át is megy abba a könyvtárba, és a következő töltés már onnan megy? Ezt nagyon hiányoltam az ep128emu-ból :oops:

Xep128-nal van a fileio_cwd (a FILE: szamara az aktualis konyvtar van benne), ez alapbol a preferences konyvtar files alkonyvtara (erteket egyszeruen le lehet kerdezni egy :XEP CD paranccsal, parameter nelkul, illetve a konzol ablakban persze eleg egy CD csak). Ezt pl a :XEP CD parancs megvaltoztatja, tehat a kov toltes onnan kene hogy menjen. Illetve, ha FILE: -t adsz meg filenev nelkul toltesre, es a megjeleno file valaszto windows ablakban mashova bongeszel, akkor elvileg annak is meg kell hogy valtoztassa a fileio_cwd-t.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.18. 22:00:47
a megjeleno file valaszto windows ablakban mashova bongeszel, akkor elvileg annak is meg kell hogy valtoztassa a fileio_cwd-t.
Ez is hiányzott az ep128emu-ból :-)
Title: Re: Xep128
Post by: lgb on 2016.April.18. 22:10:15
Ja, es jelenleg (lehet a "hivatalos" verzioban meg nem) mar az 1-es error code-ot hasznalom sajat celjaimra, szepen lenyultam :) Lehetne definialni pl emulator specific error code-nak a tablazatodban :)
Title: Re: Xep128
Post by: lgb on 2016.April.18. 22:14:08
EXOS device, de nem fájlkezelő.
Lásd 3-as EXOS változó:
3 - DEF_TYPE
Az alapértelmezés szerinti periféria típusa.
0 esetén : nem file-kezelő periféria, például magnó.
1 esetén : file-kezelő periféria, például mágneslemez.
Fájlméretet is ott lehet lekérdezni, szerintem azt használja.

Bocs, itt elakadtam. Mi ez a DEF_TYPE? Hol van errol info, stb? En azt hittem (vagy jol hittem?) hogy a device leiroban levo cuccokrol van szo, de ott ez:

http://ep.homeserver.hu/Dokumentacio/Konyvek/EXOS_2.1_technikal_information/exos/kernel/Ch6.html

Azt irja hogy annak nullanak kell lennie. Vagy akkor mi van? :) Most kicsit belekeveredtem, hogy pontosan mit is kene tennem hogy vmi filekezelo szeru FILE: legyen nekem itt a Xep128-ban :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.18. 22:20:33
Mondom 3-as EXOS változó. Amikor beállítod az eszközödet alapértelmezettnek, akkor ezt is át kell állítani megfelelően.
Title: Re: Xep128
Post by: lgb on 2016.April.18. 22:26:24
Mondom 3-as EXOS változó. Amikor beállítod az eszközödet alapértelmezettnek, akkor ezt is át kell állítani megfelelően.

De en be sem allitom alapertelmezettnek :D Szoval en mar ott elakadtam. Szoval nezd el nekem, ha nem ertem :) En nem is akartam alapertelmezettnek allitni, jo az nekem, hogy SD kartya stb, es csak akkor hasznalok FILE: cuccost, ha odairom hogy pl LOAD"FILE:kellene.ez" vagy vmi. Szerintem ott kene kezdenem hogy mi ez az egesz alapertelmezettnek allitas, hogy kell azt, mire jo, stb :-P Szoval vannak azert meg hianyossagaim, mint lathatod ... :oops:

Ok, valszeg az EXOS 19 hivasrol van szo, hogy beallitani alapertelmezettnek? Csak az tovabbra sem vilagos, hogy mi van, ha exdos/sdcard cuccost akarom tovabbra is, es csak FILE: akkor ha kiirom de azert ugy is menjen. vagy vmit nem ertek :-P
Title: Re: Xep128
Post by: Zozosoft on 2016.April.18. 23:05:41
Akkor azzal ne foglalkozz, csak legyen megcsinálva az EXOS 10 lekezelése.
Title: Re: Xep128
Post by: lgb on 2016.April.18. 23:42:11
Akkor azzal ne foglalkozz, csak legyen megcsinálva az EXOS 10 lekezelése.

Igenis, fonok :) Nezem, haaat nem feltetlen vilagos. Mi van, ha nem sikerul a file pointer allitasa? Pl filemereten tulra kerulne, szoval akkor milyen hibakod kell? Vagy A-ba nem kell hiba, eleg csak a C-ben jelezni h nem valid? Kicsit nagy itt a kavar nekem :) En itt nezem eppen, mit kell tudnia a cuccnak:

http://ep.homeserver.hu/Dokumentacio/Konyvek/EXOS_2.1_technikal_information/exos/kernel/Ch11.html

Kicsit kombinalt ez az EXOS 10 eleg sok mindent csinal/csinalhat :) Mert ugye ha pl file pointer modositasa van, ha nem sikerul, akkor mi adodik vissza C-ben, valtozik-e a buffer, A-ban hibakod lesz-e, es mik ezek osszefuggese, illetve ha sikerul, akkor C-ben reflektalodik-e az is, az A= 0 mellett, hogy oke. Na, nem tudom ertheto-e mi a gondom :) Vagy pl mi van ha write flag van a file meretere, amit elvileg nehez lenne irni ugye ... Szoval vmi mindenre kiterjedo leiras kene ehhez, hogy mikor pontosan mi tortenik. Neztem az EXOS muszaki leiras c. iromanyt is, az kb uazt mondja mint a fenti magyar forditasban :)

Illetve, ami nem vilagos. DE itt most mire mutat? Mivel en a hivast ugye EXOS-on at kapom, nem mindegy, hogy a DE az eredeti user szegmens-ekre ertendo USR_P0...P3 (hasonloan ahhoz, hogy read/write block-nal se az aktualis B0...B3 port ertekek hanem a tarolt user ertekek szamitanak), vagy ezt EXOS "puffereli" nekem, es en nem a user szegmens beallitasi szerinti DE-t kell neznem a sajat eszkozkezelomben?

Btw, EXOS 9 az kell, vagy ahogy leiras is mondja, igazabol pl billencs eseten van pl ertelme, megnezni hogy lenne-e amugy valami ... Normal file eseten nem tudom mennyi ertelme van/lenne.
Title: Re: Xep128
Post by: lgb on 2016.April.19. 12:02:40
Na ha errol van info, szivesen vennem :) irtam test programot ra, hogy EXDOS folott vmi mit csinal. Hat fura :) Ugy tunik kb ez az EXOS 10 barmit elfogad, tesz ra nagy ivben hogy hulyesegekkel hivom ... :-/ Igy viszont max az a gond, hogy - gondolom - akkor derulne ki a turpissag, h legkozelebbi iras/olvasas "venne eszre" hogy a file pointer az ertelmetlen? Vagy nem tudom, erdekes a szitu ...
Title: Re: Xep128
Post by: Zozosoft on 2016.April.19. 12:09:32
Szerintem olvasáskor EOF lesz, ha hülyeséget állítottál be.
Írást ki kell próbálni, de nekem úgy rémlik, íráskor megnő a fájl akkorára ami be lett állítva.
Title: Re: Xep128
Post by: lgb on 2016.April.19. 12:33:32
Amugy ha 0xFF-et rakok C-be write flags-re (aminek sok ertelme nincs ...), akkor sem ad vissza hibat (A = 0), a C meg mindig 3 visszatereskor (read flags bits). A file olvasast teszteltem, valoban EOF jon a vazolt esetben, ha file size fole "seek-elek" eloszor az EXOS 10-el. Irast meg nem neztem ... Mondjuk ez picit bonyolitja, mert igy a host OS file pointer-t nem tudom kozvetlen allitani hisz ha a hiba van itt nem tudom lekezelni csak kov olvasasnal pl. Ettol persze nyilvan meg megoldhato, csak mondom :)

Amit mondjuk nehezebben deritenek ki, bar nem lehetetlen nyilvan: amit kerdeztem, hogy amikor a device driver kapja az EXOS 10-re vonatkozo cuccot, akkor a DE milyen mapping mellett ertendo, az eredeti USR_P0...P3-ban tarolttal, vagy EXOS valahol tarolja, es hasznalhatom a konkret B0...B3 I/O portok altal adott aktualis szegment mapping-et? Mert ugye nagyon nem mindegy :) :)

Amugy lenne meg egy problemakor a fileio-val ... Van ugye open channel meg create channel. Vilagos, hogy a create channel file-okra vonatkoztatva letrehoz file-t. Ami nem vilagos, hogy pontosan mi tortenik open/create-nel. Vagy minek kene :) Azaz pl: open channel: meglevo file-t nyit meg file pointer zeron, ha a file nem letezik, hiba. Amde, ez csak olvasasra nyit meg, vagy lehet irni/olvasni is? Create channel: letrehoz file-t. Mi van ha elotte letezett a file? Hiba? Vagy "csonkolja" (nulla mereture allitja)? Olvasni is lehet (gondolom igen) ha create channel volt, vagy csak irni? Oke, ezt is le tudnam persze tesztelni :) De megkerdezni gyorsabb es nem szoszmotolok vele egy csomo idot :D Jelenleg ez pl szerintem nincs is jol kezelve Xep128-ban, ha mar itt tartunk, ezert is kerdeztem. Illetve a destroy channel van meg, ez gondolom torli is a file-t a channel lezarasa mellett.

Lehet en nem tudok doksit olvasni, vagy rosszat nezek :) de engem az zavar hogy nincs ilyen szintu leiras hogy _pontosan_ mi tortenik. Ha megnezel egy Unix/Linux un "man page-et" abban minden ilyen reszleteseggel le van irva, hibakodokat is hozzaveve, minden esetre kiteroen, sot, a vegen a standard-eket is emliti hogy minek felel meg, esetleg minek nem (es mitt ajalnlott helyette), mas rendszereken van-e elteres, neha meg pelda kod is, stb :) Ezert szidom a Windows-t is (lasd angol Xep128 forum) hogy MS keptelen doksit irni, ilyenek vannak benne, hogy "peldaul az is okozhatja"... Ez mar milyen. Konkret kindenre kiterjedo pontos definicio kell, ez igy nem doksi, csak talalgatas :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.19. 13:04:16
Azaz pl: open channel: meglevo file-t nyit meg file pointer zeron, ha a file nem letezik, hiba. Amde, ez csak olvasasra nyit meg, vagy lehet irni/olvasni is?
Lehet írni is.

Quote
Create channel: letrehoz file-t. Mi van ha elotte letezett a file? Hiba? Vagy "csonkolja" (nulla mereture allitja)?
Igen, 0-ás lesz (ha nem volt read only a fájl vagy a lemez)

Quote
Olvasni is lehet (gondolom igen) ha create channel volt, vagy csak irni?
Olvasni is lehet, ha visszamész a pointerrel.

Quote
Lehet en nem tudok doksit olvasni, vagy rosszat nezek :)
Ehhez a részhez az EXDOS technikai leírás kéne, ami még nem került elő :-(
Title: Re: Xep128
Post by: lgb on 2016.April.19. 13:23:39
Hat ha jo valamire, itt a bena teszt programom :) Nem epp helytakarekos, de amugy egy "vazbol" csinalom mindig, nem irom ujra persze video channel nyitastol stb szamitva nullarol mindig ha kell vmi teszt ...
Title: Re: Xep128
Post by: lgb on 2016.April.19. 13:36:51
Bocs, lehet elfelejtettem a read test utan ebben a verzioban menteni az AF-et amit az IPRINT elront :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.19. 14:03:41
Amugy meg ott a special function EXOS hivas is. Kar, hogy pl olyan fogalmat, hogy directory list, CD, stb nem raktak be oda. Akkor egy eszkozkezelo tok konnyen lehetne szinte fullos erzesu, konyvtar strukturat stb imitalva. Persze EXDOS-on at FISH stb hivasokkal ez kezelheto, de egyreszt bonyi, masreszt nem tudsz (konnyen ...) irni olyan device driver-t, aminek nincs koze az EXDOS-hoz megis kezel konyvtarakat stb akar olyan standard modon, hogy minden sw tudja hasznalni ugyanugy (majdnem ... hacsak nem akar blokkolat olvasni vagy FAT-et machinalni stb). Pedig de szep is lett volna :D :D
Title: Re: Xep128
Post by: Zozosoft on 2016.April.19. 14:15:26
Írást ki kell próbálni, de nekem úgy rémlik, íráskor megnő a fájl akkorára ami be lett állítva.
Találtam ilyet a FISH-nél:
17. Szekvenciális írás 0 feltöltéssel

Ez a funkció azonos a fent ismertetett "írás file-ba" funkcióval. Az egyetlen különbség, hogy ha az írás a file végén túl kezdődik, akkor a "hézag" kitöltésére lefoglalt lemezterületet 0-val írja végig.
Title: Re: Xep128
Post by: lgb on 2016.April.19. 14:33:27
Emlekeztet a "lyukas file" filozofiara :) Nehany filerendszer tud olyat, hogy ha mondjuk seek-elsz 1 milliardodik byte-hoz majd irsz oda egyetlen byte-ot es a file mondjuk elotte csak 1 block volt, akkor lemezen ezek utan is kettot fog foglalni :D mert kozotte van egy "lyuk" ami nincs tarolva disk-en mert minek. Ha arra vonatkozik olvasas automatice nullat ad disk i/o nelkul, max "toltodik fel a lyukunk" ha iras lesz oda majd. Amugy sparse file meg hasonlo neveken szokott futni.
Title: Re: Xep128
Post by: lgb on 2016.April.19. 18:03:37
http://xep128.lgb.hu/files/xep128-test.exe

Eddig ez sikerult. Latszolag betolteni programot meg most is tud, pedig tuti van benne bug itt-ott, mivel eleg erosen at kellett irni. Csoda lenne ha mukodne elsore.

Ez elvileg tamogatja az EXOS 10-et is, haaat hogy mennyire jol/rosszul az jo kerdes :) A tesztprogramomat probaltam rajta (a file-nal FILE: -t adtam persze amin teszteli) nagyon nagy hulyseget nem csinal, igaz, epp csak renaztem, mert rohannom kell ...
Title: Re: Xep128
Post by: lgb on 2016.April.20. 13:18:20
http://xep128.lgb.hu/files/xep128-test.zip

Benne van emulator test verzio, a mar emlitett (csak kicsit tovabb irt) EXOS 10 tesztelom forrasa, es EP .com-ja, meg szokasos Xep128 dolgok ha kellene (SDL DLL-je, meg a ROM image, bar ezekben nincs valtozas eppenseggel). Most ahogy nezem (hacsak nem nezem el ...) FILE: es EXDOS-on at nezve kb uazt adja eredmenyul a teszt programom. Szoval alakul ez az EXOS 10 support :-P

A teszt programom most letre is hozza maganak a file-t szepen, es azt hasznalja. Illetve irast is megprobal a "file vege utan", hogy mi tortenik. Meg kivalaszthato, hogy F:TEST.FIL vagy FILE:TEST.FIL legyen-e a kerdeses file az elejen, igy hogy mivel tesztelje EXDOS-on at, vagy a Xep128 FILE: implementaciojaval.

Ha ez tenyleg megy mas szerint is, mi legyen vele? Ezt tudod valamire konkretan hasznalni, vagy az a DEF_TYPE EXOS vatlozo es kornyeke kapcsan kene vmit csinalni? Pl egy XEP parancs amivel a default lesz a FILE: es beallitja az EXOS valtozot is? Vagy mit kene tennem, hogy ez pl neked is hasznos legyen, Zozo? :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 14:11:56
Pl egy XEP parancs amivel a default lesz a FILE: es beallitja az EXOS valtozot is?
Igen ez jó lenne. Meg esetleg egy alapértelmezés a config fájlban.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 14:51:28
Igen ez jó lenne. Meg esetleg egy alapértelmezés a config fájlban.

Beztos, csak nem ertek hozza, azert is kerdeztem :oops: Amit igy saccra azert kitalalok, bar lehet, tevedek: EXOS 19 pont ilyesminek tunik. C-ben az is megadhato hogy filekezelo perferfia-e vagy nem. Szuper, akkor nem is kell beallitanom kulon a mar targyalt EXOS valtozot, mert ha jol ertem, ez a C-ben atadott alapjan megcsinalja. Szoval ezt kene hivnom a FILE nevre, meg C = 1-el. Jol ertem en ezt? A masik resze, a visszaallitas, az trukkosebbnek tunik. Honnan tudjam mi volt? Ha van EXDOS a rendszerben akkor elvileg DISK-1 (?) kellett hogy legyen, C=1-el, ha nincs akkor TAPE-1 C = 0-val? Ezt igy feltetelezgetnem, kitalalnom kell, hogy vissza tudjam allitani, vagy lekerdezheto valahogy normalisan, hogy egyetlen paranccsal ez elozo (Xep128 altal elmentett) ertekre terjen vissza? Plusz, az az -1 a vegen az unit number vagy mi? Az mindig -1? :) FILE-nal gondolom nem kell magamra megadni, mert ugyse kezelek unit numbereket, bar nem tudom jol gondolom-e ...
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 15:05:17
Lehetne pl:
:XEP FILE:
:XEP DISK:
:XEP TAPE:

Ebből logikusan jön is, hogy mit kell beállítani :-)

A problémásabb része, hogy az EXDOS meleg resetnél állítja be a DISK-et, vagyis, hogy ezt felül tud írni, az XEP ROM-nak az EXDOS alatti szegmensszámon kéne lenni.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 15:24:11
Lehetne pl:
:XEP FILE:
:XEP DISK:
:XEP TAPE:

Ebből logikusan jön is, hogy mit kell beállítani :-)

Ja :) En is erre gondoltam, bar, a kettospont szerintem nem kell a vegere, legalabbis EXOS 19 leirasnal azt irjak, hogy nem kell. Mondjuk ott DISK-1-rol beszelnek stb, nem tudom mi lesz ha csak DISK-et adok neki. Lehet, elso korben csinalok olyat inkabb, hogy:

:XEP DDN akarmi

A DDN a default device name :) akar lenni, es akkor lehet kiserletezgetni kulonbozo nevekkel az "akarmi" helyen egyszeruen :) Spec csak az kell, hogy honnan tudjam, hogy C-ben mit adok az EXOS 19-nek, bar az is lehet eljaras, hogy mindig file kezelo, _kiveve_ ha az "akarmi" az "TAPE" vagy azzal kezdodik (pl TAPE-1) ;-)

Quote
A problémásabb része, hogy az EXDOS meleg resetnél állítja be a DISK-et, vagyis, hogy ezt felül tud írni, az XEP ROM-nak az EXDOS alatti szegmensszámon kéne lenni.

Ala nehez lesz, mert 2.4-es Zozo-os EXOS :) Az 4 szegmens, folotte meg az SDext van, amiben az EXDOS is csicsul, tehat XEP ROM csak fole mehet ebben a configban. Amugy XEP ROM - elvileg bar nem teszteltem - felulbiralhato: alapbol az utolso betoltott ROM utan van, de ha config file-ban vagy parancssori kapcsoloban szerepel a rom@xx (xx persze egy hex szam ...) aminek az erteke "xep", akkor oda eroszakolja a XEP ROM-ot (ami amugy a Xep128 internal cucc - azaz magaban az exe-ben van benne -, nem a combined.rom-bol jon!!), nem az utolso ROM utan algoritmus lesz tehat. Illetve a xeprom 0 direktiva meg total kikapcsolja a XEP ROM-ot (kiveve, ha manualisan mellette nem helyezted el a fenti modszerrel).

Jelenleg a XEP ROM amugy minden EXOS ROM hivasnal atadja a kerest egy TRAP-pel, ide:

https://github.com/lgblgblgb/xep128/blob/master/emu_rom_interface.c

A 114. sortol kezdve (ebben a verzioban ...) lathato, ahogy a kulonbozo akcio kodokat lekezeli (lasd a kulonbozo "case"-ek utan). Igy tippre, vagy a 8-as vagy az 1-esbe kene beirni a config file alapjan valo default beallitast. Nyilvan, ha amugy :XEP parancsban jon, akkor a 2-esben van. Vagy ez nem segit, mert barmit allitok, EXDOS felulbiralja? Spec az is megoldas akkor (bar csunya!) hogy EXDOS.INI -t csinalsz es abba beleirsz egy XEP parancsot, ami a FILE-ra allitja pl :-P
Title: Re: Xep128
Post by: lgb on 2016.April.20. 16:25:32
http://xep128.lgb.hu/files/xep128-test.exe

Elvileg ... Azt tudja, hogy pl:

:XEP DDN FILE
:XEP DDN DISK
:XEP DDN DISK-1
... stb ...

(kettospont a vegere nem kell!! - mivel EXOS 19-nek sem kell ...). Tul sok visszajelzest meg nem ad ... Persze a FILE helyere mas is irhato, ha jol latom, ha barmi hulyseget irok, akkor kov LOAD-ra fogja panaszkodni majd csak, hogy a device nem letezik :-P Csak annyira teszteltem, hogy DDN FILE utan tenyleg FILE: nelkul is betoltheto cucc amiket a :XEP DIR is mutat ugye ...

Hacsak nem szurtam el :) Akkor barmire ami TAPE vagy azzal kezododik azt mondja, hogy nem file kezelo eszkoz, minden masra meg azt, hogy igen, amikor hivja az EXOS 19-et.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 17:26:29
Monjuk, ha betoltok egy programot, akkor o mar nem azt latja (default device driver-nek), amit beallitottam. Szoval EXDOS gondolom szepen reset-eli sajnos a DISK-re, hiaba allitottam at, tehat amit mondtal mar?
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 19:47:25
Monjuk, ha betoltok egy programot, akkor o mar nem azt latja (default device driver-nek), amit beallitottam. Szoval EXDOS gondolom szepen reset-eli sajnos a DISK-re, hiaba allitottam at, tehat amit mondtal mar?
Igen.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 20:38:47
Igen.

Remenykedtem benne, hogy az ROM action code 1 es 8-ra is beirom eljaras segit, de nem :( Gondolom akkor tenyleg szamit, hogy az EXDOS es a XEP ROM egymashoz kepest melyik szegmensen van. Nehez ugy ... Egy randa otlet :) viszont: lehet tudni, hogy EXOS hol tarolja a default device-t? Mi van akkor, ha atirom kozvetlenul a memoriaban? :D Bar kerdes, hogy mikor es minek hatasara iram at, ha ugyanugy 1/8 action code-kor, akkor lehet ugyanott leszek, ahol a part szakad? :(
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 20:56:51
Bar kerdes, hogy mikor es minek hatasara iram at, ha ugyanugy 1/8 action code-kor, akkor lehet ugyanott leszek, ahol a part szakad? :(
Így van :-)

Marad az, hogy át kell rendezni a memória configot (ez így van az ep128emu-ban is). 4-5-re rakhatod az XEP-t.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 21:14:49
Így van :-)

Marad az, hogy át kell rendezni a memória configot (ez így van az ep128emu-ban is). 4-5-re rakhatod az XEP-t.

:-P Te is megteheted nemi configgal amugy csak a rom@xx opciok intenziv hasznalata kell hozza, illetve akkor SD cuccossal is egyezkedni kell :-P Amugy XEP ROM-nak eleg egy szegmenske. Amugy, azon gondolkoztam, hogy ami most a combined.rom-ban van az talan redundans (?) is? Marmint ott a 64K-s 2.4-es EXOS, benne IS-BASIC. Az lehet, hogy megvan az SD resznel is :-P Mondjuk egyetlen hatrany, hogy a combined.rom elmelet tovabb nem hasznalhato ... Mert ugye az folyamatosan lefedi a szegmenseket, Xep128 meg nem engedi feluldefinialni egy mar betoltott ROM reszeit (a combined.rom egyetlen "rom-kent" van elkonyvelve, akkor is, ha persze egy csomo ROM egymas utan fuzve).

EXOS24UK-NOILLOPS.rom sd-cart-0.3-FTU-57k.rom filler-8k.rom zx-emu-40.rom EPDOS-1.9-beta.rom primo-b64.rom

Jelenleg ezek konkretan (a primo ROM-ja a primo emulaciohoz kell). A filler-8k meg azert, hogy szegmens hataron kezdodjon normalisan a kovetkezo :-)

Szoval nyilvan nem megoldhatatlan, csak eppen trukkos :) Spec, ez az egesz combined.rom mehetne a levesbe nemsokara (bar mint mondtam, most is megteheted, hogy nem hasznalod es beleirod cfg file-ba akar szegmensenkent, hogy hova milyen ROM-ot ...), csak ugye ha defaulte nincs a combined.rom az szerintem sokaknak problema, akik ebben nem akarnak belemelyedni annyira azert, es mukodo emulalt gepet akarnak elsore. Akinek meg nem tetszik, barmikor hasznalhat barmit :-D

Masik "igen okos" otletem, hogy combined.rom-ban ha Xep128 eszlel egy speci stringet 16K hataron (az EXOS_ROM mintajara kb) akkor oda rakja mindenkeppen a XEP ROM-ot. Mert ugye az alapproblema az, hogy a XEP ROM image-kent kulon nem elerheto, mivel az ep128emu-val ellentetben a Xep128 ROM-ja nagyon szorosan kapcsolodik a C kodhoz, fagyna az egesz, ha mas verzioval probalnad, eleg gyakran valtozik (ez lehet hatrany - en elonykent csinaltam igy: kisebb kod is eleg, es mindent amit lehet C-ben csinal, igy biztos nem fogyok ki a helybol a jovoben sem, es marad az egy szegmens igeny - ha meg gyorsabb is persze), ezert van az amit mar irtam: a XEP ROM az az exe resze, onnan "installalja". Ez az egyetlen ilyen ROM elem, a tobbit (EXOS-t is persze) mar kivulrol tolti be, pl adott esetben a combined.rom formajaban.
Title: Re: Xep128
Post by: lgb on 2016.April.20. 21:28:29
Sot, lehet inkabb az EXOS 2.4 image-et kene megkurtitani, hogy legyen egy szegmens hely a XEP-nek ... IS-BASIC meg SD reszekent. Ez azert lenne jobb, mert ugye SDext re-flash support van. Na, ha te re-flash-eled szegeny sdext-et es ott van a XEP is, abbol olyan szep fagyas lesz, mint annak a rendje :) Mivel ugye Xep128 irja is szegeny XEP ROM-ot idonkent ...........
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 21:28:56
Az SD ROM csomag 4-5-öse felesleges EXOS 2.4 mellett.

Az a sztringes dolog nem rossz, és lehetne a combined ROM-ban alapból mondjuk 4-esen.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.20. 21:30:18
Na jó, akkor rakd a 3-asra :-)
Title: Re: Xep128
Post by: lgb on 2016.April.20. 22:22:57
http://xep128.lgb.hu/files/xep128-test.exe

Kapsz hozza hazifeladatot is :) combined.rom-ban C000-tol hex editorral (szoval a 3. szegmens) ird at az EXOS_ROM -ot XEP__ROM -ra (igen, ket alahuzas jel)! Ezek utan a fenti exe mellett elvileg ez lesz (jo combined.rom -ot irj at, mert trukkos ha a pref konyvtaradban es az aktualisban is van, Xep128 jelenleg mindket helyen keresi  ...). Hasznalhato a :XEP DDN FILE parancs pl (FILE helyett ugye DISK, stb is) _illetve_ a ddn mint config file vagy xep128-test.exe kapcsolo (-ddn file) is hasznalhato, akkor az lesz default-nak beallitva.

Meg kisse randa, pl ha a :XEP RAM parancsot utilizalod, eleg fura eredmenyt ad, amiatt hogy a XEP ROM belekerul egy ROM kozepebe :) De az csak kiiras, attol a XEP tovabbra is egy szegmens valojaban ...

Illetve - remelem nem veszek el a sok verzio kozott - mellekeltem az ujabb exos 10 tesztelot, bar tul sok ujdonsag nincs benne, de mind1 :) Azzal neztem amugy, hogy megmarad-e a DDN beallitas, ha betoltom :)
Title: Re: Xep128
Post by: lgb on 2016.April.20. 22:26:16
Kovetkezo tervezett modositas az lesz, hogy configbol megadhato, mi legyen a fileio konyvtar alapbol, ha nem tetszik a default amit Xep128 csinal ugye ...
Title: Re: Xep128
Post by: Tutus on 2016.April.21. 09:39:47
Kipróbáltam a xep128-at, szenzációs! lgb - gratulálok hozzá, rengeteg olyan funkció van benne ami nagyon szimpatikus :)
Title: Re: Xep128
Post by: lgb on 2016.April.21. 10:20:39
Kipróbáltam a xep128-at, szenzációs! lgb - gratulálok hozzá, rengeteg olyan funkció van benne ami nagyon szimpatikus :)

Koszi! :) Azert messze nem olyan meg, amit szeretnek, de talan majd lassan, aprankent :) Vicces, hogy az egesz annak koszonheto, hogy C++-hoz nem ertek, mert ha ertenek, akkor inkabb az ep128emu-ba irkaltam volna bele :-P
Title: Re: Xep128
Post by: Zozosoft on 2016.April.21. 10:38:52
Vicces, hogy az egesz annak koszonheto, hogy C++-hoz nem ertek
Abban mi olyan rendhagyó? A C az C nem? :oops: hA ez megy C-ben, az a két plusz jel miért zavar? :)

Így most hónapokig dolgozhatsz mire minden benne lesz :ds_icon_cheesygrin:
Title: Re: Xep128
Post by: lgb on 2016.April.21. 10:46:59
Abban mi olyan rendhagyó? A C az C nem? :oops: hA ez megy C-ben, az a két plusz jel miért zavar? :)

Javaslom, hogy probald ki egyszer, es majd megtudod :D A C++ nekem agyoneroszakolt, feleslegesen tulbonyolitott dolognak tunik. Latszik, hogy vmi utanerzes, mert C adott volt, es eroszakkal belenyomtak az OOP-t, olyan is lett. Mas nyelvekben hasznalok objektum orientalt dolgokat, lasd pl Python, erdekes ott nincs gondom vele, ahogy a prototype alapu filozofianal sem (mint amilyen az JS), stb, nekem egyedul a C++ fekszi meg a gyomromat :) Maradok inkabb ott, ahogy a C-t kitalaltak, hasonloan ahhoz, hogy nekem egy Z80 vagy egy 6502 jobban CPU valahogy a maga csak par ezer tranyojaval, mint egy mai modern x86 amin van 100millio (???) stb belole, azt mar a vilagon egy ember sincs szerintem, aki at is latja, lassan ontudatara ebred :) Bar, mint tudjuk, a Terminatorban meg 6502 assembly volt :D :D Meg hogy millionyi tranyo olyan hulysegekre van, ami megprobalja work-around-olni az x86 eredeti tervezesi hulysegeit stb, hogy a belso modern RISC elvu mukodesben athidalja a kulnbseget :)

Amugy C++ "szeretetemmel" nem vagyok egyedul, sok flame volt errol pl a Linux kernel fejlesztok levlistajan is, amit szoktam nezegetni. Idorol-idore felmerul, hogy jon valaki, aki C++ -ban szeretne vmit irni a Linux kernelbe ... Erdemes elolvasni a "veteran" Linux fejlesztok valaszat, akik pedig valoszinuleg tenyleg tudnak is programozni, hozzam kepest is :) A C ahogy van nem rossz, sokan szoktak "magasabb szintu assembly-nek" is nevzni. Ez bar tulzas, de teny, hogy a "hw szinthez" meg mindig joval kozelebb all, mint a legtobb egyeb modern programozasi nyelv azert. Ha meg mar OOP kell mindenaron, nekem sokkal jobban tetszik a C mas iranyu tovabbfejlesztese, ilyen pl az Objective-C (amit Apple hasznal pl eloszeretettel) vagy a D nyelv.

Ja, kedvenc idezetem Linux kernel / C++ ugyeben:

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o

Amugy nem akarok bekepzeltnek tunni, valoszinu, hogy en nem erek fel a C++-hoz, es nem a C++ alapvetoen rossz, nyilvan a szubjektiv velemenyem volt, amit leirtam.

Jut eszembe a temarol, hogy ne legyen teljesen off-topic: ujra elkezdett erdekelni az sdcc, es EP-vel valo hasznalata, nemi EP orientalt lib-bel C-ben elehetne EP-re fejleszteni, ami bar nem lesz olyan hatekony, mintha asm lenne, valoszinu, hogy a BASIC-nel igyis joval gyorsabb kodot eredmenyezne :) Arrol nem is beszelve, hogy mint C forras lefordithato aztan mas gepen is, akar PC-n is, jo, hat ha EP specifikus dolgokat rak bele az ember akkor mar nehezebben, az igaz :)

Quote
Így most hónapokig dolgozhatsz mire minden benne lesz :ds_icon_cheesygrin:

Ahogy mondod :) Viszont ez maga szorakozas is valahol. Plusz, megtanulok egy csomo dolgot EP-rol, amit nem tudtam eddig :) Plusz, meg ha C-ben is lenne az ep128emu, akkor sem biztos, hogy nem ertenem jobban a sajat kodomat, mint amit mas irt :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.21. 11:04:04
Emlékeim szerint az OOP az arra jó, hogy baromi nagy és lassú programokat lehessen írni nagyon egyszerűen :-)

Anno jártunk objektum orientált programozás Turbo Pascalban fakultációra a suliban, a végén meg volt írva nagyon szépen a program, Run, Out of memory... Mire a tanár: persze, írd át simára...
Title: Re: Xep128
Post by: lgb on 2016.April.21. 11:10:47
Emlékeim szerint az OOP az arra jó, hogy baromi nagy és lassú programokat lehessen írni nagyon egyszerűen :-)

Anno jártunk objektum orientált programozás Turbo Pascalban fakultációra a suliban, a végén meg volt írva nagyon szépen a program, Run, Out of memory... Mire a tanár: persze, írd át simára...

:) Az OOP amugy nem rossz elkepzeles, van amikor kifejezetten hasznos. Sokan meg keverik is kicsit, azt mondjak, hogy objektum alapu dolgokat C-ben nem lehet (ez nem C++ most!), ez tevedes, lehet, pl a GTK is sima C megis olyan erzete van :) Egy struct-ba pl fuggveny pointereket es valtozokat is bele lehet rakni, igy kvazi egy objektum szeru entitasnak tunik. Az mas kerdes, hogy azert magasabb szintu orokoltetes stb, az nem fog igy menni. De amugy is az a baj az OOP-vel, hogy sok ember kenyszeritesnek erzi szinte, hogy mindenaron tegye tele a programjat OOP szeru dolgokkal, ha szukseg van ra, ha nem :) Pedig a kulcs az lenne, hogy mindig azt es ugy hasznaljuk, ami az adott helyen logikus/elonyos/legjobb, es ne akarjunk eroszakkal egyetlen semat rahuzni *minden* problemara ... :) Kedvenc peldam erre az, amikor egy ismeros csavo mutatta mit csinalt, volt abban absztrakt metodus, template-ek, operator overloading, objektum orokoltetes stb, aztan en megcsinaltam tized akkora meretben OOP nelkul, mire megszolal: "ez tok sz** amit irtal, nincsen benne eleg meno OOP dolog". Haha! :) hat, ha pocsekolni kell az eroforrasokat, akkor ez tenyleg gaz amit irtam, mondtam is neki :)

Rossz szokasom szerint edit-algatom a regi post-omat :) De lasd amit irtam benne az sdcc kapcsan.
Title: Re: Xep128
Post by: ergoGnomik on 2016.April.21. 11:26:20
OFF
Elvileg az objektum orientált programozásnak az lenne az értelme, hogy áttekinthetőbb, karbantarthatóbb programokat lehessen írni. Inkább lassabban mint gyorsan, mintegy rákényszerítve a programozót hogy tényleg vegye a fáradságot és gondolkozzon mielőtt vadul nekivág a programozásnak. Én a TP->C->C++ utat jártam be, és semmi lelki törést nem okozott az OOP kiterjesztés által okozott kanyar bevétele. Viszont egyszer vetettem egy igencsak futó pillantást az Objective-C-re és rögtön dobtam egy akkora hátast, hogy azóta sem néztem vissza (már nem emlékszem mi okozta a nagy megrázkódtatást). Egyébként végletes leegyszerűsítésként úgy is lehet tekinteni az objektum orientáltságot, mintha a program minden elkülönülő/elkülöníthető része egy-egy API lenne. A könyvtárak a megvalósítást bezárják, a funkciókat elérhetővé teszik, és hát vannak nem publikus API-k is a világon.

Valójában az lgb által citált idézetnek semmi köze a Linux kernelhez. Hacsak azt nem tekintjük komoly kötődésnek hogy egy kernel fejlesztő mondta.
/OFF
Title: Re: Xep128
Post by: lgb on 2016.April.21. 11:32:29
Elvileg az objektum orientált programozásnak az lenne az értelme, hogy áttekinthetőbb, karbantarthatóbb programokat lehessen írni. Inkább lassabban mint gyorsan, mintegy

Igen, erre is irtam, hogy nincs baj amugy az OOP-vel, ha a cel nem veszik el, hogy valami hasznos dolog miatt akarjak hasznalni, valami ertelmes cellal.

Quote
Valójában az lgb által citált idézetnek semmi köze a Linux kernelhez. Hacsak azt nem tekintjük komoly kötődésnek hogy egy kernel fejlesztő mondta.

Annyi kotodese van, hogy egy olyan vita kapcsan kerult elo (igaz off-topic-ban) ahol C++ miert nem lehet a Linux kernelben tema volt, tehat amit irtam pontosan.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.22. 19:46:15
Kapsz hozza hazifeladatot is :) combined.rom-ban C000-tol hex editorral (szoval a 3. szegmens) ird at az EXOS_ROM -ot XEP__ROM -ra (igen, ket alahuzas jel)!
Gyártottam combined rom gyártót, hogy egyszerűbb legyen :-) Mindenki ízlés szerint átszabhatja.
Title: Re: Xep128
Post by: lgb on 2016.April.22. 19:57:59
Gyártottam combined rom gyártót, hogy egyszerűbb legyen :-) Mindenki ízlés szerint átszabhatja.

:) oooo, jo oreg kis batch file :) :) Jut eszembe. Tehetnek fel a weboldalra egy kivalasztos vackot (ott lenne fenn par ROM amibol lehet vallogatni), amivel aztan az eredmeny letoltheto egy klikkre.
Title: Re: Xep128
Post by: lgb on 2016.April.22. 20:10:47
Ja, meg meg megjegyzem, hogy amugy nem kotelezo vacakolni am combined.rom-al. Azert talaltam ki ezt a megoldast, hogy egy eleg legyen egy szem file, ha valaki nem nagyon akar szenvedni. Ettol meg Xep128 be tud tolteni tobb ROM-ot is. Pl config file-ba:

rom@00 = C:\.........\EXOS.ROM
rom@20 = C:\........\valami.ROM

Ha nem tetszik, hogy tul hosszu, es mindig ki kell irni az eleresi utvonalat, akkor segit a '@' a trukk, ami ugye a preferences konyvtar. Ha ott van minden ROM, akkor eleg ez is:

rom@00 = @EXOS.ROM
rom@20 = @valami.ROM

Ilyenkor a @ lecserelesre kerul (ha a filenev elso karaktere) a preferences konyvtarra, a \ szeprator (vagy hat Unix Linux eseten / ...) sem kell a @ moge, az is benne lesz. Azert van egybe irva a file nevvel. Nyilvan a 00 es 20 a pelfaban szegmens, mindig ket karakter, es HEXA ertek persze! Ez command line-ban is megadhato persze, akkor ilyesmik lennenek peldaul:

xep128.exe -rom@00 @EXOS.ROM -rom@20 @valami.ROM ....

Vigyazat, a @ karakter tobb helyen is van, mast jelent! FIle nevkent az elso karakter helyen a pref dir-t jelenti, a rom@XX-ben viszont ugye csak a szintaxis resze nem jelent amugy semmit.

Meg egy trukk, ezt is jo lenne mondjuk tesztelni :) Ha van hely a XEP ROM-nak (nem fedi le ROM, akar rom@xx opcio altal, akar ugy is, hogy egy nagy combined.rom miatt nem fedett az adott szegmens), akkor:

rom@00 = @EXOS.ROM
rom@10 = XEP
rom@20 = C:\.....\valami.ROM
ram = @=40-41,48,E0-EF

Itt az a kulonlegesseg, hogy ha vmelyik rom@XX opcional a nev "XEP" akkor az *NEM* file-t jelent, hanem a Xep128 a sajat magaban tarolt XEP ROM-ot oda fogja eroszakolni! Nyilvan ilyenkor nehogy vki @XEP -et irjon mert az meg tok mast jelent ugye. Ilyenkor a XEP mint string alapjan ismeri fel, semmi koze valodi file-hoz!

Ez a feature, meg a XEP__ROM szignatura detektalas rom image-ben viszonylag uj, lehet a xep128-test.exe-vel megy csak :) Na mar en is keverem, hogy melyik verzioba tettem bele, oh-oh ....

A fent utolso peldat megfuszreztem egy kis RAM configgal is :) Itt a @ megint mast jelent :) Azt jelzi, hogy ugye "komplex" config jon (ha csak egy szam all a ram-hoz az decimalis, es kilobyte-ban a RAM de akkor csak folyamatos lehet FF szegmenstol lefele iranyban), jelen esetben 40-41 (itt is hexa ...) szegmensek SRAM (a = jelzi azt, hogy SRAM), a 48 RAM, az E0-EF szinten RAM, a VRAM meg mindig van, azt ilyenkor kulon nem kell megadni. Nem keverendo a ketto rom@XX de ram@xx nem letezik, arra egy opcio van, csak ram ...
Title: Re: Xep128
Post by: lgb on 2016.April.22. 20:13:28
http://xep128.lgb.hu/files/xep128-test.zip

Kozben a fentiekbol okulva kiraktam ujabb verziot "test" kategoriaban, lehet, ami utoljara barhol kint volt, az nem is tudja az oszzes dolgot amit elobb leirtam :oops:

Illetve, itt ujabb gcc-vel forditottam Windows ala, szoval remelem azert meg jo :D
Title: Re: Xep128
Post by: Zozosoft on 2016.April.22. 20:20:41
ROM-knál egy kérdés: Azt érti ha egy ROM fájl nem pont 16K-val osztható? (16K-ra kerekítés FF-el)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.22. 21:38:09
http://xep128.lgb.hu/files/xep128-test.zip
Ez valami régi lehet, mert DDN sincs benne.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.22. 21:41:58
http://xep128.lgb.hu/files/xep128-test.exe
Ebben van DDN, de a XEP DDN DISK után is a file ablak jön, sőt még a LOAD "DISK:"-re is :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.22. 22:28:06
Ebben van DDN, de a XEP DDN DISK után is a file ablak jön, sőt még a LOAD "DISK:"-re is :oops:

A LOAD "DISK:"-nek van ertelme amugy filenev nelkul? Marmint akar Xep128/stb nelkul is.

Amugy ezt a problemat mas is felvetette egyszer (talan gflorez az angol forumon). Ebben az az erdekes, hogy a file selector ablak az a FILE: device handler egyik trap-jeben van. Tehat, ha az megjelenik, az mar eleve igen fura EXOS szinten is, mert az annyit tesz, hogy az EXOS odaadta a vezerlest a FILE: eszkozkezelonek ...... Mas uton meg sem jelenhetne, ugyanis a file selector ablakhoz az ut egyetlen XEP ROM ED trap-en at vezet, ami a FILE: eszkozkezeloben van a XEP ROM-ban, tehat akkor EXOS valahogy oda keveredett mar eleve ... Szoval akkor ez igen fura. Csak a :XEP DDN parancsot hasznaltad, nincs beirva config file-ba is (mert ott is meg lehet elvileg adni mar: ddn = ....)? Lehet a ketto egyutt kisse osszakavarodik :-@

Mellekeltem screenshot-ot Xep128-rol, amit en probaltam most. Az latszik (direkt nem letezo filenev), hogy jol lathato, ha file az alap eszkoz akkor Xep specifikus errot kapunk vissza, ebbol tudhato kb, hogy o valaszolt, ha disk, akkor exdos hibat. Ez amit irtam, nalad is ugyanigy megy?
Title: Re: Xep128
Post by: lgb on 2016.April.22. 22:30:08
Ez valami régi lehet, mert DDN sincs benne.

On nyert, rossz URL-t irtam :oops: Bocsi, ahogy irod is, a sima exe-s az, nem a zip :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.22. 22:31:38
ROM-knál egy kérdés: Azt érti ha egy ROM fájl nem pont 16K-val osztható? (16K-ra kerekítés FF-el)

Nem, ha nem 16K tobbszorose, abbol error lesz ... Igazabol ez lehet hogy gaz, es modositani kene, az elejen azert dontottem igy, mert igy eleg jol latszik az is, ha vmit elbenazok, mast olvasok stb, es jobb garancianak tunt, hogy tuti kitolt-e egesz szegmenseket :) De igazad van, majd modositom ... Max azert vmi also limit csak kene, 0 byte-os rom image ne legyen mar, stb :-P
Title: Re: Xep128
Post by: lgb on 2016.April.22. 22:46:19
Masik trukk: a XEP ROM irva is van emu altal, user program persze nem tudja irni ... ha a 3. lapon van, FFE0-tol van EXOS stringkent amugy a ddn beallitas. Ez lekerdezheto, utilizalva a Xep128 megfelelo XEP vagy konzol/monitor parancsat:

:XEP M FFE0:03

(vagy konzol/monitor ablakban a :XEP resz nem kell, :XEP eseten text 80 ajalanlott kulonben eleg vacakul fog kinezni). A peldaban a :03 nem a lapszamot adja, a szegmenszamot, csak itt epp a XEP ROM a 3. szegmensen van, amit persze a 3. lapra lapozva kepzelunk el, azert a parancsban az FFE0 resz, csak hogy egyszeru legyen :)

Ha nem felsz a kihivasoktol, akar disasm-olni is tudod, lasd masodik screenshot, foleg ha tudod hol a rom-ban a cucc, ami nem konnyu, mert verzionkent elterhet :-P - ezt a forditaskor csinalja amugy sjasm map/sym file alapjan gyartott terkepet hasznalja az emulator kodja is maga, ezert is tartozik szorossan ossze a ketto, es nem lehet kulso ROM image file-ban, igy be van epitve: nem lehet elteres a Xep128 es sajat ROM-ja kozott, de tutira :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.23. 11:02:44
a LOAD "DISK:" a START fájlt töltené be
Title: Re: Xep128
Post by: lgb on 2016.April.23. 12:40:32
Valami fura dolog tortenik :) Ha konzol ablak nyitva van, oda kiir par dolgot az emulator "debug" celjara. csak sima load disk:-re ez jelenik meg:

FILEIO: open channel #254 result = -1 filename = "filefile" as (null) with size of 0

Honnan vette ezt a "filefile" nevet az jo kerdes :-P

FILEIO: close, invalid channel for 254, fd is -1

Ez is erdekes uzenet: bar nem sikerult megnyitni a file-t, EXOS le akarja zarni a csatornat, ami persze invalid channel, hiszen megnyitni sem sikerult ...
Title: Re: Xep128
Post by: lgb on 2016.April.23. 13:16:06
Zozo, tudod miben segithetnel? Ezt mar kerdeztem egyszer, de most altalanosan. Vannak olyan eszkoz kezelo belepesi pontok, amik vmi puffert kezelnek. Konkretan ami eszembe jut (DE-vel van mindig):

* csatorna megnyitas, letrehozas: nev megadasa
* blokk olvasas/iras, memoriaterulet ahova irni kell, ahonnan olvasni kell
* EXOS 10 status, puffer, ahol pl file mutato ("seek") van, ami alapjan be kell allitani, vagy ahova kiirja, illetve file meret

A kerdes ugye az, hogy ezek _MINDIG_ a user szegmens/lap beallitasok alapjan mennek egy eszkozkezelo eseten amit az EXOS hiv, az osszesnel? Azaz nem az aktualis B0...B3 dave portok alapjan kell DE-vel mutatott teruletet irni/olvasni nekem, hanem amit EXOS eltarolt az USR_P0...P3 byte-okban (az FF szegmens "legteteje", a 4 utolso byte - ha jol remlik).

Amit en neztem: doksi a block read/write-ra irja, hogy igen, USR_P0,P3 alapjan. A tobbi viszont nem vilagos! Az EXOS 10-est lekezelo eszkozkezelo hivasnal talan neztem anno kiserlettel, es ugy tunt, hogy ott is. Ami nem vilagos, az a csatorna megnyitas/letrehozasnal a filenev ...
Title: Re: Xep128
Post by: IstvanV on 2016.April.23. 17:15:27
Ami nem vilagos, az a csatorna megnyitas/letrehozasnal a filenev ...

Szerintem a csatorna megnyitásnál nem kell az USR_P0..P3, legalábbis az ep128emu FILE: eszköze nem használja, és eddig nem okozott problémát. :oops: A file nevet az EXOS egy átmeneti pufferbe másolja, és ez mindig a rendszerszegmensen van a 2. lapon.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.23. 21:56:58
Na már sejtem mi a gond :oops:

Onnan indult a történet, hogy az ep128emu FILE: nem fájlkezelő. Így kellett a RAMDISK az INCLUDE meg MERGE fájlokhoz. Viszont így hiába volt fileio, betöltéskor a FILE bővítéssel a floppyn kereste a fájlt.
Ezért legutóbb beleraktam, hogy a FILE bővítés, ha van FILE: akkor ezt adja vissza, így FILE:-ről akar tölteni, megjön a PC-s ablak. Ezt úgy intézte, hogy próbálja a FILE:FILEFILE fájlt megnyitni, és ha erre ez jön, hogy nincs ilyen eszköz, akkor megy tovább normálisan, ha más hiba (azaz a eszköz létezik), akkor adja vissza a "FILE:" fájlnevet.
Na ebbe most belezavart ez az ide-odakapcsolgatás :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.23. 22:41:25
:) Na erre ra nem jottem volna :) Nem meglepo modon. Mibe raktad bele? Az EXOS-ba? Vagy EXDOS-ba? Akkor viszont kene egy ilyen trukk mentes ROM image nekem :) hogy azzal tesztelve irjam tovabb (illetve a "hivatalos" combined.rom-ban is kicserelnem ...), mert igy en mar total belekeveredtem, hogy oszinte legyek :)

Amugy ez is erdekes:

FILEIO: file name got = "filefile"
FILEIO: No file found matching the open request
FILEIO: open channel #254 result = -1 filename = "filefile" as (null) with size of 0
FILEIO: close, invalid channel for 254, fd is -1

Szoval, probalja megnyitni a filefile-t (illetve file:filefile, mert hat mar a fileio-hoz jut, vagy azert mert az a DDN ...). Csatorna nyitas nem ment, mert ilyen nincs, megis megprobalja lezarni a csatornat, holott ennek semmi ertelme, mert megnyitni sem sikerult :) Ja, a peldaban kisbetusitve van a debug, lehet amugy, hogy FILEFILE volt eredetileg :) Csak igy irja ki.

Ha mar itt tartunk, hogy ROM image, lenne egy masik kerdesem is :) Jo par nappal ezelott gondoltam, hogy irnek WD/EXDOS hw tamogatast is az SD card melle. Azonban azt tapasztaltam, hogy meg sem probalja bizeralni semmi a WD portokat abszoulte. Azaz, akkor ami az SD-hez valo ROM-okban van, abbol ez total ki lett olve? Letezik olyan verzio, amit fel tudok hasznalni es menne SD cartridge-al is, _DE_ az esetlegesen letezo WD-t is tamogatja sima floppy-ra, _ES_ megse "akad fenn" azon, ha nem talalja (hogy ne kelljen varni sokaig v vegtelen ideig)? Mert akkor azt is frissitenem a combined.rom-ban.
Title: Re: Xep128
Post by: lgb on 2016.April.24. 14:54:01
Szoval vmi olyan EXOS ROM image kene nekem, ami egyreszt - ha lehet - szabad a nem dokumentalt Z80 opcode-oktol (lasd Z180 emulacio ... illetve ugye a Z80 belso regisztereinek atpakolasa az jo ha benne van ... sot), de amugy nincs emulator specifikus hack benne, pl ez az igen erdekes filefile dolog ;) Mar ha az EXOS-ban van egyaltalan es nem EXDOS-ban, nem mondom, hogy elsore total ertettem, max csak ugy felszinesen, hogy milyen kis trukkot vetettel be :) Illetve - bocs nem zaklatni akarlak, hisz mar irtam ... - egy olyan EXDOS is lenne, ami SD-cart-ot tud, de a WD-t is hajlando kezelni, viszont nem var ra mindenaron :) Akkor kenyelmesen el tudnam kezdeni a WD emu fejleszteset is :) Koszi!
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 13:58:24
Az ALT gomb merre van? :oops:
Title: Re: Xep128
Post by: lgb on 2016.April.26. 14:05:32
Az ALT gomb merre van? :oops:

Amerre az uj EXOS image a filefile nelkul? :D bocsanat, nem tudtam kihagyni :) Amugy akkor ezek szerint semerre :) Oszinen, at kene nezni egyszer az egesz keyboard mapping-et. Mert ugye en egy abrat nezve begepeltem, hogy mit hova *egyszer*, mar azota tobbszor kiderult, hogy kihagytam valamit, multkor pl gflorez a jobb shift-et nem talalta :) Az ALT-ot majd beleeroszakolom, bar elvieg kezzel is megprobalhatod config-ba addig beletenni, ugye az epkey@XX = AKARMI direktivaval, ahol az XX egy hex ertek row/col (vagy col/row hmmm), lasd a default config-sample-t, az AKARMI az meg a neve a _PC_ gombnak. Ez utobbit onnan lehet tudni, hogy :XEP SHOWKEYS es akkor ki fogja irni OSD-ben barmit nyomsz le, hogy mi az "SDL neve" az adott scancode-u karakternek amit epp bizeraltal :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 14:12:42
Éppen ott tartottam, hogy HEASS-oltam volna az új romokat, csak elakadtam, hogy nincs szöveg elejére ugrás (ALT+joy) :oops:
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 14:29:04
Mar ha az EXOS-ban van egyaltalan es nem EXDOS-ban,
Nem EXOS, nem EXDOS, hanem FILE.

Quote
egy olyan EXDOS is lenne, ami SD-cart-ot tud, de a WD-t is hajlando kezelni, viszont nem var ra mindenaron :)
Ilyen még nincs :oops:
Az egyszerű
IN A,(...)
CP 255
JP Z,NINCSWD
megoldás nem jó, mert a lebegőbuszos gépeken egyáltalán nem biztos, hogy FFh jön a nemlétező porton.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 14:45:06
Csatorna nyitas nem ment, mert ilyen nincs, megis megprobalja lezarni a csatornat, holott ennek semmi ertelme, mert megnyitni sem sikerult :)
Ebben semmi furcsa nincs. Ahhoz hosszabb analízis kéne, hogy pontosan mi a hiba, meg egyáltalán volt-e hiba. Egy fix EXOS 3-tól még semmi baj nem lehet, és akkor tuti le lesz zárva :-)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 14:48:55
FILE javítva. (https://enterpriseforever.com/programozas/file-bovites/msg55291/#msg55291)
Title: Re: Xep128
Post by: lgb on 2016.April.26. 15:31:59
Bocs, ha hulyeseget kerdezek, de milyen FILE van javitva? A FILE.ROM? Mert olyan Xep128-ban nincs, ugyse teljesen sajat FILE implementaciom van. Vagy en ertettem felre, ami nagyon is lehetseges, sot valoszinu :oops:
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 15:47:10
Bocs, ha hulyeseget kerdezek, de milyen FILE van javitva? A FILE.ROM? Mert olyan Xep128-ban nincs, ugyse teljesen sajat FILE implementaciom van. Vagy en ertettem felre, ami nagyon is lehetseges, sot valoszinu :oops:
Neked "FILE:"-d van, ez meg "FILE" :-)

1993-ban írt HSOFT egy FILE nevű rendszerbővítést (http://ep128.hu/Ep_Util/Pack.htm), ami arra célra szolgál, hogy az embereknek ne kelljen bepötyögni a fájlnevet betöltéskor, hanem szépen ki lehet választani a lemezről. Ezt aztán csomó program használja.
Legutóbbi variácóban kibővítettem, hogy önállóan is alkalmazható programbetöltésre, ebbel a verzióból készült START program is, ami rá került a sok programos SD imagéra. (Mivel az SD illesztő cartridge formában készült el, így korlátozott a ROM hely. Fejlesztett EXOS mellett belefér az EPDOS, de alapgéppel nem, hacsak nem mond le az illető a BASIC-ről.)
Magyarán betolod az SD-t a gépbe, nyomsz egy F1-et, és böngészheted a sok programot :-)

Okozott némi (ezek szerint elég nagy :oops: ) zavart, hogy jó 15 évvel később emulátorhoz készült egy "FILE:" EXOS device a PC fájlok eléréséhez. Ezt csináltad meg most te is.

A gond meg az volt, hogy a FILE-t (a rendszerbővítést) használó programok nem mentek "FILE:"-vel (az EXOS device-vel), erre született a korábban említett trükkös megoldás 2012-ben, hogyha a "FILE" lát "FILE:"-t akkor azt adja vissza, és akkor lehet böngészni a PC-s fájlokat betöltéskor.

Ez a trükk akadt el most a kapcsolgatós dolgon :oops:
Konkrétan amikor betöltöttem a sok programos SD image-ról a START programot (ami a "FILE"-ből készült), meglátta a "FILE:"-t, és azt adta vissza, így egyből beugrott a PC-s ablak, ezért hittem azt, hogy pl a LOAD "DISK:" nem működik.

Na most a rendszerbővítő FILE, és a belőle készült START javítva. Aki használja az SD image-n, annak oda kell másolni az új verziót.

Pluszban vannak még olyan SD illesztő ROM csomagok, ahol benne van a "FILE" ROM verziója (ami a :FILE paranccsal érhető el, és pont azt csinálja mint a betölthető START), ezt még cserélni kell.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 16:33:45
SD ROM frissítve.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.26. 16:36:24
Ez meg a múltkor összeállított ROM csomag frissítve.
Title: Re: Xep128
Post by: lgb on 2016.April.26. 17:06:21
Neked "FILE:"-d van, ez meg "FILE" :-)

Oke, igy mar vilagos, tudom mi az, csak epp nem gondoltam, hogy errol van szo hirtelen :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 10:38:08
Ha jól hallom a bal-jobb hang fel van cserélve :oops:

Azt lehetne, hogy megjegyezze a legutóbb használt FILE: könyvtárt?
Title: Re: Xep128
Post by: lgb on 2016.April.27. 11:00:40
Ha jól hallom a bal-jobb hang fel van cserélve :oops:

Az lehet, szerintem tippeltem :)

Quote
Azt lehetne, hogy megjegyezze a legutóbb használt FILE: könyvtárt?

Elvileg megjegyzi. Nem igy tapasztalod? Ha nem, pontosan mit/hogyan csinalsz, csak hogy reprodukalni tudjam, es javitani ... Nekem ugy remlik, ezzel nem volt gond, es megjegyezte ugyanis.

Par napja kisse elfoglaltabb vagyok, szoval bocsanat, ha kesve valaszolok/stb ...
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 11:18:32
Elvileg megjegyzi. Nem igy tapasztalod?
Nem :-(

Quote
Ha nem, pontosan mit/hogyan csinalsz, csak hogy reprodukalni tudjam, es javitani ...
Elindítom, aztán XEP DDN FILE (ennek az állapotát is megjegyezhetné, meg az AUDIO-t is :oops: )
Valami Roaming/akarmi/lgb-ből indul, meg keresem a rendes helyet.
Ha resetelek, akkor még ott van abban a könyvtárban.
Ha becsukom az emut, következő indításkor megint a Roaming/akármiből indul.
Title: Re: Xep128
Post by: lgb on 2016.April.27. 11:28:17
Nem :-(
Elindítom, aztán XEP DDN FILE (ennek az állapotát is megjegyezhetné, meg az AUDIO-t is :oops: )
Valami Roaming/akarmi/lgb-ből indul, meg keresem a rendes helyet.
Ha resetelek, akkor még ott van abban a könyvtárban.
Ha becsukom az emut, következő indításkor megint a Roaming/akármiből indul.

Ja, hogy emu ujrainditas, azt persze, hogy nem jegyzi meg :) Azt hittem, egy futtatason belul sem jegyzi meg, en arra gondoltam.

Mondjuk azzal max annyit tudnek csinalni, hogy config opcioban be lehet allitani, honnan induljon. Az jo lenne?

A ddn szerintem (ha jol remlik, nem tudom az a verzio kint van-e mar) megadhato config opcionak is viszont, akkor nem kell mindig beirnod :) Szoval ddn = file vagy hasonlo, elvileg.

Most az a bajom, hogy az elmult idoszak tortenesei kapcsan (Xep128 tekintetben is marmint!) elegge erdekes allapotban van nalam a forras, gatyaba kene raznom, kicsit teszelni (eleg sok minden at lett benne irva) aztan kirakni uj verziokent ...

Amugy az a "akarmirol induk" az a preferences konyvtar files alkonyvtara, ugye a Xep128 szempontjabol minden lenyeg a preferences-ben kene hogy legyen, pl ROM image-ek stb stb. Persze megadhato mas konyvtar is, csak az munkaval jar, mert akkor kulon meg kell adni :) Ez a konyvtar amugy az SDL szulemenye, o valaszt oprendszertol fuggoen egy konyvtarat, ami az adott Windows/Linux/stb user altal remelhetoleg irhato, es az aktualis applikaciohoz kotheto (ezert van benne az lgb, mert meg kellett adni vmi egyeni azonositot, hogy mire generalja le).
Title: Re: Xep128
Post by: lgb on 2016.April.27. 12:21:47
A masik: ha az emutol azt varod, hogy jegyezze meg, es ne kelljen gepelni, miert nem irod bele pl EXDOS.INI-be a XEP parancsokat? :D Elvileg annak is mukodnie kene.
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 13:27:12
A masik: ha az emutol azt varod, hogy jegyezze meg, es ne kelljen gepelni, miert nem irod bele pl EXDOS.INI-be a XEP parancsokat? :D Elvileg annak is mukodnie kene.
Az aktuális beállítást az se fogja megjegyezni!

Amúgy meg nem használok EXDOS.INI-t, hanem nyomom a gombot Zozotools-szal induláskor, hogy B mint BASIC , A mint Asmon, H mint HEASS, stb :-)
Title: Re: Xep128
Post by: lgb on 2016.April.27. 14:09:23
Az aktuális beállítást az se fogja megjegyezni!

Az biztos, hogy nem ... Mondom, a config megoldassal elvileg ddn allapota allithato, de ugye akkor is egy fix lesz, nem megjegyzes. Az, hogy FILE: hol kezdje, az megint olyan, hogy allithato lesz (most nem az) de akkor is ugye egy konkret ertek ... Olyan Xep128-ban nincs igazan, hogy o maga ment el barmit ... Lehet, kene majd ilyen is, de az egy mas kerdes :)

Quote
Amúgy meg nem használok EXDOS.INI-t, hanem nyomom a gombot Zozotools-szal induláskor, hogy B mint BASIC , A mint Asmon, H mint HEASS, stb :-)

Nem fecserled az idot :)
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 14:47:21
Olyan Xep128-ban nincs igazan, hogy o maga ment el barmit ... Lehet, kene majd ilyen is, de az egy mas kerdes :)
Na pont erre a más kérdésre célozgatok itt :-)
Title: Re: Xep128
Post by: lgb on 2016.April.27. 15:11:37
Na pont erre a más kérdésre célozgatok itt :-)

Jo, de ez filozofiaban erdekes kerdeseket vet fel. Ui ha ezek a beallitasok amugy config opciok (a ddn most is az, a fileio kiindulo dir meg nem, de majd lesz), akkor elmenteni kb azt jelenti, hogy automatice kiirni a configot mindig. Azt viszont nem biztos, hogy mindenki szeretne, hogy magatol tortenjen, es nem orul ha vki ujrairja a config file-jat (akkor elvesznek benne a comment-ek, mast is atallit pl amit nem akarna menteni stb). Szoval jon a kerdes, hogy akkor mit mentsen magatol es mit ne, es tutira magatol csinalja-e, felszolitas nelkul, stb ....
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 15:22:11
Muszáj kiírni, átírni nem lehet?
Title: Re: Xep128
Post by: lgb on 2016.April.27. 15:45:24
Muszáj kiírni, átírni nem lehet?

Azt hogy kepzeled? :) A config file parser vegigmegy a config file-on csinal belole a memoriaban egy absztrakt valamit. Kimenteni a forditottja. Tehat nullarol eloallit egy configot a memoriaban tarolt beallitasok alapjan. Raadasul ugye lehet, olyan is at lett allitva, amire user nem gondol, igy automatice Xep128 mindig frissiti a config file-t, lehet meg fog lepodni ... Szerintem nems zabad automatikussa tenni, ep128emu-ban is van save config, nem menti magatol azert ...

Persze, mondhatod, hogy akkor ne configba mentse. Akkor mibe? :) Es akkor johet a lista, hogy akkor mi az amit el kene tarolnia es mi az amit nem, ez is messzire vezet ... Nem az, hogy nem akarok vele foglalkozni, csak filozofiailag sem latom, hogy egyaltalan mi a jo megolas ....
Title: Re: Xep128
Post by: Zozosoft on 2016.April.27. 19:14:05
Akkor az is lehetne, hogy egy saját konfig fájlba menti ezeket, amit felülbírálhat a felhasználói konfig, ha ott meg van adva valami.
Valahogy így van az ep128emu-nál is.
Title: Re: Xep128
Post by: lgb on 2016.April.27. 22:23:57
:) Gondolkozom ... Az a baj, hogy mar igy is tiszta kaosz a cucc. Van a Xep128-nak a beepitett config-ja, abbol inicializalja a belso cuccokat. Betolti a config-ot (ha van mit) config file-bol, barmi felulbiralhato. Elemezi a parancssort, megint felulbiralhatoak a beallitasok. Kozben van a monitor resze, ami at tud irni dolgokat szinten. Ezt hivja az :XEP handler ED trap-eken at. Kozben a konzol ablak egy kulon thread-ben fut, ami ilyen egy elemes queue :) szeruseggel szinten a monitorral kommunikal. Emellett vannak felig/meddig privat cuccok, amit idonkent a config memoria beli reprezentacioja alapjan frissit adott triggerre. Stb :-P

Alapvetoen, amit irtal az nem rossz otlet, hogy mindig mentse le a configot barmi modosulas van valami egyedi nevvel, amiben benne van minen, barmi is biralta felul, csak a kerdes, hogy  kov indulasra hogyan dontse el, hogy ezt hasznlja, vagy az eredeti config file-t, stb. mert ha alapbol nem ezt hasznalja, akkor neked megint nem jo: alapbol "nem jegyzi meg" erzesed lesz, hogy kell tenni valamit, hogy "visszajojjon, hogy hol tartottal". Ha meg alapbol az utolsot tolti be, akkor a config file fogalma is kisse keveredik, es masoknak meg az lesz zavaro, hogy akkor most hogy alljon vissza az eredeti allapotra ...

Lehet, en nem latom csak a fatol az erdot, ami ugye gyakori, ha az ember a kozepen all, mert o az erdesz :)
Title: Re: Xep128
Post by: lgb on 2016.April.27. 22:40:55
Ez meg a múltkor összeállított ROM csomag frissítve.

Tenyleg, nem pont ide vag a tema, de mar akartam kerdezni ... Ha beirom, hogy :ISDOS akkor kapok egy ok prompt-ot es csokozon. Ha ezek utan ujra probalom akkor mar unrecognized comman string, sot utana pl a :DIR sem megy stb ... Ez normalis? Ez zavar kicsit, hogy IS-DOS-szal nem tudok jatszani, mindig valami furcsasagba botlok vele kapcsolatban ........
Title: Re: Xep128
Post by: lgb on 2016.April.27. 23:01:22
Akkor az is lehetne, hogy egy saját konfig fájlba menti ezeket, amit felülbírálhat a felhasználói konfig, ha ott meg van adva valami.
Valahogy így van az ep128emu-nál is.

Ezzel az a baj, hogy ha a felhasznalo config teljes config akkor mindent felul fog biralni, mondjuk ez a useren mulik :) Ha a config-sample-t lemasolja es csak a modosit benne, akkor ugye minden lehetseges direktiva benne van, tehat ott vagyunk ahol a part szakad ... Nade, vegulis ez a useren mulik, az is igaz, igy legalabb valahogy megoldhato tobbe/kevesbe :-P
Title: Re: Xep128
Post by: Zozosoft on 2016.April.28. 09:17:32
Szerintem akinek ilyen extra igényei vannak, az úgyis ért hozzá :-)

Amúgy így van az ep128emu-ban is. Megjegyzi magának, de a config fájl felülírja, ha van benne az adott beállítás.
Title: Re: Xep128
Post by: lgb on 2016.April.28. 10:36:35
Szerintem akinek ilyen extra igényei vannak, az úgyis ért hozzá :-)

Amúgy így van az ep128emu-ban is. Megjegyzi magának, de a config fájl felülírja, ha van benne az adott beállítás.

Aha, hat oszinten sose figyeltem erre, hogy mikepp csinalja. Lehet, akkor tenyleg ez lesz a jo megoldas. Annyira nem is bonyi: a default config kiiras is ugy megy, hogy elmeni a configot csak epp a default ertekek beallitasa _utan_ :) Szoval siman ezt meg kell hivnom majd kicsit kesobb mas nevvel valo mentesre kilepes elott, meg ugye inditasnal is, hogy megprobalja betolteni. Annyira nem tunik bonyolult modositasnak szerencsere. Max annyi, hogy jelenleg pl a ddn es a filedir az nincs a configba visszavezetve, de az is max 1-2 sor. A gond csak az, hogy most osszegyult jo par modositas FILE: stb kapcsan ami meg rendesen nincs megcsinalva, stb, elobb szeretnem stabil es normalis kod allapotba hozni, de lehet, hogy meg ma este tulesek azon. Remelem legalabbis :) Aztan ideje lesz a 0.4-es release-nek, most osszegyult mar jo par valtozas az elozo ota.

Na, viszont ha mar itt tartunk, egy kerdes. Meg mindig ott tartok, hogy mennyire jo otlet a nativ UI bevonasa. Gondolok itt arra, hogy pl a file selector ablak ami feltunik ha load van ures filenevre, es majd esetleg a jovoben meg hasonlo vagy akar mas funkciok is, amik mind "sajat ablakot" igenyelnek, es nem resze az emulalt EP ablakanak. Erre en ket megkozelitest latok emulatorokban altalaban.

Az egyik az, ami vegulis megjelent Xep128-ban is, bar jelenleg csak a file selector kepviseli ezt, illetve ugye ep128emu-nak is van kulon mindenfele ablaka (most az tok mas kerdes, hogy milyen UI toolkit-et hasznal, nem ez a lenyeg). Ennek van sok elonye, kenyelmesebb hasznalat, stb. Talan ...

Am ott a masik irany is viszont. Lasd mellekelt kepeket, ez a FUSE nevu Spectrum emulator eppen, SDL-t hasznalva igy nez ki a menuje. Tehat voltakeppen sajat maga "lerendereli" az emulator kepernyojebe. Vegulis Xep128 eseten az OSD funkcio hasonlo, ott se kulon UI elemet hasznal ugye. FUSE/SDL eseten meg a file kivalaszto "ablak" is igy van megirva. Ennek hatranya talan az, hogy furanak tunik, meg esetleg kenyelmetlennek. Azonban van egy nagyon nagy elonye: platformfuggetlen. Azaz, utana akar android-ra portolva, raspberry pi-n akarmi es megvan a GUI, kesz. Igy is tobb napot szivtam azzal, hogy legyen Windows-on es Linux-on es file selector, mert ugye ket tok kulon implementacio. Igy eleg lenne mindent egyszer megirni es menne mindenhol. Viszont nem biztos, hogy ez tetszenek barkinek is igy, rajtam kivul ...

Title: Re: Xep128
Post by: lgb on 2016.May.02. 19:23:42
No, a fentiekrol velemeny, valaki? :)

Amugy bocs, kicsit eltuntem az emu fejlesztessel, eppen Commodore VIC-20 es Commodore LCD emulatort irok :) Mielott kikapok, hogy miert foglalkozok "hulyesegekkel": az egyik celom pont az volt, hogy a Xep128-nal lenyegesen egyszerubb valamit irjak, amivel meg tudok vizsgalni par alap SDL kerdest, amit esetleg Xep128-ban is aztan fel tudok hasznalni ...
Title: Re: Xep128
Post by: Zozosoft on 2016.May.02. 19:32:00
Az előnyét látom, de most éppen örülök, hogy a jelenlegi móddal használható a Windows 7 legutóbbi helyek listája :-)
Title: Re: Xep128
Post by: ergoGnomik on 2016.May.02. 19:36:27
az egyik celom pont az volt, hogy a Xep128-nal lenyegesen egyszerubb valamit irjak, amivel meg tudok vizsgalni par alap SDL kerdest, amit esetleg Xep128-ban is aztan fel tudok hasznalni ...
Ha elkészült, akkor lehet belőle emscriptennel js emulátort faragni. :ds_icon_cheesygrin:
Title: Re: Xep128
Post by: lgb on 2016.May.02. 20:26:15
Ha elkészült, akkor lehet belőle emscriptennel js emulátort faragni. :ds_icon_cheesygrin:

js-ben irtam mar EP emulatort, igaz az "kezzel irt" javascript, nem emscripten altal eloallitott :) Amugy igen, ez nekem is megfordult mar a fejemben, regebbi emscripten-ek viszont SDL1 API-t emulaltak csak, ami nekunk nem jo. Most mar allitolag SDL2 is van, szoval kozelit ...
Title: Re: Xep128
Post by: lgb on 2016.May.03. 18:17:58
Ja, emscripten-rol annyit, hogy Xep128 nem mukodne vele amugy, mivel a Z80ex lib az endian fuggo megoldast hasznal. Ez adott esetben nativ appkent nem gond, mert pl ha x86-ra van forditva, akkor a cpu meghatarozza ezt, szoval oke. Am ugye weben ez gond, hogy nem tudhatod, milyen cpu-t hasznalo cuccon futtatjak a web browser-t ... Persze lehet ket verzio, auto detect, es aszerint a magfelelore dob at :-) Ez persze nem az emscripten-bol jon mint gond, hanem konkretan az JS TypedArray dolgaibol ...
Title: Re: Xep128
Post by: lgb on 2016.June.05. 19:02:43
Van valami Xep128-nal ami "hiba" kategoriaba sorolhato? Volt egy csomo FILE: cucc, aztan egy darabig nem is igazan "jelentkeztem" Xep128 kapcsan. De ideje lenne akkor "hivatalosnak" minositeni a legutobbi verziot. Az ilyen ujabb dolgot, hogy config auto mentes stb, mar inkabb majd a kovetkezobe, igy is tul sok minden gyult fel kod szinten azota ... Most a legutobbi a xep128.lgb.hu oldalon kirakott "win32 build" linken elvileg ugye elerheto.
Title: Re: Xep128
Post by: geco on 2016.June.09. 13:37:13
Sajnos nem tudom tesztelni, nálam nem indul el, feljön a konzol ablak, aztán egy pillanatra felugrik az emu ablak is, majd az XEP128 stopped working ablakocska, és a debug fájlom se tartalmaz semmit :(
Title: Re: Xep128
Post by: gflorez on 2016.June.09. 14:16:41
Te emulálni a Windows? Próbálja ki a XEP128 Linux verzió (https://github.com/lgblgblgb/xep128#xep128).

-----------------------------

Are you emulating Windows? Try the XEP128 Linux version (https://github.com/lgblgblgb/xep128#xep128).
Title: Re: Xep128
Post by: geco on 2016.June.09. 14:17:51
Te emulálni a Windows? Próbálja ki a XEP128 Linux verzió (https://github.com/lgblgblgb/xep128#xep128).

-----------------------------

Are you emulating Windows? Try the XEP128 Linux version (https://github.com/lgblgblgb/xep128#xep128).
Build was unsuccessful :D
Title: Re: Xep128
Post by: gflorez on 2016.June.09. 14:24:16
Ok, félreértettem.

-------------------------------

Ok, I misunderstood you.
Title: Re: Xep128
Post by: geco on 2016.June.09. 15:32:10
Ok, félreértettem.

-------------------------------

Ok, I misunderstood you.
No, I spoke only from Windows version earlier :) I tried to build also, but I am not a linux expert so it can be my mistake.
Title: Re: Xep128
Post by: lgb on 2016.June.09. 19:53:17
Sajnos nem tudom tesztelni, nálam nem indul el, feljön a konzol ablak, aztán egy pillanatra felugrik az emu ablak is, majd az XEP128 stopped working ablakocska, és a debug fájlom se tartalmaz semmit :(

Az mi az a "stopped working" ablak? marmint azt windows mondja? En nem raktam bele ilyen ablakocskat :) Az a "baj" (illetve nekem nyilvan nem, hehe), hogy nincs windows-om, soha nem is volt, es nem is akarom, hogy legyen :) Igy a windows build windows szintu problemait kevesbe fogom tudni atlatni. Ami alapszintu tesztet csinalok az annyi, hogy forditas utan (Linux alatt mingw cross compiler, windows-os exe-re fordit de Linux alol) kapott exe-t wine-al elinditom, ha elindul, es mukodni latszik kb, akkor jonak van minositve :) Ha most vmi windows hulyeseg miatt megall, azt eleg nehez igy kideriteni, hogy miert teszi :( Nem lehet kicsikarni windows-bol infot, hogy mi a baja? Gondolom nem, Microsoft hires arrol, hogy nulla informaciot kepes adni (lasd IE "a lap nem jelenitheto meg" uzenet, es kozben elrejti a webserver uzenetet, ez a kedvencem, aztan talald ki, mi a baj ...).

A masik, Linuxos oldala: milyen Linux-on probaltad? Pontosan mit irt ki? Lehet nem volt installva a megfelelo csomag ami kell neki. Ha vmi ubuntu/debian, akkor pl:

sudo apt-get install libsdl2-dev make gcc wget

Eloszor, aztan utana (mar sima userkent eleg persze, sudo nelkul): make

Most ezt fejbol irtam, mivel nem szoktam le/fel tenni ezeket a csomagokat, lehet kell meg neki vmi, azert lenne jo tudni, pontosan mit mond a make a vegen ...
Title: Re: Xep128
Post by: geco on 2016.June.10. 09:16:32
KVM alatt fut nálam egy Win7, igen a winfos dob ki egy ablakot, és próbáltam a debug file-ban is nézelődni, meg a konzolon is, természetesen a debug file üres, a konzolon se láttam semmi értelmeset :)

A Linux sztem az SDL2 hiányán bukott meg, kerestem az installt de, nem találtam, így feladtam. RED HAT-en próbálkoztam, úgy hallottam, hogy nem épp ez a legjobb, de munkahelyen ezt használjuk :D

Köszi szépen a segítséget, nem is szemrehányásként említettem a windowst, tudom, hogy nem használsz :)
Még lehet próbálkozok a linux verzióval.
Title: Re: Xep128
Post by: lgb on 2016.June.10. 19:43:37
KVM alatt fut nálam egy Win7, igen a winfos dob ki egy ablakot, és próbáltam a debug file-ban is nézelődni, meg a konzolon is, természetesen a debug file üres, a konzolon se láttam semmi értelmeset :)

Marmint Xep128 debug file-ka? Lehet windows mar elotte lelovi vmiert az emut, mielott barmit beleirna stb :( Windows-on passz, Linux eseten ugye ilyenkor ott a gdb (GNU debugger), amivel lehet latni, hol szall el, sot, ha -g -vel van forditva, akkor meg sorras file- es sorszamot is kiir az egyes dolgokra ... Gondolom win-re is vannak hasonlo eszkozok, de mivel sose hasznaltam, nem tudom megmondani.

Quote
A Linux sztem az SDL2 hiányán bukott meg, kerestem az installt de, nem találtam, így feladtam. RED HAT-en próbálkoztam, úgy hallottam, hogy nem épp ez a legjobb, de munkahelyen ezt használjuk :D

Az se baj, max en mivel nem hasznalom, nem ismerem a csomagkezelojet, de amugy SDL2 devel lib-eket kene feltenni, ha megtalalod ... meg ugye gcc, make is kell.

Quote
Köszi szépen a segítséget, nem is szemrehányásként említettem a windowst, tudom, hogy nem használsz :)

Ertem en, meg ertettem is, csak tenyleg az a baj, hogy ilyen esetben en nem tudom kideriteni, hogy mi a problema a windows-nal :( Amugy volt mar hasonlo regen ha jol remlik vki mondta, akkor sem jottem ra, felesgem notijan volt egy "hagyatek" windows XP, azzal kiprobaltam, nekem elindult gond nelkul ... :-/ Eljen a kompatibilitas :)

Ami a lenyeg, szerintem sok ember felreerti neha a stilusomat, nem vettem en szemrehanyasnak meg semmi, es engem persze nem hagy hidegen, hogy valamiert nem megy adott gepen, csak ilyenkor nem igazan tudom, mit lehetne tenni, ismerve a helyzetet ugye :)
Title: Re: Xep128
Post by: lgb on 2016.June.11. 18:33:44
Ja, es meg annyit, hogy nemsokara "kenytelen leszek" atterni a 2.0.4-es SDL-re mint minimum. Ez ott gond, ahol pl regebbi SDL lib van mondjuk Linux disztribucioban (Windows eseten azt jelenti, hogy masik DLL kell melle). Ez azert lesz jo, mert a 2.0.4-es SDL tamogatja az audio queuing dolgokat, ami kell majd a normalis, szinkronizalt audio cuccok emulalasahoz. Jelenleg 2.0.2-es a minimalis igeny meg.
Title: Re: Xep128
Post by: lgb on 2016.June.23. 09:41:49
Zozo-fele IDE HDD emulacio jo lenne Xep128-ba, vagy nem kell, es eleg az SD is?
Title: Re: Xep128
Post by: Zozosoft on 2016.June.24. 11:26:44
Gyakorlati haszna szerintem nem sok lenne :-) De ha maximalista akarsz lenni... :ds_icon_cheesygrin:
Viszont egyelőre összeakad az SD meg IDE ROM, kéne már új verziót csinálnom :oops:
Title: Re: Xep128
Post by: lgb on 2016.June.26. 13:56:44
Tenyleg Zozo, ha mar igy valaszoltal, eszembe jutott meg az a keresed, hogy az aktualis FILE: celjara hasznalt konyvtar legyen elmentve ket emu hasznalat kozott is. Ugye erre mondtam, hogy akkor kilepeskor automatice configot kene menteni. Igazabol a kerdesem az lenne, hogy tenyleg megeri ez, a _teljes_ config-ra, vagy eleg nehany opciora ilyet csinalni, pl a mar emlitett FILE: konyvtarra is?
Title: Re: Xep128
Post by: Zozosoft on 2016.June.26. 14:54:06
Amit XEP paranccsal át lehet állítani, azt jó lenne menteni is :-)
Title: Re: Xep128
Post by: lgb on 2016.June.26. 16:15:35
A :XEP TORONYORALANCOSTUL opcio is kellene? :D Ize, nehogy magadra vedd, ez vicc akart lenni :) :) Mentsegemre legyen szolva, hogy meleg van :-)
Title: Re: Xep128
Post by: Zozosoft on 2016.June.26. 16:22:35
Mentsegemre legyen szolva, hogy meleg van :-)
:XEP SUN OFF :-D
Title: Re: Xep128
Post by: lgb on 2016.June.26. 16:31:12
:XEP SUN OFF :-D

Keso. Mar megvette az Oracle :D
Title: Re: Xep128
Post by: lgb on 2016.June.26. 16:39:52
Termeszetesen a Xep128 fejlesztoi kozpontban gondosan - bar meg analog modon - monitorozzuk a kornyezeti homersekletet is. Nemsokara a Xep128-ba is be fog kerulni a feature! A jelenlegi fejlesztesi fazisrol egy foto lathato hozzaszolasomban a jelenlegi implementaciorol, lasd a monitornak tamasztott meroeszkozt :)
Title: Re: Xep128
Post by: szipucsu on 2016.June.26. 18:04:19
monitorozzuk a kornyezeti homersekletet is.
Az a Limonádé című programban jól jöhet. A valós hőmérséklet alapján állítaná be a limonádét vásárolni óhajtó vevők számát.
Ha az esőt is tudja detektálni, akkor a Race Ace programmal is hasznosítani lehetne, hogy a pálya vizes vagy száraz legyen-e.
Más program hirtelen nem jut eszembe, ahol hasznosítható lenne.
Title: Re: Xep128
Post by: DrPrery on 2016.June.26. 18:18:43
Quote
    :XEP SUN OFF :-D


Keso. Mar megvette az Oracle :D

:smt044

Quote
...a Xep128 fejlesztoi kozpontban...

Jól mutat a Windows gomb a billentyűzeten... :mrgreen: :twisted:

Quote
...analog modon - monitorozzuk a kornyezeti homersekletet...

Nocsak, pont ilyen hőmérő lóg a falon nálunk is (elterjedt széria lehet... :)  )

Quote
...lasd a monitornak tamasztott meroeszkozt...

Én inkább a mérőeszköz alatt terpeszkedő eszköz pontos típusára lennék kíváncsi... :)






Title: Re: Xep128
Post by: DrPrery on 2016.June.26. 18:26:00
Quote
Más program hirtelen nem jut eszembe, ahol hasznosítható lenne.

Hogyne lehetne.  A Winter Games-ben 0 fok felett olvadni kezdene...
Title: Re: Xep128
Post by: lgb on 2016.June.26. 18:39:06
Jól mutat a Windows gomb a billentyűzeten... :mrgreen: :twisted:

Hat, nehez szerezni anelkulit ... Igazabol meg nem magyart is nehez ... de ugy vagyok vele, hogy ugy sem nezegetem a billentyuzetet, mind1 mi van rairva :-P

Quote
Én inkább a mérőeszköz alatt terpeszkedő eszköz pontos típusára lennék kíváncsi... :)

A noti? Miert erdekel, hogy erdemes-e betorni erte? :) Lenovo (vahogy ahogy mondjuk errefele: levono ...) ThinkPad L520. De ceges amugy, nem az enyem.
Title: Re: Xep128
Post by: DrPrery on 2016.June.26. 19:26:12
Quote
Miert erdekel, hogy erdemes-e betorni erte? :)

No nem :)  , különben is, akkor már redundanciába kerülnék Lenovo téren :)

Title: Re: Xep128
Post by: Povi on 2016.June.27. 16:04:52
Hoppá, az milyen monitor (a Philips)? EP-hez való?
Title: Re: Xep128
Post by: lgb on 2016.June.27. 16:23:25
Hoppá, az milyen monitor (a Philips)? EP-hez való?

Hat jelenleg pl C64-hez hasznalom, meg hasonlok ami eppen akad ... BM7752. Sajnos csak monokrom :( es igazabol csak composite van rajta, bar vegulis mind1, mert EP-n amugy is lenne legalabb mono composite kimenet szinessel meg ugyse mennek sokra ezen a monitoron ugye ... Multkor akadtam ra szuleim padlasan, mar el is felejtettem milyen cuccok vannak, akadt egy VIC20 is nagy meglepetesemre, ne is emlekeztem ra (meg amugy pl TVC meg HT1080Z is, meg par mas dolog is, de legalabb az remlett, hogy ott helyeztem el vmikor).
Title: Re: Xep128
Post by: lgb on 2016.June.29. 09:37:21
Valaki Windows SZAGerto(-bb, mint en) mondja mar meg please, hogy van-e ertelme 64 bites Xep128-nak Windows-ra :-D Vagy tokmind1, nem okoz problemat a szokasos 32 bites, gondolom megy ugyanugy? Azert is kerdem, mert amugy mingw 64 bites compilerrel lefordul 64 bitre is, csak nem tudom, van-e ertelme, vagy kell-e barkinek ilyen ... Thx!
Title: Re: Xep128
Post by: geco on 2016.June.29. 10:19:42
Sajnos segíteni nem tudok ebben a kérdésben, csak annyit, hogy nálam 64bites winfoson nem műxik :)
Title: Re: Xep128
Post by: Zozosoft on 2016.June.29. 10:25:00
Nálam több gépen is megy 64 bites Win7-en.
Title: Re: Xep128
Post by: gflorez on 2016.June.29. 10:37:39
A Microsoft továbbra is kiadja a 32 bites változatai az operációs rendszer, és a 64-bites Windows programok futtatása vonatkozóan állítják össze 32 bit.


--------------------------


Microsoft continues to release 32-bit versions of their operating systems, and the 64-bit versions of Windows run programs compiled for 32 bits.
Title: Re: Xep128
Post by: lgb on 2016.June.29. 10:45:00
Sajnos segíteni nem tudok ebben a kérdésben, csak annyit, hogy nálam 64bites winfoson nem műxik :)

Ja, azt jo lenne tudni, mi a baja a windoznak vele, csak hat sok otletem nincs, hogy derithetned ki :( Pedig erdekelne ...
Title: Re: Xep128
Post by: geco on 2016.June.29. 13:00:50
Ja, azt jo lenne tudni, mi a baja a windoznak vele, csak hat sok otletem nincs, hogy derithetned ki :( Pedig erdekelne ...
Engem is érdekelne, de nem dobott semmi infót :(
Linuxon meg nem tudom fordítani, feltettem egy valagnyi SDL meg nemtom milyen csomagot, lehet nem a jókat :D
Title: Re: Xep128
Post by: lgb on 2016.June.29. 14:08:38
Engem is érdekelne, de nem dobott semmi infót :(

Hat ha windoze lelovi ilyen/olyan valos vagy velt problema miatt is, mielott "szohoz jutna" akkor persze :( Ekkor a windows-bol kene kicsikarni hogy adjon vmi normalis debug trace-t stb. Nem tudom ez windows-nal hogy megy, otletem sincs ....

Quote
Linuxon meg nem tudom fordítani, feltettem egy valagnyi SDL meg nemtom milyen csomagot, lehet nem a jókat :D

Azert sokat segitene, ha demoznad, hogy miket ir ki a make utan a cuccos :) Illetve nemikepp gond is lehet abbol, hogy a mostani (github-on is fent levo) forraskodnak minimum mar 2.0.4-es sdl kell, sok Linux distrib-ben meg 2.0.2 van csak max. Ez spec windows eseten azert nem gond, mert max adok melle masik dll-t. De ugye Linux-on nem szokas ganyolni hogy dll-eket pakolunk ide-oda hanem szepen kozponti shared lib-ek vannak _altalaban_ :)

A masik: azzal viszont ados vagyok, hogy Linux eseteb pl .deb csomag stb legyen, es ne kelljen forrasbol forditani mindenkinek :-P Bar nyilvan ez is akkor segit, ha epp olyan disztrib olyan verzioja van stb :) vagy legalabb kb :D
Title: Re: Xep128
Post by: DrPrery on 2016.June.29. 20:00:30
Quote
Ez spec windows eseten azert nem gond, mert max adok melle masik dll-t. De ugye Linux-on nem szokas ganyolni hogy dll-eket pakolunk ide-oda hanem szepen kozponti shared lib-ek vannak _altalaban_ :)

Csak épp az egyszeri user korlátai kb. ott végződnek, hogy "copy dll", oszt' jónapot... :)
Igaz, a Linux-ot nem is nekik találták ki, úgy néz ki :)

Mert addig még csak hagyján, amíg az alap disztró mindent ellát (már amikor), de ha valamiféle finomhangolás vagy egyéb spéci dolog kerülne megvalósításra, akkor a tudomány hajlamos megállni...

Én mostanában pakoltam fel egy Lenovo T400-asra egy Ubuntu MATE cuccot és szerencsére úgy tűnik, hogy minden működik, na de a ventillátor-szabályozás ezen a típuson (is) kissé túlzásba van a BIOS által véve...
Windows-on persze felhajítja az ember a TpFancontrol-t és megvagyunk. Na de itt... :shock:

Két napig szórakoztam, amíg valahogy sikerült (bár még nem egészen értem, végülis hogyan :mrgreen:  ), de az ilyesmi nem közönséges halandóknak való... :ds_icon_cheesygrin:

Megjegyzem, mindíg is Windows-os voltam, nem "fanatizmusból" :ds_icon_cheesygrin:  ,hanem egyszerűségből, csak az utóbbi időkben kezdem tágítani a látókörömet (nem utolsósorban a Win10 eszelősségek miatt...)

Title: Re: Xep128
Post by: lgb on 2016.June.29. 20:33:46
Csak épp az egyszeri user korlátai kb. ott végződnek, hogy "copy dll", oszt' jónapot... :)

Bar nem vagyok nagy windows szakerto, de akik azok erre szoktak mondani, hogy "DLL hell" ami a windows-ra jellemzo :) Memoriaval stb sem tul takarekos, ha minden nyomoronc exe sajat dll-t hasznal sajat memoriat stb foglalva (akkor is ha uaz a dll lenne mondjuk csak tobb helyen megvan), egy kozponti helyett, ami igy egyben menedzselheto/frissitheto stb. Persze elvileg nyilvan UNIX-on is hasznalhatnal olyasmit amit/ahogy windows-ban a dll-ek, csak nem igazan szokas.

Na, mind1, nem flame-et akarok nyitni errol, szamomra az egesz Windows felepitese total erthetetlen semmi logika/elegancia nincs benne, mindent oda tesznek ahova eppen eszukbe jut ossze-vissza stb :)

Amugy itt konkretan amire valaszoltal megjegyzesem: a linux-os binaris formatumban terjesztetett xep128 nem emiatt nem mux, hanem azert, mert windows-t az MS ad ki. Linuxot kb 100 kulonbozo disztribucio, mindenki ugy valogatva ossze a dolgokat, ahogy akarja. Igen, erre lehet mondani, hogy "ez a baj". Csak azert abba is gondoljunk bele, hogy a szabadsag az a valasztas szabadsaga. Ha valamibol egy van, nincs igazan mit valasztani, tehat szabadsag sincs :) Szoval mindennek ara van, ez bizony nagyon is igaz, en belatom! :)
Title: Re: Xep128
Post by: DrPrery on 2016.June.29. 20:59:58
Quote
Memoriaval stb sem tul takarekos, ha minden nyomoronc exe sajat dll-t hasznal sajat memoriat stb foglalva (akkor is ha uaz a dll lenne mondjuk csak tobb helyen megvan), egy kozponti helyett, ami igy egyben menedzselheto/frissitheto stb.

Elvileg persze Windows-on is lehetne minden DLL a System32 könyvtárban, mert a programok alapból ott kezdik keresni, ha a saját könyvtárukban nem találják, csak hát a szokások kissé elgányolódtak...

Quote
Na, mind1, nem flame-et akarok nyitni errol, szamomra az egesz Windows felepitese total erthetetlen semmi logika/elegancia nincs benne, mindent oda tesznek ahova eppen eszukbe jut ossze-vissza stb :)

A flame nekem meg aztán pláne eszembe se volt, az ilyesmit kifejezetten utálom :)
Csak hát, mivel a világ nagyrészt (sajnos) eléggé Windows központú, pláne  a játékok terén, igy mindenki a legkisebb ellenállás irányába mozdul. Ámbár az utóbbi időben a Wine mintha eléggé kezdene kikupálódni... Például a kedvenc RPG-met a KotOR-szériát dupla-klikkre simán elindította és semmi gond nem volt vele.

Quote
...a linux-os binaris formatumban terjesztetett xep128 nem emiatt nem mux, hanem azert, mert windows-t az MS ad ki.

Öhömm, én például megpróbáltam egy .deb cuccot feltenni az Ubuntu-ra, erre egy rakás hibaüzenettel elhajtott... :ds_icon_cheesygrin:
Biztos valami dependencia-probléma-hegyek vagy mi a szöszök lehettek, úgyhogy a bináris forma tényleg nem garancia.

Na, mindegy, majd próbát teszek a Xep128-al Linux-on is (DLL hell vs. compiling hell :ds_icon_cheesygrin:  )




Title: Re: Xep128
Post by: Zozosoft on 2016.June.29. 22:30:34
Azert is kerdem, mert amugy mingw 64 bites compilerrel lefordul 64 bitre is
Ha lefordul, akkor rakd fel azt is, megnézem elindul-e :-)
Title: Re: Xep128
Post by: lgb on 2016.June.29. 23:20:56
Na, mindegy, majd próbát teszek a Xep128-al Linux-on is (DLL hell vs. compiling hell :ds_icon_cheesygrin:  )

Ja, hat mas filozofia. Alapvetoen open source, a source-ra koncentral, a forrasra :) Jogod van megnezni, sot modositani stb, ebbol adodoan viszont ugye elegge source specifikus, es sokszor szandekosan nem is torekednek stabil ABI-ra, csak API-ra. Ugyanakkor ha megnezed, pl a Debian kb 30ezer (!) csomagot foglal magaba, ami kb igy mondhatni az operacios rendszer resze, hiszen a hozza adott tool-al installalhato, mindenfele kulon kereses/letoltes/specialis install nelkul (es persze forditas nelkul is). Ezek kozott azert a legtobb dolog megvan, ami atlag usernek kell, kezdve ilyen libre/open-office cuccoktol egeszen az Amiga emulatorig. Persze, ettol meg igaz, hogy belefuthatsz olyanba, ami nincs alapbol, pl Xep128 :) Szoval, persze, semmi sem tokeletes :) Es a naaaaagy szabadsagnak meg ara is van. Ugyanakkor elvileg windows-ra is fordithatsz kezzel is Xep128-at (ahogy en is csinalom, mert valahonnan csak kell, hogy legyen az az exe ...), akkor ott is van forditgatas am :) Csak ugye itt atlag user szamara viszont elony, hogy eleg egy exe, ami jobb esetben kb minden windows-on menni fog, mert hat nincs belole kismillio kulonbozo disztribucio. Na, vagy kb hasonlo :)
Title: Re: Xep128
Post by: lgb on 2016.June.29. 23:29:57
Ha lefordul, akkor rakd fel azt is, megnézem elindul-e :-)

http://xep128.lgb.hu/files/xep128_w64.exe

Viszont ertelemszeruen 64 bites SDL2.dll kell hozza:

http://xep128.lgb.hu/files/SDL-2.0.4_w64.dll

Es valoszinu, hogy ezt letoltes utan at kell nevezni SDL2.dll -re es ugy kell mellerakni. Arrol fug sincs, hogy Windows-ban lehet-e olyat, hogy van ket ugyanolyan nevu dll itt/ott mashol es majd kitalalja, hogy 64 vagy 32 bites kell-e belole egy adott exe-nek ...
Title: Re: Xep128
Post by: Zozosoft on 2016.June.29. 23:33:27
Működik!
Title: Re: Xep128
Post by: lgb on 2016.June.29. 23:34:39
Cool :)

Ja, es ebben az exe-ben van egy nem tesztelt feature is: ha abban a konyvtarban ahol az exe van letrehoz az ember fia egy xep128.dir nevu (text) allomanyt, es abban egy (abszolut) eleresi ut van, akkor a pref dir erteket felulbiralja, es a sok altal utalt :) fura nevu konyvtar helyett azt fogja hasznalni (azaz a config-ot is ott keresi, meg a cuccokat ami configban @-al kezdodik ugye, meg defaulte a combined.rom-ot is pl, stb). Ha a tartalma egyetlen egy pont, akkor az a konyvtar lesz ahol az exe is van. Csak az elso sor szamit, viszont a path elejen es vegen space/tab meg ilyen varazslatok jol keresztbe tehetnek neki ...
Title: Re: Xep128
Post by: Zozosoft on 2016.June.29. 23:40:04
Valamit csinált :-)
Title: Re: Xep128
Post by: lgb on 2016.June.30. 07:50:45
Valamit csinált :-)

A lefagyas is "valami" am :D
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 09:33:35
Advanced test...

print 1+1
 2
ok
 
:mrgreen:
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 10:03:18
Very advanced test...

Na, ezt most nem értem...
A színek kissé mások az emulátorokban... :smt017

ep128emu:
[attach=1]

xep128:
[attach=2]
Title: Re: Xep128
Post by: Zozosoft on 2016.June.30. 10:14:44
Vagy lehet, hogy ott a gombáknál valami olyan videó mód van amit az Xep128 még nem tud? :oops:
Title: Re: Xep128
Post by: lgb on 2016.June.30. 10:34:21
Siman lehet bug is am :) Csak szolok. Mondjuk az LPT-t is erdemes lenne latni, hogy mi van benne, ha tudjuk milyen video mod/stb van ott, akkor talan konyebb megtalalni a hibat :) Ahogy Zozo is mondja, lehet, hogy adott video/colour mode kombo nincs Xep128-ban meg, az is lehet akar pl ... Ep128emu-ban megnezheto ha jol remlik :-) Mondjuk xep128-ban is, csak akkor a console kell hozza, es az lpt parancs (menne :XEP lpt-kent is csak ugye egy program futasa kozben ezt nehezen irod be mint exos parancs ...).
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 11:40:03
Na, megpróbáltam Xep-et fordítani Linux-on...

Kiakad a fordító a következő hibaüzenettel:

console.c:32:31: fatal error: readline/readline.h: Nincs ilyen fájl vagy könyvtár

Title: Re: Xep128
Post by: lgb on 2016.June.30. 11:43:22
Na, megpróbáltam Xep-et fordítani Linux-on...

Kiakad a fordító a következő hibaüzenettel:

console.c:32:31: fatal error: readline/readline.h: Nincs ilyen fájl vagy könyvtár

Ja, libreadline devel csomag nincs fenn nalad, azt jelenti. Mondjuk a doksi irasban en vagyok a hibas, ui ezt szerintem nem irtam le a README-ben sem meg, hogy kell ... Az egesz README egy kaosz ujra kene irni az egeszet :-/

Ubuntu eseten pl a libreadline6-dev nevu csomagrol van szo. Megjegyzem, hogy persze ezt szebben is lehetne/kene csinalni, eloszor is detektalas nincs, hogy irja ki ertelmesen mi a baja :) Csak mivel eddig kb en hasznaltam linux alatt nagyreszt, masnak windows verzio kellett, azt meg ugyis en forditom, nem voltak ilyen szempontok :)

Amugy mifele linux pontosan disztrib/verzio/"bitszam"? :)
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 12:00:24
Siker! :ds_icon_cheesygrin:  :smt026 

[attach=1]

Quote
Amugy mifele linux pontosan disztrib/verzio/"bitszam"?

Ubuntu 16.04 LTS 32-bit
Title: Re: Xep128
Post by: lgb on 2016.June.30. 12:54:57
Kiraly :) Ugyanazt a hatteret sikerult beallitanod, mint nekem :-P Mondjuk kevesbe erdekel, ugyse latom szinte soha (full screen terminal stb), nem nagyon eroltettem meg magam :)

32 bites az mar "retro" :) Na jo nem feltetlen (bar btw, epp tegnap olvastam, hogy gondolkodnak Ubuntu-ek a 32 bites vonal tamogatasanak megszunteteserol), csak epp az jutott eszembe, hogy csinaltam deb csomagot, csak epp az 64 bites ...
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 13:03:19
Quote
32 bites az mar "retro" :) Na jo nem feltetlen (bar btw, epp tegnap olvastam, hogy gondolkodnak Ubuntu-ek a 32 bites vonal tamogatasanak megszunteteserol), csak epp az jutott eszembe, hogy csinaltam deb csomagot, csak epp az 64 bites ...

Hajjaj, éljen a retro amúgyis, nem? :)
Mellesleg azért kötöttem ki a 32bit mellett, mert a Wine futtatásával sokszor vannak gondok 64biten...

(Na, jó, el lehet tenni azt a méretes bárdot... :ds_icon_cheesygrin:  )
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 13:29:45
Quote
(bar btw, epp tegnap olvastam, hogy gondolkodnak Ubuntu-ek a 32 bites vonal tamogatasanak megszunteteserol),

A 16.04 LTS 2021-ig támogatva lesz, addig még ráérünk... :)
Title: Re: Xep128
Post by: lgb on 2016.June.30. 14:22:07
A 16.04 LTS 2021-ig támogatva lesz, addig még ráérünk... :)

Az egy dolog, de amugy mas oldalrol is vagjak a fat alatta, pl ha jol tudom google chrome uj mar nincs 32 bites linuxokra, csak 64-re.
Title: Re: Xep128
Post by: DrPrery on 2016.June.30. 14:28:07
Quote
pl ha jol tudom google chrome uj mar nincs 32 bites linuxokra, csak 64-re.

Akkor ideje petíciót benyújtani a Google-nak, mert az nem járja, hogy 64-re van Chrome, Ep-re meg még nincs... :mrgreen:
Title: Re: Xep128
Post by: lgb on 2016.June.30. 14:30:36
Akkor ideje petíciót benyújtani a Google-nak, mert az nem járja, hogy 64-re van Chrome, Ep-re meg még nincs... :mrgreen:

64-re ... :-P Ja, meg az oke hogy 32 bitest nem szeressek mar, na de a 8 bitrol nem szoltak, hogy gondjuk van vele :D
Title: Re: Xep128
Post by: lgb on 2016.June.30. 14:49:30
Amugy a hivatalos es ajanlott forditasi menet az lenne, hogy git-tel huzod le a forrast (git csomagot nem art installni):

git clone https://github.com/lgblgblgb/xep128.git
cd xep128
make dep
make
sudo make install

Aztan ha vmit valtozas van forrasban altalam, akkor csak eleg a konyvtarba lepve:

git pull
make

(ha a dependency valtozott az gond lehet, akkor "make dep" a make elott). Meg persze ezt is lehet installni. A make install mondjuk amugy letolti az sd image-et is es /usr/local/lib/... ala rakja, ami gond lehet, mert igy bar elerheto, de user szamara nem irhato akkor.

Amugy a tervem az lenne a kesobbiekre nezve, hogy xep128-at adott felhasznalo eloszor elinditja, akkor elindul akar combined.rom _nelkul_ is, marmint megkerdezi, hogy ugyan mar, letolthet-e egyet ... Meg csinal legalabb vmi ures sd card vhd-t stb is, vagy nem'tom.

Title: Re: Xep128
Post by: Povi on 2016.July.01. 01:44:18
Akkor ideje petíciót benyújtani a Google-nak, mert az nem járja, hogy 64-re van Chrome, Ep-re meg még nincs... :mrgreen:
Persze hogy még nincs, mert az EP már 128-as! :-D
Title: Re: Xep128
Post by: lgb on 2016.July.08. 19:35:23
Nincs valakinek _hasznalhato_ MacOSX cross compiler kornyezete Linux-ra? :) Valami nevetseges mennyire bonyolult, tolsd le az Xcode-ot, vadaszd ki belole a header stb file-okat, fogadd el az Apple licenc szerzodest BROAF. Ehhez kepest windows cross compiler megvan egyetlen parancs kiadasa utan, pedig az elobbi legalabb UNIX amugy, mig az utobbi nem :)
Title: Re: Xep128
Post by: DrPrery on 2016.July.09. 18:14:56
Nincs valakinek _hasznalhato_ MacOSX cross compiler kornyezete Linux-ra? :) Valami nevetseges mennyire bonyolult, tolsd le az Xcode-ot, vadaszd ki belole a header stb file-okat, fogadd el az Apple licenc szerzodest BROAF. Ehhez kepest windows cross compiler megvan egyetlen parancs kiadasa utan, pedig az elobbi legalabb UNIX amugy, mig az utobbi nem :)

Attól tartok, nem igazán hemzsegnek errefelé az OSX iránt érdeklődő Linux-osok... :twisted:

Title: Re: Xep128
Post by: lgb on 2016.July.09. 20:33:45
Attól tartok, nem igazán hemzsegnek errefelé az OSX iránt érdeklődő Linux-osok... :twisted:

Nekem oszt' tok mind1, csak gondoltam jo poen lett volna OSX release is, hatha valakinek kellene :D nekem tuti nem kell vegulis, ahogy windows release se, megis van :D
Title: Re: Xep128
Post by: Zozosoft on 2016.July.09. 20:36:47
Emlékeim szerint többen is hiányoltak almás EP emulátort. Valaki próbálkozott ep128emu fordítással, nem tudom mi lett belőle.
Title: Re: Xep128
Post by: lgb on 2016.July.09. 22:29:36
Emlékeim szerint többen is hiányoltak almás EP emulátort. Valaki próbálkozott ep128emu fordítással, nem tudom mi lett belőle.

Hat ez az Apple baromsaga, hogy ennyire zartta teszi az okoszisztemajat ... mert ugye az MS sem hires arrol eppen neha, hogy annyira nyilt lenne (de azert utobbi idoben mintha lenne javulo tendencia, vagy nem tudom), de linux-ra legalabb van pl wine ... vagy egyetlen egy paranccsal kb installalok cross compiler-t linux ala ami _tenyleg_ elo tud allitani aztan egy windows-os exe-t linux alatt is, stb. Az apple dolgok meg kb ilyen bal kezemmel a jobb fulemet vakarom es kozben kell hogy legyen egy mac-em is, aztan abbol atmasolom, meg kozeben appleid-t kerek letoltom, xcode ize/bize, stb nem is ertek a felet hogy mirol beszelnek. Engem nem erdekel a mac, csak linux ala akarom cross compiler-t, ennyi :D
Title: Re: Xep128
Post by: DrPrery on 2016.July.09. 22:34:57
Hát, legfeljebb ez van, bár lehet hogy ismered is...:

https://github.com/tpoechtrager/osxcross (https://github.com/tpoechtrager/osxcross)

Amúgy az xcode vacakolástól úgy látom ez se ment meg... :smt017
Title: Re: Xep128
Post by: lgb on 2016.July.09. 23:35:17
Hát, legfeljebb ez van, bár lehet hogy ismered is...:

https://github.com/tpoechtrager/osxcross (https://github.com/tpoechtrager/osxcross)

Amúgy az xcode vacakolástól úgy látom ez se ment meg... :smt017

Hat igen. Pedig ugye header file-ok meg ilyesmik kellenek, amit nem is szoktak copyright-olni igazan ........
Title: Re: Xep128
Post by: Ep128 on 2016.July.10. 00:08:48
Emlékeim szerint többen is hiányoltak almás EP emulátort. Valaki próbálkozott ep128emu fordítással, nem tudom mi lett belőle.

Egy 98%-ig kész iOS -es Ep emulátor lett belőle! (2 évvel ez előtt...) Aztán sajnos abbamaradt és az iOS frissítése miatt ma már aligha futna... :-( (Anno nálam volt tesztelésre hónapokig, NAGYON tetszett! Amúgy Varrogy fórumtársunk készítette.)
Title: Re: Xep128
Post by: lgb on 2016.July.10. 00:11:50
Egy 98%-ig kész iOS -es Ep emulátor lett belőle! (2 évvel ez előtt...) Aztán sajnos abbamaradt és az iOS frissítése miatt ma már aligha futna... :-( (Anno nálam volt tesztelésre hónapokig, NAGYON tetszett! Amúgy Varrogy fórumtársunk készítette.)

Az se rossz - marmint hogy iPhone stb -, de en sima osx cuccosra gondoltam csak :) Vagy ma mar azt is iOS-nek hivjak? Lehet, mert a Mac OSX-ben nem volt "i" betu, az meg ugye nem meno :) Vagy nem tudom hol tart az Apple, oszinten szolva ...
Title: Re: Xep128
Post by: Ep128 on 2016.July.10. 23:09:41
Az se rossz - marmint hogy iPhone stb -, de en sima osx cuccosra gondoltam csak :) Vagy ma mar azt is iOS-nek hivjak? Lehet, mert a Mac OSX-ben nem volt "i" betu, az meg ugye nem meno :) Vagy nem tudom hol tart az Apple, oszinten szolva ...
Nem-nem... :-) iOS az továbbra is csak iPod, iPhone és iPad! Utóbbin nagyon komolyan lehetett használni az emut! :-) (Zozo is látta anno...)
Title: Re: Xep128
Post by: lgb on 2016.July.20. 08:12:32
Travis (az egy ilyen "felhos" kb build infrastruktura, ossze lehet kotni github-bal, hogy minden git commit-ra build-eljen) legalabbis sikeresen leforditotta a Xep128-at MacOSX-re. Azert erdekes, majd ha sikerul a kapott binarist is kinyerni :D akkor valaki megnezhetne, akinek van Mac-je, hogy mukodik-e egyaltalan .... Na, orulhessek mar valaminek - nezzetek el nekem - akkor mar lesz linux, win32, win64 es macosx build is.
Title: Re: Xep128
Post by: Tutus on 2016.July.20. 09:21:32
Ez nagyon jó hír :) Nekem iMac-em van és szívesen tesztelem ha kapok lefordított változatot. :)
Előre is köszi :)
Title: Re: Xep128
Post by: DrPrery on 2016.July.20. 13:49:29
... akkor mar lesz linux, win32, win64 es macosx build is.

Na, a Linux-ot átraktam 64bit-re, most már jöhetnek a .deb-ek... :)
Title: Re: Xep128
Post by: lgb on 2016.July.20. 18:39:07
Na, a Linux-ot átraktam 64bit-re, most már jöhetnek a .deb-ek... :)

Latom, a nemzetkozi helyzet fokozodik :-P :-P
Title: Re: Xep128
Post by: DrPrery on 2016.July.20. 19:08:18
Latom, a nemzetkozi helyzet fokozodik :-P :-P

:smt042

Hajjaj, Virág elvtárs....  :)
Title: Re: Xep128
Post by: lgb on 2016.July.20. 19:38:47
Itt egy 64 bites deb csomag Ubuntu 16.04-hez ("Xenial"). Na most vmi grafikus tool-al ez nem tudom mire fog menni, en maradnek parancssornal :) Szoval:

Code: [Select]
sudo bash
apt-get update
dpkg -i xep128_0.3+20160720192823.deb
apt-get -f install
/usr/local/bin/xep128-download-data
exit

Nyilvan a dpkg -i utan esetleg eleresi uttal kell beirni, ha nem az aktualis konyvtarban van a deb. Utana lehet hiba adodik, no para: ez abbol van, hogy esetleg vmi dependency nem teljesul. Az utana kovetkezo apt-get -f install ezt hivatott korrigalni (ez normalis, mivel a dpkg low-level csomagkezelo es nem foglalkozik a dependency-vel, mig az apt-get igen, de azzal meg siman egy deb nem telepitheto, mivel nem repository-ban van). Az a download-data cuccos meg arra jo, hogy letolti a combined.rom -ot. Ez utobbi amugy elvileg postinstall script-ben is lehetne a deb-en belul es akkor magatol megcsinalja, ebbe most nem mennek bele, mivel a tavlati tervem amugy is az (minden platformra, tehat windows-ra is), hogy combined.rom es disk image nelkul is siman megy, max megkerdezni elso inditasnal, hogy le kene toltenie, es beleegyezel-e).

Oszinten szolva amugy nem probaltam ki, hogy "clean" ubuntu-n mit csinal, mivel nalam amugy is telepitve van mindenfele cuccos, nalam megy, de azert ... :) Nem egy tesztelt feature :D

disk image-et nem csinal, igy reklamlani fog indulasnal, de attol elindul. Mint irtam, legalabb egy ures image-et maga ala tolhat majd kesobb automatice elso inditasnal (amugy egy ures akar 256Mb disk image egesz jol tomoritheto custom run-length tomoritessel ugy lett nekem valami 5kbyte ... az meg siman elfer a binarisban is, hogy kibontja magabol, es akkor meg letolteni sem kell, a combined.rom ehhez mar kicsit nagyobb, meg ott "jogi" keresek miatt is erdekes, mivel ugye azert EXOS stb nem feltetlen free software es foleg nem GNU/GPL ...).
Title: Re: Xep128
Post by: DrPrery on 2016.July.20. 20:05:35
Nos, "csakazértis" grafikus tool-lal raktam fel :mrgreen:
No problem, a dependency-k köszönik, jól vannak :)  (főleg, hogy ez már nem egészen clean install, mert nyakra-főre felpakoltam mindenféle sdl2 dev-lib-eket is, gondolunk a jövőre... :)

Egyelőre itt tartok: :)

[attach=1]

Title: Re: Xep128
Post by: lgb on 2016.July.20. 20:42:57
Nos, "csakazértis" grafikus tool-lal raktam fel :mrgreen:

:D :D Hat amugy lehet akkor is felajanlana a dependency korrigalast magatol, nem tudom, eletemben nem probaltam meg ezt a lehetoseget GUI-val pedig mar 20 eve Linuxon tolom :-P

De ezek szerint akkor legalabb mukodni latszik, ez is valami :)
Title: Re: Xep128
Post by: DrPrery on 2016.July.20. 20:57:38
:D :D Hat amugy lehet akkor is felajanlana a dependency korrigalast magatol, nem tudom, eletemben nem probaltam meg ezt a lehetoseget GUI-val pedig mar 20 eve Linuxon tolom :-P

De ezek szerint akkor legalabb mukodni latszik, ez is valami :)

A GUI az install-kor kiírt valami olyasmit, hogy nincs dependency probléma, ezek szerint figyelne erre is? Tudja a szösz...

Mellesleg "kézzel" bemásoltam a files könyvtárba a /root/.local stb.,stb. helyre a kipróbálandó cuccokat, de csak miután root-ként indítottam a Double Commander-t, mert addig a Linux állandóan a mancsomra vert ezért a merényletért... :ds_icon_cheesygrin:  

Hja, Windows-os beidegződések... :mrgreen:
Title: Re: Xep128
Post by: lgb on 2016.July.20. 21:37:36
Hey! Ez nem windows, root-kent nem futtatunk semmit ... foleg nem grafikus stb cuccot, az ilyen windows adminisztratorkent hasznalja a gepet cuccos az szerintem egy security remalom lehet :)
Title: Re: Xep128
Post by: DrPrery on 2016.July.20. 22:00:35
Hey! Ez nem windows, root-kent nem futtatunk semmit ... foleg nem grafikus stb cuccot, az ilyen windows adminisztratorkent hasznalja a gepet cuccos az szerintem egy security remalom lehet :)

Hehe, sejtettem, hogy botrány lesz... :mrgreen:
Mentségemre szolgáljon, hogy hirtelen felindulásból követtem el a dolgot (Windows-os befolyásoltság alatt álltam, tisztelt bíróság...), a jövőben tartózkodok az efféléktől... :)

Title: Re: Xep128
Post by: lgb on 2016.July.20. 22:08:43
Hehe, sejtettem, hogy botrány lesz... :mrgreen:
Mentségemre szolgáljon, hogy hirtelen felindulásból követtem el a dolgot (Windows-os befolyásoltság alatt álltam, tisztelt bíróság...), a jövőben tartózkodok az efféléktől... :)

Na jo, 1 ev _felfuggesztett_ ... :D
Title: Re: Xep128
Post by: lgb on 2016.July.20. 23:29:27
Na, Xep128 for OSX

http://xep128.lgb.hu/files/xep128.osx

Hat ezt sikerult nagy nehezen trukkosen kinyerni a Travis OSX build process-ebol megkerulve a hivatalos deploy cuccokat :-P Ez elvileg vmi Mach-O 64 binaris vagy mi a fene :) Oszinten, Mac-et meg soha nem is lattam kozelrol, nem hogy hasznaltam volna. Nem tudom mit lehet vele kezdeni ...

Amire azert rajottem, mikozben Travison probaltam osszehozni OSX ala build-et, egy napi guglizas, probalas, 5 perc varakozas, eredmeny megtekintese (mivel nincs Mac-em mindig meg kell varni a Travis-t hogy mit csinal, de az neha 5-10 perc is, szoval igy eltartott egy darabig amig lepesrol lepesre kiserletezessel rajottem ...) algoritmussal:

Kell nyilvan SDL2.0.4 MacOSX ala. En ezt ugy csinaltam, hogy okosan kigugliztam, van vmi "Homebrew" ami egy pl Debian apt-get-hez hasonlo cucc, csak OSX-re. Szoval az kell, aztan:

Code: [Select]
brew update
brew install sdl2

Parancsok. Ezek utan mar van remeny, hogy a fenti binaris csinal valamit, ha mast nem is, akkor hibat ir ki :D Mivel kene hozza a combined.rom is, amit a fenti futtathato binaris melle kell helyezni. Pl innen:

http://xep128.lgb.hu/files/combined.rom

Ha ez is megvan, akkor jobb esetben mar tenyleg emulal is valamit a cucc (bar SD image-ert meg sikithat, de azt leOKzva, elvileg vmit csinalnia kene mar).

Bocsanat a sok szerencsetlenkedesert, de hat ez igy is kisebb csoda, hogy barmit tudtam vele kezdeni ... :-D
Title: Re: Xep128
Post by: lgb on 2016.July.21. 15:19:07
Ja, homebrew alatt ezt ertem OSX-re: http://brew.sh/
Title: Re: Xep128
Post by: lgb on 2016.July.22. 08:13:14
Latom minden kedves OSX-es emberket elijesztettem a bonyolult instrukciokkal amit en is csak guglibol tudok es a valosagban meg csak nem is lattam? :D

Latom, kene valami "kaloz" OSX nekem ami virtualizaltan muxik pl Linuxbol, igy nehez lesz barmit fejleszteni (win-em sincs, de legalabb arra ott a wine ...).

Amugy talan brew repository-ba fel lehetne tolni akkor eleg lenne elvileg a brew install xep128 (ha homebrew maga installalva van mar) es kezeli a dependency-ket meg minden, de nem akarok eloreszaladni :-P
Title: Re: Xep128
Post by: Ep128 on 2016.July.22. 23:50:41
Nekem csak iOS van, szóval nem tudok hozzászólni... :-D (Amúgy poén lenne, ha valaki kitalálná az iPhone -on futó Ep128emu -t /Xep128 -at. :-) )
Title: Re: Xep128
Post by: lgb on 2016.July.23. 00:39:35
Nekem csak iOS van, szóval nem tudok hozzászólni... :-D (Amúgy poén lenne, ha valaki kitalálná az iPhone -on futó Ep128emu -t /Xep128 -at. :-) )

Besztos. Nekem az Android is eleg lenne, hogy oszinte legyek :D Bar, Xep128-nal _elvileg_ nem lenne nehez, az SDL miatt marmint, ami tamogatja az iOS-t is szerintem. Komolyan, itt nagyobb gond maga a build kornyezet, nem az benne a nehez, hogy nekem kell kodolgatni uj platformra portolasnal, max par kisebb modositas kell (pl OSX-re kvazi semmi modositas nem kellett, max annyi, hogy a GTK ki van kapcsolva hogy ne kelljen - FILE: dialog ablak - meg a travis altal prezentalt apple clangban nem volt definailva a biggest alignment, es meg vmi opciot ne ismert, szoval kb percek kerdese ...).
Title: Re: Xep128
Post by: Tutus on 2016.July.23. 15:12:47
Nem ijesztettél el :) Hasonló parancsokat, mint a linuxnál én is tudok futtatni pl. sudo stb.
De hozzáteszem, nem vagyok nagy guru a programozásban ezét lehet, hogy több segítségre lenne szükségem :D
Title: Re: Xep128
Post by: lgb on 2016.July.23. 20:41:56
Nem ijesztettél el :) Hasonló parancsokat, mint a linuxnál én is tudok futtatni pl. sudo stb.
De hozzáteszem, nem vagyok nagy guru a programozásban ezét lehet, hogy több segítségre lenne szükségem :D

Tudod mi a baj ... Az ami a windows-nal is :) Windows-t - sokak meglepetesre - eletemben nem hasznaltam es nem is volt olyanom se melohelyen se sajat gepemen (na jo ez nem igaz, win3.1-em volt 1-2 honapig talan). Szoval a Xep128 windows portja is erdekes volt :D OSX kapcsan az a bonyolultabb, hogy windows-t azert csak latok masoknal, meg hat az ember csak neha odafigyel amikor masok beszelnek rola, vagy probalnak meggyozni hogy segitsek nekik win-es problemakban stb :) Nade OSX-nel ilyen elmenyem se volt, OSX-t meg csak nem is lattam "eloben" soha ... Szoval ez try&error modszer volt, gugliztam, aztan Travison lepesenkent megprobaltam, es ha nem ment, utanagugliztam stb es igy tovabb. Raadasul ott nem egy OSX-et kapsz amit hasznalhatsz, csak scripteket nyomok fel, ami ott vegrehajtodik, es vagy oke vagy lesz vmi hibauzenet loggal :) Szoval "latni" nem lehet kozvetlenul. Mondjuk a szerencse az, hogy az OSX legalabb UNIX "fajzat" :) legalabbis az alapja, szoval azert nem teljesen "alien" :)

https://github.com/lgblgblgb/xep128/wiki/Compilation

Ez az amit sikerult aztan irnom errol, nyilvan az OSX-es resz az erdekes (illetve ezen kivul persze elotte a "Getting the sources").

O bocsi, kisse belebonyolodtam :) Szoval ez a forditas :D Neked, mivel a xep128.osx mar megvan, max a brew resze az erdekes, nem kell sem a forras, sem pedig annak leforditasa (make dolgok). Ha odaig eljut a cucc, hogy elindul, csak kiir egy ablakot hogy pl nem talalja a "combined.rom"-ot az mar jo. Mert akkor maga az emulator mukodik, es csak azert nem megy tovabb, mert hianyzik az. Ha az a helyzet, akkor pl egyszeuren agyanabba a konyvtarba ahol a xep128.osx van le kell tolteni a combined.rom-ot, pl innen:

http://xep128.lgb.hu/files/combined.rom

Megjegyzem, hogy hosszu tavul celom az, hogy a kozvetlen run-time dependency mellett (szoval az SDL dll/lib, attol fugg melyik platformon mi) mas ne kelljen semmi, es az emulator maga rakedezne, hogy letoltheti-e a ROM-ot es configolhatja-e maganak, mert meg nincs semmi beallitva, es "igen" eseten ezutan automatice mar tenyleg mukodne is.
Title: Re: Xep128
Post by: Tutus on 2016.July.24. 07:29:33
Oké, itt most a legnagyobb gond, hogy az .osx kiterjesztést nem ismeri a rendszer, .dmg az installálható kiterjesztés.
Utánanéztem de a google képtelen hasznos infókat adni az .osx kiterjesztésről...
Title: Re: Xep128
Post by: Zozosoft on 2016.July.24. 07:38:06
Utánanéztem de a google képtelen hasznos infókat adni az .osx kiterjesztésről...
Idézőjelbe kell rakni, hogy ne arra keressen, amire szerinte keresel, hanem arra amit keresel... (az utóbbi években egyre jobban elb...ák a googlét (is)).

Ha jól értem, ez olyasmi mint a .BAT a DOS-nál, valami parancssoros izében kell futtatni.
Title: Re: Xep128
Post by: ergoGnomik on 2016.July.24. 10:28:14
Idézőjelbe kell rakni, hogy ne arra keressen, amire szerinte keresel, hanem arra amit keresel... (az utóbbi években egyre jobban elb...ák a googlét (is)).

Ha jól értem, ez olyasmi mint a .BAT a DOS-nál, valami parancssoros izében kell futtatni.
Azt hittem, hogy a MacOS intelligensebb a Microsoft termékeknél, és a típus információkat metaadatokban tárolja. Ez az el*ott fájlnév kiterjesztés elég gagyi.
Title: Re: Xep128
Post by: lgb on 2016.July.24. 12:18:28
Oké, itt most a legnagyobb gond, hogy az .osx kiterjesztést nem ismeri a rendszer, .dmg az installálható kiterjesztés.
Utánanéztem de a google képtelen hasznos infókat adni az .osx kiterjesztésről...

Azt en adtam neki - nem "jelent" semmit :) Lehetett volna .osx helyett .kiskutya is akar :D Ez egy sima futtathato file. Nem telepito, vagy valami, hanem maga a binaris program. Szerepeben ugyanaz, mint windows-nal a xep128.exe. Azert kapott valami "vegzodest" - csak igy random modon - mert ha siman xep128 a neve akkor utkozik a xep128 -al ami a Linux-os verzio, es forditasnal kulonbozo nevek kellenek nekem, hogy ne irjak az eredmenyek egymast felul. Atnevezheted barmire.

Itt jon az, hogy sajnos  nem tudom, OSX-nel ez grafikus feluleten hogy mux, de mivel elivleg ugye UNIX szeruseg az OSX, egy terminal ablakbol, ha eppen ott vagy abban a konyvtarban, ahova tetted a cuccost:

Code: [Select]
chmod +x xep128.osx
./xep128.osx

Az elso futtathatosagi jogot ad neki (ez csak egyszer kell), a masodik elinditja. Azt nem tudom megmondani, hogy OSX-en amugy hova illene tenni a programokat, hogy ne kelljen terminalbol inditani, ugye UNIX-ok eseten tipikusan /usr/bin peldaul.

A lenyeg, hogy Windows-al ellentetben ahol pl az ".exe" vegzodesrol ismeri fel az OS, hogy ez program (vagy .com ugye a regi szep idokbol meg a CP/M alapjan ...) UNIX-ban ilyen nincs (valojaban a .dmg sem kiterjesztes ez csak egy Windows-os, ja bocs DOS-os, ja bocs CP/M-es terminologiai szokas), igazabol kiterjesztes fogalma sincs, az csak a latszat, a file jogairol ismeri fel (lasd a chmod parancs). Az mas kerdes, hogy OSX GUI dolgokban ez lehet, mar nem igaz ... Ha jol remlik OSX-ben van pl "resource fork" vagy mi az isten, ami annyit tesz, hogy egy konkret nevu file-t megnyitva tobb "byte stream" tartozik hozza, azaz egyetlen nev alatt elerheto maga a program, az ikonja stb. Na ebben persze ilyen nincs, hisz nem nativ kornyezetbol lett a cucc atvive ugye.

Na, vagy vmi hasonlo :) A ".dmg" amennyire tudom voltakeppen egy disk image OSX-es korokben. Nem is ez a lenyeg, hanem, hogy ez a xep128.osx semmi ilyesmi, ez egy szem futtathato file, nem kell telepiteni, kitomoriteni barmi, csak elinditani.

De kezdem azt hinni, hogy vmi legalabb kaloz :) OSX verzio kell nekem, mert otletem sincs rola, igy meg aztan nehez lesz masoknak ... gondolom :)
Title: Re: Xep128
Post by: lgb on 2016.July.24. 12:52:49
Na magyaran: elnezest minden OSX usertol, hogy ennyire nem ertek az OSX-hez :)

Ha valakit erdekel, ez az amit en latok OSX-bol, a travis altal generalt kimenet a script-ekre amit hozzavagok:

https://travis-ci.org/lgblgblgb/xep128/jobs/146898102

Bar nem tudom regisztralas/login nelkul latszik-e ...
Title: Re: Xep128
Post by: lgb on 2016.July.24. 13:19:08
Azt hittem, hogy a MacOS intelligensebb a Microsoft termékeknél, és a típus információkat metaadatokban tárolja. Ez az el*ott fájlnév kiterjesztés elég gagyi.

Ja, CP/M-nel talaltak fel ugye a "kiterjesztest" :) Meg btw a meghajtobetujelet is. Aztan MS meg "orokolte". A UNIX ellenben feltalalta a konyvtarszerkezetet, meghajtobetujelek meg kiterjesztesek elavultsaga nelkul. MS meg kisse osszegyurta a kettot, vannak konyvtarak es meghajtobetujelek is, ja meg kiterjesztes is. Amugy szerintem a MacOS tenyleg tarol metaadatokat, az az a "resource fork" amit emlitettem, egyetlen filenevhez tobb file stream tartozhat, egyik a "fo" a masik pl metaadat stb. Bar attol meg igaz, hogy amugy akkor is szokas (gondolom emberi szemne is segito) modszer, hogy "ismerteto kiterjeszteseket" biggyesztunk a file nevekbe, meg ha az adott OS szigoruan nem is varja el ezt amugy.

De megegyszer: a xep128.osx altalam kitalalt nev az .osx vegzodessel egyutt, semmi "standard" nincs benne, az .osx itt az en agyszulemenyem, se tobb se kevesebb ...
Title: Re: Xep128
Post by: Zozosoft on 2016.July.24. 13:56:56
amugy akkor is szokas (gondolom emberi szemne is segito) modszer, hogy "ismerteto kiterjeszteseket" biggyesztunk a file nevekbe, meg ha az adott OS szigoruan nem is varja el ezt amugy.
Lásd Enterprise :ds_icon_cheesygrin:
Title: Re: Xep128
Post by: lgb on 2016.July.24. 18:24:01
Nem tudom segit-e, de irtam ilyet:

https://github.com/lgblgblgb/xep128/wiki/Installing
Title: Re: Xep128
Post by: Tutus on 2016.July.25. 12:19:54
Nem tudom segit-e, de irtam ilyet:

https://github.com/lgblgblgb/xep128/wiki/Installing

Az OSX-es xep128.osx-et sehogy nem tudom futtatni. Viszont amit most írtál az nagy segítség, mert egyszer a Homebrew kellett valamelyik fura progi telepítéséhez, de látom, hogy az SDL2 is kell hozzá :) Ha lesz kis időm kipróbálom :)
Title: Re: Xep128
Post by: lgb on 2016.July.25. 12:40:58
Az OSX-es xep128.osx-et sehogy nem tudom futtatni. Viszont amit most írtál az nagy segítség, mert egyszer a Homebrew kellett valamelyik fura progi telepítéséhez, de látom, hogy az SDL2 is kell hozzá :) Ha lesz kis időm kipróbálom :)

De mi az, hogy "nem tudtad"? Marmint mi tortent, ha probaltad, kaptal valami hibat, stb?

Amugy a Homebrew az egy package manager OSX-hez. itt csak azert kell, mert azzal teszed fel az SDL2-t a Xep128-hoz, amugy nem lenne fontos. Sot, nyilvan meg lehetne probalni maskepp is telepiteni SDL2-ot, oszinten nem ertek hozza:

http://libsdl.org/download-2.0.php

Itt pl a run-time resznel van vmi dmg OSX-hez (2.0.4 -es verzio kell). Persze azt nem tudom, hogy ez igy menne-e, amit en probaltam a Travis build infrastrukturavla az a brew altal telepitett SDL2, bar elvileg uaz, dehat ki tudja, mas path, akarmi ...
Title: Re: Xep128
Post by: Tutus on 2016.July.25. 13:03:15
Code: [Select]
chmod +x xep128.osx
./xep128.osx

Ezt az OSX parancssorból nem tudta értelmezni, azt írta, hogy nincs ilyen parancs...
Grafikus felületről indítva pedig "nem futtatható program".

Lehet, hogy .dmg-s kiterjesztést kellene kierőszakolni Travisból, a .dmg olyan mint Windows alatt a .exe vagy .com
Title: Re: Xep128
Post by: lgb on 2016.July.25. 13:14:03
Code: [Select]
chmod +x xep128.osx
./xep128.osx

Ezt az OSX parancssorból nem tudta értelmezni, azt írta, hogy nincs ilyen parancs...

Na jo, de abban a konyvtarban altal a parancssorban, ahova tetted a xep128.osx -t? Illetve a chmod +x kezdetu sor az hiba nelkul oke volt, csak a ./xep128.osx nem? Elvileg:

Code: [Select]
ls -la
Aktualis konyvtarrol lista, akkor abban ott kell szerepelnie a xep128.osx-nek is (felteve ha oda tetted ugye!!), kb hasonlo sorral:

Code: [Select]
-rwxr-xr-x  1 travis  staff  531216 Jul 25 09:51 xep128.osx
Nyilvan a travis es staff helyett a sajat usered/group-od all. Na, de ez csak egy pelda volt :D

Amugy az is gond lehet, hogy ki tudja mit csinal az OSX, lehet nem is engedne security okok vagy mas miatt igy siman futtatni, sajnos ezt nem tudom :(

En max altalanos UNIX ismeretek alapjan saccolom am ezt be, hogy mikepp kene, nem tudom :) Az mindenesetre igaz, hogy Travis-on minden Apple/OSX stb tudas nelkul csak siman Linux alatt is amugy futo shell script-eket stb vagtam hozza, es ugyanugy megevett mindent, tehat mondhatni UNIX szeru :D
Title: Re: Xep128
Post by: lgb on 2016.July.25. 14:52:04
Mac-es exkollegat megkertem, hogy probalja ki, azt mondta neki megy (bar o azert eleg melyen ert is hozza, nem ugy mint en, hehehe) :-) Bar beztos nem tul user friendly az egesz jelen allapotban az ugye igaz :(
Title: Re: Xep128
Post by: Zozosoft on 2016.July.25. 15:01:16
Mac-es exkollegat megkertem, hogy probalja ki, azt mondta neki megy (bar o azert eleg melyen ert is hozza, nem ugy mint en, hehehe) :-)
Akkor már csak írja le, hogy hogyan csinálta :-)
Title: Re: Xep128
Post by: Tutus on 2016.July.25. 15:12:21
Anno még kb. 5 éve telepítettem Debian Linuxot (amikor még nem volt kiforrott grafikus felülete), alá web szervert stb. Tehát valamennyire még emlékszem a parancsokra. Ahogy írtad is, MAC OSX Unix alapú, tehát van a kettő között hasonlóság.
Nem tudom mit cseszhettem el, ha hazaérek megnézem újra :)
Title: Re: Xep128
Post by: lgb on 2016.July.25. 15:16:31
Anno még kb. 5 éve telepítettem Debian Linuxot (amikor még nem volt kiforrott grafikus felülete), alá web szervert stb. Tehát valamennyire még emlékszem a parancsokra. Ahogy írtad is, MAC OSX Unix alapú, tehát van a kettő között hasonlóság.
Nem tudom mit cseszhettem el, ha hazaérek megnézem újra :)

Nezd, nem allitom, hogy te cseszted el, ugye en meg latatlanban irtam egy "tutorialt", szoval ketseges, hogy egyaltalan ugy jo-e :)
Title: Re: Xep128
Post by: Tutus on 2016.July.25. 22:50:54
Oké, rossz helyre másoltam a xep128.osx fájlt, de most ezeket a hibaüzeneteket kapom:
(A combined.rom is ugyanott van)

(http://www.enterpress.news.hu/osx.jpg)
Title: Re: Xep128
Post by: lgb on 2016.July.25. 23:23:13
Oké, rossz helyre másoltam a xep128.osx fájlt, de most ezeket a hibaüzeneteket kapom:
(A combined.rom is ugyanott van)

(http://www.enterpress.news.hu/osx.jpg)

Szep :) A "dyld" gondolom az OSX dynamic loader-re lesz. Az a baj, hogy ahogy elnezem (mar emennyire gyanitom) a gepeden van egy kis lib keverdes, az SDL dolgai kapcsan, eleve 2.0.0-as SDL-t akar de meg azt se igazan talalja, pedig eleve 2.0.4-ezhez kene. Esetleg lehet azert, mert volt SDL-ed mas miatt mashonnan/akarmi, aztan itt kisse osszekeveredtek a dolgok? Ehhez en mar keves vagyok OSX temaban boven, bocsanat ...

Megjegyzem, hogy persze az optimalis megoldas a statikusan linkelt binaris lenne. Oke, joval nagyobb lenne a programallomany merete, de tutira nem kell neki dynamikus linkeles az SDL-hez legalabb igy azt beszerezni sem kell. Hat mindennek arra van. Kicsit emlekeztet a problema a windows DLL kerdesekre, ha jol figyelunk :D

A kepet elnezve az is fura, hogy a brew-val installat SDL 2.0.4 amugy az /usr/local/lib -ben lenne (symlinkelve mondjuk, de mind1), itt meg valami /usr/local/opt/sdl2/lib ami gondolom onnan jon, hogy ez valami mas forrasbol feltett SDL (vagy legalabbis az volt, mert raadasul nem is talalja szegeny, ahogy nezem).

Bar gondolom ezzel most ki vagy segitve igazan, kb annyira mint en :-D Azert felre ne ertsd am, koszonom szepen, hogy megprobalsz megkuzdeni vele!!

Ez a parancs mit ad eredmenyul?

Code: [Select]
otool -L ./xep128.osx
Kozben gugliztam egy okossagot, amivel le lehet butitani az OSX-et Windows-za :D marmint abban az ertelemben, hogy melle is lehet tenni dinamikus linkelendo objektumokat nemi trukkel, max ami a windowsban .dll az itt .dylib lesz de vegulis mind1 ... Meglatjuk, at tudom-e ultetni a gyakorlatba.
Title: Re: Xep128
Post by: lgb on 2016.July.26. 09:19:34
http://xep128.lgb.hu/files/xep128_osx.zip

Ujabb probalkozas :) Ezuttal zip, es benne van minden - elvileg - amit nyilvan egy helyre kell kibontani. Benne most xep128 es nem xep128.osx a filenev, de ez filenev kerdese, amugy ez total mindegy. Annyi valtozas van, hogy vmi otool varazslattal a futtathato allomanyban az SDL dylib dependency eleresi utja at van irva az Apple fele "trukkos" @executable_path/... ertekre, igy ott fogja keresni, ahol a xep128 file maga van. Remelhetoleg ... Ezert is van a libSDL2-2.0.4.dylib file is a "csomagban". Igy viszont elvileg legalabb SDL-t sem kell kulon installalni, csak melle tenni, tehat kb mint a dll windows eseten a "mellekeve" szitu eseten marmint.
Title: Re: Xep128
Post by: Tutus on 2016.July.26. 12:16:30
http://xep128.lgb.hu/files/xep128_osx.zip

Ujabb probalkozas :) Ezuttal zip, es benne van minden - elvileg - amit nyilvan egy helyre kell kibontani. Benne most xep128 es nem xep128.osx a filenev, de ez filenev kerdese, amugy ez total mindegy. Annyi valtozas van, hogy vmi otool varazslattal a futtathato allomanyban az SDL dylib dependency eleresi utja at van irva az Apple fele "trukkos" @executable_path/... ertekre, igy ott fogja keresni, ahol a xep128 file maga van. Remelhetoleg ... Ezert is van a libSDL2-2.0.4.dylib file is a "csomagban". Igy viszont elvileg legalabb SDL-t sem kell kulon installalni, csak melle tenni, tehat kb mint a dll windows eseten a "mellekeve" szitu eseten marmint.

Nagyon köszi! :) Este próba (csak tudod, itt bent a munkahelyen PC-n dolgozom és otthon van a Mac :) ).
Csak összehozzuk valahogy (vagyis Te :D )
Title: Re: Xep128
Post by: lgb on 2016.July.26. 12:49:38
Nagyon köszi! :) Este próba (csak tudod, itt bent a munkahelyen PC-n dolgozom és otthon van a Mac :) ).
Csak összehozzuk valahogy (vagyis Te :D )

Azert a Xep128 nem egy ep128emu, csak elore szolok :D
Title: Re: Xep128
Post by: Povi on 2016.July.26. 17:24:43
hm, most nézem a forrást, hogy az Am9511 emu is benne van :-)
egyszer már jó lenne egy működő példányt találni a kártyából!
és végre igazi hw-n is lefuttatni a teszteket!
Title: Re: Xep128
Post by: lgb on 2016.July.26. 18:17:58
hm, most nézem a forrást, hogy az Am9511 emu is benne van :-)
egyszer már jó lenne egy működő példányt találni a kártyából!
és végre igazi hw-n is lefuttatni a teszteket!

JSep-ben is volt :) Oda irtam meg eloszor (az xep128-ban levoben vegulis csak "C-sitettem" a regebbi JS kodomat az Am9511 tekinteteben). Amugy lehet total nem is mux. Ugye pont az a baj, hogy nincs mivel osszehasonlitani pl valodi hardware-rel ... :(

Amugy - bar offtopic es volt is szo mar rola - jo lenne valami konyebben elerheto, esetleg "nagyobb teljesitmenyu" FPU szeru cucc. Mivel az Am9511 EP sw tamogatottsaga sem lehet tul magas (hmmm), velemenyem szerint ilyen elven valami korszerubb, de elsosorban (jo, hat maga az EP sem "korszeru" ha szigoruan a mai kort nezzuk, de ugye az Am9511-nel meg kel neki +12V meg istennyila, plusz nehez is beszerezni raadasul) konyebben elerheto megoldas is szoba johetne :)
Title: Re: Xep128
Post by: Povi on 2016.July.26. 20:40:43
JSep-ben is volt :) Oda irtam meg eloszor

Ja, ja, arra emléxem.

Amugy - bar offtopic es volt is szo mar rola - jo lenne valami konyebben elerheto, esetleg "nagyobb teljesitmenyu" FPU szeru cucc.
Az a baj, hogy már a umega FPU (http://micromegacorp.com/umfpu-v3.html) se kapható. Egyébként nekem az nem is szimpatikus, eleve megy valami 30MHz-cel, meg igazából ez csak egy MCU, amire írtak valami fw-t, szóval nem igazán hardveres FPU.
Title: Re: Xep128
Post by: lgb on 2016.July.26. 21:34:55
Ja, ja, arra emléxem.
Az a baj, hogy már a umega FPU (http://micromegacorp.com/umfpu-v3.html) se kapható. Egyébként nekem az nem is szimpatikus, eleve megy valami 30MHz-cel, meg igazából ez csak egy MCU, amire írtak valami fw-t, szóval nem igazán hardveres FPU.

No igen. Dehat ilyen az elet :( Pl ethernet wiznet 5300-al, az is egy MCU kb hasonlo vagy "jobb" adottsagokkal ... Vagy most van nalam ez a "par dollaros wifi modul" (ESP mittuomenmi). Elvileg meg poenabb lenne wifis EP, de ugye abban is egy MCU van vegulis ... Szoval ...

Az is eszembe jutott, hogy valami kevesbe Harvard architektura mint egy atlan MCU (PIC, AVR), az vicces lenne, mert legalabb olyat lehetne, hogy az "EP a fonok" es igy "programozhatna" a cuccost. Na jo pelda erre a Parallax Propeller mondjuk, amirol mar szinten volt szo. Vegulis, ha belegondolsz, PC-ben a GPU is csak "addon" (maga a gep menne harcules mono kartyaval is), de mint addon lehet, szamitasi teljesitmenyben siman porban hagyja a CPU-t, bar az is igaz, hogy kisse mas jellegu. Ez esetunkben is igaz :)
Title: Re: Xep128
Post by: Tutus on 2016.July.26. 21:54:02
Kedves lgb :D SIKER :D

(http://www.enterpress.news.hu/XEP128_on_MAC.jpg)

Köszi szépen! :bow:
Title: Re: Xep128
Post by: lgb on 2016.July.26. 22:17:45
:) :) Na, kiraly. Amugy tenyleg full screen-ben indul magatol? Kollega akit kertem, hogy probalja ki, vmi olyasmit mondott. Ami fura, mert F11-el kene neki csak (illetve F11-el lehet ablak/fullscreen kozott valtani).
Title: Re: Xep128
Post by: Tutus on 2016.July.27. 06:29:35
Előtte azért még dob brutál hibaüzeneteket, majd megjelenik egy kis ablak valami üzenettel és egy egy OK gombbal, ezt megnyomva full screenben indul. Azt még ki kell deríteni, hogyan lehet kisebbre venni az ablakot, de engem nem zavar így sem.
Majd csütörtök este küldök print screent az indulás előtti dolgokról :)
De a lényeg, hogy megy Mac-en is :D
Title: Re: Xep128
Post by: lgb on 2016.July.27. 07:20:26
Előtte azért még dob brutál hibaüzeneteket, majd megjelenik egy kis ablak valami üzenettel és egy egy OK gombbal, ezt megnyomva full screenben indul. Azt még ki kell deríteni, hogyan lehet kisebbre venni az ablakot, de engem nem zavar így sem.
Majd csütörtök este küldök print screent az indulás előtti dolgokról :)
De a lényeg, hogy megy Mac-en is :D

Hmm, azert jo lenne tudni mi az a "brutal" hibauzenet meg a masik uzenet :) Az, hogy nincs SD card image az normalis persze, ha nincs odamasolva, ami nem is volt a ZIP-ben benne ugye. Meg elvileg F11-el lehet valtani balka/fullscreen kozott, csak mondjuk fura mert eleve ablakban kene indulnia, es csak egy F11-re fullscreen-be valtania hmmm.

Amugy, ha letoltesz egy image file-t es sdcard.img (a nev fontos, "magatol" configolas nelkul csak akkor fogja hasznalni, ha pontosan ez a neve) neven oda masolod, ahol a program is van, elvileg automatikusan hasznalni fogja, es onnantol F: alatt ugye (meg meg tobb drive, ha tobb particio van rajta) elerheto. Pl itt van egy (256Mbyte): http://xep128.lgb.hu/files/sdcard.img

Amugy uj verzioban (szerintem a nalad levo meg nem az) ha nincs meg a _default_ sd card image, es nem configolt az ember mast, akkor megkerdezi, hogy letrehozzon-e neked egy ures image-t. Illetve ez kesobbiekben meg tovabb lesz infomitva, akkor azt is megkerdezi, hogy letoltson-e neked egyet magatol, es ez utobbit a ROM-ra is, hogy igy meg egyszerubb legyen, ha valaki csak most probalja a cuccot eloszor ...
Title: Re: Xep128
Post by: Tutus on 2016.July.28. 22:06:31
XEP128 on Mac osx:
Most már hibaüzenetek sincsenek induláskor, sdcard.img is szépen betöltődik, egy álom az egész :D

Sőt a full screen is megoldva (Ctrl-Cmd-F billentyűparancs), íme:

(http://www.enterpress.news.hu/XEP128_on_Mac-osx.jpg)

Köszönet minden osx felhasználó nevében :)
Title: Re: Xep128
Post by: Attus on 2016.July.29. 12:02:54
Én teljesen leálltam a xep128 projecttel az UHU linux terén, nem követtem már vagy egy éve a fejleményeket.
:oops:
Most, hogy látom, hogy Mac Os -n is döng, elgondolkodtam azon, hogy megint rácuppannék egy frappáns és júzerbarát csomag készítésére, amit a nemsokára megjelenő UHU-UBK1 linuxunkra lenne telepíthető,
Mi, hárman emitt  (https://github.com/uhulinux/ub-dev) dolgozunk vadul az UBK1 projecten, ami a RIA fantázianevet fogja kapni. (Rezső, Imre, Attila, ria, ria, HUNGÁRIA  ;-)  )
Szívesen bemelném a csomagkészletünkbe, ha arra érettnek véled, az ep128emu (https://github.com/uhulinux/ub-dev/tree/b605efebe88cc6dc7ad0b585bd1ea4d7df0ec818/ep128emu) mellé, mely már része a repónknak.
Title: Re: Xep128
Post by: Attus on 2016.July.29. 12:10:50
Persze, ha van már belőle valódi release, nem csak pre-release.
Ha nekiállok, biztos, hogy zargatni foglak egy, s más kérdéssel, javaslattal.
Nekem nem sürgős, amúgyis nagyon leköt most a leendő RIA.
Title: Re: Xep128
Post by: lgb on 2016.July.29. 12:24:33
Persze, ha van már belőle valódi release, nem csak pre-release.
Ha nekiállok, biztos, hogy zargatni foglak egy, s más kérdéssel, javaslattal.
Nekem nem sürgős, amúgyis nagyon leköt most a leendő RIA.

:) Hat, a release ugye nehez kerdes, ki mit tekint annak. Meg "penzes" software eseten is van aki a trutyi alig mukodo cuccot mar release-eli, kb 10.0-as verzioszammal :) En ugy vagyok vele, hogy addig nem nevezem "stable"-nak amig nem eri el azt a szintet, amit elkepzelek, annak ellenere, hogy ettol mar hasznalhato vegulis :D szoval nehez kerdes.

Masreszt, oszinten, nem igazan ertek en a deb csomagok _normalis_ eloallitasahoz :) Ha most letoltod, es "make deb"-et (nem dep :) ) adsz neki, csinal egy deb csomagot, de ez ugye ilyen nyers binaris vackolas, valodi normalis modon ezt ugy kene, hogy legyen szepen source csomag, meg minden ... Ennyire meg nem astam bele magam ......
Title: Re: Xep128
Post by: Attus on 2016.July.29. 20:42:07
Hát mi UHU alá csomagok tömkelegét csináljuk, melyet a csomagkészítő mechanizmusunk végén a binárisokat, meg információk tömkelegét az apt csomagkezelő részére egy rakás extra információval egyetemben a dpkg rámol össze deb tömörítménnyé és átnevezi a terméket uhu kiterjesztésűre, mivel a mieinket nem eszi meg más apt-ot használó rendszer, tehát sem debian, sem ubuntu, sem PcLOS.
Elég jól ismerem, hogy mi kell egy júzernek egy progi használatba vételéhez, tehát elkerülendő részéről minden barkács a használatba vételéhez.
Az ep128 csomagunkat is csak feltelepíti a synapticcal a tárolónkból, majd a menüből (kde, gnome, mate, vagy bármi, máris indíthatja és használhatja.
Valami ilyesmire törekszem majd a xep128 esetén is, majd ha időm engedi, nekihasalok.
Az upstream -be meg semmi disztró specifikus dolog nem való, habár manapság a denbian rules, meg a az rpm-eknek a spec cuccokat sokszor beveszik a fejlesztők. Te is egy ilyen fejlesztő vagy és mivel ubit használsz nyilván azért vetted bele a deb generálást is. Ha gentoo -t használnál, meg nyilván egy ebuild is lenne a github tárolódban.
Title: Re: Xep128
Post by: Attus on 2016.July.29. 20:58:53
Ja, és kerüljük az alfa, béta, pre, meg hasonló forrásokat, hisz a júzereknek ilyenek nem valók, hanem csakis a stabil, bevált cuccok.
Persze ez alól mindig akadnak kivételek, mikor csakis alpha, vagy hasonló van az illetőből. Ilyend például az 0ad nevű, szerintem kiváló stratégiai játék (https://play0ad.com/) , mely kifogástalanul használható alpha volta ellenére.
A másik ellenpélda a Linuxmint cinnamon cuccai, ahol szinte hetente újabb release -t nyom clefebvre. Ott (https://github.com/linuxmint/Cinnamon/releases) a mai napig 122 darab release született.
:)
Title: Re: Xep128
Post by: lgb on 2016.July.29. 23:40:17
Hat na jo, de Xep128 meg erosen beta vagy inkabb elotte :D Jellegebol adodoan ... A debian stuff az upstream stb dolgokban, ebben egyet ertek, vegulis en mint sajat magam end usere :) is hasznosnak talalom azt, hogy tudok "amator" deb csomagot csinalni es feltenni 1-2 gepemre aztan egyszeruen :) Vagy 1-2 embernek jol jon, stb. Ettol ebben a formaban persze nem kell/szabad feltetlen berakni semmilyen distrib-be, az mar igaz!
Title: Re: Xep128
Post by: Attus on 2016.July.30. 16:03:57
Várok vele, de magamnak újra megnézem!
:)
Title: Re: Xep128
Post by: lgb on 2016.July.30. 21:13:46
Várok vele, de magamnak újra megnézem!
:)

Hat meg varhatsz egy ideig akkor :) Mert ugye egy software-nel kijon uj feature-okkel kovetkezo verzio majd, abbol lehet lett alpha meg beta, meg pre stb. Aztan lesz stable, release. Kozben ott addig az elozo stable verzio. De ugye xep128 nincs azon a szinten, hogy el lehessen mondani, hogy van mar legalabb _egy_ stable verzio :D ugyanis en azt neveznem annak, amikor teljesiti egy emulatortol elvarhato alap dolgokat, es ebbol sajna meg hianyzik azert "ez meg az" :-/
Title: Re: Xep128
Post by: Zozosoft on 2016.August.31. 18:36:49
Most mi a legfrissebb Windowsos verzió?
Nálam 06.29-es 64 bites van, és 04.14-es 32 bites.
Title: Re: Xep128
Post by: lgb on 2016.September.03. 23:57:53
Most mi a legfrissebb Windowsos verzió?
Nálam 06.29-es 64 bites van, és 04.14-es 32 bites.

Fuha :) Nehezet kerdeztel. Ezt is betoltam am Travisba/bintray-be :) Szoval ami ep128emu temaban toltam rizsat, erre is vonatkozik.

https://bintray.com/lgblgblgb/generic/xep128

Aztan ott a Files fulon. Itt meg OSX build is van btw. Elvileg ez is automatikus, ahogy ep128emu-nal leirtam. Mondjuk nem is artana tesztelni, hogy ezek mennek-e, mert igy kisse at lett a build keverve. Azert gondoltam, hogy ez az automatizmus jo otlet, mert igy mindig elfelelejtem, hova milyen eldugott kis exe-t raktam es miert :D es hogy mikor lett "kiadva", igy bintray-en legalabb latszik kb (habar amugy nem normalisan csinalom, elvileg bintray tudna verziokezelest stb, elozo verziokat is engedni letolteni ... en voltam a lusta, igy is eleg nehez volt ezt osszekalapalnom github/travis/bintray-t rabirni hogy egyutt dolgozzanak).

Itt deb csomag is van, Ubuntu 16.04 64 bithez, de nem tul szep modon van eloallitva :D Mondjuk Zozo, teged ez biztos kevesbe erdekel :)
Title: Re: Xep128
Post by: Zozosoft on 2016.September.04. 08:03:58
Működnek. Akkor maradok a 64 bitesnél, ha jól értem a jövőben ez is automatikusan készül?

Van egy bug: működik az SD emuláció :ds_icon_cheesygrin:
Az a hiba, hogy SD kártya azonosító információkban nem az image mérete adódik át, hanem valami 14 megás méret.
És itt jön a másik hiba, hogy nem lesz sector not found, ha a kártya méretén túlról van olvasva.

És egy apróság: az ikon csak az ablak sarkában jelenik meg, az EXE fájlon nem.
Title: Re: Xep128
Post by: geco on 2016.September.04. 09:59:17
:smt041 :smt041 :smt041
Nem tudom mi történt, de már nálam is működik a Winfos verzió :ds_icon_cheesygrin:
Title: Re: Xep128
Post by: lgb on 2016.September.04. 16:28:22
Működnek. Akkor maradok a 64 bitesnél, ha jól értem a jövőben ez is automatikusan készül?

Igen. Pont azert szenvedtem vele ennyit, hogy ne kelljen mindig leforditanom nekem, becsomagolni, kitenni, aztan elfelejtem, hogy XYZ verzio csak win32-bol ment ki, stb. Szoval jobb ez igy, szerintem :D Plusz, ha valami olyat csinalok, hogy nem fordul, legalabb sikit, es latom, es akkor persze ki sem teszi az eredmenyt letoltesre (igaz, akkor "kezzel" build-elve sem tennem ki, az is igaz - mivel nem lenne mit ha elszall a forditas). A bonusz meg, hogy OSX-re is automatice, ami azert fontos, mert nincs OSX-em, szoval ha a Travis nem tudna, en nem tudnek olyat eloallitani maskepp. Mondjuk ez nekem kevesbe fontos, OSX-eseknek hasznos lehet viszont, termeszetesen! Ez utobbi mas mint a windows, olyanom sincs, de arra van cross-compilerem Linux ala, amivel windows-os exe-t kop ki a vegen, OSX-re ilyen nincs, ezert OSX-en kell forditani (pontositas: van ilyen is, de en nem boldogultam vele - tudom, ez az en bajom - ui Apple X-Code-jat kell letolteni Mac ala es abbol kivarazsolni dolgokat aztan azt osszeganyolni nemi Linuxos cross compilerrel stb ...)

Egy tanacs azert: ha valami hibat talalsz, erdemes megnezni 32 bitesnel is. Oszinten, en csak nekitoltam a forditot, hogy akkr legyen 64 bites is! Nincs ra garancia, hogy nem hoz elo valami hibat ez a muveletem. Maga a kod amugy nem kene, hogy ezen muljon, ui Linux ala is 64 bitesen fejlesztem, amde Linux es Windows 64 bites modelje kozott van nemi kulonbseg (egesz pontosan a long tipus merete nem ugyanaz, egyedul a windows-nal mas, minden mas OS kb persze erdekes modon nem igy csinalja, nem csak a Linux :)). Ez amugy lathato is forditas kozben, ez a GUI kodnal jon elo, szoval ha a file selector ablakkal gond van, az pl gyanus ...

Quote
Van egy bug: működik az SD emuláció :ds_icon_cheesygrin:

Az a hiba, hogy mukodik?! :) Elrontom en, hogy ne mukodjon, ha szeretned :D

Quote
Az a hiba, hogy SD kártya azonosító információkban nem az image mérete adódik át, hanem valami 14 megás méret.

Ez igaz. Lasd itt, van rola hibajegyem is :D

https://github.com/lgblgblgb/xep128/issues/22

Erre gondolsz? Ezzel tisztaban vagyok, es utdom, hogy javitani kellene. Amugy miert fontos ez? Amikor csinaltam az SD supportot, beleraktam a card ID-et fixen, csak ugy random. Mivel ugy lattam, hogy a cuccnak (SDEXT ROM) ez nem gond, ezert igy maradt ... Gondolom azert nem gond neki, mert amugy sem nezi, hanem a particios tablabol kiszedett adatok alapjan olvas, es nem ellenorzni, hogy amugy a kartyara nezve valid-e egyaltalan az ertek (pl olyan particio leirasa van benne ami ra sem ferne a kartyara ...) Neked hol jott elo, hogy ez problema? Azert erdekel, mert en nem lattam olyan esetet, ahol ez gond lenne, bar beismerem, hogy ez igy tenyleg gaz azert :oops:

Quote
És itt jön a másik hiba, hogy nem lesz sector not found, ha a kártya méretén túlról van olvasva.

Code: C
  1. ret = lseek(sdfd, _offset, SEEK_SET);
  2. if (ret != _offset) {
  3.     _read_b = 32; // address error, TODO: what is the correct answer here?
  4.     SD_DEBUG("SDEXT: seek error to %ld (got: %ld)" NL, _offset, ret);
  5.  

Szerintem talan ez a kerdeses resz a forrasban. Lasd a commentet :) Az a gond, hogy nekem SD kartyat hw (SPI busz) szinten emulalva kell valaszt adnom, es nem feltetlen tudom pontosan, hogy mi a szoszt kell mondani ilyen esetben :) De hmnm. Most eszembe jutott, hogy lehet, ez egy masik bug, ha az OS megengedi a seek-elest a file vegen tulra is, akkor nem fogja a fenti lecsapni a problemat ... akkor majd itt bugfix lesz, kerem szepen :D De visszaternek az elozo kerdesemhez, ez neked milyen korulmenyek kozott okoz gondot? Elvileg, valid, nem serult filerendszeru kartyanal nem is szabadna olyan keresnek lenni, ami eljut idaig ... Zozo. Csak *NEM* FAT16-os EXDOS-t csinalsz, es sikerult triggerelni ezt a bugot valahogy? :D :D

Amugy ami feltunt meg, es nem tudom "kinek a hibaja": meg anno amikor csak read-only support volt Xep128-ban SD-re, en hibat (SPI busz szinten marmint) adtam vissza write keresre. Erre ugy reagalt az EXDOS, hogy hibat adott, meg retry stb kerdes, amde onnantol az *OLVASAS* sem mukodott, ha egyszer kapott mar ilyen hibat. Erre azota sem tudok rajonni, hogy ez most nalam hiba, vagy EXDOS ilyen, hogy egy irasi hibat nem toleral, es utana olvasni sem enged? Amugy ez tesztelheto most is: oldd meg, hogy csak olvashato legyen az SD kartya image. Xep128 - elvileg - erre ugy reagal, hogy megnyitja akkor read-only modban (mivel RW nem megy ...) es nem enged ra irni, mivel hat nem is tud.

Quote
És egy apróság: az ikon csak az ablak sarkában jelenik meg, az EXE fájlon nem.

Na ez az, amirol fogalmam sincs. En nem tudom windows honnan veszi az exe file ikonjat. Otletem sincs :) Az balakon azert jelenik meg, mert benne van a forraskodban, ez OS fuggetlen, SDL-el adok neki ikont. De, hogy az exe file-nak maganak van ikonja, azt sem tudtam, hogy ilyet lehet ... Mivel nincs windows-om, ugyebar :D Majd ra-guglizok, nincs para :)
Title: Re: Xep128
Post by: lgb on 2016.September.04. 16:37:40
:smt041 :smt041 :smt041
Nem tudom mi történt, de már nálam is működik a Winfos verzió :ds_icon_cheesygrin:

Mar ketten vagyunk :D Marmint, en sem tudom, mi tortent :D
Title: Re: Xep128
Post by: Zozosoft on 2016.September.04. 17:16:14
Erre gondolsz? Ezzel tisztaban vagyok, es utdom, hogy javitani kellene. Amugy miert fontos ez? Amikor csinaltam az SD supportot, beleraktam a card ID-et fixen, csak ugy random. Mivel ugy lattam, hogy a cuccnak (SDEXT ROM) ez nem gond, ezert igy maradt ... Gondolom azert nem gond neki, mert amugy sem nezi, hanem a particios tablabol kiszedett adatok alapjan olvas, es nem ellenorzni, hogy amugy a kartyara nezve valid-e egyaltalan az ertek (pl olyan particio leirasa van benne ami ra sem ferne a kartyara ...) Neked hol jott elo, hogy ez problema? Azert erdekel, mert en nem lattam olyan esetet, ahol ez gond lenne, bar beismerem, hogy ez igy tenyleg gaz azert :oops:
FDISK...
Amúgy meg pont arra készülök, hogy a SDEXT-ben legyenek mindenféle ellenőrzések :oops:
Title: Re: Xep128
Post by: lgb on 2016.September.04. 17:37:43
FDISK...
Amúgy meg pont arra készülök, hogy a SDEXT-ben legyenek mindenféle ellenőrzések :oops:

Aaaa, oke, FDISK ... Akkor vilagos, nem art, ha tudja, milyen nagy a kartya, kulonben hogy a fenebe hozzal letre vmit ra :)

Ha van kedved segiteni :) Akkor lasd ezt: https://github.com/lgblgblgb/xep128/blob/master/sdext.c

Nem kell aggodni nagyon, csak nezd meg legyszi a 98. sornal kezdodo dolgokat. Oszinten, en lusta voltam kitalalni, hogy ezekbol melyik lehet a kartya merete :D Fentebb a commentben lathato, hogy probalkoztam vele, mar nem emlekszem miert nem tettem bele. Ha te tudod, mit kene modositani az aktualis image file merete alapjan az Uint8 _read_csd_answer es cid-nel, akkor aruld el kerlek, es akkor belapakolom, hogy aszerint modositva adja vissza. Ez igazan nem lenne amugy nagy melo, ha tudja az ember, mit es mire modositson :)
Title: Re: Xep128
Post by: lgb on 2016.September.04. 19:51:04
De! Az is segit am, ha megosztod velem a kodot, marmint az FDISK-es cuccot, abbol csak kitalalom, hogy mit es hogyan akar csinalni es mit kene akkor nekem adni :-P
Title: Re: Xep128
Post by: Zozosoft on 2016.September.04. 20:08:07
Ez a SD low level részben van:
Code: ZiLOG Z80 Assembler
  1.         ld      b,CMD9                  ; Funkció #1: kártya blokkszámának meghatározása (512-bájtos blokkokban) és CSD regiszter beolvasása
  2.         call    sd_send_cmd_null        ; CMD9 küldése: CSD (card specific data) lekérdezése
  3.         xor     a
  4.         cp      e                       ; ZF beállítása a válaszüzenet szerint
  5.         pop     hl                      ; memóriacím a veremből
  6.         push    hl
  7.         ld      bc,00010h               ; 8 szó olvasása
  8.         call    z,sd_readblock          ; adatok olvasása, ha nem volt hiba a parancsküldésnél
  9.         pop     hl                      ; memóriacím a veremből
  10.         jp      nz,sd_rd0               ; ugrás, ha hiba történt
  11.         ld      a,(hl)                  ; CSD struktúra verziószám
  12.         ld      de,0000Ah
  13.         add     hl,de                   ; HL a 10. bájtra mutat
  14.         and     040h                    ; verziószám vizsgálata
  15.         jr      z,sd_io1a               ; ugrás ha Version 1.0 vagy MMCv3
  16.         dec     hl                      ; HL a 9. bájtra mutat
  17.         ld      e,(hl)                  ; Device size alsó bájt
  18.         dec     hl
  19.         ld      d,(hl)                  ; Device size felső bájt
  20.         inc     de                      ; DE= C_SIZE + 1
  21.         ld      h,000h                  ; HL:DE = (C_SIZE + 1) * 256
  22.         ld      l,d
  23.         ld      d,e
  24.         ld      e,h
  25.         sla     d                       ; HL:DE = (C_SIZE + 1) * 1024
  26.         adc     hl,hl
  27.         sla     d
  28.         adc     hl,hl
  29.         jp      sd_in5                  ; sikeres végrehajtás, ugrás a kártya deaktiválására    
  30. ;
  31. sd_io1a:ld      a,(hl)                  ; Device size multiplier [49:47] biteken
  32.         rla
  33.         dec     hl                      ; HL a 9. bájtra mutat
  34.         ld      a,(hl)
  35.         rla
  36.         and     007h
  37.         add     a,002h
  38.         ld      b,a
  39.         dec     hl                      ; HL a 8. bájtra mutat
  40.         ld      d,(hl)                  ; Device size [73:62] biteken
  41.         dec     hl                      ; HL a 7. bájtra mutat
  42.         ld      e,(hl)
  43.         dec     hl                      ; HL a 6. bájtra mutat
  44.         ld      a,(hl)
  45.         rl      d
  46.         rl      e
  47.         rla
  48.         rl      d
  49.         rl      e
  50.         rla
  51.         and     00Fh
  52.         ld      d,a                     ; Device size adat DE-ben
  53.         inc     de                      ; Device size + 1
  54.         ld      c,000h
  55. sd_io1: sla     e                       ; C:DE = (Device size + 1) *2^(Device size multiplier+2)
  56.         rl      d
  57.         rl      c
  58.         djnz    sd_io1
  59.         dec     hl                      ; HL a 5. bájtra mutat
  60.         ld      a,(hl)                  ; Read block length [83:80] biteken
  61.         and     00Fh
  62.         sub     00Ah
  63.         jr      c,sd_io3                ; ha hibás az adat (<9) vagy kisebb 10-nél
  64.         inc     a
  65.         ld      b,a
  66. sd_io2: sla     e                       ; 3 bájton akár 8GB-ig tud számolni
  67.         rl      d
  68.         rl      c
  69.         djnz    sd_io2                  ; C:DE-ben a maximális blokk szám
  70. sd_io3: ld      h,000h                  ; blokkszám felső 16 bitje HL-be
  71.         ld      l,c
  72.         jp      sd_in5                  ; sikeres végrehajtás, ugrás a kártya deaktiválására
  73.  

Az FDISK már azzal dolgozik, amit a DETECT előállít:
Code: ZiLOG Z80 Assembler
  1. DETECT:                 DI
  2.                                 PUSH IX
  3.                                 PUSH HL
  4.                                 POP DE
  5.                                 PUSH DE
  6.                                 INC DE
  7.                                 LD BC,511
  8.                                 LD (HL),0
  9.                                 LDIR                    ;512 BÁJT PUFFER TÖRLÉSE
  10.                                 CALL SELECTCARD
  11.                                 POP IX
  12.                                 PUSH IX
  13.                                 LD BC,4
  14.                                 ADD IX,BC
  15.                                 LD B,DCTRL_CSD          ;CSD olvasása
  16.                                 LD A,DISKIO_CTRL        ;I/O kontroll funkciók
  17.                                 CALL DISKIO                     ;DISKIO HÍVÁSA
  18.                                 JR NZ,DETECTEND
  19.                                 POP IX
  20.                                 LD (IX+0),E                     ;kártya méret letárolása
  21.                                 LD (IX+1),D
  22.                                 LD (IX+2),L
  23.                                 LD (IX+3),H
  24.                                 PUSH IX
  25.                                 LD BC,14H
  26.                                 ADD IX,BC
  27.                                 LD B,DCTRL_CID          ;CID olvasása
  28.                                 LD A,DISKIO_CTRL        ;I/O kontroll funkciók
  29.                                 CALL DISKIO                     ;DISKIO HÍVÁSA
  30.                                 JR NZ,DETECTEND
  31.                                 POP IX
  32.                                 PUSH IX
  33.                                 LD BC,24H
  34.                                 ADD IX,BC
  35.                                 LD B,DCTRL_OCR          ;OCR olvasása
  36.                                 LD A,DISKIO_CTRL        ;I/O kontroll funkciók
  37.                                 CALL DISKIO                     ;DISKIO HÍVÁSA
  38. DETECTEND               CALL NZ,EXDERCODE
  39.                                 POP HL
  40.                                 POP IX
  41.                                 RET

Itt a lényeg, hogy az elsőnek betett kód részlet kiszámolja a méretet szektorokban, ami a detect által visszaadott ID blokk első 4 bájtján lesz letárolva.
Title: Re: Xep128
Post by: lgb on 2016.September.04. 22:53:57
https://www.sdcard.org/downloads/pls/pdf/part1_500.pdf

Uram irgalmazz. Meg jo, hogy ez az "egyszerusitett" specifikacio es amit ingyenesen is meg lehet szerezni. Mar emlekszem, miert szivtam ezzel ennyit, nem csak a meret kapcsan, barmi mas kapcsan is ... :D
Title: Re: Xep128
Post by: lgb on 2016.September.04. 23:18:36
Hat, en lehet ezt passzolom ... Nekem ez tul bonyolult :) Nezem a specifikaciot, egy oldalon at magyarazza kepletekkel telenyomva. Irtam egy egy oldalas python script-et ami kiszamolja az alapjan :) Ami Xep128-ban most van, arra nekem ez jon ki: 4659200 byte. Ez valahogy nem ~14 mega amit emlitettel, hogy neked annyinak latszik. Most igy hirtelen eszembe is jutott, miert nem csinaltam ezt meg: akkor is feladtam mert akar hanyszor probaltam sosem jott ki jo ertek :D itt meg meg nehezebb is, mert a forditottja kene: van egy image file, es ki kene talalnom, hog milyen ertekeket hamisitsak be neki, hogy SD specifikacio szerint kijojjon. Na ide majd 2-es alapu logaritmustol kezdve minden kellene mar :-P

Amugy a fenti pdf 141. oldalan van (marmint a doksi szerinti 141, ami a lap aljan van). Zozo, ha van tipped hogy milyen algoritmussal hatarozhato meg a CSD register adott bitjei egy megadott image file size alapjan, termeszetesen nem zarkozom el tole, hogy belepakoljam, de en ehhez keves vagyok, ugy tunik.

Miert nem birtak ezek normalisan megadni, ahelyett hogy 3 adatbol tok bonyolult modon all ossze, es ez meg amugy csak a CSD struktura EGYIK verzioja mert van tobb is :-P
Title: Re: Xep128
Post by: lgb on 2016.September.05. 01:40:22
Elszorakoztatom itt magam am :-P Megszultem egy probalgatos algoritmust. Viszont ezzel van egy "kis" baj. Ugye nem minden meret map-elheto le ervenyes adatokra a CSD-ben, akkor sem, ha amugy nem tul kicsi, nem tul nagy, es 512 byte tobbszorose. Jelenleg az eddig hasznalt SD image-emre is pl ezt mondja :-) Szoval a gond az, hogy barmilyen vhd-t az ember lehuz, az nem fog mukodni, mert SD kartya merete nem feltetlen jon ki ... Most ilyenkor mi a fene legyen? Ha behazudok a kartyanak ennel nagyobb meretet az nem fog menni, mert ha pl fdisk-ezest tesztelnel rajta, akkor ugye ez hibara megy, mivel az image file valojaban nincs ilyen nagy. Ha ennel kisebb meretet hazudok be neki, az sem jo, bar az talan meg lemegy, csak akkor a jelenlegi particios tablat fogja invalidnak talalni az fdisk-ed. Vagy mi a fene van, mar nehezen kombinalom ezt ki. Megoldas lehetne, hogy en "kiigazitom a file meretet" azaz hozzairok annyit h a kov hatarra essen. Ez megint nem jo, mert milyen jogon piszkalok bele, tovabba, ha amugy csak olvahato a file (es read-only-ban nyitja meg) akkor ez nem is menne ugye. Stb ... Szoval ez joval bonyolultabb kerdes, mint aminek elsore tunt, pedig mar akkor sem volt egyszeru. De mar ezen vacakolok 2 oraja :-D

Csak eros idegezetueknek, es mivel felig alszom mar, lehet, hogy tok hibas is :-)

Code: C
  1. static inline int sdext_check_and_set_size ( off_t size, const char *name )
  2. {
  3.         int blen_i;
  4.         if (size < MIN_CARD_SIZE || size > MAX_CARD_SIZE) {
  5.                 ERROR_WINDOW("SD card image file \"%s\" is too small or large, valid range is %d - %d Mbytes, but this one is %lld bytes long (about %d Mbytes). SD access has been disabled!",
  6.                         name, (int)(MIN_CARD_SIZE >> 20), (int)(MAX_CARD_SIZE >> 20),
  7.                         (long long)size, (int)(size >> 20)
  8.                 );
  9.                 return 1;
  10.         }
  11.         if ((size & 511)) {
  12.                 ERROR_WINDOW("SD card image file \"%s\" size is not multiple of 512 bytes! SD access has been disabled!", name);
  13.                 return 1;
  14.         }
  15.         for (blen_i = 9; blen_i < 12; blen_i++) {
  16.                 int mult_i;
  17.                 int blen = 1 << blen_i;
  18.                 for (mult_i = 0; mult_i < 8; mult_i++) {
  19.                         int mult = 1 << (mult_i + 2);
  20.                         int res = size / blen;
  21.                         if (!(size % blen) && !(res % mult)) {
  22.                                 res = (res / mult) - 1;
  23.                                 if (res < 4096 && res > 0) {
  24.                                         //printf("MAY HIT with blen=%d[%d],mult=%d[%d],result=%d\n",
  25.                                         //        blen, blen_i, mult, mult_i, res
  26.                                         //);
  27.                                         _read_csd_answer[CSD_OFS +  5] = (_read_csd_answer[CSD_OFS +  5] & 0xF0) | blen_i;
  28.                                         _read_csd_answer[CSD_OFS +  6] = (_read_csd_answer[CSD_OFS +  6] & 0xFC) | (res >> 10);
  29.                                         _read_csd_answer[CSD_OFS +  7] = (res >> 2) & 0xFF;
  30.                                         _read_csd_answer[CSD_OFS +  8] = (_read_csd_answer[CSD_OFS +  8] & 0x3F) | ((res & 3) << 6);
  31.                                         _read_csd_answer[CSD_OFS +  9] = (_read_csd_answer[CSD_OFS +  9] & 0xFC) | (mult_i >> 1);
  32.                                         _read_csd_answer[CSD_OFS + 10] = (_read_csd_answer[CSD_OFS + 10] & 0x7F) | ((mult_i & 1) << 8);
  33.                                         return 0;
  34.                                 }
  35.                         }
  36.                 }
  37.         }
  38.         ERROR_WINDOW("SD card image file \"%s\" size (%lld bytes) cannot be mapped to any valid card! SD access has been disabled!", name, (long long)size);
  39.         return 1;
  40. }
  41.  
Title: Re: Xep128
Post by: lgb on 2016.September.05. 03:01:33
Na, kellett neked Zozo emliteni, nem hagy nyugodni a dolog ... azota is ezen filozom. Ezt sikerult osszehozni, tesztelned? ELOTTE mindenkeppen mentsd el az image file-t, mert valaszod alapjan bele fog barmolni (jobban mondva hozzair a vegere, ha nem jon ki valid SD kartya mereture a cucc):

http://xep128.lgb.hu/files/xep128-sd-size.zip

Azert remelem nem szurja el :) Masik meg, ami szinten rosszul sulhet el: a CSD register ugyan modositva van, de olyan mennyisegu shift operator volt ott, meg and, meg stb, hogy mar azt sem tudom mi merre, szoval lehet, hogy nem sikerult jol elsore ... De mostmar *tenyleg* megyek aludni :)

PS: Ja, ez kozben kigugliztam mitol van egy windows exe-nek icon-ja. Igen, lehet ilyet csinalni cross compiler-rel is, majd (....) ugyeskedem vele.
Title: Re: Xep128
Post by: endi on 2016.September.05. 07:00:43
mennyit írtok ide... kár hogy engem meg pont nem érint a téma :(
Title: Re: Xep128
Post by: lgb on 2016.September.05. 08:53:24
mennyit írtok ide... kár hogy engem meg pont nem érint a téma :(

Pontositanek: en mennyit irok, biztos mindenki unja mar :)
Title: Re: Xep128
Post by: Zozosoft on 2016.September.05. 09:29:23
mert milyen jogon piszkalok bele
Szerintem dobjon fel egy kérdést, hogy akarod-e.

Amúgy a "sok programos" VHD az direkt valódi kártyán készült (amiből van egy nagy marékkal SzörG-nek, és ezt osztogatja az illesztőkkel), és onnan lett lementve. (256-os kártya ami valójában 244MB)
Title: Re: Xep128
Post by: lgb on 2016.September.05. 09:49:57
Szerintem dobjon fel egy kérdést, hogy akarod-e.

Most epp ezt teszi. ELVILEG :-) Csak ugye a valaszt nem menti el, szoval ha ujra elinditod az emut, megint meg fogja kerdezni :D Marmint, ha nemet mondtal, mivel ha igent, es sikerult kibovitenie, akkor legkozelebb nem lesz gond, nyilvan.

Quote
Amúgy a "sok programos" VHD az direkt valódi kártyán készült (amiből van egy nagy marékkal SzörG-nek, és ezt osztogatja az illesztőkkel), és onnan lett lementve. (256-os kártya ami valójában 244MB)

Ezert is lenne jo tesztelni. Ezt direkt most igy "kezzel kiteszem lgb.hu -ra" alapon csinaltam (mivel lehetne kerdezni, hogy akkor mire jo ez a bintray/travis amirol odakat zengtem - jo az csak en nem csinaltam teljesen jol, hogy pl kulonbozo verzionalva kitett cuccokat is tudjon ...) :D Mert ez nagyon experimental igy most. Pl azt egyaltalan nem teszteltem, hogy CSD alapjan tenyleg jo-e :) es mit lat majd ebbol az fdisk ...............
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 16:08:10
Majdnem jó :-) Fele akkora méretet mond.
És amit nem értek, hogy a valódi kártyáról csinált image miért nem jó neki... Talán lehet, hogy a kisebb/régebbi kártyáknál másként ment a számolás? Ott a CSD-nél emlegetnek különféle verziókat is.
De nem tette tönkre az image-t, csak egy rakás nullát írt a végére.
Title: Re: Xep128
Post by: lgb on 2016.September.06. 16:19:09
Majdnem jó :-) Fele akkora méretet mond.
És amit nem értek, hogy a valódi kártyáról csinált image miért nem jó neki... Talán lehet, hogy a kisebb/régebbi kártyáknál másként ment a számolás? Ott a CSD-nél emlegetnek különféle verziókat is.
De nem tette tönkre az image-t, csak egy rakás nullát írt a végére.

Fele akkorat? Hmm :D szerintem valahol elszurtam egy jobbra/balra shift-elest :D Bar mondjuk eleve az a gond, hogy ugye kapok egy image meretet, a file merete. Ezek utan fogom, es rafuttatom az algoritmust, megnezve hogy kulonbozo "mult" es "blklen" meretekkel melyikkel jon ki ez a meret. Ha kijon barmelyikkel, remek. Na itt az elso gond, hogy van ahol tobb lehetoseggel is ki lehet hozni, akkor en melyiket valasszam??? Most jelenleg az elsot, amibe belefut. Ha nem jon ki, akkor azt csinalom, hogy a meretet novelem 512-byte-al, majd megnezem ugy kijon-e, stb, amig nem sikerul. Igy a leheto legkevesebb novelessel probalja megoldani, hogy valid meret legyen. A noveles ja, csak a vegere tesz "valamit", tok mind1, elvileg az nem kene, hogy gondot okozzon ..... Ezek utan pedig persze a CSD-be visszirom a meretet amivel sikerult az image-t lekezelni mint ervenyes meret, fuggetlenul attol, hogy bovites nelkul is sikerult, vagy csak bovitessel.

Van tobbfele CSD verzio igen, de en csak a nullast hasznalom, vagy tudomisen hogy hijjak. Az meg bonyibb lenne, mert akkor kulon kene kezelni esetfuggo modon, ha kulon kene ket eset. Az erdekes, hogy valodi SD kartyarol szarmazoval mi a baja. Jo lenne annak a kartyanak az eredeti CSD-jet latni, hogy abban mi van. Az is lehet, hogy valami olyan trukk, mint a "system area" vagy irjak valahol h a kartyan lehet olyan terulet ami nem elerheto "user" szamara, szoval ha image-et csinalsz rola akkor kisebbnek latszik? Ez mondjuk fura, mert akkor a CSD szerint sem kene h beleszamolodjon hiszen akkor azt nem lehetne irni sem logikusan. Vagy nem tudom ...

A masik, hogy ha jol remik a CSD-nek van egy belso 7 bites CRC-je. Na az nincs rendben igy, ha en beleronditok. Mondjuk, ha az fdsik nem nezi, hogy valid-e, akkor nem gond ... Egyeb esetben ujra kene generalnom ezt, mert ugye eddig egy "veletlenszeru" CSD volt, ami ugyan vmi konkret kartya CSD-je, de nyilvan semmi koze ahhoz, hogy valojaban te milyen meretu image-t hasznalsz, gondolom ez volt a gond fdisk-ednel, hogy o viszont a CSD alapjan nezte volna, hogy milyen a meret ...
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 16:50:34
A sorrend egész pontosan úgy néz ki, hogy az SD low level Detect eljárása beolvassa a CSD-t, és kiszámolja a méretet is 4 bájton. Hál istennek, ezt a részt készen kaptam a TVC-s sráctól :ds_icon_cheesygrin: mert én is eldobtam az agyam, amikor belenéztem az SD doksibe :-)
Az SDIDENTIFY EXOS parancs az létrehoz egy 512 bájtos azonosító blokkot, aminek az elejére odatolja ezt a négy bájtot, utána a CSD, meg a többi SD regiszter kiolvasott nyers adatát.
Az FDISK (ill. indulásnál a kiírás) a 4 bájtból veszi a méretet, valamint a többi regiszterből a kártya nevet, sorozatszámot ilyesmit.
CRC-vel nem szórakozunk :oops:

Azt az adott kártyát rendesen valódi EP-n FDISK-eltem, és utána mentettem le VHD-nek. Szedek le róla CSD-t is.
Title: Re: Xep128
Post by: lgb on 2016.September.06. 17:01:52
Egyebkent a tobb CSD verzio szerintem nem kell. Ahol ez a CSD problema az az SDHC vagy hogy hijjak, mivel nem tud 2Gbyte-nal nagyobb meretet az eredeti struktura kezelni. En azt gondolom, hogy 2Gbyte legyen mar eleg az EP-nek azert, nem tudom te hogy vagy vele, Zozo :) Egyaltalan az SD kartya cartridge + SDEXT tud/tudna SDHC-s kartyat kezelni? Ja meg a masik, ami magyarazatot adhat valodi kartyameret problemara: tenyleg lehet, hogy mas CSD verzioval volt az eredeti, oszinten en mar elvszetettem a fonalat, hogy "csak" SD-bol is van tobb, aztan ott MMC dolog, ami nagyban SD-re hasonlit, de vannak kisebb kulonbsegek, stb, nem tudom ...
Title: Re: Xep128
Post by: lgb on 2016.September.06. 18:11:41
http://xep128.lgb.hu/files/xep128-sd-size-2.zip

Ez jobb? Egy helyen tenyleg elrontottam egy bit shift-et ... De ezt sem teszteltem :D Ha most sem lesz jo, mar tenyleg fogom, megigerem :D
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 21:03:21
En azt gondolom, hogy 2Gbyte legyen mar eleg az EP-nek azert, nem tudom te hogy vagy vele, Zozo :)
Átmenetileg elfogadható kompromisszum :-)

Quote
Egyaltalan az SD kartya cartridge + SDEXT tud/tudna SDHC-s kartyat kezelni?
Tud, így 32GB-ig tuti. Maga az EXDOS bővítő rész az 128GB-ig jó (32 bit LBA), amit még meg kéne nézni, hogy SDXC-re is működik-e a Detect eljárás CSD-ből számolója :-)

Quote
Ja meg a masik, ami magyarazatot adhat valodi kartyameret problemara: tenyleg lehet, hogy mas CSD verzioval volt az eredeti
Ha jól látom az eredeti valami ősi 16 megás kártya CSD-je.
Title: Re: Xep128
Post by: lgb on 2016.September.06. 21:27:11
Ha jól látom az eredeti valami ősi 16 megás kártya CSD-je.

Lehet, meg talan toled kaptam (?) kartya ID file-okat, amikor szo volt errol, abbol neztem ki egyet csak ugy tippre, hogy akkor ez lesz, es nem szorakozok vele, hogy amugy mit jelent pontosan :D
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 21:53:59
Itt az adott kártya ID fájlja.
Title: Re: Xep128
Post by: lgb on 2016.September.06. 22:05:50
Itt az adott kártya ID fájlja.

A CSD alapjan (ha jol tippelek az a 4. byte-nal kezdodik) a nemreg irt python programom ezt mondja:

Code: [Select]
00000000010111100000000000110010010111110101100110000011110011111110110110110110111111111000011110010110010000000000000000111111
CSD_STRUCTURE CSD[127:126] = ('00', 0, '0x0')
READ_BL_LEN CSD[83:80] = ('1001', 9, '0x9')
C_SIZE CSD[73:62] = ('111100111111', 3903, '0xf3f')
C_SIZE_MULT CSD[49:47] = ('101', 5, '0x5')
{'C_SIZE_MULT': 5, 'CSD_STRUCTURE': 0, 'READ_BL_LEN': 9, 'C_SIZE': 3903}
Mult = 128
BlockNR = 499712
BlockLen = 512
Card size = 255852544
-----------------
MAY HIT with blen=512,mult=128,result=3903
MAY HIT with blen=512,mult=256,result=1951
MAY HIT with blen=512,mult=512,result=975
MAY HIT with blen=1024,mult=64,result=3903
MAY HIT with blen=1024,mult=128,result=1951
MAY HIT with blen=1024,mult=256,result=975
MAY HIT with blen=1024,mult=512,result=487
MAY HIT with blen=2048,mult=32,result=3903
MAY HIT with blen=2048,mult=64,result=1951
MAY HIT with blen=2048,mult=128,result=975
MAY HIT with blen=2048,mult=256,result=487
MAY HIT with blen=2048,mult=512,result=243

Azaz elvileg ennek a merete byte-ban a CSD alapjan: 255852544

Ha minden igaz, es nem szurtam el se ezt, se a Xep128-ban az ellenorzest, mivel azt mondtad, hogy nem total ertheto, Xep128 miert akar boviteni, amikor valodi SD kartya image-e volt.
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 22:14:44
Igen ez stimmel.
A probléma lehet, hogy ott van, hogy a VHD nem RAW image, hanem a végére oda van írva még valami (ha jól nézem 512 bájt). És úgy tűnik ebben mindig megtalálható a "conectix" string.
Title: Re: Xep128
Post by: lgb on 2016.September.06. 22:18:44
Igen ez stimmel.
A probléma lehet, hogy ott van, hogy a VHD nem RAW image, hanem a végére oda van írva még valami (ha jól nézem 512 bájt). És úgy tűnik ebben mindig megtalálható a "conectix" string.

Hat ha, pont 255852544 + 512 ami neked lett, akkor valoszinu :) Ugye ilyenkor nem jon ki, Xep128 test verzio meg felkerekiti a legkozelebbi meretre, nem "tudvan" hogy az image vege az nem is maga az image. Hmmm. Vegulis lehetne bele detektalas, ha fel lehet ismerni, hogy mi az a vegen, es egyertelmuen tutira azonosithato, nehogy baj legyen belole. Es akkor max ugy tekintem, hogy a valodi meret 512 byte-al kisebb. Persze, ha ugy sem jon ki, erdekes, mert azt felboviteni nehez, hacsak nem szurom el (mivel ha utana irok akarmi, az mar vhd-ban nem valid akkor, mert hianyzik ez a "vege"?).
Title: Re: Xep128
Post by: Zozosoft on 2016.September.06. 22:24:47
Hat ha, pont 255852544 + 512 ami neked lett, akkor valoszinu :)
Pont :-)

Quote
lehetne bele detektalas, ha fel lehet ismerni, hogy mi az a vegen, es egyertelmuen tutira azonosithato, nehogy baj legyen belole. Es akkor max ugy tekintem, hogy a valodi meret 512 byte-al kisebb.
Erre gondoltam én is.

Quote
Persze, ha ugy sem jon ki, erdekes, mert azt felboviteni nehez, hacsak nem szurom el (mivel ha utana irok akarmi, az mar vhd-ban nem valid akkor, mert hianyzik ez a "vege"?).
Esetleg figyelmeztetés, hogy RAW image-be lesz konvertálva, és akkor azzal a plusz vacakkal nem kell foglalkozni.

A legvalószínűbb felhasználás úgyis a "sok programos" image :-)
Title: Re: Xep128
Post by: lgb on 2016.September.07. 00:26:46
Letoltottem MS specifikaciot a VHD-hez. Idezet:

Note: Versions previous to Microsoft Virtual PC 2004 create disk images that have a 511-byte disk footer. So the hard disk footer can exist in the last 511 or 512 bytes of the file that holds the hard disk image.

Hehheheheeee, ez nagyon ugy hangzik, mintha valaki elszurt volna valamit, es regebben 1 byte-al kevesebb jutott a vegere :-P
Title: Re: Xep128
Post by: lgb on 2016.September.07. 01:53:42
http://xep128.lgb.hu/files/xep128-sd-size-3.zip

Na ebbe mar minden vackot belepakoltam ... VHD detektalas ("hibas" MS implementaciora is ...) is van benne mar, akkor nem fogja a meretet novelgetni, ha amugy a "disk footer" (utso blokk) nelkul a merete jo. Azt mondjuk nagyon nem teszteltem, de az MS leirasa szerint ott van az is, h dinamikus VHD, ezt surgosen el is utasitom Xep128-ban, mert ugye az taccsra is tenne, arra azert nincs felkeszulve :)
Title: Re: Xep128
Post by: Zozosoft on 2016.September.07. 16:02:49
1) jó méretet mond
2) tetszik neki az image is
3) van ikonja az EXE-nek :-)
Title: Re: Xep128
Post by: Zozosoft on 2016.September.07. 16:26:33
Viszont most próbáltam a 32 biteset, és azt mondja, hogy too old az SDL :oops:
Az van ott ami a letölthető 32 bites csomagban van (2015.05.15 dátumú SDL2.DLL)
Title: Re: Xep128
Post by: lgb on 2016.September.07. 20:18:52
EXE ikon azert van, mert azt meglepetesnek szantam :D Na jo, nem, csak elfelejtettem emliteni :) Mondjuk nem tudtam, hogy latszik-e valtozas, csak ugy "latatlanban" csinaltam :-P

https://bintray.com/lgblgblgb/generic/xep128

Probald meg itt. Toltsd le pl a xep128-win32.zip -et. Ha most nem is kell belole az exe (mert ugye az a verzio amit most te nezel az "teszt" es nincs meg itt fenn!), a dll-nek elvileg jonak kell lennie belole legalabb a teszt verziohoz is! Valojaban a dll max annyibol szamit, hogy 2.0.4-es SDL verzio-e mar (regebbi Xep128-nak nem kellett ez meg, a mostaniaknak mar igen hmm nem is tudom par honapja?), regebben 2.0.2-t hasznaltam. Illetve meg gond, ha 32 bites es 64 bites ugylet nem tiszta, hogy melyik. Valojaban amugy 2.0.4 azert kellett, hogy majd a hanghoz :D marmint a jobb hanghoz, mert abban van normalis "push" jellegu support is (nem az SDL ker puffer tolest, hanem te tolod neki ki). Igaz, ezen azota sem dolgoztam, de van meg 1-2 pont aminel kozben attertem 2.0.4-as megoldara, plusz a raspberry Pi-s probalkozasakhoz is az kell :)
Title: Re: Xep128
Post by: lgb on 2016.September.07. 21:05:15
Tenyleg ... Nem vagyok annak ellenere sem, ha esetleg vmi combined.rom otleted van. Ez ugye nem mas, mint osszefuzott ROM image-ek, egyszeruen a 0-as szegmenstol kezdve az lesz, amig tart (meg ugye ott a trukk is, hogy XEP ROM manualis elhelyezese, stb). Amugy _szerintem_ az lenne jo, ha persze legujabb EXOS stb, SD kartyas cucc, es _esetleg_ ha letezik olyan, hogy melette EXDOS kartyat is tudNA kezelni (anelkul h hosszassan keresne a WD-t ...). Ez azert lenne jo, mert akkor esetleg irok bele azt is majd az emulatorba, eddig nem igazan volt kedvem hozza, mert SD nelkul "kenyelmetlen" barmi, te meg azt mondtad - ha jol emlekszem -, hogy nehezkes a ketto egyutt. Nu, ezen kivul meg hat igeny szerint. Valami mukodo IS-DOS az igencsak kene :-) A ZX emulator kartya ROM-ja is lenne, mert elvileg a Xep128 ugye tamogatja (bar hibas meg az attributum cuccos ahogy neztem). ZT egyeb dolgok? Szoval valami olyasmi, ami hasznos barkinek + az emulatornak, aki nem akar manualisan configolgatni, hogy legyen valami alap. Ez eddigi az ilyen veletlenszeru otlethalmaz tolem max ...
Title: Re: Xep128
Post by: Zozosoft on 2016.September.08. 12:59:05
a dll-nek elvileg jonak kell lennie belole legalabb a teszt verziohoz is
Így már jó.
Title: Re: Xep128
Post by: lgb on 2016.October.18. 17:56:22
Itt a demonstracio:

http://xep128.lgb.hu/web-demo/

Ez tehat *nem* az JSep, hanem a Xep128, ami C-ben van irva, csak Emscripten-el le van forditva javascript-re. Persze, igy sokra nem jo (es amugy az idozitese is csapnivalo, mert azt viszont maskepp kell emscripten alatt csinalni elvi okok miatt), meg igy SD sincs alatta ...
Title: Re: Xep128
Post by: endi on 2016.October.18. 21:01:47
Itt a demonstracio:

http://xep128.lgb.hu/web-demo/

Ez tehat *nem* az JSep, hanem a Xep128, ami C-ben van irva, csak Emscripten-el le van forditva javascript-re. Persze, igy sokra nem jo (es amugy az idozitese is csapnivalo, mert azt viszont maskepp kell emscripten alatt csinalni elvi okok miatt), meg igy SD sincs alatta ...

nem követem ezeket a topikokat, ez most új webes emu?
Title: Re: Xep128
Post by: lgb on 2016.October.18. 21:32:06
nem követem ezeket a topikokat, ez most új webes emu?

Annyiban "uj", hogy ez a "regi" Xep128, csak epp letezik az emscripten nevu fordito ami C kodot ahelyett hogy nativ vegrehajthato allomannya forditana/linkelne ossze (pl windows eseten exe) gyart belole egy html oldalt es egy allat ronda Javascript kodot, amit viszont azt csinalja, amit a nativ valtozat. Tehat ilyen szempontbol nem uj :)

Az elonye amugy az:  regen irtam ilyesmit (JSep), amde az "kezzel" irt JS kod volt. Ugye ezzel a problema csak az, hogyha akarsz egy "nativ" emulatort meg egy "webeset" irhatod meg ketszer kb ... Igy viszont a "jo oreg" Xep128 a maga C kodjaval marad, es csak a forditon mulik, hogy Linux-os vegrehajthato program, vagy epp OSX-es, Windows-os, vagy most mar akar webes is lesz belole a vegen ...

Legalabbis ez lenne az otletem ......
Title: Re: Xep128
Post by: lgb on 2016.October.19. 19:34:56
Erdekes, hogy anno az JSep firefox-al joval gyorsabb volt, most viszont chrome-al tunik annak :) Az oldal title infoja alapjan nem erdemes megitelni, ui az nem tudja merni a "browser overhead"-et, nyilvan az alapjan erdemes vizsgalni, hogy az oprendszer' mit mond a browser CPU hasznalatarol.

Amugy onnan is latszik, hogy ez nem JSep, hanem a Xep128 (csak webre "forditva") hogy mukodik benne az OSD, pl page up/down-ra valtja a CPU sebesseget ugyanugy ahogy Xep128-ban (persze, mivel ugyanaz a kod).
Title: Re: Xep128
Post by: endi on 2016.October.19. 19:40:36
én arról álmodok hogy könnyen és egyszerűen futtatható legyen minden ep játék weben :)
Title: Re: Xep128
Post by: lgb on 2016.October.19. 22:20:50
én arról álmodok hogy könnyen és egyszerűen futtatható legyen minden ep játék weben :)

Almodni en is szoktam :) :) De amugy igen, vegulis az ertelme az lehetne. Ettol valoszinuleg meg nem helyettesit semmilyen "nativ" emulatort, mert vannak ugye a technika elvei miatti hatranyai is (es a performancia sem feltetlen olyan jo, bar ma mar legalabb hasznalhato erre is azert a html/js vilag ... legalabb ezt elmondhatjuk). Szoval mondjuk olyan ertelmet el tudom kepzelni, hogy jo lehet "preview-nek" vagy aki nem tud/nem akar emulatorozni mert annyira nem 'fanatikus' stb. Na mind1, erted, szoval talan vmi ertelme lenne azert ...
Title: Re: Xep128
Post by: endi on 2016.October.21. 18:02:54
Almodni en is szoktam :) :) De amugy igen, vegulis az ertelme az lehetne. Ettol valoszinuleg meg nem helyettesit semmilyen "nativ" emulatort, mert vannak ugye a technika elvei miatti hatranyai is (es a performancia sem feltetlen olyan jo, bar ma mar legalabb hasznalhato erre is azert a html/js vilag ... legalabb ezt elmondhatjuk). Szoval mondjuk olyan ertelmet el tudom kepzelni, hogy jo lehet "preview-nek" vagy aki nem tud/nem akar emulatorozni mert annyira nem 'fanatikus' stb. Na mind1, erted, szoval talan vmi ertelme lenne azert ...

az a helyzet hogy már én is évek óta ott tartok hogy van a jól bejáratott ep128emu, és nincs másra energiám hogy kipróbáljam. pontosabban ha ep-zni akarok akkor nem arra akarom az időmet szánni hogy új emut meg ilyesmiket próbálgassak. hanem konkrétan az emut használom amit ismerek.
az átlag usernek ma már erre sincs ideje... se energiája... ők azok akiknek jól jönne ha egy kattintással weben nosztalgiázhatnának egy kicsit...
Title: Re: Xep128
Post by: lgb on 2016.October.22. 00:59:34
az a helyzet hogy már én is évek óta ott tartok hogy van a jól bejáratott ep128emu, és nincs másra energiám hogy kipróbáljam. pontosabban ha ep-zni akarok akkor nem arra akarom az időmet szánni hogy új emut meg ilyesmiket próbálgassak. hanem konkrétan az emut használom amit ismerek.

Ertheto, en is igy vagyok sok mindennel :) Raadasul az ep128emu-nak igazabol nincs is olyan alternativaja, ami miatt eszszeruen (allitolag igy kell irni az uj helyesiras szabalyai cimu konyv szerint, ez igaz???) lenne valtani. Most meg foleg, hogy ep128emu-ban is van SD meg eger :) :) Mondjuk mivel Xep128-at en irtam, en legalabb hasznalom azert, de nyilvan ez mar total mas kerdes :-D

Quote
az átlag usernek ma már erre sincs ideje... se energiája... ők azok akiknek jól jönne ha egy kattintással weben nosztalgiázhatnának egy kicsit...

Jaja. Ugye mar JSep idejen is elgondolkoztam ezen, csak mint mondtam, ott akkor gond, hogy "kezzel irt" JS kod volt. Illetve nem gond, ha ugy csinalod nullarol ... Mivel azonban feladni azert teljesen ezt a Xep128 dolgot sem akarom, illetve ujrairni JS-ben sem, ez az emscripten dolog nem tunik hulysegnek, hogy legyen webes verzioja is viszont. Persze az meg hianyzik, ami a lenyeg, hogy egyszeruen integralhato legyen egy-egy program "bemutatasara" akar az ember sajat oldalara, stb.
Title: Re: Xep128
Post by: endi on 2016.October.22. 01:09:40
Most meg foleg, hogy ep128emu-ban is van SD meg eger :) :)

na én erről is le vagyok maradva...
Title: Re: Xep128
Post by: lgb on 2016.October.22. 01:30:03
na én erről is le vagyok maradva...

Utobbi "par nap" tortenesi :) Az SD support benne amugy a Xep128-bol van, de nem ez a lenyeg - a lenyeg ugye az EP kozosseg, most fuggetlenul a konkret emulatortol, mindenki jobban jar, ha van egy minnel hasznalhatobb emulator :) En a Xep128-at azert kezdtem anno (egyreszt, bar benne van az is, hogy csak ugy erdekes dolog egy ilyen project), mert pl szerettem volna SD support-ot, ep128emu-ban meg nem volt :) Aztan jott az eger. Most, hogy ezek vannak ep128emu-ban, az szerintem hasznosabb, minthogy en megirom egy kulon emulatorban, be kell latnom, es nyilvan be is latom :)
Title: Re: Xep128
Post by: Attus on 2016.October.23. 14:21:28
:bow:
Title: Re: Xep128
Post by: lgb on 2016.October.25. 11:42:01
Haladgatok az emscripten-el forditott verzioval, bar nem trivialis az altala generalt Javascript-tel interakcioba lepni (kb 2Mbyte JS kod amit eloallit ... es mondanom sem kell hogy nem emberi fogyasztasra valo ...), szerencsere eleg jol dokumentalt API van itt-ott, szoval valoszinu megoldhato  lesz hogy par sor hozzaadasaval kb barmilyen weboldalba beleagyazhato legyen adott beallitasokkal (ideertve akar egy snapshot betolteset is).
Title: Re: Xep128
Post by: Zozosoft on 2016.October.25. 12:07:25
Ez úgy lenne jó, hogy az ep128.hu-ra tenni, és bármelyik játék klikkelhető lenne.
Title: Re: Xep128
Post by: lgb on 2016.October.25. 12:16:29
Lehetne, bar en igazabol az enterpriseforever.com -ra akartam volna ... Mivel ugyis mostanaban belekotnyeleskedem a forum-szerver mukodesebe is erosen nagy suttyomban am :) Marmint persze MrPrise tud rola, nem ugy ertettem, hogy o sem tudja :) Dehat persze ettol meg mashova is lehet.

Csak ugye meg kene irnom a WD/EXDOS supportot :D Web verzioban az SD nem igazan megy, ennek filozofiai okai vannak, egy SD image-et ha berant a browser a memoriaba az "szep" mar csak a letoltott adatmennyiseg miatt is :-P Szoval ez igy kevesbe celszeru, de persze disk  image meg szoba johet (sot elvileg a FILE: support is, ha azon at mux a jatek). Elvileg meg akar ep128emu snapshot-ot is be tud tolteni webes verzioban is - mar amennyire amugy a Xep128 ilyet tud, eleg gyengusan csinalja azert meg :-P

Amivel igazan el vagyok maradva az a jobb audio support :D Az amugy erintene akkor a webes meg a "normal" nativ verziot is, hiszen ugyanaz a forrasa (webes verzioban is meg lehet probalni a :XEP AUDIO parancsot amugy, lesz hangja, csak epp elegge szaggat, ennek oka a normalis idozites hianya, nativ OS-en futo verziohoz kepest meg meg pontatlanabb is az idozites, tehat ha nincs normalisan megcsinalva - most nincs - a webes verzio sokkal jobban kihozza ezt a hibat).
Title: Re: Xep128
Post by: lgb on 2016.October.25. 12:21:19
Kiegeszites: a memoriaba berantas ugy ertendo, hogy a Xep128 nativ verzioja az image file-t a disk-en olvassa (vagy irja is). Ez a webes verzioban nem megy nyilvan, tehat ott be kell toltenie a memoriaba eloszor az egeszet. Bar ugyan ma mar lehet egy mai PC-nek nem fajna ha pl 256megas VHD-t betuszkol maganak, de azert akkor sem szerencses, foleg mivel elobbb le kell toltenie az egeszet akkor a kerdeses szerverrol, raadasul esetleg minden oldal latogataskor ujra es ujra ...... :-/
Title: Re: Xep128
Post by: IstvanV on 2016.October.25. 13:02:11
Elvileg meg akar ep128emu snapshot-ot is be tud tolteni webes verzioban is - mar amennyire amugy a Xep128 ilyet tud, eleg gyengusan csinalja azert meg :-P

A programok többségénél ez valószínűleg nem probléma, elég, ha a snapshot töltés ezeket megvalósítja:
- memória
- Z80 regiszterek
- I/O portokra utoljára írt értékek, ez egy külön blokkban megtalálható
- az I/O állapot alapján a NICK és DAVE regiszterek újraírása a 80h-83h és A0h-BFh portokon, esetleg a B4h portnál lehetne figyelni a megszakítás tárolók állapotára (ami a DAVE blokkban található), de többnyire elég lehet a megszakítás tárolók egyszerű törlése is, talán nem sok programot zavar komolyabb mértékben 1-2 IRQ elvesztése
- LPT beállítása a 82h-83h portok alapján
- minden más resetelhető a snapshot töltés előtt, SD-s konfigurációknál lehet még probléma, itt az SRAM és a flash ROM megtalálható egy blokkban, de a legegyszerűbb kerülni az ilyen snapshotokat (az SDEXT ROM jelenleg egyébként sem működik kártyacsere után, a snapshot pedig nem tartalmaz elég információt a pontos állapot viszzaállításához, az ep128emu-ban reset és kártyacsere/idle állapot beállítása történik snapshot töltésekor)
- azok a blokkok, amelyek nem tartalmaznak fontos információt, figyelmen kívül hagyhatók

Az új tömörített formátum megvalósítása talán hasznos lehetne webes emulátornál, de egyébként ez sem igazán fontos. Talán nem sokan fogják használni a tömörítést, de a "natív" Xep128-ban lehetne értelme kompatibilitási okból.
Title: Re: Xep128
Post by: lgb on 2016.October.25. 13:47:21
Xep128-nal amugy is problemas a snapshot. Anno en meg ugy gondoltam (jelenleg mar ketelkedem) hogy tok jo otlet szorosan osszehozni az emulator sajat ROM-jat ("XEPROM" a Xep128-ban, ami a FILE:-n kivul meg jo par dolgot csinal amugy, pl a :XEP command-okat, amivel menet kozben is lehet ezt-azt vezerelni az emulatoron, tobbek kozott is ezert lenne nehezkes egy kulso ROM-ot hasznalni ...), am ez problemakat is vet fel. Szigoruan nezve, ep128emu snapshot betoltesnel max nem lesz ilyen funkcionalitas, hiszen nem kerul betoltesre a snapshot-bol. Problemasabb, ha Xep128 tudna snapshot-ot menteni. Ui akkor ugye a gep allapota fugg attol is, hogy pontosan melyik XEP ROM verzio volt, az viszont erosen osszefonodik a Xep128 binaris verziojaval is ... A jelenlegi implementacio (ui Xep128 tudna - idonkent - menteni is snapshot-ot mar 1-2 honapja, csak mivel total bug-halmaz, az meg nincs github-on) eppen ezert megvizsgalja betoltesnel es ha a snapshot-ban van XEP ROM de binarisan elterest mutat a "beagyazottol", akkor nem fogja tudni azt hasznalni es letilt minden ilyen funkcionalitast. A Xep128 es a ROM-ja (ami magabol a Xep128-bol jon) annyira szorosan integralva van, hogy az sjasm-al forditott XEP ROM symbol tablajabol kapott cimkek hasznalva vannak a C forraskodban konkretan, tehat lathato, hogy a ketto nem igazan szetvalaszthato ...

A tomorites erdekes, de mondjuk webesnel sok ertelme nem biztos hogy van, mert ugye web browserek szoktak tamogatni maguktol is compression-t barmilyen letoltesre kb, ha a server ugy adja. Ettol fuggetlenul az otlet jo, es mivel ugyanaz a source nyilvan web/nativ-ra, ertelme sem lenne kulon megcsinalni, ha mar egyszer adott :) ugy meg legalabb lehet probalkozni ujabb ep128emu snapshot betoltesekkel is, ami esetleg mar compression-t hasznal.

Igen, amiket irtal, azokat tudja nagyjabol a Xep128 jelenleg is, snapshot betoltesnel (ez mar amugy JSep-ben is benne volt anno).
Title: Re: Xep128
Post by: lgb on 2016.October.25. 13:58:04
A masik erdekes dolog ami latszik a browser-ek kapcsan es JSep-nel annyira nem latszott (nem volt annyira pontos az idozites): firefoxban szepen lagzik ha van tobb browser tab/ablak nyitva es ott valami tortenik :) Itt latszik, hogy szegeny browser ha mast is csinal hat az persze gaz. Chrome-nal ez kevesbe gond, ha kulon process van mindenre, de pont ez az amiert sokan meg utaljak a Chrome-ot, mert emiatt szeret tobb RAM-ot is enni ugyebar (bar eppen ezert viszont elvileg jobb a biztonsag/szeparacio, illetve mint lathato a "reszponzivitas"). Allitolag firefox-ban is lesz (vagy van, csak nem default? hmm) multi-process mukodesi mod, vagy hogy is akarjuk hivni ezt .......

Viszont kellemes, hogy modern browser-eknel is van Joystick API, ami emscripten/SDL2-emulacioval ugyanugy megy, ergo webes Xep128-val is megy persze a fullscreen es utana egy USB joy/game controllert hozzapasszintva elvileg muxik is ugyanugy, mint a nativ verzioban (persze fullscreen nelkul is, csak azert emlitettem azt, mert ugy esetleg jobb az elmeny). Az mar igen erdekes elgondolas megint, hogy ha egy okostelo/tablet is tudja futtatni megfelelo sebeseggel akkor az ott levo event-ekkel is lehetne mit kezdeni (pl elvileg lehet nezni az eszkoz elmozdulasat, meg stb ... ez nem meglepo egy mobile-app eseten, az viszont cool, hogy ezt tudjak mar a mobil-browserek is ... na ilyen viszont jelenleg meg nincs a Xep128-ban).
Title: Re: Xep128
Post by: lgb on 2016.October.28. 14:29:29
http://xep128.lgb.hu/web-demo/

Ujabb web democska, mar van disk image (boot utan ajanlott a START parancs pl). Szoval nemsokara jo lehet arra is, amirol volt szo ...
Title: Re: Xep128
Post by: geco on 2016.October.28. 15:11:30
Jóóóó :)
Title: Re: Xep128
Post by: Zozosoft on 2016.October.28. 15:13:20
Kettőspontot ebben se lehet beírni :oops: (Gondolom a magyar billentyűzeten bukik a dolog...)
Title: Re: Xep128
Post by: lgb on 2016.October.28. 15:28:47
Kettőspontot ebben se lehet beírni :oops: (Gondolom a magyar billentyűzeten bukik a dolog...)

Ja, valoszinu azon, nekem remekul megy, igaz, en kerulom PC-n is a magyar kiosztast mint a pestist :) Alapvetoen amugy positional mapping szoval mennie kene, csak gondolom itt bekever, hogy az (emulalt) SDL2 alatt ott van meg a browser is :-/ Vagy hasonlo :) Lehet, a symbolic mapping jobb otlet, es mindenkinel minden ott van, ahol megszokta, ott csak ugye a virtual shift kerdese erdekes max.
Title: Re: Xep128
Post by: geco on 2016.October.28. 15:29:45
Kettőspontot ebben se lehet beírni :oops: (Gondolom a magyar billentyűzeten bukik a dolog...)
Tuti, TVC emulátornál már találkoztam ezzel a problémával, átváltottam angolra :D
Title: Re: Xep128
Post by: lgb on 2016.October.28. 15:39:56
Amugy ott lenne ahol a magyar billentyuzeten az Á van. Ahogy nezem nagyon SDL event sem generalodik ra viszont magyar billencsen ... Szoval lehet ez nem is megoldhato problema, mert eleve emscripten/SDL2 oldalon nem tud ezzel mit kezdeni a cucc (meg az JSep-ben megoldhato elvileg, mert ott kozvetlenul is elered a keyboard javascript event-eket). off-topic/szemelyes: Na, ezert nem kell bena magyar kiosztast hasznalni, ahol minden fontos karaktert eldugtak amugy is :D
Title: Re: Xep128
Post by: Ep128 on 2016.October.28. 23:55:20
off-topic/szemelyes: Na, ezert nem kell bena magyar kiosztast hasznalni, ahol minden fontos karaktert eldugtak amugy is :D
Azért izéke... :-D Magyar emberként Magyar szövegeket bepötyögve nap mint nap had ne használjon az ember már angolt / egyebet... :-) Szóval amelyik program nincs jóban a HUN kiosztással PC -n, azt én ívben kerülöm... :-D
Title: Re: Xep128
Post by: lgb on 2016.October.29. 01:07:50
Azért izéke... :-D Magyar emberként Magyar szövegeket bepötyögve nap mint nap had ne használjon az ember már angolt / egyebet... :-) Szóval amelyik program nincs jóban a HUN kiosztással PC -n, azt én ívben kerülöm... :-D

Ez a resze - ismet - szubjektiv: Hat kinek mi a szokasa (direkt ezert irtam oda, hogy ez kiss off-topic meg szemelyes/szubjektiv jellegu is, mindenkinek meglehet a sajat velemenye nyilvan). Latod, en ekezeteket sem irok (itt sem), amugy munkahelyi levelezesben _SEM_ :-D Sot, egyes nem eppen ujhullamos levlistakon benne is van az (n)etikettben, hogy nem irunk ekezeteket kerem szepen (es HTML alapu levelet meg foleg nem). Csak a mai fiatalok mar lehet elszoktak ettol, en meg vagyok ilyen regi listakon is :-D Tovabba, nem is tudok gepelni magyar kiosztason, az nekem kinszenvedes. Minden fontos jelet ami programozashoz kell, eldugtak ... A Z/Y cseret inkabb ne is emlitsuk :D stb.

Node, hogy ne csak off-topic legyen, es a konkret technikai problema itt:

masreszt, emulatoroknal erdekes kerdes, mert pl a position mapping azt jelenti, hogy azt is kb emulalni akarod, hogy kb nagyjabol hol volt a billencs az emulalando gepen. Ami ugye nem feltetlen egyezik azzal a kiosztassal, amin futtatod az emulatort. itt  a helyzet meg rosszabb, ugyanis, van a billencs hardware (marmint a PC-s), van az, hogy az OS mit/hogyan gondol, aztan van a browser, hogy ezt o mire forditja, aztan van az emscripten emulalt SDL2 az is csinal belole valamit, aztan van a Xep128 webes verzioja ami ebbol gyart valamit. itt technikai limitacio, hogy egyszeruen elvi okok miatt nem fog menni, ezzel nehez mit kezdeni ... Ui, alapvetoen az SDL2 scancode support arra jo, hogy a fizikai kiosztast adna vissza. Azaz az 'L' gomb mellett MINDIG a pontosvesszot, akkor is, ha epp te magyarra allitod a kiosztast, ui igy definialt PC billencs hardware-esen hogy melyik gomb mit jelent. Ez alapjan probalja a Xep128 kitalalni (hogy ne legyen gond a beallitott kiosztas az op'rendszerben), de ez mar nativ verzioban sem mindig jon ossze, ha meg kozben van meg egy browser meg az emscripten retege, akkor mint lathato, ez egy katasztrofahoz vezet :-/

Nekem, a Xep128 Linux alatt legalabbis mukodik (mint nativ, most nem a webes) ugyanugy, ha atvaltok magyar kiosztasra (windows alatt nem probaltam ...). A webes verzioval nekem se jo amugy. Viszont ugy tunik, ez mar Xep128 elott elkeveredik a browser/emscripten szintjen valahol, mert billentyuzet esemenyt sem general, igy egyszeruen nincs mit feldolgoznom ... Tehat, meg esetleges workaround-okkal sem. Az JSep-ben is max ugy lehetett, hogy HU-ra akkor kulon ellenorzesek stb (csak aztan jon valaki, hogy o spanyol billencset hasznal, miegymas ......). Csak ugye az nativ JS, tehat ott meg ezt ossze lehet kalapalni, de ugye ennek az a lenyege most, hogy ez C kod, es ugyanaz fordul nativra es JS-re is.

Azert persze van erre megoldas, mint ahogy a vilagon kb mindenre, csak at kene ganyolni a dolgot ugy, hogy JS kodot hivsz C-bol, ami hat Emscrpten altal megoldhato, csak epp baromi lassu es baromi ronda :-D
Title: Re: Xep128
Post by: Zozosoft on 2016.October.29. 17:12:06
Ha német EP-n nöttél volna fel, akkor nem zavarna a magyar kiosztás sem :-)
Amúgy én, ahogy megtaláltam az első ékezetes karaktereket, már igyekeztem használni őket. Késöbb PC-n ALT+számos módszerrel, amíg el nem terjedt a magyar kiosztás.
Title: Re: Xep128
Post by: lgb on 2016.October.29. 17:37:49
Ha német EP-n nöttél volna fel, akkor nem zavarna a magyar kiosztás sem :-)
Amúgy én, ahogy megtaláltam az első ékezetes karaktereket, már igyekeztem használni őket. Késöbb PC-n ALT+számos módszerrel, amíg el nem terjedt a magyar kiosztás.

En sose :) De mint irtam ez maganvelemeny :) Marmint ettol persze nem mondom, hogy "hulye" aki normalisan ir, valojaban en vagyok a "hulye" ha szigoruan nezzuk :) :) Dehat ez van.

Ami viszont ezzel nincs osszefuggesben, az az, hogy nem azert nem megy webes Xep128-ban mert szandekosan teszek azokra, akik mas kiosztast hasznalnanak :) hanem a fent leirt dolgok miatt :( Sajna ugy tunik a sok retegen valahol elcsuszik a dolog ... :-/
Title: Re: Xep128
Post by: Povi on 2016.November.02. 19:39:11
de pont ez az amiert sokan meg utaljak a Chrome-ot, mert emiatt szeret tobb RAM-ot is enni ugyebar

Ez egyébként szerintem azért hülyeség (mármint, hogy emiatt egyesek utáják a Chrome-ot), merthogy ugyebár a RAM az egy erőforrás. Ha ugyanis ott a 4-8 GB RAM a gépben, akkor miért ne töltse ki az adott sw, ha van rá lehetősége?

Ez olyan, mint egy extrásított EP progi. Ha kell, elfut 128k-s alapgépen is, de ha van bőven RAM, akkor kihasznnálja, és betöltődik az extra digi zene, meg az extra szuper grafika is :-) Vagy éppenséggel 32kB-nál nagyobb forrásfájlt is be lehet tölteni (pl. a HEASS-ban).

Az, hogy valami sok RAM-ot használ, nem feltétlenül jelenti azt, hogy rosszul van megírva, vagy rosszul gazdálkodik a RAM-mal, és teleszemeteli... Hanem éppenséggel jelentheti azt is, hogy ha már ott van a gépben, akkor miért ne használja fel arra, hogy szebb / jobb / biztonságosabb legyen?
Title: Re: Xep128
Post by: lgb on 2016.November.02. 19:54:48
Ez egyébként szerintem azért hülyeség (mármint, hogy emiatt egyesek utáják a Chrome-ot), merthogy ugyebár a RAM az egy erőforrás. Ha ugyanis ott a 4-8 GB RAM a gépben, akkor miért ne töltse ki az adott sw, ha van rá lehetősége?

Ez olyan, mint egy extrásított EP progi. Ha kell, elfut 128k-s alapgépen is, de ha van bőven RAM, akkor kihasznnálja, és betöltődik az extra digi zene, meg az extra szuper grafika is :-) Vagy éppenséggel 32kB-nál nagyobb forrásfájlt is be lehet tölteni (pl. a HEASS-ban).

Az, hogy valami sok RAM-ot használ, nem feltétlenül jelenti azt, hogy rosszul van megírva, vagy rosszul gazdálkodik a RAM-mal, és teleszemeteli... Hanem éppenséggel jelentheti azt is, hogy ha már ott van a gépben, akkor miért ne használja fel arra, hogy szebb / jobb / biztonságosabb legyen?

Jo, hat persze igazad vagyon, csak sok forumon is olvastam hogy firefox user kb "amint a firefox is ezt csinalja, bongeszot valtok" :) Nekem ez nem gond, legalabbis nem erzelmi alapu gond :) de teny, hogy nekem is ez a bajom a chrome-al: van az hulye szokasom (tudom, ez az en bajom ...), hogy neha 60 bongeszo tab-om is van :D Namost mivel 4G RAM van a gepemben, ez mar firefoxnal is kezd problemas lenni, chrome-nal meg konkretan katasztrofa :) Ugyanakkor persze multi-process model mellett nagyobb a biztonsag, jobb az egesz bongeszo "reszponzivitasa" vagy hogy hijjak' ezt :) es nem all le minden egy pillanatra, mert egyik tab eppen refresh-t jatszik pl EP forum :) Na meg tudom, vegyek RAM-ot, olcso az :) Mondjuk tenyleg akarok is, most ezen ne muljon.
Title: Re: Xep128
Post by: Zozosoft on 2016.November.02. 21:02:27
hogy neha 60 bongeszo tab-om is van
Na én ezt nem értettem meg soha, hogy ez mire jó :-)
Title: Re: Xep128
Post by: lgb on 2016.November.02. 21:49:45
Na én ezt nem értettem meg soha, hogy ez mire jó :-)

Nem kell erteni, kinek mi jon be, en neha azt se ertem, mas mit eszik egy non, mas meg azt nem, hogy en mit :-D
Title: Re: Xep128
Post by: IstvanV on 2016.November.28. 21:10:12
A Xep128 es a ROM-ja (ami magabol a Xep128-bol jon) annyira szorosan integralva van, hogy az sjasm-al forditott XEP ROM symbol tablajabol kapott cimkek hasznalva vannak a C forraskodban konkretan, tehat lathato, hogy a ketto nem igazan szetvalaszthato ...

Erre ugyan van egyszerű megoldás: az emulátor funkciók hívására használt (eredetileg érvénytelen) utasítás kódjába beépíthető a funkció száma, a paraméterek pedig a Z80 regiszterekben adhatók át. Én 0xED 0xFE 0xFE N-t használok az epfileio.rom-ban, ami a kód speciális értelmezése nélkül NOP, NOP, CP N lenne. A 0xED 0xFE 0xFE 0x05 például az EXOS 5 hívásnak felel meg, és a használata is azonos (bemenet: A = csatornaszám, kimenet: B = olvasott karakter, A = állapot). Ha a ROM fel van készítve arra, hogy ezek az utasítások hatástalanok is lehetnek, akkor a másik emulátorban való betöltés nem okoz különösebb problémát, bár a speciális funkciók természetesen nem működnek.
Title: Re: Xep128
Post by: lgb on 2016.November.28. 23:05:09
Erre ugyan van egyszerű megoldás: az emulátor funkciók hívására használt (eredetileg érvénytelen) utasítás kódjába beépíthető a funkció száma, a paraméterek pedig a Z80 regiszterekben adhatók át. Én 0xED 0xFE 0xFE N-t használok az epfileio.rom-ban, ami a kód speciális értelmezése nélkül NOP, NOP, CP N lenne. A 0xED 0xFE 0xFE 0x05 például az EXOS 5 hívásnak felel meg, és a használata is azonos (bemenet: A = csatornaszám, kimenet: B = olvasott karakter, A = állapot). Ha a ROM fel van készítve arra, hogy ezek az utasítások hatástalanok is lehetnek, akkor a másik emulátorban való betöltés nem okoz különösebb problémát, bár a speciális funkciók természetesen nem működnek.

Igazabol en nagyon okos akartam lenni anno :) Az volt az alapelkepzelesem, hogy en nem akarom nyilvantartani, hogy milyen funkciora milyen "ED trap"-et hasznalok, hanem szimbolum nevekkel operalok, es igy az "trap" _cime_ szamit ... Ez amugy tenyleg kenyelmes, es jobban latszik (legalabbis szamomra ...) az egeszben, hogy mi mihez tartozik (es kulon "konyvelni" sem kell), amde megvan az a karos hatasa, hogy igy persze egy byte-nyi kod hozzaadasaval "elmaszik" a XEP ROM-ban minden mogotte levo cim, akkor azt ugye egy masik Xep128 mas verzioval mar nem fogja felismerni, mert masok a trap-ek cimei. Persze, amikor ezt alkottam, nem volt meg olyan otletem, hogy pl snapshot-ot akarnek valaha is, orultem, ha _barmit_ csinal szerencsetlen emulator, nem voltak meg ilyen "advanced" elkepzeleseim :D :D
Title: Re: Xep128
Post by: IstvanV on 2016.November.29. 10:06:37
Az volt az alapelkepzelesem, hogy en nem akarom nyilvantartani, hogy milyen funkciora milyen "ED trap"-et hasznalok, hanem szimbolum nevekkel operalok, es igy az "trap" _cime_ szamit ... Ez amugy tenyleg kenyelmes, es jobban latszik (legalabbis szamomra ...) az egeszben, hogy mi mihez tartozik (es kulon "konyvelni" sem kell)

A címek helyett funkciókódok használata nem jelentene különösebb nehezítést, és elkerüli a ROM címek emulátorba építésével járó problémákat:
Code: [Select]
xepsym_fileio_open_channel      equ     1
xepsym_fileio_create_channel    equ     2
xepsym_fileio_close_channel     equ     3
xepsym_fileio_destroy_channel   equ     4
xepsym_fileio_read_character    equ     5
;...

MACRO   TRAP sym
        DB 0xBF, 0xED, xepsym_ed_trap_opcode, 0x20, sym
        JP NC, error_noemu
sym = $
ENDMACRO
Az xep_rom_syms.h pedig ugyanúgy generálható, ha fontos, hogy a fenti táblázat csak egy helyen legyen tárolva. Ez a makró egyben azt is ellenőrzi, hogy a funkció valóban támogatott-e, ha igen, akkor az emulátornak be kell állítania a C jelzőbitet, egyébként (mivel a CP A (0xBF) utasítás mindig C=0,Z=1-et állít be) a ROM hibát jelez.
Title: Re: Xep128
Post by: lgb on 2016.November.29. 11:25:04
A címek helyett funkciókódok használata nem jelentene különösebb nehezítést, és elkerüli a ROM címek emulátorba építésével járó problémákat:
Code: [Select]
xepsym_fileio_open_channel      equ     1
xepsym_fileio_create_channel    equ     2
xepsym_fileio_close_channel     equ     3
xepsym_fileio_destroy_channel   equ     4
xepsym_fileio_read_character    equ     5
;...

MACRO   TRAP sym
        DB 0xBF, 0xED, xepsym_ed_trap_opcode, 0x20, sym
        JP NC, error_noemu
sym = $
ENDMACRO
Az xep_rom_syms.h pedig ugyanúgy generálható, ha fontos, hogy a fenti táblázat csak egy helyen legyen tárolva. Ez a makró egyben azt is ellenőrzi, hogy a funkció valóban támogatott-e, ha igen, akkor az emulátornak be kell állítania a C jelzőbitet, egyébként (mivel a CP A (0xBF) utasítás mindig C=0,Z=1-et állít be) a ROM hibát jelez.

Persze, hogy at lehetne irni, csak meseltem, miert lett ilyen :) Mondjuk addig lenyeges problemat nem okoz, amig nem akar snapshot-ot menteni, amit valami be is toltene :)
Title: Re: Xep128
Post by: lgb on 2016.November.30. 01:25:50
Btw, a snapshot-rol meg annyit, hogy van az Xemu project-em, amiben tobbek kozott van Commodore LCD es Commodore 65 emulacio, illetve formalodo Mega-65 is ... Meg nemi Primo kezdemeny pl, stb (na errol irtam a randa cikkem az Enterpress-be hehe http://ep.lgb.hu/doc/my_ep_emu_adventures.html , btw, Istvan, nem akarsz valami szebbet irni ep128emu viszonylatban? biztos sok embert erdekelne, meg a szemelyes vonulata is akar, engem legalabbis biztos!). Node, szoval, ebbe importaltam nemreg a Xep128-at, ott csak egy "target" az emulaciok kozott. Az xemu-nak van sajat snapshot formatuma, amire van egy "framework" es az egyes hw komponenseknek vannak "callback-jeik" ami lementi az allapotot, szoval egy adott emulacio snapshot-ja javareszt kozos kodbazist hasznal, csak tenyleg az emulation target specifikus dolgokat kell hozzatenni sajat callback formajaban. Itt most az a szitu, hogy ez bar sajat formatum, pl a Z80-et szeretnem legalabb a z80 "blokk" szintjen ep128emu kompatibilisre majd, igy ep128emu snapshot betoltesekor ezt a reszt fel lehet hasznalni. Nyilvan ez igaz masra is akar, pl a nick-re, dave-re, stb.
Title: Re: Xep128
Post by: geco on 2018.January.06. 12:08:02
Szia LGB :)
WOS-on merült fel pár kérdés XEP128-cal kapcsolatban :

Fejleszted még az emulátort ?
Bináris XEP128 fellelhető-e Raspberryre?
A kérdező úgy értette valamelyik postot olvasva, de lehet gúgli translate elnavigálta, hogy érdekel téged vagy a XEP128, vagy egy másik emulátor ARM hardverbe való ültetése.

Itt az eredeti, hátha én is elnavigáltam valamit: :D
"Out of curiosity, I read somewhere that the Xep128 emulator can in theory be compiled to a Raspberry Pi... Some old YouTube videos seem to confirm that... Do you know whether this emulator is still in development or whether binaries can be found anywhere for the Raspberry pi?... Im guessing compiling for a Rasberry Pi is a complex job, and probably beyond my ability - just wondered if pre-compiled binaries for raspberry pi's exist anywhere?...

I also think I read somewhere a forum entry that suggested that the Xep author had interest in creating either that emulator or another to run native on ARM hardware, as a bare metal emulator - is that correct, or did I miss read the google-translation?..."
Title: Re: Xep128
Post by: szipucsu on 2018.January.06. 13:03:00
Jól navigáltad. Tényleg így írja, hogy valahol olvasta (de lehet, hogy félreolvasta), hogy vagy ezt az emut, vagy egy másikat akar LGB futásra bírni natív módon ARM hardveren, mint valami "csupasz fém" (?) emulátor. Csak tippelek, hogy ez azt jelenti, hogy egyből rá a hardverre íródna az emulátor, maga az emu lenne az oprendszer. Natív, csupasz fém, az biztos nagyon jó lehet. :D
A gugli pl. ilyet dobott a bare metal kifejezésre, de lehet, félrenavigál:
[attachimg=1]
Title: Re: Xep128
Post by: lgb on 2018.January.06. 19:26:24
Ehm :) Na szoval, a "bare metal" programming igen, elvileg azt jelenti, hogy nincs OS egyaltalan, tehat kozvetlenul a hw (a "vas", "metal") folott vagy. Ez azert nem olyan trivialis dolog, mert akkor tenyleg mindent neked kell csinalni, amit ugye altalaban az OS megold (file access-tol kezdve minden, ami OS alatt nyilvan ugy szokas h meghivunk csak egy file open/read stb funkciot, amit az OS rendelkezesre bocsajt - ugyanez "bare metal" stilusban az, hogy eloszor kell irnod sajat drivert az SD-kartya/hdd/ami van eleresehez, aztan a file rendszer kezelesehez stb stb!!!!). Elvileg persze lehetne ilyet barmilyen sw-vel csinalni, Xep128-al, massal is, de azert ehhez jocskan meg kell dolgozni a dolog jellege miatt. Legyen a "vas" rapsberry pi, vagy akar PC is stb (regen PC-re is voltak jatekok amit bootolni kellett, azaz nem kellett ala OS voltakeppen, bar igaz, hogy pl DOS-ra keszult cuccok egy resze amugy is felig kozvetlenul hw-t hasznal mert DOS nem igazan egy "igazi" operacios rendszer amugy sem). Ilyesmit a Xep128 jelenleg nyilvan nem tud.

A kerdes masik resze, hogy Raspberry Pi alatt futtathato-e a Xep128 (marmint OS-sel most). Az persze, elevegre az "alap" OS ala egy Linux, tehat voltakeppen nem igazan kulonbozik attol a szitu, hogy mas Linux (pl PC-n futo Linux) ala forditja az ember. De amugy itt egy eleg vacak, regi, stb videom errol:

https://www.youtube.com/watch?v=n-qYMUGZaAs

Azert sem tul nehez leforditani, mert a Xep128 az kb majdnem "tiszta" SDL2 app, szoval amit SDL2 tamogat, azzal nincs gond. Az ep128emu-t szerintem nehezebb lenne pl, foleg, mivel vannak egyeb fuggosegei is (ezt most nem negativan mondtam, de a hordozhatosag szempontjabol kulonbozo platform-ok kozott ez jelenthet problemat). Bar azt is meg lehetne valahogy oldani, gondolom, ez ugyben nem nyilatkoznek :-D Spec, a Xep128 azert is egyszeru, mert nem igazan van semmi egyeb menurendszer, UI elem stb benne, mint maga az emulator window (ami SDL2), igy tenyleg javareszt az SDL2-n mulik. Ilyen elven amugy elvileg Android-ra is lehetne viszonylag egyszeruen portolni, mivel az SDL2 tamogat ilyesmit.

Mondjuk amikor en utoljara probaltam raspberri pi-re, akkor egy a raspbian-ban nem levo SDL-t forditottam meg ala, es ugy mux, hogy GUI nem is kell hozza (tehat kozvetlenul text console-on kell elinditani). Ez kicsit kulonbozoik pl egy atlag PC-n futo Linux-tol, ahol X/Wayland/akarmi felett megy a cucc altalaban ugye. Oszinten, nem tudom hol tart a raspbian, pl hogy milyen SDL van benne verzioszamilag, regebben az volt a gond, hogy ami alapbol volt benne az egyszeruen tul regi volt mar a Xep128-nak ...
Title: Re: Xep128
Post by: geco on 2018.January.06. 19:35:30
Ehm :) Na szoval, a "bare metal" programming igen, elvileg azt jelenti, hogy nincs OS egyaltalan, tehat kozvetlenul a hw (a "vas", "metal") folott vagy. Ez azert nem olyan trivialis dolog, mert akkor tenyleg mindent neked kell csinalni, amit ugye altalaban az OS megold (file access-tol kezdve minden, ami OS alatt nyilvan ugy szokas h meghivunk csak egy file open/read stb funkciot, amit az OS rendelkezesre bocsajt). Elvileg persze lehetne ilyet barmilyen sw-vel csinalni, Xep128-al, massal is, de azert ehhez jocskan meg kell dolgozni a dolog jellege miatt. Legyen a "vas" rapsberry pi, vagy akar PC is stb (regen PC-re is voltak jatekok amit bootolni kellett, azaz nem kellett ala OS voltakeppen, bar igaz, hogy pl DOS-ra keszult cuccok egy resze amugy is felig kozvetlenul hw-t hasznal mert DOS nem igazan egy "igazi" operacios rendszer amugy sem). Ilyesmit a Xep128 jelenleg nyilvan nem tud.
Tehát akkor félreértette :)

És ugye a XEP128 fejlesztését nem fejezted abba? :)
Title: Re: Xep128
Post by: lgb on 2018.January.06. 19:50:58
Tehát akkor félreértette :)

És ugye a XEP128 fejlesztését nem fejezted abba? :)

Nem nyilvanitom "abbafejezettnek" :) de az gondolom feltunt, hogy nem is vagyok tul aktiv benne mostanaban, mondhatni "szuneteltetve". Ez nem jelenti azt persze, hogy vegleg letettem rola, vagy barmi hasonlo ... De itt tobb dolog is van:

1. Az ep128emu-bol hianyoltam par dolgot, pl SD-kartya, eger, ilyesmik, amit en abba beletenni nehezen tudtam volna (C++, stb), IstvanV meg akkoriban annyira nem akarta mar fejleszteni ahogy lejott ez nekem, ezert inkabb megcsinaltam magam a Xep128-ban. Azota viszont az ep128emu is tud kb mindent amit a Xep128 vagy ugyanugy, vagy inkabb jobban, tehat kerdeses hogy mennyi ertelme van (semmi negativ erzesem nincs itt mielott vki felreerti, ezek csak tenyek :) ). Van amiben viszont a Xep128 latvanyosan le van maradva (vagy javareszt ertekelheto modon nincs is benne), pl hang.

2. Ennek ellenere en mindig elveztem a Xep128-al valo munkat, mert alapvetoen a kihivas/hobby stb jellege erdekes szamomra, meg akkor is, ha nem feltetlen versenytarsa az ep128emu-nak (ismet, emogott nincs semmi erzelemi toltet). :) :)

3. Mostanaban mar jo ideje igazabol idom sem lenne ra nagyon :(

4. Nem is igazan erkezett feedback, hogy sok embernek hianyozni. Nem, ettol nem fogok sirogorcsot kapni :) :) tenyleg csak megjegyeztem. Oszinten, en magam is orulok, hogy ep128emu-ba bekerult egy csomo dolog, ami regebben hianyzott, en is gyakran hasznaltam/hasznalom, gyakrabban idonkent mint a sajat Xep128-amat, hogy bevaljam :) :)

5. Mas temaban (Commodore 65, Commodore LCD, Mega 65 emulaciok) az Xemu projectben vagyok erdekelt egy ideje igazan, ahol nincs is igazan mas hasznalhato emulator egyaltalan szo szerint. Ennek kapcsan az "Xemu" nevu cuccot "talaltam ki" es fejlesztgetem, ami elvileg amolyan multi-platform, multi-emulator framework/API stb lenne egyszer, ha majd felno szep nagyra :) Ennek keretein belul vannak az emlitett emulaciok, illetve ebbe beletoltam mar viszonylag regebben a Xep128 kodbazisat is (miert fejlesztenek tok redundansan hasonlo emulator "alapot" tobbet is?). De oszinten, azota sok minden nem tortent vele, es igazan integralva sincs az "Xemu framework"-kel ...

6. Amugy is nyitott vagyok barmire, ami erdekes, otletes, elgondolkodtato, stb stb, az egyetlen objektiv problema nalam az idom hianya szokott sajnos lenni, meg ha amugy erdekelne is a dolog :(
Title: Re: Xep128
Post by: geco on 2018.January.06. 19:55:41
Köszi szépen a kimerítő választ, tolmácsolom :)
Gondolom pont a könnyebb portolhatósága miatt érdeklődött az érdeklődő :)
Title: Re: Xep128
Post by: lgb on 2018.January.06. 20:12:38
Köszi szépen a kimerítő választ, tolmácsolom :)
Gondolom pont a könnyebb portolhatósága miatt érdeklődött az érdeklődő :)

A masik, hogy IstvanV technikai tudasa az EP-rol es az emulator-krealasrol is profibb mint az enyem. Ismet: ez nem gond nekem, mindig jo, ha valakitol lehet tanulni :)
Title: Re: Xep128
Post by: lgb on 2018.January.06. 20:16:09
A masik: en nem zarkozom el senki elol, ha kerdez, szoval felolem irjon az email cimemre. Marmint ez a tolmacsolas sem zavar, csak ugy mondtam :-P
Title: Re: Xep128
Post by: lgb on 2018.January.06. 20:22:03
Raspberry-Pi mellett amugy erdekes pl a mellkelt kepen lathato cucc is. Epp kaptam egyet karacsonyra. CHIP nevre hallgat, ez is ilyen ARM-os cucc, meg olcsobb is. Igaz, eroforrasban is szerenyebb, es alapbol pl csak kompozit TV kimenete van vagy vmi hasonlo (lasd a kabelt), HDMI-t ilyesmit csak ugy tudna ha lenne hozza egy kulon board ami kapcsolodik hozza. Viszont eleg kis kompakt cucc, erdekes lehet ilyen emulator platformnak is, igaz, nem feltetlen egy eromu a cucc persze!![attachimg=1]
Title: Re: Xep128
Post by: endi on 2018.January.06. 20:31:33
hm ez érdekes hogy kompozit kimenet. nem pont ez ami plusz áramköröket igényel??
Title: Re: Xep128
Post by: lgb on 2018.January.06. 20:43:53
hm ez érdekes hogy kompozit kimenet. nem pont ez ami plusz áramköröket igényel??

Fene tudja. Szerintem valszeg' alapbol benne van az integralt SoC-ban az egesz ARM-ostul stb, az mar inkabb uzletpolitikai meg "hol fer el a csatlakozo" kerdes, hogy alapbol a csati is rajta van-e, vagy nem fer el, inkabb vegyel hozza meg dolgot ha kell stb stb. Persze nem biztos, de van egy ilyen erzesem :) Mondjuk spec ez annyibol is erdekes, h kompozit kimenet eleve "elkeni" kicsit a kepet, tehat jobban hasonlit az eredeti feelingre ha emu fut alatta. Ez spec akkor gaz, ha igy nincs mire kotni :) De amugy valami 8$ vagy mi egy ilyen :-O Szoval tenyleg eleg olcso legalabb. Mondjuk "raspberry pi zero" se sokkal dragabb (nem tudom amugy ...) es abbol mintha alapbol lenne HDMI (sot talan ethernet is, mert pl ezen az sincs, eleg barebone a cucc ... de pont ettol aranyos is egyben).

Most eszembe is jutott, hogy epp neztem azt az ARM STM32 alapu emulator topic-ot itt a forumon, elvileg kb lehetne ilyenre is hasonlo projectet ilyen elven ... Bar az talan "egyszerubb" cucc meg ennel is? Passz (mivel az elvileg MCU kategoria, lehet egyszerubb ...)
Title: Re: Xep128
Post by: lgb on 2018.January.07. 00:52:58
Mellesleg - jut eszembe - hasonlo raspberry-pi bare metal project pl ez:

https://github.com/xlar54/Commodore-Pi

Ezt mar regebben neztem, itt is olyan gondok vannak, hogy ugye egy teljes hw-t kell magatol kezelnie az embernek, ami nem teljesen trivialis, pl doglassu ... Mert aztan mindenfele CPU cache setup-tol kezdve mindent akkor maganak kell az embernek csinalnia, amit az OS megcsinal, ha van ...
Title: Re: Xep128
Post by: gflorez on 2018.January.07. 00:58:09
Azt hiszem, a Xep128 még mindig sok életet él,
különösen egy program viselkedését a fejlődésre
  az EP128 pillanatfelvételek helyett.
  Ez még univerzálisabb, még az Androidon is működik, ideális a telefonon, minden helyen, hogy egy új program hogyan működik.

Az egyetlen probléma az, hogy konfigurálják, hogy rendelkezzenek egy hirdetési webes tartománygal, de a másik oldalon nagy kompatibilitással rendelkezik.

----------

I think Xep128 has still a lot of life, especially to show the behaviour of a program on development  instead of EP128 snapshots.  It is more universal, it works even on Android, ideal to see on the phone, on every place, how a new program do its job.

The only problem is to configure it, to have a propietary web domain, but on the other side it has a high compatibility.
Title: Re: Xep128
Post by: Tutus on 2018.January.07. 07:08:31
Nagyon támogatom az ötletet, mivel hardveres EP emulátor eddig csak egy van, az Z80MU, ami sajnos nem tudja emulálni rendesen gépünket :(
Ez a cucc több 8 bites gépet emulál, a többivel nincs gond, viszont az EP-vel igen. Úgy tűnik, hogy nem is lehet ezen javítani...
A XEP128 pedig alapból nagyon szimpi nekem, így szoftveresen is :)
Title: Re: Xep128
Post by: lgb on 2018.January.07. 17:52:16
Lehet, velem van a baj, de nem ertem, miert hardware-es emu a Z80MU. Ha jol ertem, azon is software fut, tehat software-es. Vagy csak azert "hardwares" mert nem egy atlag PC-n fut, hanem valami "neki csinalton"? Attol meg szerintem a szitu uaz kb az emulator szempontjabol. Vagy van mas kulonbseg is?
Title: Re: Xep128
Post by: ergoGnomik on 2018.January.07. 18:01:36
Lehet, velem van a baj, de nem ertem, miert hardware-es emu a Z80MU. Ha jol ertem, azon is software fut, tehat software-es. Vagy csak azert "hardwares" mert nem egy atlag PC-n fut, hanem valami "neki csinalton"? Attol meg szerintem a szitu uaz kb az emulator szempontjabol. Vagy van mas kulonbseg is?
+1
Title: Re: Xep128
Post by: Tutus on 2018.January.07. 18:31:28
Öööö, igen, akkor én írtam rosszul :) Szoftveres, csak egy kis kütyü az egész.
Title: Re: Xep128
Post by: lgb on 2018.January.07. 18:52:12
Öööö, igen, akkor én írtam rosszul :) Szoftveres, csak egy kis kütyü az egész.

Nem veled akartam "szivozni", latom sokan masok is igy hivjak, azert erdekel, hogy mi erre az indok :) De amugy ha mar kis kutyu, nem lenne egyszerubb egy keszen kaphato Raspberry Pi, CHIP, vagy egyeb hasonlo? Meretben kb uaz, arban szerintem olcsobb is, mintha az ember sajat maga tervez es allitja ossze maganak, vagy esetleg kis tetelben (< millio peldany ...) masoknak is, stb stb. Szoval, bar elismerem, erdekes vallalkozas egy ilyen, nem biztos, hogy objektive sok ertelme van. Igaz, mas ugyanezt mondja EP-re, C64-re, akarmire, annak sincs a legtobb ember szerint _mar_ ertelme jo par evtizede, szoval ki vagyok en hogy biraljam :) :)

Amugy az a bena videot amit postoltam nemreg, az meg egy raspberry pi 1 csak. Azon az Xep128 kb epp hogy elfutott, igaz kulonosebb optimizacio stb sem volt, es C-ben van persze, C forditoval forditva, stb stb. Ennel lenyegesen gyengebb hw-n mar nem konnyu osszehozni hasznalhato eredmenyt, max akkor tenyleg jon az, hogy optimalizalas, esetleg kozvetlenul ARM asm-ban nehany dolgot, tobb CPU/MCU specifikus hasznalata, az "OS reteg kihagyasa" (="bare metal programming") stb stb. Csak nem biztos, hogy megeri, amikor ilyen kis gepecskeket az ember mar 10$ alatt megkap, vagy annak kornyeken ...