programmation-DC, portail francophone

| Pour ceux qui recherchent des exemples complets de jeux
Le très bon site vous propose des portages de jeux SDL sur dreamcast. L'auteur fournit les sources, ce qui peut grandement vous aider si vous souhaitez avoir des exemples concrets pour creer votre jeu dreamcast.

| KOS v.1.2.0
Dan a sorti sa version 1.2.0 de KallistiOS:

"This is basically just the latest CVS plus a few misc fixes and NickK's modem driver. I decided that since it's been so long and the
codebase is relatively stable now, might be a good time to switch to a 1.2.x version number.

The idea behind 1.2.x is that it will basically remain stable, both in the sense that the code is stable, and that the API is stable and won't change on you; you can upgrade to another 1.2.x without having to go refit a bunch of code. We'll probably stick with this series for a few more bugfix releases, and then move on to 1.3.x. If someone wants to pick up the maintenance of 1.2.x at that time, let me know. Otherwise it'll bitrot like the other earlier versions.

Also as I mentioned earlier, I am no longer distributing binaries with KOS releases. They are a pain to generate and take up huge amounts of space and upload time. I figure if you can compile KOS binaries at all, you can probably compile KOS itself. :)"

En bref, Dan pense que sa librairie est suffisamment stable pour passer en version 1.2.x.

Attention, Dan ne fournit plus que les sources, ce sera à vous de compiler la librairie pour votre environnement.

lien :"

| Liste des améliorations de Kos 1.2.0
Liste des améliorations :

- DC Fix to use DCARM7_CFLAGS when compiling ARM driver [Christian Groessler == CG]
- DC Fix for typo in vmu_pkg_crc() (submitted by anonymous)
- DC Fix for incorrect source address in maple packets [Jim Ursetto == JU]
- *** Fix fputs() to not put an extra "\n" [Walter van Niftrik == WvN]
- DC Fix Makefile for vqenc to work in more cases [Dan Potter == DP]
- DC Integrated irq_disable() and irq_enable_exc() so that exceptions are
always enabled. [DP]
- DC Added pvr_mem_stats() (like malloc_stats but for PVR) [DP]
- *** Removed SYSCALL() usage in favor of thd_block_now() [DP]
- *** Primary timers switched to wakeup interval rather than periodic. [DP]
- *** Fix uninitialized mutex in semaphores [DP]
- *** Added generic waits, and changed semaphores/mutexes to use them [DP]
- DC Added timer_ms_gettime64() [DP]
- DC Fix for potential incorrectness in NDEBUG mode in pvr_txr_load_ex [DP]
- DC Remove float usage in timer_ms_gettime() [DP]
- *** More proper condvar impl using genwaits [DP]
- DC Strip trailing dots on extensionless ISO filenames (thanks waltervn for
pointing this out) [DP]
- *** Fix file descriptor owner bug in fdopen [Bero]
- *** Zlib workaround for KOS file descriptors being non-POSIX [Bero]
- *** Added more proper (mutex-paired) condvars, and tests [DP]
- DC Tremor: bug fix for mono playback, guaranteed thread exit timing, added
thd_sleep() to make threading more efficient [DP]
- *** Use dbgio_printk instead of dbgio_printf in printf [Bero]
- DC System ASIC module now supports IRQ priority levels [DP]
- DC CD-Rom driver much more thread-friendly [DP]
- *** 'struct netif' renamed to 'struct knetif' to avoid conflicts with lwIP [DP]
- *** Fix for initial '/' in fs_builtin pathnames [Bero]
- *** Moved addons' includes and output libs to under addons/ [DP]
- DC Updated liboggvorbisplay to use vorbisfile funcs like libtremor [DP]
- DC Set size to -1 while readdir'ing on /vmu so they appear as dirs [DP]
- DC Filter chain support for snd_stream [DP]
- DC Basic flashrom BIOS support [DP]
- DC Improved PVR statistics reporting [DP]
- DC Misc improvements to Parallax and Tsunami [DP]
- DC Add Joliet support to iso9660 and fix a big huge bug in directory
scanning [Bero, DP]
- DC Support for alpha channels, PNG input, and KMG output in vqenc [DP]
- DC New libkmg for loading KMG files output by vqenc [DP]
- *** Added byte_count field to kos_img_t for paletted and VQ'd data [DP]
- DC Typo in broadband adapter driver flags [Wayne Moorefield == WM]
- DC Switch to genwaits and remove extra timing in maple VMU module [DP]
- DC Added skeleton PuruPuru/Jump Pack driver [DP]
- DC New vmufs middle-layer driver and new fs_vmu that uses it [DP]
- *** Fixed thread non-safety in readpng [DP]
- DC SPU module wasn't clearing all of sound ram on startup/shutdown [DP]
- DC New libkmg for loading "KOS image" files from disk [DP]
- DC Support for opening a stream from a descriptor in liboggvorbisplay [DP]
- DC Parent-relative colorization and positioning in libtsunami [DP]
- DC Misc bug fixes and improvements in libtsunami [DP]
- DC Multi-format texture loading support, getpos() for fonts in plx [DP]
- *** fs_ramdisk attach/detach support [DP]
- *** Added a NOT_OWNER flag for kos_img_t for ROM images, etc [DP]
- DC Added WIP native dc-load client [DP]
- DC Added generic vblank hooking system [DP]
- DC KM_DBG_VERBOSE support for PVR malloc [DP]
- DC Improved texture memory size detection for debug messages in PVR [DP]
- DC Switch to vblank for page flipping, stats on vertex buffer usage in PVR [DP]
- DC Add support for load method flags in pvr_load_texture_ex [DP]
- DC Add snd_sfx_stop_all() and mmap support for loading samples [DP]
- DC Improved debug output for sound malloc [DP]
- *** Removed x86-specific code in endian.h [DP]
- DC New kmgenc utility for pre-twiddling textures [DP]
- DC Inside-int usability for cdrom_get_status() [DP]
- DC Tray-open detection using vblank, improved fd invalidation support
for fs_iso9660 [DP]
- DC Persistent volume support for liboggvorbis [DP]
- DC Font fuzziness cleanup and pseudo-newline support in Parallax [DP]
- DC Added modem driver from Nick Kochakian [NK]

| Quelques news en passant:) ( KOS, script pour Blender et des modifs sur le site)

Apparament Dan Potter a l'impression de parler dans le vide sur son site :), mais non il y a toujours du monde pour y faire un tour, la preuve ...Ce dernier nous indique que la sortie de la prochaine version de Kos est toute proche (ainsi que celle de Feet of Fury) et que la liste des changements sera certainement la plus longue de l'histoire de cette librairie de programmation :). Voici un aperçu des changements :

KMG files are in. This should be really helpful if you want to pre-twiddle your textures. It additionally supports mmap'ing, so for example you can place a bunch of textures in a romdisk and blast 'em to the PVR fast. I'm doing this now in FoF and it's _significantly_ faster than the old way of loading PNGs and twiddling them on the fly. I find too that making KMG files into a romdisk and then gzipping the bundle still gives good compression (as good as PNG anyway) but is much faster overall.

Tsunami got a huge overhaul and now supports parent-relative coloration and positioning. So it really operates a lot more like a windowing system at this point.

fs_ramdisk has an attach/detach function now. This nifty feature lets you take a chunk of malloc'd memory you have laying around and attach it as a file on the ramdisk. You can also write out files to the ramdisk and then detach them to use as standard malloc'd buffers.

I started (and got sort of minimally working) a "native" dc-load client. I asked AndrewK and got permission to import the GPL'd code from dc-load-ip under the standard KOS license. It's still not terribly functional, but if someone wants to pick up the torch then let me know and I'll try to help you get started. To enable it, start a program with the dc-load-ip console and set INIT_NET on the init flags. You also need to go remove the dbglog() messages from the ethernet module you're using, and enable the spin until link stabilized loop.

There's a new generic vblank hooking system. Lots of things want to hang off the vblank IRQs so I went ahead and wrote this thing. Maple is now using it, and the PVR uses this for page flipping now instead of the somewhat unreliable SCANINT1 (we were having troubles on 50Hz PAL with it).

fs_iso9660 can (FINALLY) detect and properly handle tray opening. So at this point it should behave exactly as you'd expect when you swap out CDs and such. It uses the vblank checking to do this.

voir le CVS de kos :
Le site de Dan Potter :

Script pour blender

James Helferty a réalisé un script d'exportation pour Blender 2.25+ qui permet de sortir des images au format DC, pour l'instant ce script ne semble pas être parfait car il ne gére pas bien la hiérarchie entre les objets, de plus une prochaine version de Blender gérant mieux les script en Python devrait faire son apparition dans peu de temps.

source :
liens pour DL le script :

Petite modifications sur le site

Eldrad a accepté que j'intégre son tutorial dans le site, aussi je me suis permis d'y faire quelques petites modifications :). C 'est à voir ici :

JMD a rajouté cette adresse à la rubrique "liens de programmationdc", c'est un article en français et complet sur la programmation avec la librairie SDL .

| Tutorial sur la prog. jeu video
Julien (patbier sur le forum) nous a concocté un tutorial plein de conseils pour développer un jeu vidéo et pour bien écrire son code en langage C. Pour lire ce tuto, faîtes donc un tour par là .;

| Un nouveau tutorial sur programmationDC
JMD nous offre cette fois ci un tutorial pour développer sous visual C++ sur dreamcast avec KOS , encore une fois cet article est très simple d'accés et efficace, pour lire ce tuto, faîtes donc un tour par là .

| ProgrammationDC l'ouverture :)
Ce nouveau site dont l'instigateur est JMD se veut être un espace pour tout les programmeurs dreamcast francophones rassemblant un maximum d'infos et de tutoriaux sur la programmation. Le site n'en est qu'à ces débuts mais vous trouverez déjà un superbe tutorial sur la programmation avec l'aide de la librairie SDL sur dreamcast (vraiment bien expliqué et accessible aux débutants) ainsi qu'une section assez complète comprenant des liens vers d'autres sites. Si vous souhaitez vous aussi participer n'hésitez pas à me mailler :). Comme vous pouvez le constater Programmation-DC est en construction, ce n'est pas un problème car j'espére qu'il le sera perpétuellement ;)