30

Martial Demolins :
mal exprimé/mal compris. smile

J'installe manuellement PreOS.
J'installe manuellement KbdTSR
Je désinstalle manuellement PreOS.
=> je ne pourrai pas allumer ou éteindre la calc suivant ce que j'utilise (ram calls, libs, etc).

Y a-t-il un moyen pour se protéger de ça? un format de TSR kernel à adopter? une adresse de désinstallation à passer au kernel au moment de l'installation?


Je me demande si à l'exécution d'un programme kernel preos ne réinstalle pas le trap #4 (à vérifier)

avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

31

32

bon, j'ai un programme fastkbd4 qui fait ça en kernel (donc pas de souci avec preos)

et j'ai une version 3 qui fait ça en nostub, je n'avais pas du tout utilisé la même méthode que fastkbd, j'interceptais l'event Off, j'éteignais la calc, puis je réajustais les valeurs du clavier avant de passer l'event null

ça ne marchait pas dans les jeux, mais c'était plus propre je trouve
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

33

34

Martial Demolins :
sans le réinstaller à la fin? qu'il remette celui du TIOS en place se comprend, qu'il ne réinstalle pas l'ancien m'étonnerait.

je me souviens d'un certain nombre de problèmes avec les TSR nostub avec preos, mais vu que je suis passé au tsr kernel, j'ai un peu oublié les problèmes que j'avais eu
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

35

A première vue...
Martial Demolins :
move.w #(EndInterrupt-Interrupt)/2-1,d0 ;counter

moveq ne suffit pas ? confus

Tu peux aussi rajouter un
	lea $600001,a3
	lea $90,a4
	moveq #2,d3

au début du programme et remplacer tous les bset/bclr par un bset d3,(a3), toutes les occurrences de $90 par (a4)
(et en faisant pareil dans l'interruption)
	add.l	#OldInterrupt-Interrupt,(sp)	;*old vector 
	movea.l	(sp),a0				;old vector 
	move.l	(a0),$90			;write old vector 

-> move.l (a7),a0 ; move.l OldInterrupt-Interrupt(a0),$90 (enfin, plus exactement (a4))
	lea.l	OldInterrupt(pc),a0 
	move.l	(a0),$90

-> move.l OldInt...

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

36

37

38

le heapallocptr ne te fait pas perdre 2o ?
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

39

40

voilà tongue
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

41

tu peux faire aussi bourrin et écrire directement les valeurs de OSInitKeyDelay en ram, en récupérant dans l'installeur les adresses utilisées par les rom_call </extreme>
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

42

43

trioui c'est ce que j'avais fait happy
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

44

Martial Demolins :
Mais tu es sûr de toi quand tu dis qu'il faut remplacer $90 par (a4)? ça gagne en temps ou en taille? il est 17 heures là, peut pas aller vérifier cheeky

les deux mon colonel ^^ (le $90, il faut qu'il le stocke dans un word à part...)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

45

46

tu veux me l'envoyer (avec la source de l'installation si possible ^^) ? je pourrais y jeter un oeil si tu veux smile
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

47

48

49

(quoique, la source de l'installation, c'est pas indispensable, c'est juste pour gagner du temps ^^)
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

50

Pollux > tu n'avais pas vu toutes les optimisations possibles grin
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

51

52

le programme va faire :

(programme utilisateur)
jump to Interrupt
(prépare le retour)
jump to Trap4
(étient la calc)
return to FastKbd
(accélère le clavier)
return to ReturnAddress
(suite du programme utilisateur)

2(a7) contient l'adresse à laquelle va aller le proc après avoir exécuter le trap #4 ((a7) contient le sr)
le move.l 2(a7),$123456 va être transformé en move.l 2(a7),Oldjump et va permettre à FastKbd de s'exécuter puis de retourner au programme appellant
le move.l $123456,2(a7) va être transformé en move.l #FastKbd, 2(a7) et va permettre à FastKbd d'être appelé à la fin du trap #4

un jump $123456 est équivalent en binaire à dc.w $4EF9, $0012, $3456 smile
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

53

54

Pkoi tu n'as plus rien pour débugger ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

55

56

57

Flanker :
Pollux > tu n'avais pas vu toutes les optimisations possibles grin
Pollux :
A première vue...

tongue

Mais je voudrai bien re-jeter un oeil au code quand les optimisations de base style CSE et ce dont j'ai parlé seront appliquées (et non, aucune envie de le faire moi-même tongue)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

58

CSE ? en français ça donne quoi ? cheeky
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

59

Elimination des Sous-expressions Communes (en gros, si $90 apparaît plein de fois, ne pas le re-"calculer" à chaque fois mais le mettre dans un registre [bon, il n'y a pas gd-chose à calculer, mais du point de vue du processeur utiliser une valeur immédiate est une lecture mémoire comme une autre, donc un calcul])

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

60

Elimination des Sous-expressions Commune, ça me suffisait wink
je n'ai pas trop regardé ça, j'ai préféré faire du smc, c'est plus marrant cheeky
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant