Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmation C » un TSR un peu special (21 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
LionelA Ecrit le: Samedi 14 août 2004 à 11:39 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Salut, je me demandais s'il serait encore possible d'utiliser ma TI89 (dont l'écran n'affiche plus sur les colonnes de gauche) pour les maths.

Est-ce qu'il serait possible de developper un TSR qui me permettrait avec une combinaison de touches ([touche] + [gauche] ou [droite]) de faire scroller l'écran vers la droite et de voir la partie cachée. et cela a n'importe quel endroit (home, var-link, graph...)

En plus Kevin tu a fini backgammon, tu aurais donc le temps de me faire ce petit prog vite fait ? ca prend pas plus de 1/2h pour un pro comme toi :p
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°1   Marquer comme non lu.
Benjy Ecrit le: Samedi 14 août 2004 à 11:47 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


mdr pas bête comme idée
Le langage C y'a pas mieux!!!
    
./Post n°2   Marquer comme non lu.
Kevin Kofler Ecrit le: Samedi 14 août 2004 à 16:02 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


LionelA :
Est-ce qu'il serait possible de developper un TSR qui me permettrait avec une combinaison de touches ([touche] + [gauche] ou [droite]) de faire scroller l'écran vers la droite et de voir la partie cachée. et cela a n'importe quel endroit (home, var-link, graph...)

Non. Les "parties cachées" ne sont pas affichées du tout, on ne peut pas les faire apparaître aussi facilement.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°3   Marquer comme non lu.
LionelA Ecrit le: Samedi 14 août 2004 à 16:33 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Quand je parle de la partie cachée je veux dire la partie constituées des 20 premieres colonnes a gauche (je ne vois qu'a partir du menu algrebra dans home (tools est dans la partie cachée))

Et il n'y a pas moyen de copier les pixels de l'ecran ligne a ligne et de les decaler de 24pixels (multiple de 8) vers la droite ? je peux faire ca en lancant un programme tout simple, le probleme etant que j'aimerais que ca le fasse avec une combinaison de touche et a n'importe quel endroit (var-link, ...)
-Edité le Samedi 14 août 2004 à 16:34 par LionelA-
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°4   Marquer comme non lu.
Kevin Kofler Ecrit le: Samedi 14 août 2004 à 16:50 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Ah, c'est pour ton écran cassé. :) Ça peut se faire, mais je n'ai pas le temps, je pars en vacances demain matin.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°5   Marquer comme non lu.
LionelA Ecrit le: Samedi 14 août 2004 à 17:13 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Merci beaucoup, maintenant que je sais que c'est possible il me reste plus qu'a trouver comment on fait ce genre de programme...
Bonnes vacances alors !
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°6   Marquer comme non lu.
Nul Ecrit le: Lundi 16 août 2004 à 14:38 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Pour ta combinaison de touches, tu peux regarder l'exemple tres bien fait de TSR de Greg Dietsche. En revanche, je ne sais pas si cette combinaison sera valide de partout. A toi d'essayer !
Le nom du programme est 'Sample TSR Event Hook' et le site 'http://calc.gregd.org/'
Personnellement, j'ai fait un petit programme de password avec la combinaison de touches [haut] + [bas] pour afficher les options du pass. Tu peux le trouver sur 'http://www.mostafa314.chez.tiscali.fr'. Malheureusement, cette combinaison n'est valable que dans les ecrans home, catalog, graph, desktop pour OS v2.09 mais pas dans le var-link :(
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°7   Marquer comme non lu.
LionelA Ecrit le: Lundi 16 août 2004 à 16:07 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Je suis allé sur le site et j'ai téléchargé sample TSR, mais je n'arrive pas à le compiler :
Quand je lance make.bat ca me dit que gcc n'arrive pas a trouver _main et donc il ne crée pas de hook.bin et je ne peut pas faire de tests :(
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°8   Marquer comme non lu.
Nul Ecrit le: Lundi 16 août 2004 à 18:17 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Ah oui, c'est vrai: ce programme ne fonctionne pas sur les versions recentes de tigcc (j'ai eu la meme erreur lorsque j'ai voulu recompile mes progs tsr). J'ai signale cette erreur a Greg cette apres-midi. Tu dois telecharger la version beta 0.94 beta 17 ou 19, la ca marchera, c'est sur :) Je ne sais pas si on peut encore telecharger cette vieille version, il faut demander a Lionel ou quelqu'un d'autre. Je l'ai sur mon PC mais je ne peux pas te l'envoyer car je suis en Allemagne pour 15 jours encore ...
[EDIT: je m'etais trompe de beta]
-Edité le Lundi 16 août 2004 à 18:22 par Nul-
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°9   Marquer comme non lu.
Kevin Kofler Ecrit le: Lundi 16 août 2004 à 23:18 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Corrige plutôt SampleTSR pour ton TIGCC récent. http://p080.ezboard.com/ftichessteamhqfrm5.showMessage?topicID=2480.topic.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°10   Marquer comme non lu.
Nul Ecrit le: Mardi 17 août 2004 à 10:19 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Ok, merci beaucoup Kevin :)
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°11   Marquer comme non lu.
LionelA Ecrit le: Mardi 17 août 2004 à 13:32 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Merci :) Ca marche nickel !
bon j'ai essayé de faire mon TSR mais j'obtient des resultats pas très satisfaisants :
Les menus toolbar se réaffichent a leur emplacement d'origine :(

voila une partie de hook.c :

//TODO: write your very own event hook code
  if(ev->Type==CM_KEYPRESS)  
  {  
    //this is a lame example (good april fools joke though)
      if(ev->extra.Key.Code==(KEY_LEFT + KEY_DIAMOND))
      {
        scroll_left();
      }
      if(ev->extra.Key.Code==(KEY_RIGHT + KEY_DIAMOND))
      {
        scroll_right();
      }
  }



void scroll_right()
{
  register unsigned short i;

  if(scroll == 0)
  {
    for(i=0;i<100;i++)
      memmove(LCD_MEM + 3 + i*30, LCD_MEM + i*30, 20);
    PortSet(LCD_MEM + 3, 239, 127);
    scroll = 1;
  }
}



void scroll_left()
{
  register unsigned short i;
  if(scroll == 1)
  {
    for(i=0;i<100;i++)
      memmove(LCD_MEM + i*30, LCD_MEM + 3 + i*30, 20);
    PortSet(LCD_MEM, 239, 127);
    scroll = 0;
  }
}


Je me demande si c'est possible de faire en sorte que ca foire pas...

PS : mon code est tout pourri.
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°12   Marquer comme non lu.
Nul Ecrit le: Mardi 17 août 2004 à 14:28 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Ca doit provenir du rafraichissement de l'ecran. L'ecran revient naturellement a sa position d'origine donc tu n'as pas besoin de la routine 'scroll_left'. Il faut que tu scrolles constamment ton ecran de 24 pixels (ou de 0 pixel) meme quand tes touches speciales ne sont pas activees. Apparemment, la variable 'scroll' est un flag qui indique la direction dans laquelle on doit scroller.

short scroll = 0; // variable globale a initialiser

Ton_Hook(void)
{

ScrolleToutLeTemps();
if(ev->Type == CM_KEYPRESS)
{
if(ev->extra.Key.Code == (KEY_RIGHT + KEY_DIAMOND))
{
scroll = 1;
}
else if(ev->extra.Key.Code == (KEY_LEFT + KEY_DIAMOND))
{
scroll = 0;
}
}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////

void ScrolleToutLeTemps(void)
{
register unsigned short i;

if(scroll)
{
for(i=0;i<100;i++)
memmove(LCD_MEM + 3 + i*30, LCD_MEM + i*30, 20);
PortSet(LCD_MEM + 3, 239, 127);
}
else // optionnel; normalement c'est automatique mais il se peut qu'il reste des "saletes" a l'ecran
{
Appelle_la_fonction_qui_rafraichit_lecran();
}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////

Puisque tu dis toi-meme que ton code est tout pourri ;) pourquoi ne pas essayer les routines d'Extgraph pour le scrolling ?

P.S: tu ne voudrais pas te racheter une calc plutot ? (sur E-bay ce n'est pas si cher ...)
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°13   Marquer comme non lu.
LionelA Ecrit le: Mardi 17 août 2004 à 15:39 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Si bien sûr j'en ai racheté une (V200) voir topic "Blazé" dans Hardware et "nouvelle calc" dans question
Je vais essayer ta technique de rafraîchir tout le temps merci :)
-Edité le Mardi 17 août 2004 à 15:43 par LionelA-
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°14   Marquer comme non lu.
Benjy Ecrit le: Mardi 17 août 2004 à 16:00 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


Tu pourrai m'envoyer ton TSR s'il te plait Lionel merci.
Le langage C y'a pas mieux!!!
    
./Post n°15   Marquer comme non lu.
LionelA Ecrit le: Mardi 17 août 2004 à 17:50 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Si tu y tiens je peux te l'envoyer mais il ne fait rien d'extraordinaire, je dirais même qu'il fait n'importe quoi ! enfin bon si tu veux t'amuser sur VTI pas de probleme.
Je l'envoie a quelle adresse ?
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°16   Marquer comme non lu.
Nul Ecrit le: Mercredi 18 août 2004 à 13:57 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Ca marche toujours pas apparemment ? ;(
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°17   Marquer comme non lu.
Benjy Ecrit le: Mercredi 18 août 2004 à 14:46 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


Eu Lionel tu me l'a envoyer?
Le langage C y'a pas mieux!!!
    
./Post n°18   Marquer comme non lu.
LionelA Ecrit le: Mercredi 18 août 2004 à 14:50 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Oui je l'ai envoyé, peut etre que ta boite mail rame un peu...

Sinon j'ai l'impression que lorsqu'on est dans un menu, ou qu'une boite de dialog apparaît, Il n'y a pas d'événement alors le prog ne marche pas :(
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°19   Marquer comme non lu.
LionelA Ecrit le: Vendredi 20 août 2004 à 13:13 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Bon après quelques essais peu fructueux j'ai décidé de faire moi même mon programme resident mais qui n'utilise pas les evenements.
voila le source :

// C Source File
// Created 20/08/2004; 11:55:27

#include <tigcclib.h>

INT_HANDLER OldInt1 = NULL;
unsigned char scroll = 0;

void scrollleft()
{
  register unsigned short i;
  
  if(scroll == 1)
  {
    for(i=0;i<100;i++)
      memmove(LCD_MEM + i*30, LCD_MEM + 3 + i*30, 20);
    scroll = 0;
    PortSet(LCD_MEM, 239, 127);
  }
}

void scrollright()
{
  register unsigned short i;
  
  if(scroll == 0)
  {
    for(i=0;i<100;i++)
      memmove(LCD_MEM + 3 + i*30, LCD_MEM + i*30, 20);
    scroll = 1;
    PortSet(LCD_MEM + 3, 239, 127);
  }
}


DEFINE_INT_HANDLER(MyInt1)
{
  unsigned short column;
  column = _rowread (0xFFFE);
  char diamond, left, right;

  SetIntVec (AUTO_INT_1, DUMMY_HANDLER);
  ExecuteHandler (OldInt1);

  if(column & 0x02) left = 1;
  else left = 0;
  if(column & 0x08) right = 1;
  else right = 0;
  if(column & 0x40) diamond = 1;
  else diamond = 0;

  if(diamond & left)
  {
    scrollleft();
  }
  if(diamond & right)
  {
    scrollright();
  }
  SetIntVec (AUTO_INT_1, MyInt1);  
}

void _main(void)
{
  OldInt1 = GetIntVec (AUTO_INT_1);
  SetIntVec (AUTO_INT_1, MyInt1);
}


Ca marche a peu pres, on peut faire scroller l'écran dans les menu tool bar, var link,...
Il reste un probleme : quand je lance un programme Basic ou ASM -> address error
Je suis désespéré....
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
  :: Index » Forum Ti68K » Programmation C » un TSR un peu special (21 réponse(s))
Pages : 1/2     « [1] 2 » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 68.65ms avec 18 requetes