HuC
Présentation
Maintenant que vous savez ce qu'est la pc engine (si, si, vous le savez, vous
venez de lire la page sur les features de Hu-Go!, cf menu de gauche), vous avez
d&éjà deviné qu'il y avait très peu de nouveaux
jeux sur cette console. La dernière série de jeu apparut en 1995
avec une exception en Juin 1999 pour la sortie de Dead of the Brain 1 &
2.
Depuis, plus aucun jeu commercial n'est apparu. Heureusement, quelques fans
ont créé des jeux maisons récemment. Cette tendance est
arrivée avec la sortie dde Magic kit, l'assembleur de la pc engine, fait
par David Michel. Quelques démos
sont alors apparues, généralement pour montrer comment coder,
ouais, en bref, des démos :), pas vraiment des jeux. La tendance "uniquement
démos" a commencé à changer avec l'arrivée
de Jamanoid, un clone d'arkanoid réalisé par l'équipe de
hu6280 (auparavant sur www.hu6280.com). C'était autour de ... 1998 il
me semble. Jusqu'à la mi-2000, rien de vraiment neuf dans ce domaine,
jusqu'à que je décide de donner un coup de main dans ce domaine
en faisant un compilateur C pour la pc engine.
J'ai demandé tout autour de moi pour voir si un programme similaire
n'existait pas déjà (ca aurait été intéressant
sur la NES par exemple à cause de leur architecture proche) et ce faisant,
j'ai appris que David Michel avait déjà attaqué un tel
projet mais avait abandonné par manque d'intérêt de la part
du public. Il m'a très gentiment donné son travail au point où
il l'avait laissé et j'ai pu voir qu'il était presque fonctionnel.
J'ai commencé à apprendre comment ça marchait et puis j'ai
remarqué que seule la libc (la bibliothèque implémentant
les opérations habituelles [+, *, <,..., même les switch/case
]) manquait pour pouvoir commencer à produire des roms. J'ai commencé
à régler ça après quelques semaines de développement
et j'ai sorti ce travail sous le nom de HuC (voir la page sur les features de
Hu-Go! pour comprendre le pourquoi du comment du 'Hu' :) et voyant celà,
David Michel a repris les rênes de ce projet ^^.
En ce moment, David Michel, David Shadoff
et moi même faisont notre possible pour améliorer HuC. Depuis le
début, où vous ne pouviez utiliser qu'un affichage texte noir
et blanc, des algo C de base (sauf en utilisant de l'assembleur en ligne), vous
avez désormais la possibilité de gérer les sprites, les
tiles, les palettes, toutes les instructions C (en utilisant toutefois le vieux
standard de '83, très proche de l'actuel, vous en faites pas) sans vous
souciez de la limitation des banques (enfin, presque, vous n'avez pas à
gérer la répartition des fonctions dans les banques mais le code
d'une fonction ne peut toujours pas dépasser les 8 ko, c'est pas très
dur à contourner), avec du scrolling, enproduisant un code plus compact
et rapide (grâce à l'optimiseur intégré). Le développement
de HuC est toujours en cours (avec l'ajout programmé du son et un meilleur
support vidéo) et le nombre de jeu créé avec commence à
devenir considérable.
Usage
Pour ce qui est des connaissances requises par un codeur HuC, rien de plus que
la maîtrise 'habituelle' du C est nécessaire. En effet, dans la documentation
HuC, vous ne trouverez pas un tutorial C mais juste ce dont vous avez besoin pour
utiliser l'API HuC, qui, comme vous pouvez imaginer, est assez différente
de la lib PC d'habitude. En entrée, au lieu du clavier, vous aurez droit
à 5 joypads avec 6 boutons. Grace au travail de david shadoff,
la souris est desormais supportee, meme si peu de jeux commerciaux
l'utilisent. Pour
afficher les résultats, une petite librairie a été
implantée, permettant d'afficher du texte et des nombres. De plus, vous
pouvez utiliser toute la puissance vidéo de la pc engine avec le support
matériel de 64 sprites jusqu'à 32x64 pixels, des tiles de 8x8 pixels,
du scrolling, 32 palettes de 16 couleurs codées sur 9 bits chacun (RRRGGGBBB).
Installation
L'installation est assez simple. Pour des raisons de confort, il est bon de placer
le répertoire dans lequel sont les exécutables dans le 'path' (ou
toute autre variable utilisée pour chercher automatiquement les exécutables).
Ensuite, comme HuC a besoin du Magic Kit (un compilateur ne produit que du code
assembleur, pas directement du code binaire), vous devez aussi définir
la variable d'environnement pointant sur le répertoire contenant les bibliothèques.
Cette variable s'appelle PCE_INCLUDE et peur être positionnée avec
SET PCE_INCLUDE=c:\huc\include\pce sous DOS par exemple ou $PCE_INCLUDE=/usr/local/huc/include/pce;
export $PCE_INCLUDE sous certains shells un*x et ainsi de suite...
|
Design initial par Nostromo
|
|