1

Bonjour,

Je viens de découvrir ce forum et j'aimerai me lancer dans l'aventure du développement sur cette console mythique de mon enfance !
Pour cela j'aurai besoin d'une mise a jour sur les outils existant a utiliser.

et j'ai des questions de noob pour commencer :

on utilise quel language? asm, C ou autre ?
est il possible de "de-compiler" un jeu ou de faire du reverse engineering afin de récupérer des sprites, de la musique ou autres infos d'un jeu ?
comment compiler tester son code ?
a quoi correspondent les fichiers Cx, Mx, Px, SPx, Sx et Vx que l'on trouve dans une rom?
avez vous des exemples de code a compiler ou des tutos pour se faire les dents ?

merci d'avance pour toute info, aide, lien ou tuto utile

dans l'attente de vous lire

neoz42

Hi

I just discovered this forum and I would like to start in neo geo development
to do that I will need an update about existing tools to use...

but first I have some newbie questions:

which laguage do we use ? asm, C ou another one ?
is it possible to do some "reverse engineering" to get some datas such as graphics or sound on an existing game ?
How to compile / test my code ?
what is the difference between the files we found in a roms archive (Cx, Mx, Px, SPx, Sx and Vx) ?
is there any testing program, example code or tutorials to make my first steps ?

thanks for your help

neoz42

2

neoz42 (./1) :
which laguage do we use ? asm, C ou another one ?
Either C or assembly is usable. (Check the Development tools page on the wiki) C is a bit easier to get stuff done with, especially with DATlib.
neoz42 (./1) :
is it possible to do some "reverse engineering" to get some datas such as graphics or sound on an existing game ?
Yes it is. A few tools exist to decode/encode graphics and sound data. (I forgot to put links to the decoders on the page, oops.)
neoz42 (./1) :
How to compile / test my code ?
Compiling will depend on what language and tools you use.

For testing, the easiest way to test is to use an emulator (like MAME). You'll want to have a recent version, so you don't have to recompile the entire program when you need to make changes. Instead, you'd edit the neogeo.xml file in the hash folder and add an entry similar to the one in this post. (MAME will tell you if the MD5 and SHA-1 hashes are wrong and will give you the correct ones. This will happen a lot if you're testing program/.Px/.PRG changes.)

If you're targeting the Neo-Geo CD, you can either burn a CD, or (if you have the CD Universe BIOS and the USB PC-2-NEO cable) upload it from the PC.
Cart systems are going to require de-soldering chips from an existing game and replacing them with your own chips.
neoz42 (./1) :
what is the difference between the files we found in a roms archive (Cx, Mx, Px, SPx, Sx and Vx) ?
Cx: Sprite graphics (interleaved, so e.g. C1 and C2 make up one part of the sprite data)
Mx: Music driver (Z80 code)
Px: Program ROM
SPx: not fully sure, but possibly used for patches on official games; you typically don't have to worry about it.
Sx: Fix layer graphics (displays over all other graphics)
Vx: Sounds (ADPCM-A and ADPCM-B, though the latter isn't available on CD)
neoz42 (./1) :
is there any testing program, example code or tutorials to make my first steps ?
There are a few bits and pieces on the wiki; I've released a few assembly-using productions in this forum, and I'm also working on an assembly language "from basics" tutorial (WIP version here).

Happy hacking!
avatar

3

Bienvenue.
Si tu veux débuter en C, comme l'a dit freem prend le NeoDev kit avec la Datlib. Y a pleins d'exemples à compiler.

Pour ripper les graphismes, mame est le mieux mais je crois pas qu'il puisse le faire pour les jeux NeoGeo. J'utilise fba et winkawaks mais c'est long.

4

(rien à voir avec le format des roms ou ce que peux faire un emu en séparant les layer ou donnant accès aux sprites mais j'avais fait à l'époque un petit outil pour aider à ripper des gfx, le principe était de classer les couleurs entre bg et sprite pour ensuite avoir un beau fond rose qui simplifiait le rip de ce qui est désiré
rip'r
53Dl4Zd8phOZhttps://github.com/r043v/ripr/tree/master/rip'rj'en avais fait aussi un second pour reconstruire des map depuis des séries de screenshoot, c'est dans le même dépot, ripr.m²
et la le mec il le pécho par le bras et il lui dit '

5

super merci pour toutes ces infos je prends le temps de tout lire et de faire des test !

6

Pour l'assembleur c'est possible après est ce qu'on te le conseille a toi de voir wink

Pour ripper les sprites il y a les fichier C1/C2 ect , mais ils n'y a pas de palette sur ces fichiers donc si tu les extrait de cette manière, tu n'aura pas les couleurs.
comment compiler tester son code ?
Pour ma part j'utilise vasm(assembleur) / geany (IDE) et gngeo(émulateur) pour tester.