Page 1 sur 2

adresse memoire ecran

Message non luPosté: 07 Fév 2019, 14:53
de BackStage
slt a tous

quelqu'un pourrait-il me donner l'adresse PHYSIQUE de la mémoire ecran sur une ti-nspire cas touchpad monochrome et sa structure

la référence au dos de la calculatrice est p-0810c

merci

Re: adresse memoire ecran

Message non luPosté: 08 Mar 2019, 00:07
de BackStage
comme personne n'a été assez sympa pour me donner l'information et que j'ai fini par la trouver tout seul comme un grand (je suis néophyte sur nspire) je la mets en ligne

https://hackspire.org/index.php/Memory- ... controller

et pour ceux qui veulent faire de l'asm sur nspire ceci p-e utile

https://www.gladir.com/CODER/ARM/reference.htm (ARMv6)
https://cpulator.01xz.net/?sys=arm (ARMv7)

en partie utilisable avec le proc de la nspire

Re: adresse memoire ecran

Message non luPosté: 08 Mar 2019, 04:22
de Adriweb
Oui logiquement "toutes" les infos sont sur HackSpire.
Pour le CPU, c'est un core arm926ej-s.

Re: adresse memoire ecran

Message non luPosté: 08 Mar 2019, 19:45
de BackStage
c'est un fait mais pour le neophyte que je suis l'existence de hackspire n'etait pas une evidence :)

Re: adresse memoire ecran

Message non luPosté: 09 Mar 2019, 01:45
de Adriweb
Oops, en effet on aurait du linker ça plus tôt :D

Re: adresse memoire ecran

Message non luPosté: 10 Mar 2019, 00:10
de BackStage
Adriweb :)

Re: adresse memoire ecran

Message non luPosté: 11 Mar 2019, 13:45
de Dubs
Je ne conaissais pas non plus Hackspire, merci pour l'info !


J'ai fait un petit programme pour tester le changement d'adresse de l'écran affiché

Code: Tout sélectionner
#include <os.h>
#include <libndls.h>
#include <stdbool.h>

unsigned char *backScr1; // back buffer 1
unsigned char *backScr2; // back buffer 2

void *SCREEN_BACKUP;

int actif = 1;

int main() {
    SCREEN_BACKUP = *(void**)0xC0000010;

    backScr1 = malloc(320 * 240 * 2);
    memset(&backScr1[0], 0x00, 320 * 240 * 2);

    backScr2 = malloc(320 * 240 * 2);
    memset(&backScr2[0], 0xFF, 320 * 240 * 2);

    while (!isKeyPressed(KEY_NSPIRE_ESC)) {
        actif = 1 - actif;
        if (actif == 0) {
            *(void**)0xC0000010 = backScr1;
        } else {
            *(void**)0xC0000010 = backScr2;
        }
    }

    *(void**)(0xC0000010) = SCREEN_BACKUP;

    free(backScr1);
    free(backScr2);

    return 0;
}


j'initialise 2 écrans de 320x240x2. le premier tout noir, le second tout blanc
et j'alterne l'affichage de ces écran

MAIS : il m'affiche quelques pixels incohérents en haut à gauche, je n'arrive pas à l'expliquer
si vous avez la réponse : merci de m'éclairer de votre savoir !

Re: adresse memoire ecran

Message non luPosté: 18 Avr 2019, 16:28
de Noury
BackStage a écrit:et pour ceux qui veulent faire de l'asm sur nspire ceci p-e utile

https://www.gladir.com/CODER/ARM/reference.htm (ARMv6)
https://cpulator.01xz.net/?sys=arm (ARMv7)

en partie utilisable avec le proc de la nspire

Le proc de la Nspire utilise les instructions de l'ARMv5, non ?
D'où peut-être, le "en partie utilisable".

Re: adresse memoire ecran

Message non luPosté: 18 Avr 2019, 17:17
de Noury
Voici le lien vers la doc, il peut servir.

Re: adresse memoire ecran

Message non luPosté: 18 Avr 2019, 18:47
de BackStage
ca n'a rien a voir ...quoique ...
un bon cours en francais (c'est rare ) sur l'armv8

http://info.usherbrooke.ca/mblondin/cours/ift209_h19/