Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
Hier — 20 février 2025Flux principal
À partir d’avant-hierFlux principal

Créez votre environnement Assembleur C64 sous Windows avec VS Code

Par : Korben
10 septembre 2024 à 07:00

Vous vous souvenez de l’époque mythique du Commodore 64 ?

Ce bon vieux clavier qui claque, les disquettes qu’on insère délicatement dans le lecteur, les heures passées à dompter l’assembleur pour créer des petites merveilles de pixels et de sons… Ah, c’était le bon vieux temps !

Eh bien, figurez-vous qu’on peut retrouver un peu de cette magie en 2023, avec des outils modernes et sur un bon gros PC.

Pour cela, vous allez avoir besoin de quelques ingrédients de base :

  • Visual Studio Code, l’éditeur de code ultra polyvalent qui s’adapte à tous les langages
  • L’émulateur VICE (what else?) pour faire tourner vos programmes comme sur un vrai C64
  • Le compilateur Kick Assembler pour transpiler votre code en binaire (il vous faudra java)
  • Git pour versionner votre code comme un pro

Installer et configurer tout ça, c’est un peu le parcours du combattant mais rassurez-vous, tout est expliqué dans cette vidéo qui vous prend par la main et vous explique tout pas à pas, même si vous débutez.

Alors, vous commencez par installer Git, Java et Visual Studio Code. Ça, c’est la partie facile. Ensuite, vous récupérez Kick Assembler et VICE, et c’est là que ça se corse un peu. Mais suivez bien les instructions, et vous verrez, au bout de quelques minutes, vous aurez un environnement de développement parfaitement opérationnel !

Visual Studio Code dispose d’extensions pour faire tout un tas de trucs, et bien sûr, il en existe une pour l’assembleur C64. Une fois installée, vous pourrez profiter de la coloration syntaxique, de la complétion de code et même du débogage en temps réel avec VICE.

Ensuite, avec Kick Assembler, vous allez pouvoir écrire votre code source de manière beaucoup plus confortable qu’à l’époque. Déjà, vous n’êtes plus limité à 40 colonnes, et l’éditeur vous évitera bien des fautes de frappe. Mais le plus sympa, c’est que vous pouvez utiliser des macros, des constantes et même des instructions de haut niveau pour vous faciliter la vie. Et au final, Kick Assembler transpile tout ça en bon vieil assembleur 6502.

Quant à VICE, c’est tout simplement le meilleur émulateur C64 disponible actuellement. Il est hyper fidèle au hardware d’origine, et il propose une tripotée d’options pour faciliter le développement : exécution pas à pas, points d’arrêt, inspection des registres et de la mémoire, etc. Un vrai bonheur pour déboguer vos programmes !

Voici pour tester, un petit Hello World qui affiche un message à l’écran et change la couleur de la bordure.

;===============================================================================
; Ceci est un exemple de programme en assembleur pour Commodore 64
; utilisant l'assembleur KickAssembler.
;===============================================================================
; Constantes pour les couleurs du C64
BLACK = 0
WHITE = 1
*= $0801
;===============================================================================
; Le code BASIC au début sert à lancer notre programme en assembleur.
; Nous utilisons ici la macro BasicUpstart2 de KickAssembler qui génère
; automatiquement le code BASIC approprié.
;===============================================================================
BasicUpstart2(start)
;===============================================================================
; Notre programme en assembleur commence ici
;===============================================================================
start:
; Change la couleur de la bordure en noir
lda #BLACK
sta $d020

Et pour compiler, charger et exécuter le programme :

  • Presser F5 dans VSCode pour compiler avec KickAssembler
  • Dans VICE, utiliser LOAD "HELLO.PRG",8,1 pour charger le programme puis RUN pour l’exécuter

Pour compiler ce programme, assurez-vous d’utiliser l’assembleur KickAssembler. Vous pouvez le compiler en pressant F5 dans Visual Studio Code si vous avez configuré KickAssembler comme assembleur par défaut. Une fois compilé, vous obtiendrez un fichier PRG que vous pouvez charger dans l’émulateur VICE avec la commande suivante : LOAD "HELLO.PRG",8,1

Puis tapez RUN pour exécuter le programme. Vous devriez voir apparaître « HELLO WORLD! » à l’écran, avec la bordure de l’écran en noir.

Voilà, vous savez maintenant comment redonner vie à vos vieilles machines 8 bits dans un environnement ultra moderne et confortable. Plus d’excuse pour ne pas vous remettre à l’assembleur et pondre les démos et les jeux de vos rêves !

Et si vous êtes un peu nostalgique, rien ne vous empêche de transférer vos programmes sur une vraie machine, armé d’un vieux lecteur de disquettes Commodore 1541 et d’une pile de D7. Et puis il y a une sacrée communauté de passionnés toujours prêts à vous filer un coup de main ou une bonne vieille rustine. N’hésitez pas à traîner sur les forums spécialisés comme Lemon64 ou C64-Wiki, vous y trouverez une mine d’infos, de démos et de bouts de code à recycler.

Avec ce setup VS Code + Kick Assembler + émulateur, vous pouvez également vous attaquer à plein d’autres machines mythiques : Atari 800, Apple II, ZX Spectrum, la liste est longue. Chaque hardware a ses spécificités et ses petits trucs à découvrir, de quoi vous occuper pendant des années !

Source

Quill – L’éditeur WYSIWYG nouvelle génération

Par : Korben
4 septembre 2024 à 07:00

Quill est une bibliothèque JavaScript de folie pour créer des éditeurs de texte riche (WYSIWYG). Et quand je dis riche, c’est pas seulement du gras et de l’italique hein, on est sur un niveau au-dessus !

En gros, Quill vous offre tout un tas d’outils pour transformer vos champs de texte tout moisis en une expérience d’édition de folie furieuse. Le truc cool, c’est que c’est pensé pour les développeurs, donc vous avez un contrôle total sur le contenu et les fonctionnalités.

Ce qui fait la force de Quill, c’est son API hyper intuitive. Pas besoin de se taper 3 jours de doc pour comprendre comment ça marche. En quelques lignes de code, vous pouvez déjà faire des trucs sympas. Tenez, regardez ça :

const quill = new Quill('#editor', {
  modules: {
    toolbar: true  
  },
  theme: 'snow'
});

Et bam, avec ça vous avez déjà un éditeur stylé avec une toolbar, prêt à l’emploi ! C’est pas beau ça ? En plus, Quill gère directement le JSON en entrée et en sortie, ce qui vous facilite grave la vie pour stocker et traiter le contenu ensuite.

Ce qui est vraiment cool avec Quill, c’est que vous pouvez étendre et personnaliser votre éditeur à l’infini. Vous voulez ajouter des formats chelous, des effets funky ou même intégrer des contenus interactifs ? Pas de soucis, Quill vous laisse faire tout ce que vous voulez.

Vous pouvez même créer vos propres modules pour ajouter des features de malade. Genre si vous avez besoin d’un éditeur d’équations mathématiques ? Hop, vous chopez le module sur npm et vous l’intégrez en deux-deux. Besoin d’un truc pour gérer des sondages? Pareil, y’a sûrement un module pour ça. C’est ça qui est génial avec l’écosystème de Quill!

Tiens d’ailleurs, laissez-moi te montrer un truc fun qu’on peut faire. On va créer un format custom pour mettre en forme du code source directement dans l’éditeur. Pour ça, on va créer un module qui va détecter les blocs de code et leur appliquer la coloration syntaxique.

import Quill from 'quill';
import Highlight from 'highlight.js';

const CodeBlock = Quill.import('formats/code-block');

class SyntaxCodeBlock extends CodeBlock {
  static create(value) {
    const domNode = super.create(value);
    domNode.innerHTML = Highlight.highlightAuto(value).value;
    return domNode;
  }
}

Quill.register(SyntaxCodeBlock, 'code-block', true);

Là en gros, on crée une nouvelle classe SyntaxCodeBlock qui étend le format code-block de base. Dans la méthode create, on récupère le noeud créé par la classe parente et on remplace son contenu avec le code coloré par Highlight.js. Ensuite, on n’a plus qu’à enregistrer notre nouveau format custom dans Quill et pouf, on peut mettre en forme du code directement dans l’éditeur!

C’est juste un exemple hein, mais ça montre bien la puissance et la flexibilité de Quill. Et puis c’est hyper fun de pouvoir bidouiller son éditeur comme ça ! Y’a même un playground ici pour vous amuser.

Bon après, je vais pas vous mentir, y’a quand même un petit temps d’adaptation hein. Faut comprendre comment Quill structure son modèle de document, comment bossent les différents modules, etc. Mais une fois qu’on a compris la logique, c’est open bar.

Ah et j’ai failli oublier un truc important: Quill est compatible avec tous les navigateurs modernes, que ce soit sur desktop ou mobile. Votre éditeur va se comporter de la même façon partout, ce qui est quand même super cool. Ah et la doc officielle est très bien faite.

Bref, si vous cherchez une solution d’édition de texte riche pour vos projets web, franchement je vous le recommande les yeux fermés.

Allez, codez bien et à plus dans l’bus !

Pages CMS – Le nouveau visage de la gestion de contenu

Par : Korben
30 juillet 2024 à 07:00

Vous en avez assez de jongler entre Git et YAML pour mettre à jour votre site Next.js, Astro, Hugo ou Nuxt ? Simplifiez-vous la vie en installant un CMS convivial directement sur GitHub à l’aide de Pages CMS, la nouvelle coqueluche des gestionnaires de contenu pour les sites statiques.

Avec cet outil, fini les prises de tête avec les fichiers de configuration et les commits laborieux puisqu’il s’intègre de manière transparente à votre dépôt GitHub, vous permettant de gérer votre contenu directement depuis une interface intuitive. Ainsi, vous pourrez personnaliser vos types de contenu, vos vues, votre recherche… et côté édition, vous profiterez d’un éditeur de texte riche avec coloration syntaxique, d’un glisser-déposer pour vos fichiers, d’une recherche full-text hyper rapide… Le tout saupoudré de fonctionnalités bien pensées comme la planification de mises à jour ou le contrôle d’accès granulaire.

Pages CMS est 100% gratuit, open source et vous pouvez l’utiliser en ligne ou l’auto-héberger sans débourser un centime. En quelques clics, vous créez votre compte, connectez votre dépôt GitHub et hop, vous voilà paré pour dompter votre contenu comme un pro. C’est beau, la vie de développeur, non ? 🌈

Bon, je vous vois venir avec vos grands chevaux. « Mais est-ce que ça va pas transformer mon dépôt en usine à gaz ?« . Que nenni ! Pages CMS est une simple appli front-end avec des fonctionnalités backend limitées. Ça tourne sur Cloudflare Pages et ça n’interfère en rien avec votre code. Et si vous voulez garder la main, vous pouvez toujours passer par Git pour les modifications sensibles.

En parlant de Git justement, je vous rassure tout de suite : Pages CMS n’a pas accès à TOUS vos dépôts. Il utilise le flux OAuth de GitHub pour des autorisations ciblées. Et vos tokens d’accès ne sont jamais stockés côté serveur. Votre code reste votre précieux, comme dirait Gollum.

Pour l’installer, rendez-vous sur pagescms.org, créez votre compte en deux clics et connectez votre dépôt GitHub. Et voilà, vous êtes prêt à dompter votre contenu. Et pour les adeptes de l’auto-hébergement, comptez 10 petites minutes pour déployer Pages CMS sur votre compte Cloudflare.

Sur ce, je vous laisse, j’ai du contenu à publier moi. Allez, tchô la compagnie ! 👋

FLARE-VM – Le toolkit des passionnés de reverse engineering !

Par : Korben
5 juillet 2024 à 07:00

Si vous vous intéressez au reverse engineering comme moi, permettez-moi de vous présenter FLARE-VM de Mandiant ! C’est un outil très pratique pour vous monter rapidement un petit labo d’analyse de malwares sans vous prendre la tête.

Concrètement, FLARE-VM est une jolie brochette de scripts d’installation pour Windows, basés sur deux technos bien badass : Chocolatey (un gestionnaire de paquets) et Boxstarter (un outil pour scripter des installs et configurer des environnements reproductibles). Bref, ça mâche le boulot et ça permet d’installer tout un tas d’outils et les configurer proprement en quelques minutes.

Bon, avant de se lancer, faut quand même checker deux-trois prérequis. Déjà, n’oubliez pas que FLARE-VM est prévu pour tourner sur une VM, donc préparez-en une bien propre (Windows 10+ de préférence) sur VMWare ou Virtualbox par exemple. Ensuite, vérifiez que vous avez bien au moins 60 Go d’espace disque et 2 Go de RAM. Et pensez à désactiver les mises à jour Windows et l’antivirus, sinon ça risque de faire des misères.

Ouvrez ensuite une invite PowerShell en tant qu’administrateur et téléchargez le script d’installation installer.ps1 sur votre bureau à l’aide de la commande suivante :

(New-Object net.webclient).DownloadFile('https://raw.githubusercontent.com/mandiant/flare-vm/main/install.ps1',"$([Environment]::GetFolderPath("Desktop"))\install.ps1")

Débloquez le script d’installation :

Unblock-File .\install.ps1

Puis activez son exécution :

Set-ExecutionPolicy Unrestricted -Force

Si vous recevez un message d’erreur indiquant que la stratégie d’exécution est remplacée par une stratégie définie à une portée plus spécifique, vous devrez peut-être passer une portée via Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force. Pour afficher les stratégies d’exécution pour toutes les portées, exécutez Get-ExecutionPolicy -List.

Enfin, exécutez le script d’installation comme ceci :

.\install.ps1

Pour passer votre mot de passe en argument :

.\install.ps1 -password <mot_de_passe>

Pour utiliser le mode CLI uniquement avec un minimum d’interaction utilisateur :

.\install.ps1 -password <mot_de_passe> -noWait -noGui

Pour utiliser le mode CLI uniquement avec un minimum d’interaction utilisateur et un fichier de configuration personnalisé :

.\install.ps1 -customConfig <config.xml> -password <mot_de_passe> -noWait -noGui

Une fois lancée, l’installation va télécharger et installer tous les outils sélectionnés, configurer les variables d’environnement, épingler des raccourcis sur la barre des tâches, etc. Bref, en quelques clics, vous obtiendrez un environnement de reverse engineering aux petits oignons, prêt à l’emploi pour désosser du malware !

Après l’installation, il est recommandé de passer en mode de réseau host-only et de prendre un instantané de la machine virtuelle. Vous pouvez ensuite personnaliser votre environnement FLARE VM en fonction de vos besoins spécifiques :

  • Mettez à jour les outils et les logiciels installés pour vous assurer que vous disposez des dernières versions.
  • Configurez les paramètres réseau selon vos préférences, par exemple en passant en mode NAT ou en mode pont si nécessaire.
  • Installez des outils ou des utilitaires supplémentaires qui pourraient être utiles pour votre flux de travail d’analyse.
  • Personnalisez les paramètres de l’interface utilisateur et les préférences selon vos goûts.

Et c’est parti mon kiki !

Après, si vous voulez aller plus loin et contribuer à l’amélioration de FLARE-VM, jetez un œil aux repos GitHub du projet :

Happy reverse à tous ! 🚀

TopSpin 2K25 : service compris

Par : Remouk
27 juin 2024 à 20:28

— Article rédigé par l’ami Remouk (DansTonChat) – Merci à lui —
— Contient des liens affiliés Amazon —

En 2024, les fans de tennis ont été gâtés : Reebok a ressuscité ses baskets classiques Court Victory Pump, Zendaya a joué un double mixte sulfureux à l’écran dans Challengers, et maintenant l’une des plus grandes séries de jeux vidéo de tennis, j’ai nommé TopSpin 2K25, est de retour après 13 ans d’absence. Mais est-ce que ce retour est un smash gagnant ou un simple coup droit un peu mou du coude ?

Parlons de ce qui nous intéresse en premier lieu : le gameplay. Et on peut dire que TopSpin 2K25 brille par sa prise en main et la marge de progression offerte. Les commandes sont simples et réactives, permettant des échanges dynamiques qui rappellent la vitesse et la tension du sport. Une fois qu’on a pris le pli, c’est très satisfaisant ! Le jeu propose également l’un des tutoriels les plus complets que j’ai jamais rencontrés dans le genre, avec plus d’une heure de mini-défis pour maîtriser les bases et les tactiques avancées. 👌

Les mouvements des joueurs sont fluides, y a une certaine inertie un peu « simulation », et chaque coup de raquette est ressenti à l’écran. Les échanges sont intenses, avec des glissades sur terre battue, des volées acrobatiques et des montées au filet qui réussissent 1 fois sur 5. 😀 Le système de jauge d’énergie ajoute une dimension stratégique : faut-il économiser son souffle pour un super coup ou risquer la fatigue ? C’est avec plein de petits éléments de ce genre que le jeu brille vraiment, offrant une expérience de tennis assez intense.

Graphiquement, c’est pas mal du tout. Les stades sont jolis, des courts en dur de l’US Open aux pelouses impeccables de Wimbledon. Les joueurs me semblent reconnaissables, avec des visages détaillés et des animations réalistes, mais un peu rigides parfois… Disons qu’on ne les confondrait pas avec des humains. 😀 Je n’aime pas trop les musiques (question de goût) mais avec les applaudissements du public, les bruits d’impacts ou les commentaires, l’ambiance sonore est bien foutue, immersive.

Le menu, un peu bordélique, propose pas mal d’options. Le mode MyCareer est le cœur du jeu, avec des tournois ATP, des défis spéciaux et des entraînements ciblés. Attention toutefois à la gestion de l’énergie, car une baisse trop importante peut entraîner des blessures. Les options de personnalisation sont également nombreuses, des tenues aux raquettes en passant par les animations de célébration. On peut créer notre propre joueur/joueuse et le/la personnaliser au fur et à mesure qu’on débloque des objets. Mauvais goût assuré. 😀

Cité plus haut, le mode Tennis School est idéal pour les débutants, avec des leçons interactives pour apprendre les bases, tandis que le mode Legendary Matches recrée des duels historiques entre légendes du tennis. J’y connais rien mais c’est sympa ! Et bien sûr le mode en ligne nous permet d’affronter d’autres gamers à l’autre bout de la planète… Il y a de quoi faire !

Malheureusement, TopSpin 2K25 n’est pas exempt de défauts. Son mode MyCareer peut parfois sembler laborieux, et le nombre de joueurs sous licence est un peu limité comparé à la variété de stades disponibles. Mais le plus gros point noir reste la monétisation. Les microtransactions sont très présentes, notamment pour débloquer des tenues et des animations de célébration. Bien que cela n’affecte pas directement le gameplay, il est dommage de voir ce genre d’éléments derrière un paywall

Cela dit tout n’est pas payant, car depuis sa sortie, TopSpin 2K25 a reçu plusieurs mises à jour et DLC gratuits qui ont enrichi l’expérience de jeu : nouveaux joueurs sous licence, stades supplémentaires, textures affinées, animations retravaillées, effets de lumière améliorés, et même de nouveaux défis en ligne. Il semble y avoir un vrai suivi, c’est sympa !

Bref bref. Je recommande chaudement ce TopSpin 2K25 aux fans de tennis, on fait difficilement mieux en terme de plaisir de jeu et de contenu, mais il ne révolutionne pas le genre. Il n’y a pas de concurrence, donc c’est facile à dire, mais c’est le meilleur jeu du moment, et c’est VRAIMENT un bon jeu. Préparez-vous à servir !

Achetez TopSpin 2K25 sur PS5, sur PS4, sur PC (Steam) ou sur Xbox 🎾

VoiceCraft – Enfin de la synthèse vocale de qualité

Par : Korben
25 juin 2024 à 07:00

VoiceCraft c’est tout simplement le futur de l’édition vocale et de la synthèse vocale. On est carrément dans de la science-fiction là puisque juste avec juste quelques secondes d’audio de votre voix, cette IA est capable de comprendre votre timbre, votre intonation… votre flow quoi. Et après, c’est parti mon kiki, vous pouvez lui faire dire ce que vous voulez, et ça sonnera exactement comme si c’était vous qui parliez ! Flippant et génial à la fois.

Je vous invite à aller écouter les sons de démo ici pour vous faire un avis. Cela permet de faire plein de choses comme changer un mot dans une phrase que vous avez enregistrée, rallonger ou raccourcir un passage… etc. C’est vraiment un outil indispensable pour tous les créateurs de contenu audio, les podcasteurs, les doubleurs, et tutti quanti.

Voici une voix originale qui dit ceci en anglais:

that schedule is one per week and it will probably be like a Wednesday night thing because I plan on doing one to two videos per week.

Et voici la version traité par l’IA qui va conserver la voix d’origine mais également faire des petites modifs dans le texte selon ce qu’on souhaite. De quoi faire dire n’importe quoi à n’importe qui.

that schedule is one per week and you will start to see a lot more content arriving because I plan on doing one to two videos per week.

Essayez l’édition vocale
Essayez l’inférence TTS

Alors oui, si des gens mal intentionnés utilisent ça pour faire dire n’importe quoi à n’importe qui, ça craint. Mais je vous rassure, les créateurs de VoiceCraft ont pensé à tout. Il y a des garde-fous éthiques et des systèmes de watermarking audio pour éviter les dérives. On verra si ça tient la route.

Je vous invite vraiment à checker le github de VoiceCraft, il y a toutes les infos et les liens vers les démo. Et si vous voulez creuser le sujet, foncez lire leur papier de recherche, c’est passionnant.

Le pays d’en-dessous

Par : Remouk
4 juin 2024 à 12:27

— Article rédigé par l’ami Remouk (DansTonChat) – Merci à lui —

The Land Beneath Us : derrière ce nom bizarre se cache une belle petite surprise pour les fans de dungeon-crawler en tour par tour, un roguelite à la progression bien dosée, un gameplay tactique avec pas mal d’originalité. Je vous en dis plus… Ci-dessous ! 😉

Tout commence après une intro un peu chelou, dont l’ambiance guillerette et cartoon contraste complètement avec le jeu : on est dans bas-fonds d’un univers cybernétique, informatique, à base de gros pixels et d’effets de lumières/3D super jolis, de glitchs visuels et de musique électronique posant une atmosphère intrigante.

En vue de dessus, on déplace notre robot case par case. Chaque mouvement ou attaque, c’est un tour de jeu : les ennemis agiront en même temps, comme dans ce bon vieux NetHack… On utilise surtout haut, bas, gauche, droite, pour se mouvoir mais aussi pour donner des coups. Sympa : on choisi une arme par direction ! À nous de créer des synergies et essayer de faire face à toutes les situations.

À cela s’ajoute quelques mécaniques bienvenues : des améliorations d’armes, des reliques qui nous ajoutent ou améliorent nos compétences, une téléportation, mais aussi des combos à base de « puces » électroniques ! En gros, des pouvoirs qui seront lancés après avoir effectué un certain enchainement de mouvement. En prévoyant bien son coup, ça peut être dévastateur ou salvateur, bref, c’est cool. 🙂

Qui dit roguelite, dit progression entre chaque partie. Là-dessus c’est bien dosé, on débloque régulièrement des éléments qui nous offrent de nouvelles possibilités, nous permettent d’aller plus loin, ou nous facilitent carrément la vie (skills, emplacements d’inventaire, + de choix dans le loot…). Bien sûr, une fois le jeu « terminé », on peut continuer mais en ajoutant des handicaps ; pour finir le jeu à 100% il va falloir être bon !

Je ne vais pas parler du scénario, car honnêtement, je n’ai rien compris (je pense que c’est dû à la traduction française, parce que vraiment, c’était pas clair…), mais l’ambiance qui s’en dégage est super sympa, un truc un peu dark genre purgatoire, mélangé à des personnages assez rigolos… Et une histoire de révolte. 🤷

Niveau technique, si vous appréciez le genre comme moi, vous allez kiffer. 🙂 C’est très joli, très lisible et clair malgré de (très) gros pixels parfois. L’atmosphère est superbe. Le seul truc un peu relou, c’est que quand on choisi une arme, on ne peut pas voir en même temps les armes qu’on a déjà… À part ça c’est bien foutu, tant qu’on prend le temps de peser le choix de nos actions (une erreur peut s’avérer fatale).

J’ai vraiment passé un super moment, c’est un jeu prenant et assez « reposant », en dehors de certains combats tendus. Les runs durent environ 30-45 minutes, on se surprend à les enchaîner pour découvrir le monde suivant, pour débloquer des capacités, des puces, ou tenter une nouvelle approche au niveau des pouvoirs / armes.

Pour environ 15€ vous pouvez foncer ! Une démo est disponible sur les différentes plate-formes, je vous invite à vous faire votre propre avis, en espérant que vous passerez un bon moment à collecter des âmes dans ce donjon tactique ! 🤖

Retrouver The Land Beneath Us sur PC (Steam)Nintendo SwitchPlaystationXbox

ReverserAI – Du Reverse Engineering à base d’IA

Par : Korben
30 mai 2024 à 07:00

ReverserAI est un projet de recherche assez avant-gardiste qui vise à automatiser et améliorer les tâches de reverse engineering grâce à l’utilisation de modèles de langage locaux (LLM).

Fonctionnant entièrement hors ligne, cette première version se distingue par sa capacité à suggérer automatiquement des noms de fonctions de haut niveau et sémantiquement significatifs à partir de la sortie du décompilateur. ReverserAI se présente également comme un plugin pour Binary Ninja, mais son architecture modulaire est conçue pour être étendue à d’autres plateformes comme IDA ou encore Ghidra.

Et bien que les LLM locaux n’égalent pas encore les performances de leurs concurrents basés sur le cloud comme ChatGPT4 ou Claude3, ils représentent une avancée majeure avec un bon équilibre entre les performances et la confidentialité.

Parmi les fonctionnalités clés de cet outil, on retrouve :

  • Un fonctionnement totalement hors ligne, ce qui garantit la confidentialité et la sécurité des données
  • La suggestion automatique de noms de fonctions sémantiquement significatifs à partir de la sortie du décompilateur
  • Une intégration transparente avec Binary Ninja via un plugin dédié
  • Une architecture modulaire permettant une extension facile vers d’autres outils d’ingénierie inverse
  • Une compatibilité avec le matériel grand public, y compris les architectures Apple Silicon

Cependant, une configuration matérielle avec plusieurs cœurs CPU ou un GPU puissant est recommandée, car sur un système avec au moins 16 Go de RAM et de 12 cœurs CPU, les requêtes prennent environ 20 à 30 secondes. Grâce aux optimisations GPU, en particulier sur les appareils Apple Silicon, ce temps peut être réduit à 2 à 5 secondes par requête.

Ça s’installe à l’aide du gestionnaire de plugins de Binary Ninja et une fois lancé, l’outil téléchargera automatiquement le modèle de langage nécessaire (~5 Go). Les paramètres de configuration permettent également d’optimiser les performances en fonction de votre configuration matérielle, en répartissant la charge entre le CPU et le GPU.

Cet outil encore un peu jeune, est un excellent proof of concept qui illustre bien le potentiel des LLM locaux pour tout ce qui est reverse engineering. On verra évidemment ce que ça deviendra d’ici quelques années.

Le code source est disponible sur GitHub à l’adresse suivante alors n’hésitez pas à suggérer des améliorations.

Happy hacking à tous !

Memories – Le gestionnaire de photos qu’il faut à votre serveur Nextcloud

Par : Korben
28 mai 2024 à 07:00

Vous cherchez une solution tout-en-un pour gérer vos photos sur Nextcloud ? Ça tombe bien puisque aujourd’hui, je vous présente Memories !

Avec sa timeline intuitive, fini le casse-tête pour retrouver une photo spécifique. Il analyse intelligemment les données Exif pour classer vos clichés et vidéos par date et vous permet même de remonter le temps pour revivre n’importe quel moment en un clin d’œil !

Et ce n’est pas tout puisqu’il embarque un peu d’IA, en s’appuyant sur des outils de reconnaissance avancés comme Recognize et FaceRecognition, pour regrouper automatiquement vos photos par personnes et objets. Comme ça, plus besoin de passer des heures à les taguer à la main.

Vous pouvez aussi créer des albums sur mesure et les partager en quelques clics, même avec des personnes extérieures à votre instance Nextcloud.

Et si vous avez des photos que vous souhaitez conserver mais qui n’ont pas leur place dans votre timeline, vous pouvez les archiver dans un dossier séparé. Et pour une expérience vidéo optimale, Memories propose même le transcodage et le streaming en HLS. Une carte interactive permet également de retrouver où vos clichés ont été pris, grâce à un géocodage inversé et si vous utilisez Nextcloud Photos ou Google Photos, vous pouvez facilement migrer sur Memories.

Bref, la performance est au rendez-vous avec de l’indexation des métadonnées, un affichage responsive, un moteur de recherche intelligent… Tout a été optimisé pour vous offrir la meilleure expérience possible.

Voici comment démarrer :

  1. Installez Memories depuis l’App Store Nextcloud
  2. Suivez les étapes de configuration recommandées
  3. Lancez php occ memories:index pour indexer les photos existantes
  4. Ouvrez l’app Memories et définissez le dossier contenant vos photos
  5. Et voilà ! Y’a plus qu’à explorer vos souvenirs !

Il y a même un client Android dédié, disponible en accès anticipé sur le Play Store, F-Droid ou GitHub. Et pour les uploads automatiques, les apps officielles Nextcloud (Android / iOS) feront l’affaire.

Amusez-vous bien !

FlyingCarpet – Pour transférer des fichiers sans connexion et sans câble

Par : Korben
27 mai 2024 à 07:00

Quand on n’a pas de réseau sous la main pour se transférer un gros fichier, c’est souvent galère. Faut trouve une clé USB et quand c’est pour balancer un truc d’un smartphone à un ordinateur, c’est mission impossible. Heureusement, FlyingCarpet pourrait bien devenir votre nouvel allié dans ce genre de situations !

Disponible sur Android, iOS, Linux, macOS et Windows, cette application libre permet d’échanger des fichiers entre tous ces appareils sans avoir besoin d’un réseau WiFi commun ou d’une connexion mobile. Il suffit que les deux terminaux soient assez proches et équipés d’une puce WiFi.

Le principe est simple : l’un des appareils crée un réseau ad hoc auquel l’autre se connecte. La connexion est sécurisée par WPA2 et un mot de passe échangé via un QR Code. Les données sont même chiffrées de bout en bout avec AES-256 et tout ça sans avoir besoin d’être un expert !

Une fois appairés, les deux appareils peuvent alors s’envoyer des fichiers dans les deux sens, comme s’ils étaient sur un réseau local classique. Les débits sont suffisants pour transférer rapidement plusieurs gigaoctets et c’est même l’idéal pour déplacer de gros fichiers entre différents systèmes de fichiers sans avoir à configurer un partage réseau.

L’outil gère les reprises en cas de déconnexion et affiche une barre de progression pendant les transferts. Sur ordinateur, on peut même envoyer des dossiers entiers de manière récursive. Alors évidemment, cela désactive la connexion internet sur certaines plateformes mais la restaure une fois le transfert terminé. Sur Android, l’appareil qui crée le réseau peut même continuer à accéder au web en partageant sa connexion cellulaire.

C’est open source et disponible sur GitHub pour ceux qui veulent.

CoreCtrl – Libérez le potentiel de votre GPU sous Linux

Par : Korben
26 mai 2024 à 07:00

Vous en avez marre que votre carte graphique soit bridée sous Linux ? Vous rêvez de pouvoir overclocker votre GPU comme un pro pour booster les perfs dans vos jeux préférés ? Alors laissez-moi vous présenter votre nouveau meilleur pote : CoreCtrl !

Ce logiciel open source va vous permettre d’exploiter enfin tout le potentiel de votre GPU AMD sans vous prendre la tête. Plus besoin d’être un champion de la ligne de commande pour régler les fréquences, les voltages et autres joyeusetés. Avec CoreCtrl, tout se fait en quelques clics depuis une interface super facile à prendre en main.

L’outil embarque une tripotée de fonctionnalités pour les power users. Vous pourrez par exemple créer des profils d’overclocking personnalisés, monitorer en temps réel les températures et les performances, gérer finement la vitesse des ventilateurs, et même undervolt votre GPU pour réduire sa consommation.

Et le top du top, c’est que CoreCtrl est compatible avec un tas de cartes graphiques AMD, des anciennes générations aux derniers modèles. Bref, que vous ayez une vieille Radeon HD qui traîne ou une RX 6900 XT flambant neuve, vous pourrez en tirer le meilleur.

Certains relous me diront : « Oui, euuuh, mais overclocker son GPU, euuuuh, ça fait fondre la carte et ça annule la garantieuuuu« .

Alors oui, forcément si vous poussez les curseurs dans le rouge en permanence, votre GPU risque de partir en fumée. Mais utilisé avec sagesse, l’overclocking peut vraiment donner un boost appréciable notamment pour tout ce qui est traitement GPU et gaming (sous linux, lol), sans forcement réduire la durée de vie de votre matos.

D’ailleurs, CoreCtrl intègre des garde-fous bien pensés pour éviter ce genre de déconvenues. Vous pourrez donc définir des seuils de sécurité pour les températures et les voltages, histoire de ne pas tout cramer. Et si jamais vous sentez que vous êtes allé trop loin dans l’optimisation, pas de panique : il suffit de recharger le profil par défaut et hop, votre carte retrouve son état d’origine.

Si ça vous branche de tester, c’est sur le dépôt GitLab du projet ou installable avec cette commande :

sudo apt install corectrl

Par contre, je ne serais pas responsable si vous faites de la merde, hein.

Happy overclocking les amis ! 😄

OliveTin – Simplifiez et sécurisez vos tâches avec cette interface web intuitive !

Par : Korben
25 mai 2024 à 07:00

Vous en avez marre de devoir mémoriser une tripotée de commandes compliquées pour effectuer vos tâches au quotidien sur votre propre serveur ? Et si je vous disais qu’il existe un outil ultra pratique pour simplifier tout ça, avec une interface web hyper intuitive ?

Laissez-moi vous présenter OliveTin, qui va révolutionner votre façon de travailler !

Cet outil permet d’accéder de manière sécurisée à un ensemble de commandes shell prédéfinies, le tout depuis une interface web. Et c’est d’une simplicité enfantine puisque le but c’est de vous faciliter la vie en rendant accessibles des tâches qui peuvent parfois être bien techniques.

Par exemple, si vous avez besoin de redémarrer régulièrement un conteneur Docker sur votre serveur, plutôt que de devoir sortir votre terminal, vous connecter en SSH et taper une commande à rallonge, vous pouvez le faire en quelques clics via une jolie interface web. Pratique non ?

Autre cas de figure… Imaginons que vous vouliez donner accès à des commandes à des gens moins à l’aise avec la technique. Et bien il vous suffit de créer un raccourci sur OliveTin et le tour est joué.

En plus de ça, OliveTin est hyper simple à mettre en place. La configuration se fait via un fichier YAML lisible et ça s’installe en deux temps trois mouvements grâce à l’image Docker. Et vu qu’il est prévu pour consommer très peu de ressources, vous pouvez même le déployer un peu partout sans forcement payer un gros serveur dédié.

Notez que si vous êtes du genre à cheval sur l’accessibilité, cet outil passe également haut la main tous les tests d’accessibilité de Firefox.

Plus d’infos sur le site officiel : https://www.olivetin.app/

AlphaFold 3 – Un sacré bond en avant pour la modélisation des molécules du vivant

Par : Korben
9 mai 2024 à 05:34

Vous vous souvenez d’AlphaFold 2, ce modèle d’IA assez dingue de Google DeepMind qui avait fait des avancées majeures dans la prédiction des structures de protéines ? Eh bien, la version 3 vient de débarquer et elle repousse encore un peu plus les limites !

AlphaFold 3, c’est comme si on passait d’un film noir et blanc du genre la Vache et Le Prisonnier à un film en 3D style Avatar, car non seulement il prédit avec une précision impressionnante la structure 3D des protéines, mais il est également capable de modéliser leurs interactions avec tout un tas d’autres molécules : l’ADN, l’ARN, les petites molécules organiques comme les médicaments, et même les modifications chimiques.

Concrètement, ça veut dire qu’on va pouvoir mieux comprendre comment toutes ces molécules qui nous composent s’assemblent et fonctionnent ensemble, comme les rouages de l’horloge cosmique de la viiiie. Un sacré bond en avant pour décrypter les processus biologiques fondamentaux et leurs dysfonctionnements à l’origine des maladies.

Son secret, évidemment, c’est une architecture de réseau de neurones encore plus puissante et entraînée sur une montagne de données moléculaires. Le cœur du système repose sur un module Evoformer amélioré, couplé à une nouvelle approche basée sur des réseaux de diffusion qui partent d’un nuage d’atomes pour converger vers la structure moléculaire la plus probable.

Et les résultats sont vraiment impressionnants puisque sur les jeux de données de référence, AlphaFold 3 bat des records avec des améliorations significatives par rapport aux méthodes existantes. Pour certaines catégories d’interactions, comme celles avec les médicaments, il augmente même nettement la précision des prédictions. Et tout ça sans même avoir besoin de données structurales en entrée.

Mais le plus cool, c’est que c’est open source (Edit : Apparemment, ça ne l’est plus malheureusement – Merci à Enthuo pour la correction) et accessible gratuitement à la communauté scientifique via le nouveau serveur AlphaFold. Cet outil permet à n’importe quel chercheur de générer des prédictions pour ses protéines d’intérêt en quelques clics, là où il fallait avant un travail titanesque et des moyens conséquents. Bref, de quoi démocratiser la biologie structurale et accélérer les découvertes !

Évidemment, avec une telle puissance vient aussi de grandes responsabilités, alors les gros cerveaux derrière DeepMind ont longuement planché avec de nombreux experts et organismes pour définir un cadre éthique et limiter les risques de mésusage comme on dit. Parce qu’autant un AlphaFold entre de bonnes mains, ça peut faire avancer la science et la médecine de façon spectaculaire, autant on n’a pas envie de voir débarquer des virus ou des prions tueurs conçus par des apprentis sorciers.

Mais j’ai hâte de voir ce que la communauté scientifique va réussir à faire avec cet outil génial. Peut-être de nouvelles enzymes pour des applications industrielles, des matériaux bio-inspirés aux propriétés uniques, ou des protéines thérapeutiques plus efficaces ? En tout cas une chose est sûre, la révolution biotech ne fait que commencer et nul doute qu’AlphaFold 3 en sera l’un des acteurs clés !

Source

20 ans de passion et de partage sur Korben.info ! Merci d’être là !

Par : Korben
5 mai 2024 à 07:30

Salut tout le monde,

Aujourd’hui, nous sommes le 5 mai 2024 et c’est une date très spéciale pour moi, car je fête avec vous tous, les 20 ans de mon site web korben.info !

Y’a 20 ans, en 2004, quand j’ai commencé, le site s’appelait Korben.tk et était destiné à distribuer des petits softs que je développais. J’avais alors 22 ans, je finissais mes études, et je cherchais du boulot. Et rapidement, j’ai commencé à écrire des articles sur ce site statique, des années avant même que je ne sache ce qu’était un blog.

Mon objectif à l’époque, qui est toujours le même aujourd’hui, c’était de partager avec les gens qui me lisent, tout ce qui me plait et également d’avoir une espèce de pense bête Tech qui me permet de retrouver plus tard une astuce ou un logiciel que j’aurais trouvé utile. D’ailleurs je ne compte pas les fois où je suis retourné lire mes propres articles pour retrouver tel ou tel truc.

Je suis donc à la fois très fier du chemin parcouru, parce que 20 ans pour un site web, alimenté quotidiennement (je suis bientôt à 17 000 articles) , c’est quand même pas un truc qui arrive souvent. Et je suis également rempli de gratitude envers vous tous, qui me lisez, pour certains depuis les débuts. Un énorme merci à vous !

La vie du site et la mienne sont assez entremêlées puisque je suis seul aux commandes depuis toujours, même si j’ai parfois des guests qui passent me poster un article de temps en temps pour le fun. J’ai aussi toujours fait en fonction de mes envies, en fonction de mon temps disponible également et j’ai grandi et évolué avec le site même si sur le fond, y’a pas eu de grands bouleversements. Je parle toujours uniquement de ce qui me plait et m’intéresse et tant pis si ça marche ou pas. En tout cas, ça m’a permis de rencontrer pas mal de monde, de vous rencontrer également, de vivre des expériences de dingue, d’aller dans des endroits uniques… J’ai beaucoup travaillé pour avoir cette chance, me levant trèèèès tôt le matin et me couchant trèèèès tard le soir après le boulot pour alimenter ce site sans faillir.

Aujourd’hui, c’est évidemment beaucoup plus rodé en termes de rythme… J’ai maintenant 42 ans et je suis content de vivre de ma passion et de partager tout cela avec vous. Vous êtes d’ailleurs encore plusieurs millions à passer ici chaque mois et j’ai toujours la flamme, ce plaisir de la découverte et du partage, alors tout va bien. On verra si dans 20 ans, le bébé à lunettes sera encore sur la toile, mais moi tant que ça me plait, je continue.

Je tiens évidemment à remercier toutes les personnes qui au fil des années m’ont soutenu, donné un coup de main, des conseils, ou avec qui j’ai travaillé, car c’est également leur victoire. Merci à tous ! Merci aussi à mon entourage et ma famille qui m’a toujours soutenu, y compris dans mes galères qu’elles soient techniques ou humaines.

Et puis surtout, merci à vous d’être encore là après tant d’années. C’est toujours un plaisir d’échanger avec vous quand j’ai la chance de vous croiser IRL ou sur la toile. C’est quand même cool de partager des passions communes avec d’autres gens.

Bref pour fêter ça, je vous laisse avec une animation que mon fiston de 13 ans a réalisée spécialement pour l’occasion. Vous allez voir, il fait déjà de belles choses et je suis un papa très fier :).

À très vite et bon dimanche à tous !

❌
❌