premiere intro teo

Des MO et des TO...

Modérateur : Politburo

Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

coucou gilles !

content que mon projet vous plaisent et bref aujourd'hui tout fait
ce qu'il fallait bref a fond de dessins pour teo sur artrage

pi apres cc90 via xp sous emulation linux et ensuite et bé une
archive sap qui va contenir le tout !

si vous voulez en prendre plein les mirettes la derniere breakpoint
dans tous les sens du terme vient de mettre ses videos sur les
bons ou moins bons tube en video

bref la 1er demo au score est de fairlight ok ca doit pas tourner sur
mon quadri ok mais nom de zux que c'est beau !

et la musique est de toute beauté

le demomaking pc commence a prendre ses marques, a avoir quelque
chose autre que de la 3d sans saveur. a la limite du clip et de la
video d'art pour certaines bref je kiff grave !!!

hop les grafs stap

pour en revenir a ton vector et bé je veux bien l'asm mais
en ce moment c'est deja purebasic et apres sur amiga ng =
sdl et python bref c'est le bronx !!!

merci beaucoup de ton aide

steff
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

il n'y a d'asm que pour le tracé de point, les initialisations de mode graphique. Le reste est en C.
J'ai fait un petit outil pour convertir les fichier dat vers des déclarations C.
Je poste un exemple de code (pas encore fonctionnel (mais presque)) dans qqs minutes...
il faudra que je modifie des trucs, comme le /1000 qui est lent comme la mort sur du 6809, on va plutôt faire dans le /256... bref, y'a de quoi s'amuser...
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

hehe va falloir que je me mettes au C

bref bon ok

tu peux faire un exe sous teo pour voir stp ?

merci beaucoup pour tout ca

steff :roll:
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

version à travailler...

Code : Tout sélectionner

/*
 * Include des fonctions du moniteur
 */
#include <to8.h>


int costable[360]={1000,999,999,998,997,996,994,992,990,987,984,981,978,974,970,965,
961,956,951,945,939,933,927,920,913,906,898,891,882,874,866,857,
848,838,829,819,809,798,788,777,766,754,743,731,719,707,694,682,
669,656,642,629,615,601,587,573,559,544,529,515,500,484,469,454,
438,422,406,390,374,358,342,325,309,292,275,258,241,224,207,190,
173,156,139,121,104,87,69,52,34,17,0,-17,-34,-52,-69,-87,
-104,-121,-139,-156,-173,-190,-207,-224,-241,-258,-275,-292,-308,-325,-341,-358,
-374,-390,-406,-422,-438,-453,-469,-484,-499,-514,-529,-544,-559,-573,-587,-601,
-615,-629,-642,-656,-669,-681,-694,-707,-719,-731,-743,-754,-765,-777,-787,-798,
-808,-819,-828,-838,-848,-857,-865,-874,-882,-890,-898,-906,-913,-920,-927,-933,
-939,-945,-951,-956,-961,-965,-970,-974,-978,-981,-984,-987,-990,-992,-994,-996,
-997,-998,-999,-999,-999,-999,-999,-998,-997,-996,-994,-992,-990,-987,-984,-981,
-978,-974,-970,-965,-961,-956,-951,-945,-939,-933,-927,-920,-913,-906,-898,-891,
-882,-874,-866,-857,-848,-838,-829,-819,-809,-798,-788,-777,-766,-754,-743,-731,
-719,-707,-694,-682,-669,-656,-642,-629,-615,-601,-587,-573,-559,-544,-530,-515,
-500,-484,-469,-454,-438,-422,-406,-390,-374,-358,-342,-325,-309,-292,-275,-258,
-242,-225,-208,-190,-173,-156,-139,-122,-104,-87,-69,-52,-35,-17,0,17,
34,52,69,87,104,121,139,156,173,190,207,224,241,258,275,292,
308,325,341,358,374,390,406,422,438,453,469,484,499,514,529,544,
559,573,587,601,615,629,642,655,669,681,694,706,719,731,743,754,
765,777,787,798,808,819,828,838,847,857,865,874,882,890,898,906,
913,920,927,933,939,945,951,956,961,965,970,974,978,981,984,987,
990,992,994,996,997,998,999,999};

int sintable[360]={0,17,34,52,69,87,104,121,139,156,173,190,207,224,241,258,
275,292,309,325,342,358,374,390,406,422,438,453,469,484,499,515,
529,544,559,573,587,601,615,629,642,656,669,681,694,707,719,731,
743,754,766,777,787,798,809,819,829,838,848,857,866,874,882,890,
898,906,913,920,927,933,939,945,951,956,961,965,970,974,978,981,
984,987,990,992,994,996,997,998,999,999,999,999,999,998,997,996,
994,992,990,987,984,981,978,974,970,965,961,956,951,945,939,933,
927,920,913,906,898,891,882,874,866,857,848,838,829,819,809,798,
788,777,766,754,743,731,719,707,694,682,669,656,642,629,615,601,
587,573,559,544,529,515,500,484,469,454,438,422,406,390,374,358,
342,325,309,292,275,258,242,225,207,190,173,156,139,121,104,87,
69,52,34,17,0,-17,-34,-52,-69,-87,-104,-121,-139,-156,-173,-190,
-207,-224,-241,-258,-275,-292,-308,-325,-341,-358,-374,-390,-406,-422,-438,-453,
-469,-484,-499,-514,-529,-544,-559,-573,-587,-601,-615,-629,-642,-655,-669,-681,
-694,-707,-719,-731,-743,-754,-765,-777,-787,-798,-808,-819,-828,-838,-847,-857,
-865,-874,-882,-890,-898,-906,-913,-920,-927,-933,-939,-945,-951,-956,-961,-965,
-970,-974,-978,-981,-984,-987,-990,-992,-994,-996,-997,-998,-999,-999,-999,-999,
-999,-998,-997,-996,-994,-992,-990,-987,-984,-981,-978,-974,-970,-965,-961,-956,
-951,-945,-939,-933,-927,-920,-913,-906,-898,-891,-883,-874,-866,-857,-848,-838,
-829,-819,-809,-798,-788,-777,-766,-754,-743,-731,-719,-707,-694,-682,-669,-656,
-642,-629,-615,-601,-587,-573,-559,-544,-530,-515,-500,-484,-469,-454,-438,-422,
-406,-390,-374,-358,-342,-325,-309,-292,-275,-258,-242,-225,-208,-190,-173,-156,
-139,-122,-104,-87,-69,-52,-35,-17};

int startablex[201]={154,162,-113,-60,61,-246,25,167,105,-18,-17,-51,-210,-141,239,-41,
138,-10,-196,-210,-85,-96,-149,212,162,-209,-248,78,-84,-54,202,106,
248,-73,12,92,-95,0,222,73,-193,242,1,98,-169,106,-111,-119,
237,-5,52,72,-114,-111,0,132,28,184,109,-98,107,212,-126,-21,
-8,-4,-39,-68,-233,174,-83,-31,24,36,167,-135,-201,-42,-190,231,
38,212,11,85,-102,54,204,-116,-10,117,109,-119,21,212,144,-194,
-42,29,-51,25,-98,175,153,-44,115,50,-66,70,-89,157,-199,146,
-64,235,-10,-236,-75,-113,19,178,149,115,-127,-180,-250,-140,-141,3,
-193,-140,31,-166,53,-70,-244,-228,-196,63,-14,246,245,48,50,146,
76,-210,47,19,-18,181,144,-195,36,32,229,-247,-48,-141,123,212,
116,54,-156,54,-124,49,189,245,199,-77,210,185,36,-32,28,-10,
-208,-203,87,-132,-76,-240,230,-11,210,12,-74,232,-183,92,164,-166,
208,-9,7,144,87,-156,67,-74,-54};

int startabley[201]={94,-227,-42,-71,72,132,-146,145,245,53,-85,29,-131,141,126,-11,
-243,79,212,-149,-66,65,62,152,-173,-133,208,-123,199,-185,172,4,
-227,-133,-55,162,-10,-224,-162,229,1,-71,198,-174,143,246,-153,-77,
212,-7,44,42,-227,-36,118,-116,-68,77,-43,-197,-125,-209,85,66,
169,-247,120,170,222,-102,205,-63,111,173,-76,166,-51,-159,-86,186,
44,85,63,195,-142,12,-107,237,-211,209,84,-155,44,-143,-200,19,
-216,-248,142,171,-87,199,-208,-131,239,65,-2,-248,32,-18,-90,-248,
-72,207,-68,-86,-191,-139,99,-7,-3,-38,84,15,-229,230,142,-208,
166,-187,-175,-118,-99,43,-137,242,18,-178,110,-216,10,-110,76,-114,
182,29,124,48,-66,-40,112,132,-62,-111,28,-218,-51,194,23,-182,
-106,-19,-204,-131,121,190,-60,-35,-219,105,-166,238,-47,90,33,-124,
-62,91,161,46,248,-78,-72,-203,-83,-18,202,-247,-22,-199,227,-185,
199,114,208,120,-158,-117,-124,-47,150};

int startablez[201]={175,-180,71,-74,-123,167,-56,-50,217,26,36,-203,-6,68,-29,190,
208,-54,166,-91,150,182,74,-75,20,-214,164,196,183,101,29,-221,
192,66,225,-82,-7,-70,-31,-16,-108,-48,-39,-46,98,-133,-70,-8,
3,46,-96,-28,-200,-182,-223,-112,233,222,69,-138,-30,-159,-158,12,
-23,-105,63,8,-115,127,-240,149,-225,96,142,-129,125,233,-240,4,
-25,123,-179,-190,43,-33,-89,-82,-147,60,114,-71,151,-63,-26,-236,
249,158,228,3,181,144,-48,-197,201,224,-215,-163,135,-97,-26,-147,
215,-220,216,-88,196,-139,118,160,-19,-91,87,88,-189,-50,47,46,
-103,-189,77,187,163,212,64,-73,5,-94,9,-155,125,95,-191,-219,
-152,169,-82,-176,205,-11,190,-50,146,20,188,94,-110,-211,183,92,
-212,-189,197,-31,72,-35,24,-241,115,-100,234,178,154,179,127,-70,
-130,142,-81,132,-234,71,-180,196,3,48,52,-180,-248,138,72,-113,
-165,-46,-93,64,-146,-100,3,-138,96};

unsigned char pttab[8]={128,64,32,16,8,4,2,1};

static void FLIP_1(void) {
	asm("lda #0H25");
	asm("sta 0HE7DC");
	asm("lda #0H01");
	asm("ora 0HE7C3");
	asm("sta 0HE7C3");
}
static void FLIP_2(void) {
	asm("lda #0H24");
	asm("sta 0HE7DC");
	asm("lda #0HFE");
	asm("anda 0HE7C3");
	asm("sta 0HE7C3");
}

static void init_palette(void) {
	asm("lda #0H00");
	asm("sta 0HE7DB");
	asm("ldb #0H00");	
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
	asm("ldb #0HFF");	
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
	asm("stb 0HE7DA");
}

/*

CLEAR_POINT
	TFR	Y,D
	LDA	#40
	MUL
	TFR	D,Y
	LEAY	#$4000,Y
	CMPX	#256
	BLT	C_POINT_1
	LEAY	32,Y
C_POINT_1:
	TFR	X,D
	LSRB
	LSRB
	LSRB
	LEAY	B,Y

	CLR	,Y
	RTS
*/

typedef struct {
  int x;
  int y;
  int z;
} stars_t;

stars_t stars[250];
void cls(void) {
     asm("
     leay	0H4000,y
cls_l:
     clr    ,y+
     clr    ,y+
     clr    ,y+
     clr    ,y+
     clr    ,y+
     clr    ,y+
     clr    ,y+
     clr    ,y+
     cmpy   0H5F40
     ble    cls_l");
}          

void plot(int xx,int yy) {
     asm("
     tfr	y,d
     lda	#40
     mul
     tfr	d,y
     leay	0H4000,y
     tfr	x,d
     andb	#$07
     tfr   b,dp
     cmpx	#256
     blt	POINT_1
     leay	32,y
POINT_1:
     tfr	x,d
     lsrb
     lsrb
     lsrb
     leay	b,y
     ldx	#_pttab
     tfr   dp,b
     lda	b,x
     ora	,y
     sta	,y"::\
     "x" ((unsigned int) (xx)),\
     "y" ((unsigned int) (yy))\
     :"x","y");
}

int main(void)
{
 int st;
 int distance;
 int nodraw;
 int vx,vy,vz;
 int cosx,cosy,cosz;
 int sinx,siny,sinz;
 int tx,ty,tz;
 int nx,ny;
 int flip=0;
 
#define Width  320
#define Height 200

asm("   orcc #0H10");
init_palette();
    
// ;setup the stars

for (st=0;st<200;st++) {
    stars[st].x = startablex[st];
    stars[st].y = startabley[st];
    stars[st].z = startablez[st];
}

distance=800;
 
 FLIP_2();   
 while (1) {
  cls();  
    
 vx + 1; // X rotation speed
 vy + 2; // Y rotation speed
 vz + 1; // Z rotation speed

 if (vx>359) vx=1;
 if (vy>359) vy=1; 
 if (vz>359) vz=1;
      
    
	for (st=0;st<200;st++) {
  
  cosx=costable[vx];
  cosy=costable[vy];
  cosz=costable[vz];    
  sinx=sintable[vx];
  siny=sintable[vy];
  sinz=sintable[vz];  
  
  ty = ((stars[st].y * cosx) - (stars[st].z * sinx))/1000;
  tz = ((stars[st].y * sinx) + (stars[st].z * cosx))/1000;
  tx = ((stars[st].x * cosy) - (tz * siny))/1000;
  tz = ((stars[st].x * siny) + (tz * cosy))/1000;
 
  nx  = 200 * (tx) / (distance - (tz)) + 160;
  ny  = 128 - (200 * ty) / (distance - (tz));

  nodraw=0;
//  ;shade or "back plot culling" For objects
//  ;If tz<0:nodraw=1:EndIf

//  ;test plot=inside screenkoordinates
  if (nx > 319) nodraw=1;
  if (ny > 199) nodraw=1;
  if (nx < 1)   nodraw=1;
  if (ny < 1)   nodraw=1;
  
  if (nodraw==0) {
	plot(nx,ny);
  }
    
 } // of for   
// ChunkyToPlanar(ChunkyBufferID(),BitMapID(),#Height)
 if (flip==0) {
    FLIP_1();
    flip=1;
 } else {
  FLIP_2();
  flip=0;
 }
// mb.w=MouseButtons()
 } // of while(1)


}

/* END OF FILE */
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

wé c pas dit mais je suis cela de pres !

merci gilles

steff
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

stefff285 a écrit :wé c pas dit mais je suis cela de pres !

merci gilles

steff
depuis le temps que je me dis qu'il faut que je recode sur cette bestiole... c'était l'occasion, et puis le code est assez simple.
ce code pourra aussi tourner avec petite modification sur MO5 et TO7.
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

coucou gilles

et bé je vais essayer de me depatouiller en b512 et apres
compile sous speedy car je me demande vraiement si
ce basic n'est pas reconnu sous speedy ?

bref essai a faire

sinon impec ton code, je compte bien sur tout remettre
en 512 d'ici la fin de la semaine pour hummm tester
tout cela

chuis a fond de carlos 4 couleurs bref il va smeurfer le carlos

biss a toi

steff
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

Pour pouvoir debugger, j'ai réactivé le debugger sur la version windows d'une branche parallèle de TEO (ma version d'expérimentation alpha 0.10 encore basée sur l'ancienne émulation du 6809).
Je vais probablement la diffuser sur mon site, mais si ça intéresse du monde (ie + de 3 personnes) je peux reporter sur les version 1.7.x de TEO (dont seule la version DOS possède un debugger (en mode texte)).
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

version de TEO alternative (pas au niveau des 1.7) mais avec debugger intégré ici:
http://www.alternative-system.com/index ... 8_emulator
en attendant mieux...
(1 breakpoint, avance 1 pas, desassembleur).
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

coucou gilles

j'ai la venue de quelqu'un a gerer d'ici 19h30

donc bref deja ton code C est tres lisible et donc
je vais me faire une joie de le faire en basic 512

sinon un autre effet, un que l'on appelle twirl c'est a dire
une croix en haut, une autre en bas et leurs jointures
font de courbes et donc hummm je vais tenter

le tout compacté sous speedy wonder

je vais commencer par celle la

j'ai deja fait les grafs

Image

Image
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

j'avance un peu, mes routines d'affichage semblent correctes (les points sont bien affichés), mais le calcul se banane totalement, probablement du fait d'un dépassement de capacité (puisque le code d'origine partait sur les entiers 32bits du 68k).
A l'usage le compilateur C est tout juste utilisable et a un comportement étrange parfois (sur le passage des paramètres vers l'ASM). Il me semble que l'un des "Puls" m'avait parlé de ca (peut etre sam?).
Bizarrement mon code fait planter teo 1.7... je testerai sur mon TO8D pour voir en live...
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

coucou mes amis

me voici de retour

et bien je vais commencer a coder bouaf en basic
la premiere intro c'est a dire celle avec carlos

je vais essayer de faire un twirl en mode 4 couleurs
dessus que cela rame ou pas

l'astuce c'est deux croix de 12 points en haut et en bas
hors ecran. l'une tourne dans une sens l'autre dans l'autre
et je fais les liaisons par tracé de lignes puis remplissage
des zones apres. pour gagner du temps hummm pas forcement
des croix complete pas forcement des rotations de fous

bref j'essaye et je compile sous speedy wonder en basic 512
ou 1.0 a la base

tout ca ce soir car dessins a faire avant

bisous
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

coucou gilles

coucou tous

va falloir donc que je me mette au basic 1.0

si vous connaissez , quelles sont les differences entre les deux
sinon la ram ? a ce que je crois savoir

donc c'est lancé

bizz a vous , merci d'avance

steff :mrgreen: :mrgreen:
Avatar du membre
gilles
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3100
Enregistré le : 17 avr. 2007 21:25
Localisation : 44
Contact :

Re: premiere intro teo

Message par gilles »

stefff285 a écrit :coucou gilles

coucou tous

va falloir donc que je me mette au basic 1.0

si vous connaissez , quelles sont les differences entre les deux
sinon la ram ? a ce que je crois savoir

donc c'est lancé

bizz a vous , merci d'avance

steff :mrgreen: :mrgreen:
le basic 1.0 est assez limité, il y manque la plupart des structures pour faire du code propre...
Tu vas vite avoir envie de passer à l'ASM...
Avatar du membre
stefff285
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 201
Enregistré le : 03 mai 2009 16:16
Localisation : dijon
Contact :

Re: premiere intro teo

Message par stefff285 »

hello gilles

et bien je vais me taper la premiere intro qui ne sera qu'en basic
vu que c'est une narration en images 16 couleurs 160x200

bref je me remets au projet inital

mais l'asm pour le futur ce qui ne peux que me rendre service ^^

c'est partit pour cc90 et apres le basic 512 demain

a bientot

steff
Répondre

Retourner vers « Thomson »