programmer une s3 virge/dx

programmer une s3 virge/dx - Hardware - Linux et OS Alternatifs

Marsh Posté le 26-06-2005 à 00:28:12    

bonjour
 
je voudrais cree ma propre api pour ma s3 virge  
j'ai fouille avec notre ami [:alkatraz]
pourtant je n'ai rien trouver qui pourais etre utile
je me suis dit qu'il y aurais moyen de taper mon code en asm pour programmer le gpu
 
le petit probleme est que comme j'ai pus le lire sur un autre forum que les fabriquents les cree eux meme et prefere garder leur petit secret pour eux!
 
y aurai t'il moyen de contourne le probleme sans devoir desassemble un de leur drivers
 
toute aide est la bien venue merci :hello:  
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 00:28:12   

Reply

Marsh Posté le 26-06-2005 à 01:08:10    

Regarde dans les sources du noyau Linux (en drivers/video/S3triofb.c par exemple)
 

Reply

Marsh Posté le 26-06-2005 à 12:29:52    

salut
 
comme je l'ai dis je souhaiteraispouvoir prog cette api sans devoir desosser un des leur mais merci quand meme
 
y a t il d'autre idee
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 12:47:59    

Pourquoi faire ?
 
Passe déjà par ceux du noyau linux, il sont libre et donc tu peux les modifier, les lires etc.. pas de dessassemblage.

Reply

Marsh Posté le 26-06-2005 à 16:10:20    

re
j'ai un driver de linux mais en l'ouvrant certaine partie sont en anglais ce qui me parais normal mais le reste est apparament un langage que je ne connait pas lequel :??:  
 
voila ce que m'affiche le bloc note pour 1 des fichier
 
/* $XConsortium: newmmio-sizes.c /main/2 1996/10/25 11:33:52 kaleb $ */
/* compile with
   cc -I../../common -I../../../../../../exports/include/X11 newmmio-sizes.c
   */
 
/* $XFree86: xc/programs/Xserver/hw/xfree86/accel/s3_virge/newmmio-sizes.c,v 3.2.2.2 1997/05/11 02:56:13 dawes Exp $ */
 
#include "regs3v.h"
 
#define PS(set)  printf(#set "_regs \t\t = %04x\n", &((mmtr)0)->set ## _regs)
#define P(set,reg)  printf(#set "_regs.regs." #reg " \t = %04x\n", &((mmtr)0)->set ## _regs.regs.reg)
 
main()
{
   PS(pci);
   PS(streams);
   PS(memport);
   PS(v3b);
   PS(v3c);
   PS(v3d);
   PS(subsys);
   PS(dma);
   PS(colpatt);
   PS(bltfill);
   PS(line);
   PS(polyfill);
   PS(line3d);
   PS(triangle3d);
   PS(lbp);
 
   printf("\n" );
   printf("\n" );
 
   P(bltfill,src_base);
   P(bltfill,dest_base);
   P(bltfill,clip_l_r);
   P(bltfill,clip_t_b);
   P(bltfill,dest_src_str);
   P(bltfill,mono_pat0);
   P(bltfill,mono_pat1);
   P(bltfill,pat_bg_clr);
   P(bltfill,pat_fg_clr);
   P(bltfill,src_bg_clr);
   P(bltfill,src_fg_clr);
   P(bltfill,cmd_set);
   P(bltfill,rwidth_height);
   P(bltfill,rsrc_xy);
   P(bltfill,rdest_xy);
 
   printf("\n" );
   P(line,src_base);
   P(line,dest_base);
   P(line,clip_l_r);
   P(line,clip_t_b);
   P(line,dest_src_str);
   P(line,pat_fg_clr);
   P(line,cmd_set);
   P(line,lxend0_end1);
   P(line,ldx);
   P(line,lxstart);
   P(line,lystart);
   P(line,lycnt);
 
   printf("\n" );
   P(polyfill,src_base);
   P(polyfill,dest_base);
   P(polyfill,clip_l_r);
   P(polyfill,clip_t_b);
   P(polyfill,dest_src_str);
   P(polyfill,mono_pat0);
   P(polyfill,mono_pat1);
   P(polyfill,pat_bg_clr);
   P(polyfill,pat_fg_clr);
   P(polyfill,cmd_set);
   P(polyfill,prdx);
   P(polyfill,prxstart);
   P(polyfill,pldx);
   P(polyfill,plxstart);
   P(polyfill,pystart);
   P(polyfill,pycnt);
 
   printf("\n" );
   P(line3d,z_base);
   P(line3d,dest_base);
   P(line3d,clip_l_r);
   P(line3d,clip_t_b);
   P(line3d,dest_src_str);
   P(line3d,z_stride);
   P(line3d,fog_clr);
   P(line3d,cmd_set);
   P(line3d,dgdy_dbdy);
   P(line3d,dady_drdy);
   P(line3d,gs_bs);
   P(line3d,as_rs);
   P(line3d,dz);
   P(line3d,zstart);
   P(line3d,xend0_end1);
   P(line3d,dx);
   P(line3d,xstart);
   P(line3d,ystart);
   P(line3d,ycnt);
 
   printf("\n" );
   P(triangle3d,z_base);
   P(triangle3d,dest_base);
   P(triangle3d,clip_l_r);
   P(triangle3d,clip_t_b);
   P(triangle3d,dest_src_str);
   P(triangle3d,z_stride);
   P(triangle3d,tex_base);
   P(triangle3d,tex_bdr_clr);
   P(triangle3d,fog_clr);
   P(triangle3d,color0);
   P(triangle3d,color1);
   P(triangle3d,cmd_set);
   P(triangle3d,bv);
   P(triangle3d,bu);
   P(triangle3d,dwdx);
   P(triangle3d,dwdy);
   P(triangle3d,ws);
   P(triangle3d,dddx);
   P(triangle3d,dvdx);
   P(triangle3d,dudx);
   P(triangle3d,dddy);
   P(triangle3d,dvdy);
   P(triangle3d,dudy);
   P(triangle3d,ds);
   P(triangle3d,vs);
   P(triangle3d,us);
   P(triangle3d,dgdx_dbdx);
   P(triangle3d,dadx_drdx);
   P(triangle3d,dgdy_dbdy);
   P(triangle3d,dady_drdy);
   P(triangle3d,gs_bs);
   P(triangle3d,as_rs);
   P(triangle3d,dzdx);
   P(triangle3d,dzdy);
   P(triangle3d,zs);
   P(triangle3d,dxdy12);
   P(triangle3d,xend12);
   P(triangle3d,dxdy01);
   P(triangle3d,xend01);
   P(triangle3d,dxdy02);
   P(triangle3d,xstart02);
   P(triangle3d,ystart);
   P(triangle3d,y01_y12);
   printf("%08x\n",CMD_RECT |
/*MIX_MONO_PATT |*/
                        INC_Y | INC_X | DRAW   /*s3alu[pGC->alu]*/ );
}
 
 
le petit probleme est le suivant meme si je connaisait ce langage il faudrai que je puise communique avec cette api mais alors comment , la je mi perd :??:  
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 16:11:58    

c'est du C si je ne m'abuse..

Reply

Marsh Posté le 26-06-2005 à 16:33:56    

re
 
je vient de verifier c'est bien du c
pense tu qu'il y a moyen de trouver comment comunique avec elle ou il faut absolument que je verifie toute l'api
ce qui risque d'etre long
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 16:38:41    

Tu veux dire quoi par communiquer ?

Reply

Marsh Posté le 26-06-2005 à 16:51:59    

L'immortel a écrit :

re
 
je vient de verifier c'est bien du c
pense tu qu'il y a moyen de trouver comment comunique avec elle ou il faut absolument que je verifie toute l'api
ce qui risque d'etre long
 
L'immortel

Tu m'as l'air un poil confu...
 
Qu'est ce que tu veux faire précisément? Tu veux hacker des drivers (dans ce cas, il y a un client DRI qui traine... mais si tu n'es même pas capable de reconnaitre du C cela risque d'être un chouilla complexe pour toi [:petrus75] )? Tu veux hacker le serveur X? Ou tu veux simplement dessiner des triangles et des ronds de couleurs?
 
Bref, a quoi devrait ressembler ton résultat final?

Reply

Marsh Posté le 26-06-2005 à 17:36:12    

mon but final est de cree mon propre os mais je suis surtout tourne asm cela fesait longtemp que je n'aivais plus vu du c
 
mon veritable probleme c'est ma carte graphique programmer le gpu et pouvoir utiliser la memoire a ma facon
 
le debut ce serat surtout de simple lettre ou simbole que je cree moi meme
 
en somme tout retaper depuit le debut mais la suite si je m'en tire pas trop mal peut etre de la 3d mais je prefere ne pas trop reve
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 17:36:12   

Reply

Marsh Posté le 26-06-2005 à 18:03:05    

chibou ? c'est toi ?

Reply

Marsh Posté le 26-06-2005 à 18:04:20    

L'immortel a écrit :

mon but final est de cree mon propre os mais je suis surtout tourne asm cela fesait longtemp que je n'aivais plus vu du c
 
mon veritable probleme c'est ma carte graphique programmer le gpu et pouvoir utiliser la memoire a ma facon
 
le debut ce serat surtout de simple lettre ou simbole que je cree moi meme
 
en somme tout retaper depuit le debut mais la suite si je m'en tire pas trop mal peut etre de la 3d mais je prefere ne pas trop reve
 
L'immortel


 
arrête-toi tout de suite alors  [:dewey]  
 
Si t'arrive pas à déterminer que c'était du c, t'es vraiment mal barré ne serait-ce que pour écrire le bootloader de ton os.
 
Au fait, en asm tu as déjà écrit quoi comme programme ?

Reply

Marsh Posté le 26-06-2005 à 18:19:31    

pratiquement rien mais je suis patient et determiner
 
de plus la plus grande partie de l'os sera fait en asm et le boot lui le sera d'office je compte cree aussi mon propre systeme de fichier
pour le langage des que j'en aurez la possibilite je le creerais moi meme pour tout en connaitre
 
pas la peine de me dire que je suis fou on me la dega dit
 
ensuite  si sa se fait je n'aurait plus que des probleme de driver si je souhaite qu'il sois transportable se qui ne m'interrese pas pour l'instant.
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 18:22:26    

L'immortel a écrit :

mon veritable probleme c'est ma carte graphique programmer le gpu et pouvoir utiliser la memoire a ma facon

Non, ce n'est pas vraiment pas le problème. Tu peux tout à fait te contenter de manipuler la mémoire vidéo (mappée quelque part dans la mémoire physique, utilise google) pour écrire du texte. L'écriture d'un vrai driver vidéo vient tardivement dans l'écriture d'un noyau (si tu l'écris tout seul en assembleur x86, tu peux compter quelques années avant d'en arriver là [:petrus75] ).

Reply

Marsh Posté le 26-06-2005 à 18:28:09    

L'immortel a écrit :

pratiquement rien mais je suis patient et determiner
 
de plus la plus grande partie de l'os sera fait en asm et le boot lui le sera d'office je compte cree aussi mon propre systeme de fichier
pour le langage des que j'en aurez la possibilite je le creerais moi meme pour tout en connaitre

pas la peine de me dire que je suis fou on me la dega dit

 
ensuite  si sa se fait je n'aurait plus que des probleme de driver si je souhaite qu'il sois transportable se qui ne m'interrese pas pour l'instant.
 
L'immortel


 
 
Pas fou, incapable de se rendre compte de l'ampleur du boulot.
 
Alors si en plus tu n'a "pratiquement rien" programmé en assembleur, et que tu veux te mettre à faire un OS, disons que c'est impossible  [:dewey]  
 
Si c'était si facile, pourquoi n'existe-il pas des milliers d'os et des milliers de systèmes de fichier ?
 
Si en plus tu n'a jamais mis le nez dans la prog système, laisse tomber, tu vas lire quelques docs, demander à droite et à gauche des trucs basiques, tout le monde va se foutre de toi, et tu arrêtera bien gentillement.

Reply

Marsh Posté le 26-06-2005 à 18:42:57    

incapable de me rendre compte de l'ampleur du boulot cela fait plus d'un ans que je suis dessus ,je sais qu'il me restent du chemin a faire mais quand meme de plus les os ne grouille pas car la difficulte est le probleme que je rencontre en ce moment les drivers c'est la raisont qui me pousse a ne pas le rendre portable ce qui entrainera trop de recherche et de difficulte
 
de plus en additionnent une aide plus une autre ect sa permet de se faire une bonne idee de la difficulte
 
il me restent encore des recherche avant de passer a l'ancodage alors la passience est de riggeur
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 18:47:06    

L'immortel a écrit :

incapable de me rendre compte de l'ampleur du boulot cela fait plus d'un ans que je suis dessus ,je sais qu'il me restent du chemin a faire mais quand meme de plus les os ne grouille pas car la difficulte est le probleme que je rencontre en ce moment les drivers c'est la raisont qui me pousse a ne pas le rendre portable ce qui entrainera trop de recherche et de difficulte
 
de plus en additionnent une aide plus une autre ect sa permet de se faire une bonne idee de la difficulte
 
il me restent encore des recherche avant de passer a l'ancodage alors la passience est de riggeur
 
L'immortel


 
On peut voir où ça en est ?
 
ps :oublie pas de faire un correcteur d'orthographe à ton os, une faute quasiment tous les mots, c'est pas bon

Reply

Marsh Posté le 26-06-2005 à 18:55:16    

il n'est encore que theorique pour l'hortographe j'ai toujour ete nul
 
je sais cela ne sera pas triste de plus je te repond en travaillant pas si facile que ca
 
je ne pense pas faire un traitement de texte qui me serait inutilemment complique et me ralentirais de trop
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 18:56:43    

oui toujours prend toujours    "s"

Reply

Marsh Posté le 26-06-2005 à 19:00:31    

L'immortel a écrit :

il n'est encore que theorique pour l'hortographe j'ai toujour ete nul
 


 
 :ouch:  :ouch:

Reply

Marsh Posté le 26-06-2005 à 19:00:38    

L'immortel a écrit :

pratiquement rien mais je suis patient et determiner
 
de plus la plus grande partie de l'os sera fait en asm et le boot lui le sera d'office je compte cree aussi mon propre systeme de fichier
pour le langage des que j'en aurez la possibilite je le creerais moi meme pour tout en connaitre
 
pas la peine de me dire que je suis fou on me la dega dit
 
ensuite  si sa se fait je n'aurait plus que des probleme de driver si je souhaite qu'il sois transportable se qui ne m'interrese pas pour l'instant.
 
L'immortel


Tu te fais des illusions mon pauvre...


---------------
[:whatde]
Reply

Marsh Posté le 26-06-2005 à 19:06:43    

L'immortel a écrit :

il n'est encore que theorique pour l'hortographe j'ai toujour ete nul
 
je sais cela ne sera pas triste de plus je te repond en travaillant pas si facile que ca
 
je ne pense pas faire un traitement de texte qui me serait inutilemment complique et me ralentirais de trop
 
L'immortel


 
Donc tu as fait de la théorie pendant un an. Soit.
 
Ils sont où tes documents rédigés, tes diagrammes, tes plans sur ton futur os ? Genre sur le choix du type de noyau par exemple, en 1 an, t'as eu le temps d'y réfléchir.


Message édité par ory le 26-06-2005 à 19:07:36
Reply

Marsh Posté le 26-06-2005 à 19:07:20    

L'immortel a écrit :

pratiquement rien mais je suis patient et determiner
 
de plus la plus grande partie de l'os sera fait en asm et le boot lui le sera d'office je compte cree aussi mon propre systeme de fichier
pour le langage des que j'en aurez la possibilite je le creerais moi meme pour tout en connaitre
 
pas la peine de me dire que je suis fou on me la dega dit
 
ensuite  si sa se fait je n'aurait plus que des probleme de driver si je souhaite qu'il sois transportable se qui ne m'interrese pas pour l'instant.
 
L'immortel


C'est pas qu'on veuille te décourager mais on a déjà vu nombre de gens passer par ici, disant vouloir faire leur propre OS. Et ils n'y connaissaient rien, pas même le C. Commence par apprendre le C et l'ASM à fond parce que tu en auras fort besoin.
 
Surtout si tu n'as aucune expérience, faire un OS en premier lieu est pure folie. Essaie déjà de faire une application modeste en pur C et on en reparlera.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 26-06-2005 à 19:16:52    

L'immortel a écrit :

incapable de me rendre compte de l'ampleur du boulot cela fait plus d'un ans que je suis dessus


Haha [:petrus75]
 
Un OS en ASM tout seul...
Et il commence par se poser des questions sur l'accès à sa carte vidéo...  
 
[:petrus75]
 
 
haha [:petrus75]
 
Je te suggère d'aller visiter les newsgroups et de rechercher les premiers posts de Linus concernant Linux [:petrus75]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 26-06-2005 à 19:17:20    

en fait vous me stimuler
 
j'en ais dega vu des verte et des pas mure m'est aussi peu psycologique dangereuse c'est la premiere fois c'est un regal
 
merci
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 19:23:34    

Je te conseille de voir ceci : http://forum.hardware.fr/hardwaref [...] 9284-1.htm
 
Sinon , expose plus ton projet, histoire qu'on arrète de te prendre pour un megalomane numérique !  serieusement !

Reply

Marsh Posté le 26-06-2005 à 19:28:00    

L'immortel a écrit :

en fait vous me stimuler
 
j'en ais dega vu des verte et des pas mure m'est aussi peu psycologique dangereuse c'est la premiere fois c'est un regal
 
merci
 
L'immortel


C'est pas pour te décourager mais, même en commencant maintenant, à la fin de ta vie tu arriverais peut-être à 50% d'un OS basique.


---------------
[:whatde]
Reply

Marsh Posté le 26-06-2005 à 19:33:54    

L'immortel a écrit :

en fait vous me stimuler
 
j'en ais dega vu des verte et des pas mure m'est aussi peu psycologique dangereuse c'est la premiere fois c'est un regal
 
merci
 
L'immortel


Oui, c'est bien, au fait il t'a été demandé quelle philosophie tu choisissais au niveau du noyau, on peut avoir la réponse? [:petrus75]

Citation :

C'est pas pour te décourager mais, même en commencant maintenant, à la fin de ta vie tu arriverais peut-être à 50% d'un OS basique.


Vu son approche de la chose, ce serait déjà un miracle qu'il arrive à quoi que ce soit [:petrus75]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 26-06-2005 à 19:36:33    

merci pour le lien j'ai bien rigoler mais de la a me compare
 
pour l'exposer faudra attendre un peu j'ai encore trop de chose a faire
 
pour les 50% a la fin de ma vie sa tout dependra de ma vitesse et de la bonne volonte par rapport a mes demande d'aide
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 19:38:56    

L'immortel a écrit :

merci pour le lien j'ai bien rigoler mais de la a me compare
 
pour l'exposer faudra attendre un peu j'ai encore trop de chose a faire
 
pour les 50% a la fin de ma vie sa tout dependra de ma vitesse et de la bonne volonte par rapport a mes demande d'aide
 
L'immortel


 
non, fais voir ce que tu as fait en une année ! Si tu as fait quelque chose tu peux le montrer non ?  [:dawak]

Reply

Marsh Posté le 26-06-2005 à 19:44:51    

la plupart des truc son des site des petit doc sur certaine partie de l'hardware je ne pense pas pouvoir tout mettre ici
 
en plus le restent est en tete
 
et comme je ne le tape pas il est dur de voir ou ca en est
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 19:48:10    

L'immortel a écrit :

la plupart des truc son des site des petit doc sur certaine partie de l'hardware je ne pense pas pouvoir tout mettre ici

en plus le restent est en tete
 
et comme je ne le tape pas il est dur de voir ou ca en est
 
L'immortel


 
Donne juste l'url alors, on se débrouillera.
 
Et pour le reste, tu compte l'écrire ton os ? Ou alors le garder dans ta tête aussi ?

Reply

Marsh Posté le 26-06-2005 à 19:52:03    

T'as toujours pas répondu à la question du noyal [:petrus75]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 26-06-2005 à 19:57:47    

L'immortel a écrit :

la plupart des truc son des site des petit doc sur certaine partie de l'hardware je ne pense pas pouvoir tout mettre ici
 
en plus le restent est en tete
 
et comme je ne le tape pas il est dur de voir ou ca en est
 
L'immortel


[:rofl]  
T'es bien partit là.


---------------
[:whatde]
Reply

Marsh Posté le 26-06-2005 à 20:00:10    

WhatDe a écrit :

[:rofl]  
T'es bien partit là.


 
jaloux  [:petrus75]

Reply

Marsh Posté le 26-06-2005 à 20:10:39    

vous vous amuse pendant que le chat mange et bien tant mieux au moin il y en a qui essaye de garde la tete sur leur epaule mes si sa continue il vont quand meme la perdre
 
le noyaux une des possibiliterserait de l'installer dans la carte graphique mais cela serait un peu pousser la  
les autre possibiliter son classique  
 
la seule chose qui est certaine est que je le connaitrais a fond ce qui me permetra de le modifier comme je le souhaite sans d'enorme recherche sur ce qu'il y a                         moyen de faire ou ne pas faire
 
L'immortel

Reply

Marsh Posté le 26-06-2005 à 20:13:04    

Bon ça me saoul, je vais poser des questions concrète
 
C'est quoi le principe de ton os ?  
 
A quoi sert il ?
 
Quel licence ?
 
que veux tu faire dessus ?
 
Penses tu en faire commerce ?
 
En quoi veut tu le programmer ? quel langage ?
 
Pourquoi tu veux tout refaire quand déjà beaucoup d'os libre (et je parle pas de linux ou des bsd, mais de très nombreux os dont en ASM qui ont besoin de contribution) ?

Reply

Marsh Posté le 26-06-2005 à 20:13:09    

L'immortel a écrit :

vous vous amuse pendant que le chat mange et bien tant mieux au moin il y en a qui essaye de garde la tete sur leur epaule mes si sa continue il vont quand meme la perdre

le noyaux une des possibiliterserait de l'installer dans la carte graphique
mais cela serait un peu pousser la  
les autre possibiliter son classique  
 
la seule chose qui est certaine est que je le connaitrais a fond ce qui me permetra de le modifier comme je le souhaite sans d'enorme recherche sur ce qu'il y a                         moyen de faire ou ne pas faire
 
L'immortel


C'est original.


---------------
[:whatde]
Reply

Marsh Posté le 26-06-2005 à 20:15:21    

Tiens voila une adresse d'un os programmé en asm et qui a besoin de dev : http://www.v2os.cx/

Reply

Marsh Posté le 26-06-2005 à 20:16:08    

Il y'a aussi MenuetOS http://www.menuetos.org/


---------------
[:whatde]
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed