Je n'arrive pas à rendre mon programme en C compatible SH4
Posté le 17/03/2015 17:41
Je précise que quand j'ai commencé à programmer en C, j'ai voulu suivre le tutoriel et dans ce tutoriel le logiciel utilisé était Code::Blocks..
Alors je n'ai rien compris des tutoriel que j'ai vu avec le logiciel SDK pour rendre compatible et tout ça.. :/
En gros suis bloqué à l'ouverture du logiciel que je trouve chargé comparé à Code::Blocks.
Voilà un petit menu que j'ai voulu essayer sur ma calculatrice avant de faire des programmes plus gros :
Cliquez pour découvrir
Cliquez pour recouvrir
#include <stdio.h>
#include <stdlib.h>
int affichageMenu(void)
{
int choixMenu;
printf("---MENU---\n\n");
printf("1.Maths\n");
printf("2.Physique-Chimie\n");
printf("3.SVT\n");
printf("4.SES\n\n\n");
printf("\nChoix?\n\n");
scanf("%d", &choixMenu);
return choixMenu;
int main(void)
{
switch (affichageMenu())
{
case 1:
printf("Vous avez choisis le 1");
break;
case 2:
printf("Vous avez choisis le 2");
break;
case 3:
printf("Vous avez choisis le 3");
break;
case 4:
printf("Vous avez choisis le 4");
break;
default:
printf("Choix impossible");
break;
}
system("PAUSE");
return 0;
}
Donc si quelqu'un peut m'expliquer comment faire..
Merci !
Citer : Posté le 20/03/2015 17:10 | #
Il faut l'envoyer dans la mémoire de stockage, à la racine.
Et non, ajouter ce morceau de code ne sert, désolé, strictement à rien, sinon à générer des conflits avec la version corrigée de MonochromeLib. Par contre, il faut l'utiliser en remplacement de l'appel de syscall original.
Et en plus, il existe une version de ML déjà patchée. Alors pourquoi s'embêter ?
Citer : Posté le 20/03/2015 17:12 | #
http://www.planet-casio.com/Fr/programmation/tutoriels.php?id=35
Citer : Posté le 20/03/2015 19:16 | #
Je viens de suivre le tuto et quand j'ouvre SDK, j'ai un MonochromeLib.c (je suppose que c'est normal), je double clique dessus et je rentre le programme puis quand je dois compiler j'ai : La syntaxe de la commande n'est pas correct.
/* */
/* CASIO fx-9860G SDK Library */
/* */
/* File name : [ProjectName].c */
/* */
/* Copyright (c) 2006 CASIO COMPUTER CO., LTD. */
/* */
/*****************************************************************/
#include "fxlib.h"
//****************************************************************************
// AddIn_main (Sample program main function)
//
// param : isAppli : 1 = This application is launched by MAIN MENU.
// : 0 = This application is launched by a strip in eACT application.
//
// OptionNum : Strip number (0~3)
// (This parameter is only used when isAppli parameter is 0.)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int AddIn_main(int isAppli, unsigned short OptionNum)
{
unsigned int key;
Bdisp_AllClr_DDVRAM();
locate(1,4);
Print((unsigned char*)"Test pour rendre mon addin");
locate(1,5);
Print((unsigned char*)" compatible SH4.");
while(1){
GetKey(&key);
}
return 1;
}
//****************************************************************************
//************** ****************
//************** Notice! ****************
//************** ****************
//************** Please do not change the following source. ****************
//************** ****************
//****************************************************************************
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
//****************************************************************************
// InitializeSystem
//
// param : isAppli : 1 = Application / 0 = eActivity
// OptionNum : Option Number (only eActivity)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int InitializeSystem(int isAppli, unsigned short OptionNum)
{
return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}
#pragma section
Je suis vraiment doué..
Citer : Posté le 20/03/2015 19:26 | #
tu ne dois pas ouvrir ce fichier, tu dois créer un nouveau projet avant.
De plus, je veux bien t'aider, cependant, sans le code ni l'erreur(complète, donc avec le nom et le chemin du fichier, la ligne et l'erreur), je ne peux pas vraiment aider
Citer : Posté le 20/03/2015 19:56 | #
Code d'erreur
Executing Hitachi SH C/C++ Compiler/Assembler phase
set SHC_INC=C:\Program Files\CASIO\fx-9860G SDK\OS\SH\include
set PATH=C:\Program Files\CASIO\fx-9860G SDK\OS\SH\bin
set SHC_LIB=C:\Program Files\CASIO\fx-9860G SDK\OS\SH\bin
set SHC_TMP=C:\Users\Admin\Desktop\voix\ok\Debug
Executing Hitachi OptLinker04 phase
"C:\Program Files\CASIO\fx-9860G SDK\OS\SH\bin\Optlnk.exe" -subcommand=C:\Users\Admin~1.MAG\AppData\Local\Temp\hmk24E1.tmp
Optimizing Linkage Editor Completed
HMAKE MAKE UTILITY Ver. 1.1
Copyright (C) Hitachi Micro Systems Europe Ltd. 1998
Copyright (C) Hitachi Ltd. 1998
Make proccess completed
Error! The icon file name is null.
Check the icon file name in the Edit project dialog ([Menu]-[Project]-[Edit]-[Main menu tab]).
Build was not successful.
Le programme
/*****************************************************************/
/* */
/* CASIO fx-9860G SDK Library */
/* */
/* File name : [ProjectName].c */
/* */
/* Copyright (c) 2006 CASIO COMPUTER CO., LTD. */
/* */
/*****************************************************************/
#include "fxlib.h"
//****************************************************************************
// AddIn_main (Sample program main function)
//
// param : isAppli : 1 = This application is launched by MAIN MENU.
// : 0 = This application is launched by a strip in eACT application.
//
// OptionNum : Strip number (0~3)
// (This parameter is only used when isAppli parameter is 0.)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int AddIn_main(int isAppli, unsigned short OptionNum)
{
unsigned int key;
Bdisp_AllClr_DDVRAM();
locate(1,4);
Print((unsigned char*)"Premier addin");
locate(1,5);
Print((unsigned char*)" test.");
while(1){
GetKey(&key);
}
return 1;
}
//****************************************************************************
//************** ****************
//************** Notice! ****************
//************** ****************
//************** Please do not change the following source. ****************
//************** ****************
//****************************************************************************
#pragma section _BR_Size
unsigned long BR_Size;
#pragma section
#pragma section _TOP
//****************************************************************************
// InitializeSystem
//
// param : isAppli : 1 = Application / 0 = eActivity
// OptionNum : Option Number (only eActivity)
//
// retval : 1 = No error / 0 = Error
//
//****************************************************************************
int InitializeSystem(int isAppli, unsigned short OptionNum)
{
return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}
#pragma section
Une journée pour comprendre comment faire (et c'est pas encore fini, malheureusement..)
Citer : Posté le 20/03/2015 19:59 | # | Fichier joint
voici l'erreur
Check the icon file name in the Edit project dialog ([Menu]-[Project]-[Edit]-[Main menu tab]).
C'est un des problèmes en rendant le SDK compatible SH4. il faut que tu supprimes le fichier mainicon.bmp et que tu le remplaces par celui là(en pièce jointe).
Citer : Posté le 20/03/2015 20:01 | #
Attends, je veux bien que tu saches pas forcément programmer mais là :
Error! The icon file name is null.
Check the icon file name in the Edit project dialog ([Menu]-[Project]-[Edit]-[Main menu tab]).
Qu'est-ce que tu ne comprends pas la-dedans ? Il n'y a pas d'icône pour l'add-in !
Pour faire vite, va dans Menu>Project>Edit>Main menu, renomme le champ "MainIcon.bmp", choisis "Edit", ferme la fenêtre qui s'est ouverte, la boîte de dialogue et recompile.
Citer : Posté le 20/03/2015 20:04 | #
On peux rendre le compilateur direct compatible SH4 ?
Citer : Posté le 20/03/2015 20:09 | #
On peux rendre le compilateur direct compatible SH4 ?
Hmm, la question... non, vraiment...
Le compilo est compatible SH4, c'est les programmes qui ne le sont pas. Facile à comprendre, nan ?
Citer : Posté le 20/03/2015 20:16 | #
Bon..
L'add-in n'apparait toujours pas dans ma calculatrice.
Pourtant j'ai tout fais comme il le fallait :
-Le dossier est dans Program Files
-J'ai supprimé le Default de base pour le remplacer par le Default du MonochromeLib
-J'ai lancé SDK puis j'ai créer un nouveau projet
-J'ai mis l'icône
Suis-je maudit ?
En plus je dois bien vous embêter, le truc est tout simple mais je galère depuis ce matin..
Citer : Posté le 20/03/2015 20:18 | #
je te ferais une vidéo demain, si tu n'as pas résolu le problème
j'adorerais te passer le winSDK mais il faut encore que j'intègre le basic
Citer : Posté le 20/03/2015 20:22 | #
Merci ! Mais ne te sens pas obliger, fais la vidéo si tu as vraiment rien à faire.
Je vais essayer de résoudre le problème, je te dirai si j'y arrive ! Merci beaucoup tout le monde sinon.
Ajouté le 22/03/2015 à 16:38 :
Oué c'est mort, je n'y arrive pas.
Ajouté le 22/03/2015 à 16:53 :
Je n'ai pas testé encore mais j'ai pensé à ça peut être non ? : http://tools.planet-casio.com/SH4compatibility/
Citer : Posté le 22/03/2015 16:55 | #
Mais non.
Est-ce que tu as transféré ton fichier g1a ?
Citer : Posté le 22/03/2015 17:11 | #
J'ai réussi ! Après avoir fais 30 fois la même manipulation !
Merci les gars !
Citer : Posté le 22/03/2015 17:19 | #
Bravo