Menu

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.

Voir les contributions Menu

Messages - alekmaul

#61
PVSnesLib section Française / Re : Merci! :D
03 Août 2012 à 12:30:17
Héhé, content que du monde passe de nouveau sur SNES, ça fait plaisir.

Alors, pour tes questions :
1) les sections sont de 32Ko, si t'as pas besoin de plus de 32Ko, pas besoin d'autres sections. Et les noms sont libres.
2) superfree car l'affectation est réalisée par le compilateur lui m?me, sans que l'on spécifie la bank voulue sur SNES.
3) le texte fonctionne uniquement en mode1, pas en mode 3, désolé :(.
#62
Bon, j'ai modifié un tout petit peu l'init dans ton code car l'affichage ne se faisait pas.
Il faut en effet attendre une VBL pour mettre ? jour la VRAM (cf le code de Mario ?u je mets ? jour lors du scroll la derni?re ligne de l'écran.
Ce qui donne cela :

extern char bg1, bg1_end, font;
extern char bg1pal, bg1pal_end;
extern char bg1map, bg1map_end;

unsigned char i,move,dir,flipX,animFrame,iFrame;
unsigned short scrollX=0,scrollY=0,pad0;

//---------------------------------------------------------------------------------
int main(void) {
// Initialize SNES
consoleInit();

// Initialize text console with our font
consoleInitText(0, 1, &font);

// Now Put in 16 color mode and disable Bgs except current
setMode(BG_MODE1, 0);  bgSetDisable(2);

// Copy tiles to VRAM
bgInitTileSet(1, &bg1, &bg1pal, 0, (&bg1_end - &bg1), 16*2, BG_16COLORS, 0x5000);

// Init Map to address 0x1000 and Copy Map to VRAM
bgSetMapPtr(1, 0x1000, SC_64x64);
u8 *ptrMap  = &bg1map; // 64 = map size x *2 because each entry is 16bits length
u16 ptrVRAM = 0x1000; // screen begin at 0x1000
for(i = 0; i < 64; i++){
WaitVBLFlag;
dmaCopyVram(ptrMap, ptrVRAM, 64*2); // copy row to VRAM
dmaCopyVram((ptrMap+64*2), (ptrVRAM+64*64), 64*2); // copy row to VRAM
ptrMap += 64*2;
ptrVRAM += 64;
}

// Wait for nothing :P
while(1) {
scanPads();
pad0 = padsCurrent(0);

move = 0;

if(pad0 & KEY_RIGHT){
++scrollX;
move = 1;
dir = 1;
}
if(pad0 & KEY_LEFT){
--scrollX;
move = 1;
dir = 3;
}

if(pad0 & KEY_UP){
--scrollY;
move = 1;
dir = 0;
}
if(pad0 & KEY_DOWN){
++scrollY;
move = 1;
dir = 2;
}

if(move == 1){
++animFrame;
animFrame &= 31;
}else{
animFrame = 0;
}

flipX = 0;
if(dir == 3) flipX = 1;

//oamSet(0, posX, posY, 2, flipX, 0, animFrames[dir * 4 + (animFrame >> 3)], 0);

//keepScrollInRange();

bgSetScroll(1, scrollX, scrollY);

consoleDrawText(0, 1, "%04u - %05u, %05u", pad0, scrollX, scrollY);

WaitForVBlank();
++iFrame;
}
return 0;
}


Et je n'ai pas le pb de ligne noir dans no$sns ... Tu as quelle version ? Peut ?tre que ton PC n'est pas assez puissant ou que tu as un pb graphique comme avec bsnes ...
Pour zsnes1.51, j'ai le pb, impossible de comprendre pourquoi ...

Sinon, j'ai rétabli la possibilité de mettre des fichiers joints, smf avant pourri le répertoire des attachements ... Attention, on ne les voit qui si on est identifié sur le forum.
#63
Alors, premi?re petite réponse par rapport ? tes questions :
Citation//if (i >= 16) ptrMap  = &bg1map + 32*5*2; // Init anything else with white line <= WTF ?
Tout simplement que la map de mario ets plus petite que l'écran de la SNES? j'init donc avec rien le bas de l'écran.

Pour les lignes noirs, je pense que cela vient d'un probl?me de VBL, peux tu me dire ce que tu as exactement dans la boucle principale de ton programme et aussi ? quel moment tu déclenches la synchro VBL avec WaitForVBlank();

As tu testé sur bsnes, bien qu'il soit lent, c'est le plus proche de la SNES réélle ?
#64
ouep, bizarre que ça reparte hors des développeurs actuels de la version sur googlecode ...
#65
En fait, le mieux est de regarder les tutos de ce site, ça donne une idée.
Ensuite, il faut connaitre le langage C ou C++, voir l'assembleur ARM si tu veux aller plus loin ^^
#66
oulah non, pas de psp, pas assez de temps, j'ai déj? du mal ? fournir sur DS ^^
#67
Connais pas, et je t'avoue que je n'ai jamais regardé les homebrews sur PSP ...
#68
On a déj? du mal ? avoir un linker compatible avec le mode DSi alors avec la 3DS, faut pas réver je pense ....
#69
Le sources sont old en fait via le lien. Il y a une autre version de dispo nesterds+ mais les sources ne sont pas dispo.
C'est donc infaisable de l'adapter, désolé ...
Par contre, ? suivre cette nouvelle version de nesDS, elle peut ?tre sympathique : http://www.nintendomax.com/viewtopic.php?f=19&t=12548
#70
ok, je regarde dés que j'ai le temps (pas en ce moment, je dois terminer un jeu pour la compo NMAX).
#71
Si tu as les sources de disponible quelque part, je peux voir ce que je peux faire ....
Mais nesDS me semblait pas mal quand m?me ...
#72
Citation de: Dakodak le 20 Juin 2010 à 08:36:30
puis dans l'onglet 'Emulateur'
| Présentation | Mes Homebrews | Emulation |
et ensuite sur le lien:
Des émulateurs développés pour fonctionner sur Dingoo OS Natif (émulateur SEGA, Gameboy, etc ...).
Rien ne marche  :o
Yep, j'ai encore rien fait, j'ai aps trop de temps en ce moment.
Je m'en occupe ASAP
#73
héhé, bons jeux sur dingoo alors.
Perso, je suis pas passé ? Dingux, j'ai laissé ma Dingoo telle que et je ne prends donc que les jeux Native OS, bref, pas grand chose ? part ceux que je réalise ^^
#74
arf, je te comprends ...
Effectivement, c'est pas géant tout ça.
Par contre, y'a eu aussi des pbs sur Dingoo, je dirais que tout dépend des séries fabriquées.
Et l'émulateur Amstrad existe sur Dingoo, du moment que tu acceptes de passer sur Dingux  ;)
#75
Yep, nouvelle année et nouvelles résolutions ^^
Un peu plus de dev DS cette année :P