1

Bonjour,

Je voulais vous faire partager quelques informations sur mes explorations de Quake 2 sur l'Atari Jaguar.
J'alterne entre le code source de Quake 2, des tools et les modifications de l'emulateur.

Globalement, ca donne ca visuellement.
yxbc
7UU2
hDZZ
0vCg

C'est non jouable bien sur, largement sous la barre du 1fps. Code du jeu en C uniquement, compile avec des optimisations gcc, de l'ASM pour certaines fonctions externes, et pas de GPU/DSP/Blitter.
J'utilises aussi mon port de microwindows pour garder une relative compatibilite avec les sources du jeu.
La resolution est de 320x240 en 8 bits, avec le software renderer.
Il y a des calculs maths et du float en pagaille, il faut utliser des maps de petite tailles, triturer les assets/datas, et la ram explose joyeusement de toutes facons.

Avec du recul, c'est miraculeux que ca "tourne" quand meme.

2

Impressionnant wink

3

Amusant ^^

Tu devrais le poster sur AtariAge smile
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4

Wow, je serai top chaud pour jouer à une version PC qui ressemble au dernier screenshot ! ça me fait penser à Warsow un peu
avatar"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches

5

Jonas (./4) :
Wow, je serai top chaud pour jouer à une version PC qui ressemble au dernier screenshot ! ça me fait penser à Warsow un peu
Dans config.cfg, rajouter ou modifier la ligne:
set sw_drawflat "1"
Cela ne fonctionne qu'en mode paletized avec le software render; l'index sur la palette est base sur le lowest byte du pointeur sur la texture. Par exemple, si le pointeur sur la texture se termine par $54, alors le poly sera rempli par cette valeur.
Donc, aucun controle et aucune garantie d'avoir toujours le meme visuel. A l'origine, ce setting est pour aider au debug.

Zerosquare (./3) :
Amusant ^^

Tu devrais le poster sur AtariAge smile
Je preferes poster ici, cela semble plus calme et sereins. Et je penses que les gens comprendront que ca peut tres bien finir en vaporware.

6

Merci pour l'info ! Je viens justement de me choper les 4 Quake sur GOG du coup je vais tester ça ce weekend helico
avatar"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches

7

@dilinger, c'est justement un des seuls truc que j'avais laissé dans ma todolist grin
J'allais attaquer ça après les améliorations en cours sur la JagFPGA. smile


Si tu as des questions Jag (config, archi, optimisations, etc) n’hésite pas, on est plusieurs sur le forum à bien connaître la Jag.
avatar

8

SCPCD (./7) :
Si tu as des questions Jag (config, archi, optimisations, etc) n’hésite pas, on est plusieurs sur le forum à bien connaître la Jag.
Oui, j'ai cru comprendre que vous maitrisez cette machine et vous etes aimable en plus.

9

ouhaou quand meme! bravo
gt turbo lui il connait bien la jag, d'ailleur d'après ses dires à l'ADN de cette année, la jaguar est bien plus facile à programmer qu'il n'y parait!

10

SCPCD (./7) :
J'allais attaquer ça après les améliorations en cours sur la JagFPGA. smile
JagFPGA? Tres impressionant. Ca pourrait servir de dev. kit avec des tools adaptes?

vicomte (./9) :
gt turbo lui il connait bien la jag, d'ailleur d'après ses dires à l'ADN de cette année, la jaguar est bien plus facile à programmer qu'il n'y parait!
l'ADN de cette année? Qu'est ce que c'est? Un evenement?

Je suis encore au niveau 68000, je vais tater le Blitter et tenter des modifications dans l'emulateur pour integrer un profiler et rajouter un viewer partiel des registres HW.
J'alterne entre Quake 2, les tools et l'emulateur. L'ensemble ayant le meme but de toute facon, essayer de faire avancer le shmblik.

11

dilinger (./10) :
JagFPGA? Tres impressionant. Ca pourrait servir de dev. kit avec des tools adaptes?
Avec la JagFPGA, j'ai fait un remote debugger avec lequel j'ai accès à tous les registres et au step-by-step, ainsi que d'autres features qui ne sont pas possibles avec une vrai jag.
ils sont intercomptatible moyen quelques deltas (corrections de bugs entre autres)
http://scpcd.free.fr/fpga/Jaguar/Compatibility.htm (en 2015)


l'ADN de cette année? Qu'est ce que c'est? Un evenement?
C'est effectivement un évenement : topics/190961-adn-2019#post-13
avatar

12

J'ai relu les specs de la JagCFv3, c'est vraiment cool entre la ram supplementaire et les I/O. Ca peut faire une belle difference par rapport a la Skunkboard (que je respectes beaucoup d'ailleurs).
Rien que le support keyboard peut ammener un confort dans le controle du developement - la ligne de commande de Quake 2 par exemple.
TaWG

13

Pas grands choses à dire sur les progrès du "port". J’arrive à afficher autres choses que du décor, et l'ensemble reste toujours en 68000. Du debug qui a permis de régler des soucis lors des initialisations.
J’ai essayé de tâter du Blitter; avec l’impression de l’entendre ricaner quand je faisais mes tests.

Voici à quoi ressemble un des protagonistes du jeu; oui, il tourne le dos, mais faut lui pardonner, car il est timide…
MERu

Mais après de la patience, il daigne se montrer… Enfin, "l’engine" finit par lentement le faire tourner dans le bon angle.
ITRy

Il est grand temps de se débarrasser de tous ces floating points, ça consomme des cycles de malade comme d’autres du beaujolais nouveau.

14

C'est prometteur.

15

passer en fixed point devrait accélérer les choses

par contre ca doit demander des millions de modifs du code grin

16

Wouaw, impressionnant ! Merci pour le partage, c'est très intéressant smile
avatarhttps://steamcommunity.com/id/Chevels/ , mon profil Steam pour celles et ceux désirant se taper quelques parties à l'occasion :)

Mon serveur Minecraft: http://sur-les-ruines-de-heavy-craft.craft.vg/

17

Si jamais t'as un binaire, je suis intéressé de le tester sur la JagFPGA pour voir ce que ça donne dessus smile
avatar

18

SCPCD (./17) :
Si jamais t'as un binaire, je suis intéressé de le tester sur la JagFPGA pour voir ce que ça donne dessus smile
J'ai des executables au format ELF. Mais meme si je le transformerais en ROM, il ne fonctionnerait pas sur la console.

Comme brievement expliquez dans mes posts, il y a des debordements de memoire ici et la. J'utilises ma version modifie de l'emulateur qui rajoute la RAM au dela des 2Mo.
Les performances ne sont pas la non plus.
J'ai rajoute un mode wire frame pour voir et aider au debug, et meme comme ca, le 68000 a les 2 genoux a terre...
LpXx

L'adaptation du code pour exploiter les autres processeurs sera fait tranquilement pas vite, faut d'abord finir le profiling et jouer a tourner on/off les feature du jeu (particles, lightings, etc.), et avec les optims de gcc.

Je preferes poster ici de temps en temps les progres et si ca finit en vaporware, on aura quand meme bien ri sur la demarche completement loufoque et je penses que personne ne m'en voudra.
Et si un jour, c'est jouable, je le presenterais dans les expos pour le fun.