Annonces Google
Serveur IRC
Serveur : irc.portlane.se
Canal : #AmigaNG
Activité du Site

Pages vues depuis 25/07/2007 : 24 887 782

  • Nb. de membres 186
  • Nb. d'articles 1 269
  • Nb. de forums 19
  • Nb. de sujets 20
  • Nb. de critiques 24

Top 10  Statistiques

Index du forum »»  Création-Développement »» AmOS4

AmOS4#2039

14Contributeur(s)
Sharynnzzd10hLioElwoodsinisrusPseudaxosathlonet68CreolsthellierastrofraK-Ldavebracoalex
3 Modérateur(s)
K-LElwoodcorto
Sharynn Sharynnicon_post
Heureux que cela fonctionne maintenant ...

@Sinisrus: Va y doucement!!! rapide, rapide.. OK peut-être mais il y a pas de comparaison avec les autres système. Pour le moment, je n'ai effectivement pas de SDL ou autre et je suis content que cela tourne bien. Il y a encore des Bug sur l'affichage à certain moment. Mais après tout je ne suis pas programmeur :)

Pour la compatibilité AMOS, pour le moment, les commande sont sous type C.
C'est à dire que par exemple:
Screen Open 0,640,480,256,HIres+Laced

s'écrit

Screen_Open(0,640,480,256,Hires+Laced);

Quand le projet sera bien avancé je pense essayer de faire un IDE pour retomber sur les commandes tel qu'elles sont sous Amos.

J'ai commencé à faire la routine pour décompiler les programme Amos car elles sont compacter en TOKEN et que les banks de mémoire non volatiles sont inclus dans le fichier. Et là seulement l'IDE permettra de séparer le programme des banks et de mettre tout en place.

Je dois maintenant trouver l'alternative à la lowlevel.library qui est trop dure ( à mon avis à rendre compatible avec tout les système).

"I'm a poor lonesome coder and ilong way to end"...
Projet AmOS4 - Retour vers l'Amos sous OS4...

SAM440EP - A1200 3.1 de base
sinisrus sinisrusicon_post
C'est chouette me tarde de voir la suite en tout cas :-)
--
Coin coin... amitheme.amiga-ng.org
Sam460 1,15Ghz - OS4.1FE - Radeon Saphir HD7750 R7 250E - 2Go de ram
thellier thelliericon_post

@Sharynn


@Sharynn


Effectivement ça marche sur ma Sam440 : faut juste penser à ajouter la ptreplay.library


J'ai aussi réessayer tes anciennes démos "zoom" et "démo" : elles marchent toujours sur mon OS41FE :-)


A propos d'ouverture de .library moi je me suis fait une macro = c'est moins pénible que de mettre des #ifdef __amigaos4__ partout


Pour tracer un prog j'aime aussi beucoup cette macro là:
#define LL            {printf("Line:%ld\n",__LINE__);}
Après y suffit de mettre un LL en début de chaque ligne à tester


Alain


*==================================================================================*/
#ifdef __amigaos4__
#define OS4
#else
#define OS3
#endif
*==================================================================================*/
#define LIBCLOSE(libbase)  if(libbase!=NULL) {CloseLibrary( (struct Library  *)libbase );   libbase=NULL; }
#define LIBOPEN(libbase,name,version)  libbase =(void*)OpenLibrary(#name,version);    if(libbase==NULL)  return(FALSE);
#ifdef OS4
#define LIBOPEN4(interface,libbase)    interface=(void*)GetInterface((struct Library *)libbase, "main", 1, NULL); if(interface==NULL) return(FALSE);
#define LIBCLOSE4(interface) if(interface!=NULL) {DropInterface((struct Interface*)interface );interface=NULL;}
#else
#define LIBOPEN4(interface,libbase)    ;
#define LIBCLOSE4(interface) ;
#endif
/*==================================================================================*/
BOOL OpenAmigaLibraries()
{
 LIBOPEN(DOSBase,dos.library,36)
 LIBOPEN(GfxBase,graphics.library,0)
 LIBOPEN(IntuitionBase,intuition.library,0)
 LIBOPEN(CyberGfxBase,cybergraphics.library,0)
 LIBOPEN(DataTypesBase,datatypes.library,39)
 LIBOPEN(Warp3DBase,Warp3D.library,4)
 LIBOPEN(AslBase,asl.library,37)
 LIBOPEN(UtilityBase,utility.library,0)
 LIBOPEN(RexxSysBase,rexxsyslib.library,35)


 LIBOPEN4(IDOS,DOSBase)
 LIBOPEN4(IGraphics,GfxBase)
 LIBOPEN4(IIntuition,IntuitionBase)
 LIBOPEN4(ICyberGfx,CyberGfxBase)
 LIBOPEN4(IDataTypes,DataTypesBase)
 LIBOPEN4(IWarp3D,Warp3DBase)
 LIBOPEN4(IAsl,AslBase)
 LIBOPEN4(IUtility,UtilityBase)
 LIBOPEN4(IRexxSys,RexxSysBase)


}
/*======================================================================================*/
void CloseAmigaLibraries()
{


 LIBCLOSE4(IDOS)
 LIBCLOSE4(IGraphics)
 LIBCLOSE4(IIntuition)
 LIBCLOSE4(ICyberGfx)
 LIBCLOSE4(IDataTypes)
 LIBCLOSE4(IWarp3D)
 LIBCLOSE4(IAsl)
 LIBCLOSE4(IUtility)
 LIBCLOSE4(IRexxSys)


 LIBCLOSE(DOSBase)
 LIBCLOSE(GfxBase)
 LIBCLOSE(IntuitionBase)
 LIBCLOSE(CyberGfxBase)
 LIBCLOSE(DataTypesBase)
 LIBCLOSE(Warp3DBase)
 LIBCLOSE(AslBase)
 LIBCLOSE(UtilityBase)
 LIBCLOSE(RexxSysBase)
}
/*==================================================================================*/


 

Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig

Message édité par : thellier / 16-02-2015 14:24
astrofra astrofraicon_post
Citation : Sharynn 


"I'm a poor lonesome coder and ilong way to end"...
A1200 en Rack 1U custom | Pas de machine NG.
fra.planet-d.net
 
C'est un beau projet! Je vais ptet dire un gros mot, mais si tu mettais
ton source sur github ou google code, ça pourrait peut être permettre à de bonnes
âmes de donner des avis, voir mettre de te soumettre quelques patches ou
correctifs ?
A1200 en Rack 1U custom | Pas de machine NG.
fra.planet-d.net
Sharynn Sharynnicon_post
Hey les amis !!!
Juste un petit Up pour dire que le projet Amos4 est toujours d'actualité. On ne sais jamais, cela pourrais intéresser !!! :)

Bon !! La Bibliothèque avance peu à peu et tourne presque bien.. encore des bugs à voir...

J'ai commencer le convertisseur vers un fichier ASCII comme le faisait l'Amos à l'époque, mais j'ai aussi et surtout fait directement la conversion vers les commandes de ma bibliothèque. Ce fichier converti est directement compilable avec la bibliothèque dans le système. (enfin normalement).

Par contre j'ai un soucis pour refaire la conversion des nombre à virgule. En effet ils sont au format "Mantissa", mais quoi que je fasse je ne trouve pas comment les retranscrire.

Ils sont sur un mot LONG, les bits de 0 à 6 sont l'exposant, le bit 7 est le signe et le reste est la trame "Mantissa". Mais j'ai beau tourne et retourner les bit pour arriver au format IEEE, il ne se convertit pas correctement et je ne retrouve pas la valeur qui se trouve dans l'Amos.

Hors Mis François quelqu'un pourrait me donnée un coup de main ?

J'attends vos retour..

Merci....


Projet AmOS4 - Retour vers l'Amos sous OS4...

SAM440EP - A1200 3.1 de base
sinisrus sinisrusicon_post
Bon j'y connais rien mais si tu converti ton nombre a virgule en string  tu peux peut être le reconvertir après?

Enfin je dit ça je dit rien...
--
Coin coin... amitheme.amiga-ng.org
Sam460 1,15Ghz - OS4.1FE - Radeon Saphir HD7750 R7 250E - 2Go de ram
Elwood Elwoodicon_post
Moi je suis intéressé de voir ce que peuvent faire les Hollywoodiens avec AmOS ;-)

Sur le mantissa il y a pas mal d'infos. J'ai trouvé cette page pas mal
--
Philippe Ferrucci
Avec une Sam460 et AmigaOS 4.1, je suis eco-responsable. Cool !
Sharynn Sharynnicon_post
Citation: Elwood 

Moi je suis intéressé de voir ce que peuvent faire les Hollywoodiens avec AmOS ;-)

Sur le mantissa il y a pas mal d'infos. J'ai trouvé cette page pas mal
Projet AmOS4 - Retour vers l'Amos sous OS4...

SAM440EP - A1200 3.1 de base
 

Merci Elwood, j'ai regardé et j'ai fait ce qui est sur ce site sur certains autres aussi.. mais rien..

Je désire récupérer le chiffre 2.3.
En IEEE il se coderai 0x40133333 (%01000000000100110011001100110011)
Sous Amos il est codé 0x93333342. (%10010011001100110011001101000010)

Une similitude se retrouve dans tous les testes fait. Mais comme vous le voyez ce n'est pas franchement idéal.

Si quelqu'un a une idée.

évidemment, cela ne me bloque pas complètement pour la suite des 3 programmes en cours:
- La bibliothèque AmOS4 sous compilateur C
- Le convertisseur BANK vers fichier "bank.abk" et/ou fichier des données directement sorties de la BANK
- Le convertisseur Amos programme vers fichier ASCII et vers la forme de la bibliothèque directement.

Merci pour vos réponse.
Projet AmOS4 - Retour vers l'Amos sous OS4...

SAM440EP - A1200 3.1 de base
thellier thelliericon_post
Y a des infos sur les float ici
http://steve.hollasch.net/cgindex/coding/ieeefloat.html


Mais je t'avoue que ça reste assez obscur...


Pense à ajuster le exp=exp-127; en exp=exp-63; (à priori comme t'as moins de bits d'exp)
et à bien ajouter le 1 implicite en tête de mantisse



Alain



Edit:

Effectivement y a qque chose de bizarre



Single:

SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM

01000000 00010011 00110011 00110011

Amos:

MMMMMMMM MMMMMMMM MMMMMMMM SEEEEEEE

10010011 00110011 00110011 01000010

?_______ ________ ________ ______?_



y a un 1 en tête de mantisse en plus ( 1 implicite en tête de mantisse 

? devenu explicite?)

et un autre 1 à l'avant dernière position de l'exposant
Message édité par : thellier / 16-09-2016 18:58
Sharynn Sharynnicon_post
Yop j'ai trouvé la solution...

Le float Amos est au format FFP et non IEEE. C'est pour cela qu'il y avait des similitudes sans que nous trouvions..

Il ne reste plu qu'a le convertir en IEEE.

Quelqu'un aurait une solution autre que la mathtrans.library ?


Projet AmOS4 - Retour vers l'Amos sous OS4...

SAM440EP - A1200 3.1 de base
Petites Annonces

0 annonce(s) publiée(s)

Consulter

AmigaOS 4.1

Laissez-vous tenter par
AmigaOS 4.1
AmiTheme

AmiTheme