Dans quel langage de programmation les jeux PS1 ont-ils été écrits?

15

Existe-t-il un langage commun utilisé pour créer des jeux Play Station 1? Ou comment savoir quel langage de programmation est utilisé pour l'un de ces jeux?

Zim3r
la source
3
Je lisais un livre sur l'architecture PS2, IIRC c'était C.
jcora
1
Cette question relève vraiment de la catégorie «quelle technologie un jeu particulier a-t-elle utilisée» qui n'est pas considérée comme appropriée pour ce site; voir la FAQ: gamedev.stackexchange.com/faq
Maximus Minimus

Réponses:

25

La plupart des jeux PS1 ont probablement été écrits en C, avec un certain assemblage et peut-être un léger «C avec des classes». Ce n'est pas une vérité universelle, nécessairement - par exemple, Crash Bandicoot avait une bonne partie de sa logique de jeu intégrée dans une variante LISP.

En général, vous ne pouvez savoir quelles langues ont été utilisées pour un jeu qu'en interrogeant les développeurs de ce jeu. Cependant, certaines technologies laissent des signatures ou des filigranes révélateurs qui peuvent vous aider à faire des suppositions éclairées.

Pour les langues natives, certains compilateurs ou éditeurs de liens peuvent laisser des modèles de signature ou autre chose dans le binaire final (par exemple, une tendance à stocker des données statiques à une adresse particulière, ou un certain modèle d'instructions de code machine d'amorçage pour le binaire. Sur le PC, vous peut souvent exécuter des outils tels que Dependency Walker sur un exécutable pour voir à quelles bibliothèques d'exécution il est lié et, à partir de là, faire des suppositions éclairées sur le compilateur utilisé pour le construire.

De même, les jeux construits dans des langages gérés nécessiteront leurs environnements d'exécution et se plaindront généralement fort s'ils ne sont pas trouvés au lancement du programme (cette plainte est généralement effectuée via un petit morceau de code d'amorçage natif dans l'exécutable, que vous pouvez également consulter). car si vous étiez si enclin.

Bien sûr, ces informations sont généralement peu utiles, car elles ne vous aident pas vraiment à résoudre des problèmes particuliers liés à votre propre jeu dans la plupart des cas.


la source
+1 Merci Josh, Existe-t-il des programmes pour déterminer le langage de programmation du jeu? car c'est un tas de fichiers * .bin. ou un moyen de visualiser le code source?
Zim3r
@Jake afficher le code source de n'importe quel binaire non géré compilé est presque impossible, ou au moins prend beaucoup de temps et beaucoup de travail!
Delusional Logic
Merci mais il y a des fichiers .bin dont certains sont des fichiers audio ou vidéo. même ces fichiers ne peuvent pas être ouverts?
Zim3r
Ils pourraient l'être, mais «comment» peut être un processus très complexe si vous ne connaissez pas les formats source, et serait hors de portée pour cette question.
2
@Gajoo Bien que ce ne soit pas si douloureux, ce ne sera pas facile si vous ne connaissez pas la langue. et vu qu'il veut en tirer des leçons, ce ne sera vraiment pas si utile. Je ne pense pas que ça en valait la peine.
Delusional Logic
16

J'ai été la première à SCEA lorsque nous avons lancé la PS1, et l'écrasante majorité des jeux ont été écrits en C, avec quelques bits critiques en assembleur. Tous les appels à la bibliothèque étaient également C.

Rob Craig
la source
1
Je peux le confirmer; bien que je soupçonne que les bibliothèques étaient des conventions d'appel C avec un assemblage modifié à la main, tout comme les pièces sensibles au temps ou délicates que j'ai vues ou travaillées.
Patrick Hughes