gilles a écrit:
Je me tâte aussi pour prendre un PI, je pense que ca doit s'adapter et c'est un projet amusant. Comme souvent c'est la lib allegro qui va poser quelques soucis d'adaptation.
Je viens de faire
Code:
sudo apt-get install liballegro4.2-dev
et il vient de m'installer de quoi compiler avec allegro. J'enchaine ensuite avec
Code:
sudo apt-get install mercurial
hg clone http://hg.code.sf.net/p/teoemulator/code -r 1.8.2 teoemulator-code
Reste a voir s'il va bien vouloir se compiler avec allegro 4.2.
Code:
pi@raspberrypi ~/teoemulator-code $ ./fixunix.sh
Configuring Teo sources for the Linux platform...
./fixunix.sh
pi@raspberrypi ~/teoemulator-code $ make
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -msse -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/joystick.o src/media/joystick.c
Package gtk+-3.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-3.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-3.0' found
cc1: error: unrecognized command line option ‘-msse’
make: *** [obj/linux/joystick.o] Error 1
Bon il reste du travail... après un
Code:
sudo apt-get install gtk+-3.0-dev
make m'injurie avec une option sse pas connue.... petite modif de makefile.common ... et ca compile (sans warnings)... jusqu'à
Code:
D -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/usound.o src/linux/usound.c
src/linux/usound.c:56:31: fatal error: alsa/asoundlib.h: No such file or directory
compilation terminated.
make: *** [obj/linux/usound.o] Error 1
ALSA est pourtant bien installé
Code:
pi@raspberrypi ~/teoemulator-code $ sudo apt-get install alsa
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'alsa-base' instead of 'alsa'
alsa-base is already the newest version.
alsa-base set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 11 not upgraded.
Ah ok mince c'est libasound2-dev qu'il faut installer. Ok c'est reparti....
Code:
pi@raspberrypi ~/teoemulator-code $ sudo apt-get install libasound2-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
libasound2-doc
The following NEW packages will be installed:
libasound2-dev
0 upgraded, 1 newly installed, 0 to remove and 11 not upgraded.
Need to get 70.7 kB of archives.
After this operation, 418 kB of additional disk space will be used.
Get:1 http://mirrordirector.raspbian.org/raspbian/ wheezy/main libasound2-dev armhf 1.0.25-4 [70.7 kB]
Fetched 70.7 kB in 0s (127 kB/s)
Selecting previously unselected package libasound2-dev:armhf.
(Reading database ... 118576 files and directories currently installed.)
Unpacking libasound2-dev:armhf (from .../libasound2-dev_1.0.25-4_armhf.deb) ...
Setting up libasound2-dev:armhf (1.0.25-4) ...
pi@raspberrypi ~/teoemulator-code $ find /usr -name asoundlib.h
/usr/include/sys/asoundlib.h
/usr/include/alsa/asoundlib.h
pi@raspberrypi ~/teoemulator-code $ time make
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/usound.o src/linux/usound.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/ugui.o src/linux/ugui.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/usetting.o src/linux/ugui/usetting.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/udisk.o src/linux/ugui/udisk.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/umemo.o src/linux/ugui/umemo.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/ucass.o src/linux/ugui/ucass.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/uprinter.o src/linux/ugui/uprinter.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/uabout.o src/linux/ugui/uabout.c
gcc -c -Wall -Werror -O2 -funroll-loops -ffast-math `pkg-config gtk+-3.0 --cflags` -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_DEPRECATED -DGSEAL_ENABLE -DOS_LINUX -ftree-vectorize -fsigned-char -DUNIX_TOOL -I./include -o obj/linux/udebug.o src/linux/ugui/udebug.c
gcc -s -o teo obj/linux/joystick.o obj/linux/cass.o obj/linux/memo.o obj/linux/keyboard.o obj/linux/mouse.o obj/linux/thmfc1.o obj/linux/sap.o obj/linux/hfe.o obj/linux/fd.o obj/linux/daccess.o obj/linux/disk.o obj/linux/pr906xx.o obj/linux/pr90582.o obj/linux/pr90042.o obj/linux/pr90055.o obj/linux/printer.o obj/linux/errors.o obj/linux/hardware.o obj/linux/image.o obj/linux/ini.o obj/linux/std.o obj/linux/option.o obj/linux/teo.o obj/linux/dasm6809.o obj/linux/mc6809.o obj/linux/mc6821.o obj/linux/mc6846.o obj/linux/png.o obj/linux/ufloppy.o obj/linux/udisplay.o obj/linux/ugraphic.o obj/linux/umain.o obj/linux/usound.o obj/linux/ugui.o obj/linux/usetting.o obj/linux/udisk.o obj/linux/umemo.o obj/linux/ucass.o obj/linux/uprinter.o obj/linux/uabout.o obj/linux/udebug.o `pkg-config gtk+-3.0 --libs` -lasound -lpng
The optimized linux version has been compiled.
real 2m26.478s
user 1m5.890s
sys 0m4.420s
pi@raspberrypi ~/teoemulator-code $ ls -l teo
-rwxr-xr-x 1 pi pi 227559 Aug 5 21:27 teo
COOOOL.. Reste à tester "./teo".. EUREKA!!! CA MARCHE!!!!!!!! dommage que je ne sache pas faire de capture écran sur Raspbian. C'est peut-être la 1ère fois que TEO 1.8.2 marche sur ARM.
Code:
pi@raspberrypi ~/teoemulator-code $ ./teo
Here's Teo 1.8.2 (Linux/X11) the thomson TO8 emulator.
Copyright (C) 1997-2013 Gilles Fétis, Eric Botcazou, Alexandre Pukall, François Mouret, Samuel Devulder.
Keys : [ESC] Control pannel
[F12] Debugger
Initialization of the emulator...ok
MIT-SHM extention used.
Sound initialization (ALSA)...ok
Launching emulation...
La vitesse est tout a fait correcte. Le calvier répond bien. Il y a quelques glitch de rafraichissement sur le menu de démarrage car quand je change de focus le curseur thomson laisse une trace.
Point qui ne marche pas: le son "do:beep:loop" reste silencieux alors même que le son est actif dans le menu. Il y a un truc pour le son ?
(Message envoyé depuis le PI sous afterstep... le petit ARM souffre un peu avec tout ce que je lui demande en même temps. On fini vite par s'habituer aux Mhz)