oula, alorfs ne l'utilise pas si tu veux qq chose d'optimisé.
ngetchx() ralenti vraiment les programmes.
Pim89 a écrit :
erf, dsl, de toute façon c'est la même action produite si doorsos appelle la ROM_CALL ngetchx
pour le débugger ?? arf ok, c'est bon alors.
boogerman
a écrit : Au sujet du grayscale, il me faudrait un peu plus de doc sur gray.s
(paramètres,
régistres détruits,
autres précautions,
J'y ai fait un petit essai et je me suis retrouvé avec un horrible address error, probablement parce que gray fait un alloc qq part et cela déplace ce que j'ai alloqué moi même, mais je suis pas certain...
Orion_ a écrit :
>"gray.s" ???? utilise graphlib, c super simple
y'a toute les indication et toute les sources dedans
Orion_ a écrit :
sauf que son emulateur utilise deja graphlib, donc, sa serait bete d'utiliser gray.s alors que c déja inclus dans graphlib
Thibaut a écrit :
Mais pourquoi tu sauvegardes-restaures d0-d2/a0-a1 pour appeler les fonctions de niveaux de gris ???? c'est du gaspillage de place et de temps ! je te rappelle que conformément à la convention C sur TI, le TIOS supporte qu'un programme détruise d0-d2/a0-a1.
Le plantage, à mon avis, est dû au fait que tu adresses les pointeurs __D_plane et __L_plane relativement au PC => retir le (pc), ça devrait mieux marcher
Kevin Kofler a écrit :
Non, ça devrait marcher en PC-relatif normalement! (On peut aussi utiliser bsr GrayOn à la place de jsr GrayOn.) Sinon, c'est peut-être un bogue du système de linking. Essaye quand-même de retirer le (PC), et si ça marche, je vais devoir vérifier d'où vient le problème (si le problème se résout en retirant le (PC), ça ne vient pas de ton programme, mais de notre système de linking).
boogerman
a écrit : J'ai retire le PC et ça marche, mais j'utilise a68k et le link de doorsos, donc je crois pas que ce soit la faute de tigcc (car je ne m'en sers pas)
Au fait, j'ai voulu m'en servir, mais j'ai pas trouvé quelle est la syntaxe pour linker sur CMD. Lorsque je fais gcc fichier1.o fichier2.o il me dit could not find ld.exe check that it is correctly installed ou un truc du genre.
boogerman a écrit :
Au fait, que se passe-t-il is je fais des HeapAllocHigh après avoir appelé GrayOn. Ça risque pas de déplacer ton bloc de mémoire et donc de rendre __D_plane et __L_plane invalides?
init lea oldSR(PC),atmp1 ;disable interrupts move.w #$0700,d0 trap #1 move.w d0,(atmp1)
boogerman a écrit :
Le seul prob: quand je désactive les interruptions avec:
init lea oldSR(PC),atmp1 ;disable interrupts move.w #$0700,d0 trap #1 move.w d0,(atmp1)
(avant d'appeler GrayOn, bien sûr) ça ne marche plus (ça ne montre qu'un seul plan).
Workarounds? (il faut absolument désactiver les interruptions pour éviter l'odieux keyboard buffer)
However, if you disable interrupts, the grayscale will not work, because the grayscale is also based on Auto-Int 1. To solve this problem, instead of disabling Auto-Int 1, you may redirect it to nothing. See DUMMY_HANDLER from intr.h for more info.
move.l $64,oldint1 lea.l dummyhandler(PC),a0 move.l a0,$40064 ;... bsr GrayOn ;... programme principal ... bsr GrayOff ;... move.l oldint1(PC),$40064 ;... rts dummyhandler: rte ;attention: rt[b]e[/b], pas rt[b]s[/b] oldint1: dc.l 0
(ps: vous savez comment ça marche ce media bidule. Je voulais insérer un screenshot dans ce post mais j'ai du me contenter du lien)
Pourquoi n'y a-t-il pas d'émulateurs Amiga/Atari/Game-Boy/Mégadrive pour TI ?
L'idée est séduisante et en a fait rêver plus d'un. Malheureusement, à part si vous connaissez des mutants, il est fort peu probable que ce type de programmes soit réalisé un jour. Bien sûr, la TI possède le même processeur que la mégadrive, l'Atari et l'Amiga. Même que le processeur de la TI tourne plus vite que celui de la mégadrive. Mais... presque tout, dans ces consoles, était optimisé pour le jeu, ce qui est très très loin d'être le cas de la TI (quand on voit qu'à la base, elle n'est pas prévue pour afficher des niveaux de gris...). Signalons, par ailleurs, des petits détails, du genre la taille de l'écran, ou bien les coprocesseurs graphiques et mathématiques que ne possède pas la TI... Enfin, la plupart des jeux qui existaient sur ces machines faisaient au moins 500Ko en place mémoire... Bref, rêvez pas.
Orion_ a écrit :
c klr, que la c bien mieux, c quand que la new version sera en ligne ?
(et plus de user lib , hein)
boogerman
a écrit : Il appelle userlib::idle_loop qui aparamment a bessoin de l'auto int 1 du TIOS.
En plus, toutes les foncions merdiques du TIOS (ie: drawstrxy) écrivent sur main_lcd et non pas sur le LCD actif...