ichigobankai 197 Report post Posted March 18, 2014( 03/18/2014 11:14 PM) Voila pourquoi je ne suis pas trop présent depuis qq semaines, je "tente" de finir un dev pour le concours annuel de smspower (qui fini le 27 mars). Evidemment, comme j'ai les défis, l'ai commencé à m'y pencher le weekend du 1er mars ^^Comme tout bomberman, celui-ci peut se jouer à 4 en même temps, via un multitap homemade.et comme le code qui gère le multitap n'est pas dans les emulateurs, vous ne pouvez pas y jouer sur emu :mrgreen: C'est développé en C (small-c) via la lib z88dk, et mon pote Vingazole me donne un coup de main sur certaines parties critiques/bouffeuses de cycles et me les converti en assembleur z80.J'ai piqué les sprites de la version pc engine, une petite adaptation due aux palettes, et ma fois ca rend plutot pas mal. J'ai diminué légèrement les persos pour qu'ils logent en 16x24 pixels (a l'origine c'est dans du 24x24 avec de la perte) Dans les trucs prévus:- menu d'accueil selection de 2 à 4 joueurs (et bcp plus tard peu etre un mode "story" en solo...a voir)- une page de selection avec des "arenes" thématiques basées sur l'univers master system (sonic & cie)- musiques / bruitages- implanter un système de bankswitch pour avoir une rom > 48ko (vingazole devrait se pencher dessus ainsi que sur l'intégration du player MML pour la musique). j'ai déjà un code pour ca, mais Vin m'a dit qu'on devrait pouvoir le simplifier (car c'est une petite usine à gaz)voila voila.je devrais terminer de coder la partie "explosions" dans la semaine...j'essaierais de poster/tenir a jour "une sorte de wip". Pour terminer c'est pas toujours simple, autant je maîtrise assez bien le php/js que le C je découvre la joie des structures & des pointeurs ^^ Quote Share this post Link to post Share on other sites
M0nsieurL 38 Report post Posted March 18, 2014( 03/18/2014 11:23 PM) O_o' purée, c'est beau ! C'est de la master system ça ? Bon courage l'ami ! Curieux de voir un passage en C optimisé en asm, même s'il est probable que je n'y comprenne pas grand chose ! Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 18, 2014( 03/18/2014 11:35 PM) oui oui c'est bien de la master system ;) pour un bout de code qui gère le y/zorder (pour que les persos soient devant/derrière en fonction de leur position Y) : en C, pas trop compliqué : (y'a 2 valeurs, la position Y et l'id du perso, pour ensuite faire le trie et réordonner le SAT -la liste des sprites-) //Y order Dec for(i=0;i<nb;i++){ for(j=i;j<nb;j++){ if(buffer[j] >= buffer[i]){ temp=buffer[i]; temp_b=buffer[i+nb]; buffer[i]=buffer[j]; buffer[i+nb]=buffer[j+nb]; buffer[j+nb]=temp_b; buffer[j]=temp; } } } en ASM : void yorder(unsigned char * buffer, unsigned char nb) { #asm ld hl, 2 add hl, sp ld b, (hl) ; b = nb inc hl inc hl ld e, (hl) inc hl ld d,(hl) ; de = buffer ld h,d ld l,e ; hl = buffer yorder_loop1: ld d,h ld e,l ; de = hl ld c,b ; c = b yorder_loop2: ld a,(de) cp (hl) jr c,yorder_after_swap push hl ; SWAP push de push bc ld a,(de) ; swap [hl],[de] ld b,(hl) ld (hl),a ld a,b ld (de),a inc hl ; swap [hl+4],[de+4] inc hl inc hl inc hl inc de inc de inc de inc de ld a,(de) ld b,(hl) ld (hl),a ld a,b ld (de),a pop bc pop de pop hl yorder_after_swap: inc de dec c jr nz,yorder_loop2 inc hl djnz yorder_loop1 ret #endasm } Quote Share this post Link to post Share on other sites
Redfield1 95 Report post Posted March 19, 2014( 03/19/2014 05:17 AM) je vois enfin ce que tu m'avais évoqué; c'est magnifique !! Bon courage pour la suite !! Quote Share this post Link to post Share on other sites
X-death 42 Report post Posted March 19, 2014( 03/19/2014 06:01 AM) Vraiment tres sympa , je suis sur que ça va rencontrer un franc succès. Les graphismes sont impressiinant pour de la sms ;-) Le release du code est elle prévu ? Quote Share this post Link to post Share on other sites
izidor49 27 Report post Posted March 19, 2014( 03/19/2014 06:32 AM) Sympa ce bomberman master system, bonne continuation Ichigo. Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 19, 2014( 03/19/2014 06:39 AM) Merci pour vos encouragements ;) pour le code source, je n'y ai pas encore réfléchi, mais pourquoi pas. De toute facon sans la partie "elec" du multitap, ca ne peut pas etre utilisé pour faire du commerce car du coup on ne peut y jouer qu'à 1 sur le hard ^^ (et ca ne marche pas sur emu je le rappel, en fait on déplace les 4 persos en même temps) Quote Share this post Link to post Share on other sites
blyn 14 Report post Posted March 19, 2014( 03/19/2014 06:54 AM) Oh super! La bonne vieille SMS en a dans le ventre! Bravo pour ce projet (et son délai ultra court de mise en œuvre!) Quote Share this post Link to post Share on other sites
kogami 10 Report post Posted March 19, 2014( 03/19/2014 06:54 AM) Le voila enfin ton fameux projet. c'est très encourageant pour la suite. Quote Share this post Link to post Share on other sites
Stek 0 Report post Posted March 19, 2014( 03/19/2014 02:44 PM) Bien bien ! Bon courage à toi. Quote Share this post Link to post Share on other sites
tatsui 7 Report post Posted March 19, 2014( 03/19/2014 07:36 PM) très sympa, bon courage pour la suite Quote Share this post Link to post Share on other sites
Akira76 25 Report post Posted March 19, 2014( 03/19/2014 09:25 PM) Aaah, c'est bon tout ça! Je comprends mieux pourquoi on voit moins le chef en ce moment ;-) Quote Share this post Link to post Share on other sites
oof-will 1 Report post Posted March 21, 2014( 03/21/2014 06:16 PM) Super projet! Quote Share this post Link to post Share on other sites
Exocil 11 Report post Posted March 21, 2014( 03/21/2014 09:47 PM) Je me sents tout petit quand je vois les capacitées de certains ici, mille bravos Monsieur Ichigo :-) Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 23, 2014( 03/23/2014 11:05 AM) Petit copié/collé de ce que j'ai poste sur master-system france : les explosions sont en cours.La propagation des flammes est ok, déjà un bon point. plus qu'a déclencher la mort des persos, exploser les murs destructibles et libérer les items... Quote Share this post Link to post Share on other sites
M0nsieurL 38 Report post Posted March 23, 2014( 03/23/2014 11:37 AM) Courage Ichigo! Plus que 4 jours ! Quote Share this post Link to post Share on other sites
izidor49 27 Report post Posted March 23, 2014( 03/23/2014 07:55 PM) ça avance bien!! bonne chance pour le concours!! Quote Share this post Link to post Share on other sites
Redfield1 95 Report post Posted March 24, 2014( 03/24/2014 04:54 AM) Yes !! Quote Share this post Link to post Share on other sites
william13009 32 Report post Posted March 25, 2014( 03/25/2014 11:31 AM) Salut, alors depuis le 23, tu as avancé ? Je joue sur SNES mais je dois dire que je suis impressionné et admiratif de ce que tu réalises avec la MS ! Impatient de voir le résultat ! :D Quote Share this post Link to post Share on other sites
KrazyP 36 Report post Posted March 25, 2014( 03/25/2014 08:39 PM) put***, c'est E N O R M E !!! Franchement, quand je regarde les images, j'ai l'impression que c'est de la SNES :shock: Par curiosité, tu comptes faire comment au final pour le multitap ? Un adaptateur de multiplexage sur les ports manettes ? ou un rajout sur le PCB de la cartouche ? Ou carrément un multitap de Megadrive ? En tous cas, si tu mènes bien ce projet au bout, je suis hyper intéressé pour m'en faire un (en multi évidemment :mrgreen: ) Dernière question, ça monte à combien de kb la rom ? Edit : J'ai trouvé une doc sur le fonctionnement du multitap megadrive... genesis_multitap.txt Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 25, 2014( 03/25/2014 09:59 PM) J'ai evidemment avancé depuis le 23, là je corrige des bugs et c'est loin d'être simple. J'ai rajouté écran titre, choix de mode de jeu (2, 3 ou 4 players) et j'ai mis en place une ébauche de la mort des persos. J'ai réédité les tiles de flammes et ré-arangé les tiles. Mais j'ai encore des trucs a caler sur les explosions avant que mon pote vingazole mette ca en ASM...niveau timing c'est chaud ^^ J'ai egalement rajouté 3 petites fonctions en ASM pour activer/desactiver l'écran et vider la vram. pour le multitap, c'est un multitap spécifique externe. pour l'instant la rom fait 41ko, sans aucune compression au niveau données. Avec la compression aPlib, ca doit se diviser par ~4. Quote Share this post Link to post Share on other sites
william13009 32 Report post Posted March 25, 2014( 03/25/2014 11:12 PM) Bon courage pour le sprint final ;) Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 27, 2014( 03/27/2014 05:54 PM) Allez hop, c'est envoyé pour le concours de smspower ^^ C'est pas fini (evidemment) mais y'a déjà un paquet de chose en place -et qui fonctionnent- ;) - - Pour ceux qui veulent essayer la rom : http://www.mediafire.com/download/bz1ir5aunrub2i3/BOoM.sms Quote Share this post Link to post Share on other sites
oof-will 1 Report post Posted March 27, 2014( 03/27/2014 08:00 PM) Super sympa. Par contre, j'ai réussi à faire planter le jeu (sous fusion) En fait, au départ, le perso marche assez vite. Dès que je pose des bombes, il ralenti (normal ou pas?) Je m'amusais à poser des bombes et à attendre qu'elles explosent pour voir l'animation de l'explosion. La, une explosion commence à un endroit ou je n'avais pas posé de bombe, et le jeu freeze. Bon, je sais que c'est pas fini, et ce que tu as déjà fait en si peu de temps est déjà énorme ;-) Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 27, 2014( 03/27/2014 08:15 PM) Je n'ai pas réussi a faire planter, mais par contre j'utilise quasi exclusivement meka comme ému (et surtout pour debugguer). Avec Vingazole on a prévu de changer de compilo pour passer a SDCC, car z88dk optimise pas grand chose et converti en asm n'importe comment... on devrait avoir un gain de vitesse entre 5x à 10x en passant par SDCC, qui lui est optimisé et génère un fichier plus légé. pour rigoler : http://www.cpcmania.com/Docs/Programming/SDCC_vs_z88dk_Comparing_size_and_speed.htm En attendant j'ai encore pas mal de petites choses à coder dont la génération aléatoire du terrain, la récup des items (ca c'est pas trop dure) Quote Share this post Link to post Share on other sites
Msieur Citron 3 Report post Posted March 27, 2014( 03/27/2014 08:45 PM) Tourne sur everdrive sans problèmes. pas de plantage en mode 4P et bombes au large ... Quote Share this post Link to post Share on other sites
n_Arno 4 Report post Posted March 27, 2014( 03/27/2014 08:48 PM) Par curiosité, le multitap, tu le branche à quoi? sur les deux ports manettes? sur le port d'extension de la console? Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 27, 2014( 03/27/2014 09:03 PM) sur le port n°1, en gros comme un multitap "normal" Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 29, 2014( 03/29/2014 06:53 AM) J'ai ajouté les explosions chaînées et corrigé/fixé 2/3 trucs (death/résultats...). Une nouvelle version sera dispo quand j'aurai mis en place la génération aléatoire du terrain avec les blocs destructibles. Ensuite tout ce qui est stage select/music etc. attendront que le projet soit basculé sur SDCC. Quote Share this post Link to post Share on other sites
n_Arno 4 Report post Posted March 29, 2014( 03/29/2014 02:30 PM) Tu passes au stunfest cette année? j'aimerais bien voir ça tourner en live :D Quote Share this post Link to post Share on other sites
tatsui 7 Report post Posted March 29, 2014( 03/29/2014 05:30 PM) ca me donne envie de me lancer dans le cartmod MS Quote Share this post Link to post Share on other sites
KrazyP 36 Report post Posted March 29, 2014( 03/29/2014 08:01 PM) Tu penses qu'au final, avec compression tu arriveras à passer sous les 32k ? (me reste plus qu'un after burner =-) ) Quote Share this post Link to post Share on other sites
william13009 32 Report post Posted March 29, 2014( 03/29/2014 08:44 PM) Tu penses qu'au final, avec compression tu arriveras à passer sous les 32k ? (me reste plus qu'un after burner =-) ) pour l'instant la rom fait 41ko, sans aucune compression au niveau données. Avec la compression aPlib, ca doit se diviser par ~4. :mrgreen: Quote Share this post Link to post Share on other sites
ichigobankai 197 Report post Posted March 29, 2014( 03/29/2014 11:47 PM) Tant que ca en dépasse pas les 48k tu peux le faire sur un pcb sans mapper ;) (3 banks de 16ko, c'est le max absolu sans mapper) comme les eproms de 48ko n'existent pas, il faut une eprom de 64ko (27c512) depuis mon message du 25, j'ai passé plusieurs morceaux de graphismes via aPLib, mais pour l'utiliser il faut rajouter du code...du coup je suis toujours à 42ko, mais avec plus de graphismes. Il me reste l'écran titre a compressé, mais il faut que je le découpe de plusieurs morceaux, car je n'ai alloué que 3k de ram pour le décodage/decompression des données. (et l'écran titre entier aurait besoin de 8k de ram, soit la totalité et moi j'en ai besoin pour d'autres "trucs" ) Quote Share this post Link to post Share on other sites
Redfield1 95 Report post Posted March 30, 2014( 03/30/2014 06:31 AM) - http://www.retrocollect.com/News/bomberman-unofficially-blasts-onto-the-sega-master-system.html- http://allgamers.fr/13368/coding-competition-2014-sms-power-8-softs-en-lice/ :-P Quote Share this post Link to post Share on other sites