1) Comment faut-il faire pour activer//désactiver l'alpha, le 2nd et le shift dans un programme en C
2) C koi le symbole des puissances en C
(j'ai essayé ^ mais visiblement c pas ça...)
(j'ai essayé ^ mais visiblement c pas ça...)
char AlphaLockSaveState;
void AlphaLockOn(void)
{
if (*((*(long **)0xc8)-1)<=1155)
{
AlphaLockSaveState=*((char *)*(*((*(short ***)0xc8)+0x96)+4)+0x1f);
*((char *)*(*((*(short ***)0xc8)+0x96)+4)+0x1f)=1;
};
else
{
_rom_call(void,(char*),481)(&AlphaLockSaveState);
};
};
void AlphaLockOff(void)
{
if (*((*(long **)0xc8)-1)<=1155)
{
AlphaLockSaveState=*((char *)*(*((*(short ***)0xc8)+0x96)+4)+0x1f);
*((char *)*(*((*(short ***)0xc8)+0x96)+4)+0x1f)=0;
};
else
{
_rom_call(void,(char*),482)(&AlphaLockSaveState);
};
};
void RestoreAlphaLock(void)
{
if (*((*(long **)0xc8)-1)<=1155)
{
*((char *)*(*((*(short ***)0xc8)+0x96)+4)+0x1f)=AlphaLockSaveState;
};
else
{
_rom_call(void,(char*),483)(&AlphaLockSaveState);
};
};
)



movea.l AB_prodid*4(a5),a0 ;get AMS version jsr (a0) addq.w #4,a7 move.l #$75ab,alpha ;ajuste l'adresse cmp.b #'0',buffer+5 ;teste 1.00 beq start move.l #$75b3,alpha ;ajuste l'adresse cmp.b #'3',buffer+5 ;teste 1.05 beq start move.l #$79af,alpha ;ajuste l'adresse cmp.b #'5',buffer+5 ;teste 2.01 beq start move.l #$79b3,alpha ;ajuste l'adresse cmp.b #'6',buffer+5 ;teste 2.02 beq start cmp.b #'7',buffer+5 ;teste 2.03 beq start move.l #$6497,alpha ;ajuste l'adresse cmp.b #'8',buffer+5 ;teste 2.04 beq start move.l #$649b,alpha ;ajuste l'adresse cmp.b #'9',buffer+5 ;teste 2.05 beq start clr.b alpha ;version non supportée start: ;version de AMS compatible
tst.l alpha beq loop_name ;enleve tous les modificateurs movea.l alpha(pc),a0 clr.b (a0)+ clr.b (a0)+ clr.b (a0)+ loop_name:






(y'a pas de mal à ça, je l'ai dejà fait).