samedi 16 février 2013

install o2em on linux and recompile it

 version francaise 

In my previous message "installer et configurer o2em", I explained how to install this emulator on windows.
In this message I'm going to provide instructions for linux.

The main videopac emulator is o2em. The web site proposes binaries of the latest release of o2em only for Windows. This is why we are going to start from the sources and recompile them.

This mesage is based on experiments made withubuntu Precise Pangolin 32 bits. You may need to tweak here described manipulations to your own linux distribution.

1 Dependancies

the main dependancy of o2em is liballegro.
You can use synaptic Package manager to install it. You should get a result similar to the figure below:


2 Rebuild videopac emulator from sources

In this chapter we are going to rebuild o2em from sources. Those who do not whish to recompile it themselves can jump to chapter 3.

2.1 Download o2em sources

Click on the following link to download a zip file of o2em sources o2em118src.zip.
Unzip the downloaded file. I use to unzip it into my home directory.

You should get the following directory structure:
  • o2em118src/
    • o2em118src/Docs/
  • changelog.txt
  • LICENSE.TXT
  • O2EM.TXT
    • o2em118src/SRC:
  • AUDIO.C
  • AUDIO.H
  • CONFIG.H
  • CPU.C
  • CPU.H
  • CRC32.C
  • CRC32.H
  • CSET.C
  • CSET.H
  • DEBUG.C
  • DEBUG.H
  • DIS48.C
  • KEYBOARD.C
  • KEYBOARD.H
  • MAIN.C
  • Makefile
  • Makefile.djgpp
  • Makefile.freebsd
  • Makefile.linux
  • Makefile.mingw
  • Makefile.win
  • O2EM116_private.h
  • O2EM116_private.rc
  • O2em118.dev
  • O2em118.layout
  • O2EM.ICO
  • o2em.png
  • O2EM.RC
  • O2EM.RES
  • SCORE.C
  • SCORE.H
  • SYSTEM.C
  • TABLE.C
  • TABLE.H
  • TIMEFUNC.C
  • TIMEFUNC.H
  • TYPES.H
  • VDC.C
  • VDC.H
  • VMACHINE.C
  • VMACHINE.H
  • VOICE.C
  • VOICE.H
  • VPP.C
  • VPP_CSET.C
  • VPP_CSET.H
  • VPP.H

2.2 Change the case of the file names

The files in SRC directory  nearly all have their name in uppercase. this is causing a problem during compilation. So we have to correct the case:
Enter the following script and save it into o2em118src/SRC/rename.sh
#!/bin/bash
for file in *
do
        trfile=$(echo $file|tr '[A-Z]' '[a-z]')
        if [ "$file" != "$trfile" ]
        then
                command="mv $file $trfile"
                $command
        fi
done
run the rename.sh script .

 2.3 Edit score.c

To solve errors like :
score.c:110:68: error: ‘errno’ undeclared (first use in this function)

Edit score.c file , add #include <errno.h> before the first #include statement.
 *   Score loading/saving by manopac
 */

#include <errno.h>
#include <dirent.h>


2.4 Modify makefile

To solve the following error
 /usr/bin/ld: cannot find -lalleg_unsharable
collect2: ld returned 1 exit status

Edit  makefile.linux file
Replace
LIBALLEG = /usr/lib/liballeg.so.4.2 -lalleg_unsharable

by
LIBALLEG = `allegro-config --libs`
Beware of antiquotes (AltGr 7)

2.5 Compile

make -f makefile.linux
As output, you must get  two executable files in SRC directory:
  • dis48
  • o2em

2.6  Install

Copy o2em into the directory of your choice. My pesonal choice is /usr/local/games/o2em. In this directory create two subdirectories roms and bios.

drwxrwxr-x 2 ventrill ventrill   4096 Feb 16 17:57 bios
-rwxrwxr-x 1 ventrill ventrill  11768 Feb 16 17:57 dis48

drwx------ 2 ventrill ventrill   4096 Feb 16 18:18 Docs

-rwxrwxr-x 1 ventrill ventrill 133448 Feb 16 17:57 o2em

drwxrwxr-x 2 ventrill ventrill   4096 Feb 16 17:57 roms
In bios directory, you must copy a bios file. In roms directory you must copy rom files. Pour avoir plus de détails, consultez le post "installer-et-configurer-o2em" .

3 o2em from binary in tarball

For those who do not want to go through the steps of recompiling described in chapter2, here is an alternate solution. I recorded the result of chapter 2 and zipped it into this archive : emulvideopac001-linux-x86.tgz.
Download it, expand it and here you are.

4 Use o2em

For now, there is no launcher availabel. I show a shell command. change to the directory wehre you have decompressed the archive. There enter the following commands :
cd o2em
./o2em vp01.bin

To learn more about available options, read the file Docs/O2EM.TXT. I am also planning to describe the use of available options in future posts ...


  



installer O2em sous linux et recompiler

english version


Lors du précédent message installer et configurer o2em, j'avais expliqué comment installer cet émulateur videopac sous windows.
Dans ce message je vais essayer d'aider les utilisateurs  linux.

Le principal émulateur pour videopac est o2em. Le site web ne propose des binaires de la dernière version que pour windows. Nous allons donc repartir des sources et les recompiler.

Cet article a été rédigé à partir d'une distribution ubuntu Precise Pangolin 32 bits. Il vous faudra sans doute adapter les manipulations décrites à votre distribution.

1 Dépendances

La seule dépendance notable de l'émulateur o2em est liballegro.
Utilisez le gestionnaire de paquets synaptic pour l'installer. Vous devez arriver à un résultat comparable à celui-ci:


2 Reconstruire l'émulateur videopac a partir des sources 

Dans ce chapitre nous allons recompiler o2em à partir des sources. Ceux qui ne souhaitent pas recompiler eux mêmes peuvent aller au chapitre 3.

2.1 Télécharger les sources o2em

Cliquez sur le lien suivant pour télécharger un zip des sources o2em118src.zip
Decompresser le zip. Personnellement je le décompresse dans mon home directory.

Vous obtenez l'arborescence suivante:
  • o2em118src/
    • o2em118src/Docs/
  • changelog.txt
  • LICENSE.TXT
  • O2EM.TXT
    • o2em118src/SRC:
  • AUDIO.C
  • AUDIO.H
  • CONFIG.H
  • CPU.C
  • CPU.H
  • CRC32.C
  • CRC32.H
  • CSET.C
  • CSET.H
  • DEBUG.C
  • DEBUG.H
  • DIS48.C
  • KEYBOARD.C
  • KEYBOARD.H
  • MAIN.C
  • Makefile
  • Makefile.djgpp
  • Makefile.freebsd
  • Makefile.linux
  • Makefile.mingw
  • Makefile.win
  • O2EM116_private.h
  • O2EM116_private.rc
  • O2em118.dev
  • O2em118.layout
  • O2EM.ICO
  • o2em.png
  • O2EM.RC
  • O2EM.RES
  • SCORE.C
  • SCORE.H
  • SYSTEM.C
  • TABLE.C
  • TABLE.H
  • TIMEFUNC.C
  • TIMEFUNC.H
  • TYPES.H
  • VDC.C
  • VDC.H
  • VMACHINE.C
  • VMACHINE.H
  • VOICE.C
  • VOICE.H
  • VPP.C
  • VPP_CSET.C
  • VPP_CSET.H
  • VPP.H

2.2 Corriger la casse

Les fichiers du répertoire SRC sont presque tous en majuscule. Ceci pose problème lors de la compilation. nous allons donc corriger cela:
Saisissez un script et sauvez le dans le répertoire o2em118src/SRC
#!/bin/bash
for file in *
do
        trfile=$(echo $file|tr '[A-Z]' '[a-z]')
        if [ "$file" != "$trfile" ]
        then
                command="mv $file $trfile"
                $command
        fi
done
Executer le script.

 

 2.3 Editer score.c

Pour corriger les erreurs comme celle qui suit :
score.c:110:68: error: ‘errno’ undeclared (first use in this function)

Editez le fichier score.c , ajoutez #include <errno.h> devant le premier include.
 *   Score loading/saving by manopac
 */

#include <errno.h>
#include <dirent.h>


2.4 Modifier makefile

Pour corriger l'erreur
 /usr/bin/ld: cannot find -lalleg_unsharable
collect2: ld returned 1 exit status

Editez le fichier makefile.linux
Remplacez
LIBALLEG = /usr/lib/liballeg.so.4.2 -lalleg_unsharable

Par
LIBALLEG = `allegro-config --libs`
Attention à bien respecter les antiquotes (AltGr 7)

2.5 Compiler

make -f makefile.linux
En résultat, vous devez obtenir dans le répertoire SRC deux executables:
  • dis48
  • o2em

2.6  Installer

Copier o2em dans le répertoire de votre choix. Moi je mets ça dans /usr/local/games/o2em. Dans ce répertoire je crée deux sous-répertoires roms et bios.

drwxrwxr-x 2 ventrill ventrill   4096 Feb 16 17:57 bios
-rwxrwxr-x 1 ventrill ventrill  11768 Feb 16 17:57 dis48

drwx------ 2 ventrill ventrill   4096 Feb 16 18:18 Docs

-rwxrwxr-x 1 ventrill ventrill 133448 Feb 16 17:57 o2em

drwxrwxr-x 2 ventrill ventrill   4096 Feb 16 17:57 roms
Dans le répertoire bios il faut déposer un fichier bios, et dans le répertoire roms il faut déposer un fichier rom. Pour avoir plus de détails, consultez le post "installer-et-configurer-o2em" .

3 o2em a partir du tar binaire

Pour ceux qui ne veulent pas effectuer les manipulations du chapitre 2, voici une alternative. J'ai enregistré le résultat  de toutes les manipulations du chapitre 2 dans cette archive : emulvideopac001-linux-x86.tgz.
Téléchargez la, décompressez la et voilà.

4 Utiliser o2em

Pour le moment il n'y a pas de launcher. Je vous propose donc une ligne de commande. A partir du répertoire ou vous avez décompréssé l'archive :
cd o2em
./o2em vp01.bin

Pour en savoir plus sur les options disponibles, consultez le fichier Docs/O2EM.TXT ou attendez mes prochains posts ...


  



lundi 11 février 2013

installer et configurer o2em

Introduction

La semaine dernière, je vous ai expliqué que le videopac, c'était une super console d'autrefois et que j'avais installé un émulateur. Mais comment faire ? Que choisir ? Comment ça marche ?
Cet article a pour but de vous éclairer sur le sujet et de rendre cette manipulation accessible au plus grand nombre.

Comme la plupart d'entre vous utilise sans doute windows, je vais me contenter de donner les instructions pour windows dans cet article. Les instructions pour Linux viendront bientôt. Si, si, je vous assure. Ce n'est pas une blague, car chez moi, il n'y a que ça.

O2EM: mise en place détaillée

Cette partie détaille toutes les étapes de la mise en place de l'émulateur. Pour ceux qui veulent aller plus vite, il suffit d'aller au chapitre suivant mise en place simplifiée.

Emulateur

o2em est le principal émulateur videopac. Le site principal est là http://o2em.sourceforge.net/.
Vous pouvez y télécharger o2em118win.zip (download o2em118win.zip ).

Décompactez l'archive dans le dossier de votre choix, par exemple C:\program files\emulvideopac.



 Front-end

Vous disposez maintenant de l'émulateur dans le sens le plus strict du terme. Il faut passer par la ligne de commande (fenêtre de commandes) pour le lancer. Comme le but de ce blog est de rendre o2em accessible au plus grand nombre, nous allons installer une application graphique pour rendre cela plus accessible.

Toujours sur le site principal téléchargez O2EMLauncher055.zip (download O2EMLauncher055.zip).
Décompactez l'archive dans le même dossier que celui dans lequel vous avez décompacté o2em118win.zip.
Recopiez les fichiers de o2emlauncher vers le niveau supérieur si nécessaire. Il faut obtenir ce résultat:


Il vous manque encore un bios et des ROM.

bios

Ce fichier représente le contenu des mémoires mortes qui étaient présentes dans la console lorsqu'on l'achetait.
Sur le site  the old computer vous pouvez télécharger le fichier [BIOS]_Philips_C52_(France).zip, c'est le dernier de la liste. Décompactez le dans le répertoire emulvideopac\bios.

rom

Ces fichiers représentent le contenu des cartouches de jeu. Vous pouvez également en télécharger sur the old computer. Les zip téléchargés sont à décompacter dans emulvideopac\roms.


bios and rom pack

bios et rom peuvent également être téléchargés sous la forme d'un pack très complet sur le site Rene's videopac page  ici.

Décompactez l'archive VP_O2-roms777.zip dans le répertoire o2em118win.



O2EM: mise en place simplifiée

Pour ceux qui veulent aller au plus vite, j'ai réalisé toutes ces manipulations et je les ai enregistrées dans un zip. Il vous suffit de le télécharger emulvideopac001.zip  et et de le décompacter dans le répertoire de votre choix.

Lancer et jouer

Pour jouer il faut lancer o2emlauncher.exe


Le programme se lance et vous obtenez la fenêtre que voici:

Au premier lancement il faut paramétrer le bios.
  • Cliquez sur Settings
  • Cliquez sur le dossier a droite de bios
  • Selectionnez le dossier emulvideopac\bios
  • Selectionnez le bios que nous avons téléchargé tout à l'heure ([BIOS] Philips C52 (France).bin

Ensuite
  • Cliquez sur Roms
  • A gauche, il y a la liste des jeux, vous sélectionnez celui qui vous plait.
  • Ensuite cliquez sur le bouton "Launch O2EM" et voila c'est parti.


Comment jouer ?
Voici quelques informations a connaitre pour jouer:
  • Quand le videopac écrit "Quel jeu", il faut généralement tapez une touche numérique (1) pour commencer.
  • La touche F5 sur le PC équivaut à la touche départ du videopac. Ca fait une sorte de reset.
  • Les joysticks sont reconnus il faut juste demander à les utiliser dans "Settings"
  • Le joystick de gauche est émulé au clavier par les touches
    • ZS (haut, bas)
    • QD (gauche, droite)
    • espace (feu)
  • Le joystick de droite est émulé au clavier par els touches
    • curseur (haut, bas, gauche, droite)
    • l Lettre L (feu)
  • La touche Esc vous permet de revenir au launcher et de passer à un autre jeu...

Conclusion

J'espère vous avoir facilité la vie pour démarrer avec o2em sous windows. Dans les prochains post nous verrons comment faire sous linux. Nous pourrons peut être approfondir la connaissance des paramètres de o2em.

dimanche 3 février 2013

Videopac ? C'est quoi ?

Bonjour,

vous connaissez peut être une console de jeux des années 80 commercialisée par Philips : le videopac.
J'en ai eu un quand j'avais à peu près dix ans. Un videopac ça ressemble à ça:

Console Philips videopac C52




Un jour, j'en ai eu assez de voir mes enfants jouer à des jeux chronophages, faciles et même pas si amusants que ça. Alors plutôt que de leur faire un long discours sur le mode "c'était mieux avant", je me suis dit que le mieux serait de leur montrer comment c'était.

J'ai utilisé mon moteur de recherche favori et j'ai trouvé un émulateur. Et là, on s'est bien amusé. Ma file a apprécié " le mur magique" une sorte de casse-brique où l'un dees joueurs rattrappe la balle et casse le mur tandis que l'autre le reconstruit au fur et à mesure.


Jeu videopac n°29: Le mur magique


Mon fils a préféré "Duel": Deux cow boy se tirent dessus, mais attention aux ricochets:
Jeu videopac n°14: Duel


Ca c'était le début de l'aventure. Pour pouvoir apprécier pleinement ces jeux il faut un joystick ou un gamepad. Ce sera sans doute le sujet du prochain épisode.

A bientôt