π
<-
Chat plein-écran
[^]

[Résolu] Problème fonctions mémoire

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

[Résolu] Problème fonctions mémoire

Message non lude newprog_creator » 23 Juil 2016, 17:45

Bonjour,
J'ai un problème, le code suivant plante. Il devrait remplir l'écran de violet :
Code: Tout sélectionner
/* Keep these headers */
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <tice.h>

/* Standard headers - it's recommended to leave them included */
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* CE Keypad C Library */
#include <lib/ce/keypadc.h>

#define lcd_size 320*240*2
#define lcd_buf  (uint16_t*)0xD40000

void main(void) {
    uint8_t *buffer;
    buffer=malloc(10000);
    if(!buffer) return;
    memset_fast(buffer,0xB0,lcd_size);
    memcpy(lcd_buf,buffer,lcd_size);
   prgm_CleanUp();
    if(buffer) {free(buffer);}
    while(kb_ScanGroup(kb_group_1) != kb_2nd) ;     //wait for a key
}

Avatar de l’utilisateur
newprog_creatorProgrammeur
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 74.2%
 
Messages: 67
Inscription: 29 Mar 2014, 19:07
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: bac+13

Re: Problème fonctions mémoire

Message non lude Lionel Debroux » 23 Juil 2016, 18:05

Tu fais un vilain buffer overflow en écriture lors de l'appel à memset_fast(), et aussi (mais ce n'est pas ça qui corrompt la mémoire) un vilain buffer overflow en lecture lors de l'appel à memcpy() ;)

Aussi, les fonctions de la librairie graphique fonctionnent en 8 bpp plutôt qu'en 16 bpp; et si je me souviens bien, malloc() ne peut pas allouer une zone de 320 x 240 = 76800 octets.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: Problème fonctions mémoire

Message non lude newprog_creator » 23 Juil 2016, 18:11

:#roll#:
Eh oui effectivement.
Je suis tellement habitué au 4ko de mémoire vidéo des ti68k que je pensais que 10ko suffisait amplement.

Merci, grace a vous j'ai trouvé l'erreur !
Avatar de l’utilisateur
newprog_creatorProgrammeur
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 74.2%
 
Messages: 67
Inscription: 29 Mar 2014, 19:07
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: bac+13

Re: Problème fonctions mémoire

Message non lude Adriweb » 23 Juil 2016, 21:08

BTW, graphx a ce qu'il faut pour faire du double-buffering :)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.2%
 
Messages: 14613
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb


Retourner vers Problèmes divers / Aide débutants

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 17 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1392 utilisateurs:
>1370 invités
>18 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)