Gamoover

Forums " WORKSHOP" => Emulateurs, Frontends & Distributions => Discussion démarrée par: isKa le Jeudi 01 Avril 2004, 17:43:06 PM

Titre: How to compilation advance mame by ISKA
Posté par: isKa le Jeudi 01 Avril 2004, 17:43:06 PM
Bon, et bien apres avoir bien galéré , je vous propose ce tit how to de advancemame DOS pour :

1 assembler son compilateur (gjdpp) et configurer l'environnement winxp.

2 créer son advancemame pour DOS uniquement.

3 modifier les sources pour inclure des jeux


Note: PRENDRE EXACTEMENT LES FICHIERS pour compiler 0.77, inferieur et supérieur !



il faut winzip 8.1 que l'on utilise sur winxp tout betement , winxp (ou DOS) connaitre les commandes de navigation DOS (cd cd.. cd\) pour pouvoir comprendre les chemins d'acces sous DOS ou invite de commande de winxp qui n'EST PAS du DOS mais qui peut se configurer pour que le compilateur fonctionne !
--------------------------------------------------------------------------------------

Partie 1
Assembler les fichiers....


aller http://www.delorie.com/pub/djgpp/current/

Dans le repertoire V2 prendre:
djdev203.zip

puis ds le repertoire GNU

bnu214b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/bnu214b.zip

fil41b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/fil41b.zip
gcc333b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/gcc333b.zip
gpp333b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/gpp333b.zip
mak3791b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/mak3791b.zippat21b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/pat21b.zip

shl2011b.zip http://www.delorie.com/pub/djgpp/current/v2gnu/shl2011b.zip

a ce stade decompressé le tout ds un repertoire DJGPP que vous placez dans c:\



ensuite recupéré cela:

all403.zip (librairie allegro) http://www.delorie.com/pub/djgpp/current/v2tk/allegro/all403.zip


mamesealnew.zip http://www.mame.net/compile.html le prendre ici

nasm-*.zip (j'en ai recupéré plusieurs http://members.cox.net/mame1/files/NASM98BD.ZIP


upx190d.zip http://upx.sourceforge.net/download/unstable/upx190d.zip


il faut a ce stade decompresser LES FICHIERS nasm et upx ds le repertoire djgpp\bin . bien verifier de trouver nasm.exe dans le repertoire BIN de djgpp

ET mameseal se decompresse lui ds c:\djgpp

on va installer la librairie ALLEGRO maintenant!

On decompresse all403.zip ds c:\djgpp

a ce stade on pva tester notre compilateur!

il faut soit DOS soit windows donc ^^

on va prendre le cas de winxp et passer via la ligne de commande pour compiler ^^

on va ds propriété de poste de travail

(http://laurent.henard.9online.fr/image/djgppenv.gif)

on choisit "avancé"
(http://laurent.henard.9online.fr/image/djgppenv1.gif)

Juste au dessus de OK, on va cliquer sur "variables d'environnement"

(http://laurent.henard.9online.fr/image/djgppenv2.gif)


ici on ajoute pour les "variables utilisateurs" 2 nouvelles lignes:
ligne 1
variable: djgpp
valeur de variable: C:\DJGPP\DJGPP.ENV

ligne 2
variable: path
valeur de variable: C:\DJGPP\BIN;%PATH%

pour les "variables system"ligne a ajouter:
variable: djgpp
valeur de variable: C:\DJGPP\DJGPP.ENV

ET 1 ligne a modifier celle du PATH.....
qui doit ressembler a cela apres modif'!

variable: path
valeur de variable: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem\;DJGPP\BIN;

(on ajoute juste ";DJGPP\BIN;")

voila, on applique le tout
on ouvre une invite de commande grace a "executer" dans le menu demarrer (touche windows + R) et on tape cmd

voila de la taper juste make

si vous avez cela c bon:

C:\Documents and Settings\XXX>make
make.exe: *** No targets specified and no makefile found. Stop.

now, votre invite de commande et voter compilateur doivent faire bon menage on revient a ALLEGRO...
sous invite de commande.. on fais cd\ pour retourner a la racine de c:
puis

cd \djgpp\allegro (entrer)
make lib (qq ligne pas de message d'erreur)
make install (qq lignes...ET vous devez lire: optimized djgpp library has been installed)

(http://laurent.henard.9online.fr/image/comp6.gif)

well done c ok !

il nous reste zlib a utiliser !

decompresser ZLIB114S.ZIP ds c:\zlib
Puis passer sous invite de commande
rendez vous ds ce repertoire
c:\
cd zlib
edité par Max : C:\zlib\contrib\zlib-1.14
make -fmsdos\makefile.dj2 (vous pouvez copier et coller ds la pseudo fenetre dos)

Quand ceci est terminer on copie 3 fichiers ds djgpp pour cela

xcopy libz.a c:\djgpp\lib\
xcopy zlib.h c:\djgpp\include\
xcopy zconf.h c:\djgpp\include\

n'oubliez pas de copier coller  chaque ligne c plus simple !

WIN 95 98 :

on peut aussi utiliser un fichier batch pour win95.98.me

créer un fichier txt avec

set DJGPP=C:\DJGPP\DJGPP.ENV
set PATH=C:\DJGPP\BIN;%PATH%

et enregistrer ds tout fichier djgpp.BAT et rebooter la machine (important  )
(il faut etre sur que djgpp soit bien ds c:\) et passer via le vrai DOS de win98

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

partie 2

creer son advmame.exe!

goto http://prdownloads.sourceforge.net/advancemame/advancemame-0.77.0.tar.gz?download

ceci sont les sources de advmame 0.77et de mame 0.77 incluse donc rien a faire..

PS: à ce jour j'ai testé la 0.79 et la 0.77 et seul la 0.77 marche , mais je crois que c'est une question de temps et de fichier makefile, si qq un sait pourquoi la 0.79 ne compile pas, merci d'aider !  )

on decompresse le fichier dans c:\adv, on va y trouver un fichier makefile.in, on le renomme en makefile (ceci est le fichier de configuration de advancemame pour l'optimiser par rapport a son processeur je crois voir tout en bas de ce how to)

on ouvre une invite de commande,

c:\
cd adv (entrer)
make emu (entrer)

la ca va compiler et prendre un certain temps !

si tout ce passe bien , un joli advmame.exe va apparaitre ! Good GAME !

GROSSE PARENTHESE:

j'ai un amis msnien qui m'a dit:
tu copies les fichiers .c qui sont dans tes sources et tu les deplace dans c:\djgpp\lib

chose que j'ai faite... et cela a marché par contre j'ai effacé les même fichiers pour voir et cela compile pareil , l'erreur a disparu.... aller savoir lol (j'ai bien fait le fête aussi 27 ans cela se fête^^ alors j'etais pas clair surement lol)

en cas de plantage genre"Argument list too long", voila la solution

stubedit c:\djgpp\bin\gcc.exe bufsize=32k
stubedit c:\djgpp\lib\gcc-lib\djgpp\3.33\collect2.exe bufsize=32k

PS noté bien que si une ligne deconne ds celle donné au dessus, et bien ,verifié bien le chemin d'acces

en cas d'errror -1 , peut etre recommencer a l'installation de NASM upx et seal (la version de nasm est peut etre pas la bonne je refais de tete...)

--------------------------------------------------------------------------------------3eme partie

modifier son makefile:

on clik dessus et on choisit notepad:

(http://laurent.henard.9online.fr//makefile.gif)

on regarde la photo et on "uncomment" la ligne pour optimiser par rapport a son processeur:

(http://laurent.henard.9online.fr//makefile2.gif)

modifier ses sources et ajouter des jeux

il y a d'abord 2 choses a savoirs

1 je suis super novice alors, je propose juste de modifier ses sources pour la neogeo

2 je suis claqué alors je vais faire simple lol et a vi, sauvegarder deja driver.c et neogeo.c (o cas ou lol)

(http://laurent.henard.9online.fr/image/obj.gif)

---> il faut des roms , bon cela, vouv vous debrouillé...

ensuite il faut savoir que advmame utilise le fichiers drivers.c pour lister ses jeux et un fichier neogeo.c pour configurer les drivers necessaires au jeu (son gfx etc etc) ces 2 fichiers se trouve ds le repertoire c:\djgpp\src (pour le driver.c) et c:\djgpp\src\drivers (neogeo.c) on peut les editer avec notepad, ce sont les codes sources....

alors que nebula utilise des DAT mame utilise donc des codes sources...

aller ici
http://www.micmano.net/source_mame.htm

et regarder comment ajouter des codes sources (je note que pour kof2003 par exemple.... ba j'ai utiliser autre chose de plus simple...^^)

vous pouvez aussi aller la pour recuper une archive

http://personal.telefonica.terra.es/web/klaxnek/mame32plus-src-lamer.rar

(merci a codex de www.toudy.com (http://www.toudy.com) pour ce post )

si vous decompresser l'archive , il y a un src en repertoire lequel est composé d'un driver.c, et ds le repertoire driver..d'un neogeo.c... (ce repertoire ce decompose en 3 partie a regarder , la premiere sont les romstart, la deuxieme est drivers_init et la 3 eme est le denomination des jeux, chercher une occurrence comme rotd (rage of the dragon) signifie qu'elle sera presente 2 fois ds la premiere partie (et vi rotd et rotdd) peut etre ds la partie driver_init aussi (certain jeux necessite d'autre opas....) et forcement ds la 3 eme partie la denomination quoi .. logique)



pour faire simple: f3 = rechercher lol

donc f3 rotd

j'ai trouvé ds le fichier driver.c de mame32plus-src-lamer.rar
les lignes

Citation
DRIVER( rotd ) /* Rage of the Dragons */
DRIVER( rotdd ) /* Rage of the Dragons (Decrypted) */


copie colle ceci ds le driver.c de ton repertoire c:\adv\src\ (ensuite on le ferme ce driver.c)

partie 1 du neogeo.c:
ensuite on va dans neogeo.c de mame32plus-src-lamer.rar, hop on appuis sur f3 on marque rotd. il trouve le romstart de rotd on copie colle ds SON neogeo.c à la suite du dernier roms END,

Citation
ROM_START( rotd )
ROM_REGION( 0x800000, REGION_CPU1, 0 )
ROM_LOAD16_WORD_SWAP( "264-p1.bin", 0x000000, 0x800000, CRC(b8cc969d) )

ROM_REGION( 0x20000, REGION_GFX1, 0 )
ROM_FILL( 0x000000, 0x20000, 0 )
ROM_REGION( 0x20000, REGION_GFX2, 0 )
ROM_LOAD( "sfix.sfx", 0x000000, 0x20000, CRC(354029fc) SHA1(4ae4bf23b4c2acff875775d4cbff5583893ce2a1) )

ROM_REGION( 0x40000, REGION_USER4, 0 )
ROM_LOAD( "264-m1.bin", 0x00000, 0x10000, CRC(9abd048c) ) /* encrypted, we load it here for reference and replace with decrypted ROM */
NEO_BIOS_SOUND_64K( "264-m1d.bin", CRC(e5f42e7d) ) /* decrypted */

ROM_REGION( 0x1000000, REGION_SOUND1, ROMREGION_SOUNDONLY )
/* encrypted */
ROM_LOAD( "264-v1.bin", 0x000000, 0x800000, CRC(fa005812) )
ROM_LOAD( "264-v2.bin", 0x800000, 0x800000, CRC(c3dc8bf0) )

NO_DELTAT_REGION

ROM_REGION( 0x4000000, REGION_GFX3, 0 )
ROM_LOAD16_BYTE( "264-c1.bin", 0x0000000, 0x800000, CRC(4f148fee) )
ROM_LOAD16_BYTE( "264-c2.bin", 0x0000001, 0x800000, CRC(7cf5ff72) )
ROM_LOAD16_BYTE( "264-c3.bin", 0x1000000, 0x800000, CRC(64d84c98) )
ROM_LOAD16_BYTE( "264-c4.bin", 0x1000001, 0x800000, CRC(2f394a95) )
ROM_LOAD16_BYTE( "264-c5.bin", 0x2000000, 0x800000, CRC(6b99b978) )
ROM_LOAD16_BYTE( "264-c6.bin", 0x2000001, 0x800000, CRC(847d5c7d) )
ROM_LOAD16_BYTE( "264-c7.bin", 0x3000000, 0x800000, CRC(231d681e) )
ROM_LOAD16_BYTE( "264-c8.bin", 0x3000001, 0x800000, CRC(c5edb5c4) )
ROM_END

on rebascule sur neogeo.c de mame32plus-src-lamer.rar, on reappuis sur f3 pour voir s'il y a un autre... on trouve le romstart de rotdd.. on refait la même manip..


f3.. on arrive ds la partie 2


Citation
DRIVER_INIT( rotd )
{
data16_t *rom;
int i,j;

neogeo_fix_bank_type = 1;
kof2000_neogeo_gfx_decrypt(0x3f);
init_neogeo();

/* thanks to Elsemi for the NEO-PCM2 info */
rom = (data16_t *)(memory_region(REGION_SOUND1));
if( rom != NULL )
{
/* swap address lines on the whole ROMs */
for( i = 0; i < 0x1000000 / 2; i += 16 / 2 )
{
data16_t buffer[ 16 / 2 ];
memcpy( buffer, &rom[ i ], 16 );
for( j = 0; j < 16 / 2; j++ )
{
rom[ i + j ] = buffer[ j ^ 4 ];
}
}
}
}

voila la 2 eme partie on surligne bien la partie qui nous concerne cele de rotdd (on peux aussi mettre rotd mais il faut des lors rajouter la ligne rotd ds driver.c (on commence a comprendre?  ) et on colle ds la 2eme partie de VORE neogeo.c ^^



f3...voila la 3eme partie ^^
Citation
/* Evoga */
GAMEB( 2002, rotd, neogeo, neogeo, neogeo, neogeo, rotd, ROT0, "Evoga / Playmore Corporation", "Rage of the Dragons" )

/* Evoga */
GAMEB( 2002, rotdd, rotd, neogeo, neogeo, neogeo, rotdd, ROT0, "Evoga / Playmore Corporation", "Rage of the Dragons (decrypted V,decrypted C)" )


on copie colle toujours ^^ ds la 3eme partie ^^ de votre neogeo.c


a ce stade on a donc placer nos drivers rotd et rotdd ds le fichier driver.c ET neogeo.c (car c des jeux neogeo lol  )

et bien on va REcompiler !

invite de commande,

(http://laurent.henard.9online.fr/image/compilok.gif)

cd adv
make emu

il va rechanger driver.c et neogeo.c et recréer tres vite un advmame.exe qui accepte rotd et rotdd ^^

libre a vous d'ajouter ce que vous voulez ^^

ça ne marche pas pour vos roms?

probleme de crc? incompatibilité de noms?

il vous faut:
ceci (http://pagesperso.neuf.fr/webftp/explorer/download.php3?fichier=hashcalc.zip&chemin=%2Fapplis%2Fwebperso%2Fdata%2Fweb%2Fh%2Fe%2Fn%2Fa%2Frd%2Flaurent.henard.9online.fr%2Fpublic_html)

qui est un calculateur de crc et de sha1..ca parait chinois mais c'est tres pratique car vous decompacter votre rom, vous ouvrez le neogeo.c regarder le romstart:

il y a des roms v, m1, C etc etc , il y a des crc entre parenthese et des sha1 ..regarder votre rom DEZIPPE, vous aller retrouver les même fichiers sauf que le nom de la roms peut varier OU son extension.. *.rom ou *. bin..

le plus simple c de prendre fichier par fichier, de remplacer les noms par ceux de voter rom.., de calculer crc et sha1 et remplacer tout betement par copier coller dans le fichier neogeo.c

une photo pour aider ^^

(http://laurent.henard.9online.fr//modifcrc.gif)

je peux modifier toute les données a ma guise en fonction de ma ROM!

(http://laurent.henard.9online.fr//hcalucl.gif)

le programme vous donne tout vive le copier coller ^^

d'ou l'interet de compiler soit même pour avoir 100% de good resultat avec SES roms  



pour le reste sachez que votre compilation est la votre, ne pas la distribuer ^^ par respect pour mame et ses developpeurs

si vous obtenez des messages d'erreurs a la suite de modifications, reprener vos fichiers driver et neogeo.c (que vous avez sauvegarder) et recommencer la manip pour un seul jeux ^^

l'erreur est indiqué via des lignes pour ce faire regarder la ligne qui bug ds le fichier correspondant..

si driver.c y a une erreur a la ligne 7565
ba on ouvre son driver.c, on fait CTRL-G et on marque le nom de la ligne et on regarde ce qui cloche ^^ (j'ai reussi a tout integré en neogeo ss probleme )



voila en gros ceque j'ai fait, cela marche bien , il reste le fichier makefile a decouvrir car c lui qui doit causer le probleme pour la 0.79....


sinon voici des liens utiles :

http://advancemame.sourceforge.net/doc-build.html//http://www.powerstrike.net/Tehkan/mameforever.html%20(merci%20rico!)%20[url]http://www.mame.net/compile.html

http://members.cox.net/mame1/enhance.htm

www.hammerhead.be

bonne chance a tous  
j'espere avoir apporté une pierre a l'edifice!
Titre: How to compilation advance mame by ISKA
Posté par: max le Jeudi 01 Avril 2004, 18:35:14 PM
je continue le débat ... :smile:
Donc s'il apparaît jouable d'insérer des sources neogeo grace à cet excellent tuto, comment faire pour ajouter des nvx drivers (genre 77) à une version 74 ?
ex : g compilé ma version 74 et je voudrais rajouter 1 jeu de la 77 (goal92') .. en respectant la même logique que dans le tuto j'arrive à ce message d'erreur :



CitationC:\adv74>make emu
obj/mame/dos/blend/driver.o
obj/mame/dos/blend/advmame.exe
obj/mame/dos/blend/driver.o(.data+0x34c8):driver.c: undefined reference to `_dri
ver_cupsoc'
obj/mame/dos/blend/driver.o(.data+0x34cc):driver.c: undefined reference to `_dri
ver_cupsoc2'
obj/mame/dos/blend/driver.o(.data+0x34d0):driver.c: undefined reference to `_dri
ver_olysoc92'
obj/mame/dos/blend/driver.o(.data+0x34d4):driver.c: undefined reference to `_dri
ver_cupsocbl'
obj/mame/dos/blend/driver.o(.data+0x34d8):driver.c: undefined reference to `_dri
ver_goal92'
collect2: ld returned 1 exit status
make.exe: *** [obj/mame/dos/blend/advmame.exe] Error 1

C:\adv74>

g bien rajouter les src dans driver.c / drivers.rep et vidhrdw.rep
Il mank kkchose c sûr  :oops:  !
Merci de votre aide !
@+


t'as pas une idée Iska à tout hasard ?  :P

edit : pbm résolu, bien vérifier toutes les occurences du jeu dans les différents drivers (driver/vidhdrw/mame.mak ...), le mien (goal92) utilisait le code de legionna.c  !!!
Titre: How to compilation advance mame by ISKA
Posté par: Invité le Samedi 03 Avril 2004, 18:03:41 PM
voilà, j'ai tout réparé, pas la peine de s'affoller ... on peut plus partir en vacances  :lol:   ;)
Titre: How to compilation advance mame by ISKA
Posté par: isKa le Mercredi 07 Avril 2004, 22:32:44 PM
Pour télécharger les fichiers nécessaires à l'installation, allez sur ce site : http://www.delorie.com/djgpp/.
Cliquez sur Zip Picker et suivez les instructions.

Créez un répertoire (par exemple "C:\DJGPP"). Décompactez y tous vos fichiers.

Il faut maintenant éditer des variables d'environnement. La méthode dépend un peu du système d'exploitation.


!!!Attention!!! : Si vous avez installé DJGPP dans un répertoire différent, pensez à modifier les chemins.

Sous Window 98 :
-Editez autoexec.bat
-Ajouter la ligne : set DJGPP=C:\DJGPP\DJGPP.ENV
-A la ligne set PATH=..., rajouter à la fin C:\DJGPP\BIN, en n'oubliant pas de séparer les chemins par des points virgules
-Redémarrez l'ordinateur



Sous Windows ME :
-Cliquez sur Démarrer, Exécuter, tapez msconfig.exe puis validez
-Cliquez sur l'onglet Environnement
-Modifiez la variable PATH en ajoutant le chemin : C:\DJGPP\BIN, en n'oubliant pas de séparer les chemins par des points virgules
-Créez une nouvelle variable d'environnement DJGPP et attribuez lui la valeur : C:\DJGPP\DJGPP.ENV
-Redémarrez l'ordinateur.

Sous Windows 2000/XP :
-Faites un clic droit sur "Mon ordinateur", puis sélectionnez "Propriétés"
-Sélectionnez l'onglet "Avancé", puis cliquez sur le bouton "Variables d'environnement"
-Modifiez la variable PATH en ajoutant le chemin : C:\DJGPP\BIN
-Créez une nouvelle variable d'environnement DJGPP et attribuez lui la valeur : C:\DJGPP\DJGPP.ENV
Si vous avez installé DJGPP dans un répertoire différent, pensez à modifier les chemins.

Pour vérifier que DJGPP est bien installé, allez dans DJGPP/bin et exécutez rhide.exe. S'il n'y a pas de message d'erreur, c'est que DJGPP est correctement installé.

voila pour le complement o k ou ^^
Titre: How to compilation advance mame by ISKA
Posté par: Anonymous le Lundi 19 Avril 2004, 03:19:09 AM
salut  :lol:
super tuto ISKA merci  :!:

sinon j'ai deja fait des compile de mame : win, dos et 32 .
pour advmame j'avais deja essayer mes par manque de temps j'ais du laisser tomber.
mes la avec ton tuto j'ais refai une compile de advmame 0.77 et ca plus mois bien marcher car tu as oublier qq truc  ;) .
(pour advmame 0.77)
dl les fichiers suivant et les decompressé dans c:\djgpp
1-  txi40b.zip
2- pmode11b.zip
3- djtzn203.zip
4- gnufut21.zip
5- csdpmi4b.zip
pour les dl faire une recherche sur google et normalement un seul fichier peut vous menez sur les autres dans les sites qui parle de djgpp  ;)

voila ces pour ceux qui on des errors comme moi avant d'avoir mis c'est fichier et la ca compile impec  :D

autre chose pour compiler la version 0.81 il faut renomé le makefile.user en makefile, l'ouvrir avec wordpad et mettre :

ifndef CONF_LIB_FREETYPE
CONF_LIB_FREETYPE=yes
endif


sur no :

ifndef CONF_LIB_FREETYPE
CONF_LIB_FREETYPE=no
endif

et la ca compile jusqua advmame.exe et ensuite j'ai une erreur juste avant la fin :cry:

mais sinon avant ca la compilation etait impossible, si qq a une solution  ;)
Titre: How to compilation advance mame by ISKA
Posté par: Anonymous le Lundi 19 Avril 2004, 05:15:28 AM
ok j'ai reussi  :D

il suffit de de faire pour compiler advmame 0.81 (ne pas oublier ce que j'ai ecrie plus haut ):

#############################################################################
# Extra configuration common for ./configure and manual
#

# Enable the creation of the map files
ifndef CONF_MAP
CONF_MAP=no  ( mettre yes a la place de no)
endif

# Name of the architecture. Used in the distribution file names.
ifndef CONF_ARCH
CONF_ARCH=blend ( et d'enlever blend, laisser juste CONF_ARCH= )
endif

# Pack also the emulator source in the dist package
ifndef CONF_DIFFSRC
CONF_DIFFSRC=no ( mettre yes a la place de no )
endif

#############################################################################

voila et la ca compile impec pour advmame 0.81  ;)
a oui il faut recuperer advmame.exe dans :
C:\adv\obj\mame\dos
Titre: How to compilation advance mame by ISKA
Posté par: Anonymous le Lundi 19 Avril 2004, 05:23:48 AM
pour advmame.exe il est crée 2x ???,
dans C:\adv\obj\mame\dos et dans c:\adv , bizzard mais du moment que ca marche  :!: .
pour le 0.81 il fait 33 mo ( 0.77 lui fait 19.9 mo )sans changer les drivers pour ajouter des jeux, reste plus qu'a le compresser pour qu'il prenne moins de place  :lol:
Titre: How to compilation advance mame by ISKA
Posté par: isKa le Lundi 19 Avril 2004, 09:39:47 AM
Merci pour ces precieux renseignement ^^

Mais je t'avoue que les autres ZIp que tu proposes ne m'ont pas été nécessaire :evil: et ne me sont toujours pas necessaire.. quel etrange monde..  :o

va savoir lol ^^

Sinon pour compiler advmame0.81 pour contourner mon erreur , je suis passer pour la finalisation via win98 sous virtual pc  :D

ca marche nikel pour la création de mon advmame.exe...

(cela venait de la commande stubedit qui passait mal sous winxp.. alors que pour la 0.77 cela marche nikel..)

En tout cas ,cela fait plaisir de voir les feedbacks^^
Titre: How to compilation advance mame by ISKA
Posté par: Invité le Lundi 19 Avril 2004, 16:16:03 PM
Je viens de me lancer dans la modification / compilation de MAME32, faut bien avouer que c'est nettement plus facile que advmame  :oops:    :!:
Titre: How to compilation advance mame by ISKA
Posté par: JimBo le Mercredi 28 Avril 2004, 11:36:04 AM
Salut !

Un petit résumé, adapté pour la compil' d'Advmame 0.81.1 :

Le makefile à utiliser est "Makefile.usr" (à renommer "Makefile." )
Une fois renommé, editer "Makefile." et modifier :
Citation#CONF_HOST=dos
"#" à enlever

Citation#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=...
"#" à enlever devant le type de processeur utilisé

Citationifndef CONF_LIB_FREETYPE
CONF_LIB_FREETYPE=yes
endif
à modifier en "CONF_LIB_FREETYPE=no"

Citationifndef CONF_MAP
CONF_MAP=no
endif
à modifier en "CONF_MAP=yes"

Citationifndef CONF_ARCH
CONF_ARCH=blend
endif
à modifier en "CONF_ARCH="

Citationifndef CONF_DIFFSRC
CONF_DIFFSRC=no
endif
à modifier en "CONF_DIFFSRC=yes"

Ca tourne chez moi  :D
Titre: How to compilation advance mame by ISKA
Posté par: isKa le Dimanche 16 Mai 2004, 01:45:16 AM
Mame 0.82 compile niquel avec ce tit tuto  :D
Titre: super tuto
Posté par: Anonymous le Mardi 06 Juillet 2004, 21:47:55 PM
enfin un tuto qui ma fait compiler advmame.
trop dla balle atomqieu
nikel
Titre: How to compilation advance mame by ISKA
Posté par: xFlasH le Mardi 14 Août 2007, 09:35:44 AM
Bonjour,

AdvanceMame ne semble plus mis a jour par rapport aux dernieres versions de Mame. La derniere en date est celle basée sur Mame 0.106.
Quelqu'un parmi vous a-t-il remis en place ces environnements de compil sous DOS pour tenter un update ?

Thanks

-xF-
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Mardi 14 Août 2007, 09:43:12 AM
Citation de: xFlasH le Mardi 14 Août 2007, 09:35:44 AM
Bonjour,

AdvanceMame ne semble plus mis a jour par rapport aux dernieres versions de Mame. La derniere en date est celle basée sur Mame 0.106.
Quelqu'un parmi vous a-t-il remis en place ces environnements de compil sous DOS pour tenter un update ?

Thanks

-xF-
non, plus de mise à jour depuis que le driver graphique a été revu. Trop de boulot j'imagine...
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Vendredi 27 Février 2009, 08:15:41 AM
Petit déterrage en règle.  :-\

Je cherche à recompiler quelques vieilles version d'advancemame.
J'ai bien suivi le tuto et çà fonctionne correctement, du moins les versions 77 et 76, je continue à remonter en version mais je butte sur le 70 qui me crache des erreurs de compilation sur la glue :

C:\adv\70>make
obj/mame/dos/blend/advance/osd/glue.o
advance/osd/glue.c: In function `osd_update_video_and_audio':
advance/osd/glue.c:990: error: `IPT_UI_MODE_PRED' undeclared (first use in this
function)
advance/osd/glue.c:990: error: (Each undeclared identifier is reported only once

advance/osd/glue.c:990: error: for each function it appears in.)
advance/osd/glue.c:992: error: `IPT_UI_MODE_NEXT' undeclared (first use in this
function)
advance/osd/glue.c:1003: error: `IPT_UI_TURBO' undeclared (first use in this fun
ction)
make.exe: *** [obj/mame/dos/blend/advance/osd/glue.o] Error 1


quelqu'un aurait une idée ??
Titre: How to compilation advance mame by ISKA
Posté par: jujusl le Vendredi 27 Février 2009, 10:47:02 AM
A tout hasard, il ne manquerait pas un fichier de déclaration de constantes (ou un chemin incorrect vers ce fichier) ?

Sinon, en fouinant sur Google, j'ai trouvé ça (http://www.gnu-darwin.org/www001/ports-1.5a-CURRENT/emulators/advancemame/work/advancemame-0.106.0/advance/osd/glueint.h) ...
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Vendredi 27 Février 2009, 10:51:48 AM
Citation de: jujusl le Vendredi 27 Février 2009, 10:47:02 AM
A tout hasard, il ne manquerait pas un fichier de déclaration de constantes (ou un chemin incorrect vers ce fichier) ?

Sinon, en fouinant sur Google, j'ai trouvé ça (http://www.gnu-darwin.org/www001/ports-1.5a-CURRENT/emulators/advancemame/work/advancemame-0.106.0/advance/osd/glueint.h) ...
le fichier de glue existe sur toutes les versions d'advancemame
j'arrive à compiler de la .77 à la .72
en fait les versions où les sources de mame sont incluses avec celles d'advancemame
dès lors que je dois rajouter à la mano le dossier src de mame dans le répertoire de compil', la compilation n'abouit pas.


Titre: How to compilation advance mame by ISKA
Posté par: makati79 le Vendredi 27 Février 2009, 11:00:41 AM
de mon côté j'arrive à compiler jusqu'à la 106 ... je peux eventuellement uploader mon dossier 'djgpp' complet quelque part ...si ça peut aider du monde ?
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Vendredi 27 Février 2009, 11:16:09 AM
Citation de: makati79 le Vendredi 27 Février 2009, 11:00:41 AM
de mon côté j'arrive à compiler jusqu'à la 106 ... je peux eventuellement uploader mon dossier 'djgpp' complet quelque part ...si ça peut aider du monde ?
je n'ai pas de problème avec le compilateur.
j'ai un peu avancé. la plus ancienne version que j'arrive à compiler correctement est le .72 en prenant la source suivante (http://downloads.sourceforge.net/advancemame/advancemame-0.72.0.tar.gz?use_mirror=heanet)

toutefois, en supprimant le dossier src (sources de mame supposées officielle)
et que je le remplace par le fichier source de mamedev (http://mamedev.org/downloader.php?file=mame072s.zip)

j'ai le message d'erreur.
à savoir :
advance/osd/glue.c: In function `osd_handle_user_interface':
advance/osd/glue.c:1688: error: `IPT_UI_MODE_PRED' undeclared (first use in this
function)
advance/osd/glue.c:1688: error: (Each undeclared identifier is reported only onc
e
advance/osd/glue.c:1688: error: for each function it appears in.)
advance/osd/glue.c:1690: error: `IPT_UI_MODE_NEXT' undeclared (first use in this
function)
advance/osd/glue.c:1701: error: `IPT_UI_TURBO' undeclared (first use in this fun
ction)
make.exe: *** [obj/mame/dos/blend/advance/osd/glue.o] Error 1

C:\adv\72>

Donc non je n'ai pas besoin de ton dossier mais plutôt que tu essayes de compiler la .72 tel que je l'ai décrit ci-dessus

Merci en tout cas  ^-
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Samedi 28 Février 2009, 12:14:56 PM
J'ai "un peu" avancé avec ces satanées recompilations :

Premièrement, ce qu'il me manquait c'était un patch.exe qui fonctionne correctement.
En effet les sources de mame officielles sont modifiées par advmame.dif
le programme qui fait celà est patch.exe compris dans le bundle de djgpp.

Il fallait taper set LFN=n avant de lancer patch

D:\72\src>set LFN=n

D:\72\src>patch -p1 < ..\advance\advmame.dif
patching file "advance.pat"
patching file "common.c"
patching file "cpmame.mak"
patching file "cpu/i8085/i8085.c"
patching file "cpu/m68000/make68k.c"
patching file "cpu/z80/z80.c"
patching file "cpuexec.c"
patching file "drivers/cave.c"
patching file "drivers/multi32.c"
patching file "drivers/neogeo.c"
patching file "fileio.c"
patching file "inptport.c"
patching file "inptport.h"
patching file "input.c"
patching file "mame.c"
patching file "neomame.mak"
patching file "osdepend.h"
patching file "rules.mak"
patching file "ui_text.c"
patching file "ui_text.h"
patching file "usrintrf.c"
patching file "vidhrdw/cave.c"

D:\72\src>


çà c'est un premier pas, j'ai des sources qui compilent.
seulement j'ai encore une erreur, après la compilation visiblement :

D:\59\make emu
...
obj/mame/dos/i686/advance/svgalib/vgaregs.o (with low opt)
obj/mame/dos/i686/advance/svgalib/vgarelvg.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/ibmrgb52.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/attdacs.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/icw.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/normal.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/ramdac.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/s3dacs.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/sierra.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/btdacs.o (with low opt)
obj/mame/dos/i686/advance/svgalib/ramdac/ics_gend.o (with low opt)
obj/mame/dos/i686/advance/svgalib/clockchi/icd2061a.o (with low opt)
obj/mame/dos/i686/advance/osd/allocz.o
obj/mame/dos/i686/version.o
make.exe: *** No rule to make target `obj/mame/dos/i686/mame.o', needed by `obj
mame/dos/i686/advmame.exe'.  Stop.


la grosse erreur qui tâche : NO RULE TO MAKE TARGET

je suis en compilation d'une .59 avec un makefile ayant ces options :
TARGET = mame
ARCH = i686
HOST_TARGET=dos
CFLAGS_SYMBOLS = -O0
CFLAGS_OPTIMIZE = -O3 -fomit-frame-pointer -fstrict-aliasing

En fait, j'ai juste activé les trois premières.
les autres étaient pas défaut.

Merci de votre aide...
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Samedi 28 Février 2009, 13:05:52 PM
Honnêtement je ne comprends pas.

J'ai repris une version compile.
A savoir la .72

j'ai deux 2 dossiers de sources, un qui fonctionne et un autre non.

L'un de dossiers est issu de la source du bundle complet d'advancemame incluant les sources mame pré-patchée.
L'autre dossier est le montage de la source d'advancemame avec le source de mame que j'ai patché moi-même.

Évidemment c'est celle du bundle qui passe correctement, pourtant en passant WinMerge dessus pour détecter les différences, il me dit que tout
est identique...  ;D

note : en fait je coche l'option 'ignorer les différences de fin de ligne (Windows/Unix/Mac)'

note 2 : Les fichiers qui fonctionnent semblent sont spécifiés comme étant au format DOS au moment de les charger dans ultraedit

Si vous pouviez me donner votre avis là dessus ou bien quel manip effectuer pour trouver le loup qui se cache là dessous.
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Samedi 28 Février 2009, 15:34:18 PM
à défaut d'explication :

l'archive des dossiers incriminés :
http://funkycochise.free.fr/advmame/72.rar

un working, l'autre unworking...

moi avec mes outils, je vois pas de différences.  :'(
si vous voyez quelque chose...  :-[
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Dimanche 01 Mars 2009, 10:22:47 AM
arghhh je deviens fou

pas moyen de voir de différence, maintenant que j'ai converti tous les fichiers au format unix.

une idée d'outil pour observer les différences entre dossier ?

j'ai utilisé windiff et winmerge mais aucune différence pour eux...

(http://tbn1.google.com/images?q=tbn:dNSBsNMOoTeGXM:http://www.akademia.ch/voile/noeuds/img/pendu.jpg)
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Lundi 02 Mars 2009, 15:06:19 PM
J'ai fini par trouver.
le problème était que les erreurs générées n'étaient pas très parlante.

Okay : excuses de sac.

En fait ce brave patch.exe patche correctement les fichiers des sources de mame,
seulement il les renomme aussi, à savoir il met les noms en majuscule.
ceci explique que je ne voyait pas de différences entre le bon et le mauvais dossier.
Seulement make, au moment de compiler, lui, attendait le nom de fichier en minuscule.

Du coup, en renommant les fichiers modifiés par le dif, tout est rentré dans l'ordre  ^-

A moi la recompilation des vieilles versions...
Titre: How to compilation advance mame by ISKA
Posté par: funkycochise le Mardi 03 Mars 2009, 18:19:20 PM
chiotte de chiotte.

pas moyen de faire fonctionner ces versions recompilées.
j'ai droit à des dysfonctionnement ou carrément des stack errors.

j'avoue que je sais pas trop d'où çà peut venir  >:(

surement une histoire de version des programmes...