DM48. A Dungeon game for the HP48

Dernière modification: 2004.04.05
-*-
Nouvelles News Présentation Presentation Photos d'écran Screenshots Fonctions Features ChangeLog ChangeLog Télécharger Download Notes de publication Release notes Contribuer Contribute
-*-

Nouvelles

News

5 avril 2004

À la demande aimable de Laurent Depardieu, j'ai pris quelques instants pour transférer les sources de DM48 et les publier, voir lien dans la section téléchargement.

Pour compiler le jeu vous aurez besoin d'un assembleur et quelques autres outils. Voir section notes de publication.

2004, april 5

Following Laurent Depardieu's kind request, I took a moment to transfer the DM48 sources and publish them, see link in section Download.

To compile the game you will need an assembler and a few more tools. See section release notes.

9 décembre 2003

Je n'ai jamais vraiment lancé les listes de diffusions, ayant bien d'autres choses à faire. Section supprimée.

Le jeu fonctionne sur l'émulateur de HP48 : x48, et vraisemblablement sur d'autres.

Le site est déplacé de son ancien emplacement (sur chez.com) au nouveau (amphi-gouri.org). J'envisage de publier le code source de Dungeon Master sous la licence GPL.

Contactez-moi si vous êtes intéressé.

2003, december 9

I've never really launched the mailing-lists, having a lots of other things to do. Section deleted.

The game works on x48 HP48 emulator, and probably on others, too.

Pages moved from the old site (at chez.com) to the new (amphi-gouri.org). I'm considering releasing the game source under the GPL license.

Contact me if you're interested.

7 septembre 1999

Je place (enfin) la version 0.2.0 sur la page web. Elle était prête depuis plus d'un mois et je l'avais déjà envoyée à quelques-uns, mais comme j'ai pris un peu de vacances et que j'ai pas mal de boulot en ce moment, elle a attendu un peu... voir la section Télécharger.

Nouvelle section ChangeLog.

1999, september 7

At last, version 0.2.0 is on the web page. It has been ready for more than a month and I already sent it to some people, but I have had some holidays and now quite some work, so it has waited for a while... see section Download.

New section ChangeLog.

29 juin 1999

Je n'ai pas eu le temps de toucher à la HP ces derniers temps. J'ai aussi du "vrai" travail à faire! :-)

Changements dans les mailing-listes pour me placer en conformité avec les règles de fonctionnement du domaine qui m'emploie. (Publicité: bien documenté, le "kit jussieu" est à mon avis un bon choix pour configurer sendmail relativement facilement).

Il y a eu 200 visites à cette page en un peu plus d'un mois. (Visites comptées à partir du 16 mai, date de l'annonce concernant DM48 dans HP48 E-zine, suivie le 19 par une entrée dans hpcalc.org). Merci. Me voilà donc motivé pour continuer mes efforts sur ce jeu.

Pour ceux qui veulent être informés des changements sans avoir à revenir régulièrement, je recommande la liste "dm48-ann". Voir la section contribuer.

À faire: un résumé des discussions que j'ai eu hors mailing-liste pour faire démarrer celle-ci, dire un mot sur ceux qui ont déjà contribué (Mathieu, Frédéric...), sortie la version 0.2.0, etc...

C'est tout pour aujourd'hui.

1999, june 29

Sorry, I didn't have much time for HP recently. I have some "real" work, too! :-)

I changed the mailing-lists adresses to conform to the rules of my hosting domain. (BTW, with its good doc, "kit jussieu" is IMHO a good choice for a relatively easy sendmail configuration).

There has been 200 visits here within a bit more than a month. (Counted from May, 16th, when HP48 E-zine cited DM48, followed on 19 by hpcalc.org). Thank you. It can have motivation to continue this work.

For those who would like to be informed about changes without having to come regularly, I recommend subscribing to mailing-list "dm48-ann". See contribute section.

To do: summarize discussion I had out of the mailing-list to make it start, tell a word about those who already contributed (Mathieu, Frédéric...), release version 0.2.0, etc...

That's all for today.

10 juin 1999

Mailing-listes ouvertes, voir la section contribuer.

1999, june 10

The mailing-lists are open, see contribute section.

7 juin 1999

La version 0.2.0 va bientôt sortir.

Nouveauté principale: la partie "simulation du monde" est active de façon asynchrone par rapport aux actions du joueur.

Résultats:

  • Quand vous lancez des objets, il retombent
  • Les monstres ont une chance de commencer à bouger
  • La structure est en place pour animer les portes, mécanismes dépendants du temps, etc...

Deux mailing liste sont presque créées, l'une pour les annonces de nouveautés, l'autre pour les discussions (ou comp.sys.hp48 ?). Gérée par le logiciel Sympa, elles seront hébergée par mes soins et sans publicité.

1999, june 7

Version 0.2.0 soon released!

Main differences: world simulation now asynchronous with respect to the player's action.

Now:

  • Objects that you throw fall off.
  • Monsters get a chance to start moving
  • Overall structure is in place for door animations and other mechanisms that depend on time, etc...

Two mailing-lists are to be created, one for announces of news, the other for discussions (or use comp.sys.hp48 ?). They will be operated by mailing-list robot Sympa, and without ads.

-*-

What is DM48 ?

DM48 est un jeu inspiré de Dungeon Master pour HP48

Mais quelques images valent mieux qu'un long discours:

Fonctionne sur toute HP48, S SX G GX G+, dans tous les ports

DM48 is a 3D dungeon game for the HP48

Since some pictures are worth a thousand words:

Works on all HP48: S SX G GX G+, in any port

Voulez-vous l'essayer ? section téléchargement

Wanna give it a try ? download section

-*-

Photos d'écran

Screenshots

Rooms can have any shape. Stairs lead you to other levels. There are currently two levels. Every detail is rendered correctly with respect to distance. The game will include a lot of useful objects and spells.
You can handle objects as you wish: pick, drop, keep in your backpack, throw away... Teleporters appear as blurred regions. What you see when you're inside. Of course everything can be mixed.
Objects lying on the floor... ...are rendered according... ...to perspective rules. This monster prevents you from taking an object behind him.
A special display routine adjusts size of sprites in real time. Uh uh, there's a monster round that corner!...
-*-

Actuellement dans le jeu:

Now featuring:

  • Coeur du programme en assembleur pur (rapide!)

  • Formats de données très optimisés au niveau occupation mémoire

  • affichage des: murs, téléporteurs, boutons, objets au sol, objets volants, escaliers, objets portés, passages secret (murs traversables).

  • transporter des objets, en ramasser, en poser, les jeter (ils restent en l'air pour l'instant!). Vous disposez d'un sac à dos avec de la place pour 18 objets, plus 6 poches accessibles par une seule pression de touche

  • monter et descendre les escaliers, tomber dans les trappes, être téléporté... Pas de limite sur le nombre de niveaux (deux pour l'instant, maximum 64 de larges et 4096 cases).

  • sauvegarder la partie et reprendre plus tard.

  • tout l'affichage en 3D, avec une routine de réduction en temps réel pour l'affichage des monstres et la présentation, comme sur le jeu original que j'ai connu sur Amiga.

  • Core code in pure ASM (fast!)

  • Data formats highly optimized for low memory consumption

  • display of: walls, teleporter fields, buttons, on-floor objects, flying objects, stairs, carried objects, secret areas (walls you can pass through).

  • carry objects, pick up those you find or put them down, throw them away (they don't fall yet!). You have a backpack containing up to 18 objects and 6 pockets assigned to keys for fast access.

  • climb stairs up and down, fall into pits, be teleported. Unlimited number of levels (so far, two levels, and a limited width of 64, and 4096 blocks).

  • save the game and be able to continue later.

  • all 3D display with a real-time shrinking display routine, used for monsters and for the animated splash screen, like in the original Dungeon Master game on the Amiga.

-*-

Télécharger

Download

Version actuelle: 0.2.0, du 21 juillet 1999

Current version is: 0.2.0, on 1999 july 21

Code source: Code source de DM48, licence GPL, 5 avril 2004

Lisez les notes de publication !

Source code: DM48 source code, GPL license, 2004 april 5

Read the release notes !

-*-

ChangeLog

ChangeLog

0.2.0

Désormais, lorsqu'on jette un objet, il ne se contente pas de rester en l'air mais avance jusqu'au prochain mur pour y tomber. Si vous testez, vous constaterez que les monstres n'arrêtent pas leur trajet qui peut traverser tout le niveau s'il n'y a pas d'obstacle... à faire plus tard.

(à compléter)

0.2.0

From now, when an object is thrown it doesn't simply stay in the air but actually goes on to the next wall where it falls. If you test, you'll see that monsters don't stop the objects' path, they can fly through the whole level if there's no obstacle... to do.

(to complete)
-*-

Notes de publication

Release Notes

  • Il existe (ou a existé) au moins deux syntaxes pour le code source assembleur Saturn. Le code de DM48 a été développé avec HPASM1.0 par J.Y.Avenard
  • J'utilise aussi la bibliothèque de développement DEV 3.22, version modifiée de DEV 3.10 par Étienne de Foras, avec un outil de recherche rapide fait par HPReg
  • J'ai aussi fait une bibliothèque qui permet de s'assurer de l'intégrité d'un dossier de travail : CRC. (La mémoire protégée n'existant pas sur HP48, un bug dans un programme peut corrompre discrètement des dossiers de travail.)
  • Pour bien faire il faudrait placer le code source sous un système de contrôle de version comme CVS ou subversion.
  • DM48 n'a jamais été compilé ailleurs que sur une HP48. Si vous connaissez une alternative, dites-le moi.
  • En conséquence, le code source est directement distribué sous la forme d'un dossier compréhensible par une HP48 ou un émulateur.
  • Pour des raisons d'encombrement (même sur une HP48GX avec outils de développement en carte d'extension, car l'ensemble prend presque 100ko sur les 128 disponibles...), certains fichiers de données ne sont pas régénérés. Il n'est pas nécessaire de les régénérer pour modifier le jeu lui-même, mais pour changer certains éléments (graphismes notamment)
  • Pour compiler le jeu, lancer le programme COMP et voyez les étapes défiler (environ 50 seconds, 34ko libre nécessaires). Pour libérer de la mémoire vous pouver supprimer des fichiers temporaires en lançant FM. Cela supprime aussi le jeu compilé.
  • Le code source est commenté mais non documenté. Vous avez besoin de savoir programmer une HP48 si vous voulez faire plus que juste compiler le jeu et le lancer.
  • There is (or has been) at least two syntaxes for Saturn assembler source code. DM48 source code was developed with HPASM1.0 by J.Y.Avenard
  • I also use a development library named DEV 3.22, a modified version of DEV 3.10 by Étienne de Foras, with a fast search tool made by HPReg
  • I also made a folder integrity checking library named CRC. (The HP48 features no memory protection, so a bug in a program may corrupt silently some work directories.)
  • The right thing to do would be to put the DM48 source code some under version control tool like CVS or subversion.
  • DM48 was never compiler anywhere else than a HP48. If you know about an alternative tell me about it.
  • As a consequence, the source code is directly distributed as a folder usable by a HP48 or an emulator.
  • For size reasons (even on a HP48GX with development tools in an expansion cards, because the whole directory takes nearly 100ko of the 128 available...), some data files are not re-generated. It is not necessary to re-generate them to modify the game itself, but to change some elements (e.g. some graphics).
  • To compile the game, run the COMP program and see it compile (about 50 seconds, 34kb free needed). To free some memory, you can suppress temporary files by launching FM program. This also purges the compiled game.
  • The source code is commented but not documented. You need to know how to program the HP48 to be able to do more than just compile and run it.
-*-

Contribuer

Contribute

Je suis ouvert à toute forme de contribution qui peuvent améliorer le jeu, et bien sûr ceux qui auront contribués pourront être cités dans le jeu. Les propositions utiles (liste non limitative!):

  • idées de thèmes ou plans de niveaux

  • idées d'objets (graphismes)

  • idées de monstres (et graphismes)

  • remarques techniques ou non, importantes ou non

  • toutes vos autres idées!

Contactez moi.

I am open to all contributions to bring this project further, and of course, credit to contributors will be given inside the game. Useful proposals (not limitative!):

  • level themes, design and maps

  • objects ideas and design

  • ideas for monsters and graphism

  • remarks (technical or not) of any importance

  • all your ideas!

Contact me.
-*-

Gouri's HP48 collection