Page 33 sur 43
Re: Sonic The Hedgehog SCD
Publié : lun. 25 oct. 2010 13:11
par xav
En effet Mooz ca simplifierait drôlement!
Reste à voir si un incbin (un tableau de constants donc) de plus d'une page (8Ko) reste accessible dans son intégralité avec cette méthode?
J'essaye ça

Re: Sonic The Hedgehog SCD
Publié : lun. 25 oct. 2010 13:44
par MooZ
Sachant que le pointeur est calculé, il faut juste que tu t'assures que les MPRs consécutifs pointent vers les banks correspondantes (genre MPR 5,6,7 qui pointent vers les banks 10,11,12).
Re: Sonic The Hedgehog SCD
Publié : lun. 25 oct. 2010 20:55
par xav
Ah c'était trop beau, As me sort une unknow instruction avec " lda #low(collision_map)" et j'ai essayer plusieurs syntaxe (Au fait, que fait elle exactement, elle charge A avec le LSB de l'adresse de départ de collision map ?) , et même en le sautant les instructions sur la page zéro sont refusé bien que j'y ai déclarer les variables

Re: Sonic The Hedgehog SCD
Publié : mar. 26 oct. 2010 08:17
par touko
Comme c'est une variable globale huc il faut la mettre comme ça : lda #low(_collision_map).
Re: Sonic The Hedgehog SCD
Publié : mar. 26 oct. 2010 08:59
par xav
Déjà fait bien sur
Mais toujours pas reconnus, c'est dommage car que plus j'y réfléchis, plus cette idée de padding me parait géniale, une multiplication par 256 c'est un simple lsb->msb puis lsb<-0, on peux quand méme pas faire plus simple
mieux tiens maintenant que j'y pense, adr=(y*map_width)+x donnerais en algo:
msb_adr<-y
lsb_adr<-x
C'est aussi simple que ça non?
Re: Sonic The Hedgehog SCD
Publié : mar. 26 oct. 2010 09:27
par touko
C'est bizarre je viens d'essayer et ça marche ..
La syntaxe que je t'ai donné est la bonne c'est sur, mais tu dois avoir un souci ailleurs ..
Rajoutes des espaces devant ton lda , en le mettant prés du bord j'ai la même erreur que toi .
Comme ça ça marche :
Comme ça non :
Re: Sonic The Hedgehog SCD
Publié : mar. 26 oct. 2010 23:20
par xav
Effectivement c'est ça!
Quand l'assembleur râle il suffit de changer l'indentation pour que ça marche
Sinon apparemment un bon endroit ou déclarer des variables en pages 0 avec Huc c'est tout à la fin du library.asm.
Au fait Mooz, ou utilise tu le map_width dans ton listing?
A moins que je n'ai pas compris et que ce soit celui pour le padding à 256 octets?
Re: Sonic The Hedgehog SCD
Publié : mer. 27 oct. 2010 09:19
par MooZ
@xav: nulle part

Comme on connait le padding on n'a pas besoin de la largeur pour calculer l'offset.
Et ce problème d'espace dans pceas est assez frustrant. Je vais voir ce que je peux faire.
Re: Sonic The Hedgehog SCD
Publié : jeu. 04 nov. 2010 12:10
par xav
J'ai modifier le script lua dans mapwin pour créer un padding de 256 octets, l'augmentation de taille n'est pas si problématique que je ne le craignais au départ
J'ai aussi retiré la nécessité d'ajouter 2 au pointeur (j'avais réservé les 2 premier octets pour stocker la taille de la map, mais c'est bête de perdre du temps a chaque passage).
NB: Question béte, mais y a il moyen de créer un deuxième pointeur sur constant avec déjà le décalage de deux octet?
Par contre pas moyen de faire marché ton code mooz
Pourtant un code plus simpliste marche bien, même avec les coordonnées en page zéro:
lda <amap_x
sta _ptr_op
lda <amap_y
sta _ptr_op+1
lsrw _ptr_op
Re: Sonic The Hedgehog SCD
Publié : jeu. 04 nov. 2010 14:48
par touko
xav a écrit :
NB: Question béte, mais y a il moyen de créer un deuxième pointeur sur constant avec déjà le décalage de deux octet?
bah tu fais :
ptr = tab1 + 2;

Re: Sonic The Hedgehog SCD
Publié : jeu. 04 nov. 2010 20:47
par xav
bah tu fais :
ptr = tab1 + 2;
Justement le compilateur me refuse ce type d'opération sur un pointeur de constant :|
Re: Sonic The Hedgehog SCD
Publié : jeu. 04 nov. 2010 21:11
par touko
Justement, j'ai testé et ça marche ...
Il faut que ton pointeur soit en global,et bien sur de même type.
Je l'ai même fait en asm, et aucun problème.
Code : Tout sélectionner
#include "huc.h"
const char tab[] = { 1,2,3,4 };
char *ptr;
main()
{
ptr = tab + 2;
put_number(*ptr,3,10,10);
}
Re: Sonic The Hedgehog SCD
Publié : ven. 05 nov. 2010 10:41
par xav
Nouille que je suis! Merci Touko
Bon j'ai intérêt à mettre un coup d'accélérateur d'ici Noël moi

Re: Sonic The Hedgehog SCD
Publié : ven. 05 nov. 2010 11:58
par touko
xav a écrit :Nouille que je suis! Merci Touko

Pas de quoi

Re: Sonic The Hedgehog SCD
Publié : ven. 05 nov. 2010 12:58
par dudule
xav a écrit :Nouille que je suis! Merci Touko
Bon j'ai intérêt à mettre un coup d'accélérateur d'ici Noël moi

tu vas le finir pour Noel ??? ouai cool, hey les copings il va sortir pour Noel \o/