Welcome, Guest. Please login or register.


Author Topic: EP128emu (Read 401703 times)

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #540 on: 2016.August.08. 07:23:49 »
Az Fl_Native_File_Chooser::show() száll el, amit a makecfg.cpp az 1349. sorban hív. A file választó ablak az FLTK 1.3.3 verzióban GTK alapú lett Linuxon, tehát itt lehet valamilyen változás vagy hiba. De az emulátornál nincs ilyen probléma, ott működik az Fl_Native_File_Chooser.

Az okozhatja a hibát, hogy a makecfg-ben nincs másik ablak ennek a megjelenítése előtt, talán erre a lehetőségre még nem készítették fel az új változatot. :) Ha a "Select installation directory..." előtt megjelenítek egy tetszőleges FLTK ablakot, akkor már nincs hiba.

Köszi.

Már keztem ideg lenni, hogy az fltk-1.3.3 csomagomat nem jól csináltam, ezen a téren megnyugtattál. UHU-3 alá nem frissítem fel addig az fltk -t, míg ez a a probléma meg nem oldódik, marad a régi ep128emu csomag ott.
A leendő UHU ubk1 RIA alatt sem lesz jó, mert ott is töröltem az fltk1 csomagot, ott csak flk-1.3.3 van már azzal készült el minden csomag és semmi kedvem azt visszafejleszteni, mert akkor ezeket a csomagokat újra kellene építenem majd az fltk régebbi verzióval:
dillo, edelib, ede, jwm-settings-manager, lmms, mathgl, teapot, tigervnc, ep128emu
Tervbe vettem a leendő UHU kiadásunk csomagkészletünk bővítését a plus4emu -val is, ez utóbbit a most életképes UHU-3 alá már bele is nyomtam pár napja. (ftp://ftp.ubk.hu/pkg/3/main/plus4emu_1.2.9.2-1.1_i386.ubk.uhu).

Ha valóban fltk-1.3.3 rendszerszintű Linuxon a hiba, akkor lgb az UBUNTU -n megnézhetné, hogy neki működik e a mkconfig...
Lehet, hogy UBI alatt már megpatkolták az fltk-t erre a hibára, akkor átveszem tőlük az fltk hibajavító foltot.
szerk:
Az fltk1.3_1.3.3-8.debian.tar.xz -ben nincsenek debian foltok, tehát, ha LGB-nek működik, akkor az fltk patkóval nem gyógyítandó.
Tényleg! UBI alá nem lehet telepíteni kész ep128emu csomagot valamelyik ppa tárolóból?
« Last Edit: 2016.August.08. 07:43:50 by Attus »

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #541 on: 2016.August.08. 07:47:43 »
István!

:idea:
Nem lenne egyszerűbb  ezt a nyamvadt makecfg -t magából az emulátorból, annak menüpontjából indítani?
Akkor  a fájlválasztó ablak már biztosan megjelenne.

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #542 on: 2016.August.08. 09:05:48 »
UHU-3 alá én célszerűnek láttam lecserélni a /usr/bin/ep128emu binárist egy ep128emu szkriptre, persze az ep128emu bináris átneveztem ep128emu.bin -re.
Így ugyanis az ep128emu hívása esetén a szkript letölti a romokat, ha kell, és futtatja az ep128emu.bin ELF binárist a megkapott paraméterekkel.
Ha meg létezik $HOME/.ep128emu mappa, akkor nem tölt le semmit, hanem egyből futtatja az emu -t. :cool:
A makecfg-ep128emu.bin exec hívással nem jó, mert azzal a szkript már elfelejtődik! :(
Ettől még a makecfg-ep128emu wrapper nyugodtan lefuttatható külön is. :)

Az ep128emu /usr/bin alatti ep128emu nevű indító wrapperem: https://github.com/uhulinux/ub-3/blob/55c629c626ccd6da7b86e3c928b2d187937237c2/ep128emu/addons/usr/bin/ep128emu
A  csomag chrootba installáló szkriptje: https://github.com/uhulinux/ub-3/blob/55c629c626ccd6da7b86e3c928b2d187937237c2/ep128emu/install
« Last Edit: 2016.August.08. 09:20:19 by Attus »

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #543 on: 2016.August.08. 10:02:37 »
Kipróbáltam az fltk-1.3.3 -al készült csomagomat az UHU-3 alatt.
Az ablakkeretben az ikonok nem jelnnek meg GNOME, MATE, ICEWM, LXQT alatt, ellenben fluxbox, kwin (KDE4), openbox ablakkezelőknél igen.
Hiába, ez nem oly sima ügy, mint windows esetén, ahol nincs ilyen ablakkezelő választék, mely az ablakkereteket építi fel.
:twisted:

A gdb kimenet ez:
Code: [Select]
attila@gubigep:/usr/src/UHUBUILD/UB-3/ep128emu/addons/usr$ gdb makecfg-ep128emu.bin
GNU gdb (GDB) 7.7
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-uhu-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from makecfg-ep128emu.bin...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/makecfg-ep128emu.bin
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
[New Thread 0xb65f6b40 (LWP 28020)]
[New Thread 0xb5bffb40 (LWP 28021)]
[New Thread 0xb51ffb40 (LWP 28022)]
[New Thread 0xb47ffb40 (LWP 28023)]

Program received signal SIGSEGV, Segmentation fault.
0xb7d4b0b5 in XEventsQueued () from /usr/lib/libX11.so.6
(gdb) backtrace
#0  0xb7d4b0b5 in XEventsQueued () from /usr/lib/libX11.so.6
#1  0xb7f5cd62 in Fl_GTK_File_Chooser::fl_gtk_chooser_wrapper() () from /usr/lib/libfltk.so.1.3
#2  0xb7f5cf66 in Fl_GTK_File_Chooser::show() () from /usr/lib/libfltk.so.1.3
#3  0xb7f5d702 in Fl_Native_File_Chooser::show() () from /usr/lib/libfltk.so.1.3
#4  0x0804a4f4 in ?? ()
#5  0xb79dd5ac in __libc_start_main () from /lib/libc.so.6
#6  0x0804bf81 in ?? ()
(gdb)

Csatolok pár képernyőképet a fluxbox alól, amelyekben változást tapasztaltam a menüben megjelenő ikonokat illetőleg.
« Last Edit: 2016.August.08. 10:09:59 by Attus »

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EP128emu
« Reply #544 on: 2016.August.08. 10:39:02 »
A pkg-config --cflags --libs lua mit ír ki ? Az újabb (5.2 és 5.3) Lua verziókkal kompatibilitási problémák is előfordulhatnak.

Ja, hogy azt nezne? No, ezt nem talaltam, en az SConstruct-ban kerestem, de akkor lehet, hogy az scons "beepitve" tartalmazza a tesztet, es az SConstruct csak utasitja ra, hogy csinalja meg.

Code: [Select]
Package lua was not found in the pkg-config search path.
Perhaps you should add the directory containing `lua.pc'
to the PKG_CONFIG_PATH environment variable
No package 'lua' found

:) Viszont:

Code: [Select]
lgb@vega:~$ pkg-config --cflags --libs lua-5.3
-I/usr/include/lua5.3 -llua5.3
lgb@vega:~$ pkg-config --cflags --libs lua-5.2
-I/usr/include/lua5.2 -llua5.2

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: EP128emu
« Reply #545 on: 2016.August.08. 11:11:25 »
Ja, hogy azt nezne?

Nem, jelenleg nem használja a pkg-config-ot, de elvileg könnyen be lehetne építeni. Probléma azonban, hogy nem tűnik hordozhatónak a disztribúciók között, lehet, hogy több csomagnévvel is kellene próbálkozni (lua, lua51, lua-5.1, stb.).

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #546 on: 2016.August.08. 20:51:50 »
Megcsináltam az fltk teszt tárolójából a legfrisebb forrásból az fltk csomagot (1.3.4) és azzal az ep128emu csomagot.
https://github.com/fltk/test-only
Feltelepítettem őket.
Ezzel már nem száll el a makecfg, feldob egy gtk ablakot az fltk helyett a célmappa választáshoz, amlelybe nincs beírva előre a ./ep128emu mappa, nekem kell beírni, de ekkor kilép, hogy a mappa már létezik, igaza van, mert a wrapper hozta létre. Ha közben letörlöm a létrehozott .ep128emu mappát, akkor már továbblép a makecfg, feldobja az fltk ablakot a keyboard konfigurálásához és rendben befejezi a működést. Azaz mégse, mert a romhalmazt nem bontja ki!

Szumma.
Az fltk-1.3.3 -al a makecfg puritán módon összeomlik, az fltk-1.3.4 teszt változattal meg nem bontja ki a romhalmazt a felhasználó bosszantása után sem.

Tehát Linux alatt úgy néz ki, hogy csak az fltk-1.3.2 az utolsó használható eddig az ep128emu -hoz.

Visszafejlesztettem UHU-3 telepítményemen az eredeti fltk-1.3.2 -t és a vele gyártott ep128emu változatot.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: EP128emu
« Reply #547 on: 2016.August.09. 07:45:23 »
Az ablakkeretben az ikonok nem jelnnek meg GNOME, MATE, ICEWM, LXQT alatt, ellenben fluxbox, kwin (KDE4), openbox ablakkezelőknél igen.

Ezt az emulátorban valószínűleg nem lehet javítani, az ikonok megjelenítése az FLTK feladata. :)

Quote
Csatolok pár képernyőképet a fluxbox alól, amelyekben változást tapasztaltam a menüben megjelenő ikonokat illetőleg.

Ha a Spectrum és CPC ikonok EP módban jelennek meg, az bug, amit hamarosan javítok. :oops:

A makecfg problémák javítására Linuxon a régi FLTK file választó ablakot (Fl_File_Chooser) fogom használni, azzal nincs hiba FLTK 1.3.3 esetén sem.

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #548 on: 2016.August.09. 08:06:00 »
Nos, gányoltam!
:)
Belekukkantottam az fltk-1.3.3 forrásába.
Újra legyártattam a csomagkészítő rendszeremmel az fltk-1.3.3 csomagot a mellékelt foltot alkalmazva, melyet én kreáltam arra, hogy lebeszélje a native-file-chooser -t a gtk változatról.
Ezután ezzel az fltk csomaggal ismét az ep128emu csomit gyártottam újra.
Feltelepítettem az UHU-3 rendszeremre az imígyen legyártott ep128emu csomagot, melyhez az apt csomagkezelőm természetesen hozzátelepítette az imént elkészült foltozott fltk csomagomat is.

És az ep128emu működik, a makecfg is, ami nem omlik immár össze, hanem a hagyományos fájlválasztó ablakkal indít, majd a keyboard ablakkal folytatja és ki is bontogatja a romhalmazt a megfelelő helyre, és utána indul is rendben az ep128emu.
Ez siker az ep128emu -t tekintve, de ez azért mégis gány, mert ezzel kiheréltem az fltk gtk újítását, melyet más programok esetleg használhatnak. Ez nem épp illő dolog, de most itt célravezető.
A legjobb lenne, ha az ep128emu forrását próbálná meg István hozzápasszítani a foltozatlan fltk-hoz.

István!
Megkérhetlek erre?
Persze, ha lehetséges az ep128emu forrás értelmes és célravezető módosítása.

Az mégsem várható el, hogy valamennyi linux disztró, melyek a stabilnak kiadott fltk-1.3.3 -at használják, az ep128emu kedvéért az én foltommal megpatkolják az fltk-1.3.3 csomagjaikat.

Egyelőre én sem veszem bele a patkómat a leendő új UHU kiadásunkba (Szeptemberre várható), lehet, hogy inkább újra belerakom a már kidobott fltk1 csomagot és azzal fog ott majd működni, a most egyelőre így az ottani fltk-1.3.3 -al legyártott ep128emu csomag.

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #549 on: 2016.August.09. 08:10:05 »
A makecfg problémák javítására Linuxon a régi FLTK file választó ablakot (Fl_File_Chooser) fogom használni, azzal nincs hiba FLTK 1.3.3 esetén sem.

Bízom benned!
;-)
Közben írtam valamit én is, ezután olvastam ezt a hozzászólásodat, melyre így elkésve reagálok.
De legalább látod, hogy ügyködtem én is  a magam módján...

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: EP128emu
« Reply #550 on: 2016.August.09. 19:06:27 »
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]

- az emulált gép típusának nem megfelelő ep128emu ikonok javítva
- a makecfg az FLTK file választó ablakot használja Linuxon az 1.3.3 verziónál előforduló hibák elkerülésére
- pkg-config használata a Lua konfigurálására ha egyébként nem sikerül megtalálni (ezt nem teszteltem)

Offline Attus

  • EP addict
  • *
  • Posts: 1225
  • Country: hu
Re: EP128emu
« Reply #551 on: 2016.August.11. 07:25:48 »
Szuper!
:)

Most tűnt fel, hogy a régebbi fltk -val a minimalizált ep128emu ablakok a paneltálcákon az ablakkezelőfől függetlenül (MATE, stb.) eddig ikontalanok voltak, most meg szép zöld ikonnal rendelkeznek.
Nem, mintha az emu működését ez befolyásolná, csupán esztétikailag szebb.

Ellenben újabb "hibát" fedeztem fel az ep128emu -ban.

A plus4emu ablakok  tálcára minimalizált ablakjainak ikonjai:

emulátor: Cbm4
keyboard map: mini billentyű
gép beállítás: mini billentyű
display: mini monitor
floppy: mini floppy
hang: semmi extra, a gép alapértelmezetté
:cool:

Ellenben az ep128emunál nem így van, ott mindig a zöld E betűs ikon van minden ablaknál.
:(
« Last Edit: 2016.August.11. 09:20:29 by Attus »

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: EP128emu
« Reply #552 on: 2016.August.11. 13:12:40 »
Ellenben az ep128emunál nem így van, ott mindig a zöld E betűs ikon van minden ablaknál.

Ez nem hiba, EP-hez, Spectrumhoz, és CPC-hez jelenleg nincsenek külön floppy, billentyűzet, stb. ikonok. :oops: A Plus/4-es ikonok eredetileg nem saját készítésűek (amint az a Read_me.txt-ben olvasható), elvileg lehetne ezeket használni az ep128emu-ban is, de jobb lenne újakat készíteni, amelyeken nem Commodore hardver látható. :)

Egy újabb patch néhány kisebb debugger fejlesztéssel, amelyeket az ep128emu újabb verzióiból másoltam:
[ Guests cannot view attachments ]
- a debugger ablak villogása a Step gombok használata közben javítva
- 160 soros monitor puffer 120 helyett
- szöveges formátumú memória kiírás
- a monitor támogatja a 2-es, 8-as, és 10-es számrendszert, az ep128emu-hoz hasonlóan

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: EP128emu
« Reply #553 on: 2016.August.11. 13:31:39 »
Egy apróság, ha meg lehetne oldani: a Spectrum meg CPC emu használjon saját kiterjesztéseket snapshot meg demo mentéshez, és ezek legyenek megfelelően társítva. Mert most ezekben is EP-s néven van a mentés, de betöltéskor az ep128emu mód indulna, ami persze kifagy :-)
b) verzió ha az emu felismerné a fájlból, hogy milyen mód kell

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EP128emu
« Reply #554 on: 2016.August.11. 13:40:43 »
Nekem az utolso SConstruct path ota a plus4emu:

Code: [Select]
scons: done reading SConscript files.
scons: Building targets ...
fluid -c -o gui/debug_fl.cpp -h gui/debug_fl.hpp gui/debug.fl
g++ -o gui/about_fl.o -c -Wall -O3 -fno-inline-functions -fomit-frame-pointer -ffast-math -DHAVE_STDINT_H -DHAVE_DOTCONF_H -DHAVE_SDL_H -DHAVE_LUA_H -DENABLE_GL_SHADERS -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_THREAD_SAFE -D_REENTRANT -I. -Isrc -I/usr/local/include -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -Igui gui/about_fl.cpp
In file included from gui/gui.hpp:35:0,
                 from gui/about_fl.cpp:3:
src/script.hpp:29:19: fatal error: lua.h: No such file or directory
compilation terminated.
scons: *** [gui/about_fl.o] Error 1
scons: building terminated because of errors.

Pedig meg sem talalta:

Code: [Select]
Checking for C header file lua.h... (cached) no